/**
 * CannaGreen Product Summary Elementor widget.
 */

.cgx-product-summary {
	width: 100%;
	border: 1px solid rgba(22, 63, 46, 0.10);
	border-radius: 16px;
	background-color: #FFFFFF8F;
	box-shadow: 0 14px 34px rgba(16, 45, 33, 0.08);
	backdrop-filter: blur(14px);
	-webkit-backdrop-filter: blur(14px);
	padding: 30px;
	box-sizing: border-box;
}

.cgx-product-summary__eyebrow {
	margin: 0 0 10px;
	color: #C8A96A;
	font-size: 11px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.11em;
	text-transform: uppercase;
}

.cgx-product-summary__badge-row {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 12px;
}

.cgx-product-summary__badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 26px;
	padding: 7px 10px;
	border-radius: 999px;
	background-color: #163F2E;
	color: #F7F3EA;
	font-size: 10px;
	font-weight: 900;
	line-height: 1;
	letter-spacing: 0.075em;
	text-transform: uppercase;
}

.cgx-product-summary__title {
	margin: 0 !important;
	padding: 0 !important;
	color: #1D1D1B;
	font-size: clamp(38px, 4.3vw, 64px);
	font-weight: 800;
	line-height: 0.94;
	letter-spacing: -0.065em;
}

.cgx-product-summary__price {
	margin-top: 18px;
	color: #1D1D1B;
	font-size: 28px;
	font-weight: 850;
	line-height: 1;
	letter-spacing: -0.045em;
}

.cgx-product-summary__price .price,
.cgx-product-summary__price .amount,
.cgx-product-summary__price ins {
	color: inherit !important;
	font-size: inherit !important;
	font-weight: inherit !important;
	text-decoration: none !important;
}

.cgx-product-summary__price del {
	margin-right: 8px;
	color: rgba(29, 29, 27, 0.45) !important;
	font-size: 0.72em;
	font-weight: 700;
	opacity: 1 !important;
}

.cgx-product-summary__description {
	margin-top: 18px;
	color: #1D1D1BCC;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.62;
}

.cgx-product-summary__description > *:first-child {
	margin-top: 0;
}

.cgx-product-summary__description > *:last-child {
	margin-bottom: 0;
}

.cgx-product-summary__metrics {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 22px;
}

.cgx-product-summary__metric {
	display: flex;
	min-width: 0;
	align-items: center;
	gap: 9px;
	padding: 11px 12px;
	border: 1px solid rgba(22, 63, 46, 0.12);
	border-radius: 12px;
	background-color: #FFFFFF4D;
}

.cgx-product-summary__metric-icon {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	width: 30px;
	height: 30px;
	border: 1px solid #163F2E0F;
	border-radius: 999px;
	background-color: #C8A96A14;
	color: rgba(129, 103, 48, 0.86);
	font-size: 12px;
	line-height: 1;
}

.cgx-product-summary__metric-icon svg {
	display: block;
	width: 1em;
	height: 1em;
	fill: currentColor;
}

.cgx-product-summary__metric-content {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 3px;
}

.cgx-product-summary__metric-label {
	color: #C8A96A;
	font-size: 8px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.cgx-product-summary__metric strong {
	color: #1D1D1BCC;
	font-size: 12px;
	font-weight: 800;
	line-height: 1;
}

.cgx-product-summary__purchase {
	margin-top: 24px;
}

.cgx-product-summary__purchase form.cart {
	display: flex;
	align-items: stretch;
	gap: 10px;
	margin: 0 !important;
}

.cgx-product-summary__purchase .quantity {
	display: flex;
	flex: 0 0 96px;
	margin: 0 !important;
}

.cgx-product-summary__purchase .qty {
	width: 96px !important;
	height: 48px;
	border: 1px solid rgba(22, 63, 46, 0.14);
	border-radius: 10px;
	background: #fff;
	color: #1D1D1B;
	font-size: 15px;
	font-weight: 800;
	text-align: center;
}

.cgx-product-summary__purchase .single_add_to_cart_button,
.cgx-product-summary__purchase .button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	flex: 1;
	height: 48px;
	min-height: 48px;
	margin: 0 !important;
	padding: 0 22px !important;
	border: 0 !important;
	border-radius: 10px !important;
	background-color: #163F2E !important;
	color: #F7F3EA !important;
	font-size: 12px !important;
	font-weight: 900 !important;
	line-height: 1 !important;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.cgx-product-summary__purchase .single_add_to_cart_button:hover,
.cgx-product-summary__purchase .button:hover {
	background-color: #102D21 !important;
	color: #F7F3EA !important;
}

.cgx-product-summary__purchase .variations {
	width: 100%;
	margin: 0 0 16px !important;
	border: 0 !important;
}

.cgx-product-summary__purchase .variations tr,
.cgx-product-summary__purchase .variations th,
.cgx-product-summary__purchase .variations td {
	display: block;
	width: 100%;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	text-align: left;
}

.cgx-product-summary__purchase .variations label {
	display: block;
	margin: 0 0 6px;
	color: #1D1D1B;
	font-size: 12px;
	font-weight: 800;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

.cgx-product-summary__purchase .variations select {
	width: 100%;
	min-height: 44px;
	margin-bottom: 10px;
	padding: 0 14px;
	border: 1px solid rgba(22, 63, 46, 0.14);
	border-radius: 10px;
	background: #fff;
	color: #1D1D1B;
	font-size: 14px;
	font-weight: 700;
}

.cgx-product-summary__purchase .reset_variations {
	display: inline-flex;
	margin: 0 0 14px;
	color: #163F2E;
	font-size: 12px;
	font-weight: 800;
	text-decoration: none;
}

.cgx-product-summary__trust {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
	margin-top: 18px;
}

.cgx-product-summary__trust-item {
	padding: 12px;
	border: 1px solid rgba(22, 63, 46, 0.10);
	border-radius: 12px;
	background: rgba(255,255,255,0.45);
}

.cgx-product-summary__trust-item strong {
	display: block;
	color: #1D1D1B;
	font-size: 13px;
	font-weight: 800;
	line-height: 1.2;
}

.cgx-product-summary__trust-item span {
	display: block;
	margin-top: 4px;
	color: rgba(29, 29, 27, 0.62);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.35;
}

.cgx-product-summary__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 18px;
	margin-top: 18px;
	color: rgba(29, 29, 27, 0.62);
	font-size: 12px;
	font-weight: 600;
}

.cgx-product-summary__meta strong {
	color: #1D1D1B;
	font-weight: 800;
}

@media (max-width: 767px) {
	.cgx-product-summary {
		padding: 18px;
		border-radius: 12px;
	}

	.cgx-product-summary__title {
		font-size: 34px;
		line-height: 0.96;
	}

	.cgx-product-summary__price {
		font-size: 22px;
	}

	.cgx-product-summary__description {
		font-size: 14px;
	}

	.cgx-product-summary__metrics,
	.cgx-product-summary__trust {
		grid-template-columns: 1fr;
	}

	.cgx-product-summary__purchase form.cart {
		flex-direction: column;
	}

	.cgx-product-summary__purchase .quantity,
	.cgx-product-summary__purchase .qty,
	.cgx-product-summary__purchase .single_add_to_cart_button,
	.cgx-product-summary__purchase .button {
		width: 100% !important;
		flex-basis: auto;
	}
}


/* Product summary order + dynamic metrics grid 1.1.07 */
.cgx-product-summary__metrics {
	display: flex !important;
	flex-wrap: wrap;
	align-items: stretch;
}

.cgx-product-summary__metrics--count-1 .cgx-product-summary__metric {
	flex: 0 0 calc(50% - (var(--cgx-product-summary-metrics-gap, 10px) / 2));
	max-width: calc(50% - (var(--cgx-product-summary-metrics-gap, 10px) / 2));
}

.cgx-product-summary__metrics--count-2 .cgx-product-summary__metric {
	flex: 1 1 calc(50% - 5px);
	max-width: calc(50% - 5px);
}

.cgx-product-summary__metrics--count-3 .cgx-product-summary__metric {
	flex: 1 1 calc(33.333% - 7px);
	max-width: calc(33.333% - 7px);
}

.cgx-product-summary__metric--strain .cgx-product-summary__metric-icon svg {
	width: 14px;
	height: 14px;
}

@media (max-width: 767px) {
	.cgx-product-summary__metrics--count-1 .cgx-product-summary__metric {
		flex: 0 0 50%;
		max-width: 50%;
	}

	.cgx-product-summary__metrics--count-2 .cgx-product-summary__metric,
	.cgx-product-summary__metrics--count-3 .cgx-product-summary__metric {
		flex: 1 1 100%;
		max-width: 100%;
	}
}


/* Product summary title first + 42px title 1.1.08 */
.cgx-product-summary__eyebrow {
	display: none !important;
}

.cgx-product-summary__title {
	font-size: 42px !important;
}


/* Product summary strain icon + benefit chips 1.1.09 */
.cgx-product-summary__metric--strain .cgx-product-summary__metric-icon svg {
	width: 18px !important;
	height: 18px !important;
}

.cgx-product-summary__benefits {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-top: 22px;
}

.cgx-product-summary__benefit {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 40px;
	padding: 9px 14px;
	border: 1px solid rgba(22, 63, 46, 0.08);
	border-radius: 999px;
	background: rgba(255,255,255,0.48);
	color: #1D1D1B;
	font-size: 13px;
	font-weight: 650;
	line-height: 1;
	box-sizing: border-box;
}

.cgx-product-summary__benefit-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	color: #163F2E;
	line-height: 1;
}

.cgx-product-summary__benefit-icon svg {
	display: block;
	width: 18px;
	height: 18px;
	fill: currentColor;
}


/* Benefit chips visual refinement 1.1.10 */
.cgx-product-summary__benefit {
	background: #f9f9f9 !important;
	border: 1px solid rgba(22, 63, 46, 0.08);
}

.cgx-product-summary__benefit-icon {
	width: 20px;
	height: 20px;
}

.cgx-product-summary__benefit-icon svg {
	width: 20px;
	height: 20px;
}

.cgx-product-summary__benefit--calm .cgx-product-summary__benefit-icon {
	color: #3F7A5D;
}

.cgx-product-summary__benefit--focus .cgx-product-summary__benefit-icon {
	color: #C8A96A;
}

.cgx-product-summary__benefit--evening .cgx-product-summary__benefit-icon {
	color: #6B5A8E;
}

.cgx-product-summary__benefit--energy .cgx-product-summary__benefit-icon {
	color: #C87B2A;
}

.cgx-product-summary__benefit--default .cgx-product-summary__benefit-icon {
	color: #163F2E;
}


/* Product summary benefit helper fatal fix 1.1.11 */
.cgx-product-summary__benefit {
	background: #f9f9f9 !important;
}


/* Product summary benefit chips refinement 1.1.12 */
.cgx-product-summary__benefits {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}

.cgx-product-summary__benefit {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	min-height: 40px;
	padding: 10px 14px;
	border: 1px solid #F7F6EF !important;
	border-radius: 999px;
	background: #F7F6EF !important;
	color: #1D1D1B;
	font-size: 15px !important;
	font-weight: 400 !important;
	line-height: 1.2;
	box-sizing: border-box;
}

.cgx-product-summary__benefit-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 20px;
	height: 20px;
	line-height: 1;
	flex: 0 0 20px;
}

.cgx-product-summary__benefit-icon svg {
	display: block;
	width: 20px;
	height: 20px;
	fill: currentColor;
}

.cgx-product-summary__benefit--relax .cgx-product-summary__benefit-icon {
	color: #4FA58A;
}

.cgx-product-summary__benefit--calm .cgx-product-summary__benefit-icon {
	color: #78AFA1;
}

.cgx-product-summary__benefit--evening .cgx-product-summary__benefit-icon {
	color: #7B6ED6;
}

.cgx-product-summary__benefit--focus .cgx-product-summary__benefit-icon {
	color: #D1A646;
}

.cgx-product-summary__benefit--clarity .cgx-product-summary__benefit-icon {
	color: #5D9BFF;
}

.cgx-product-summary__benefit--creative .cgx-product-summary__benefit-icon {
	color: #E787A6;
}

.cgx-product-summary__benefit--balance .cgx-product-summary__benefit-icon {
	color: #59A8D9;
}

.cgx-product-summary__benefit--energy .cgx-product-summary__benefit-icon {
	color: #F08A24;
}

.cgx-product-summary__benefit--day .cgx-product-summary__benefit-icon {
	color: #F2B845;
}

.cgx-product-summary__benefit--all-day .cgx-product-summary__benefit-icon {
	color: #4EB8C8;
}

.cgx-product-summary__benefit--default .cgx-product-summary__benefit-icon {
	color: #163F2E;
}


/* Product summary final sizing + colorful benefit icons 1.1.13 */
.cgx-product-summary__title {
	font-size: 38px !important;
}

.cgx-product-summary__price {
	font-size: 24px !important;
}

.cgx-product-summary__benefit-icon {
	width: 24px !important;
	height: 24px !important;
	flex: 0 0 24px !important;
}

.cgx-product-summary__benefit-icon svg {
	width: 24px !important;
	height: 24px !important;
}

/* Meaning-based icon colors */
.cgx-product-summary__benefit--relax .cgx-product-summary__benefit-icon {
	color: #49A078 !important;
}

.cgx-product-summary__benefit--calm .cgx-product-summary__benefit-icon {
	color: #2F8F6B !important;
}

.cgx-product-summary__benefit--evening .cgx-product-summary__benefit-icon {
	color: #6F63D6 !important;
}

.cgx-product-summary__benefit--focus .cgx-product-summary__benefit-icon {
	color: #D1A33A !important;
}

.cgx-product-summary__benefit--clarity .cgx-product-summary__benefit-icon {
	color: #4F8DFF !important;
}

.cgx-product-summary__benefit--creative .cgx-product-summary__benefit-icon {
	color: #D96BA8 !important;
}

.cgx-product-summary__benefit--balance .cgx-product-summary__benefit-icon {
	color: #32A7A0 !important;
}

.cgx-product-summary__benefit--energy .cgx-product-summary__benefit-icon {
	color: #F28A24 !important;
}

.cgx-product-summary__benefit--day .cgx-product-summary__benefit-icon {
	color: #F2B73F !important;
}

.cgx-product-summary__benefit--all-day .cgx-product-summary__benefit-icon {
	color: #35AFC5 !important;
}

.cgx-product-summary__benefit--default .cgx-product-summary__benefit-icon {
	color: #163F2E !important;
}


/* Product summary clearly distinct benefit icon colors 1.1.14 */
.cgx-product-summary__benefit--relax .cgx-product-summary__benefit-icon {
	color: #1FA463 !important; /* green */
}

.cgx-product-summary__benefit--calm .cgx-product-summary__benefit-icon {
	color: #2D6BFF !important; /* blue */
}

.cgx-product-summary__benefit--evening .cgx-product-summary__benefit-icon {
	color: #7A35D8 !important; /* purple */
}

.cgx-product-summary__benefit--focus .cgx-product-summary__benefit-icon {
	color: #D4A017 !important; /* gold */
}

.cgx-product-summary__benefit--clarity .cgx-product-summary__benefit-icon {
	color: #00A7C7 !important; /* cyan */
}

.cgx-product-summary__benefit--creative .cgx-product-summary__benefit-icon {
	color: #E23A8B !important; /* pink */
}

.cgx-product-summary__benefit--balance .cgx-product-summary__benefit-icon {
	color: #6B4E16 !important; /* brown */
}

.cgx-product-summary__benefit--energy .cgx-product-summary__benefit-icon {
	color: #FF6A00 !important; /* orange */
}

.cgx-product-summary__benefit--day .cgx-product-summary__benefit-icon {
	color: #F2C400 !important; /* yellow */
}

.cgx-product-summary__benefit--all-day .cgx-product-summary__benefit-icon {
	color: #D64527 !important; /* red/coral */
}

.cgx-product-summary__benefit--default .cgx-product-summary__benefit-icon {
	color: #163F2E !important;
}


/* Product summary variation cards 1.1.15 */
.cgx-product-summary__purchase--has-variation-cards .variations,
.cgx-product-summary__purchase--has-variation-cards .reset_variations,
.cgx-product-summary__purchase--has-variation-cards .woocommerce-variation-price,
.cgx-product-summary__purchase--has-variation-cards .woocommerce-variation-availability {
	display: none !important;
}

.cgx-product-summary__variation-cards {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 10px;
	margin: 0 0 18px;
}

.cgx-product-summary__variation-card {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-height: 138px;
	padding: 18px 14px;
	border: 1px solid rgba(22, 63, 46, 0.12);
	border-radius: 14px;
	background: rgba(255,255,255,0.6);
	color: #1D1D1B;
	text-align: center;
	cursor: pointer;
	transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.cgx-product-summary__variation-card:hover {
	border-color: rgba(22, 63, 46, 0.28);
	background: rgba(255,255,255,0.8);
}

.cgx-product-summary__variation-card.is-active {
	border-color: #163F2E;
	background: #fff;
	box-shadow: 0 10px 24px rgba(22, 63, 46, 0.08);
}

.cgx-product-summary__variation-card.is-disabled {
	opacity: 0.42;
	cursor: not-allowed;
}

.cgx-product-summary__variation-card-check {
	position: absolute;
	top: -8px;
	right: -8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	border-radius: 999px;
	background: #163F2E;
	color: #F7F3EA;
	box-shadow: 0 8px 16px rgba(22, 63, 46, 0.22);
	opacity: 0;
	transform: scale(.85);
	transition: opacity .2s ease, transform .2s ease;
}

.cgx-product-summary__variation-card.is-active .cgx-product-summary__variation-card-check {
	opacity: 1;
	transform: scale(1);
}

.cgx-product-summary__variation-card-check svg {
	width: 14px;
	height: 14px;
	display: block;
}

.cgx-product-summary__variation-card-value {
	color: #163F2E;
	font-size: 22px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: -0.03em;
}

.cgx-product-summary__variation-card-unit {
	color: rgba(29, 29, 27, 0.62);
	font-size: 12px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.cgx-product-summary__variation-card-price,
.cgx-product-summary__variation-card-price .amount,
.cgx-product-summary__variation-card-price .price {
	color: #1D1D1B !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.2;
	text-decoration: none !important;
}

.cgx-product-summary__variation-card-price del {
	display: none !important;
}

.cgx-product-summary__purchase--has-variation-cards form.cart {
	gap: 12px;
}

.cgx-product-summary__purchase--has-variation-cards .single_variation_wrap {
	width: 100%;
}

.cgx-product-summary__purchase--has-variation-cards .woocommerce-variation-add-to-cart {
	display: flex;
	align-items: stretch;
	gap: 10px;
}

@media (max-width: 1024px) {
	.cgx-product-summary__variation-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.cgx-product-summary__variation-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 8px;
	}

	.cgx-product-summary__variation-card {
		min-height: 114px;
		padding: 14px 10px;
	}

	.cgx-product-summary__variation-card-value {
		font-size: 18px;
	}

	.cgx-product-summary__variation-card-unit {
		font-size: 11px;
	}

	.cgx-product-summary__variation-card-price,
	.cgx-product-summary__variation-card-price .amount,
	.cgx-product-summary__variation-card-price .price {
		font-size: 13px !important;
	}

	.cgx-product-summary__purchase--has-variation-cards .woocommerce-variation-add-to-cart {
		flex-direction: column;
	}
}


/* Product summary variation cards grid 1.1.16 */
.cgx-product-summary__variation-cards {
	grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

@media (max-width: 1024px) {
	.cgx-product-summary__variation-cards {
		grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	.cgx-product-summary__variation-cards {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
		gap: 8px !important;
	}

	.cgx-product-summary__variation-card {
		min-height: 104px !important;
		padding: 12px 8px !important;
	}

	.cgx-product-summary__variation-card-value {
		font-size: 16px !important;
	}

	.cgx-product-summary__variation-card-unit {
		font-size: 9px !important;
	}

	.cgx-product-summary__variation-card-price,
	.cgx-product-summary__variation-card-price .amount,
	.cgx-product-summary__variation-card-price .price {
		font-size: 11px !important;
	}
}


/* Product summary variation card typography 1.1.17 */
.cgx-product-summary__variation-card-value {
	font-size: 20px !important;
}

.cgx-product-summary__variation-card-unit {
	font-size: 10px !important;
}

.cgx-product-summary__variation-card-price,
.cgx-product-summary__variation-card-price .amount,
.cgx-product-summary__variation-card-price .price {
	margin-top: 8px !important;
}

@media (max-width: 767px) {
	.cgx-product-summary__variation-card-value {
		font-size: 20px !important;
	}

	.cgx-product-summary__variation-card-unit {
		font-size: 10px !important;
	}

	.cgx-product-summary__variation-card-price,
	.cgx-product-summary__variation-card-price .amount,
	.cgx-product-summary__variation-card-price .price {
		margin-top: 8px !important;
	}
}


/* Product summary variation card min height 1.1.18 */
.cgx-product-summary__variation-card {
	min-height: 115px !important;
}


/* Product summary remove trust and meta sections 1.1.19 */
.cgx-product-summary__trust,
.cgx-product-summary__meta {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}
