/*
 Theme Name:   Curaleaf Crocal Child 2026
 Theme URI:    https://themeforest.net/user/euthemians
 Description:  Crocal Child Theme
 Version:      2.2.0
 Author:       Matilde Negri & Euthemians Team
 Author URI:   https://euthemians.com
 Template:     crocal
*/

.curaleaf-product-cats {
	margin-top: 15px;
	padding-top: 10px;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
	font-size: 0.9em;
}


.curaleaf-cat-box-title {
	min-height: 68px;
}

.curaleaf-product-cats strong {
	color: #2271b1;
}

.eut-single-curaleaf-product .eut-single-media img {
	border-radius: 8px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
}

/* ==========================================================================
   Curaleaf Single Product Template
   ========================================================================== */

.curaleaf-product-template {
	background-color: #fff;
	color: #0c2323;
	line-height: 1.6;
}

.curaleaf-product-template .vc_row {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.curaleaf-product-template .vc_column_container {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.cl-header-row {
	background: #ffffff !important;
}

.cl-header-container {
	max-width: 1200px;
	margin: 0 auto;
	padding: 60px 30px 40px;
}

.cl-category-label,
.cl-category-label a {
	font-size: 25px;
	font-weight: 400;
	color: #33e1aa !important;
	margin-bottom: 5px;
	letter-spacing: -0.02em;
	text-decoration: none;
	transition: color 0.3s ease;
}

.cl-category-label a:hover {
	color: #0c2323 !important;
}

.cl-product-title {
	font-size: 48px;
	font-weight: 700;
	color: #0c2323;
	margin: 0 0 20px;
	line-height: 1;
	letter-spacing: -0.03em;
}

.cl-header-description {
	font-size: 14px;
	max-width: 800px;
	color: #444;
	font-weight: 400;
}

.cl-header-description p {
	font-size: 14px;
	line-height: 1.6;
	color: #444;
	margin-top: 0;
	margin-bottom: 0px;
}

.cl-header-description p:last-child {
	margin-bottom: 0;
}

.cl-stats-row {
	background: #ffffff;
	position: relative;
	z-index: 5 !important;
	height: 400px;
}

.cl-stats-row::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 45%;
	background: #EAEAEA;
	z-index: -1;
}

.cl-big-thc-bg {
	position: absolute;
	left: 40px;
	top: 50%;
	transform: translateY(55%);
	display: flex;
	align-items: flex-end;
	pointer-events: none;
	z-index: 0;
}

.cl-layout-oil .cl-big-thc-bg {
	transform: translateY(40%);
}

.cl-thc-vertical {
	writing-mode: vertical-rl;
	transform: rotate(180deg);
	font-size: 28px;
	font-weight: 500;
	color: #ffffff;
	text-transform: uppercase;
	margin-top: 0;
	margin-bottom: 12px;
	margin-right: 8px;
	letter-spacing: 2px;
	white-space: nowrap;
}

.cl-thc-vertical.cl-multi-label {
	font-size: 24px;
	letter-spacing: 1px;
	margin-bottom: 10px;
	margin-right: 8px;
}

.cl-layout-oil .cl-thc-vertical {
	margin-top: 0;
	margin-bottom: 12px;
	margin-right: 15px;
}

.cl-thc-right-content {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
}

.cl-thc-huge-number {
	font-family: 'Biennale', sans-serif;
	font-size: 150px;
	font-weight: 950;
	color: #ffffff;
	line-height: 1 !important;
	letter-spacing: 0;
}

.cl-thc-huge-unit {
	font-size: 80px;
	font-weight: 900;
	color: #ffffff;
	line-height: 0.85 !important;
	letter-spacing: -0.04em;
	text-transform: lowercase !important;
	margin-top: -10px;
}

.cl-layout-pastilles .cl-thc-huge-unit {
	font-size: 150px;
	display: inline;
}

.cl-stats-list {
	padding-left: 40px;
	font-family: 'Biennale', sans-serif;
}

.cl-stat-item-big {
	font-size: 24px;
	font-weight: 700;
	color: #DEDEDE;
	line-height: 1;
	margin-bottom: 18px;
}

.cl-stat-item-big.active {
	font-size: 36px;
	color: #C7C7C7;
	;
}

.cl-stat-details {
	margin-top: 20px;
}

.cl-stat-detail-line {
	font-size: 15px;
	margin-bottom: 8px;
	color: #7b8f8a;
	word-break: break-word !important;
	overflow-wrap: break-word !important;
	white-space: normal !important;
}

.cl-stat-detail-line strong {
	font-weight: 700;
	color: #0c2323;
}

.cl-product-image-container {
	position: absolute;
	left: 41.66666667%;
	top: 58%;
	transform: translate(-50%, -50%);
	z-index: 999 !important;
}

.cl-product-image-container img {
	max-height: 300px;
	width: auto;
	filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.15));
}

.cl-layout-oil .cl-product-image-container img {
	max-height: 290px !important;
}

.cl-info-row {
	background: #0c2323;
	position: relative;
	z-index: 1;
	height: 400px;
}

.cl-info-row::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 50%;
	background: #33e1aa;
	z-index: -1;
}

.cl-info-block {
	color: #fff;
	padding-right: 40px;
}

.cl-info-block.dark {
	padding-right: 0;
	padding-left: 40px;
}

.cl-info-block h3 {
	font-size: 24px;
	font-weight: 700;
	color: #fff !important;
	margin-bottom: 15px;
}

.cl-profile-grid {
	display: flex;
	gap: 40px;
	margin-bottom: 30px;
}

.cl-profile-item {
	font-size: 14px;
	line-height: 1.5;
	font-family: 'Biennale', sans-serif;
}

.cl-profile-item strong {
	display: block;
	font-weight: 700;
}

.cl-packaging-box {
	display: flex;
	align-items: flex-start;
	/*gap: 20px;*/
}

/* ---- Base packaging icon ---- */
.cl-packaging-icon {
	width: 60px;
	height: 80px;
	display: inline-flex;
	align-items: flex-start;
	justify-content: flex-start;
	flex-shrink: 0;
	position: relative;
	color: #fff;
}

.cl-packaging-icon svg {
	width: auto;
	height: 53px;
	max-width: 100%;
	max-height: 100%;
	display: block;
}

.cl-pkg-bottle svg {
	height: 61px;
}

.cl-packaging-icon svg path,
.cl-packaging-icon svg * {
	fill: #ffffff !important;
}

.cl-pkg-size-text {
	position: absolute;
	left: 40%;
	top: 60%;
	transform: translate(-50%, -50%);
	font-size: 14px;
	font-weight: 700;
	color: #ffffff !important;
	text-align: center;
	white-space: nowrap;
	line-height: 1;
	z-index: 2;
}

/* Adjust size text vertically depending on the shape of the SVG packaging outline */
.cl-pkg-pouch .cl-pkg-size-text {
	top: 37%;
	left: 38%;
}

.cl-pkg-jar .cl-pkg-size-text {
	top: 38%;
	left: 32%;
}

.cl-pkg-bottle .cl-pkg-size-text {
	top: 64%;
}

.cl-pkg-cartridge .cl-pkg-size-text {
	top: 29%;
	left: 22%;
}

/* ---- Multi-size layout (e.g. oral liquids: "10 ml  30 ml") ---- */
.cl-packaging-content {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.cl-pkg-sizes {
	display: flex;
	gap: 20px;
	font-weight: 700;
	font-size: 18px;
	color: #ffffff;
	white-space: nowrap;
	margin-bottom: 2px;
}

.cl-pkg-size-label {
	display: inline-block;
}

.cl-packaging-text {
	font-size: 14px;
	line-height: 1.5;
}

.cl-terpene-row {
	margin-bottom: 20px;
}

.cl-terpene-name {
	font-size: 14px;
	margin-bottom: 6px;
	display: block;
	font-weight: 500;
}

.cl-terpene-bar-bg {
	height: 2px;
	background: rgba(255, 255, 255, 0.2);
	width: 100%;
	position: relative;
}

.cl-terpene-bar-fill {
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.cl-recommended-row {
	max-width: 1200px;
	margin: 0 auto;
}

.cl-recommended-row h3 {
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 30px;
	color: #0c2323 !important;
}

.cl-recommended-text {
	font-size: 14px;
	color: #333;
	line-height: 1.8;
}

.cl-advisory-text {
	margin-top: 20px;
	font-size: 14px;
	color: #444;
}

@media (max-width: 991px) {
	.cl-stats-inner {
		flex-direction: column;
		text-align: center;
	}

	.cl-thc-huge-number {
		font-size: 120px;
	}

	.cl-info-block {
		padding: 60px 30px;
	}
}

@media (max-width: 767px) {

	/* Stretched rows and inner container overrides for full width on mobile */
	.cl-stats-row,
	.cl-info-row {
		display: flex !important;
		flex-direction: column !important;
		height: auto !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.cl-stats-row::before {
		display: none !important;
	}

	/* eut-container: make flex-column so order works on its children */
	.cl-stats-row .eut-container {
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
	}

	/* eut-row: push it below the image with order */
	.cl-stats-row .eut-container>.eut-row,
	.cl-stats-row .eut-container>div.eut-row {
		order: 99 !important;
		width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
		display: flex !important;
		flex-direction: column !important;
	}

	.cl-info-row .eut-container {
		width: 100% !important;
		max-width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.cl-stats-row .wpb_column,
	.cl-info-row .wpb_column {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 auto !important;
		float: none !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.cl-stats-row .wpb_column .vc_column-inner,
	.cl-info-row .wpb_column .vc_column-inner {
		padding: 0 !important;
	}

	/* Stats Row Stacking & Order */
	.cl-stats-row {
		background: #ffffff !important;
	}

	/* Hide the first column containing the huge background number */
	.cl-stats-row .wpb_column:first-child {
		display: none !important;
	}

	/* Product image: order -1 = always first child in flex container */
	.cl-stats-row .eut-container>.cl-product-image-container,
	.cl-product-image-container {
		position: relative !important;
		left: auto !important;
		top: auto !important;
		transform: none !important;
		order: -1 !important;
		width: 100% !important;
		background: #EAEAEA !important;
		padding: 40px 30px 40px 30px !important;
		box-sizing: border-box !important;
		text-align: center !important;
		z-index: 10 !important;
	}

	.cl-product-image-container img {
		max-height: 240px !important;
		margin: 0 auto !important;
		display: block !important;
	}

	/* Stats column (second wpb_column): white background */
	.cl-stats-row .wpb_column:last-of-type,
	.cl-stats-row .wpb_column:last-of-type .vc_column-inner {
		background: #ffffff !important;
	}

	.cl-stats-row .wpb_column:last-of-type {
		padding: 0 !important;
	}

	.cl-stats-list {
		padding: 40px 30px !important;
		margin-top: 0 !important;
		text-align: left !important;
		display: flex !important;
		flex-direction: column !important;
		align-items: flex-start !important;
	}

	.cl-stat-details {
		text-align: left !important;
	}

	.cl-stats-btn-wrap {
		width: 100% !important;
		text-align: left !important;
	}

	/* Info Block Row Stacking */
	.cl-info-row {
		background: #0c2323 !important;
	}

	.cl-info-row::before {
		display: none !important;
	}

	.cl-info-row .wpb_column:first-child,
	.cl-info-row .wpb_column:first-child .vc_column-inner,
	.cl-info-row .cl-info-block.green {
		background: #33e1aa !important;
		margin-top: 0px !important;
	}

	.cl-info-row .wpb_column:last-of-type,
	.cl-info-row .wpb_column:last-of-type .vc_column-inner,
	.cl-info-row .cl-info-block.dark {
		background: #0c2323 !important;
	}

	.cl-info-block {
		padding: 40px 30px !important;
	}
}


/* ==========================================================================
   Curaleaf Archive & Category Template
   ========================================================================== */

/* Set background for the entire page archive section to very light grey */
.post-type-archive-curaleaf-products #eut-content,
.tax-curaleaf_product_cat #eut-content {
	background-color: #f7f7f7;
}

/* Layout affiancato per Archivio / Categorie (Side-by-side) */
.cl-archive-row {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: flex-start !important;
}

.cl-archive-row>.vc_col-sm-3 {
	width: 25% !important;
	flex-shrink: 0 !important;
}

.cl-archive-row>.vc_col-sm-9 {
	width: 75% !important;
	flex-grow: 1 !important;
	padding-left: 40px !important;
}

@media (max-width: 991px) {
	.cl-archive-row {
		flex-direction: column !important;
	}

	.cl-archive-row>.vc_col-sm-3,
	.cl-archive-row>.vc_col-sm-9 {
		width: 100% !important;
		padding-left: 0 !important;
	}
}

.cl-archive-header {
	background-color: #ffffff;
	padding: 120px 0 40px;
	color: #0c2323;
	text-align: left;
	margin-bottom: 0;
}

.cl-archive-header h1 {
	margin: 0 0 15px 0;
	font-size: 56px;
	font-weight: 700;
	color: #0c2323 !important;
	letter-spacing: -0.03em;
	line-height: 1.1;
}

.cl-archive-subtitle {
	font-size: 24px;
	font-weight: 400;
	color: #0c2323;
	margin-bottom: 5px;
	letter-spacing: -0.02em;
}

.cl-archive-description {
	font-size: 15px;
	color: #4a4a4a;
	max-width: 700px;
	line-height: 1.6;
}

.cl-archive-description p {
	font-size: 15px;
	color: #4a4a4a;
	line-height: 1.6;
	margin: 0;
}

/* Sidebar Styling */
.cl-custom-sidebar {
	background: transparent;
	padding: 40px 30px 40px 0;
	border-right: 1px solid rgba(0, 0, 0, 0.08);
}

.cl-custom-sidebar h4 {
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 25px;
	color: #0c2323;
	padding-bottom: 0;
	border-bottom: none;
	display: block;
}

.cl-category-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.cl-category-list li {
	margin-bottom: 12px;
}

.cl-category-list a {
	font-size: 16px;
	color: #0c2323;
	text-decoration: none;
	font-weight: 500;
	transition: color 0.3s ease;
	display: block;
}

.cl-category-list a:hover,
.cl-category-list li.active a {
	color: #33e1aa !important;
}

/* Products Grid Cards */
.cl-product-badge {
	background: transparent;
	border: none;
	border-radius: 0;
	padding: 10px 10px;
	text-align: center;
	transition: all 0.3s ease;
	text-decoration: none !important;
	color: #0c2323;
	margin-bottom: 30px;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}

.cl-product-badge:hover {
	transform: none;
	box-shadow: none;
	border-color: transparent;
}

.cl-badge-image-wrap {
	height: 180px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 0;
	overflow: visible;
}

.cl-badge-image {
	max-height: 100%;
	width: auto;
	object-fit: contain;
	transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
	filter: drop-shadow(0 10px 20px rgba(0, 0, 0, 0.08));
}

.cl-product-badge:hover .cl-badge-image {
	transform: translateY(-8px) scale(1.03);
	filter: drop-shadow(0 15px 25px rgba(0, 0, 0, 0.12));
}

.cl-badge-cat {
	font-size: 12px;
	color: #C7C7C7;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	font-weight: 500;
	margin-bottom: 6px;
	margin-top: 0;
}

.cl-badge-title {
	font-size: 18px;
	font-weight: 700;
	margin: 0 0 10px 0;
	line-height: 1.3;
	color: #0c2323;
	transition: color 0.3s ease;
	/* height: 2.6em; */
	overflow: hidden;
}

.cl-product-badge:hover .cl-badge-title {
	color: #33e1aa;
}

.cl-product-badge-qmid .cl-badge-title {
	font-size: 21px !important;
	font-weight: 700 !important;
	line-height: 1.25 !important;
	margin-top: 6px !important;
	margin-bottom: 12px !important;
}

.cl-badge-meta {
	display: flex;
	justify-content: center;
	gap: 20px;
	font-size: 14px;
	font-weight: 400;
	color: #7f7f7f;
	font-family: 'Biennale', sans-serif;
	font-weight: 700;
	margin-top: 8px;
	padding-top: 0;
}

.cl-badge-meta span {
	background: transparent;
	padding: 0;
	border-radius: 0;
	border: none;
}

.cl-products-grid {
	display: flex;
	flex-wrap: wrap;
	padding-top: 20px;
}

/* Forzatura layout a 3 colonne per i badge prodotto */
@media (min-width: 992px) {
	.cl-products-grid>.wpb_column {
		width: 33.33333333% !important;
		flex: 0 0 33.33333333% !important;
		max-width: 33.33333333% !important;
		box-sizing: border-box !important;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.cl-products-grid>.wpb_column {
		width: 50% !important;
		flex: 0 0 50% !important;
		max-width: 50% !important;
		box-sizing: border-box !important;
	}
}

@media (max-width: 767px) {
	.cl-products-grid>.wpb_column {
		width: 100% !important;
		flex: 0 0 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}
}

.cl-pagination {
	margin-top: 30px;
	text-align: center;
	width: 100%;
}

/* Responsive Overrides */
@media (max-width: 991px) {
	.cl-custom-sidebar {
		border-right: none;
		border-bottom: 1px solid rgba(0, 0, 0, 0.08);
		padding: 30px 0;
		margin-bottom: 30px;
	}

	.cl-custom-sidebar h4 {
		margin-bottom: 15px;
	}

	.cl-category-list {
		display: flex;
		flex-wrap: wrap;
		gap: 15px;
	}

	.cl-category-list li {
		margin-bottom: 0;
	}
}

/* ==========================================================================
   Storage & Shelf Life Row
   ========================================================================== */

.cl-storage-row {
	display: flex;
	gap: 20px;
	margin-top: 20px;
	flex-wrap: wrap;
}

.cl-storage-item {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 14px;
	color: rgba(255, 255, 255, 0.85);
	background: rgba(255, 255, 255, 0.1);
	border-radius: 20px;
	padding: 5px 14px;
}

.cl-storage-item .dashicons {
	font-size: 16px;
	width: 16px;
	height: 16px;
}

/* ==========================================================================
   Botanical & Technical Details Block
   ========================================================================== */

.cl-botanical-row {
	background: #f7f9f8 !important;
}

.cl-botanical-block {
	max-width: 1200px;
	margin: 0 auto;
	padding: 60px 30px;
}

.cl-botanical-block h3 {
	font-size: 32px;
	font-weight: 700;
	color: #0c2323 !important;
	margin-bottom: 30px;
	padding-bottom: 15px;
	border-bottom: 2px solid #33e1aa;
	display: inline-block;
}

.cl-botanical-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.cl-botanical-item {
	background: #fff;
	border: 1px solid #e8eceb;
	border-radius: 8px;
	padding: 18px 20px;
	display: flex;
	flex-direction: column;
	gap: 6px;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.cl-botanical-item:hover {
	box-shadow: 0 4px 16px rgba(51, 225, 170, 0.1);
	transform: translateY(-2px);
}

.cl-botanical-item--wide {
	grid-column: span 2;
}

.cl-botanical-label {
	font-size: 11px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #33e1aa;
}

.cl-botanical-value {
	font-size: 15px;
	color: #0c2323;
	font-weight: 500;
	line-height: 1.4;
}

/* ==========================================================================
   Pricing Block
   ========================================================================== */

.cl-pricing-row {
	background: #0c2323 !important;
}

.cl-pricing-block {
	max-width: 1200px;
	margin: 0 auto;
	padding: 60px 30px;
}

.cl-pricing-block h3 {
	font-size: 32px;
	font-weight: 700;
	color: #fff !important;
	margin-bottom: 30px;
}

.cl-pricing-grid {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
}

.cl-price-card {
	background: rgba(255, 255, 255, 0.07);
	border: 1px solid rgba(255, 255, 255, 0.15);
	border-radius: 12px;
	padding: 24px 36px;
	min-width: 200px;
	transition: background 0.2s ease;
}

.cl-price-card:hover {
	background: rgba(255, 255, 255, 0.12);
}

.cl-price-card--wholesale {
	border-color: #33e1aa;
	background: rgba(51, 225, 170, 0.08);
}

.cl-price-label {
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.2px;
	color: rgba(255, 255, 255, 0.55);
	margin-bottom: 8px;
}

.cl-price-value {
	font-size: 42px;
	font-weight: 700;
	color: #fff;
	letter-spacing: -0.02em;
	line-height: 1;
}

.cl-price-card--wholesale .cl-price-value {
	color: #33e1aa;
}

/* ==========================================================================
   Compliance / Disclaimer / Sponsor Block
   ========================================================================== */

.cl-compliance-row {
	background: #f2f4f3 !important;
	display: none !important;
}

.cl-compliance-block {
	max-width: 1200px;
	margin: 0 auto;
	padding: 50px 30px;
}

.cl-disclaimer {
	font-size: 13px;
	color: #666;
	line-height: 1.7;
	padding: 20px 24px;
	background: #fff;
	border-left: 3px solid #ccc;
	border-radius: 4px;
	margin-bottom: 20px;
}

.cl-sponsor {
	font-size: 13px;
	color: #555;
	line-height: 1.7;
	padding: 15px 20px;
	border-top: 1px solid #ddd;
	text-align: center;
}

@media (max-width: 768px) {
	.cl-botanical-grid {
		grid-template-columns: 1fr;
	}

	.cl-botanical-item--wide {
		grid-column: span 1;
	}

	.cl-pricing-grid {
		flex-direction: column;
	}

	.cl-price-card {
		min-width: unset;
	}
}

/* ==========================================================================
   Restricted Access & Registration Form
   ========================================================================== */

.curaleaf-portal-container {
	max-width: 1200px;
	margin: 10px auto 40px auto;
	padding: 0 20px;
	box-sizing: border-box;
}

.curaleaf-portal-left {
	padding-right: 20px;
}

.curaleaf-portal-info {
	position: sticky;
	top: 40px;
}

.curaleaf-portal-subtitle {
	display: inline-block;
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
	color: #33e1aa;
	letter-spacing: 0.15em;
	margin-bottom: 12px;
}

.curaleaf-portal-title {
	font-size: 42px;
	font-weight: 700;
	color: #0c2323 !important;
	line-height: 1.15;
	margin: 0 0 30px 0;
	letter-spacing: -0.03em;
}

.curaleaf-portal-img-wrap {
	width: 100%;
	border-radius: 0;
	overflow: hidden;
	margin-bottom: 30px;
	box-shadow: none;
	border: 1px solid #ebf1ef;
}

.curaleaf-portal-img {
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
	transition: transform 0.6s ease;
}

.curaleaf-portal-img-wrap:hover .curaleaf-portal-img {
	transform: scale(1.03);
}

.curaleaf-portal-welcome h3 {
	font-size: 24px;
	font-weight: 700;
	color: #0c2323 !important;
	margin: 0 0 15px 0;
}

.curaleaf-portal-welcome p {
	font-size: 16px;
	color: #5c706b;
	line-height: 1.6;
	margin-bottom: 20px;
}

.curaleaf-portal-list {
	list-style: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.curaleaf-portal-list li {
	position: relative;
	font-size: 15px;
	color: #0c2323;
	font-weight: 500;
	padding-left: 28px;
	margin-bottom: 12px;
	line-height: 1.5;
}

.curaleaf-portal-list li::before {
	content: "✓";
	position: absolute;
	left: 0;
	top: 0;
	color: #33e1aa;
	font-weight: 900;
	font-size: 18px;
	line-height: 1;
}

.curaleaf-portal-right {
	background: #ffffff;
	border-radius: 0;
	padding: 40px;
	box-shadow: none;
	border: 1px solid #ebf1ef;
	box-sizing: border-box;
}

.curaleaf-portal-form-wrapper {
	width: 100%;
}

.curaleaf-portal-switcher {
	display: flex;
	background-color: #f3f6f5;
	border-radius: 0;
	padding: 6px;
	margin-bottom: 35px;
	border: 1px solid #e1e8e6;
}

.curaleaf-switch-btn {
	flex: 1;
	border: none;
	background: transparent;
	padding: 14px 20px;
	font-size: 15px;
	font-weight: 700;
	color: #33e1aa;
	border-radius: 0;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
	outline: none;
	text-align: center;
	box-shadow: none;
}

.curaleaf-switch-btn:hover {
	color: #0c2323;
}

.curaleaf-switch-btn.active {
	background-color: #33e1aa;
	color: #ffffff !important;
	box-shadow: none;
}

.curaleaf-portal-panel {
	display: none;
}

.curaleaf-portal-panel.active {
	display: block;
	animation: curaleafFadeIn 0.4s ease forwards;
}

@keyframes curaleafFadeIn {
	from {
		opacity: 0;
		transform: translateY(10px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.curaleaf-panel-title {
	font-size: 26px;
	font-weight: 700;
	color: #0c2323 !important;
	margin-top: 0;
	margin-bottom: 25px;
	letter-spacing: -0.02em;
}

.curaleaf-form-group {
	position: relative;
	margin-bottom: 20px;
}

.curaleaf-portal-form-wrapper input[type="text"],
.curaleaf-portal-form-wrapper input[type="email"],
.curaleaf-portal-form-wrapper input[type="tel"],
.curaleaf-portal-form-wrapper input[type="password"],
.curaleaf-portal-form-wrapper select {
	width: 100%;
	padding: 14px 16px;
	font-size: 15px;
	border: 1.5px solid #dbe3e1;
	border-radius: 0;
	background-color: #fafcfb;
	color: #0c2323;
	transition: all 0.3s ease;
	outline: none;
	box-sizing: border-box;
	font-family: inherit;
}

.curaleaf-portal-form-wrapper select {
	appearance: none;
	-webkit-appearance: none;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2333e1aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 16px center;
	background-size: 16px;
	padding-right: 40px;
}

.curaleaf-portal-form-wrapper input:focus,
.curaleaf-portal-form-wrapper select:focus {
	border-color: #33e1aa;
	background-color: #ffffff;
	box-shadow: 0 0 0 4px rgba(51, 225, 170, 0.15);
}

.curaleaf-form-grid-2 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 15px;
}

.curaleaf-password-group {
	position: relative;
}

.curaleaf-password-group input[type="password"],
.curaleaf-password-group input[type="text"] {
	padding-right: 48px;
}

.curaleaf-password-toggle {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 6px;
	background: transparent;
	border: none;
	width: 38px;
	height: 38px;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #778b87;
	transition: color 0.2s ease;
	outline: none;
	padding: 0;
	box-shadow: none !important;
	z-index: 10;
}

.curaleaf-password-toggle:hover {
	color: #33e1aa;
}

.curaleaf-password-toggle .dashicons {
	font-size: 20px;
	width: 20px;
	height: 20px;
}

.curaleaf-field-instruction {
	font-size: 12px;
	color: #778b87;
	line-height: 1.4;
	margin: 6px 0 0 2px;
}

.curaleaf-form-actions-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 25px;
}

.curaleaf-rememberme-label {
	display: flex;
	align-items: center;
	font-size: 14px;
	color: #5c706b;
	cursor: pointer;
	user-select: none;
	margin: 0;
}

.curaleaf-rememberme-label input[type="checkbox"],
.curaleaf-checkbox-group input[type="checkbox"] {
	margin-right: 8px;
	width: 16px;
	height: 16px;
	border-radius: 0;
	border: 1.5px solid #dbe3e1;
	cursor: pointer;
	background-color: #fafcfb;
	accent-color: #33e1aa;
	transition: all 0.2s ease;
}

.curaleaf-rememberme-label input[type="checkbox"]:focus,
.curaleaf-checkbox-group input[type="checkbox"]:focus {
	border-color: #33e1aa;
	box-shadow: 0 0 0 3px rgba(51, 225, 170, 0.15);
	outline: none;
}

.curaleaf-submit-wrap {
	margin-top: 10px;
}

.curaleaf-btn-primary {
	width: 100%;
	padding: 16px;
	font-size: 15px;
	font-weight: 700;
	background-color: #000000;
	color: #ffffff !important;
	border: none;
	border-radius: 0;
	cursor: pointer;
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
	text-transform: uppercase;
	letter-spacing: 0.05em;
	box-shadow: none;
	outline: none;
}

.curaleaf-btn-primary:hover {
	background-color: #33e1aa;
	color: #000000 !important;
	box-shadow: none;
	transform: translateY(-2px);
}

.curaleaf-btn-primary:active {
	transform: translateY(0);
}

.curaleaf-portal-alert {
	padding: 16px;
	border-radius: 0;
	margin-bottom: 25px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.5;
}

.curaleaf-portal-alert.success {
	background-color: #eefdf7;
	color: #1e7e59;
	border-left: 4px solid #33e1aa;
}

.curaleaf-portal-alert.error {
	background-color: #fff5f5;
	color: #b72b2b;
	border-left: 4px solid #eb5757;
}

@media (max-width: 991px) {
	.curaleaf-portal-left {
		padding-right: 0;
		margin-bottom: 30px;
	}

	.curaleaf-portal-title {
		font-size: 34px;
	}
}

@media (max-width: 767px) {
	.curaleaf-portal-right {
		padding: 30px 20px;
	}

	.curaleaf-form-grid-2 {
		grid-template-columns: 1fr;
		gap: 0;
	}
}

/* ==========================================================================
   Dynamic Multicategory Product Layouts & Accents
   ========================================================================== */

.cl-info-row.cl-no-terpenes::before {
	width: 100% !important;
}

.cl-info-row.cl-no-terpenes .cl-info-block.green {
	padding-right: 0 !important;
}

.cl-layout-flowers .cl-category-label,
.cl-layout-flowers .cl-category-label a,
.cl-layout-flowers .cl-badge-cat,
.cl-layout-vape .cl-category-label,
.cl-layout-vape .cl-category-label a,
.cl-layout-vape .cl-badge-cat {
	color: #33e1aa;
}

.cl-layout-vape .cl-info-row::before {
	background: #33e1aa !important;
}

/* ==========================================================================
   Stability, Excipients, Contact Buttons & Downloads
   ========================================================================== */

.cl-stability-row {
	background: #ADC2C7 !important;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.cl-stability-block {
	max-width: 1200px;
	margin: 0 auto;
	padding: 40px 0px;
	font-family: 'Biennale', sans-serif;
}

.cl-stability-block h3 {
	font-size: 24px !important;
	font-weight: 700;
	color: #ffffff !important;
	text-transform: none !important;
	letter-spacing: -0.02em;
}

.cl-stability-grid {
	display: flex;
	flex-direction: column;
	gap: 25px;
}

.cl-stability-item {
	font-size: 14px;
	color: #ffffff !important;
	line-height: 1.6;
}

.cl-stability-item strong {
	display: block;
	font-weight: 700;
	text-transform: none !important;
	letter-spacing: normal !important;
	color: #ffffff !important;
}

.cl-btn-contact {
	display: inline-block !important;
	margin-top: 10px !important;
}

.cl-btn-contact .vc_btn3 {
	font-family: inherit !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	text-transform: none !important;
	letter-spacing: -0.01em !important;
	padding: 8px 23px !important;
	border-radius: 0px !important;
	box-shadow: none !important;
	border: none !important;
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
	color: #ffffff !important;
	background-color: #33e1aa !important;
	line-height: 1.4 !important;
	display: inline-block !important;
}

.cl-btn-contact .vc_btn3:hover {
	background-color: #0c2323 !important;
	color: #ffffff !important;
	transform: none !important;
	box-shadow: none !important;
}

.cl-stats-btn-wrap {
	margin-top: 25px;
}

.cl-download-area {
	margin: 50px 0px;
	border-top: 1px solid #ebf1ef;
	padding-top: 40px;
}

.cl-download-area h3 {
	font-size: 24px;
	font-weight: 700;
	color: #0c2323 !important;
	margin-bottom: 25px;
	letter-spacing: -0.01em;
}

.cl-download-list {
	display: flex;
	flex-direction: column;
	gap: 0;
	border-top: 1px solid #ebf1ef;
}

.cl-download-item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 18px 10px;
	border-bottom: 1px solid #ebf1ef;
	text-decoration: none !important;
	color: #0c2323 !important;
	font-size: 14px;
	font-weight: 600;
	transition: all 0.2s ease;
}

.cl-download-item:hover {
	color: #33e1aa !important;
	padding-left: 15px;
	background-color: #fafcfb;
}

.cl-download-icon {
	font-size: 20px;
	font-weight: 400;
	color: #cbd5d3;
	transition: color 0.2s ease;
}

.cl-download-item:hover .cl-download-icon {
	color: #33e1aa;
}

.cl-excipients-text {
	font-size: 14px;
	line-height: 1.7;
	color: rgba(255, 255, 255, 0.9);
}

/* Product Status Badges (Coming Soon & Limited Availability) */
.cl-status-badge {
	display: inline-block;
	font-family: 'Biennale', 'Helvetica Now Text', sans-serif;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.2;
	padding: 8px 16px;
	margin-top: 14px;
	text-align: center;
	border-radius: 2px;
	letter-spacing: 0.3px;
	transition: opacity 0.2s ease;
}

.cl-status-coming-soon {
	background-color: #33e1aa;
	color: #ffffff !important;
}

.cl-status-limited {
	background-color: #0c2323;
	color: #ffffff !important;
}

/* Bottom Portfolio / QMID Banner styling (White Background & Mint Outline Button) */
.cl-archive-bottom-portfolio {
	background-color: #ffffff !important;
	padding: 70px 0;
	margin-top: 0 !important;
	border-top: 1px solid #eef2f1;
	width: 100%;
}

.cl-archive-bottom-portfolio .eut-container,
.cl-archive-bottom-portfolio .vc_row {
	background-color: #ffffff !important;
}

.cl-archive-bottom-portfolio a.vc_btn3,
.cl-archive-bottom-portfolio .vc_btn3-container a,
.cl-archive-bottom-portfolio a.cl-btn-discover {
	display: inline-block !important;
	font-family: 'Biennale', sans-serif !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: #33e1aa !important;
	background-color: transparent !important;
	border: 1px solid #33e1aa !important;
	border-radius: 0px !important;
	padding: 12px 28px !important;
	text-decoration: none !important;
	transition: all 0.25s ease !important;
	letter-spacing: 0.5px !important;
	margin-top: 15px !important;
}

.cl-archive-bottom-portfolio a.vc_btn3:hover,
.cl-archive-bottom-portfolio .vc_btn3-container a:hover,
.cl-archive-bottom-portfolio a.cl-btn-discover:hover {
	background-color: #33e1aa !important;
	color: #ffffff !important;
	border-color: #33e1aa !important;
}

/* Fix title clipping and category cards overlap on mobile */
@media (max-width: 768px) {

	.eut-title,
	.eut-title h1,
	.eut-title h2,
	.eut-title h3,
	.eut-clipping-wrapper,
	.eut-clipping-content {
		height: auto !important;
		max-height: none !important;
		overflow: visible !important;
	}

	.curaleaf-categories-row {
		margin-top: 30px !important;
		position: relative !important;
		z-index: 1 !important;
	}
}

/* ==========================================================================
   Compatibility Section (Single-Column Green Row - Inhalation Device & Related)
   ========================================================================== */

.cl-compatibility-row,
.vc_row.cl-compatibility-row,
div.cl-compatibility-row {
	background: #33e1aa !important;
	background-color: #33e1aa !important;
	position: relative !important;
	z-index: 2 !important;
	padding: 60px 0 75px !important;
}

.cl-compatibility-container {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 30px !important;
	box-sizing: border-box !important;
}

.cl-compatibility-title {
	font-family: inherit;
	font-size: 32px !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin: 0 0 45px 0 !important;
	letter-spacing: -0.02em !important;
	line-height: 1.2 !important;
	text-align: left !important;
}

.cl-compatibility-grid {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 30px !important;
	align-items: start !important;
	width: 100% !important;
}

.cl-compat-card {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	text-align: center !important;
	text-decoration: none !important;
	color: #ffffff !important;
	transition: transform 0.3s cubic-bezier(0.2, 0, 0.2, 1) !important;
	border-radius: 8px !important;
	padding: 10px !important;
}

.cl-compat-card:hover {
	transform: translateY(-8px) !important;
	text-decoration: none !important;
	color: #ffffff !important;
}

.cl-compat-img-wrap {
	width: 100% !important;
	height: 220px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-bottom: 22px !important;
	position: relative !important;
}

.cl-compat-img-wrap img {
	max-height: 200px !important;
	max-width: 100% !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	filter: drop-shadow(0 15px 30px rgba(0, 0, 0, 0.12)) !important;
	transition: transform 0.3s cubic-bezier(0.2, 0, 0.2, 1) !important;
}

.cl-compat-card:hover .cl-compat-img-wrap img {
	transform: scale(1.05) !important;
}

.cl-compat-no-img {
	width: 140px !important;
	height: 180px !important;
	background: rgba(255, 255, 255, 0.15) !important;
	border: 1px dashed rgba(255, 255, 255, 0.4) !important;
	border-radius: 8px !important;
}

.cl-compat-meta {
	width: 100% !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
}

.cl-compat-cat {
	font-size: 13px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.14em !important;
	color: rgba(255, 255, 255, 0.92) !important;
	margin-bottom: 8px !important;
	line-height: 1.2 !important;
}

.cl-compat-title {
	font-size: 22px !important;
	font-weight: 700 !important;
	color: #ffffff !important;
	margin: 0 0 10px 0 !important;
	line-height: 1.25 !important;
	text-align: center !important;
	letter-spacing: -0.01em !important;
	transition: opacity 0.2s ease !important;
}

.cl-compat-card:hover .cl-compat-title {
	opacity: 0.92 !important;
}

.cl-compat-strengths {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 16px !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: rgba(255, 255, 255, 0.95) !important;
	letter-spacing: 0.02em !important;
}

.cl-compat-metric {
	white-space: nowrap !important;
}

@media (max-width: 1024px) {
	.cl-compatibility-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 25px !important;
	}

	.cl-compat-img-wrap {
		height: 190px !important;
	}

	.cl-compat-img-wrap img {
		max-height: 170px !important;
	}
}

@media (max-width: 600px) {

	.cl-compatibility-row,
	.vc_row.cl-compatibility-row,
	div.cl-compatibility-row {
		padding: 50px 0 60px !important;
	}

	.cl-compatibility-title {
		font-size: 26px !important;
		margin-bottom: 30px !important;
	}

	.cl-compatibility-grid {
		grid-template-columns: 1fr !important;
		gap: 35px !important;
	}

	.cl-compat-img-wrap {
		height: 180px !important;
	}

	.cl-compat-title {
		font-size: 20px !important;
	}
}

/* ==========================================================================
   Frequently Asked Questions (FAQ) - Inhalation Device (QMID) Accordion
   ========================================================================== */

.cl-faq-row,
.vc_row.cl-faq-row,
div.cl-faq-row {
	background: #F5F5F5 !important;
	background-color: #F5F5F5 !important;
	position: relative !important;
	z-index: 2 !important;
	padding: 70px 0 85px !important;
	border-bottom: 1px solid #e5e5e5;
}

.cl-faq-container {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 30px !important;
	box-sizing: border-box !important;
}

.cl-faq-main-title {
	font-family: 'Biennale', sans-serif !important;
	font-size: 32px !important;
	font-weight: 700 !important;
	color: #0c2323 !important;
	margin: 0 0 35px 0 !important;
	letter-spacing: -0.02em !important;
	line-height: 1.2 !important;
	text-align: left !important;
}

.cl-faq-accordion .eut-accordion-wrapper {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border-top: 1px solid #e2e8f0 !important;
}

.cl-faq-item {
	position: relative !important;
	margin: 0 !important;
	padding: 0 !important;
	/* border-bottom: 1px solid #e2e8f0 !important; */
	list-style: none !important;
}

.cl-faq-title-wrap {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-direction: row !important;
	padding: 22px 0 !important;
	cursor: pointer !important;
	position: relative !important;
	user-select: none !important;
	transition: color 0.2s ease !important;
	text-align: left !important;
}

.cl-faq-title-wrap:hover .cl-faq-question {
	color: #33e1aa !important;
}

.cl-faq-question {
	font-family: 'Biennale', sans-serif !important;
	font-size: 19px !important;
	font-weight: 600 !important;
	color: #0c2323 !important;
	margin: 0 !important;
	line-height: 1.4 !important;
	letter-spacing: -0.01em !important;
	transition: color 0.2s ease !important;
	order: 1 !important;
	text-align: left !important;
	flex: 1 !important;
}

.cl-faq-title-wrap .eut-accordion-arrow {
	position: static !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 28px !important;
	height: 28px !important;
	font-size: 24px !important;
	line-height: 1 !important;
	color: #0c2323 !important;
	margin: 0 !important;
	margin-left: auto !important;
	opacity: 0.8 !important;
	transition: opacity 0.2s ease !important;
	order: 2 !important;
}

.cl-faq-title-wrap .eut-accordion-plus {
	display: inline-block !important;
	font-style: normal !important;
	font-weight: 300 !important;
	transition: transform 0.3s cubic-bezier(0.2, 0, 0.2, 1) !important;
}

.cl-faq-title-wrap.active .eut-accordion-plus,
.cl-faq-item.active .eut-accordion-plus {
	transform: rotate(45deg) !important;
	color: #0c2323 !important;
}

.cl-faq-answer {
	display: none;
	overflow: hidden !important;
	padding: 0 !important;
	margin: 0 !important;
}

.cl-faq-inner {
	padding: 4px 0 24px 0 !important;
	font-family: "Helvetica Now Text", sans-serif !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
	color: #4a5568 !important;
	opacity: 0;
	transform: translateY(-6px);
	transition: opacity 0.28s ease, transform 0.28s ease !important;
}

.cl-faq-inner p {
	margin: 0 0 12px 0 !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
	color: #4a5568 !important;
}

.cl-faq-inner p:last-child {
	margin-bottom: 0 !important;
}

/* Titolo capitolo FAQ: più grande delle domande interne */
.cl-faq-chapter > .cl-faq-title-wrap .cl-faq-question {
	font-size: 24px !important;
	font-weight: 700 !important;
}

/* Accordion interno: domande dentro il capitolo FAQ.
   La riga separatrice è già data da Crocal (.eut-title-wrapper:after), quindi niente bordi aggiuntivi */
.cl-faq-accordion .cl-faq-subwrapper {
	border-top: none !important;
	margin: 0 0 8px 0 !important;
}

.cl-faq-subitem > .cl-faq-title-wrap {
	padding: 14px 0 !important;
}

.cl-faq-subquestion {
	font-family: "Helvetica Now Text", sans-serif !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
}

.cl-faq-subitem > .cl-faq-answer > .cl-faq-inner {
	padding: 0 0 18px 0 !important;
}

.cl-faq-chevron {
	display: inline-block !important;
	width: 9px !important;
	height: 9px !important;
	border-right: 2px solid #0c2323 !important;
	border-bottom: 2px solid #0c2323 !important;
	transform: translateY(-2px) rotate(45deg) !important;
	transition: transform 0.3s cubic-bezier(0.2, 0, 0.2, 1) !important;
}

.cl-faq-subitem.active > .cl-faq-title-wrap .cl-faq-chevron {
	transform: translateY(2px) rotate(-135deg) !important;
}

.cl-faq-inner strong {
	color: #0c2323 !important;
	font-weight: 700 !important;
}

.cl-faq-inner a {
	color: #0c2323 !important;
	text-decoration: underline !important;
}

@media (max-width: 768px) {

	.cl-faq-row,
	.vc_row.cl-faq-row,
	div.cl-faq-row {
		padding: 50px 0 60px !important;
	}

	.cl-faq-main-title {
		font-size: 26px !important;
		margin-bottom: 25px !important;
	}

	.cl-faq-question {
		font-size: 17px !important;
	}
	.cl-faq-title-wrap {
		padding: 18px 0 !important;
	}

	.cl-faq-chapter > .cl-faq-title-wrap .cl-faq-question {
		font-size: 20px !important;
	}

	.cl-faq-subquestion {
		font-size: 15px !important;
	}
}

/* ==========================================================================
   Inhalation Device (QMID) Hero Stats & Specs Layout
   ========================================================================== */

.cl-layout-device.cl-stats-row {
	height: 400px !important;
	min-height: 400px !important;
	position: relative !important;
	overflow: visible !important;
}

.cl-layout-device.cl-stats-row::before {
	content: '' !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	bottom: 0 !important;
	width: 47% !important;
	background: #EAEAEA !important;
	z-index: 1 !important;
}

.cl-layout-device .cl-product-image-container {
	position: absolute !important;
	left: 45% !important;
	top: 80% !important;
	transform: translate(-50%, -50%) !important;
	z-index: 999 !important;
	text-align: center !important;
	pointer-events: none !important;
}

.cl-layout-device .cl-product-image-container img {
	max-height: 460px !important;
	width: auto !important;
	height: auto !important;
	object-fit: contain !important;
	filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.22)) !important;
}



.cl-layout-device .cl-thc-vertical {
	display: none !important;
}

.cl-layout-device .cl-stats-list {
	padding-left: 20px !important;
}

.cl-device-specs-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 14px !important;
	font-family: 'Biennale', sans-serif !important;
	font-size: 16px !important;
	color: #0c2323 !important;
	margin-bottom: 25px !important;
	padding-left: 0 !important;
}

.cl-device-spec-line {
	line-height: 1.4 !important;
	font-size: 16px !important;
	color: #0c2323 !important;
}

.cl-device-spec-line strong {
	font-weight: 700 !important;
	color: #0c2323 !important;
	margin-right: 8px !important;
	display: inline-block !important;
}

.cl-layout-device .cl-stats-btn-wrap {
	padding-left: 0 !important;
}

.cl-layout-device .cl-stats-btn-wrap .vc_btn3,
.cl-layout-device .cl-btn-contact a {
	background: #33e1aa !important;
	background-color: #33e1aa !important;
	color: #ffffff !important;
	border: none !important;
	font-weight: 600 !important;
	font-size: 15px !important;
	padding: 13px 32px !important;
	border-radius: 4px !important;
	display: inline-block !important;
	text-decoration: none !important;
	transition: opacity 0.2s ease, transform 0.2s ease !important;
}

.cl-layout-device .cl-btn-contact a:hover {
	opacity: 0.9 !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
}

@media (max-width: 991px) {
	.cl-layout-device.cl-stats-row {
		height: auto !important;
		min-height: 420px !important;
		padding: 40px 0 !important;
	}

	.cl-layout-device.cl-stats-row::before {
		width: 100% !important;
		height: 320px !important;
	}

	.cl-layout-device .cl-product-image-container {
		position: relative !important;
		left: auto !important;
		top: auto !important;
		transform: none !important;
		margin-bottom: 30px !important;
	}

	.cl-layout-device .cl-product-image-container img {
		max-height: 340px !important;
	}

	.cl-layout-device .cl-stats-list {
		padding: 35px 25px 45px 25px !important;
		box-sizing: border-box !important;
	}

	.cl-device-specs-list {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.cl-layout-device .cl-stats-btn-wrap {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

/* FAQ Anchor scroll offset */
#faq,
.cl-faq-container#faq {
	scroll-margin-top: 120px;
}

/* ==========================================================================
   Product Support & Safety Form (CF7)
   ========================================================================== */

.cl-product-support-form {
    max-width: 820px;
    margin: 30px auto;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(12, 35, 35, 0.05);
    padding: 40px;
    box-sizing: border-box;
    font-family: inherit;
}

.cl-product-support-form h3 {
    font-size: 24px;
    font-weight: 700;
    color: #0c2323;
    margin: 0 0 8px 0;
    letter-spacing: -0.02em;
}

.cl-product-support-form p {
    font-size: 15px;
    color: #556969;
    line-height: 1.5;
    margin: 0 0 20px 0;
}

.cl-product-support-form .cl-form-step {
    margin-bottom: 25px;
}

.cl-product-support-form .cl-main-question {
    font-size: 18px;
    font-weight: 700;
    color: #0c2323;
    margin-bottom: 12px;
    display: block;
}

.cl-product-support-form .cl-sub-label {
    display: block;
    font-size: 14px;
    font-weight: 400;
    color: #64748b;
    margin-top: 4px;
}

.cl-product-support-form .cl-field-label {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: #1a3333;
    margin-bottom: 6px;
}

.cl-product-support-form .cl-req {
    color: #e53e3e;
}

.cl-product-support-form .cl-opt {
    font-size: 12px;
    font-weight: 400;
    color: #94a3b8;
}

.cl-product-support-form .cl-form-group {
    margin-bottom: 20px;
}

.cl-product-support-form .cl-form-row {
    display: flex;
    gap: 20px;
    margin-bottom: 0;
}

.cl-product-support-form .cl-row-2 > .cl-form-group {
    flex: 1;
    min-width: 0;
}

.cl-product-support-form input[type="text"],
.cl-product-support-form input[type="email"],
.cl-product-support-form input[type="tel"],
.cl-product-support-form input[type="date"],
.cl-product-support-form select,
.cl-product-support-form textarea {
    width: 100%;
    padding: 12px 16px;
    border: 1.5px solid #cbd5e1;
    border-radius: 8px;
    font-size: 15px;
    color: #1e293b;
    background-color: #f8fafc;
    box-sizing: border-box;
    transition: all 0.2s ease;
    font-family: inherit;
}

.cl-product-support-form select {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 14px center;
    background-size: 16px;
    padding-right: 40px;
}

.cl-product-support-form input:focus,
.cl-product-support-form select:focus,
.cl-product-support-form textarea:focus {
    border-color: #33e1aa;
    background-color: #ffffff;
    box-shadow: 0 0 0 3px rgba(51, 225, 170, 0.2);
    outline: none;
}

.cl-product-support-form textarea {
    min-height: 110px;
    resize: vertical;
}

.cl-product-support-form input[type="file"] {
    display: block;
    width: 100%;
    padding: 10px;
    background: #f1f5f9;
    border: 1.5px dashed #cbd5e1;
    border-radius: 8px;
    font-size: 13px;
    color: #475569;
    box-sizing: border-box;
    cursor: pointer;
}

/* Radio buttons */
.cl-product-support-form .wpcf7-radio {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 6px;
}

.cl-product-support-form .wpcf7-list-item {
    margin: 0;
}

.cl-product-support-form .wpcf7-list-item label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    color: #334155;
    cursor: pointer;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    padding: 8px 16px;
    border-radius: 20px;
    transition: all 0.2s ease;
}

.cl-product-support-form .wpcf7-list-item label:hover {
    border-color: #33e1aa;
    background: #f0fdf9;
}

.cl-product-support-form .wpcf7-list-item input[type="radio"]:checked + span,
.cl-product-support-form .wpcf7-list-item label:has(input[type="radio"]:checked) {
    border-color: #33e1aa;
    background: #e6faf4;
    color: #0c2323;
    font-weight: 600;
}

/* Branch card container */
.cl-support-branch {
    border-top: 2px solid #e2e8f0;
    padding-top: 25px;
    margin-top: 25px;
    animation: clFadeIn 0.3s ease;
}

.cl-support-contact-details {
    border-top: 2px solid #e2e8f0;
    padding-top: 25px;
    margin-top: 30px;
    animation: clFadeIn 0.3s ease;
}

.cl-sub-group {
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 20px;
    animation: clFadeIn 0.25s ease;
}

.cl-safety-alert {
    background: #fffbeb;
    border-left: 4px solid #f59e0b;
    padding: 14px 18px;
    border-radius: 6px;
    font-size: 14px;
    color: #92400e;
    margin-bottom: 22px;
    line-height: 1.5;
}

.cl-support-disclaimer {
    background: #f8fafc;
    border-radius: 8px;
    padding: 14px 18px;
    margin-top: 20px;
    margin-bottom: 25px;
}

.cl-support-disclaimer p {
    font-size: 13px;
    color: #64748b;
    line-height: 1.5;
    margin: 0;
}

.cl-product-support-form input[type="submit"].cl-btn-submit,
.cl-product-support-form input[type="submit"],
.cl-product-support-form button[type="submit"],
.cl-product-support-form .cl-btn-submit,
#eut-theme-wrapper .cl-product-support-form input[type="submit"] {
    display: block !important;
    width: 100% !important;
    background: #33e1aa !important;
    background-color: #33e1aa !important;
    color: #0c2323 !important;
    -webkit-text-fill-color: #0c2323 !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    padding: 16px 32px !important;
    border: none !important;
    border-radius: 30px !important;
    cursor: pointer !important;
    text-align: center !important;
    transition: all 0.25s ease !important;
    box-shadow: 0 4px 14px rgba(51, 225, 170, 0.4) !important;
    height: auto !important;
    line-height: 1.3 !important;
    text-transform: none !important;
    letter-spacing: 0.02em !important;
}

.cl-product-support-form input[type="submit"].cl-btn-submit:hover,
.cl-product-support-form input[type="submit"]:hover,
.cl-product-support-form button[type="submit"]:hover,
.cl-product-support-form .cl-btn-submit:hover,
#eut-theme-wrapper .cl-product-support-form input[type="submit"]:hover {
    background: #2cd49f !important;
    background-color: #2cd49f !important;
    color: #0c2323 !important;
    -webkit-text-fill-color: #0c2323 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(51, 225, 170, 0.55) !important;
}

@keyframes clFadeIn {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: translateY(0); }
}

@media (max-width: 767px) {
    .cl-product-support-form {
        padding: 24px 16px;
        border-radius: 12px;
    }
    .cl-product-support-form .cl-form-row {
        flex-direction: column;
        gap: 0;
    }
}

/* ==========================================================================
   Header and Footer Only Template — Hide Navigation Menu
   ========================================================================== */
.page-template-template-header-footer #eut-main-menu,
.page-template-template-header-footer #eut-crocal-sticky-menu,
.page-template-template-header-footer .eut-hidden-menu-btn,
.page-template-template-header-footer #eut-responsive-header .eut-hidden-menu-btn,
.page-template-template-header-footer #eut-hidden-menu,
.page-template-template-header-footer .eut-toggle-hiddenarea {
    display: none !important;
}