/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor child theme with custom WooCommerce shop styling.
Version: 3.4.7.1774799224
Updated: 2026-03-29 15:47:04
*/

/* Shop page background so white cards pop more */
body.candy-shop,
body.candy-shop .site,
body.candy-shop .site-main,
body.candy-shop .content-area,
body.candy-shop .woocommerce,
body.candy-shop .elementor,
body.candy-shop .elementor-section,
body.candy-shop .elementor-container,
body.candy-shop .elementor-column,
body.candy-shop .elementor-widget-wrap,
body.candy-shop .elementor-widget-container {
	background: #f8f6fb;
}

/* Product card */
.candy-shop.woocommerce ul.products li.product {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.82) 0%,
			rgba(255, 248, 251, 0.78) 46%,
			rgba(247, 243, 250, 0.84) 100%
		);
	border: 1px solid rgba(231, 220, 236, 0.92);
	border-radius: 22px;
	padding: 18px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05),
		0 1px 0 rgba(255, 255, 255, 0.72) inset,
		0 -18px 32px rgba(255, 255, 255, 0.16) inset;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
	box-sizing: border-box;
	overflow: hidden;
	text-align: left;
	transition:
		transform 0.34s cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 0.34s cubic-bezier(0.22, 1, 0.36, 1),
		border-color 0.28s ease,
		background 0.28s ease,
		filter 0.28s ease;
	min-height: auto !important;
	position: relative;
	isolation: isolate;
}

/* Card hover */
.candy-shop.woocommerce ul.products li.product:hover {
	transform: translateY(-8px);
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.9) 0%,
			rgba(255, 249, 252, 0.88) 46%,
			rgba(248, 244, 251, 0.92) 100%
		);
	border-color: rgba(255, 107, 138, 0.18);
	box-shadow:
		0 28px 56px rgba(17, 24, 39, 0.11),
		0 12px 28px rgba(255, 75, 110, 0.08),
		0 1px 0 rgba(255, 255, 255, 0.82) inset,
		0 -18px 34px rgba(255, 255, 255, 0.22) inset;
	filter: saturate(1.02);
}

/* Reset direct children so nothing sits side-by-side */
.candy-shop.woocommerce ul.products li.product > * {
	width: 100% !important;
	float: none !important;
	clear: both !important;
	flex: 0 0 auto !important;
	position: relative;
	z-index: 1;
}

/* Outer premium edge ring */
.candy-shop.woocommerce ul.products li.product::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 22px;
	padding: 1px;
	background: linear-gradient(
		145deg,
		rgba(255, 255, 255, 0.62) 0%,
		rgba(255, 255, 255, 0.18) 22%,
		rgba(255, 120, 153, 0.18) 52%,
		rgba(255, 255, 255, 0.08) 78%,
		rgba(255, 255, 255, 0.5) 100%
	);
	opacity: 0.72;
	pointer-events: none;
	z-index: 0;
	transition: opacity 0.3s ease, filter 0.3s ease;
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
}

.candy-shop.woocommerce ul.products li.product:hover::before {
	opacity: 1;
	filter: brightness(1.04);
}

/* Top glossy light sweep */
.candy-shop.woocommerce ul.products li.product::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 22px;
	background:
		radial-gradient(
			ellipse at top center,
			rgba(255, 255, 255, 0.62) 0%,
			rgba(255, 227, 235, 0.18) 34%,
			rgba(255, 255, 255, 0) 68%
		),
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.26) 0%,
			rgba(255, 255, 255, 0.08) 26%,
			rgba(255, 255, 255, 0) 58%
		);
	opacity: 0.92;
	pointer-events: none;
	z-index: 0;
	transition:
		opacity 0.32s ease,
		transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.candy-shop.woocommerce ul.products li.product:hover::after {
	opacity: 1;
	transform: translateY(-2px);
}

/* Soft ambient glow under card */
.candy-shop.woocommerce ul.products li.product .candy-card-ambient-glow {
	display: none;
}

/* Image link wrapper */
.candy-shop.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
.candy-shop.woocommerce ul.products li.product > a.woocommerce-loop-product__link,
.candy-shop.woocommerce ul.products li.product > a:first-of-type {
	order: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 198px !important;
	margin: 0 0 12px !important;
	text-align: center !important;
	column-gap: 0 !important;
	row-gap: 0 !important;
	overflow: hidden;
	border-radius: 18px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 247, 250, 0.7) 48%,
			rgba(246, 241, 249, 0.76) 100%
		);
	border: 1px solid rgba(255, 255, 255, 0.58);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -10px 20px rgba(255, 255, 255, 0.16),
		0 8px 22px rgba(17, 24, 39, 0.04);
	position: relative;
}

.candy-shop.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link::before,
.candy-shop.woocommerce ul.products li.product > a.woocommerce-loop-product__link::before,
.candy-shop.woocommerce ul.products li.product > a:first-of-type::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		radial-gradient(
			circle at top,
			rgba(255, 255, 255, 0.54),
			rgba(255, 255, 255, 0) 56%
		);
	opacity: 0.88;
	pointer-events: none;
}

/* Product image */
.candy-shop.woocommerce ul.products li.product img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 205px !important;
	margin: 0 auto !important;
	transition:
		transform 0.46s cubic-bezier(0.22, 1, 0.36, 1),
		filter 0.34s ease,
		opacity 0.26s ease;
	transform-origin: center center;
	will-change: transform;
	position: relative;
	z-index: 1;
}

/* Image-only hover disabled, card hover controls motion */
.candy-shop.woocommerce ul.products li.product img:hover {
	transform: none;
}

.candy-shop.woocommerce ul.products li.product:hover img {
	transform: translateY(-6px) scale(1.06);
	filter: saturate(1.06) contrast(1.01);
	opacity: 1;
}

/* Title under image */
.candy-shop.woocommerce ul.products li.product h2,
.candy-shop.woocommerce ul.products li.product .woocommerce-loop-product__title {
	order: 2 !important;
	display: block !important;
	width: 100% !important;
	margin: 0 0 7px !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em;
	color: #1b1b1f !important;
	text-align: left !important;
	transition: color 0.24s ease, transform 0.24s ease;
}

.candy-shop.woocommerce ul.products li.product:hover h2,
.candy-shop.woocommerce ul.products li.product:hover .woocommerce-loop-product__title {
	color: #111111 !important;
	transform: translateY(-1px);
}

/* Price under title */
.candy-shop.woocommerce ul.products li.product .price {
	order: 3 !important;
	display: block !important;
	width: 100% !important;
	margin: 0 0 14px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em;
	color: #08985a !important;
	text-align: left !important;
	transition: transform 0.24s ease, color 0.24s ease, opacity 0.24s ease;
	transform-origin: left center;
}

.candy-shop.woocommerce ul.products li.product:hover .price {
	transform: translateY(-1px);
	color: #078c53 !important;
	opacity: 1;
}

.candy-shop.woocommerce ul.products li.product .price del {
	color: #9a9a9a !important;
	font-weight: 500 !important;
	margin-right: 6px;
}

.candy-shop.woocommerce ul.products li.product .price ins {
	color: #08985a !important;
	text-decoration: none !important;
}


.candy-shop.woocommerce ul.products li.product .button::before,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button::before,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.24) 0%,
			rgba(255, 255, 255, 0.1) 38%,
			rgba(255, 255, 255, 0) 100%
		);
	opacity: 0.95;
	pointer-events: none;
	z-index: 0;
}

.candy-shop.woocommerce ul.products li.product .button::after,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button::after,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.18) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 0;
}

.candy-shop.woocommerce ul.products li.product .button > *,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button > *,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart > * {
	position: relative;
	z-index: 1;
}

.candy-shop.woocommerce ul.products li.product .button:hover,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button:hover,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart:hover {
	transform: translateY(-2px);
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14);
	filter: saturate(1.04) brightness(1.02);
}

.candy-shop.woocommerce ul.products li.product .button:hover::after,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button:hover::after,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart:hover::after {
	transform: skewX(-20deg) translateX(420%);
}

.candy-shop.woocommerce ul.products li.product:hover .button,
.candy-shop.woocommerce ul.products li.product:hover a.add_to_cart_button,
.candy-shop.woocommerce ul.products li.product:hover a.ajax_add_to_cart {
	box-shadow:
		0 18px 32px rgba(255, 75, 110, 0.3),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14);
	filter: saturate(1.04);
}

/* Grid fix */
.candy-shop.woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.candy-shop.woocommerce ul.products::before,
.candy-shop.woocommerce ul.products::after {
	display: none !important;
	content: none !important;
}

.candy-shop.woocommerce ul.products li.product {
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
	clear: none !important;
	height: auto !important;
	min-height: 0 !important;
	align-self: start !important;
}

/* Keep archive add-to-cart buttons visually stable after AJAX add */
.candy-shop.woocommerce ul.products li.product a.added_to_cart {
	display: none !important;
}

.candy-shop.woocommerce ul.products li.product .button.added,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.added,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.added {
	padding-right: 20px !important;
}

.candy-shop.woocommerce ul.products li.product .button.added::after,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.added::after,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.added::after {
	content: none !important;
	display: none !important;
}

/* Button micro-interaction states */
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-added-feedback,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-added-feedback,
.candy-shop.woocommerce ul.products li.product .button.is-added-feedback {
	background: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	box-shadow:
		0 12px 24px rgba(8, 160, 92, 0.24),
		0 4px 10px rgba(32, 191, 120, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		inset 0 -10px 18px rgba(7, 122, 71, 0.12) !important;
	transform: translateY(-2px);
}

.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-resetting,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-resetting,
.candy-shop.woocommerce ul.products li.product .button.is-resetting {
	transition:
		background 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease,
		color 220ms ease,
		border-color 220ms ease !important;
}

.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-added-feedback::before,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-added-feedback::before,
.candy-shop.woocommerce ul.products li.product .button.is-added-feedback::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.26) 0%,
			rgba(255, 255, 255, 0.1) 38%,
			rgba(255, 255, 255, 0) 100%
		);
	opacity: 1;
	pointer-events: none;
	z-index: 0;
}

.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-added-feedback::after,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-added-feedback::after,
.candy-shop.woocommerce ul.products li.product .button.is-added-feedback::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.22) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	animation: candyButtonSheenSweep 560ms ease;
	pointer-events: none;
	z-index: 0;
}

@keyframes candyButtonSheenSweep {
	0% {
		transform: skewX(-20deg) translateX(-180%);
	}
	100% {
		transform: skewX(-20deg) translateX(420%);
	}
}

/* Product badge system */
.candy-shop.woocommerce ul.products li.product .onsale {
	display: none !important;
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badges {
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	pointer-events: none;
	max-width: calc(100% - 28px);
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 6px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.2px;
	color: #ffffff;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
	white-space: nowrap;
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge.is-sale {
	background: linear-gradient(135deg, #ff4b6e, #ff6b8a);
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge.is-outofstock {
	background: linear-gradient(135deg, #767676, #9b9b9b);
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge.is-new {
	background: linear-gradient(135deg, #5b7cff, #7a95ff);
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge.is-popular {
	background: linear-gradient(135deg, #ff9f1a, #ffbd59);
	color: #ffffff;
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge.is-sugarfree {
	background: linear-gradient(135deg, #08a05c, #20bf78);
}

/* Filter toolbar UX */
.candy-shop .candy-shop-toolbar-wrap {
	margin: 0 0 22px;
}

.candy-shop .candy-shop-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	padding: 16px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.52) 0%,
			rgba(255, 248, 251, 0.34) 42%,
			rgba(248, 244, 251, 0.28) 100%
		);
	border: 1px solid rgba(255, 255, 255, 0.38);
	border-radius: 18px;
	box-shadow:
		0 12px 30px rgba(15, 23, 42, 0.06),
		0 4px 14px rgba(255, 75, 110, 0.05),
		inset 0 1px 0 rgba(255, 255, 255, 0.72),
		inset 0 -16px 24px rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(18px) saturate(1.25);
	-webkit-backdrop-filter: blur(18px) saturate(1.25);
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

.candy-shop .candy-shop-toolbar::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.34) 0%,
			rgba(255, 255, 255, 0.12) 34%,
			rgba(255, 255, 255, 0.03) 100%
		);
	pointer-events: none;
	z-index: 0;
}

.candy-shop .candy-shop-toolbar::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		radial-gradient(
			circle at top right,
			rgba(255, 107, 138, 0.12),
			rgba(255, 107, 138, 0) 42%
		),
		radial-gradient(
			circle at bottom left,
			rgba(255, 75, 110, 0.08),
			rgba(255, 75, 110, 0) 40%
		);
	pointer-events: none;
	z-index: 0;
}

.candy-shop .candy-shop-toolbar > * {
	position: relative;
	z-index: 1;
}

.candy-shop .candy-shop-toolbar__group {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.candy-shop .candy-shop-toolbar__group--price input,
.candy-shop .candy-shop-toolbar__group--sort select {
	height: 44px;
	border: 1px solid rgba(255, 255, 255, 0.42);
	border-radius: 14px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 255, 255, 0.62) 100%
		);
	padding: 0 14px;
	font-size: 14px;
	line-height: 1;
	color: #1f1f1f;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.72),
		0 4px 12px rgba(17, 24, 39, 0.04);
	outline: none;
	min-width: 120px;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition:
		border-color 0.22s ease,
		box-shadow 0.22s ease,
		background 0.22s ease,
		transform 0.22s ease;
}

.candy-shop .candy-shop-toolbar__group--price input:hover,
.candy-shop .candy-shop-toolbar__group--sort select:hover {
	border-color: rgba(255, 107, 138, 0.24);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.76),
		0 8px 18px rgba(255, 75, 110, 0.06);
}

.candy-shop .candy-shop-toolbar__group--price input:focus,
.candy-shop .candy-shop-toolbar__group--sort select:focus {
	border-color: rgba(255, 75, 110, 0.4);
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.86) 0%,
			rgba(255, 255, 255, 0.7) 100%
		);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 0 0 4px rgba(255, 75, 110, 0.08),
		0 10px 22px rgba(255, 75, 110, 0.08);
	transform: translateY(-1px);
}

.candy-shop .candy-shop-check {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 42px;
	padding: 0 14px;
	border: 1px solid rgba(255, 255, 255, 0.42);
	border-radius: 999px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.74) 0%,
			rgba(255, 255, 255, 0.58) 100%
		);
	cursor: pointer;
	font-size: 14px;
	font-weight: 600;
	color: #1f1f1f;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.74),
		0 4px 12px rgba(17, 24, 39, 0.04);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition:
		border-color 0.22s ease,
		box-shadow 0.22s ease,
		transform 0.22s ease,
		background 0.22s ease;
}

.candy-shop .candy-shop-check:hover {
	border-color: rgba(255, 75, 110, 0.24);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.76),
		0 10px 20px rgba(255, 75, 110, 0.08);
	transform: translateY(-1px);
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.8) 0%,
			rgba(255, 248, 251, 0.64) 100%
		);
}

.candy-shop .candy-shop-check input {
	margin: 0;
	accent-color: #ff4b6e;
}

.candy-shop .candy-shop-toolbar__group--actions {
	margin-left: auto;
}

.candy-shop .candy-shop-toolbar__submit,
.candy-shop .candy-shop-toolbar__clear {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 18px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	transition:
		transform 0.22s ease,
		box-shadow 0.22s ease,
		opacity 0.22s ease,
		border-color 0.22s ease,
		background 0.22s ease;
}

.candy-shop .candy-shop-toolbar__submit {
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%);
	color: #ffffff;
	box-shadow:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.24);
	cursor: pointer;
}

.candy-shop .candy-shop-toolbar__submit:hover {
	transform: translateY(-2px);
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26);
}

.candy-shop .candy-shop-toolbar__clear {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.72) 0%,
			rgba(255, 245, 247, 0.62) 100%
		);
	color: #d93c63;
	border: 1px solid rgba(255, 213, 222, 0.8);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.76),
		0 4px 12px rgba(255, 75, 110, 0.05);
}

.candy-shop .candy-shop-toolbar__clear:hover {
	transform: translateY(-1px);
	border-color: rgba(255, 107, 138, 0.34);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 10px 20px rgba(255, 75, 110, 0.08);
}

@media (max-width: 1024px) {
	.candy-shop.woocommerce ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.candy-shop.woocommerce ul.products li.product {
		padding: 16px !important;
		border-radius: 16px;
	}

	.candy-shop.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
	.candy-shop.woocommerce ul.products li.product > a.woocommerce-loop-product__link,
	.candy-shop.woocommerce ul.products li.product > a:first-of-type {
		min-height: 180px !important;
	}

	.candy-shop.woocommerce ul.products li.product img {
		max-height: 165px !important;
	}

	.candy-shop.woocommerce ul.products li.product h2,
	.candy-shop.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 15px !important;
	}

	.candy-shop.woocommerce ul.products li.product .price {
		font-size: 14px !important;
	}

	.candy-shop.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px !important;
	}

	.candy-shop.woocommerce ul.products li.product .candy-shop-badges {
		top: 12px;
		left: 12px;
		gap: 6px;
	}

	.candy-shop.woocommerce ul.products li.product .candy-shop-badge {
		min-height: 26px;
		padding: 5px 9px;
		font-size: 10px;
	}

	.candy-shop .candy-shop-toolbar {
		padding: 14px;
		gap: 12px;
		border-radius: 14px;
	}

	.candy-shop .candy-shop-toolbar__group,
	.candy-shop .candy-shop-toolbar__group--actions {
		width: 100%;
		margin-left: 0;
	}

	.candy-shop .candy-shop-toolbar__group--price input,
	.candy-shop .candy-shop-toolbar__group--sort select,
	.candy-shop .candy-shop-toolbar__submit,
	.candy-shop .candy-shop-toolbar__clear {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.candy-shop.woocommerce ul.products {
		grid-template-columns: 1fr;
	}
}

/* Softer effect on touch devices */
@media (hover: none) {
	.candy-shop.woocommerce ul.products li.product:hover {
		transform: none;
		box-shadow:
			0 18px 38px rgba(17, 24, 39, 0.07),
			0 6px 18px rgba(255, 75, 110, 0.05),
			0 1px 0 rgba(255, 255, 255, 0.72) inset,
			0 -18px 32px rgba(255, 255, 255, 0.16) inset;
	}

	.candy-shop.woocommerce ul.products li.product:hover::before {
		opacity: 0.72;
		filter: none;
	}

	.candy-shop.woocommerce ul.products li.product:hover::after {
		transform: none;
	}

	.candy-shop.woocommerce ul.products li.product:hover img {
		transform: none;
		filter: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.candy-shop.woocommerce ul.products li.product,
	.candy-shop.woocommerce ul.products li.product::before,
	.candy-shop.woocommerce ul.products li.product::after,
	.candy-shop.woocommerce ul.products li.product img,
	.candy-shop.woocommerce ul.products li.product .price,
	.candy-shop.woocommerce ul.products li.product h2,
	.candy-shop.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.candy-shop.woocommerce ul.products li.product .button,
	.candy-shop.woocommerce ul.products li.product a.add_to_cart_button,
	.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart,
	.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-added-feedback,
	.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-added-feedback,
	.candy-shop.woocommerce ul.products li.product .button.is-added-feedback,
	.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-resetting,
	.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-resetting,
	.candy-shop.woocommerce ul.products li.product .button.is-resetting {
		transition: none !important;
		transform: none !important;
		filter: none !important;
	}

	.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-added-feedback::before,
	.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-added-feedback::before,
	.candy-shop.woocommerce ul.products li.product .button.is-added-feedback::before {
		animation: none !important;
	}
}

body.candy-shop .woocommerce-result-count {
	margin: 0 !important;
	flex: 0 0 auto !important;
	white-space: nowrap !important;
}

body.candy-shop .candy-shop-toolbar-wrap {
	margin: 0 !important;
	flex: 1 1 auto !important;
	display: flex !important;
	justify-content: flex-end !important;
}

body.candy-shop .candy-shop-toolbar {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
}

body.candy-shop .candy-shop-toolbar input,
body.candy-shop .candy-shop-toolbar select,
body.candy-shop .candy-shop-toolbar button {
	height: 40px;
}

/* Keep sticky/filter shell from clipping */
/*
body.candy-shop .site,
body.candy-shop .site-main,
body.candy-shop .content-area,
body.candy-shop .woocommerce,
body.candy-shop .elementor,
body.candy-shop .elementor-section,
body.candy-shop .elementor-container,
body.candy-shop .elementor-column,
body.candy-shop .elementor-widget-wrap,
body.candy-shop .elementor-widget-container {
	overflow: visible !important;
}*/

/* Allow overflow only where needed */
body.candy-shop .elementor-section {
	overflow: visible;
}

/* Action row polish */
body.candy-shop ul.products li.product a.button,
body.candy-shop ul.products li.product button.button {
	display: inline-flex !important;
	width: auto !important;
	float: none !important;
}

body.candy-shop .candy-shop-actions {
	display: flex !important;
	align-items: stretch !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	order: 4 !important;
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.candy-shop .candy-shop-actions > a.add_to_cart_button,
body.candy-shop .candy-shop-actions > a.ajax_add_to_cart,
body.candy-shop .candy-shop-actions > .button:not(.candy-quick-view__trigger) {
	flex: 1 1 0 !important;
}

body.candy-shop .candy-shop-actions .added_to_cart {
	display: none !important;
}

body.candy-shop .candy-shop-actions .candy-quick-view__trigger {
	margin-right: 0 !important;
}

body.candy-shop ul.products li.product > .candy-shop-actions {
	width: 100% !important;
	clear: none !important;
}

body.candy-shop ul.products li.product a.added_to_cart {
	display: none !important;
}

.candy-shop.woocommerce ul.products li.product .price {
	margin-bottom: 18px !important;
}

body.candy-shop ul.products li.product {
	border-color: rgba(231, 220, 236, 0.92) !important;
}

body.candy-shop ul.products li.product:hover {
	border-color: rgba(255, 107, 138, 0.18) !important;
}

/* Quick View modal */
body.candy-shop.candy-quick-view-open {
	overflow: hidden;
}

body.candy-shop .candy-quick-view-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: grid;
	place-items: center;
	padding: 24px 16px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition:
		opacity 320ms ease,
		visibility 0s linear 520ms;
}

body.candy-shop .candy-quick-view-modal.is-open,
body.candy-shop .candy-quick-view-modal.is-closing {
	visibility: visible;
}

body.candy-shop .candy-quick-view-modal.is-open {
	opacity: 1;
	pointer-events: auto;
	transition:
		opacity 320ms ease,
		visibility 0s linear 0s;
}

body.candy-shop .candy-quick-view-modal.is-closing {
	opacity: 0;
	pointer-events: none;
	transition:
		opacity 360ms ease,
		visibility 0s linear 360ms;
}

body.candy-shop .candy-quick-view-modal__backdrop {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(
			circle at top,
			rgba(255, 255, 255, 0.12),
			rgba(255, 255, 255, 0) 42%
		),
		rgba(17, 24, 39, 0.36);
	backdrop-filter: blur(0px) saturate(1);
	-webkit-backdrop-filter: blur(0px) saturate(1);
	opacity: 0;
	transition:
		opacity 360ms ease,
		backdrop-filter 440ms ease,
		-webkit-backdrop-filter 440ms ease;
}

body.candy-shop .candy-quick-view-modal.is-open .candy-quick-view-modal__backdrop {
	opacity: 1;
	backdrop-filter: blur(9px) saturate(1.05);
	-webkit-backdrop-filter: blur(9px) saturate(1.05);
}

body.candy-shop .candy-quick-view-modal.is-closing .candy-quick-view-modal__backdrop {
	opacity: 0;
	backdrop-filter: blur(0px) saturate(1);
	-webkit-backdrop-filter: blur(0px) saturate(1);
}

body.candy-shop .candy-quick-view-modal__dialog {
	position: relative;
	width: min(980px, calc(100vw - 32px));
	max-height: min(calc(100vh - 48px), 900px);
	margin: 0 auto;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.96) 0%,
			rgba(255, 250, 252, 0.95) 42%,
			rgba(248, 244, 251, 0.96) 100%
		);
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 24px;
	box-shadow:
		0 28px 70px rgba(0, 0, 0, 0.18),
		0 10px 28px rgba(255, 75, 110, 0.08),
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -22px 34px rgba(255, 255, 255, 0.12);
	overflow: auto;
	opacity: 0;
	transform: translate3d(0, 36px, 0) scale(0.962);
	transform-origin: center center;
	transition:
		transform 680ms cubic-bezier(0.16, 1, 0.3, 1),
		opacity 360ms ease,
		min-height 360ms cubic-bezier(0.16, 1, 0.3, 1),
		box-shadow 320ms ease;
	will-change: transform, opacity;
	isolation: isolate;
}

body.candy-shop .candy-quick-view-modal__dialog::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.36) 0%,
			rgba(255, 255, 255, 0.12) 34%,
			rgba(255, 255, 255, 0.04) 100%
		);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view-modal__dialog::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		radial-gradient(
			circle at top right,
			rgba(255, 107, 138, 0.12),
			rgba(255, 107, 138, 0) 42%
		),
		radial-gradient(
			circle at bottom left,
			rgba(255, 75, 110, 0.07),
			rgba(255, 75, 110, 0) 40%
		);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view-modal.is-open .candy-quick-view-modal__dialog {
	transform: translate3d(0, 0, 0) scale(1);
	opacity: 1;
}

body.candy-shop .candy-quick-view-modal.is-closing .candy-quick-view-modal__dialog {
	transform: translate3d(0, 18px, 0) scale(0.985);
	opacity: 0;
}

body.candy-shop .candy-quick-view-modal__dialog.is-settling {
	overflow: hidden;
}

body.candy-shop .candy-quick-view-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 3;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 1px solid rgba(255, 255, 255, 0.52);
	border-radius: 999px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.8) 0%,
			rgba(255, 245, 247, 0.7) 100%
		);
	color: #d93c63;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 10px 20px rgba(17, 24, 39, 0.08);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition:
		transform 0.22s ease,
		box-shadow 0.22s ease,
		border-color 0.22s ease,
		background 0.22s ease;
}

body.candy-shop .candy-quick-view-modal__close:hover {
	transform: translateY(-1px) scale(1.02);
	border-color: rgba(255, 107, 138, 0.34);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.86),
		0 14px 24px rgba(255, 75, 110, 0.12);
}

body.candy-shop .candy-quick-view-modal__content {
	padding: 32px;
	position: relative;
	min-height: 320px;
	z-index: 1;
}

body.candy-shop .candy-quick-view-modal__content.is-loading {
	display: flex;
	align-items: center;
	justify-content: center;
}

body.candy-shop .candy-quick-view-modal__stage {
	opacity: 0;
	transform: translateY(22px) scale(0.992);
	transform-origin: center top;
	transition:
		opacity 480ms ease,
		transform 680ms cubic-bezier(0.16, 1, 0.3, 1);
	will-change: opacity, transform;
}

body.candy-shop .candy-quick-view-modal__content.is-ready .candy-quick-view-modal__stage {
	opacity: 1;
	transform: translateY(0) scale(1);
}

body.candy-shop .candy-quick-view-modal__content.is-swapping .candy-quick-view-modal__stage {
	opacity: 0;
	transform: translateY(14px) scale(0.995);
}

body.candy-shop .candy-quick-view {
	display: grid;
	grid-template-columns: minmax(280px, 430px) minmax(320px, 1fr);
	gap: 32px;
	align-items: start;
}

body.candy-shop .candy-quick-view__media {
	position: relative;
	overflow: hidden;
	border-radius: 20px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.74) 0%,
			rgba(255, 247, 250, 0.68) 48%,
			rgba(246, 241, 249, 0.74) 100%
		);
	border: 1px solid rgba(255, 255, 255, 0.56);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -12px 22px rgba(255, 255, 255, 0.12),
		0 10px 28px rgba(17, 24, 39, 0.05);
}

body.candy-shop .candy-quick-view__media::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		radial-gradient(
			circle at top,
			rgba(255, 255, 255, 0.52),
			rgba(255, 255, 255, 0) 56%
		);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view__media img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 20px;
	transform: scale(1.05) translateY(10px);
	transform-origin: center center;
	opacity: 0.96;
	transition:
		transform 920ms cubic-bezier(0.16, 1, 0.3, 1),
		opacity 320ms ease,
		filter 360ms ease;
	will-change: transform, opacity;
	position: relative;
	z-index: 1;
}

body.candy-shop .candy-quick-view-modal__content.is-ready .candy-quick-view__media img {
	transform: scale(1.1) translateY(0);
	opacity: 1;
	filter: saturate(1.04) contrast(1.01);
}

body.candy-shop .candy-quick-view__summary {
	transform: translateY(12px);
	opacity: 0.96;
	transition:
		transform 660ms cubic-bezier(0.16, 1, 0.3, 1),
		opacity 320ms ease;
}

body.candy-shop .candy-quick-view-modal__content.is-ready .candy-quick-view__summary {
	transform: translateY(0);
	opacity: 1;
}

body.candy-shop .candy-quick-view__title {
	margin: 0 0 10px;
	font-size: 30px;
	line-height: 1.18;
	letter-spacing: -0.02em;
	color: #15151a;
}

body.candy-shop .candy-quick-view__price {
	margin-bottom: 14px;
	font-size: 21px;
	font-weight: 800;
	line-height: 1.3;
}

body.candy-shop .candy-quick-view__excerpt {
	margin-bottom: 20px;
	color: #4b5563;
	line-height: 1.65;
}

body.candy-shop .candy-quick-view__cart form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
}

body.candy-shop .candy-quick-view__cart .quantity {
	display: inline-flex;
	align-items: stretch;
	border: 1px solid rgba(255, 255, 255, 0.56);
	border-radius: 14px;
	overflow: hidden;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.86) 0%,
			rgba(255, 255, 255, 0.72) 100%
		);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 6px 16px rgba(17, 24, 39, 0.04);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

body.candy-shop .candy-quick-view__cart .quantity input.qty {
	width: 56px;
	height: 46px;
	border: 0 !important;
	box-shadow: none !important;
	text-align: center;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent;
	-moz-appearance: textfield;
	appearance: textfield;
}

body.candy-shop .candy-quick-view__cart .quantity input.qty::-webkit-outer-spin-button,
body.candy-shop .candy-quick-view__cart .quantity input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

body.candy-shop .candy-quick-view__qty-btn {
	width: 42px;
	height: 46px;
	border: 0;
	background:
		linear-gradient(
			180deg,
			rgba(255, 245, 247, 0.96) 0%,
			rgba(255, 236, 241, 0.9) 100%
		);
	color: #d93c63;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background 0.22s ease, color 0.22s ease, transform 0.22s ease;
}

body.candy-shop .candy-quick-view__qty-btn:hover {
	background:
		linear-gradient(
			180deg,
			rgba(255, 236, 241, 1) 0%,
			rgba(255, 226, 233, 0.96) 100%
		);
	color: #c52f56;
}

body.candy-shop .candy-quick-view__qty-btn:active {
	transform: scale(0.96);
}

body.candy-shop .candy-quick-view__submit,
body.candy-shop .candy-quick-view__view-product,
body.candy-shop .candy-quick-view__cart .single_add_to_cart_button {
	min-height: 46px;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button,
body.candy-shop .candy-quick-view__cart .button.alt,
body.candy-shop .candy-quick-view__submit {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	align-self: flex-start !important;
	width: auto !important;
	min-width: 0 !important;
	padding: 13px 22px !important;
	min-height: 46px !important;
	margin-top: 0 !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: 999px !important;
	background:
		linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	color: #ffffff !important;
	font-size: 14.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
	text-align: center !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
	box-shadow:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		inset 0 -10px 18px rgba(191, 34, 77, 0.12) !important;
	transition:
		transform 0.22s ease,
		box-shadow 0.22s ease,
		filter 0.22s ease,
		background 0.22s ease,
		border-color 0.22s ease !important;
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button::before,
body.candy-shop .candy-quick-view__cart .button.alt::before,
body.candy-shop .candy-quick-view__submit::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.24) 0%,
			rgba(255, 255, 255, 0.1) 38%,
			rgba(255, 255, 255, 0) 100%
		);
	opacity: 0.95;
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button::after,
body.candy-shop .candy-quick-view__cart .button.alt::after,
body.candy-shop .candy-quick-view__submit::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.18) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button:hover,
body.candy-shop .candy-quick-view__cart .button.alt:hover,
body.candy-shop .candy-quick-view__submit:hover {
	transform: translateY(-2px);
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14) !important;
	filter: saturate(1.04) brightness(1.02);
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button:hover::after,
body.candy-shop .candy-quick-view__cart .button.alt:hover::after,
body.candy-shop .candy-quick-view__submit:hover::after {
	transform: skewX(-20deg) translateX(420%);
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button.is-added-feedback,
body.candy-shop .candy-quick-view__cart .button.alt.is-added-feedback,
body.candy-shop .candy-quick-view__submit.is-added-feedback {
	background: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	box-shadow:
		0 12px 24px rgba(8, 160, 92, 0.24),
		0 4px 10px rgba(32, 191, 120, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		inset 0 -10px 18px rgba(7, 122, 71, 0.12) !important;
	transform: translateY(-2px);
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button.is-resetting,
body.candy-shop .candy-quick-view__cart .button.alt.is-resetting,
body.candy-shop .candy-quick-view__submit.is-resetting {
	transition:
		background 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease,
		color 220ms ease,
		border-color 220ms ease !important;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button.is-added-feedback::before,
body.candy-shop .candy-quick-view__cart .button.alt.is-added-feedback::before,
body.candy-shop .candy-quick-view__submit.is-added-feedback::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.26) 0%,
			rgba(255, 255, 255, 0.1) 38%,
			rgba(255, 255, 255, 0) 100%
		);
	opacity: 1;
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button.is-added-feedback::after,
body.candy-shop .candy-quick-view__cart .button.alt.is-added-feedback::after,
body.candy-shop .candy-quick-view__submit.is-added-feedback::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255,255,255,0) 0%,
		rgba(255,255,255,0.22) 50%,
		rgba(255,255,255,0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	animation: candyButtonSheenSweep 560ms ease;
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view-modal__loading,
body.candy-shop .candy-quick-view-modal__error {
	width: 100%;
	padding: 40px 12px;
	text-align: center;
}

body.candy-shop .candy-quick-view-modal__loading {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 240px;
	color: #4b5563;
	font-weight: 600;
}

body.candy-shop .candy-quick-view-modal__loading::before {
	content: "";
	width: 20px;
	height: 20px;
	margin-right: 10px;
	border-radius: 999px;
	border: 2px solid rgba(255, 75, 110, 0.18);
	border-top-color: rgba(255, 75, 110, 0.9);
	animation: candyQuickViewSpin 0.8s linear infinite;
}

@keyframes candyQuickViewSpin {
	to {
		transform: rotate(360deg);
	}
}

/* Side cart cleanup */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__main,
body.candy-shop .elementor-menu-cart__container .widget_shopping_cart_content,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__container-inner {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	min-height: 0 !important;
}

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products::-webkit-scrollbar,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart::-webkit-scrollbar,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart::-webkit-scrollbar,
body.candy-shop .elementor-menu-cart__container ul.cart_list::-webkit-scrollbar,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget::-webkit-scrollbar {
	width: 8px;
}

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products::-webkit-scrollbar-thumb,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart::-webkit-scrollbar-thumb,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart::-webkit-scrollbar-thumb,
body.candy-shop .elementor-menu-cart__container ul.cart_list::-webkit-scrollbar-thumb,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget::-webkit-scrollbar-thumb {
	background: rgba(255, 75, 110, 0.24);
	border-radius: 999px;
}

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products::-webkit-scrollbar-track,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart::-webkit-scrollbar-track,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart::-webkit-scrollbar-track,
body.candy-shop .elementor-menu-cart__container ul.cart_list::-webkit-scrollbar-track,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget::-webkit-scrollbar-track {
	background: rgba(17, 24, 39, 0.05);
	border-radius: 999px;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.candy-shop .elementor-menu-cart__container .mini_cart_item {
	display: grid !important;
	grid-template-columns: 64px minmax(0, 1fr) 28px !important;
	column-gap: 14px !important;
	row-gap: 6px !important;
	align-items: start !important;
	margin: 0 !important;
	border-bottom: 1px solid rgba(17, 24, 39, 0.08) !important;
	position: relative !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item:first-child,
body.candy-shop .elementor-menu-cart__container .mini_cart_item:first-child {
	padding-top: 8px !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item:last-child,
body.candy-shop .elementor-menu-cart__container .mini_cart_item:last-child {
	border-bottom: 0 !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item img,
body.candy-shop .elementor-menu-cart__container .mini_cart_item img,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product-image img {
	grid-column: 1 !important;
	grid-row: 1 / span 2 !important;
	float: none !important;
	width: 72px !important;
	height: 72px !important;
	max-width: 72px !important;
	min-width: 72px !important;
	margin: 0 !important;
	padding: 6px !important;
	object-fit: contain !important;
	border-radius: 14px !important;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.88) 0%,
		rgba(248, 244, 251, 0.82) 100%
	) !important;
	border: 1px solid rgba(255, 255, 255, 0.62) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05) !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item > a:not(.remove),
body.candy-shop .elementor-menu-cart__container .mini_cart_item > a:not(.remove),
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product-name {
	grid-column: 2 !important;
	grid-row: 1 !important;
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #d93c63 !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
	text-decoration: none !important;
}

body.candy-shop .elementor-menu-cart__container .quantity,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product-price,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item .quantity,
body.candy-shop .elementor-menu-cart__container .mini_cart_item .quantity {
	grid-column: 2 !important;
	grid-row: 2 !important;
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #b8bcc3 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item > a.remove,
body.candy-shop .elementor-menu-cart__container .mini_cart_item > a.remove {
	grid-column: 3 !important;
	grid-row: 1 / span 2 !important;
	align-self: center !important;
	justify-self: end !important;
	position: static !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 28px !important;
	height: 28px !important;
	min-width: 28px !important;
	padding: 0 !important;
	border-radius: 999px !important;
	background: rgba(255, 245, 247, 0.92) !important;
	border: 1px solid rgba(255, 213, 222, 0.8) !important;
	color: #d93c63 !important;
	font-size: 16px !important;
	line-height: 1 !important;
	text-decoration: none !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	flex: 0 0 auto !important;
	position: relative !important;
	display: block !important;
	clear: both !important;
	z-index: 2 !important;
	margin-top: 0 !important;
	margin-bottom: 16px !important;
	padding-top: 18px !important;
	border-top: 1px solid rgba(17, 24, 39, 0.08) !important;
	background: transparent !important;
}

body.candy-shop .elementor-menu-cart__container .cross-sells,
body.candy-shop .elementor-menu-cart__container .upsell,
body.candy-shop .elementor-menu-cart__container .elementor-widget-woocommerce-menu-cart__main {
	flex: 0 0 auto !important;
	margin-bottom: 12px !important;
}

/*

body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress-wrap + *,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body.candy-shop .elementor-menu-cart__container .wcf-free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-shipping-progress,
body.candy-shop .elementor-menu-cart__container [class*="free-shipping"],
body.candy-shop .elementor-menu-cart__container [class*="shipping-progress"],
body.candy-shop .elementor-menu-cart__container [class*="bundle"],
body.candy-shop .elementor-menu-cart__container [class*="addon-offer"] {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
}

*/

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons {
	display: flex !important;
	flex: 0 0 auto !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: sticky !important;
	bottom: 0 !important;
	z-index: 8 !important;
	margin-top: auto !important;
	margin-bottom: 10px !important;
	padding-top: 14px !important;
	padding-right: 8px !important;
	padding-bottom: 14px !important;
	padding-left: 8px !important;
	background: rgba(255, 255, 255, 0.86) !important;
	backdrop-filter: blur(14px) saturate(1.12) !important;
	-webkit-backdrop-filter: blur(14px) saturate(1.12) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.7) !important;
	border-radius: 18px 18px 0 0 !important;
	box-shadow:
		0 -10px 24px rgba(17, 24, 39, 0.06),
		inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.34) 0%,
		rgba(255, 255, 255, 0.12) 36%,
		rgba(255, 255, 255, 0) 100%
	);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > *,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > *,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer > * {
	position: relative;
	z-index: 1;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.button,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .checkout,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.checkout,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .wc-forward,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.wc-forward,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .button,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a.button,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .checkout,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a.checkout,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .wc-forward,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a.wc-forward,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .button,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a.button,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .checkout,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a.checkout,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .wc-forward,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a.wc-forward {
	flex: 1 1 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 0 !important;
	min-height: 46px !important;
	padding: 13px 22px !important;
	margin: 0 !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	background-color: #ff5f7f !important;
	color: #ffffff !important;
	font-size: 14.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08) !important;
	box-shadow:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		inset 0 -10px 18px rgba(191, 34, 77, 0.12) !important;
	transition:
		transform 0.24s ease,
		box-shadow 0.24s ease,
		filter 0.24s ease,
		border-color 0.24s ease !important;
	position: relative !important;
	overflow: hidden !important;
	isolation: isolate !important;
	opacity: 1 !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a::before,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .button::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .button::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.24) 0%,
		rgba(255, 255, 255, 0.10) 38%,
		rgba(255, 255, 255, 0) 100%
	);
	opacity: 0.95;
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a::after,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .button::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .button::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.18) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:hover,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:hover,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a:hover,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .button:hover,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a:hover,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .button:hover {
	transform: translateY(-2px) !important;
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14) !important;
	filter: saturate(1.04) brightness(1.02) !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:hover::after,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:hover::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a:hover::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .button:hover::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a:hover::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .button:hover::after {
	transform: skewX(-20deg) translateX(420%) !important;
}

@media (max-width: 768px) {
	body.candy-shop .woocommerce-before-shop-loop {
		position: relative !important;
		top: auto !important;
		z-index: 20 !important;
		flex-direction: column !important;
		align-items: stretch !important;
		margin-bottom: 24px !important;
	}

	body.candy-shop .candy-shop-toolbar-wrap {
		justify-content: flex-start !important;
		width: 100% !important;
	}

	body.candy-shop .woocommerce ul.products,
	body.candy-shop .woocommerce-page ul.products {
		margin-top: 8px !important;
	}
}

@media (max-width: 767px) {
	body.candy-shop .woocommerce-before-shop-loop {
		padding: 10px !important;
		border-radius: 16px !important;
		margin-bottom: 18px !important;
	}

	body.candy-shop .candy-shop-toolbar {
		padding: 10px !important;
		gap: 8px !important;
	}

	body.candy-shop .candy-shop-toolbar__group {
		gap: 8px !important;
	}

	/* Put Min / Max side by side */
	body.candy-shop .candy-shop-toolbar__group--price {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 8px !important;
		width: 100% !important;
	}

	body.candy-shop .candy-shop-toolbar__group--price input {
		width: 100% !important;
		min-width: 0 !important;
		height: 42px !important;
		padding: 0 12px !important;
		font-size: 13.5px !important;
		border-radius: 13px !important;
	}

	body.candy-shop .candy-shop-toolbar__group--sort,
	body.candy-shop .candy-shop-toolbar__group--toggles,
	body.candy-shop .candy-shop-toolbar__group--actions {
		width: 100% !important;
		margin-left: 0 !important;
	}

	body.candy-shop .candy-shop-toolbar__group--sort select {
		width: 100% !important;
		height: 42px !important;
		padding: 0 12px !important;
		font-size: 13.5px !important;
		border-radius: 13px !important;
	}

	body.candy-shop .candy-shop-check {
		min-height: 40px !important;
		padding: 0 12px !important;
		font-size: 13.5px !important;
	}

	body.candy-shop .woocommerce ul.products {
		gap: 18px !important;
	}

	body.candy-shop .woocommerce ul.products li.product:first-child {
		margin-top: 4px !important;
	}

	/* Compact mobile product card layout */
	body.candy-shop .woocommerce ul.products li.product {
		padding: 14px !important;
	}

	body.candy-shop .woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
	body.candy-shop .woocommerce ul.products li.product > a.woocommerce-loop-product__link,
	body.candy-shop .woocommerce ul.products li.product > a:first-of-type {
		min-height: 150px !important;
		margin-bottom: 10px !important;
	}

	body.candy-shop .woocommerce ul.products li.product img {
		max-height: 138px !important;
	}

	body.candy-shop .woocommerce ul.products li.product h2,
	body.candy-shop .woocommerce ul.products li.product .woocommerce-loop-product__title {
		margin-bottom: 6px !important;
		font-size: 14px !important;
		line-height: 1.35 !important;
	}

	body.candy-shop .woocommerce ul.products li.product .price {
		margin-bottom: 12px !important;
		font-size: 13.5px !important;
	}

	/* Move action row upward a bit and reduce its height */
	body.candy-shop .candy-shop-actions {
		flex-wrap: nowrap !important;
		margin-top: 6px !important;
		padding-top: 0 !important;
		gap: 8px !important;
	}

	/* Keep Apply + Clear side by side on mobile */
	body.candy-shop .candy-shop-toolbar__group--actions {
		display: flex !important;
		width: 100% !important;
		gap: 8px !important;
		margin-left: 0 !important;
	}

	body.candy-shop .candy-shop-toolbar__submit,
	body.candy-shop .candy-shop-toolbar__clear {
		flex: 1 1 0 !important;
		width: calc(50% - 4px) !important;
		min-width: 0 !important;
		min-height: 42px !important;
		padding: 0 12px !important;
		font-size: 13.5px !important;
	}

	body.candy-shop .candy-quick-view-modal {
		padding: 8px;
	}

	body.candy-shop .candy-quick-view-modal__dialog {
		width: calc(100vw - 16px);
		max-height: calc(100vh - 16px);
		border-radius: 16px;
	}

	body.candy-shop .candy-quick-view-modal__content {
		padding: 20px;
		min-height: 260px;
	}

	body.candy-shop .candy-quick-view {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	body.candy-shop .candy-quick-view__cart form.cart {
		align-items: stretch;
	}

	body.candy-shop .candy-quick-view__cart .quantity {
		width: auto;
	}

	body.candy-shop .candy-quick-view__cart .single_add_to_cart_button {
		flex: 0 0 auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.candy-shop .candy-quick-view-modal,
	body.candy-shop .candy-quick-view-modal__backdrop,
	body.candy-shop .candy-quick-view-modal__dialog,
	body.candy-shop .candy-quick-view-modal__content,
	body.candy-shop .candy-quick-view-modal__close,
	body.candy-shop .candy-quick-view-modal__loading::before,
	body.candy-shop .candy-quick-view-modal__stage,
	body.candy-shop .candy-quick-view-modal__content.is-ready .candy-quick-view-modal__stage,
	body.candy-shop .candy-quick-view-modal__content.is-swapping .candy-quick-view-modal__stage,
	body.candy-shop .candy-quick-view-modal__dialog.is-settling,
	body.candy-shop .candy-quick-view__qty-btn,
	body.candy-shop .candy-quick-view__media img,
	body.candy-shop .candy-quick-view__summary,
	body.candy-shop .woocommerce-notices-wrapper .woocommerce-message,
	body.candy-shop .woocommerce-notices-wrapper .woocommerce-error,
	body.candy-shop .woocommerce-notices-wrapper .woocommerce-info {
		transition: none !important;
		transform: none !important;
		animation: none !important;
	}
}

@media (max-width: 767px) {
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .button,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > a.button,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > button.button,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > a.add_to_cart_button,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > a.ajax_add_to_cart,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
		font-size: 16px !important;
		line-height: 1.1 !important;
		font-weight: 800 !important;
	}
}

/* =========================================
   FOUNDATION REFACTOR TOKENS + SEARCH + BUTTON SYSTEM
========================================= */

:root {
	--candy-bg: #f8f6fb;
	--candy-surface: rgba(255, 255, 255, 0.82);
	--candy-surface-soft: rgba(255, 245, 247, 0.62);
	--candy-text: #1b1b1f;
	--candy-text-muted: #4b5563;
	--candy-primary: #ff4b6e;
	--candy-primary-2: #ff7894;
	--candy-success: #08a05c;
	--candy-border: rgba(231, 220, 236, 0.92);
	--candy-radius-pill: 999px;
	--candy-shadow-primary:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		inset 0 -10px 18px rgba(191, 34, 77, 0.12);
	--candy-shadow-secondary:
		inset 0 1px 0 rgba(255, 255, 255, 0.76),
		0 4px 12px rgba(255, 75, 110, 0.05);
}

.candy-shop .candy-shop-toolbar__group--search input {
	height: 44px;
	min-width: 260px;
	border: 1px solid rgba(255, 255, 255, 0.42);
	border-radius: 14px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 255, 255, 0.62) 100%
		);
	padding: 0 14px;
	font-size: 14px;
	line-height: 1;
	color: var(--candy-text);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.72),
		0 4px 12px rgba(17, 24, 39, 0.04);
	outline: none;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition:
		border-color 0.22s ease,
		box-shadow 0.22s ease,
		background 0.22s ease,
		transform 0.22s ease;
}

.candy-shop .candy-shop-toolbar__group--search input:hover {
	border-color: rgba(255, 107, 138, 0.24);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.76),
		0 8px 18px rgba(255, 75, 110, 0.06);
}

.candy-shop .candy-shop-toolbar__group--search input:focus {
	border-color: rgba(255, 75, 110, 0.4);
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.86) 0%,
			rgba(255, 255, 255, 0.7) 100%
		);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 0 0 4px rgba(255, 75, 110, 0.08),
		0 10px 22px rgba(255, 75, 110, 0.08);
	transform: translateY(-1px);
}

body.candy-shop .candy-shop-actions {
	display: flex !important;
	align-items: stretch !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	order: 4 !important;
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.candy-shop .candy-shop-actions__cart {
	flex: 1 1 0 !important;
	display: flex !important;
}

body.candy-shop .candy-shop-actions__cart > * {
	flex: 1 1 0 !important;
	width: 100% !important;
}

body.candy-shop .candy-shop-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 13px 18px !important;
	min-height: 46px !important;
	border-radius: var(--candy-radius-pill) !important;
	font-size: 14.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	position: relative !important;
	overflow: hidden !important;
	isolation: isolate !important;
	transition:
		transform 0.24s ease,
		box-shadow 0.24s ease,
		filter 0.24s ease,
		border-color 0.24s ease,
		background 0.24s ease,
		color 0.24s ease !important;
}

body.candy-shop .candy-shop-btn::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.24) 0%,
			rgba(255, 255, 255, 0.1) 38%,
			rgba(255, 255, 255, 0) 100%
		);
	opacity: 0.95;
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-shop-btn::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.18) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-shop-btn > * {
	position: relative;
	z-index: 1;
}

body.candy-shop .candy-shop-btn:hover {
	transform: translateY(-2px);
}

body.candy-shop .candy-shop-btn:hover::after {
	transform: skewX(-20deg) translateX(420%);
}

body.candy-shop .candy-shop-btn--primary {
	background: linear-gradient(135deg, var(--candy-primary) 0%, #ff5f7f 48%, var(--candy-primary-2) 100%) !important;
	color: #ffffff !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
	box-shadow: var(--candy-shadow-primary) !important;
}

body.candy-shop .candy-shop-btn--primary:hover {
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14) !important;
	filter: saturate(1.04) brightness(1.02);
}

body.candy-shop .candy-shop-btn--secondary {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.72) 0%,
			rgba(255, 245, 247, 0.62) 100%
		) !important;
	background-color: #fff7f9 !important;
	color: #d93c63 !important;
	border: 1px solid rgba(255, 213, 222, 0.8) !important;
	text-shadow: none !important;
	box-shadow: var(--candy-shadow-secondary) !important;
	filter: none !important;
}

body.candy-shop .candy-shop-btn--secondary::before {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.38) 0%,
			rgba(255, 255, 255, 0.14) 38%,
			rgba(255, 255, 255, 0) 100%
		) !important;
}

body.candy-shop .candy-shop-btn--secondary::after {
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.32) 50%,
		rgba(255, 255, 255, 0) 100%
	) !important;
}

body.candy-shop .candy-shop-btn--secondary:hover {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.82) 0%,
			rgba(255, 245, 247, 0.72) 100%
		) !important;
	color: #d93c63 !important;
	border-color: rgba(255, 107, 138, 0.34) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 10px 20px rgba(255, 75, 110, 0.08) !important;
	filter: none !important;
}

body.candy-shop .candy-shop-actions__cart .candy-shop-btn--primary.added,
body.candy-shop .candy-shop-actions__cart .candy-shop-btn--primary.is-added-feedback,
body.candy-shop .candy-shop-actions__cart .candy-shop-btn--secondary.added,
body.candy-shop .candy-shop-actions__cart .candy-shop-btn--secondary.is-added-feedback {
	background: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	background-image: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	background-color: #1bb56f !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08) !important;
	box-shadow:
		0 12px 24px rgba(8, 160, 92, 0.24),
		0 4px 10px rgba(32, 191, 120, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		inset 0 -10px 18px rgba(7, 122, 71, 0.12) !important;
}

body.candy-shop .candy-shop-btn:focus-visible,
body.candy-shop .candy-shop-toolbar input:focus-visible,
body.candy-shop .candy-shop-toolbar select:focus-visible,
body.candy-shop .candy-shop-toolbar button:focus-visible,
body.candy-shop .candy-shop-toolbar a:focus-visible,
body.candy-shop .candy-quick-view-modal__close:focus-visible {
	outline: 0 !important;
	box-shadow:
		0 0 0 4px rgba(255, 75, 110, 0.14),
		0 10px 22px rgba(255, 75, 110, 0.08) !important;
}

@media (max-width: 767px) {
	.candy-shop .candy-shop-toolbar__group--search,
	.candy-shop .candy-shop-toolbar__group--search input {
		width: 100%;
		min-width: 0;
	}

	body.candy-shop .candy-shop-actions {
		gap: 8px !important;
		padding-top: 0 !important;
	}
}

/* Search field on its own row under the filters */
.candy-shop .candy-shop-toolbar__group--search {
	flex: 0 0 100%;
	width: 100%;
}

.candy-shop .candy-shop-toolbar__group--search input {
	width: 100%;
	min-width: 0 !important;
}


/* Inline empty search state */
body.candy-shop .candy-shop-empty-search {
	margin: 24px 0 8px;
	padding: 28px 24px;
	border-radius: 22px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.88) 0%,
			rgba(255, 248, 251, 0.84) 100%
		);
	border: 1px solid rgba(231, 220, 236, 0.92);
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05);
	text-align: center;
	outline: none;
}

body.candy-shop .candy-shop-empty-search__title {
	margin: 0 0 10px;
	font-size: 28px;
	line-height: 1.2;
	color: #1b1b1f;
}

body.candy-shop .candy-shop-empty-search__text {
	margin: 0 0 18px;
	font-size: 15px;
	line-height: 1.6;
	color: #4b5563;
}

body.candy-shop .candy-shop-empty-search__actions {
	display: flex;
	justify-content: center;
	margin-bottom: 10px;
}

body.candy-shop .candy-shop-empty-search__back {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 20px;
	border-radius: 999px;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%);
	color: #fff !important;
	text-decoration: none;
	font-weight: 800;
	box-shadow:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12);
}

body.candy-shop .candy-shop-empty-search__hint {
	margin: 0;
	font-size: 13px;
	color: #6b7280;
}

@media (max-width: 767px) {
	body.candy-shop .candy-shop-empty-search {
		padding: 22px 16px;
		border-radius: 16px;
	}

	body.candy-shop .candy-shop-empty-search__title {
		font-size: 22px;
	}
}

body.candy-shop .candy-shop-empty-search:focus {
	outline: none;
	box-shadow:
		0 0 0 4px rgba(255, 75, 110, 0.10),
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05);
}

/* ===== Homepage product section should inherit shop card look ===== */
body.home .candy-home-products ul.products,
body.home .candy-home-products .products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.home .candy-home-products ul.products::before,
body.home .candy-home-products ul.products::after,
body.home .candy-home-products .products::before,
body.home .candy-home-products .products::after {
	display: none !important;
	content: none !important;
}

body.home .candy-home-products ul.products li.product,
body.home .candy-home-products .products li.product {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.82) 0%,
			rgba(255, 248, 251, 0.78) 46%,
			rgba(247, 243, 250, 0.84) 100%
		) !important;
	border: 1px solid rgba(231, 220, 236, 0.92) !important;
	border-radius: 22px !important;
	padding: 18px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05),
		0 1px 0 rgba(255, 255, 255, 0.72) inset,
		0 -18px 32px rgba(255, 255, 255, 0.16) inset !important;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
	overflow: hidden !important;
	position: relative !important;
	margin: 0 !important;
	width: 100% !important;
	float: none !important;
	clear: none !important;
}

body.home .candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link,
body.home .candy-home-products ul.products li.product > a.woocommerce-loop-product__link,
body.home .candy-home-products .products li.product > a.woocommerce-LoopProduct-link,
body.home .candy-home-products .products li.product > a.woocommerce-loop-product__link {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 198px !important;
	margin: 0 0 12px !important;
	border-radius: 18px !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 247, 250, 0.7) 48%,
			rgba(246, 241, 249, 0.76) 100%
		) !important;
	border: 1px solid rgba(255, 255, 255, 0.58) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -10px 20px rgba(255, 255, 255, 0.16),
		0 8px 22px rgba(17, 24, 39, 0.04) !important;
	overflow: hidden !important;
}

body.home .candy-home-products ul.products li.product img,
body.home .candy-home-products .products li.product img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 205px !important;
	margin: 0 auto !important;
}

body.home .candy-home-products ul.products li.product h2,
body.home .candy-home-products ul.products li.product .woocommerce-loop-product__title,
body.home .candy-home-products .products li.product h2,
body.home .candy-home-products .products li.product .woocommerce-loop-product__title {
	margin: 0 0 7px !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	color: #1b1b1f !important;
	text-align: left !important;
}

body.home .candy-home-products ul.products li.product .price,
body.home .candy-home-products .products li.product .price {
	margin: 0 0 12px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	color: #08985a !important;
	text-align: left !important;
}

@media (max-width: 1024px) {
	body.home .candy-home-products ul.products,
	body.home .candy-home-products .products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	body.home .candy-home-products ul.products,
	body.home .candy-home-products .products {
		grid-template-columns: 1fr !important;
	}
}

/* ===== HOMEPAGE: HIDE DEFAULT LOOP ADD TO CART, KEEP CUSTOM ACTION ROW ===== */

body.home .candy-home-products ul.products li.product > a.add_to_cart_button,
body.home .candy-home-products ul.products li.product > a.ajax_add_to_cart,
body.home .candy-home-products ul.products li.product > .button:not(.candy-quick-view__trigger),
body.home .candy-home-products ul.products li.product > a.button:not(.candy-quick-view__trigger) {
	display: none !important;
}

/* ===== HOME + SHOP: CONSISTENT ACTION ROW ===== */

body.home .candy-home-products .candy-shop-actions,
body.candy-shop ul.products li.product .candy-shop-actions {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 12px !important;
	align-items: stretch !important;
	width: 100% !important;
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-quick-view__trigger,
body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	display: block !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	display: block !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > a,
body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > .button,
body.home .candy-home-products .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	height: 46px !important;
	min-height: 46px !important;
	padding: 0 16px !important;
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	line-height: 1 !important;
	align-self: stretch !important;
	white-space: nowrap !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
	order: 1 !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	order: 2 !important;
}

@media (max-width: 767px) {
	body.home .candy-home-products .candy-shop-actions,
	body.candy-shop ul.products li.product .candy-shop-actions {
		gap: 8px !important;
		padding-top: 0 !important;
	}

	body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > a,
	body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > .button,
	body.home .candy-home-products .candy-shop-actions > .candy-quick-view__trigger,
	body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
	body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
	body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
		height: 40px !important;
		min-height: 40px !important;
		padding: 0 12px !important;
		font-size: 15px !important;
	}
}



/* =========================================================
   GLOBAL QUICK VIEW BUTTON OVERRIDE
   Works on homepage + shop cards
   ========================================================= */

body .candy-shop-actions > .candy-quick-view__trigger,
body .candy-shop-actions > button.candy-shop-btn--secondary,
body .candy-shop-actions > .button.candy-shop-btn--secondary,
body .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body .woocommerce-page ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.94) 0%,
			rgba(255, 245, 247, 0.90) 100%
		) !important;
	color: #d93c63 !important;
	border: 1px solid rgba(255, 213, 222, 0.82) !important;
	text-shadow: none !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05),
		0 4px 10px rgba(255, 75, 110, 0.05) !important;
	filter: none !important;
}

body .candy-shop-actions > .candy-quick-view__trigger::before,
body .candy-shop-actions > button.candy-shop-btn--secondary::before,
body .candy-shop-actions > .button.candy-shop-btn--secondary::before,
body .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger::before,
body .woocommerce-page ul.products li.product .candy-shop-actions > .candy-quick-view__trigger::before {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.42) 0%,
			rgba(255, 255, 255, 0.16) 100%
		) !important;
	opacity: 1 !important;
}

body .candy-shop-actions > .candy-quick-view__trigger::after,
body .candy-shop-actions > button.candy-shop-btn--secondary::after,
body .candy-shop-actions > .button.candy-shop-btn--secondary::after,
body .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger::after,
body .woocommerce-page ul.products li.product .candy-shop-actions > .candy-quick-view__trigger::after {
	display: none !important;
	content: none !important;
}

body .candy-shop-actions > .candy-quick-view__trigger:hover,
body .candy-shop-actions > button.candy-shop-btn--secondary:hover,
body .candy-shop-actions > .button.candy-shop-btn--secondary:hover,
body .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger:hover,
body .woocommerce-page ul.products li.product .candy-shop-actions > .candy-quick-view__trigger:hover {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.98) 0%,
			rgba(255, 240, 244, 0.94) 100%
		) !important;
	color: #c52f56 !important;
	border-color: rgba(255, 107, 138, 0.34) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.88),
		0 10px 20px rgba(255, 75, 110, 0.08) !important;
	filter: none !important;
}

/* FORCE 4 full mini-cart items before subtotal */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container ul.cart_list,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container ul.cart_list,
body.candy-home .elementor-menu-cart__container ul.product_list_widget {
	height: 300px !important;
	max-height: 300px !important;
	min-height: 300px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
}

/* Tighten each row so the 4th item fits fully */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.candy-shop .elementor-menu-cart__container .mini_cart_item,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product,
body.candy-shop .elementor-menu-cart__container li.mini_cart_item,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.candy-home .elementor-menu-cart__container .mini_cart_item,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__product,
body.candy-home .elementor-menu-cart__container li.mini_cart_item {
	min-height: 82px !important;
	padding: 10px 0 !important;
	box-sizing: border-box !important;
}

/* Prevent titles from making rows taller */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item > a:not(.remove),
body.candy-shop .elementor-menu-cart__container .mini_cart_item > a:not(.remove),
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product-name,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart-item > a:not(.remove),
body.candy-home .elementor-menu-cart__container .mini_cart_item > a:not(.remove),
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__product-name {
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	line-height: 1.35 !important;
	max-height: 2.7em !important;
}

/* Hover state */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons .button:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons .button:first-child:hover {
	background: #fff5f7 !important;
	color: #ff4f6d !important;
	border-color: #ff4f6d !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:first-child::before,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:first-child::before,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.button:first-child::before,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .wc-forward:first-child::before,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.wc-forward:first-child::before,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:first-child::before,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:first-child::before,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.button:first-child::before,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .wc-forward:first-child::before,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.wc-forward:first-child::before {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.42) 0%,
		rgba(255, 255, 255, 0.16) 100%
	) !important;
	opacity: 1 !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:first-child:hover,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:first-child:hover,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.button:first-child:hover,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .wc-forward:first-child:hover,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.wc-forward:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.button:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .wc-forward:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.wc-forward:first-child:hover {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.98) 0%,
		rgba(255, 240, 244, 0.92) 100%
	) !important;
	background-color: #fffafb !important;
	color: #c52f56 !important;
	border-color: rgba(255, 107, 138, 0.34) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.88),
		0 10px 20px rgba(255, 75, 110, 0.08) !important;
	filter: none !important;
}

/* Force mini-cart View cart button to white */
body.candy-shop .elementor-menu-cart__container a.elementor-button--view-cart,
body.candy-home .elementor-menu-cart__container a.elementor-button--view-cart {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.92) 0%,
		rgba(255, 245, 247, 0.86) 100%
	) !important;
	background-color: #fff7f9 !important;
	color: #d93c63 !important;
	border: 1px solid rgba(255, 213, 222, 0.82) !important;
	text-shadow: none !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05),
		0 4px 10px rgba(255, 75, 110, 0.05) !important;
	filter: none !important;
}

body.candy-shop .elementor-menu-cart__container a.elementor-button--view-cart::before,
body.candy-home .elementor-menu-cart__container a.elementor-button--view-cart::before {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.42) 0%,
		rgba(255, 255, 255, 0.16) 100%
	) !important;
	opacity: 1 !important;
}

body.candy-shop .elementor-menu-cart__container a.elementor-button--view-cart:hover,
body.candy-home .elementor-menu-cart__container a.elementor-button--view-cart:hover {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.98) 0%,
		rgba(255, 240, 244, 0.92) 100%
	) !important;
	background-color: #fffafb !important;
	color: #c52f56 !important;
	border-color: rgba(255, 107, 138, 0.34) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.88),
		0 10px 20px rgba(255, 75, 110, 0.08) !important;
	filter: none !important;
}

/* Cart page drawer should match shop/home drawer */
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-cart .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__container-inner {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	min-height: 0 !important;
}

/* Checkout page drawer should match shop/home/cart drawer */
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-checkout .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__container-inner {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	min-height: 0 !important;
}

body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container ul.cart_list,
body.woocommerce-checkout .elementor-menu-cart__container ul.product_list_widget {
	height: 356px !important;
	max-height: 356px !important;
	min-height: 356px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding-right: 6px !important;
	margin: 0 0 18px !important;
	scrollbar-width: thin;
}

body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.woocommerce-checkout .elementor-menu-cart__container .mini_cart_item,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__product,
body.woocommerce-checkout .elementor-menu-cart__container li.mini_cart_item {
	min-height: 74px !important;
	padding: 6px 0 !important;
	box-sizing: border-box !important;
}}

body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart-item > a:not(.remove),
body.woocommerce-checkout .elementor-menu-cart__container .mini_cart_item > a:not(.remove),
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__product-name {
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	line-height: 1.35 !important;
	max-height: 2.7em !important;
}

body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons {
	display: flex !important;
	flex: 0 0 auto !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: sticky !important;
	bottom: 0 !important;
	z-index: 8 !important;
	margin-top: auto !important;
	margin-bottom: 10px !important;
	padding: 14px 8px !important;
	background: rgba(255, 255, 255, 0.86) !important;
	backdrop-filter: blur(14px) saturate(1.12) !important;
	-webkit-backdrop-filter: blur(14px) saturate(1.12) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.7) !important;
	border-radius: 18px 18px 0 0 !important;
	box-shadow:
		0 -10px 24px rgba(17, 24, 39, 0.06),
		inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}

body.woocommerce-checkout .elementor-menu-cart__container a.elementor-button--view-cart {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.92) 0%,
		rgba(255, 245, 247, 0.86) 100%
	) !important;
	background-color: #fff7f9 !important;
	color: #d93c63 !important;
	border: 1px solid rgba(255, 213, 222, 0.82) !important;
	text-shadow: none !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05),
		0 4px 10px rgba(255, 75, 110, 0.05) !important;
	filter: none !important;
}

body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container ul.cart_list,
body.woocommerce-cart .elementor-menu-cart__container ul.product_list_widget {
	height: 356px !important;
	max-height: 356px !important;
	min-height: 356px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding-right: 6px !important;
	margin: 0 0 18px !important;
	scrollbar-width: thin;
}

body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.woocommerce-cart .elementor-menu-cart__container .mini_cart_item,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__product,
body.woocommerce-cart .elementor-menu-cart__container li.mini_cart_item {
	min-height: 74px !important;
	padding: 6px 0 !important;
	box-sizing: border-box !important;
}

body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart-item > a:not(.remove),
body.woocommerce-cart .elementor-menu-cart__container .mini_cart_item > a:not(.remove),
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__product-name {
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	line-height: 1.35 !important;
	max-height: 2.7em !important;
}

body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons {
	display: flex !important;
	flex: 0 0 auto !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: sticky !important;
	bottom: 0 !important;
	z-index: 8 !important;
	margin-top: auto !important;
	margin-bottom: 10px !important;
	padding: 14px 8px !important;
	background: rgba(255, 255, 255, 0.86) !important;
	backdrop-filter: blur(14px) saturate(1.12) !important;
	-webkit-backdrop-filter: blur(14px) saturate(1.12) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.7) !important;
	border-radius: 18px 18px 0 0 !important;
	box-shadow:
		0 -10px 24px rgba(17, 24, 39, 0.06),
		inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}

body.woocommerce-cart .elementor-menu-cart__container a.elementor-button--view-cart {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.92) 0%,
		rgba(255, 245, 247, 0.86) 100%
	) !important;
	background-color: #fff7f9 !important;
	color: #d93c63 !important;
	border: 1px solid rgba(255, 213, 222, 0.82) !important;
	text-shadow: none !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05),
		0 4px 10px rgba(255, 75, 110, 0.05) !important;
	filter: none !important;
}

/* ===== Header: outer shell only, inner containers clean ===== */

/* Keep only the outermost header visible */
.elementor-location-header,
.site-header {
	z-index: 50;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.88) 0%,
			rgba(255, 248, 251, 0.84) 52%,
			rgba(248, 244, 251, 0.86) 100%
		) !important;
	border: 1px solid rgba(255, 255, 255, 0.62) !important;
	border-radius: 24px !important;
	box-shadow:
		0 14px 36px rgba(17, 24, 39, 0.05),
		0 4px 14px rgba(255, 75, 110, 0.04),
		inset 0 1px 0 rgba(255, 255, 255, 0.82) !important;
	backdrop-filter: blur(14px) saturate(1.08);
	-webkit-backdrop-filter: blur(14px) saturate(1.08);
	overflow: hidden;
	isolation: isolate;
}

/* Gloss only on outer shell */
.elementor-location-header::before,
.site-header::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.28) 0%,
		rgba(255, 255, 255, 0.08) 38%,
		rgba(255, 255, 255, 0.02) 100%
	);
	pointer-events: none;
	z-index: 0;
}

.elementor-location-header > *,
.site-header > * {
	position: relative;
	z-index: 1;
}

/* Strip visible boxes from all inner header containers */
.elementor-location-header .elementor-section,
.elementor-location-header .elementor-container,
.elementor-location-header .e-con,
.elementor-location-header .elementor-column,
.elementor-location-header .elementor-widget-wrap {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border-radius: 0 !important;
}

/* Nav links stay polished, but understated */
.elementor-location-header .elementor-nav-menu .elementor-item {
	position: relative;
	font-weight: 700;
	letter-spacing: 0.01em;
	color: #2a2a2f !important;
	transition:
		color 0.22s ease,
		transform 0.22s ease,
		opacity 0.22s ease;
}

.elementor-location-header .elementor-nav-menu .elementor-item:hover {
	color: #ff4b6e !important;
	transform: translateY(-1px);
}

.elementor-location-header .elementor-nav-menu .elementor-item.elementor-item-active {
	color: #ff4b6e !important;
}

.elementor-location-header .elementor-nav-menu .elementor-item.elementor-item-active::after,
.elementor-location-header .elementor-nav-menu .elementor-item:hover::after {
	content: "";
	position: absolute;
	left: 20%;
	right: 20%;
	bottom: 10px;
	height: 3px;
	border-radius: 999px;
	background: linear-gradient(90deg, #7bdc74 0%, #55c96d 100%);
}


/* ===== Header cart ===== */

/* reset outer cart chrome only */
.elementor-location-header .elementor-widget-woocommerce-menu-cart,
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-widget-container,
.elementor-location-header .elementor-menu-cart__wrapper,
.elementor-location-header .elementor-menu-cart__toggle_wrapper,
.elementor-location-header .elementor-menu-cart__toggle,
.elementor-location-header .elementor-widget-woocommerce-menu-cart a.elementor-menu-cart__toggle {
	background: transparent !important;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

/* actual hover target */
.elementor-location-header .elementor-menu-cart__toggle,
.elementor-location-header .elementor-widget-woocommerce-menu-cart a.elementor-menu-cart__toggle {
	position: relative !important;
	overflow: hidden !important;
	isolation: isolate !important;
	transition:
		transform 0.22s ease,
		color 0.22s ease !important;
}

/* clean only the cart text/icon wrappers, not every descendant */
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-text,
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon,
.elementor-location-header .elementor-menu-cart__toggle svg,
.elementor-location-header .elementor-menu-cart__toggle i {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}

/* cart color */
.elementor-location-header .elementor-menu-cart__toggle,
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-text,
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon,
.elementor-location-header .elementor-menu-cart__toggle svg,
.elementor-location-header .elementor-menu-cart__toggle i {
	color: #ff4b6e !important;
	fill: #ff4b6e !important;
	stroke: currentColor !important;
}

.elementor-location-header .elementor-menu-cart__toggle:hover,
.elementor-location-header .elementor-menu-cart__toggle:hover .elementor-button-text,
.elementor-location-header .elementor-menu-cart__toggle:hover .elementor-button-icon,
.elementor-location-header .elementor-menu-cart__toggle:hover svg,
.elementor-location-header .elementor-menu-cart__toggle:hover i {
	color: #d93c63 !important;
	fill: #d93c63 !important;
	stroke: currentColor !important;
}

/* hover effect: bigger only */
.elementor-location-header .elementor-menu-cart__toggle:hover,
.elementor-location-header .elementor-widget-woocommerce-menu-cart a.elementor-menu-cart__toggle:hover {
	transform: scale(1.06) !important;
}

/* glass shimmer */
.elementor-location-header .elementor-menu-cart__toggle::after,
.elementor-location-header .elementor-widget-woocommerce-menu-cart a.elementor-menu-cart__toggle::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -38%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.34) 48%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition:
		transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
		opacity 0.2s ease;
	pointer-events: none;
	opacity: 0;
	z-index: 2;
}

.elementor-location-header .elementor-menu-cart__toggle:hover::after,
.elementor-location-header .elementor-widget-woocommerce-menu-cart a.elementor-menu-cart__toggle:hover::after {
	opacity: 1;
	transform: skewX(-20deg) translateX(430%);
}

/* anchor badge to icon */
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon,
.elementor-location-header .elementor-menu-cart__toggle .elementor-menu-cart__toggle_button {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* cart count bubble */
.elementor-location-header .elementor-button-icon-qty,
.elementor-location-header .elementor-menu-cart__toggle_count,
.elementor-location-header .elementor-menu-cart__toggle_count_badge,
.elementor-location-header .elementor-menu-cart__counter {
	position: absolute !important;
	top: -7px !important;
	right: -10px !important;
	width: 20px !important;
	height: 20px !important;
	min-width: 20px !important;
	min-height: 20px !important;
	margin: 0 !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: #ff4b6e !important;
	background-color: #ff4b6e !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-align: center !important;
	text-indent: 0 !important;
	border: 2px solid #ffffff !important;
	border-radius: 999px !important;
	box-shadow: 0 4px 10px rgba(255, 75, 110, 0.22) !important;
	overflow: hidden !important;
	opacity: 1 !important;
	z-index: 6 !important;
}

/* remove pseudo/inherited badge weirdness */
.elementor-location-header .elementor-button-icon-qty::before,
.elementor-location-header .elementor-button-icon-qty::after,
.elementor-location-header .elementor-menu-cart__toggle_count::before,
.elementor-location-header .elementor-menu-cart__toggle_count::after,
.elementor-location-header .elementor-menu-cart__toggle_count_badge::before,
.elementor-location-header .elementor-menu-cart__toggle_count_badge::after,
.elementor-location-header .elementor-menu-cart__counter::before,
.elementor-location-header .elementor-menu-cart__counter::after {
	content: none !important;
	display: none !important;
}

.elementor-location-header .elementor-button-icon-qty *,
.elementor-location-header .elementor-menu-cart__toggle_count *,
.elementor-location-header .elementor-menu-cart__toggle_count_badge *,
.elementor-location-header .elementor-menu-cart__counter * {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	line-height: 1 !important;
}

html, body {
	overflow-x: hidden;
}

body.candy-shop .elementor-section,
body.candy-shop .elementor-container {
	max-width: 100%;
	overflow-x: clip;
}


/* ===== FINAL MINI-CART DRAWER OVERRIDES ===== */

/* Keep drawer fixed and self-contained */
body.candy-shop .elementor-menu-cart__container,
body.candy-home .elementor-menu-cart__container,
body.woocommerce-cart .elementor-menu-cart__container,
body.woocommerce-checkout .elementor-menu-cart__container {
	position: fixed !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: auto !important;
	width: min(420px, 100vw) !important;
	height: 100vh !important;
	max-width: 100vw !important;
	margin: 0 !important;
	padding: 0 0 10px !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
	z-index: 999999 !important;
}

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__main,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__main,
body.candy-shop .elementor-menu-cart__container .widget_shopping_cart_content,
body.candy-home .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-cart .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-checkout .elementor-menu-cart__container .widget_shopping_cart_content {
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
	align-content: flex-start !important;
	height: 100% !important;
	min-height: 0 !important;
}

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__main > *,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__main > *,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__main > *,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__main > *,
body.candy-shop .elementor-menu-cart__container .widget_shopping_cart_content > *,
body.candy-home .elementor-menu-cart__container .widget_shopping_cart_content > *,
body.woocommerce-cart .elementor-menu-cart__container .widget_shopping_cart_content > *,
body.woocommerce-checkout .elementor-menu-cart__container .widget_shopping_cart_content > * {
	margin-top: 0 !important;
	align-self: stretch !important;
}

body .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body .elementor-menu-cart__container .elementor-menu-cart__footer {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* Show only about 4 items, then scroll */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container ul.cart_list,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container ul.cart_list,
body.candy-home .elementor-menu-cart__container ul.product_list_widget {
	flex: 0 0 auto !important;
	height: 230px !important;
	max-height: 230px !important;
	min-height: 230px !important;
	margin: 0 0 10px !important;
	padding-right: 6px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
}

/* Tighten subtotal and upsell spacing so lower blocks sit higher */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	flex: 0 0 auto !important;
	margin: 0 0 8px !important;
	padding: 10px 0 8px !important;
	border-top: 1px solid rgba(17, 24, 39, 0.08) !important;
	background: transparent !important;
}

body.candy-shop .elementor-menu-cart__container .cross-sells,
body.candy-shop .elementor-menu-cart__container .upsell,
body.candy-shop .elementor-menu-cart__container .elementor-widget-woocommerce-menu-cart__main,
body.candy-home .elementor-menu-cart__container .cross-sells,
body.candy-home .elementor-menu-cart__container .upsell,
body.candy-home .elementor-menu-cart__container .elementor-widget-woocommerce-menu-cart__main {
	flex: 0 0 auto !important;
	margin: 0 0 8px !important;
}

/* Custom fallback buttons: always visible at bottom */
body.candy-shop .custom-mini-cart-buttons,
body.candy-home .custom-mini-cart-buttons {
	position: sticky !important;
	bottom: 0 !important;
	z-index: 6 !important;
	margin: 0 !important;
	padding: 10px 12px 6px !important;
	background: #fff !important;
	border-top: 1px solid rgba(0,0,0,0.06) !important;
}

body.candy-shop .custom-mini-cart-buttons a,
body.candy-home .custom-mini-cart-buttons a {
	display: block !important;
	width: 100% !important;
	text-align: center !important;
	margin: 0 0 8px !important;
	padding: 12px !important;
	border-radius: 14px !important;
}

body.candy-shop .custom-mini-cart-buttons a:last-child,
body.candy-home .custom-mini-cart-buttons a:last-child {
	margin-bottom: 0 !important;
}

@media (max-width: 767px) {
	body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
	body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
	body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
	body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart {
		height: 218px !important;
		max-height: 218px !important;
		min-height: 218px !important;
	}
}

/* ===== MINI-CART: use Elementor native footer only ===== */

/* Hide custom fallback footer if it still exists anywhere */
body.candy-shop .custom-mini-cart-buttons,
body.candy-home .custom-mini-cart-buttons,
body.woocommerce-cart .custom-mini-cart-buttons,
body.woocommerce-checkout .custom-mini-cart-buttons {
	display: none !important;
}

/* Re-enable Elementor native footer/buttons */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: sticky !important;
	bottom: 0 !important;
	z-index: 12 !important;
	gap: 10px !important;
	padding: 12px 10px 10px !important;
	margin: 0 !important;
	background: #fff !important;
	border-top: 1px solid rgba(17, 24, 39, 0.08) !important;
}

/* Keep native buttons visible and balanced */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a {
	flex: 1 1 0 !important;
	margin: 0 !important;
}

/* Tighten subtotal spacing slightly */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: -10px 8px 10px;
	padding: 8px 0 4px !important;
}

/* Tighten upsell spacing slightly */
body.candy-shop .elementor-menu-cart__container .cross-sells,
body.candy-shop .elementor-menu-cart__container .upsell,
body.candy-shop .elementor-menu-cart__container .elementor-widget-woocommerce-menu-cart__main,
body.candy-home .elementor-menu-cart__container .cross-sells,
body.candy-home .elementor-menu-cart__container .upsell,
body.candy-home .elementor-menu-cart__container .elementor-widget-woocommerce-menu-cart__main {
	margin: 0 0 8px !important;
}

body.candy-shop .woocommerce-mini-cart__buttons a.checkout,
body.candy-home .woocommerce-mini-cart__buttons a.checkout {
	background: linear-gradient(135deg, #ff4d6d, #ff7a8a);
	box-shadow: 0 6px 18px rgba(255, 77, 109, 0.35);
	border: none;
}

body.candy-shop .woocommerce-mini-cart__buttons a:hover,
body.candy-home .woocommerce-mini-cart__buttons a:hover {
	transform: translateY(-1px);
}

body.candy-shop .woocommerce-mini-cart::-webkit-scrollbar,
body.candy-home .woocommerce-mini-cart::-webkit-scrollbar {
	width: 6px;
}

body.candy-shop .woocommerce-mini-cart::-webkit-scrollbar-thumb,
body.candy-home .woocommerce-mini-cart::-webkit-scrollbar-thumb {
	background: rgba(255, 77, 109, 0.3);
	border-radius: 10px;
}

body.candy-shop .woocommerce-mini-cart__total,
body.candy-home .woocommerce-mini-cart__total {
	padding-bottom: 6px;
}

/* Shop + Candy: when mini-cart drawer is open, move sticky filter area left */
body.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop {
	margin-right: calc(min(420px, 100vw) + 18px) !important;
}

/* Keep inner toolbar aligned nicely after the shift */
body.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .candy-shop-toolbar-wrap {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

/* Prevent this behavior on smaller screens where the drawer already dominates layout */
@media (max-width: 1024px) {
	body.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop {
		margin-right: 0 !important;
	}
}

.woocommerce-before-shop-loop {
	transition: margin-right 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ===== Footer refinement ===== */

footer,
.elementor-location-footer {
	background: #f8f6fb;
	border-top: 1px solid rgba(17, 24, 39, 0.10);
}

.elementor-location-footer .elementor-section,
.elementor-location-footer .elementor-container,
.elementor-location-footer .e-con {
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
}

.elementor-location-footer {
	padding-top: 18px;
}

.elementor-location-footer .elementor-widget-heading h2,
.elementor-location-footer .elementor-widget-heading h3,
.elementor-location-footer .elementor-widget-heading h4,
.elementor-location-footer .elementor-heading-title {
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.01em;
	color: #1b1b1f !important;
	margin-bottom: 14px !important;
}

.elementor-location-footer p,
.elementor-location-footer .elementor-widget-text-editor,
.elementor-location-footer .elementor-widget-text-editor p {
	font-size: 14px !important;
	line-height: 1.7 !important;
	color: #6b7280 !important;
	margin-bottom: 0 !important;
}

.elementor-location-footer a {
	color: #6b7280 !important;
	text-decoration: none !important;
	transition: color 0.22s ease, transform 0.22s ease;
}

.elementor-location-footer a:hover {
	color: #d93c63 !important;
}

.elementor-location-footer ul,
.elementor-location-footer .elementor-icon-list-items {
	margin: 0 !important;
	padding: 0 !important;
}

.elementor-location-footer li,
.elementor-location-footer .elementor-icon-list-item {
	margin-bottom: 10px !important;
}

.elementor-location-footer img {
	max-width: 110px !important;
	height: auto !important;
}

.elementor-location-footer .elementor-widget-image {
	margin-bottom: 14px !important;
}

/* tighten oversized footer section spacing */
.elementor-location-footer .elementor-top-section,
.elementor-location-footer .e-con {
	padding-top: 22px !important;
	padding-bottom: 22px !important;
}

/* make the small trust/delivery note feel intentional */
.elementor-location-footer .elementor-widget-text-editor:last-child,
.elementor-location-footer .elementor-widget-icon-list:last-child {
	margin-top: 14px !important;
	font-size: 13px !important;
	color: #8b9098 !important;
}

/* mobile footer rhythm */
@media (max-width: 767px) {
	.elementor-location-footer .elementor-top-section,
	.elementor-location-footer .e-con {
		padding-top: 16px !important;
		padding-bottom: 16px !important;
	}

	.elementor-location-footer .elementor-widget-heading h2,
	.elementor-location-footer .elementor-widget-heading h3,
	.elementor-location-footer .elementor-widget-heading h4,
	.elementor-location-footer .elementor-heading-title {
		margin-bottom: 10px !important;
	}
}

/* Hide leaked mini-cart subtotal/buttons if they escape into page/footer flow */
footer .woocommerce-mini-cart__total,
footer .elementor-menu-cart__subtotal,
footer .woocommerce-mini-cart__buttons,
footer .elementor-menu-cart__footer,
footer .elementor-menu-cart__footer-buttons,
footer .custom-mini-cart-buttons,
.elementor-location-footer .woocommerce-mini-cart__total,
.elementor-location-footer .elementor-menu-cart__subtotal,
.elementor-location-footer .woocommerce-mini-cart__buttons,
.elementor-location-footer .elementor-menu-cart__footer,
.elementor-location-footer .elementor-menu-cart__footer-buttons,
.elementor-location-footer .custom-mini-cart-buttons {
	display: none !important;
}

/* Disable sticky checkout/cart info bar on all pages */
#stickyCheckoutBar {
	display: none !important;
}

/* ===== PREMIUM FOOTER REFINEMENT ===== */

.elementor-location-footer {
	background: #f8f6fb;
	border-top: 1px solid rgba(17, 24, 39, 0.08);
}

/* Headings */
.elementor-location-footer h2,
.elementor-location-footer h3,
.elementor-location-footer h4 {
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.02em;
	color: #1f2937 !important;
	margin-bottom: 10px !important;
}

/* Links */
.elementor-location-footer a {
	font-size: 13.5px !important;
	color: #6b7280 !important;
	transition: all 0.2s ease;
}

.elementor-location-footer a:hover {
	color: #ff4d6d !important;
	transform: translateX(2px);
}

/* Paragraph */
.elementor-location-footer p {
	font-size: 13.5px !important;
	line-height: 1.6 !important;
	color: #6b7280 !important;
	max-width: 260px;
}

/* List spacing */
.elementor-location-footer li {
	margin-bottom: 8px !important;
}

/* Logo sizing */
.elementor-location-footer img {
	max-width: 95px !important;
	margin-bottom: 10px !important;
}

/* Bottom note (delivery text) */
.elementor-location-footer .elementor-widget-text-editor:last-child {
	font-size: 12.5px !important;
	color: #9ca3af !important;
	margin-top: 12px !important;
}

/* subtle fade-in feel */
.elementor-location-footer {
	transition: all 0.3s ease;
}

/* ===== Footer height + alignment fix ===== */

.elementor-location-footer .elementor-top-section,
.elementor-location-footer .e-con,
.elementor-location-footer .elementor-container {
	min-height: 0 !important;
	height: auto !important;
	align-items: flex-start !important;
}

.elementor-location-footer .elementor-top-section,
.elementor-location-footer .e-con {
	padding-top: 18px !important;
	padding-bottom: 18px !important;
}

.elementor-location-footer .elementor-column,
.elementor-location-footer .elementor-widget-wrap {
	justify-content: flex-start !important;
	align-content: flex-start !important;
}

.elementor-location-footer .elementor-widget-wrap > .elementor-element {
	margin-bottom: 10px !important;
}

.elementor-location-footer .elementor-widget-wrap > .elementor-element:last-child {
	margin-bottom: 0 !important;
}

/* tighten the left text block */
.elementor-location-footer p {
	margin-top: 6px !important;
	margin-bottom: 0 !important;
}

/* tighten list rhythm */
.elementor-location-footer .elementor-icon-list-item,
.elementor-location-footer li {
	margin-bottom: 8px !important;
}

/* ===== Footer premium upgrade ===== */

.elementor-location-footer {
	border-top: 1px solid rgba(17, 24, 39, 0.08);
	background:
		linear-gradient(
			180deg,
			rgba(248, 246, 251, 0.96) 0%,
			rgba(246, 243, 249, 0.98) 100%
		);
}

/* tighten overall footer typography */
.elementor-location-footer .elementor-heading-title,
.elementor-location-footer h2,
.elementor-location-footer h3,
.elementor-location-footer h4 {
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.01em !important;
	color: #1b1b1f !important;
	margin-bottom: 12px !important;
}

/* footer body text */
.elementor-location-footer p,
.elementor-location-footer .elementor-widget-text-editor,
.elementor-location-footer .elementor-widget-text-editor p {
	font-size: 14px !important;
	line-height: 1.65 !important;
	color: #6b7280 !important;
}

/* links */
.elementor-location-footer a {
	color: #6b7280 !important;
	text-decoration: none !important;
	transition:
		color 0.22s ease,
		transform 0.22s ease,
		opacity 0.22s ease;
}

.elementor-location-footer a:hover {
	color: #d93c63 !important;
	transform: translateX(2px);
}

/* cleaner link rhythm */
.elementor-location-footer .elementor-icon-list-item,
.elementor-location-footer li {
	margin-bottom: 8px !important;
}

/* logo block */
.elementor-location-footer .elementor-widget-image img {
	max-width: 96px !important;
	height: auto !important;
}

.elementor-location-footer .elementor-widget-image {
	margin-bottom: 12px !important;
}

/* make the delivery note feel intentional */
.elementor-location-footer .elementor-widget-text-editor:last-child,
.elementor-location-footer .elementor-widget-icon-list:last-child {
	margin-top: 12px !important;
	font-size: 13px !important;
	color: #8b9098 !important;
}

/* soften the whole footer visually */
.elementor-location-footer .elementor-container,
.elementor-location-footer .e-con,
.elementor-location-footer .elementor-column,
.elementor-location-footer .elementor-widget-wrap {
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
}

/* Footer top divider */
.elementor-location-footer {
	border-top: 1px solid rgba(0, 0, 0, 0.06);
	position: relative;
}

.elementor-location-footer::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 120px;
	height: 2px;
	background: linear-gradient(90deg, #ff4d6d, #ff7aa2);
	border-radius: 2px;
	opacity: 0.6;
}

/* Footer links upgrade */
.elementor-location-footer a {
	position: relative;
	color: #6b7280 !important;
	transition: all 0.25s ease;
}

/* underline animation */
.elementor-location-footer a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 0%;
	height: 1.5px;
	background: linear-gradient(90deg, #ff4d6d, #ff7aa2);
	transition: width 0.25s ease;
}

.elementor-location-footer a:hover {
	color: #111827 !important;
}

.elementor-location-footer a:hover::after {
	width: 100%;
}

/* Footer headings */
.elementor-location-footer h3,
.elementor-location-footer h4 {
	font-weight: 700 !important;
	font-size: 15px !important;
	color: #111827 !important;
	margin-bottom: 14px !important;
	letter-spacing: 0.02em;
}

/* Logo spacing */
.elementor-location-footer .elementor-widget-image {
	margin-bottom: 14px !important;
}

/* Description text */
.elementor-location-footer .elementor-widget-text-editor p {
	max-width: 260px;
	line-height: 1.6;
}

/* Footer fade-in */
.elementor-location-footer {
	animation: footerFade 0.6s ease forwards;
	opacity: 0;
}

@keyframes footerFade {
	to {
		opacity: 1;
	}
}

/* Footer bottom bar */
.footer-bottom-bar {
	border-top: 1px solid rgba(0, 0, 0, 0.06);
	margin-top: 20px;
	padding-top: 14px;
	font-size: 13px;
	color: #9aa0a6;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.footer-bottom-bar strong {
	color: #6b7280;
}

.elementor-location-footer::before {
	width: 80px;
	height: 2px;
	opacity: 0.8;
	filter: blur(0.2px);
}

.elementor-location-footer::before {
	width: 80px;
	height: 2px;
	opacity: 0.8;
	filter: blur(0.2px);
}

.elementor-location-footer a {
  transition: color 0.22s ease, opacity 0.22s ease, transform 0.22s ease;
}

.elementor-location-footer a:hover {
  color: #d94b6a !important;
  transform: translateX(2px);
}

.elementor-location-footer .elementor-widget-image {
  position: relative;
  padding-bottom: 10px;
}

.elementor-location-footer .elementor-widget-image::after {
  content: "";
  display: block;
  width: 44px;
  height: 2px;
  margin-top: 10px;
  background: linear-gradient(90deg, #ff5a7a, #ff7f96);
  border-radius: 999px;
  opacity: 0.9;
}

/* Homepage product cards: pull price closer to title */
body.home .price,
body.home .woocommerce-Price-amount,
body.home .product-card__price,
body.home .candy-product-card .price,
body.home .elementor-loop-container .price,
body.home .elementor-widget-woocommerce-products .price {
	margin-top: 0 !important;
}

body.home .product h2,
body.home .product h3,
body.home .woocommerce-loop-product__title,
body.home .product-card__title,
body.home .candy-product-card__title {
	margin-bottom: 6px !important;
}

/* Tighten homepage product-card content spacing */
body.home .product .price,
body.home .candy-product-card .price,
body.home .elementor-widget-woocommerce-products .price {
	display: block;
	line-height: 1.2 !important;
}

body.home .product .woocommerce-loop-product__title + .price,
body.home .candy-product-card__title + .price {
	margin-top: 4px !important;
}


/* Homepage cards: make title + price sit like shop page */
body.home .candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link,
body.home .candy-home-products ul.products li.product > a.woocommerce-loop-product__link,
body.home .candy-home-products .products li.product > a.woocommerce-LoopProduct-link,
body.home .candy-home-products .products li.product > a.woocommerce-loop-product__link {
	display: block !important;
	min-height: auto !important;
	margin: 0 0 12px !important;
	padding: 18px 18px 0 !important;
	text-align: left !important;
}

body.home .candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link img,
body.home .candy-home-products ul.products li.product > a.woocommerce-loop-product__link img,
body.home .candy-home-products .products li.product > a.woocommerce-LoopProduct-link img,
body.home .candy-home-products .products li.product > a.woocommerce-loop-product__link img {
	display: block !important;
	max-height: 205px !important;
	margin: 0 auto 12px !important;
}

body.home .candy-home-products ul.products li.product h2,
body.home .candy-home-products ul.products li.product .woocommerce-loop-product__title,
body.home .candy-home-products .products li.product h2,
body.home .candy-home-products .products li.product .woocommerce-loop-product__title {
	margin: 0 0 6px !important;
	text-align: left !important;
}

body.home .candy-home-products ul.products li.product .price,
body.home .candy-home-products .products li.product .price {
	display: block !important;
	margin: 0 0 14px !important;
	text-align: left !important;
}

/* ===== HOMEPAGE FIX: keep Woo add-to-cart feedback clean ===== */
body.home .candy-home-products .candy-shop-actions .added_to_cart {
	display: none !important;
}

body.home .candy-home-products a.added_to_cart {
	display: none !important;
}

body.home .candy-home-products .candy-shop-actions__cart {
	display: flex !important;
	align-items: stretch !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a,
body.home .candy-home-products .candy-shop-actions__cart > .button {
	width: 100% !important;
	flex: 1 1 auto !important;
}

/* stop homepage card layout from jumping when button gets Woo classes */
body.home .candy-home-products .candy-shop-actions__cart > a.added,
body.home .candy-home-products .candy-shop-actions__cart > a.loading,
body.home .candy-home-products .candy-shop-actions__cart > a.ajax_add_to_cart.added,
body.home .candy-home-products .candy-shop-actions__cart > a.add_to_cart_button.added {
	padding-right: 0 !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a.added::after,
body.home .candy-home-products .candy-shop-actions__cart > a.ajax_add_to_cart.added::after,
body.home .candy-home-products .candy-shop-actions__cart > a.add_to_cart_button.added::after {
	content: none !important;
	display: none !important;
}

/* ===== HOMEPAGE FIX: make badges visible like shop page ===== */
body.home .candy-home-products ul.products li.product .candy-shop-badges,
body.home .candy-home-products .products li.product .candy-shop-badges {
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	pointer-events: none;
	max-width: calc(100% - 28px);
}

body.home .candy-home-products ul.products li.product .candy-shop-badge,
body.home .candy-home-products .products li.product .candy-shop-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 6px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.2px;
	color: #ffffff;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
	white-space: nowrap;
}

body.home .candy-home-products ul.products li.product .candy-shop-badge.is-sale,
body.home .candy-home-products .products li.product .candy-shop-badge.is-sale {
	background: linear-gradient(135deg, #ff4b6e, #ff6b8a);
}

body.home .candy-home-products ul.products li.product .candy-shop-badge.is-outofstock,
body.home .candy-home-products .products li.product .candy-shop-badge.is-outofstock {
	background: linear-gradient(135deg, #767676, #9b9b9b);
}

body.home .candy-home-products ul.products li.product .candy-shop-badge.is-new,
body.home .candy-home-products .products li.product .candy-shop-badge.is-new {
	background: linear-gradient(135deg, #5b7cff, #7a95ff);
}

body.home .candy-home-products ul.products li.product .candy-shop-badge.is-popular,
body.home .candy-home-products .products li.product .candy-shop-badge.is-popular {
	background: linear-gradient(135deg, #ff9f1a, #ffbd59);
	color: #ffffff;
}

body.home .candy-home-products ul.products li.product .candy-shop-badge.is-sugarfree,
body.home .candy-home-products .products li.product .candy-shop-badge.is-sugarfree {
	background: linear-gradient(135deg, #08a05c, #20bf78);
}
	
	/* ===== HOMEPAGE: make custom add-to-cart behave like shop ===== */

body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart {
	display: flex !important;
	align-items: stretch !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > a,
body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > .button {
	flex: 1 1 0 !important;
	width: 100% !important;
}

/* Hide WooCommerce's injected View cart link on homepage cards */
body.home .candy-home-products ul.products li.product a.added_to_cart,
body.home .candy-home-products .products li.product a.added_to_cart,
body.home .candy-home-products .candy-shop-actions__cart a.added_to_cart,
body.home .candy-home-products .candy-shop-actions__cart a.added_to_cart.wc-forward {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	font-size: 0 !important;
	line-height: 0 !important;
}

/* Keep homepage card button stable after AJAX add */
body.home .candy-home-products .candy-shop-actions__cart > a.added,
body.home .candy-home-products .candy-shop-actions__cart > a.add_to_cart_button.added,
body.home .candy-home-products .candy-shop-actions__cart > a.ajax_add_to_cart.added {
	padding-right: 0 !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a.added::after,
body.home .candy-home-products .candy-shop-actions__cart > a.add_to_cart_button.added::after,
body.home .candy-home-products .candy-shop-actions__cart > a.ajax_add_to_cart.added::after {
	content: none !important;
	display: none !important;
}

/* Homepage product-card added feedback = same as shop */
body.home .candy-home-products .candy-shop-actions__cart > a.is-added-feedback,
body.home .candy-home-products .candy-shop-actions__cart > .button.is-added-feedback {
	background: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	box-shadow:
		0 12px 24px rgba(8, 160, 92, 0.24),
		0 4px 10px rgba(32, 191, 120, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		inset 0 -10px 18px rgba(7, 122, 71, 0.12) !important;
	transform: translateY(-2px);
	color: #ffffff !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a.is-resetting,
body.home .candy-home-products .candy-shop-actions__cart > .button.is-resetting {
	transition:
		background 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease,
		color 220ms ease,
		border-color 220ms ease !important;
}

/* Homepage quick-view modal added feedback = same as shop */
body.home .candy-quick-view__cart .single_add_to_cart_button.is-added-feedback,
body.home .candy-quick-view__cart .button.alt.is-added-feedback,
body.home .candy-quick-view__submit.is-added-feedback {
	background: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	box-shadow:
		0 12px 24px rgba(8, 160, 92, 0.24),
		0 4px 10px rgba(32, 191, 120, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		inset 0 -10px 18px rgba(7, 122, 71, 0.12) !important;
	transform: translateY(-2px);
	color: #ffffff !important;
}

body.home .candy-quick-view__cart .single_add_to_cart_button.is-resetting,
body.home .candy-quick-view__cart .button.alt.is-resetting,
body.home .candy-quick-view__submit.is-resetting {
	transition:
		background 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease,
		color 220ms ease,
		border-color 220ms ease !important;
}

/* ===== HOMEPAGE: restore product badges like shop ===== */
body.home .candy-home-products ul.products li.product .candy-shop-badges,
body.home .candy-home-products .products li.product .candy-shop-badges {
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	pointer-events: none;
	max-width: calc(100% - 28px);
}

body.home .candy-home-products ul.products li.product .candy-shop-badge,
body.home .candy-home-products .products li.product .candy-shop-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 6px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.2px;
	color: #ffffff;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
	white-space: nowrap;
}

body.home .candy-home-products .candy-shop-badge.is-sale { background: linear-gradient(135deg, #ff4b6e, #ff6b8a); }
body.home .candy-home-products .candy-shop-badge.is-outofstock { background: linear-gradient(135deg, #767676, #9b9b9b); }
body.home .candy-home-products .candy-shop-badge.is-new { background: linear-gradient(135deg, #5b7cff, #7a95ff); }
body.home .candy-home-products .candy-shop-badge.is-popular { background: linear-gradient(135deg, #ff9f1a, #ffbd59); color: #ffffff; }
body.home .candy-home-products .candy-shop-badge.is-sugarfree { background: linear-gradient(135deg, #08a05c, #20bf78); }

a.added_to_cart,
a.added_to_cart.wc-forward,
.wc-forward {
	display: none !important;
}

body.candy-shop #candy-quick-view-modal a.added_to_cart,
body.candy-shop #candy-quick-view-modal .added_to_cart,
body.candy-shop #candy-quick-view-modal a.wc-forward,
body.candy-shop #candy-quick-view-modal .wc-forward {
	display: none !important;
}

a.added_to_cart,
.added_to_cart,
a.wc-forward,
.wc-forward {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

body.candy-shop #candy-quick-view-modal .single_add_to_cart_button.loading,
body.candy-shop #candy-quick-view-modal .button.alt.loading,
body.candy-shop #candy-quick-view-modal .candy-quick-view__submit.loading {
	transform: scale(0.98);
	opacity: 0.9;
	filter: saturate(1.05);
	pointer-events: none;
}

body.candy-shop #candy-quick-view-modal .single_add_to_cart_button.is-added-feedback,
body.candy-shop #candy-quick-view-modal .button.alt.is-added-feedback,
body.candy-shop #candy-quick-view-modal .candy-quick-view__submit.is-added-feedback {
	animation: candyQuickViewAddSuccess 700ms cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes candyQuickViewAddSuccess {
	0% {
		transform: scale(1);
	}
	30% {
		transform: scale(1.08);
	}
	55% {
		transform: scale(0.98);
	}
	100% {
		transform: scale(1);
	}
}

body.candy-shop #candy-quick-view-modal .candy-quick-view-modal__dialog.is-added-pulse {
	animation: candyQuickViewModalAddedPulse 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes candyQuickViewModalAddedPulse {
	0% {
		transform: translate3d(0, 0, 0) scale(1);
		box-shadow:
			0 28px 70px rgba(0, 0, 0, 0.18),
			0 10px 28px rgba(255, 75, 110, 0.08),
			inset 0 1px 0 rgba(255, 255, 255, 0.82),
			inset 0 -22px 34px rgba(255, 255, 255, 0.12);
	}
	30% {
		transform: translate3d(0, 0, 0) scale(1.025);
		box-shadow:
			0 34px 84px rgba(0, 0, 0, 0.22),
			0 14px 36px rgba(8, 160, 92, 0.18),
			0 0 0 6px rgba(8, 160, 92, 0.10),
			inset 0 1px 0 rgba(255, 255, 255, 0.86),
			inset 0 -22px 34px rgba(255, 255, 255, 0.12);
	}
	60% {
		transform: translate3d(0, 0, 0) scale(0.995);
	}
	100% {
		transform: translate3d(0, 0, 0) scale(1);
		box-shadow:
			0 28px 70px rgba(0, 0, 0, 0.18),
			0 10px 28px rgba(255, 75, 110, 0.08),
			inset 0 1px 0 rgba(255, 255, 255, 0.82),
			inset 0 -22px 34px rgba(255, 255, 255, 0.12);
	}
}

/* ===== HOMEPAGE ONLY: slow down ADD-TO-CART success animation ===== */

/* Home page product-card Add to Cart */
body.home .candy-home-products .candy-shop-actions__cart > a.is-added-feedback,
body.home .candy-home-products .candy-shop-actions__cart > .button.is-added-feedback {
	transform: none !important;
	animation: none !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a.is-added-feedback::after,
body.home .candy-home-products .candy-shop-actions__cart > .button.is-added-feedback::after {
	animation: none !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a.is-resetting,
body.home .candy-home-products .candy-shop-actions__cart > .button.is-resetting {
	transition:
		background 420ms ease,
		box-shadow 420ms ease,
		transform 420ms ease,
		color 420ms ease,
		border-color 420ms ease !important;
}

/* Home page Quick View modal Add to Cart only */
body.home #candy-quick-view-modal .single_add_to_cart_button.is-added-feedback,
body.home #candy-quick-view-modal .button.alt.is-added-feedback,
body.home #candy-quick-view-modal .candy-quick-view__submit.is-added-feedback {
	transform: none !important;
	animation: none !important;
}

body.home #candy-quick-view-modal .single_add_to_cart_button.is-added-feedback::after,
body.home #candy-quick-view-modal .button.alt.is-added-feedback::after,
body.home #candy-quick-view-modal .candy-quick-view__submit.is-added-feedback::after {
	animation: none !important;
}

body.home #candy-quick-view-modal .single_add_to_cart_button.is-resetting,
body.home #candy-quick-view-modal .button.alt.is-resetting,
body.home #candy-quick-view-modal .candy-quick-view__submit.is-resetting {
	transition:
		background 420ms ease,
		box-shadow 420ms ease,
		transform 420ms ease,
		color 420ms ease,
		border-color 420ms ease !important;
}

/* =========================================
   FIX: HOMEPAGE ADD-TO-CART CLICK ANIMATION
   ========================================= */

/* Kill the jump when item is added */
body.home .candy-home-products .candy-shop-actions__cart > .button.is-added-feedback,
body.home .candy-home-products .candy-shop-actions__cart > a.is-added-feedback {
	transform: none !important;
	animation: none !important;
}

/* Kill the snap-back reset */
body.home .candy-home-products .candy-shop-actions__cart > .button.is-resetting,
body.home .candy-home-products .candy-shop-actions__cart > a.is-resetting {
	transform: none !important;

	transition:
		background 400ms ease,
		box-shadow 400ms ease,
		color 400ms ease,
		border-color 400ms ease !important;
}

/* =========================================
   FINAL FIXED SLIDING HEADER SYSTEM
========================================= */

:root {
	--wp-admin-bar-height: 0px;
	--site-header-height: 0px;
	--site-sticky-offset: 0px;
	--site-header-gap: 16px;
}

/* Fixed Elementor header */
.elementor-location-header {
	position: fixed !important;
	top: var(--wp-admin-bar-height) !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	z-index: 1100 !important;
	transition: transform 0.32s ease !important;
	will-change: transform;
}

.elementor-location-header.header-hidden {
	transform: translateY(calc(-1 * var(--site-header-height))) !important;
}

/* Do not use body padding for offset in this setup */
body.has-fixed-site-header {
	padding-top: 0 !important;
}

/* Keep anchor jumps accurate */
html {
	scroll-padding-top: calc(var(--site-sticky-offset) + var(--site-header-gap));
}

/* Shop filter row */
body.candy-shop .woocommerce-before-shop-loop {
	position: sticky !important;
	top: calc(var(--site-sticky-offset) + var(--site-header-gap)) !important;
	z-index: 1001 !important;
	margin-bottom: 12px !important;
}

body.tax-product_cat.candy-shop .woocommerce-before-shop-loop {
	margin-bottom: 16px !important;
}

/* Prevent nested sticky conflict */
body.candy-shop .candy-shop-toolbar-wrap.is-sticky {
	position: sticky !important;
	top: calc(var(--site-sticky-offset) + 16px) !important;
	z-index: 1001 !important;
}

/* Mobile */
@media (max-width: 768px) {
	body.candy-shop .woocommerce-before-shop-loop {
		position: relative !important;
		top: auto !important;
		margin-bottom: 18px !important;
	}
}

/* WordPress admin bar heights */
body.admin-bar {
	--wp-admin-bar-height: 32px;
}

@media (max-width: 782px) {
	body.admin-bar {
		--wp-admin-bar-height: 46px;
	}
}

/* HOMEPAGE: push content below fixed header */
.home .elementor-location-header + * {
	margin-top: 120px;
}

/* Hide page title on homepage */
.home .entry-title,
.home h1.page-title {
	display: none !important;
}

/* Remove rounded corners from header */
.elementor-location-header,
.elementor-location-header * {
	border-radius: 0 !important;
}

body.candy-shop .candy-shop-active-filters {
	margin-top: 14px;
}

body.candy-shop .candy-shop-active-filters__list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

body.candy-shop .candy-shop-active-filters__chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	border-radius: 999px;
	border: 1px solid rgba(255,255,255,0.42);
	background: rgba(255,255,255,0.78);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	box-shadow: 0 6px 16px rgba(17,24,39,0.06);
	cursor: pointer;
	font: inherit;
	line-height: 1;
}

body.candy-shop .candy-shop-active-filters__chip-text {
	font-size: 13px;
	font-weight: 700;
	color: #2b2b34;
}

body.candy-shop .candy-shop-active-filters__chip-x {
	font-size: 16px;
	line-height: 1;
	color: #d93c63;
}

body.candy-shop .candy-shop-active-filters__clear-all {
	display: inline-flex;
	align-items: center;
	padding: 10px 4px;
	background: transparent;
	border: 0;
	cursor: pointer;
	font-size: 13px;
	font-weight: 700;
	color: #d93c63;
}

/* Tablet */
@media (max-width: 1024px) {
	body.candy-shop ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Mobile */
@media (max-width: 767px) {
	body.candy-shop ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}

	body.tax-product_cat ul.products {
		margin: 0 !important;
	}

	body.candy-shop ul.products li.product img {
		height: 180px;
	}

	body.candy-shop ul.products li.product .candy-shop-actions {
		grid-template-columns: 1fr;
	}
}

/* Remove the test outline if still present */
body.tax-product_cat ul.products li.product {
	outline: none !important;
}

/* Make product category archives use the same full-width content area as Shop */
body.tax-product_cat .site-main,
body.tax-product_cat .content-area,
body.tax-product_cat .woocommerce,
body.tax-product_cat .woocommerce-page,
body.tax-product_cat .elementor-widget-theme-archive-content,
body.tax-product_cat .elementor-location-archive,
body.tax-product_cat main {
	max-width: 100% !important;
	width: 100% !important;
}

/* Remove narrow inner container behavior on Candy/category pages */
body.tax-product_cat .woocommerce-breadcrumb,
body.tax-product_cat .woocommerce-before-shop-loop,
body.tax-product_cat ul.products,
body.tax-product_cat .shop-load-more-area {
	max-width: 100% !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Force the same 4-column product grid sizing */
body.tax-product_cat ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 24px !important;
	padding-top: 0 !important;
	box-sizing: border-box !important;
}

/* Match card sizing */
body.tax-product_cat ul.products li.product {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
}

/* Match image area */
body.tax-product_cat ul.products li.product img {
	width: 100% !important;
	height: 220px !important;
	object-fit: contain !important;
	display: block !important;
	margin: 0 auto 16px !important;
}

/* Match action row/buttons */
body.tax-product_cat ul.products li.product .candy-shop-actions {
	margin-top: auto !important;
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 12px !important;
}

body.tax-product_cat ul.products li.product .candy-shop-btn,
body.tax-product_cat ul.products li.product .button,
body.tax-product_cat ul.products li.product .candy-shop-actions__cart .button {
	min-height: 50px !important;
	width: 100% !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 18px !important;
	box-sizing: border-box !important;
}

/* FORCE Candy page buttons to match Shop page exactly */
body.tax-product_cat .candy-shop-btn--primary,
body.tax-product_cat .candy-shop-actions__cart .button,
body.tax-product_cat a.button.product_type_simple,
body.tax-product_cat a.button.add_to_cart_button {
	background: linear-gradient(135deg, #ff6a88, #ff3d6b) !important;
	color: #fff !important;
	border: none !important;
	box-shadow: 0 8px 18px rgba(255, 61, 107, 0.35) !important;
}

/* Quick view button (secondary style) */
body.tax-product_cat .candy-shop-btn--secondary {
	background: #fff !important;
	color: #ff3d6b !important;
	border: 1px solid rgba(255, 61, 107, 0.3) !important;
	box-shadow: none !important;
}

/* Hover states (important for polish) */
body.tax-product_cat .candy-shop-btn--primary:hover,
body.tax-product_cat .candy-shop-actions__cart .button:hover {
	background: linear-gradient(135deg, #ff3d6b, #ff1f5a) !important;
	transform: translateY(-1px);
	box-shadow: 0 10px 22px rgba(255, 61, 107, 0.45) !important;
}

body.tax-product_cat .candy-shop-btn--secondary:hover {
	background: rgba(255, 61, 107, 0.08) !important;
}

/* Candy page: force product card buttons to match Shop page */
body.tax-product_cat ul.products li.product .candy-shop-actions .button,
body.tax-product_cat ul.products li.product .candy-shop-actions a.button,
body.tax-product_cat ul.products li.product .candy-shop-actions button,
body.tax-product_cat ul.products li.product .candy-shop-actions .candy-shop-btn,
body.tax-product_cat ul.products li.product .candy-shop-actions .add_to_cart_button,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_simple,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_variable,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_grouped,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_external {
	background: linear-gradient(135deg, #ff6a88 0%, #ff4f7b 45%, #ff3d6b 100%) !important;
	background-image: linear-gradient(135deg, #ff6a88 0%, #ff4f7b 45%, #ff3d6b 100%) !important;
	color: #ffffff !important;
	border: 0 !important;
	box-shadow: 0 10px 24px rgba(255, 61, 107, 0.28) !important;
	-webkit-appearance: none !important;
	appearance: none !important;
}

/* Candy page: quick view button should match Shop page white style */
body.tax-product_cat ul.products li.product .candy-shop-actions .candy-shop-btn--secondary,
body.tax-product_cat ul.products li.product .candy-shop-actions .js-candy-quick-view {
	background: #ffffff !important;
	background-image: none !important;
	color: #f45b7a !important;
	border: 1px solid rgba(244, 91, 122, 0.22) !important;
	box-shadow: none !important;
}

/* Hover states */
body.tax-product_cat ul.products li.product .candy-shop-actions .button:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions a.button:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions button:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .add_to_cart_button:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_simple:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_variable:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_grouped:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_external:hover {
	background: linear-gradient(135deg, #ff6a88 0%, #ff4f7b 45%, #ff3d6b 100%) !important;
	background-image: linear-gradient(135deg, #ff6a88 0%, #ff4f7b 45%, #ff3d6b 100%) !important;
	color: #ffffff !important;
}

body.tax-product_cat ul.products li.product .candy-shop-actions .candy-shop-btn--secondary:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .js-candy-quick-view:hover {
	background: #ffffff !important;
	background-image: none !important;
	color: #f45b7a !important;
	border-color: rgba(244, 91, 122, 0.32) !important;
}

/* Candy category page: move sticky filter left when mini-cart drawer is open */
body.tax-product_cat:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
body.tax-product_tag:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
body.tax-product_taxonomy:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
body.tax-product_cat.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop {
	margin-right: calc(min(420px, 100vw) + 18px) !important;
	max-width: calc(100% - min(420px, 100vw) - 18px) !important;
	transition: margin-right 0.28s cubic-bezier(0.4, 0, 0.2, 1), max-width 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Keep inner toolbar from overflowing once shifted */
body.tax-product_cat:has(.elementor-menu-cart__container[aria-hidden="false"]) .candy-shop-toolbar-wrap,
body.tax-product_tag:has(.elementor-menu-cart__container[aria-hidden="false"]) .candy-shop-toolbar-wrap,
body.tax-product_taxonomy:has(.elementor-menu-cart__container[aria-hidden="false"]) .candy-shop-toolbar-wrap,
body.tax-product_cat.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .candy-shop-toolbar-wrap {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

@media (max-width: 1024px) {
	body.tax-product_cat:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
	body.tax-product_tag:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
	body.tax-product_taxonomy:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
	body.tax-product_cat.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop {
		margin-right: 0 !important;
		max-width: 100% !important;
	}
}

/* Homepage action buttons: fully match Shop page button text */
body.home .candy-home-products .candy-shop-actions > .candy-quick-view__trigger,
body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > a,
body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > .button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 14.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
	text-align: center !important;
	white-space: nowrap !important;
	text-transform: none !important;
	font-family: inherit !important;
}

body.page-id-12.woocommerce-checkout.admin-bar #content::before,
body.page-id-12.woocommerce-checkout.admin-bar main::before {
	content: "";
	display: block;
	height: 152px;
}

body.page-id-12.woocommerce-checkout:not(.admin-bar) #content::before,
body.page-id-12.woocommerce-checkout:not(.admin-bar) main::before {
	content: "";
	display: block;
	height: 120px;
}

/* =========================================
   CHECKOUT PAYMENT — STRIPE / APPLE STYLE
========================================= */

/* Remove WooCommerce's harsh outer payment borders */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method.is-active,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method-inner {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}

body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method::before,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method::after {
	display: none !important;
	content: none !important;
}

/* Payment section shell */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .payment_box,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-payment-form,
body.page-id-12.woocommerce-checkout .wc-block-components-payment-method {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.82) 0%,
		rgba(255, 250, 252, 0.78) 100%
	) !important;
	border: 1px solid rgba(230, 233, 240, 0.9) !important;
	border-radius: 22px !important;
	box-shadow:
		0 10px 24px rgba(17, 24, 39, 0.05),
		inset 0 1px 0 rgba(255, 255, 255, 0.82) !important;
	padding: 20px !important;
}

/* Payment method header row */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method label,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control__label,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-payment-method-label {
	font-weight: 700 !important;
	color: #1f2937 !important;
	letter-spacing: -0.01em;
}

/* Card brand row ("Card") */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .StripeElement,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .__PrivateStripeElement {
	border-radius: 16px !important;
}

/* Input wrappers inside Stripe area */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="text"],
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="tel"],
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="email"],
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-text-input input {
	height: 56px !important;
	border-radius: 16px !important;
	border: 1px solid rgba(220, 226, 235, 0.92) !important;
	background: rgba(255, 255, 255, 0.92) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.85),
		0 2px 8px rgba(17, 24, 39, 0.02) !important;
	padding-left: 16px !important;
	padding-right: 16px !important;
	transition:
		border-color 0.22s ease,
		box-shadow 0.22s ease,
		transform 0.22s ease !important;
}

/* Focus = Stripe-like */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input:focus,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-text-input input:focus,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .StripeElement--focus {
	border-color: rgba(99, 102, 241, 0.42) !important;
	box-shadow:
		0 0 0 4px rgba(99, 102, 241, 0.10),
		0 10px 24px rgba(99, 102, 241, 0.06) !important;
	outline: none !important;
}

/* Labels inside payment section */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-text-input label,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-text-input,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method small,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method p {
	color: #4b5563 !important;
}

/* Save payment checkbox row */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-checkbox,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-checkbox__label {
	color: #4b5563 !important;
	font-size: 14px !important;
}

/* Checkbox style */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="checkbox"] {
	accent-color: #111827;
}

/* Primary button = cleaner luxury style */
body.page-id-12.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.page-id-12.woocommerce-checkout button[type="submit"],
body.page-id-12.woocommerce-checkout .place-order button {
	min-height: 58px !important;
	border-radius: 999px !important;
	border: 1px solid rgba(17, 24, 39, 0.04) !important;
	background: linear-gradient(180deg, #111827 0%, #1f2937 100%) !important;
	color: #ffffff !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	letter-spacing: 0.01em !important;
	box-shadow:
		0 14px 28px rgba(17, 24, 39, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
	transition:
		transform 0.22s ease,
		box-shadow 0.22s ease,
		filter 0.22s ease !important;
}

body.page-id-12.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
body.page-id-12.woocommerce-checkout button[type="submit"]:hover,
body.page-id-12.woocommerce-checkout .place-order button:hover {
	transform: translateY(-1px);
	box-shadow:
		0 18px 34px rgba(17, 24, 39, 0.22),
		inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
	filter: brightness(1.03);
}

/* Mobile polish */
@media (max-width: 768px) {
	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .payment_box,
	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-payment-form,
	body.page-id-12.woocommerce-checkout .wc-block-components-payment-method {
		padding: 16px !important;
		border-radius: 18px !important;
	}

	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="text"],
	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="tel"],
	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="email"],
	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-text-input input {
		height: 52px !important;
	}
}

/* Remove remaining dark outlines for Stripe and shipping boxes */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method,
body.page-id-12.woocommerce-checkout .wc-block-components-radio-control__option,
body.page-id-12.woocommerce-checkout .wc-block-checkout__shipping-option,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method-inner,
body.page-id-12.woocommerce-checkout .wc-payment-form,
body.page-id-12.woocommerce-checkout .payment_box {
	border: none !important;
	box-shadow: none !important;
	background: rgba(255, 255, 255, 0.6) !important;
	border-radius: 16px !important;
}

/* Optional: subtle highlight on selected shipping */
body.page-id-12.woocommerce-checkout .wc-block-components-radio-control__option--checked {
	background: rgba(255, 75, 110, 0.08) !important;
}

/* Add space below Stripe card inputs for the save payment checkbox */
.woocommerce-checkout .wc-block-checkout__payment-method .payment_box,
.woocommerce-checkout .wc-payment-form {
    padding-bottom: 50px !important; /* increase bottom padding */
    box-sizing: border-box; /* ensures padding doesn't break layout */
}

/* Ensure payment box grows to fit the checkbox below */
.woocommerce-checkout .wc-block-checkout__payment-method .payment_box,
.woocommerce-checkout .wc-payment-form {
    display: flex !important;
    flex-direction: column !important;
    padding-bottom: 70px !important; /* increased space for checkbox */
    box-sizing: border-box !important;
}

/* Optional: give some margin to checkbox to avoid overlapping */
.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-checkbox {
    margin-top: 16px !important;
}

/* Ensure qty wrapper is visible inside order summary */
.checkout-qty-wrapper {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-top: 8px !important;
    position: relative !important;
    z-index: 10 !important;
}

/* Input field */
.checkout-qty-wrapper input.qty {
    width: 50px !important;
    text-align: center !important;
    display: inline-block !important;
}

/* Buttons */
.checkout-qty-wrapper .qty-btn {
    display: inline-block !important;
    position: relative !important;
}

/* CART page only - shift the content down so that there is no overlap by the Header */
body.page-id-11.woocommerce-cart main#content.site-main.post-11 > .page-content {
	padding-top: 120px !important;
}

body.page-id-11.woocommerce-cart.admin-bar main#content.site-main.post-11 > .page-content {
	padding-top: 152px !important;
}

/* =========================================================
   PREMIUM CART PAGE
   Matches candy-shop glassmorphism / soft luxury styling
========================================================= */

body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 18px 32px;
}

/* Main two-column layout */
body.page-id-11.woocommerce-cart .wc-block-cart {
	gap: 28px !important;
	align-items: start !important;
}

/* Left cart items card */
body.page-id-11.woocommerce-cart .wc-block-cart-items,
body.page-id-11.woocommerce-cart .wc-block-cart-items-block,
body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-cart-items-block {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.88) 0%,
			rgba(255, 248, 251, 0.84) 100%
		) !important;
	border: 1px solid rgba(231, 220, 236, 0.92) !important;
	border-radius: 24px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05),
		inset 0 1px 0 rgba(255, 255, 255, 0.72),
		inset 0 -18px 32px rgba(255, 255, 255, 0.12) !important;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
	padding: 10px 18px 16px !important;
	overflow: hidden !important;
}

/* Right cart totals card */
body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
body.page-id-11.woocommerce-cart .wc-block-components-sidebar,
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.9) 0%,
			rgba(255, 248, 251, 0.86) 100%
		) !important;
	border: 1px solid rgba(231, 220, 236, 0.92) !important;
	border-radius: 24px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05),
		inset 0 1px 0 rgba(255, 255, 255, 0.74) !important;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
	padding: 18px !important;
}

/* Section headings */
body.page-id-11.woocommerce-cart .wc-block-cart-items__header,
body.page-id-11.woocommerce-cart .wc-block-components-title {
	font-weight: 800 !important;
	letter-spacing: -0.01em;
	color: #1b1b1f !important;
}

/* Row separators softer */
body.page-id-11.woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row,
body.page-id-11.woocommerce-cart .wc-block-cart-items .wc-block-cart-item {
	border-color: rgba(17, 24, 39, 0.08) !important;
}

/* Product image */
body.page-id-11.woocommerce-cart .wc-block-cart-item__image img,
body.page-id-11.woocommerce-cart .wc-block-components-product-image img {
	border-radius: 16px !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.88) 0%,
			rgba(248, 244, 251, 0.82) 100%
		) !important;
	padding: 6px !important;
	border: 1px solid rgba(255, 255, 255, 0.62) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05) !important;
}

/* Product titles */
body.page-id-11.woocommerce-cart .wc-block-components-product-name,
body.page-id-11.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name {
	color: #d93c63 !important;
	font-weight: 750 !important;
	font-size: 17px !important;
	line-height: 1.35 !important;
	text-decoration: none !important;
}

body.page-id-11.woocommerce-cart .wc-block-components-product-name:hover,
body.page-id-11.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name:hover {
	color: #c92f56 !important;
	text-decoration: none !important;
}

/* Secondary description text */
body.page-id-11.woocommerce-cart .wc-block-components-product-metadata,
body.page-id-11.woocommerce-cart .wc-block-cart-item__prices,
body.page-id-11.woocommerce-cart .wc-block-components-product-price,
body.page-id-11.woocommerce-cart .wc-block-formatted-money-amount {
	color: #4b5563 !important;
}

/* Price emphasis */
body.page-id-11.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper,
body.page-id-11.woocommerce-cart .wc-block-components-product-price__value,
body.page-id-11.woocommerce-cart .wc-block-formatted-money-amount {
	font-weight: 800 !important;
}

/* Quantity selector */
body.page-id-11.woocommerce-cart .wc-block-components-quantity-selector {
	border: 1px solid rgba(255, 213, 222, 0.8) !important;
	border-radius: 14px !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.8) 0%,
			rgba(255, 245, 247, 0.68) 100%
		) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.78),
		0 4px 12px rgba(255, 75, 110, 0.05) !important;
	overflow: hidden !important;
}

body.page-id-11.woocommerce-cart .wc-block-components-quantity-selector input {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	font-weight: 700 !important;
	color: #1f1f1f !important;
}

body.page-id-11.woocommerce-cart .wc-block-components-quantity-selector button {
	background: transparent !important;
	color: #d93c63 !important;
	border: 0 !important;
	font-weight: 800 !important;
}

body.page-id-11.woocommerce-cart .wc-block-components-quantity-selector button:hover {
	background: rgba(255, 75, 110, 0.06) !important;
	color: #c92f56 !important;
}

/* Remove item button */
body.page-id-11.woocommerce-cart .wc-block-cart-item__remove-link,
body.page-id-11.woocommerce-cart .wc-block-components-product-remove-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	border-radius: 999px !important;
	background: rgba(255, 245, 247, 0.92) !important;
	border: 1px solid rgba(255, 213, 222, 0.8) !important;
	color: #d93c63 !important;
	text-decoration: none !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82) !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__remove-link:hover,
body.page-id-11.woocommerce-cart .wc-block-components-product-remove-button:hover {
	background: rgba(255, 236, 241, 0.96) !important;
	color: #c92f56 !important;
}

/* Coupon/totals rows */
body.page-id-11.woocommerce-cart .wc-block-components-totals-wrapper,
body.page-id-11.woocommerce-cart .wc-block-components-totals-item,
body.page-id-11.woocommerce-cart .wc-block-components-panel {
	border-color: rgba(17, 24, 39, 0.08) !important;
}

/* Coupon toggle */
body.page-id-11.woocommerce-cart .wc-block-components-panel__button {
	font-weight: 700 !important;
	color: #1f1f1f !important;
}

/* Estimated total */
body.page-id-11.woocommerce-cart .wc-block-components-totals-footer-item,
body.page-id-11.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
	font-size: 18px !important;
	font-weight: 800 !important;
	color: #1b1b1f !important;
}

/* Proceed to checkout button - premium primary */
body.page-id-11.woocommerce-cart .wc-block-cart__submit-button,
body.page-id-11.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a,
body.page-id-11.woocommerce-cart .wc-block-components-button.contained {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 56px !important;
	padding: 16px 24px !important;
	border-radius: 999px !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	text-decoration: none !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08) !important;
	box-shadow:
		0 14px 30px rgba(255, 75, 110, 0.25),
		0 6px 14px rgba(255, 107, 138, 0.15),
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14) !important;
	transition:
		transform 0.24s ease,
		box-shadow 0.24s ease,
		filter 0.24s ease !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart__submit-button:hover,
body.page-id-11.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a:hover,
body.page-id-11.woocommerce-cart .wc-block-components-button.contained:hover {
	transform: translateY(-2px) !important;
	box-shadow:
		0 18px 36px rgba(255, 75, 110, 0.32),
		0 8px 18px rgba(255, 107, 138, 0.18),
		inset 0 1px 0 rgba(255, 255, 255, 0.28),
		inset 0 -10px 18px rgba(191, 34, 77, 0.16) !important;
	filter: brightness(1.03) saturate(1.05) !important;
}

/* Side card sticky */
@media (min-width: 1025px) {
	body.page-id-11.woocommerce-cart .wc-block-cart__sidebar {
		position: sticky !important;
		top: 120px !important;
	}
}

/* Mobile polish */
@media (max-width: 1024px) {
	body.page-id-11.woocommerce-cart .wc-block-cart {
		gap: 20px !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-cart-items,
	body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
		border-radius: 18px !important;
		padding: 14px !important;
	}
}

@media (max-width: 767px) {
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
		padding-left: 12px;
		padding-right: 12px;
	}

	body.page-id-11.woocommerce-cart .wc-block-components-product-name {
		font-size: 15px !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-cart__submit-button,
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a {
		min-height: 52px !important;
		font-size: 17px !important;
	}
}

/* CART: force items + totals side by side on desktop */
body.page-id-11.woocommerce-cart .wc-block-cart {
	display: grid !important;
	grid-template-columns: minmax(0, 3fr) minmax(280px, 360px) !important;
	gap: 32px !important;
	align-items: start !important;
}

/* Make left and right columns behave */
body.page-id-11.woocommerce-cart .wc-block-cart-items-block {
	min-width: 0 !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
	width: 100% !important;
	min-width: 0 !important;
	align-self: start !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-items-block {
	width: 100% !important;
	max-width: none !important;
}

/* Keep totals card sticky on desktop */
@media (min-width: 1025px) {
	body.page-id-11.woocommerce-cart .wc-block-cart__sidebar {
		position: sticky !important;
		top: 120px !important;
	}
}

/* CART: make the left products column truly wide */
body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1.9fr) minmax(320px, 420px) !important;
	gap: 32px !important;
	align-items: start !important;
}

/* Left column should stretch fully */
body.page-id-11.woocommerce-cart .wc-block-components-main,
body.page-id-11.woocommerce-cart .wc-block-cart-items-block,
body.page-id-11.woocommerce-cart .wc-block-cart-items {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
}

/* Right totals column stays compact */
body.page-id-11.woocommerce-cart .wc-block-components-sidebar,
body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
	width: 100% !important;
	max-width: 420px !important;
	justify-self: end !important;
}

/* Desktop only */
@media (min-width: 1025px) {
	body.page-id-11.woocommerce-cart .wc-block-components-sidebar {
		position: sticky !important;
		top: 120px !important;
	}
}

/* Tablet/mobile stacks */
@media (max-width: 1024px) {
	body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout {
		display: block !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-components-sidebar,
	body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
		max-width: none !important;
		justify-self: stretch !important;
	}
}

/* Tablet/mobile: stack naturally */
@media (max-width: 1024px) {
	body.page-id-11.woocommerce-cart .wc-block-cart {
		display: block !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-cart-items-block,
	body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
		width: 100% !important;
		max-width: none !important;
	}
}

/* Add inner padding to each cart item */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
	padding: 20px 24px !important;
}

/* Extra spacing between image and text */
body.page-id-11.woocommerce-cart .wc-block-cart-item__image {
	margin-right: 16px !important;
}

/* Add spacing between text content and right price */
body.page-id-11.woocommerce-cart .wc-block-cart-item__product {
	padding-right: 20px !important;
}

/* Optional: increase vertical spacing between items */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row + .wc-block-cart-items__row {
	margin-top: 10px !important;
}

.wc-block-cart-items__row {
	padding: 24px 32px !important;
}

.wc-block-cart-item__total {
	padding-left: 20px !important;
}

/* CART ROWS - safe spacing only */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
	padding: 22px 28px !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__image {
	margin-right: 18px !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__product {
	padding-right: 24px !important;
	min-width: 0 !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__total {
	padding-left: 18px !important;
	white-space: nowrap !important;
}

body.page-id-11.woocommerce-cart .wc-block-components-product-name,
body.page-id-11.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name {
	display: block !important;
	width: auto !important;
	max-width: none !important;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__prices,
body.page-id-11.woocommerce-cart .wc-block-cart-item__product p {
	display: block !important;
	width: auto !important;
	max-width: none !important;
	white-space: normal !important;
}

/* MAKE CART AREA WIDER */
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 24px !important;
}

/* PRODUCT ROW CARD */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
	padding: 28px 32px !important; /* more breathing room */
	border-radius: 20px !important;
	margin-bottom: 18px !important;
	background: rgba(255,255,255,0.65) !important;
}

/* SPACE BETWEEN IMAGE AND TEXT */
body.page-id-11.woocommerce-cart .wc-block-cart-item__image {
	margin-right: 22px !important;
}

/* TEXT COLUMN – KEY FIX */
body.page-id-11.woocommerce-cart .wc-block-cart-item__product {
	padding-right: 32px !important;
}

/* PRODUCT NAME + DESCRIPTION SPACING */
body.page-id-11.woocommerce-cart .wc-block-components-product-name {
	margin-bottom: 8px !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__product p {
	margin-bottom: 14px !important;
	line-height: 1.5 !important;
}

/* RIGHT SIDE PRICE COLUMN */
body.page-id-11.woocommerce-cart .wc-block-cart-item__total {
	padding-left: 24px !important;
}

/* 1. Make cart container wider */
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
	max-width: 1300px !important;
	margin: 0 auto !important;
}

/* 2. Add real padding inside product rows */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
	padding: 24px 36px !important;
}

/* ===== FINAL CART WIDTH + INNER SPACING OVERRIDE ===== */
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart,
body.page-id-11.woocommerce-cart .wc-block-cart,
body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout,
body.page-id-11.woocommerce-cart .wc-block-components-main,
body.page-id-11.woocommerce-cart .wc-block-cart-items-block,
body.page-id-11.woocommerce-cart .wc-block-cart-items {
  max-width: none !important;
  width: 100% !important;
}

body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
	max-width: 1380px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 28px !important;
	padding-right: 28px !important;
}

/* Make the products column wider than totals */
body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 2.3fr) minmax(320px, 400px) !important;
	gap: 36px !important;
	align-items: start !important;
}

/* Real inner spacing for each product row */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
	padding: 28px 34px !important;
}

/* Keep text away from edges */
body.page-id-11.woocommerce-cart .wc-block-cart-item__image {
	margin-right: 20px !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__product {
	padding-right: 34px !important;
	min-width: 0 !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__total {
	padding-left: 24px !important;
	white-space: nowrap !important;
}

/* Mobile/tablet */
@media (max-width: 1024px) {
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
		max-width: none !important;
		padding-left: 18px !important;
		padding-right: 18px !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout {
		display: block !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
		padding: 22px 20px !important;
	}
}

/* ================================
   CART BLOCK WIDTH FIX
   Safe, minimal, desktop-first
   Place at absolute end of style.css
   ================================ */

@media (min-width: 1025px) {

  /* 1) Let the cart use more horizontal space overall */
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
    max-width: 1440px;
    width: min(1440px, calc(100% - 40px));
    margin-left: auto;
    margin-right: auto;
  }

  /* 2) Make the left products column visibly wider than the totals column */
  body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block .wc-block-cart {
    grid-template-columns: minmax(0, 1.55fr) minmax(320px, 0.7fr) !important;
    column-gap: 40px !important;
    align-items: start;
  }

  /* 3) Add breathing room inside the left cart products area */
  body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__main,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block .wc-block-cart__main {
    padding-left: 20px !important;
    padding-right: 20px !important;
    min-width: 0;
  }

  /* 4) Add breathing room inside each cart item row/card */
  body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block .wc-block-cart-items__row {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* =========================================
   CART WIDTH FIX - stronger but still safe
   Put at absolute bottom of style.css
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Widen common page/content wrappers that often cap the cart width */
  body.woocommerce-cart .site-main,
  body.woocommerce-cart .content-area,
  body.woocommerce-cart .entry-content,
  body.woocommerce-cart .elementor-section .elementor-container,
  body.woocommerce-cart .elementor-widget-container,
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
    max-width: 1440px !important;
    width: min(1440px, calc(100% - 40px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 2) Force the cart layout itself to give more room to products */
  body.woocommerce-cart .wc-block-cart {
    display: grid !important;
    grid-template-columns: minmax(0, 1.6fr) minmax(340px, 0.72fr) !important;
    column-gap: 40px !important;
    align-items: start !important;
  }

  /* 3) Make sure the left side is allowed to expand */
  body.woocommerce-cart .wc-block-cart__main {
    min-width: 0 !important;
    width: 100% !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  /* 4) Keep totals on the right */
  body.woocommerce-cart .wc-block-cart__sidebar {
    min-width: 340px !important;
    width: 100% !important;
  }

  /* 5) Add row breathing room */
  body.woocommerce-cart .wc-block-cart-items__row {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

/* =========================================
   FIX: CART CONTAINER WIDTH (REAL FIX)
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Kill narrow container constraint */
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
    max-width: none !important;
    width: calc(100% - 60px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 2) Expand the inner cart content */
  body.woocommerce-cart .wc-block-cart {
    max-width: 1400px !important;
    width: 100% !important;
    margin: 0 auto !important;
  }

  /* 3) Add breathing room inside the product list */
  body.woocommerce-cart .wc-block-cart__main {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  /* 4) Add spacing inside each row */
  body.woocommerce-cart .wc-block-cart-items__row {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

/* =========================================
   FINAL FIX: INNER CART WIDTH + BREATHING ROOM
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Expand usable width inside the cart */
  body.woocommerce-cart .wc-block-cart__main {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }

  /* 2) Increase spacing inside each product row */
  body.woocommerce-cart .wc-block-cart-items__row {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  /* 3) Allow product content to stretch properly */
  body.woocommerce-cart .wc-block-cart-item__wrap {
    width: 100% !important;
    max-width: none !important;
  }

  /* 4) Ensure text/content area can grow */
  body.woocommerce-cart .wc-block-cart-item__product {
    width: 100% !important;
    max-width: none !important;
  }

}

/* =========================================
   CART BLOCK - FINAL WIDTH / SPACING FIX
   Uses the actual live Woo Blocks structure
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Control the actual 2-column cart layout */
  body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large {
    grid-template-columns: minmax(0, 1.75fr) minmax(340px, 0.85fr) !important;
    column-gap: 56px !important;
    align-items: start !important;
  }

  /* 2) Give the left products column more internal breathing room */
  body.page-id-11.woocommerce-cart .wc-block-components-main.wc-block-cart__main.wp-block-woocommerce-cart-items-block {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  /* 3) Increase inner padding on the actual line-items table */
  body.page-id-11.woocommerce-cart .wc-block-cart-items.wp-block-woocommerce-cart-line-items-block {
    padding-left: 32px !important;
    padding-right: 32px !important;
    width: 100% !important;
  }

  /* 4) Keep the totals column stable on the right */
  body.page-id-11.woocommerce-cart .wc-block-components-sidebar.wc-block-cart__sidebar.wp-block-woocommerce-cart-totals-block {
    min-width: 340px !important;
    width: 100% !important;
  }
}

/* =========================================
   CART BLOCK: REAL WIDTH / BREATHING ROOM FIX
   Based on live DOM from inspector
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Make the products column wider vs totals */
  body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large {
    grid-template-columns: minmax(0, 1.9fr) 360px !important;
    column-gap: 56px !important;
    align-items: start !important;
  }

  /* 2) Remove fake inner squeeze from the main wrapper */
  body.page-id-11.woocommerce-cart .wc-block-components-main.wc-block-cart__main.wp-block-woocommerce-cart-items-block {
    padding-left: 0 !important;
    padding-right: 0 !important;
    min-width: 0 !important;
  }

  /* 3) Keep the table full width */
  body.page-id-11.woocommerce-cart table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block {
    width: 100% !important;
    max-width: none !important;
  }

  /* 4) Add real breathing room to the visible left product column */
  body.page-id-11.woocommerce-cart table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block th:first-child,
  body.page-id-11.woocommerce-cart table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block td:first-child {
    padding-left: 40px !important;
    padding-right: 28px !important;
  }

  /* 5) Keep the total column tighter so product content gets more room */
  body.page-id-11.woocommerce-cart table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block th:last-child,
  body.page-id-11.woocommerce-cart table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block td:last-child {
    width: 120px !important;
    white-space: nowrap !important;
    padding-right: 40px !important;
  }
}

/* =========================================
   CART WIDTH FIX - FINAL SAFE PATCH
   ========================================= */

@media (min-width: 1025px) {

  /* Wider left column, stable totals column */
  body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large {
    grid-template-columns: minmax(0, 1.65fr) 380px !important;
    column-gap: 48px !important;
    align-items: start !important;
  }

  /* Remove artificial squeeze on main area */
  body.page-id-11.woocommerce-cart .wc-block-components-main.wc-block-cart__main.wp-block-woocommerce-cart-items-block {
    padding-left: 0 !important;
    padding-right: 0 !important;
    min-width: 0 !important;
  }

  /* Real breathing room on the actual product content cell */
  body.page-id-11.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__product,
  body.page-id-11.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-product {
    padding-left: 20px !important;
    padding-right: 28px !important;
  }

  /* Keep total column compact and aligned */
  body.page-id-11.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__total,
  body.page-id-11.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-total {
    width: 120px !important;
    min-width: 120px !important;
    white-space: nowrap !important;
    padding-right: 24px !important;
  }

  /* Slightly more room around the image cell */
  body.page-id-11.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__image,
  body.page-id-11.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-image {
    padding-left: 24px !important;
    padding-right: 12px !important;
  }
}

/* =========================================
   CART PAGE - SAFE WIDTH FIX
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Widen the actual page content wrapper on cart only */
  body.woocommerce-cart .page-content,
  body.woocommerce-cart .site-main,
  body.woocommerce-cart .entry-content {
    max-width: 1500px !important;
    width: min(1500px, calc(100% - 48px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 2) Give more room to products vs totals */
  body.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large {
    grid-template-columns: minmax(0, 1.85fr) 360px !important;
    column-gap: 48px !important;
    align-items: start !important;
  }

  /* 3) Add real visible breathing room in the product content cell */
  body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__product,
  body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-product {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  /* 4) Keep totals column compact */
  body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__total,
  body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-total {
    width: 120px !important;
    min-width: 120px !important;
    white-space: nowrap !important;
    padding-right: 24px !important;
  }

  /* 5) Small image-cell spacing adjustment */
  body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__image,
  body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-image {
    padding-left: 24px !important;
    padding-right: 12px !important;
  }
}

body.woocommerce-cart * {
  outline: none !important;
}

/* Kill all debug outlines */
*,
*::before,
*::after {
  outline: none !important;
}

/* Remove all debug outlines on cart page */
body.woocommerce-cart,
body.woocommerce-cart * ,
body.woocommerce-cart *::before,
body.woocommerce-cart *::after {
  outline: none !important;
  box-shadow: none;
}

/* =========================================
   CART – FINAL POLISH (SAFE)
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Improve left vs right balance */
  body.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large {
    grid-template-columns: minmax(0, 1.75fr) 360px;
    column-gap: 64px;
  }

  /* 2) Give product content more breathing room */
  body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__product,
  body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-product {
    padding-left: 28px;
    padding-right: 28px;
  }

  /* 3) Slightly reduce total column dominance */
  body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__total,
  body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-total {
    width: 110px;
    min-width: 110px;
  }

  /* 4) Subtle outer breathing room */
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
    padding-left: 20px;
    padding-right: 20px;
  }

}

/* =========================================
   CART → FOOTER SPACING
   ========================================= */
body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
  padding-bottom: 80px;
}

/* =========================================
   CART HEADINGS SIZE IMPROVEMENT
   ========================================= */

/* PRODUCT + TOTAL (table headers) */
body.woocommerce-cart .wc-block-cart-items th {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.5px;
}

/* CART TOTALS title */
body.woocommerce-cart .wc-block-components-totals-wrapper h2,
body.woocommerce-cart .wc-block-cart__totals-title {
  font-size: 18px;
  font-weight: 600;
}

/* =========================================
   CART HEADINGS – STRONGER HIERARCHY
   ========================================= */

/* PRODUCT + TOTAL (top headers) */
body.woocommerce-cart .wc-block-cart-items th {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.6px;
}

/* CART TOTALS title */
body.woocommerce-cart .wc-block-components-totals-wrapper h2,
body.woocommerce-cart .wc-block-cart__totals-title {
  font-size: 20px;
  font-weight: 700;
}

/* =========================================
   CHECKOUT – UPDATE CART BUTTON SHADOW
   ========================================= */

body.woocommerce-checkout .wc-block-components-button {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
  transition: box-shadow 0.2s ease;
}

/* Hover state (optional but recommended) */
body.woocommerce-checkout .wc-block-components-button:hover {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
}

/* =========================================
   CHECKOUT – UPDATE CART BUTTON VISIBILITY
   ========================================= */

body.woocommerce-checkout .wc-block-components-totals .wc-block-components-button {
  background: #fff; /* clean contrast */
  border: 1.5px solid rgba(255, 0, 90, 0.25);
  color: #e83e5a; /* your pink tone */
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12);
  font-weight: 600;
}

/* Hover state */
body.woocommerce-checkout .wc-block-components-totals .wc-block-components-button:hover {
  background: #fff;
  border-color: rgba(255, 0, 90, 0.5);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
  transform: translateY(-1px);
}

/* =========================================
   CHECKOUT – MAKE UPDATE CART BUTTON VISIBLE
   ========================================= */

body.woocommerce-checkout .wc-block-components-sidebar .wc-block-components-button:not(.wc-block-components-checkout-place-order-button) {
  background: #ffffff !important;
  border: 1.5px solid rgba(232, 62, 90, 0.35) !important;
  color: #e83e5a !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16) !important;
  font-weight: 700 !important;
}

body.woocommerce-checkout .wc-block-components-sidebar .wc-block-components-button:not(.wc-block-components-checkout-place-order-button):hover {
	background: #fff0f5 !important;
	border: 1.5px solid rgba(232, 62, 90, 0.45) !important;
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18) !important;
}


/* =========================================
   CHECKOUT – UPDATE CART BUTTON OUTLINE
   ========================================= */

body.woocommerce-checkout .candysodas-checkout-edit-cart-box__button {
  border: 2px solid #e83e5a !important;
  box-shadow: 0 8px 20px rgba(232, 62, 90, 0.14) !important;
}

/* Hide the current free-shipping / bundle recommendation block */
body.home .cartflows-sp-progress-wrap,
body.home .cartflows-sp-progress,
body.home .cartflows-sp-free-shipping-progress,
body.home .cartflows-sp-free-shipping-progress-wrap,
body.home .wcf-free-shipping-progress,
body.home .free-shipping-progress,
body.home .cartflows-shipping-progress,
body.home [class*="bundle-total"],
body.home [class*="bundle"],
body.post-type-archive-product .cartflows-sp-progress-wrap,
body.post-type-archive-product .cartflows-sp-progress,
body.post-type-archive-product .cartflows-sp-free-shipping-progress,
body.post-type-archive-product .cartflows-sp-free-shipping-progress-wrap,
body.post-type-archive-product .wcf-free-shipping-progress,
body.post-type-archive-product .free-shipping-progress,
body.post-type-archive-product .cartflows-shipping-progress,
body.post-type-archive-product [class*="bundle-total"],
body.post-type-archive-product [class*="bundle"],
body.tax-product_cat .cartflows-sp-progress-wrap,
body.tax-product_cat .cartflows-sp-progress,
body.tax-product_cat .cartflows-sp-free-shipping-progress,
body.tax-product_cat .cartflows-sp-free-shipping-progress-wrap,
body.tax-product_cat .wcf-free-shipping-progress,
body.tax-product_cat .free-shipping-progress,
body.tax-product_cat .cartflows-shipping-progress,
body.tax-product_cat [class*="bundle-total"],
body.tax-product_cat [class*="bundle"] {
	display: none !important;
}

/* Two-item mini-cart cross-sells */
body.home .candysodas-mini-cart-addons,
body.post-type-archive-product .candysodas-mini-cart-addons,
body.tax-product_cat .candysodas-mini-cart-addons {
	margin: 12px 0 14px !important;
	padding: 14px !important;
	border: 1px solid rgba(231, 220, 236, 0.92);
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(255,248,251,0.88) 100%);
}

.candysodas-mini-cart-addons__title {
	margin: 0 0 12px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	color: #1b1b1f;
}

.candysodas-mini-cart-addon {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	gap: 10px 12px;
	align-items: start;
	padding: 10px 0;
	border-top: 1px solid rgba(17, 24, 39, 0.08);
}

.candysodas-mini-cart-addon:first-of-type {
	border-top: 0;
	padding-top: 0;
}

.candysodas-mini-cart-addon__image img {
	width: 64px;
	height: 64px;
	object-fit: contain;
	display: block;
	border-radius: 12px;
	background: rgba(255,255,255,0.9);
	padding: 4px;
}

.candysodas-mini-cart-addon__content {
	min-width: 0;
}

.candysodas-mini-cart-addon__name {
	display: block;
	margin: 0 0 4px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	color: #d93c63 !important;
	text-decoration: none;
}

.candysodas-mini-cart-addon__price {
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: 800;
	color: #08985a;
}

.candysodas-mini-cart-addon .button,
.candysodas-mini-cart-addon .add_to_cart_button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 14px !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	color: #fff !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	border: 0 !important;
	box-shadow: 0 8px 18px rgba(255, 75, 110, 0.18);
}

/* Hide free-shipping / progress recommendation block in mini-cart */
body.home .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body.home .elementor-menu-cart__container .cartflows-sp-progress,
body.home .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body.home .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body.home .elementor-menu-cart__container .wcf-free-shipping-progress,
body.home .elementor-menu-cart__container .free-shipping-progress,
body.home .elementor-menu-cart__container .cartflows-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body.candy-shop .elementor-menu-cart__container .wcf-free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-shipping-progress {
	display: none !important;
}

/* Mini-cart recommended products */
body.home .candysodas-mini-cart-addons,
body.candy-shop .candysodas-mini-cart-addons {
	margin: 10px 0 12px !important;
	padding: 14px !important;
	border: 1px solid rgba(231, 220, 236, 0.92);
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(255,248,251,0.88) 100%);
}

.candysodas-mini-cart-addons__title {
	margin: 0 0 12px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.3;
	color: #1b1b1f;
}

.candysodas-mini-cart-addon {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	gap: 10px 12px;
	align-items: start;
	padding: 10px 0;
	border-top: 1px solid rgba(17, 24, 39, 0.08);
}

.candysodas-mini-cart-addon:first-of-type {
	border-top: 0;
	padding-top: 0;
}

.candysodas-mini-cart-addon__image img {
	width: 64px;
	height: 64px;
	object-fit: contain;
	display: block;
	border-radius: 12px;
	background: rgba(255,255,255,0.9);
	padding: 4px;
}

.candysodas-mini-cart-addon__content {
	min-width: 0;
}

.candysodas-mini-cart-addon__name {
	display: block;
	margin: 0 0 4px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	color: #d93c63 !important;
	text-decoration: none;
}

.candysodas-mini-cart-addon__price {
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: 800;
	color: #08985a;
}

.candysodas-mini-cart-addon .add_to_cart_button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 14px !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	color: #fff !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	border: 0 !important;
	box-shadow: 0 8px 18px rgba(255, 75, 110, 0.18);
}

body .elementor-menu-cart__products {
	padding-bottom: 0 !important;
}

#candysodasDrawerUpsells {
    margin-top: 8px !important;
    margin-bottom: 10px !important;
}

body .elementor-menu-cart__footer {
    position: sticky;
    bottom: 0;
    background: inherit;
    z-index: 2;
}

.candysodas-drawer-upsells {
    max-height: 260px;
    overflow-y: auto;
}

.candysodas-mini-cart-upsell-item {
    padding: 10px;
}

.candysodas-drawer-upsells-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: relative;
}

/* =========================================
   FINAL MINI-CART DRAWER SPACING FIX
   Keep this at the VERY END of style.css
========================================= */

body.candy-shop .elementor-menu-cart__container,
body.candy-home .elementor-menu-cart__container,
body.woocommerce-cart .elementor-menu-cart__container,
body.woocommerce-checkout .elementor-menu-cart__container {
	padding-bottom: 0 !important;
}

/* Make cart items area shorter so subtotal + upsells + footer fit */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart {
	height: 280px !important;
	max-height: 280px !important;
	min-height: 280px !important;
	margin: 0 0 8px !important;
	padding-bottom: 0 !important;
}

/* Pull subtotal closer to cart list */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: 0 0 6px !important;
	padding: 8px 0 6px !important;
}

/* Upsell wrapper: move slightly up and reduce height pressure */
#candysodasDrawerUpsells {
	margin: 6px 0 8px !important;
	padding: 12px !important;
	max-height: 235px !important;
	overflow-y: auto !important;
	box-sizing: border-box !important;
}

/* Slightly tighter header spacing inside upsell box */
#candysodasDrawerUpsells .candysodas-drawer-upsells-head {
	margin-bottom: 8px !important;
}

#candysodasDrawerUpsells .candysodas-drawer-upsells-title {
	margin-bottom: 2px !important;
}

/* Tighter list spacing */
#candysodasDrawerUpsells .candysodas-drawer-upsells-list {
	gap: 8px !important;
}

/* Make each item more compact so second item fully fits */
#candysodasDrawerUpsells .candysodas-mini-cart-upsell-item {
	padding: 10px !important;
	grid-template-columns: 60px minmax(0, 1fr) !important;
	gap: 10px !important;
	align-items: center !important;
	min-height: 0 !important;
}

#candysodasDrawerUpsells .candysodas-mini-cart-upsell-image,
#candysodasDrawerUpsells .candysodas-mini-cart-upsell-image img {
	width: 60px !important;
	height: 60px !important;
	min-width: 60px !important;
}

#candysodasDrawerUpsells .candysodas-mini-cart-upsell-meta {
	min-height: 14px !important;
	margin-bottom: 2px !important;
}

#candysodasDrawerUpsells .candysodas-mini-cart-upsell-title {
	font-size: 12.5px !important;
	line-height: 1.3 !important;
	margin-bottom: 4px !important;
}

#candysodasDrawerUpsells .candysodas-mini-cart-upsell-price {
	margin-bottom: 6px !important;
	font-size: 12.5px !important;
}

#candysodasDrawerUpsells .candysodas-mini-cart-upsell-btn {
	min-height: 32px !important;
	padding: 0 12px !important;
	font-size: 12px !important;
}

/* Keep footer buttons fully visible and inside drawer */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer {
	position: sticky !important;
	bottom: 0 !important;
	margin: 0 !important;
	padding: 10px 8px 8px !important;
	background: rgba(255,255,255,0.96) !important;
	z-index: 20 !important;
}

/* Mobile-specific tightening */
@media (max-width: 767px) {
	body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
	body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
	body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
	body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
	body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
	body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
	body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
	body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart {
		height: 248px !important;
		max-height: 248px !important;
		min-height: 248px !important;
	}

	#candysodasDrawerUpsells {
		max-height: 220px !important;
		padding: 10px !important;
	}

	#candysodasDrawerUpsells .candysodas-mini-cart-upsell-item {
		padding: 8px !important;
		grid-template-columns: 56px minmax(0, 1fr) !important;
		gap: 8px !important;
	}

	#candysodasDrawerUpsells .candysodas-mini-cart-upsell-image,
	#candysodasDrawerUpsells .candysodas-mini-cart-upsell-image img {
		width: 56px !important;
		height: 56px !important;
		min-width: 56px !important;
	}
}

/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor child theme with custom WooCommerce shop styling.
Version: 3.4.7.1774799224
Updated: 2026-03-29 15:47:04
*/

/* Shop page background so white cards pop more */
body.candy-shop,
body.candy-shop .site,
body.candy-shop .site-main,
body.candy-shop .content-area,
body.candy-shop .woocommerce,
body.candy-shop .elementor,
body.candy-shop .elementor-section,
body.candy-shop .elementor-container,
body.candy-shop .elementor-column,
body.candy-shop .elementor-widget-wrap,
body.candy-shop .elementor-widget-container {
	background: #f8f6fb;
}

/* Product card */
.candy-shop.woocommerce ul.products li.product {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.82) 0%,
			rgba(255, 248, 251, 0.78) 46%,
			rgba(247, 243, 250, 0.84) 100%
		);
	border: 1px solid rgba(231, 220, 236, 0.92);
	border-radius: 22px;
	padding: 18px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05),
		0 1px 0 rgba(255, 255, 255, 0.72) inset,
		0 -18px 32px rgba(255, 255, 255, 0.16) inset;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
	box-sizing: border-box;
	overflow: hidden;
	text-align: left;
	transition:
		transform 0.34s cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 0.34s cubic-bezier(0.22, 1, 0.36, 1),
		border-color 0.28s ease,
		background 0.28s ease,
		filter 0.28s ease;
	min-height: auto !important;
	position: relative;
	isolation: isolate;
}

/* Card hover */
.candy-shop.woocommerce ul.products li.product:hover {
	transform: translateY(-8px);
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.9) 0%,
			rgba(255, 249, 252, 0.88) 46%,
			rgba(248, 244, 251, 0.92) 100%
		);
	border-color: rgba(255, 107, 138, 0.18);
	box-shadow:
		0 28px 56px rgba(17, 24, 39, 0.11),
		0 12px 28px rgba(255, 75, 110, 0.08),
		0 1px 0 rgba(255, 255, 255, 0.82) inset,
		0 -18px 34px rgba(255, 255, 255, 0.22) inset;
	filter: saturate(1.02);
}

/* Reset direct children so nothing sits side-by-side */
.candy-shop.woocommerce ul.products li.product > * {
	width: 100% !important;
	float: none !important;
	clear: both !important;
	flex: 0 0 auto !important;
	position: relative;
	z-index: 1;
}

/* Outer premium edge ring */
.candy-shop.woocommerce ul.products li.product::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 22px;
	padding: 1px;
	background: linear-gradient(
		145deg,
		rgba(255, 255, 255, 0.62) 0%,
		rgba(255, 255, 255, 0.18) 22%,
		rgba(255, 120, 153, 0.18) 52%,
		rgba(255, 255, 255, 0.08) 78%,
		rgba(255, 255, 255, 0.5) 100%
	);
	opacity: 0.72;
	pointer-events: none;
	z-index: 0;
	transition: opacity 0.3s ease, filter 0.3s ease;
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
}

.candy-shop.woocommerce ul.products li.product:hover::before {
	opacity: 1;
	filter: brightness(1.04);
}

/* Top glossy light sweep */
.candy-shop.woocommerce ul.products li.product::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 22px;
	background:
		radial-gradient(
			ellipse at top center,
			rgba(255, 255, 255, 0.62) 0%,
			rgba(255, 227, 235, 0.18) 34%,
			rgba(255, 255, 255, 0) 68%
		),
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.26) 0%,
			rgba(255, 255, 255, 0.08) 26%,
			rgba(255, 255, 255, 0) 58%
		);
	opacity: 0.92;
	pointer-events: none;
	z-index: 0;
	transition:
		opacity 0.32s ease,
		transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

.candy-shop.woocommerce ul.products li.product:hover::after {
	opacity: 1;
	transform: translateY(-2px);
}

/* Soft ambient glow under card */
.candy-shop.woocommerce ul.products li.product .candy-card-ambient-glow {
	display: none;
}

/* Image link wrapper */
.candy-shop.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
.candy-shop.woocommerce ul.products li.product > a.woocommerce-loop-product__link,
.candy-shop.woocommerce ul.products li.product > a:first-of-type {
	order: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 198px !important;
	margin: 0 0 12px !important;
	text-align: center !important;
	column-gap: 0 !important;
	row-gap: 0 !important;
	overflow: hidden;
	border-radius: 18px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 247, 250, 0.7) 48%,
			rgba(246, 241, 249, 0.76) 100%
		);
	border: 1px solid rgba(255, 255, 255, 0.58);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -10px 20px rgba(255, 255, 255, 0.16),
		0 8px 22px rgba(17, 24, 39, 0.04);
	position: relative;
}

.candy-shop.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link::before,
.candy-shop.woocommerce ul.products li.product > a.woocommerce-loop-product__link::before,
.candy-shop.woocommerce ul.products li.product > a:first-of-type::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		radial-gradient(
			circle at top,
			rgba(255, 255, 255, 0.54),
			rgba(255, 255, 255, 0) 56%
		);
	opacity: 0.88;
	pointer-events: none;
}

/* Product image */
.candy-shop.woocommerce ul.products li.product img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 205px !important;
	margin: 0 auto !important;
	transition:
		transform 0.46s cubic-bezier(0.22, 1, 0.36, 1),
		filter 0.34s ease,
		opacity 0.26s ease;
	transform-origin: center center;
	will-change: transform;
	position: relative;
	z-index: 1;
}

/* Image-only hover disabled, card hover controls motion */
.candy-shop.woocommerce ul.products li.product img:hover {
	transform: none;
}

.candy-shop.woocommerce ul.products li.product:hover img {
	transform: translateY(-6px) scale(1.06);
	filter: saturate(1.06) contrast(1.01);
	opacity: 1;
}

/* Title under image */
.candy-shop.woocommerce ul.products li.product h2,
.candy-shop.woocommerce ul.products li.product .woocommerce-loop-product__title {
	order: 2 !important;
	display: block !important;
	width: 100% !important;
	margin: 0 0 7px !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em;
	color: #1b1b1f !important;
	text-align: left !important;
	transition: color 0.24s ease, transform 0.24s ease;
}

.candy-shop.woocommerce ul.products li.product:hover h2,
.candy-shop.woocommerce ul.products li.product:hover .woocommerce-loop-product__title {
	color: #111111 !important;
	transform: translateY(-1px);
}

/* Price under title */
.candy-shop.woocommerce ul.products li.product .price {
	order: 3 !important;
	display: block !important;
	width: 100% !important;
	margin: 0 0 14px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em;
	color: #08985a !important;
	text-align: left !important;
	transition: transform 0.24s ease, color 0.24s ease, opacity 0.24s ease;
	transform-origin: left center;
}

.candy-shop.woocommerce ul.products li.product:hover .price {
	transform: translateY(-1px);
	color: #078c53 !important;
	opacity: 1;
}

.candy-shop.woocommerce ul.products li.product .price del {
	color: #9a9a9a !important;
	font-weight: 500 !important;
	margin-right: 6px;
}

.candy-shop.woocommerce ul.products li.product .price ins {
	color: #08985a !important;
	text-decoration: none !important;
}

.candy-shop.woocommerce ul.products li.product .button::before,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button::before,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.24) 0%,
			rgba(255, 255, 255, 0.1) 38%,
			rgba(255, 255, 255, 0) 100%
		);
	opacity: 0.95;
	pointer-events: none;
	z-index: 0;
}

.candy-shop.woocommerce ul.products li.product .button::after,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button::after,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.18) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 0;
}

.candy-shop.woocommerce ul.products li.product .button > *,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button > *,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart > * {
	position: relative;
	z-index: 1;
}

.candy-shop.woocommerce ul.products li.product .button:hover,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button:hover,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart:hover {
	transform: translateY(-2px);
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14);
	filter: saturate(1.04) brightness(1.02);
}

.candy-shop.woocommerce ul.products li.product .button:hover::after,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button:hover::after,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart:hover::after {
	transform: skewX(-20deg) translateX(420%);
}

.candy-shop.woocommerce ul.products li.product:hover .button,
.candy-shop.woocommerce ul.products li.product:hover a.add_to_cart_button,
.candy-shop.woocommerce ul.products li.product:hover a.ajax_add_to_cart {
	box-shadow:
		0 18px 32px rgba(255, 75, 110, 0.3),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14);
	filter: saturate(1.04);
}

/* Grid fix */
.candy-shop.woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.candy-shop.woocommerce ul.products::before,
.candy-shop.woocommerce ul.products::after {
	display: none !important;
	content: none !important;
}

.candy-shop.woocommerce ul.products li.product {
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
	clear: none !important;
	height: auto !important;
	min-height: 0 !important;
	align-self: start !important;
}

/* Keep archive add-to-cart buttons visually stable after AJAX add */
.candy-shop.woocommerce ul.products li.product a.added_to_cart {
	display: none !important;
}

.candy-shop.woocommerce ul.products li.product .button.added,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.added,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.added {
	padding-right: 20px !important;
}

.candy-shop.woocommerce ul.products li.product .button.added::after,
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.added::after,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.added::after {
	content: none !important;
	display: none !important;
}

/* Button micro-interaction states */
.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-added-feedback,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-added-feedback,
.candy-shop.woocommerce ul.products li.product .button.is-added-feedback {
	background: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	box-shadow:
		0 12px 24px rgba(8, 160, 92, 0.24),
		0 4px 10px rgba(32, 191, 120, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		inset 0 -10px 18px rgba(7, 122, 71, 0.12) !important;
	transform: translateY(-2px);
}

.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-resetting,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-resetting,
.candy-shop.woocommerce ul.products li.product .button.is-resetting {
	transition:
		background 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease,
		color 220ms ease,
		border-color 220ms ease !important;
}

.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-added-feedback::before,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-added-feedback::before,
.candy-shop.woocommerce ul.products li.product .button.is-added-feedback::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.26) 0%,
			rgba(255, 255, 255, 0.1) 38%,
			rgba(255, 255, 255, 0) 100%
		);
	opacity: 1;
	pointer-events: none;
	z-index: 0;
}

.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-added-feedback::after,
.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-added-feedback::after,
.candy-shop.woocommerce ul.products li.product .button.is-added-feedback::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.22) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	animation: candyButtonSheenSweep 560ms ease;
	pointer-events: none;
	z-index: 0;
}

@keyframes candyButtonSheenSweep {
	0% {
		transform: skewX(-20deg) translateX(-180%);
	}
	100% {
		transform: skewX(-20deg) translateX(420%);
	}
}

/* Product badge system */
.candy-shop.woocommerce ul.products li.product .onsale {
	display: none !important;
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badges {
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	pointer-events: none;
	max-width: calc(100% - 28px);
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 6px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.2px;
	color: #ffffff;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
	white-space: nowrap;
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge.is-sale {
	background: linear-gradient(135deg, #ff4b6e, #ff6b8a);
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge.is-outofstock {
	background: linear-gradient(135deg, #767676, #9b9b9b);
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge.is-new {
	background: linear-gradient(135deg, #5b7cff, #7a95ff);
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge.is-popular {
	background: linear-gradient(135deg, #ff9f1a, #ffbd59);
	color: #ffffff;
}

.candy-shop.woocommerce ul.products li.product .candy-shop-badge.is-sugarfree {
	background: linear-gradient(135deg, #08a05c, #20bf78);
}

/* Filter toolbar UX */
.candy-shop .candy-shop-toolbar-wrap {
	margin: 0 0 22px;
}

.candy-shop .candy-shop-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	padding: 16px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.52) 0%,
			rgba(255, 248, 251, 0.34) 42%,
			rgba(248, 244, 251, 0.28) 100%
		);
	border: 1px solid rgba(255, 255, 255, 0.38);
	border-radius: 18px;
	box-shadow:
		0 12px 30px rgba(15, 23, 42, 0.06),
		0 4px 14px rgba(255, 75, 110, 0.05),
		inset 0 1px 0 rgba(255, 255, 255, 0.72),
		inset 0 -16px 24px rgba(255, 255, 255, 0.08);
	backdrop-filter: blur(18px) saturate(1.25);
	-webkit-backdrop-filter: blur(18px) saturate(1.25);
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

.candy-shop .candy-shop-toolbar::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.34) 0%,
			rgba(255, 255, 255, 0.12) 34%,
			rgba(255, 255, 255, 0.03) 100%
		);
	pointer-events: none;
	z-index: 0;
}

.candy-shop .candy-shop-toolbar::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		radial-gradient(
			circle at top right,
			rgba(255, 107, 138, 0.12),
			rgba(255, 107, 138, 0) 42%
		),
		radial-gradient(
			circle at bottom left,
			rgba(255, 75, 110, 0.08),
			rgba(255, 75, 110, 0) 40%
		);
	pointer-events: none;
	z-index: 0;
}

.candy-shop .candy-shop-toolbar > * {
	position: relative;
	z-index: 1;
}

.candy-shop .candy-shop-toolbar__group {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.candy-shop .candy-shop-toolbar__group--price input,
.candy-shop .candy-shop-toolbar__group--sort select {
	height: 44px;
	border: 1px solid rgba(255, 255, 255, 0.42);
	border-radius: 14px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 255, 255, 0.62) 100%
		);
	padding: 0 14px;
	font-size: 14px;
	line-height: 1;
	color: #1f1f1f;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.72),
		0 4px 12px rgba(17, 24, 39, 0.04);
	outline: none;
	min-width: 120px;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition:
		border-color 0.22s ease,
		box-shadow 0.22s ease,
		background 0.22s ease,
		transform 0.22s ease;
}

.candy-shop .candy-shop-toolbar__group--price input:hover,
.candy-shop .candy-shop-toolbar__group--sort select:hover {
	border-color: rgba(255, 107, 138, 0.24);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.76),
		0 8px 18px rgba(255, 75, 110, 0.06);
}

.candy-shop .candy-shop-toolbar__group--price input:focus,
.candy-shop .candy-shop-toolbar__group--sort select:focus {
	border-color: rgba(255, 75, 110, 0.4);
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.86) 0%,
			rgba(255, 255, 255, 0.7) 100%
		);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 0 0 4px rgba(255, 75, 110, 0.08),
		0 10px 22px rgba(255, 75, 110, 0.08);
	transform: translateY(-1px);
}

.candy-shop .candy-shop-check {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 42px;
	padding: 0 14px;
	border: 1px solid rgba(255, 255, 255, 0.42);
	border-radius: 999px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.74) 0%,
			rgba(255, 255, 255, 0.58) 100%
		);
	cursor: pointer;
	font-size: 14px;
	font-weight: 600;
	color: #1f1f1f;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.74),
		0 4px 12px rgba(17, 24, 39, 0.04);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition:
		border-color 0.22s ease,
		box-shadow 0.22s ease,
		transform 0.22s ease,
		background 0.22s ease;
}

.candy-shop .candy-shop-check:hover {
	border-color: rgba(255, 75, 110, 0.24);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.76),
		0 10px 20px rgba(255, 75, 110, 0.08);
	transform: translateY(-1px);
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.8) 0%,
			rgba(255, 248, 251, 0.64) 100%
		);
}

.candy-shop .candy-shop-check input {
	margin: 0;
	accent-color: #ff4b6e;
}

.candy-shop .candy-shop-toolbar__group--actions {
	margin-left: auto;
}

.candy-shop .candy-shop-toolbar__submit,
.candy-shop .candy-shop-toolbar__clear {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	padding: 0 18px;
	border-radius: 999px;
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
	transition:
		transform 0.22s ease,
		box-shadow 0.22s ease,
		opacity 0.22s ease,
		border-color 0.22s ease,
		background 0.22s ease;
}

.candy-shop .candy-shop-toolbar__submit {
	border: 1px solid rgba(255, 255, 255, 0.16);
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%);
	color: #ffffff;
	box-shadow:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.24);
	cursor: pointer;
}

.candy-shop .candy-shop-toolbar__submit:hover {
	transform: translateY(-2px);
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26);
}

.candy-shop .candy-shop-toolbar__clear {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.72) 0%,
			rgba(255, 245, 247, 0.62) 100%
		);
	color: #d93c63;
	border: 1px solid rgba(255, 213, 222, 0.8);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.76),
		0 4px 12px rgba(255, 75, 110, 0.05);
}

.candy-shop .candy-shop-toolbar__clear:hover {
	transform: translateY(-1px);
	border-color: rgba(255, 107, 138, 0.34);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 10px 20px rgba(255, 75, 110, 0.08);
}

@media (max-width: 1024px) {
	.candy-shop.woocommerce ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.candy-shop.woocommerce ul.products li.product {
		padding: 16px !important;
		border-radius: 16px;
	}

	.candy-shop.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
	.candy-shop.woocommerce ul.products li.product > a.woocommerce-loop-product__link,
	.candy-shop.woocommerce ul.products li.product > a:first-of-type {
		min-height: 180px !important;
	}

	.candy-shop.woocommerce ul.products li.product img {
		max-height: 165px !important;
	}

	.candy-shop.woocommerce ul.products li.product h2,
	.candy-shop.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 15px !important;
	}

	.candy-shop.woocommerce ul.products li.product .price {
		font-size: 14px !important;
	}

	.candy-shop.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px !important;
	}

	.candy-shop.woocommerce ul.products li.product .candy-shop-badges {
		top: 12px;
		left: 12px;
		gap: 6px;
	}

	.candy-shop.woocommerce ul.products li.product .candy-shop-badge {
		min-height: 26px;
		padding: 5px 9px;
		font-size: 10px;
	}

	.candy-shop .candy-shop-toolbar {
		padding: 14px;
		gap: 12px;
		border-radius: 14px;
	}

	.candy-shop .candy-shop-toolbar__group,
	.candy-shop .candy-shop-toolbar__group--actions {
		width: 100%;
		margin-left: 0;
	}

	.candy-shop .candy-shop-toolbar__group--price input,
	.candy-shop .candy-shop-toolbar__group--sort select,
	.candy-shop .candy-shop-toolbar__submit,
	.candy-shop .candy-shop-toolbar__clear {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.candy-shop.woocommerce ul.products {
		grid-template-columns: 1fr;
	}
}

/* Softer effect on touch devices */
@media (hover: none) {
	.candy-shop.woocommerce ul.products li.product:hover {
		transform: none;
		box-shadow:
			0 18px 38px rgba(17, 24, 39, 0.07),
			0 6px 18px rgba(255, 75, 110, 0.05),
			0 1px 0 rgba(255, 255, 255, 0.72) inset,
			0 -18px 32px rgba(255, 255, 255, 0.16) inset;
	}

	.candy-shop.woocommerce ul.products li.product:hover::before {
		opacity: 0.72;
		filter: none;
	}

	.candy-shop.woocommerce ul.products li.product:hover::after {
		transform: none;
	}

	.candy-shop.woocommerce ul.products li.product:hover img {
		transform: none;
		filter: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.candy-shop.woocommerce ul.products li.product,
	.candy-shop.woocommerce ul.products li.product::before,
	.candy-shop.woocommerce ul.products li.product::after,
	.candy-shop.woocommerce ul.products li.product img,
	.candy-shop.woocommerce ul.products li.product .price,
	.candy-shop.woocommerce ul.products li.product h2,
	.candy-shop.woocommerce ul.products li.product .woocommerce-loop-product__title,
	.candy-shop.woocommerce ul.products li.product .button,
	.candy-shop.woocommerce ul.products li.product a.add_to_cart_button,
	.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart,
	.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-added-feedback,
	.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-added-feedback,
	.candy-shop.woocommerce ul.products li.product .button.is-added-feedback,
	.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-resetting,
	.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-resetting,
	.candy-shop.woocommerce ul.products li.product .button.is-resetting {
		transition: none !important;
		transform: none !important;
		filter: none !important;
	}

	.candy-shop.woocommerce ul.products li.product a.add_to_cart_button.is-added-feedback::before,
	.candy-shop.woocommerce ul.products li.product a.ajax_add_to_cart.is-added-feedback::before,
	.candy-shop.woocommerce ul.products li.product .button.is-added-feedback::before {
		animation: none !important;
	}
}

body.candy-shop .woocommerce-result-count {
	margin: 0 !important;
	flex: 0 0 auto !important;
	white-space: nowrap !important;
}

body.candy-shop .candy-shop-toolbar-wrap {
	margin: 0 !important;
	flex: 1 1 auto !important;
	display: flex !important;
	justify-content: flex-end !important;
}

body.candy-shop .candy-shop-toolbar {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
}

body.candy-shop .candy-shop-toolbar input,
body.candy-shop .candy-shop-toolbar select,
body.candy-shop .candy-shop-toolbar button {
	height: 40px;
}

/* Keep sticky/filter shell from clipping */
/*
body.candy-shop .site,
body.candy-shop .site-main,
body.candy-shop .content-area,
body.candy-shop .woocommerce,
body.candy-shop .elementor,
body.candy-shop .elementor-section,
body.candy-shop .elementor-container,
body.candy-shop .elementor-column,
body.candy-shop .elementor-widget-wrap,
body.candy-shop .elementor-widget-container {
	overflow: visible !important;
}*/

/* Allow overflow only where needed */
body.candy-shop .elementor-section {
	overflow: visible;
}

/* Action row polish */
body.candy-shop ul.products li.product a.button,
body.candy-shop ul.products li.product button.button {
	display: inline-flex !important;
	width: auto !important;
	float: none !important;
}

body.candy-shop .candy-shop-actions {
	display: flex !important;
	align-items: stretch !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	order: 4 !important;
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.candy-shop .candy-shop-actions > a.add_to_cart_button,
body.candy-shop .candy-shop-actions > a.ajax_add_to_cart,
body.candy-shop .candy-shop-actions > .button:not(.candy-quick-view__trigger) {
	flex: 1 1 0 !important;
}

body.candy-shop .candy-shop-actions .added_to_cart {
	display: none !important;
}

body.candy-shop .candy-shop-actions .candy-quick-view__trigger {
	margin-right: 0 !important;
}

body.candy-shop ul.products li.product > .candy-shop-actions {
	width: 100% !important;
	clear: none !important;
}

body.candy-shop ul.products li.product a.added_to_cart {
	display: none !important;
}

.candy-shop.woocommerce ul.products li.product .price {
	margin-bottom: 18px !important;
}

body.candy-shop ul.products li.product {
	border-color: rgba(231, 220, 236, 0.92) !important;
}

body.candy-shop ul.products li.product:hover {
	border-color: rgba(255, 107, 138, 0.18) !important;
}

/* Quick View modal */
body.candy-shop.candy-quick-view-open {
	overflow: hidden;
}

body.candy-shop .candy-quick-view-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;
	display: grid;
	place-items: center;
	padding: 24px 16px;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition:
		opacity 320ms ease,
		visibility 0s linear 520ms;
}

body.candy-shop .candy-quick-view-modal.is-open,
body.candy-shop .candy-quick-view-modal.is-closing {
	visibility: visible;
}

body.candy-shop .candy-quick-view-modal.is-open {
	opacity: 1;
	pointer-events: auto;
	transition:
		opacity 320ms ease,
		visibility 0s linear 0s;
}

body.candy-shop .candy-quick-view-modal.is-closing {
	opacity: 0;
	pointer-events: none;
	transition:
		opacity 360ms ease,
		visibility 0s linear 360ms;
}

body.candy-shop .candy-quick-view-modal__backdrop {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(
			circle at top,
			rgba(255, 255, 255, 0.12),
			rgba(255, 255, 255, 0) 42%
		),
		rgba(17, 24, 39, 0.36);
	backdrop-filter: blur(0px) saturate(1);
	-webkit-backdrop-filter: blur(0px) saturate(1);
	opacity: 0;
	transition:
		opacity 360ms ease,
		backdrop-filter 440ms ease,
		-webkit-backdrop-filter 440ms ease;
}

body.candy-shop .candy-quick-view-modal.is-open .candy-quick-view-modal__backdrop {
	opacity: 1;
	backdrop-filter: blur(9px) saturate(1.05);
	-webkit-backdrop-filter: blur(9px) saturate(1.05);
}

body.candy-shop .candy-quick-view-modal.is-closing .candy-quick-view-modal__backdrop {
	opacity: 0;
	backdrop-filter: blur(0px) saturate(1);
	-webkit-backdrop-filter: blur(0px) saturate(1);
}

body.candy-shop .candy-quick-view-modal__dialog {
	position: relative;
	width: min(980px, calc(100vw - 32px));
	max-height: min(calc(100vh - 48px), 900px);
	margin: 0 auto;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.96) 0%,
			rgba(255, 250, 252, 0.95) 42%,
			rgba(248, 244, 251, 0.96) 100%
		);
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 24px;
	box-shadow:
		0 28px 70px rgba(0, 0, 0, 0.18),
		0 10px 28px rgba(255, 75, 110, 0.08),
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -22px 34px rgba(255, 255, 255, 0.12);
	overflow: auto;
	opacity: 0;
	transform: translate3d(0, 36px, 0) scale(0.962);
	transform-origin: center center;
	transition:
		transform 680ms cubic-bezier(0.16, 1, 0.3, 1),
		opacity 360ms ease,
		min-height 360ms cubic-bezier(0.16, 1, 0.3, 1),
		box-shadow 320ms ease;
	will-change: transform, opacity;
	isolation: isolate;
}

body.candy-shop .candy-quick-view-modal__dialog::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.36) 0%,
			rgba(255, 255, 255, 0.12) 34%,
			rgba(255, 255, 255, 0.04) 100%
		);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view-modal__dialog::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		radial-gradient(
			circle at top right,
			rgba(255, 107, 138, 0.12),
			rgba(255, 107, 138, 0) 42%
		),
		radial-gradient(
			circle at bottom left,
			rgba(255, 75, 110, 0.07),
			rgba(255, 75, 110, 0) 40%
		);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view-modal.is-open .candy-quick-view-modal__dialog {
	transform: translate3d(0, 0, 0) scale(1);
	opacity: 1;
}

body.candy-shop .candy-quick-view-modal.is-closing .candy-quick-view-modal__dialog {
	transform: translate3d(0, 18px, 0) scale(0.985);
	opacity: 0;
}

body.candy-shop .candy-quick-view-modal__dialog.is-settling {
	overflow: hidden;
}

body.candy-shop .candy-quick-view-modal__close {
	position: absolute;
	top: 16px;
	right: 16px;
	z-index: 3;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border: 1px solid rgba(255, 255, 255, 0.52);
	border-radius: 999px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.8) 0%,
			rgba(255, 245, 247, 0.7) 100%
		);
	color: #d93c63;
	font-size: 24px;
	line-height: 1;
	cursor: pointer;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 10px 20px rgba(17, 24, 39, 0.08);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition:
		transform 0.22s ease,
		box-shadow 0.22s ease,
		border-color 0.22s ease,
		background 0.22s ease;
}

body.candy-shop .candy-quick-view-modal__close:hover {
	transform: translateY(-1px) scale(1.02);
	border-color: rgba(255, 107, 138, 0.34);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.86),
		0 14px 24px rgba(255, 75, 110, 0.12);
}

body.candy-shop .candy-quick-view-modal__content {
	padding: 32px;
	position: relative;
	min-height: 320px;
	z-index: 1;
}

body.candy-shop .candy-quick-view-modal__content.is-loading {
	display: flex;
	align-items: center;
	justify-content: center;
}

body.candy-shop .candy-quick-view-modal__stage {
	opacity: 0;
	transform: translateY(22px) scale(0.992);
	transform-origin: center top;
	transition:
		opacity 480ms ease,
		transform 680ms cubic-bezier(0.16, 1, 0.3, 1);
	will-change: opacity, transform;
}

body.candy-shop .candy-quick-view-modal__content.is-ready .candy-quick-view-modal__stage {
	opacity: 1;
	transform: translateY(0) scale(1);
}

body.candy-shop .candy-quick-view-modal__content.is-swapping .candy-quick-view-modal__stage {
	opacity: 0;
	transform: translateY(14px) scale(0.995);
}

body.candy-shop .candy-quick-view {
	display: grid;
	grid-template-columns: minmax(280px, 430px) minmax(320px, 1fr);
	gap: 32px;
	align-items: start;
}

body.candy-shop .candy-quick-view__media {
	position: relative;
	overflow: hidden;
	border-radius: 20px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.74) 0%,
			rgba(255, 247, 250, 0.68) 48%,
			rgba(246, 241, 249, 0.74) 100%
		);
	border: 1px solid rgba(255, 255, 255, 0.56);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -12px 22px rgba(255, 255, 255, 0.12),
		0 10px 28px rgba(17, 24, 39, 0.05);
}

body.candy-shop .candy-quick-view__media::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		radial-gradient(
			circle at top,
			rgba(255, 255, 255, 0.52),
			rgba(255, 255, 255, 0) 56%
		);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view__media img {
	width: 100%;
	height: auto;
	display: block;
	border-radius: 20px;
	transform: scale(1.05) translateY(10px);
	transform-origin: center center;
	opacity: 0.96;
	transition:
		transform 920ms cubic-bezier(0.16, 1, 0.3, 1),
		opacity 320ms ease,
		filter 360ms ease;
	will-change: transform, opacity;
	position: relative;
	z-index: 1;
}

body.candy-shop .candy-quick-view-modal__content.is-ready .candy-quick-view__media img {
	transform: scale(1.1) translateY(0);
	opacity: 1;
	filter: saturate(1.04) contrast(1.01);
}

body.candy-shop .candy-quick-view__summary {
	transform: translateY(12px);
	opacity: 0.96;
	transition:
		transform 660ms cubic-bezier(0.16, 1, 0.3, 1),
		opacity 320ms ease;
}

body.candy-shop .candy-quick-view-modal__content.is-ready .candy-quick-view__summary {
	transform: translateY(0);
	opacity: 1;
}

body.candy-shop .candy-quick-view__title {
	margin: 0 0 10px;
	font-size: 30px;
	line-height: 1.18;
	letter-spacing: -0.02em;
	color: #15151a;
}

body.candy-shop .candy-quick-view__price {
	margin-bottom: 14px;
	font-size: 21px;
	font-weight: 800;
	line-height: 1.3;
}

body.candy-shop .candy-quick-view__excerpt {
	margin-bottom: 20px;
	color: #4b5563;
	line-height: 1.65;
}

body.candy-shop .candy-quick-view__cart form.cart {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	align-items: center;
}

body.candy-shop .candy-quick-view__cart .quantity {
	display: inline-flex;
	align-items: stretch;
	border: 1px solid rgba(255, 255, 255, 0.56);
	border-radius: 14px;
	overflow: hidden;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.86) 0%,
			rgba(255, 255, 255, 0.72) 100%
		);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 6px 16px rgba(17, 24, 39, 0.04);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

body.candy-shop .candy-quick-view__cart .quantity input.qty {
	width: 56px;
	height: 46px;
	border: 0 !important;
	box-shadow: none !important;
	text-align: center;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent;
	-moz-appearance: textfield;
	appearance: textfield;
}

body.candy-shop .candy-quick-view__cart .quantity input.qty::-webkit-outer-spin-button,
body.candy-shop .candy-quick-view__cart .quantity input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

body.candy-shop .candy-quick-view__qty-btn {
	width: 42px;
	height: 46px;
	border: 0;
	background:
		linear-gradient(
			180deg,
			rgba(255, 245, 247, 0.96) 0%,
			rgba(255, 236, 241, 0.9) 100%
		);
	color: #d93c63;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background 0.22s ease, color 0.22s ease, transform 0.22s ease;
}

body.candy-shop .candy-quick-view__qty-btn:hover {
	background:
		linear-gradient(
			180deg,
			rgba(255, 236, 241, 1) 0%,
			rgba(255, 226, 233, 0.96) 100%
		);
	color: #c52f56;
}

body.candy-shop .candy-quick-view__qty-btn:active {
	transform: scale(0.96);
}

body.candy-shop .candy-quick-view__submit,
body.candy-shop .candy-quick-view__view-product,
body.candy-shop .candy-quick-view__cart .single_add_to_cart_button {
	min-height: 46px;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button,
body.candy-shop .candy-quick-view__cart .button.alt,
body.candy-shop .candy-quick-view__submit {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	align-self: flex-start !important;
	width: auto !important;
	min-width: 0 !important;
	padding: 13px 22px !important;
	min-height: 46px !important;
	margin-top: 0 !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: 999px !important;
	background:
		linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	color: #ffffff !important;
	font-size: 14.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
	text-align: center !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
	box-shadow:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		inset 0 -10px 18px rgba(191, 34, 77, 0.12) !important;
	transition:
		transform 0.22s ease,
		box-shadow 0.22s ease,
		filter 0.22s ease,
		background 0.22s ease,
		border-color 0.22s ease !important;
	position: relative;
	overflow: hidden;
	isolation: isolate;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button::before,
body.candy-shop .candy-quick-view__cart .button.alt::before,
body.candy-shop .candy-quick-view__submit::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.24) 0%,
			rgba(255, 255, 255, 0.1) 38%,
			rgba(255, 255, 255, 0) 100%
		);
	opacity: 0.95;
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button::after,
body.candy-shop .candy-quick-view__cart .button.alt::after,
body.candy-shop .candy-quick-view__submit::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.18) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button:hover,
body.candy-shop .candy-quick-view__cart .button.alt:hover,
body.candy-shop .candy-quick-view__submit:hover {
	transform: translateY(-2px);
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14) !important;
	filter: saturate(1.04) brightness(1.02);
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button:hover::after,
body.candy-shop .candy-quick-view__cart .button.alt:hover::after,
body.candy-shop .candy-quick-view__submit:hover::after {
	transform: skewX(-20deg) translateX(420%);
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button.is-added-feedback,
body.candy-shop .candy-quick-view__cart .button.alt.is-added-feedback,
body.candy-shop .candy-quick-view__submit.is-added-feedback {
	background: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	box-shadow:
		0 12px 24px rgba(8, 160, 92, 0.24),
		0 4px 10px rgba(32, 191, 120, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		inset 0 -10px 18px rgba(7, 122, 71, 0.12) !important;
	transform: translateY(-2px);
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button.is-resetting,
body.candy-shop .candy-quick-view__cart .button.alt.is-resetting,
body.candy-shop .candy-quick-view__submit.is-resetting {
	transition:
		background 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease,
		color 220ms ease,
		border-color 220ms ease !important;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button.is-added-feedback::before,
body.candy-shop .candy-quick-view__cart .button.alt.is-added-feedback::before,
body.candy-shop .candy-quick-view__submit.is-added-feedback::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.26) 0%,
			rgba(255, 255, 255, 0.1) 38%,
			rgba(255, 255, 255, 0) 100%
		);
	opacity: 1;
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view__cart .single_add_to_cart_button.is-added-feedback::after,
body.candy-shop .candy-quick-view__cart .button.alt.is-added-feedback::after,
body.candy-shop .candy-quick-view__submit.is-added-feedback::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255,255,255,0) 0%,
		rgba(255,255,255,0.22) 50%,
		rgba(255,255,255,0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	animation: candyButtonSheenSweep 560ms ease;
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-quick-view-modal__loading,
body.candy-shop .candy-quick-view-modal__error {
	width: 100%;
	padding: 40px 12px;
	text-align: center;
}

body.candy-shop .candy-quick-view-modal__loading {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 240px;
	color: #4b5563;
	font-weight: 600;
}

body.candy-shop .candy-quick-view-modal__loading::before {
	content: "";
	width: 20px;
	height: 20px;
	margin-right: 10px;
	border-radius: 999px;
	border: 2px solid rgba(255, 75, 110, 0.18);
	border-top-color: rgba(255, 75, 110, 0.9);
	animation: candyQuickViewSpin 0.8s linear infinite;
}

@keyframes candyQuickViewSpin {
	to {
		transform: rotate(360deg);
	}
}

/* Side cart cleanup */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__main,
body.candy-shop .elementor-menu-cart__container .widget_shopping_cart_content,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__container-inner {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	min-height: 0 !important;
}

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products::-webkit-scrollbar,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart::-webkit-scrollbar,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart::-webkit-scrollbar,
body.candy-shop .elementor-menu-cart__container ul.cart_list::-webkit-scrollbar,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget::-webkit-scrollbar {
	width: 8px;
}

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products::-webkit-scrollbar-thumb,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart::-webkit-scrollbar-thumb,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart::-webkit-scrollbar-thumb,
body.candy-shop .elementor-menu-cart__container ul.cart_list::-webkit-scrollbar-thumb,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget::-webkit-scrollbar-thumb {
	background: rgba(255, 75, 110, 0.24);
	border-radius: 999px;
}

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products::-webkit-scrollbar-track,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart::-webkit-scrollbar-track,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart::-webkit-scrollbar-track,
body.candy-shop .elementor-menu-cart__container ul.cart_list::-webkit-scrollbar-track,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget::-webkit-scrollbar-track {
	background: rgba(17, 24, 39, 0.05);
	border-radius: 999px;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.candy-shop .elementor-menu-cart__container .mini_cart_item {
	display: grid !important;
	grid-template-columns: 64px minmax(0, 1fr) 28px !important;
	column-gap: 14px !important;
	row-gap: 6px !important;
	align-items: start !important;
	margin: 0 !important;
	border-bottom: 1px solid rgba(17, 24, 39, 0.08) !important;
	position: relative !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item:first-child,
body.candy-shop .elementor-menu-cart__container .mini_cart_item:first-child {
	padding-top: 8px !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item:last-child,
body.candy-shop .elementor-menu-cart__container .mini_cart_item:last-child {
	border-bottom: 0 !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item img,
body.candy-shop .elementor-menu-cart__container .mini_cart_item img,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product-image img {
	grid-column: 1 !important;
	grid-row: 1 / span 2 !important;
	float: none !important;
	width: 72px !important;
	height: 72px !important;
	max-width: 72px !important;
	min-width: 72px !important;
	margin: 0 !important;
	padding: 6px !important;
	object-fit: contain !important;
	border-radius: 14px !important;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.88) 0%,
		rgba(248, 244, 251, 0.82) 100%
	) !important;
	border: 1px solid rgba(255, 255, 255, 0.62) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05) !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item > a:not(.remove),
body.candy-shop .elementor-menu-cart__container .mini_cart_item > a:not(.remove),
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product-name {
	grid-column: 2 !important;
	grid-row: 1 !important;
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #d93c63 !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	line-height: 1.45 !important;
	text-decoration: none !important;
}

body.candy-shop .elementor-menu-cart__container .quantity,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product-price,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item .quantity,
body.candy-shop .elementor-menu-cart__container .mini_cart_item .quantity {
	grid-column: 2 !important;
	grid-row: 2 !important;
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #b8bcc3 !important;
	font-size: 13px !important;
	font-weight: 700 !important;
	line-height: 1.4 !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item > a.remove,
body.candy-shop .elementor-menu-cart__container .mini_cart_item > a.remove {
	grid-column: 3 !important;
	grid-row: 1 / span 2 !important;
	align-self: center !important;
	justify-self: end !important;
	position: static !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 28px !important;
	height: 28px !important;
	min-width: 28px !important;
	padding: 0 !important;
	border-radius: 999px !important;
	background: rgba(255, 245, 247, 0.92) !important;
	border: 1px solid rgba(255, 213, 222, 0.8) !important;
	color: #d93c63 !important;
	font-size: 16px !important;
	line-height: 1 !important;
	text-decoration: none !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	flex: 0 0 auto !important;
	position: relative !important;
	display: block !important;
	clear: both !important;
	z-index: 2 !important;
	margin-top: 0 !important;
	margin-bottom: 16px !important;
	padding-top: 18px !important;
	border-top: 1px solid rgba(17, 24, 39, 0.08) !important;
	background: transparent !important;
}

body.candy-shop .elementor-menu-cart__container .cross-sells,
body.candy-shop .elementor-menu-cart__container .upsell,
body.candy-shop .elementor-menu-cart__container .elementor-widget-woocommerce-menu-cart__main {
	flex: 0 0 auto !important;
	margin-bottom: 12px !important;
}

/*

body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress-wrap + *,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body.candy-shop .elementor-menu-cart__container .wcf-free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-shipping-progress,
body.candy-shop .elementor-menu-cart__container [class*="free-shipping"],
body.candy-shop .elementor-menu-cart__container [class*="shipping-progress"],
body.candy-shop .elementor-menu-cart__container [class*="bundle"],
body.candy-shop .elementor-menu-cart__container [class*="addon-offer"] {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
}

*/

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons {
	display: flex !important;
	flex: 0 0 auto !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: sticky !important;
	bottom: 0 !important;
	z-index: 8 !important;
	margin-top: auto !important;
	margin-bottom: 10px !important;
	padding-top: 14px !important;
	padding-right: 8px !important;
	padding-bottom: 14px !important;
	padding-left: 8px !important;
	background: rgba(255, 255, 255, 0.86) !important;
	backdrop-filter: blur(14px) saturate(1.12) !important;
	-webkit-backdrop-filter: blur(14px) saturate(1.12) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.7) !important;
	border-radius: 18px 18px 0 0 !important;
	box-shadow:
		0 -10px 24px rgba(17, 24, 39, 0.06),
		inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.34) 0%,
		rgba(255, 255, 255, 0.12) 36%,
		rgba(255, 255, 255, 0) 100%
	);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > *,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > *,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer > * {
	position: relative;
	z-index: 1;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.button,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .checkout,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.checkout,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .wc-forward,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.wc-forward,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .button,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a.button,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .checkout,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a.checkout,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .wc-forward,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a.wc-forward,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .button,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a.button,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .checkout,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a.checkout,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .wc-forward,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a.wc-forward {
	flex: 1 1 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: auto !important;
	min-width: 0 !important;
	min-height: 46px !important;
	padding: 13px 22px !important;
	margin: 0 !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	background-color: #ff5f7f !important;
	color: #ffffff !important;
	font-size: 14.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08) !important;
	box-shadow:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		inset 0 -10px 18px rgba(191, 34, 77, 0.12) !important;
	transition:
		transform 0.24s ease,
		box-shadow 0.24s ease,
		filter 0.24s ease,
		border-color 0.24s ease !important;
	position: relative !important;
	overflow: hidden !important;
	isolation: isolate !important;
	opacity: 1 !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a::before,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .button::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a::before,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .button::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.24) 0%,
		rgba(255, 255, 255, 0.10) 38%,
		rgba(255, 255, 255, 0) 100%
	);
	opacity: 0.95;
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a::after,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .button::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .button::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.18) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:hover,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:hover,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a:hover,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .button:hover,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a:hover,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .button:hover {
	transform: translateY(-2px) !important;
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14) !important;
	filter: saturate(1.04) brightness(1.02) !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:hover::after,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:hover::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a:hover::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > .button:hover::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > a:hover::after,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons > .button:hover::after {
	transform: skewX(-20deg) translateX(420%) !important;
}

@media (max-width: 768px) {
	body.candy-shop .woocommerce-before-shop-loop {
		position: relative !important;
		top: auto !important;
		z-index: 20 !important;
		flex-direction: column !important;
		align-items: stretch !important;
		margin-bottom: 24px !important;
	}

	body.candy-shop .candy-shop-toolbar-wrap {
		justify-content: flex-start !important;
		width: 100% !important;
	}

	body.candy-shop .woocommerce ul.products,
	body.candy-shop .woocommerce-page ul.products {
		margin-top: 8px !important;
	}
}

@media (max-width: 767px) {
	body.candy-shop .woocommerce-before-shop-loop {
		padding: 10px !important;
		border-radius: 16px !important;
		margin-bottom: 18px !important;
	}

	body.candy-shop .candy-shop-toolbar {
		padding: 10px !important;
		gap: 8px !important;
	}

	body.candy-shop .candy-shop-toolbar__group {
		gap: 8px !important;
	}

	/* Put Min / Max side by side */
	body.candy-shop .candy-shop-toolbar__group--price {
		display: grid !important;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 8px !important;
		width: 100% !important;
	}

	body.candy-shop .candy-shop-toolbar__group--price input {
		width: 100% !important;
		min-width: 0 !important;
		height: 42px !important;
		padding: 0 12px !important;
		font-size: 13.5px !important;
		border-radius: 13px !important;
	}

	body.candy-shop .candy-shop-toolbar__group--sort,
	body.candy-shop .candy-shop-toolbar__group--toggles,
	body.candy-shop .candy-shop-toolbar__group--actions {
		width: 100% !important;
		margin-left: 0 !important;
	}

	body.candy-shop .candy-shop-toolbar__group--sort select {
		width: 100% !important;
		height: 42px !important;
		padding: 0 12px !important;
		font-size: 13.5px !important;
		border-radius: 13px !important;
	}

	body.candy-shop .candy-shop-check {
		min-height: 40px !important;
		padding: 0 12px !important;
		font-size: 13.5px !important;
	}

	body.candy-shop .woocommerce ul.products {
		gap: 18px !important;
	}

	body.candy-shop .woocommerce ul.products li.product:first-child {
		margin-top: 4px !important;
	}

	/* Compact mobile product card layout */
	body.candy-shop .woocommerce ul.products li.product {
		padding: 14px !important;
	}

	body.candy-shop .woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
	body.candy-shop .woocommerce ul.products li.product > a.woocommerce-loop-product__link,
	body.candy-shop .woocommerce ul.products li.product > a:first-of-type {
		min-height: 150px !important;
		margin-bottom: 10px !important;
	}

	body.candy-shop .woocommerce ul.products li.product img {
		max-height: 138px !important;
	}

	body.candy-shop .woocommerce ul.products li.product h2,
	body.candy-shop .woocommerce ul.products li.product .woocommerce-loop-product__title {
		margin-bottom: 6px !important;
		font-size: 14px !important;
		line-height: 1.35 !important;
	}

	body.candy-shop .woocommerce ul.products li.product .price {
		margin-bottom: 12px !important;
		font-size: 13.5px !important;
	}

	/* Move action row upward a bit and reduce its height */
	body.candy-shop .candy-shop-actions {
		flex-wrap: nowrap !important;
		margin-top: 6px !important;
		padding-top: 0 !important;
		gap: 8px !important;
	}

	/* Keep Apply + Clear side by side on mobile */
	body.candy-shop .candy-shop-toolbar__group--actions {
		display: flex !important;
		width: 100% !important;
		gap: 8px !important;
		margin-left: 0 !important;
	}

	body.candy-shop .candy-shop-toolbar__submit,
	body.candy-shop .candy-shop-toolbar__clear {
		flex: 1 1 0 !important;
		width: calc(50% - 4px) !important;
		min-width: 0 !important;
		min-height: 42px !important;
		padding: 0 12px !important;
		font-size: 13.5px !important;
	}

	body.candy-shop .candy-quick-view-modal {
		padding: 8px;
	}

	body.candy-shop .candy-quick-view-modal__dialog {
		width: calc(100vw - 16px);
		max-height: calc(100vh - 16px);
		border-radius: 16px;
	}

	body.candy-shop .candy-quick-view-modal__content {
		padding: 20px;
		min-height: 260px;
	}

	body.candy-shop .candy-quick-view {
		grid-template-columns: 1fr;
		gap: 20px;
	}

	body.candy-shop .candy-quick-view__cart form.cart {
		align-items: stretch;
	}

	body.candy-shop .candy-quick-view__cart .quantity {
		width: auto;
	}

	body.candy-shop .candy-quick-view__cart .single_add_to_cart_button {
		flex: 0 0 auto;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.candy-shop .candy-quick-view-modal,
	body.candy-shop .candy-quick-view-modal__backdrop,
	body.candy-shop .candy-quick-view-modal__dialog,
	body.candy-shop .candy-quick-view-modal__content,
	body.candy-shop .candy-quick-view-modal__close,
	body.candy-shop .candy-quick-view-modal__loading::before,
	body.candy-shop .candy-quick-view-modal__stage,
	body.candy-shop .candy-quick-view-modal__content.is-ready .candy-quick-view-modal__stage,
	body.candy-shop .candy-quick-view-modal__content.is-swapping .candy-quick-view-modal__stage,
	body.candy-shop .candy-quick-view-modal__dialog.is-settling,
	body.candy-shop .candy-quick-view__qty-btn,
	body.candy-shop .candy-quick-view__media img,
	body.candy-shop .candy-quick-view__summary,
	body.candy-shop .woocommerce-notices-wrapper .woocommerce-message,
	body.candy-shop .woocommerce-notices-wrapper .woocommerce-error,
	body.candy-shop .woocommerce-notices-wrapper .woocommerce-info {
		transition: none !important;
		transform: none !important;
		animation: none !important;
	}
}

@media (max-width: 767px) {
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .button,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > a.button,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > button.button,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > a.add_to_cart_button,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > a.ajax_add_to_cart,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
		font-size: 16px !important;
		line-height: 1.1 !important;
		font-weight: 800 !important;
	}
}

/* =========================================
   FOUNDATION REFACTOR TOKENS + SEARCH + BUTTON SYSTEM
========================================= */

:root {
	--candy-bg: #f8f6fb;
	--candy-surface: rgba(255, 255, 255, 0.82);
	--candy-surface-soft: rgba(255, 245, 247, 0.62);
	--candy-text: #1b1b1f;
	--candy-text-muted: #4b5563;
	--candy-primary: #ff4b6e;
	--candy-primary-2: #ff7894;
	--candy-success: #08a05c;
	--candy-border: rgba(231, 220, 236, 0.92);
	--candy-radius-pill: 999px;
	--candy-shadow-primary:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		inset 0 -10px 18px rgba(191, 34, 77, 0.12);
	--candy-shadow-secondary:
		inset 0 1px 0 rgba(255, 255, 255, 0.76),
		0 4px 12px rgba(255, 75, 110, 0.05);
}

.candy-shop .candy-shop-toolbar__group--search input {
	height: 44px;
	min-width: 260px;
	border: 1px solid rgba(255, 255, 255, 0.42);
	border-radius: 14px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 255, 255, 0.62) 100%
		);
	padding: 0 14px;
	font-size: 14px;
	line-height: 1;
	color: var(--candy-text);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.72),
		0 4px 12px rgba(17, 24, 39, 0.04);
	outline: none;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	transition:
		border-color 0.22s ease,
		box-shadow 0.22s ease,
		background 0.22s ease,
		transform 0.22s ease;
}

.candy-shop .candy-shop-toolbar__group--search input:hover {
	border-color: rgba(255, 107, 138, 0.24);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.76),
		0 8px 18px rgba(255, 75, 110, 0.06);
}

.candy-shop .candy-shop-toolbar__group--search input:focus {
	border-color: rgba(255, 75, 110, 0.4);
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.86) 0%,
			rgba(255, 255, 255, 0.7) 100%
		);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 0 0 4px rgba(255, 75, 110, 0.08),
		0 10px 22px rgba(255, 75, 110, 0.08);
	transform: translateY(-1px);
}

body.candy-shop .candy-shop-actions {
	display: flex !important;
	align-items: stretch !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	width: 100% !important;
	order: 4 !important;
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.candy-shop .candy-shop-actions__cart {
	flex: 1 1 0 !important;
	display: flex !important;
}

body.candy-shop .candy-shop-actions__cart > * {
	flex: 1 1 0 !important;
	width: 100% !important;
}

body.candy-shop .candy-shop-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 13px 18px !important;
	min-height: 46px !important;
	border-radius: var(--candy-radius-pill) !important;
	font-size: 14.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	position: relative !important;
	overflow: hidden !important;
	isolation: isolate !important;
	transition:
		transform 0.24s ease,
		box-shadow 0.24s ease,
		filter 0.24s ease,
		border-color 0.24s ease,
		background 0.24s ease,
		color 0.24s ease !important;
}

body.candy-shop .candy-shop-btn::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.24) 0%,
			rgba(255, 255, 255, 0.1) 38%,
			rgba(255, 255, 255, 0) 100%
		);
	opacity: 0.95;
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-shop-btn::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.18) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 0;
}

body.candy-shop .candy-shop-btn > * {
	position: relative;
	z-index: 1;
}

body.candy-shop .candy-shop-btn:hover {
	transform: translateY(-2px);
}

body.candy-shop .candy-shop-btn:hover::after {
	transform: skewX(-20deg) translateX(420%);
}

body.candy-shop .candy-shop-btn--primary {
	background: linear-gradient(135deg, var(--candy-primary) 0%, #ff5f7f 48%, var(--candy-primary-2) 100%) !important;
	color: #ffffff !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08);
	box-shadow: var(--candy-shadow-primary) !important;
}

body.candy-shop .candy-shop-btn--primary:hover {
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14) !important;
	filter: saturate(1.04) brightness(1.02);
}

body.candy-shop .candy-shop-btn--secondary {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.72) 0%,
			rgba(255, 245, 247, 0.62) 100%
		) !important;
	background-color: #fff7f9 !important;
	color: #d93c63 !important;
	border: 1px solid rgba(255, 213, 222, 0.8) !important;
	text-shadow: none !important;
	box-shadow: var(--candy-shadow-secondary) !important;
	filter: none !important;
}

body.candy-shop .candy-shop-btn--secondary::before {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.38) 0%,
			rgba(255, 255, 255, 0.14) 38%,
			rgba(255, 255, 255, 0) 100%
		) !important;
}

body.candy-shop .candy-shop-btn--secondary::after {
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.32) 50%,
		rgba(255, 255, 255, 0) 100%
	) !important;
}

body.candy-shop .candy-shop-btn--secondary:hover {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.82) 0%,
			rgba(255, 245, 247, 0.72) 100%
		) !important;
	color: #d93c63 !important;
	border-color: rgba(255, 107, 138, 0.34) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 10px 20px rgba(255, 75, 110, 0.08) !important;
	filter: none !important;
}

body.candy-shop .candy-shop-actions__cart .candy-shop-btn--primary.added,
body.candy-shop .candy-shop-actions__cart .candy-shop-btn--primary.is-added-feedback,
body.candy-shop .candy-shop-actions__cart .candy-shop-btn--secondary.added,
body.candy-shop .candy-shop-actions__cart .candy-shop-btn--secondary.is-added-feedback {
	background: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	background-image: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	background-color: #1bb56f !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08) !important;
	box-shadow:
		0 12px 24px rgba(8, 160, 92, 0.24),
		0 4px 10px rgba(32, 191, 120, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		inset 0 -10px 18px rgba(7, 122, 71, 0.12) !important;
}

body.candy-shop .candy-shop-btn:focus-visible,
body.candy-shop .candy-shop-toolbar input:focus-visible,
body.candy-shop .candy-shop-toolbar select:focus-visible,
body.candy-shop .candy-shop-toolbar button:focus-visible,
body.candy-shop .candy-shop-toolbar a:focus-visible,
body.candy-shop .candy-quick-view-modal__close:focus-visible {
	outline: 0 !important;
	box-shadow:
		0 0 0 4px rgba(255, 75, 110, 0.14),
		0 10px 22px rgba(255, 75, 110, 0.08) !important;
}

@media (max-width: 767px) {
	.candy-shop .candy-shop-toolbar__group--search,
	.candy-shop .candy-shop-toolbar__group--search input {
		width: 100%;
		min-width: 0;
	}

	body.candy-shop .candy-shop-actions {
		gap: 8px !important;
		padding-top: 0 !important;
	}
}

/* Search field on its own row under the filters */
.candy-shop .candy-shop-toolbar__group--search {
	flex: 0 0 100%;
	width: 100%;
}

.candy-shop .candy-shop-toolbar__group--search input {
	width: 100%;
	min-width: 0 !important;
}


/* Inline empty search state */
body.candy-shop .candy-shop-empty-search {
	margin: 24px 0 8px;
	padding: 28px 24px;
	border-radius: 22px;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.88) 0%,
			rgba(255, 248, 251, 0.84) 100%
		);
	border: 1px solid rgba(231, 220, 236, 0.92);
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05);
	text-align: center;
	outline: none;
}

body.candy-shop .candy-shop-empty-search__title {
	margin: 0 0 10px;
	font-size: 28px;
	line-height: 1.2;
	color: #1b1b1f;
}

body.candy-shop .candy-shop-empty-search__text {
	margin: 0 0 18px;
	font-size: 15px;
	line-height: 1.6;
	color: #4b5563;
}

body.candy-shop .candy-shop-empty-search__actions {
	display: flex;
	justify-content: center;
	margin-bottom: 10px;
}

body.candy-shop .candy-shop-empty-search__back {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	padding: 0 20px;
	border-radius: 999px;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%);
	color: #fff !important;
	text-decoration: none;
	font-weight: 800;
	box-shadow:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12);
}

body.candy-shop .candy-shop-empty-search__hint {
	margin: 0;
	font-size: 13px;
	color: #6b7280;
}

@media (max-width: 767px) {
	body.candy-shop .candy-shop-empty-search {
		padding: 22px 16px;
		border-radius: 16px;
	}

	body.candy-shop .candy-shop-empty-search__title {
		font-size: 22px;
	}
}

body.candy-shop .candy-shop-empty-search:focus {
	outline: none;
	box-shadow:
		0 0 0 4px rgba(255, 75, 110, 0.10),
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05);
}

/* ===== Homepage product section should inherit shop card look ===== */
body.home .candy-home-products ul.products,
body.home .candy-home-products .products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.home .candy-home-products ul.products::before,
body.home .candy-home-products ul.products::after,
body.home .candy-home-products .products::before,
body.home .candy-home-products .products::after {
	display: none !important;
	content: none !important;
}

body.home .candy-home-products ul.products li.product,
body.home .candy-home-products .products li.product {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.82) 0%,
			rgba(255, 248, 251, 0.78) 46%,
			rgba(247, 243, 250, 0.84) 100%
		) !important;
	border: 1px solid rgba(231, 220, 236, 0.92) !important;
	border-radius: 22px !important;
	padding: 18px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05),
		0 1px 0 rgba(255, 255, 255, 0.72) inset,
		0 -18px 32px rgba(255, 255, 255, 0.16) inset !important;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
	overflow: hidden !important;
	position: relative !important;
	margin: 0 !important;
	width: 100% !important;
	float: none !important;
	clear: none !important;
}

body.home .candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link,
body.home .candy-home-products ul.products li.product > a.woocommerce-loop-product__link,
body.home .candy-home-products .products li.product > a.woocommerce-LoopProduct-link,
body.home .candy-home-products .products li.product > a.woocommerce-loop-product__link {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 198px !important;
	margin: 0 0 12px !important;
	border-radius: 18px !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 247, 250, 0.7) 48%,
			rgba(246, 241, 249, 0.76) 100%
		) !important;
	border: 1px solid rgba(255, 255, 255, 0.58) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -10px 20px rgba(255, 255, 255, 0.16),
		0 8px 22px rgba(17, 24, 39, 0.04) !important;
	overflow: hidden !important;
}

body.home .candy-home-products ul.products li.product img,
body.home .candy-home-products .products li.product img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 205px !important;
	margin: 0 auto !important;
}

body.home .candy-home-products ul.products li.product h2,
body.home .candy-home-products ul.products li.product .woocommerce-loop-product__title,
body.home .candy-home-products .products li.product h2,
body.home .candy-home-products .products li.product .woocommerce-loop-product__title {
	margin: 0 0 7px !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	color: #1b1b1f !important;
	text-align: left !important;
}

body.home .candy-home-products ul.products li.product .price,
body.home .candy-home-products .products li.product .price {
	margin: 0 0 12px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	color: #08985a !important;
	text-align: left !important;
}

@media (max-width: 1024px) {
	body.home .candy-home-products ul.products,
	body.home .candy-home-products .products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	body.home .candy-home-products ul.products,
	body.home .candy-home-products .products {
		grid-template-columns: 1fr !important;
	}
}

/* ===== HOMEPAGE: HIDE DEFAULT LOOP ADD TO CART, KEEP CUSTOM ACTION ROW ===== */

body.home .candy-home-products ul.products li.product > a.add_to_cart_button,
body.home .candy-home-products ul.products li.product > a.ajax_add_to_cart,
body.home .candy-home-products ul.products li.product > .button:not(.candy-quick-view__trigger),
body.home .candy-home-products ul.products li.product > a.button:not(.candy-quick-view__trigger) {
	display: none !important;
}

/* ===== HOME + SHOP: CONSISTENT ACTION ROW ===== */

body.home .candy-home-products .candy-shop-actions,
body.candy-shop ul.products li.product .candy-shop-actions {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 12px !important;
	align-items: stretch !important;
	width: 100% !important;
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-quick-view__trigger,
body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	display: block !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	display: block !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > a,
body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > .button,
body.home .candy-home-products .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	height: 46px !important;
	min-height: 46px !important;
	padding: 0 16px !important;
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	line-height: 1 !important;
	align-self: stretch !important;
	white-space: nowrap !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
	order: 1 !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	order: 2 !important;
}

@media (max-width: 767px) {
	body.home .candy-home-products .candy-shop-actions,
	body.candy-shop ul.products li.product .candy-shop-actions {
		gap: 8px !important;
		padding-top: 0 !important;
	}

	body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > a,
	body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > .button,
	body.home .candy-home-products .candy-shop-actions > .candy-quick-view__trigger,
	body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
	body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
	body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
		height: 40px !important;
		min-height: 40px !important;
		padding: 0 12px !important;
		font-size: 15px !important;
	}
}



/* =========================================================
   GLOBAL QUICK VIEW BUTTON OVERRIDE
   Works on homepage + shop cards
   ========================================================= */

body .candy-shop-actions > .candy-quick-view__trigger,
body .candy-shop-actions > button.candy-shop-btn--secondary,
body .candy-shop-actions > .button.candy-shop-btn--secondary,
body .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body .woocommerce-page ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.94) 0%,
			rgba(255, 245, 247, 0.90) 100%
		) !important;
	color: #d93c63 !important;
	border: 1px solid rgba(255, 213, 222, 0.82) !important;
	text-shadow: none !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05),
		0 4px 10px rgba(255, 75, 110, 0.05) !important;
	filter: none !important;
}

body .candy-shop-actions > .candy-quick-view__trigger::before,
body .candy-shop-actions > button.candy-shop-btn--secondary::before,
body .candy-shop-actions > .button.candy-shop-btn--secondary::before,
body .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger::before,
body .woocommerce-page ul.products li.product .candy-shop-actions > .candy-quick-view__trigger::before {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.42) 0%,
			rgba(255, 255, 255, 0.16) 100%
		) !important;
	opacity: 1 !important;
}

body .candy-shop-actions > .candy-quick-view__trigger::after,
body .candy-shop-actions > button.candy-shop-btn--secondary::after,
body .candy-shop-actions > .button.candy-shop-btn--secondary::after,
body .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger::after,
body .woocommerce-page ul.products li.product .candy-shop-actions > .candy-quick-view__trigger::after {
	display: none !important;
	content: none !important;
}

body .candy-shop-actions > .candy-quick-view__trigger:hover,
body .candy-shop-actions > button.candy-shop-btn--secondary:hover,
body .candy-shop-actions > .button.candy-shop-btn--secondary:hover,
body .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger:hover,
body .woocommerce-page ul.products li.product .candy-shop-actions > .candy-quick-view__trigger:hover {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.98) 0%,
			rgba(255, 240, 244, 0.94) 100%
		) !important;
	color: #c52f56 !important;
	border-color: rgba(255, 107, 138, 0.34) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.88),
		0 10px 20px rgba(255, 75, 110, 0.08) !important;
	filter: none !important;
}

/* FORCE 4 full mini-cart items before subtotal */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container ul.cart_list,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container ul.cart_list,
body.candy-home .elementor-menu-cart__container ul.product_list_widget {
	height: 300px !important;
	max-height: 300px !important;
	min-height: 300px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
}

/* Tighten each row so the 4th item fits fully */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.candy-shop .elementor-menu-cart__container .mini_cart_item,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product,
body.candy-shop .elementor-menu-cart__container li.mini_cart_item,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.candy-home .elementor-menu-cart__container .mini_cart_item,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__product,
body.candy-home .elementor-menu-cart__container li.mini_cart_item,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.woocommerce-cart .elementor-menu-cart__container .mini_cart_item,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__product,
body.woocommerce-cart .elementor-menu-cart__container li.mini_cart_item,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.woocommerce-checkout .elementor-menu-cart__container .mini_cart_item,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__product,
body.woocommerce-checkout .elementor-menu-cart__container li.mini_cart_item {
	min-height: 74px !important;
	padding: 8px 0 !important;
	box-sizing: border-box !important;
}

/* Prevent titles from making rows taller */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item > a:not(.remove),
body.candy-shop .elementor-menu-cart__container .mini_cart_item > a:not(.remove),
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product-name,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart-item > a:not(.remove),
body.candy-home .elementor-menu-cart__container .mini_cart_item > a:not(.remove),
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__product-name {
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	line-height: 1.35 !important;
	max-height: 2.7em !important;
}

/* Hover state */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons .button:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons .button:first-child:hover {
	background: #fff5f7 !important;
	color: #ff4f6d !important;
	border-color: #ff4f6d !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:first-child::before,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:first-child::before,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.button:first-child::before,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .wc-forward:first-child::before,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.wc-forward:first-child::before,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:first-child::before,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:first-child::before,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.button:first-child::before,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .wc-forward:first-child::before,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.wc-forward:first-child::before {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.42) 0%,
		rgba(255, 255, 255, 0.16) 100%
	) !important;
	opacity: 1 !important;
}

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:first-child:hover,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:first-child:hover,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.button:first-child:hover,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .wc-forward:first-child:hover,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.wc-forward:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .button:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.button:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > .wc-forward:first-child:hover,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a.wc-forward:first-child:hover {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.98) 0%,
		rgba(255, 240, 244, 0.92) 100%
	) !important;
	background-color: #fffafb !important;
	color: #c52f56 !important;
	border-color: rgba(255, 107, 138, 0.34) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.88),
		0 10px 20px rgba(255, 75, 110, 0.08) !important;
	filter: none !important;
}

/* Force mini-cart View cart button to white */
body.candy-shop .elementor-menu-cart__container a.elementor-button--view-cart,
body.candy-home .elementor-menu-cart__container a.elementor-button--view-cart {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.92) 0%,
		rgba(255, 245, 247, 0.86) 100%
	) !important;
	background-color: #fff7f9 !important;
	color: #d93c63 !important;
	border: 1px solid rgba(255, 213, 222, 0.82) !important;
	text-shadow: none !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05),
		0 4px 10px rgba(255, 75, 110, 0.05) !important;
	filter: none !important;
}

body.candy-shop .elementor-menu-cart__container a.elementor-button--view-cart::before,
body.candy-home .elementor-menu-cart__container a.elementor-button--view-cart::before {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.42) 0%,
		rgba(255, 255, 255, 0.16) 100%
	) !important;
	opacity: 1 !important;
}

body.candy-shop .elementor-menu-cart__container a.elementor-button--view-cart:hover,
body.candy-home .elementor-menu-cart__container a.elementor-button--view-cart:hover {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.98) 0%,
		rgba(255, 240, 244, 0.92) 100%
	) !important;
	background-color: #fffafb !important;
	color: #c52f56 !important;
	border-color: rgba(255, 107, 138, 0.34) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.88),
		0 10px 20px rgba(255, 75, 110, 0.08) !important;
	filter: none !important;
}

/* Cart page drawer should match shop/home drawer */
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-cart .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__container-inner {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	min-height: 0 !important;
}

/* Checkout page drawer should match shop/home/cart drawer */
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-checkout .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__container-inner {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	min-height: 0 !important;
}

body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container ul.cart_list,
body.woocommerce-checkout .elementor-menu-cart__container ul.product_list_widget {
	height: 356px !important;
	max-height: 356px !important;
	min-height: 356px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding-right: 6px !important;
	margin: 0 0 18px !important;
	scrollbar-width: thin;
}

body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.woocommerce-checkout .elementor-menu-cart__container .mini_cart_item,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__product,
body.woocommerce-checkout .elementor-menu-cart__container li.mini_cart_item {
	min-height: 82px !important;
	padding: 10px 0 !important;
	box-sizing: border-box !important;
}

body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart-item > a:not(.remove),
body.woocommerce-checkout .elementor-menu-cart__container .mini_cart_item > a:not(.remove),
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__product-name {
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	line-height: 1.35 !important;
	max-height: 2.7em !important;
}

body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons {
	display: flex !important;
	flex: 0 0 auto !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: sticky !important;
	bottom: 0 !important;
	z-index: 8 !important;
	margin-top: auto !important;
	margin-bottom: 10px !important;
	padding: 14px 8px !important;
	background: rgba(255, 255, 255, 0.86) !important;
	backdrop-filter: blur(14px) saturate(1.12) !important;
	-webkit-backdrop-filter: blur(14px) saturate(1.12) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.7) !important;
	border-radius: 18px 18px 0 0 !important;
	box-shadow:
		0 -10px 24px rgba(17, 24, 39, 0.06),
		inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}

body.woocommerce-checkout .elementor-menu-cart__container a.elementor-button--view-cart {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.92) 0%,
		rgba(255, 245, 247, 0.86) 100%
	) !important;
	background-color: #fff7f9 !important;
	color: #d93c63 !important;
	border: 1px solid rgba(255, 213, 222, 0.82) !important;
	text-shadow: none !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05),
		0 4px 10px rgba(255, 75, 110, 0.05) !important;
	filter: none !important;
}

body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container ul.cart_list,
body.woocommerce-cart .elementor-menu-cart__container ul.product_list_widget {
	height: 356px !important;
	max-height: 356px !important;
	min-height: 356px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding-right: 6px !important;
	margin: 0 0 18px !important;
	scrollbar-width: thin;
}

body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.woocommerce-cart .elementor-menu-cart__container .mini_cart_item,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__product,
body.woocommerce-cart .elementor-menu-cart__container li.mini_cart_item {
	min-height: 82px !important;
	padding: 10px 0 !important;
	box-sizing: border-box !important;
}

body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart-item > a:not(.remove),
body.woocommerce-cart .elementor-menu-cart__container .mini_cart_item > a:not(.remove),
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__product-name {
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	line-height: 1.35 !important;
	max-height: 2.7em !important;
}

body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer .woocommerce-mini-cart__buttons {
	display: flex !important;
	flex: 0 0 auto !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: sticky !important;
	bottom: 0 !important;
	z-index: 8 !important;
	margin-top: auto !important;
	margin-bottom: 10px !important;
	padding: 14px 8px !important;
	background: rgba(255, 255, 255, 0.86) !important;
	backdrop-filter: blur(14px) saturate(1.12) !important;
	-webkit-backdrop-filter: blur(14px) saturate(1.12) !important;
	border-top: 1px solid rgba(255, 255, 255, 0.7) !important;
	border-radius: 18px 18px 0 0 !important;
	box-shadow:
		0 -10px 24px rgba(17, 24, 39, 0.06),
		inset 0 1px 0 rgba(255, 255, 255, 0.8) !important;
}

body.woocommerce-cart .elementor-menu-cart__container a.elementor-button--view-cart {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.92) 0%,
		rgba(255, 245, 247, 0.86) 100%
	) !important;
	background-color: #fff7f9 !important;
	color: #d93c63 !important;
	border: 1px solid rgba(255, 213, 222, 0.82) !important;
	text-shadow: none !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05),
		0 4px 10px rgba(255, 75, 110, 0.05) !important;
	filter: none !important;
}

/* ===== Header: outer shell only, inner containers clean ===== */

/* Keep only the outermost header visible */
.elementor-location-header,
.site-header {
	z-index: 50;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.88) 0%,
			rgba(255, 248, 251, 0.84) 52%,
			rgba(248, 244, 251, 0.86) 100%
		) !important;
	border: 1px solid rgba(255, 255, 255, 0.62) !important;
	border-radius: 24px !important;
	box-shadow:
		0 14px 36px rgba(17, 24, 39, 0.05),
		0 4px 14px rgba(255, 75, 110, 0.04),
		inset 0 1px 0 rgba(255, 255, 255, 0.82) !important;
	backdrop-filter: blur(14px) saturate(1.08);
	-webkit-backdrop-filter: blur(14px) saturate(1.08);
	overflow: hidden;
	isolation: isolate;
}

/* Gloss only on outer shell */
.elementor-location-header::before,
.site-header::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.28) 0%,
		rgba(255, 255, 255, 0.08) 38%,
		rgba(255, 255, 255, 0.02) 100%
	);
	pointer-events: none;
	z-index: 0;
}

.elementor-location-header > *,
.site-header > * {
	position: relative;
	z-index: 1;
}

/* Strip visible boxes from all inner header containers */
.elementor-location-header .elementor-section,
.elementor-location-header .elementor-container,
.elementor-location-header .e-con,
.elementor-location-header .elementor-column,
.elementor-location-header .elementor-widget-wrap {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	backdrop-filter: none !important;
	-webkit-backdrop-filter: none !important;
	border-radius: 0 !important;
}

/* Nav links stay polished, but understated */
.elementor-location-header .elementor-nav-menu .elementor-item {
	position: relative;
	font-weight: 700;
	letter-spacing: 0.01em;
	color: #2a2a2f !important;
	transition:
		color 0.22s ease,
		transform 0.22s ease,
		opacity 0.22s ease;
}

.elementor-location-header .elementor-nav-menu .elementor-item:hover {
	color: #ff4b6e !important;
	transform: translateY(-1px);
}

.elementor-location-header .elementor-nav-menu .elementor-item.elementor-item-active {
	color: #ff4b6e !important;
}

.elementor-location-header .elementor-nav-menu .elementor-item.elementor-item-active::after,
.elementor-location-header .elementor-nav-menu .elementor-item:hover::after {
	content: "";
	position: absolute;
	left: 20%;
	right: 20%;
	bottom: 10px;
	height: 3px;
	border-radius: 999px;
	background: linear-gradient(90deg, #7bdc74 0%, #55c96d 100%);
}


/* ===== Header cart ===== */

/* reset outer cart chrome only */
.elementor-location-header .elementor-widget-woocommerce-menu-cart,
.elementor-location-header .elementor-widget-woocommerce-menu-cart .elementor-widget-container,
.elementor-location-header .elementor-menu-cart__wrapper,
.elementor-location-header .elementor-menu-cart__toggle_wrapper,
.elementor-location-header .elementor-menu-cart__toggle,
.elementor-location-header .elementor-widget-woocommerce-menu-cart a.elementor-menu-cart__toggle {
	background: transparent !important;
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

/* actual hover target */
.elementor-location-header .elementor-menu-cart__toggle,
.elementor-location-header .elementor-widget-woocommerce-menu-cart a.elementor-menu-cart__toggle {
	position: relative !important;
	overflow: hidden !important;
	isolation: isolate !important;
	transition:
		transform 0.22s ease,
		color 0.22s ease !important;
}

/* clean only the cart text/icon wrappers, not every descendant */
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-text,
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon,
.elementor-location-header .elementor-menu-cart__toggle svg,
.elementor-location-header .elementor-menu-cart__toggle i {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}

/* cart color */
.elementor-location-header .elementor-menu-cart__toggle,
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-text,
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon,
.elementor-location-header .elementor-menu-cart__toggle svg,
.elementor-location-header .elementor-menu-cart__toggle i {
	color: #ff4b6e !important;
	fill: #ff4b6e !important;
	stroke: currentColor !important;
}

.elementor-location-header .elementor-menu-cart__toggle:hover,
.elementor-location-header .elementor-menu-cart__toggle:hover .elementor-button-text,
.elementor-location-header .elementor-menu-cart__toggle:hover .elementor-button-icon,
.elementor-location-header .elementor-menu-cart__toggle:hover svg,
.elementor-location-header .elementor-menu-cart__toggle:hover i {
	color: #d93c63 !important;
	fill: #d93c63 !important;
	stroke: currentColor !important;
}

/* hover effect: bigger only */
.elementor-location-header .elementor-menu-cart__toggle:hover,
.elementor-location-header .elementor-widget-woocommerce-menu-cart a.elementor-menu-cart__toggle:hover {
	transform: scale(1.06) !important;
}

/* glass shimmer */
.elementor-location-header .elementor-menu-cart__toggle::after,
.elementor-location-header .elementor-widget-woocommerce-menu-cart a.elementor-menu-cart__toggle::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -38%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.34) 48%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition:
		transform 0.7s cubic-bezier(0.22, 1, 0.36, 1),
		opacity 0.2s ease;
	pointer-events: none;
	opacity: 0;
	z-index: 2;
}

.elementor-location-header .elementor-menu-cart__toggle:hover::after,
.elementor-location-header .elementor-widget-woocommerce-menu-cart a.elementor-menu-cart__toggle:hover::after {
	opacity: 1;
	transform: skewX(-20deg) translateX(430%);
}

/* anchor badge to icon */
.elementor-location-header .elementor-menu-cart__toggle .elementor-button-icon,
.elementor-location-header .elementor-menu-cart__toggle .elementor-menu-cart__toggle_button {
	position: relative !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

/* cart count bubble */
.elementor-location-header .elementor-button-icon-qty,
.elementor-location-header .elementor-menu-cart__toggle_count,
.elementor-location-header .elementor-menu-cart__toggle_count_badge,
.elementor-location-header .elementor-menu-cart__counter {
	position: absolute !important;
	top: -7px !important;
	right: -10px !important;
	width: 20px !important;
	height: 20px !important;
	min-width: 20px !important;
	min-height: 20px !important;
	margin: 0 !important;
	padding: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: #ff4b6e !important;
	background-color: #ff4b6e !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	font-size: 11px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	text-align: center !important;
	text-indent: 0 !important;
	border: 2px solid #ffffff !important;
	border-radius: 999px !important;
	box-shadow: 0 4px 10px rgba(255, 75, 110, 0.22) !important;
	overflow: hidden !important;
	opacity: 1 !important;
	z-index: 6 !important;
}

/* remove pseudo/inherited badge weirdness */
.elementor-location-header .elementor-button-icon-qty::before,
.elementor-location-header .elementor-button-icon-qty::after,
.elementor-location-header .elementor-menu-cart__toggle_count::before,
.elementor-location-header .elementor-menu-cart__toggle_count::after,
.elementor-location-header .elementor-menu-cart__toggle_count_badge::before,
.elementor-location-header .elementor-menu-cart__toggle_count_badge::after,
.elementor-location-header .elementor-menu-cart__counter::before,
.elementor-location-header .elementor-menu-cart__counter::after {
	content: none !important;
	display: none !important;
}

.elementor-location-header .elementor-button-icon-qty *,
.elementor-location-header .elementor-menu-cart__toggle_count *,
.elementor-location-header .elementor-menu-cart__toggle_count_badge *,
.elementor-location-header .elementor-menu-cart__counter * {
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	line-height: 1 !important;
}

html, body {
	overflow-x: hidden;
}

body.candy-shop .elementor-section,
body.candy-shop .elementor-container {
	max-width: 100%;
	overflow-x: clip;
}


/* ===== FINAL MINI-CART DRAWER OVERRIDES ===== */

/* Keep drawer fixed and self-contained */
body.candy-shop .elementor-menu-cart__container,
body.candy-home .elementor-menu-cart__container,
body.woocommerce-cart .elementor-menu-cart__container,
body.woocommerce-checkout .elementor-menu-cart__container {
	position: fixed !important;
	top: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	left: auto !important;
	width: min(420px, 100vw) !important;
	height: 100vh !important;
	max-width: 100vw !important;
	margin: 0 !important;
	padding: 0 0 10px !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
	z-index: 999999 !important;
}

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__main,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__main,
body.candy-shop .elementor-menu-cart__container .widget_shopping_cart_content,
body.candy-home .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-cart .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-checkout .elementor-menu-cart__container .widget_shopping_cart_content {
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
	align-content: flex-start !important;
	height: 100% !important;
	min-height: 0 !important;
}

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__main > *,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__main > *,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__main > *,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__main > *,
body.candy-shop .elementor-menu-cart__container .widget_shopping_cart_content > *,
body.candy-home .elementor-menu-cart__container .widget_shopping_cart_content > *,
body.woocommerce-cart .elementor-menu-cart__container .widget_shopping_cart_content > *,
body.woocommerce-checkout .elementor-menu-cart__container .widget_shopping_cart_content > * {
	margin-top: 0 !important;
	align-self: stretch !important;
}

/* Hide Elementor's native mini-cart footer/buttons, keep subtotal visible */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer {
	display: none !important;
}

/* Show only about 4 items, then scroll */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container ul.cart_list,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container ul.cart_list,
body.candy-home .elementor-menu-cart__container ul.product_list_widget {
	flex: 0 0 auto !important;
	height: 230px !important;
	max-height: 230px !important;
	min-height: 230px !important;
	margin: 0 0 10px !important;
	padding-right: 6px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
}

/* Tighten subtotal and upsell spacing so lower blocks sit higher */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	flex: 0 0 auto !important;
	margin: 0 0 8px !important;
	padding: 10px 0 8px !important;
	border-top: 1px solid rgba(17, 24, 39, 0.08) !important;
	background: transparent !important;
}

body.candy-shop .elementor-menu-cart__container .cross-sells,
body.candy-shop .elementor-menu-cart__container .upsell,
body.candy-shop .elementor-menu-cart__container .elementor-widget-woocommerce-menu-cart__main,
body.candy-home .elementor-menu-cart__container .cross-sells,
body.candy-home .elementor-menu-cart__container .upsell,
body.candy-home .elementor-menu-cart__container .elementor-widget-woocommerce-menu-cart__main {
	flex: 0 0 auto !important;
	margin: 0 0 8px !important;
}

body.candy-shop .custom-mini-cart-buttons a,
body.candy-home .custom-mini-cart-buttons a {
	display: block !important;
	width: 100% !important;
	text-align: center !important;
	margin: 0 0 8px !important;
	padding: 12px !important;
	border-radius: 14px !important;
}

body.candy-shop .custom-mini-cart-buttons a:last-child,
body.candy-home .custom-mini-cart-buttons a:last-child {
	margin-bottom: 0 !important;
}

@media (max-width: 767px) {
	body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
	body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
	body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
	body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart {
		height: 218px !important;
		max-height: 218px !important;
		min-height: 218px !important;
	}
}

/* ===== MINI-CART: use Elementor native footer only ===== */

/* Hide custom fallback footer if it still exists anywhere */
body.candy-shop .custom-mini-cart-buttons,
body.candy-home .custom-mini-cart-buttons,
body.woocommerce-cart .custom-mini-cart-buttons,
body.woocommerce-checkout .custom-mini-cart-buttons {
	display: none !important;
}

/* Re-enable Elementor native footer/buttons */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: sticky !important;
	bottom: 0 !important;
	z-index: 12 !important;
	gap: 10px !important;
	padding: 12px 10px 10px !important;
	margin: 0 !important;
	background: #fff !important;
	border-top: 1px solid rgba(17, 24, 39, 0.08) !important;
}

/* Keep native buttons visible and balanced */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a {
	flex: 1 1 0 !important;
	margin: 0 !important;
}

/* FINAL CART HEIGHT */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart {
	height: 410px !important;
	max-height: 410px !important;
	min-height: 410px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
}

/* Tighten subtotal spacing slightly */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: -10px 8px 10px;
	padding: 8px 0 4px !important;
}

/* Tighten upsell spacing slightly */
body.candy-shop .elementor-menu-cart__container .cross-sells,
body.candy-shop .elementor-menu-cart__container .upsell,
body.candy-shop .elementor-menu-cart__container .elementor-widget-woocommerce-menu-cart__main,
body.candy-home .elementor-menu-cart__container .cross-sells,
body.candy-home .elementor-menu-cart__container .upsell,
body.candy-home .elementor-menu-cart__container .elementor-widget-woocommerce-menu-cart__main {
	margin: 0 0 8px !important;
}

body.candy-shop .woocommerce-mini-cart__buttons a.checkout,
body.candy-home .woocommerce-mini-cart__buttons a.checkout {
	background: linear-gradient(135deg, #ff4d6d, #ff7a8a);
	box-shadow: 0 6px 18px rgba(255, 77, 109, 0.35);
	border: none;
}

body.candy-shop .woocommerce-mini-cart__buttons a:hover,
body.candy-home .woocommerce-mini-cart__buttons a:hover {
	transform: translateY(-1px);
}

body.candy-shop .woocommerce-mini-cart::-webkit-scrollbar,
body.candy-home .woocommerce-mini-cart::-webkit-scrollbar {
	width: 6px;
}

body.candy-shop .woocommerce-mini-cart::-webkit-scrollbar-thumb,
body.candy-home .woocommerce-mini-cart::-webkit-scrollbar-thumb {
	background: rgba(255, 77, 109, 0.3);
	border-radius: 10px;
}

body.candy-shop .woocommerce-mini-cart__total,
body.candy-home .woocommerce-mini-cart__total {
	padding-bottom: 6px;
}

/* Shop + Candy: when mini-cart drawer is open, move sticky filter area left */
body.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop {
	margin-right: calc(min(420px, 100vw) + 18px) !important;
}

/* Keep inner toolbar aligned nicely after the shift */
body.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .candy-shop-toolbar-wrap {
	flex: 1 1 auto !important;
	min-width: 0 !important;
}

/* Prevent this behavior on smaller screens where the drawer already dominates layout */
@media (max-width: 1024px) {
	body.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop {
		margin-right: 0 !important;
	}
}

.woocommerce-before-shop-loop {
	transition: margin-right 0.28s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ===== Footer refinement ===== */

footer,
.elementor-location-footer {
	background: #f8f6fb;
	border-top: 1px solid rgba(17, 24, 39, 0.10);
}

.elementor-location-footer .elementor-section,
.elementor-location-footer .elementor-container,
.elementor-location-footer .e-con {
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
}

.elementor-location-footer {
	padding-top: 18px;
}

.elementor-location-footer .elementor-widget-heading h2,
.elementor-location-footer .elementor-widget-heading h3,
.elementor-location-footer .elementor-widget-heading h4,
.elementor-location-footer .elementor-heading-title {
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.01em;
	color: #1b1b1f !important;
	margin-bottom: 14px !important;
}

.elementor-location-footer p,
.elementor-location-footer .elementor-widget-text-editor,
.elementor-location-footer .elementor-widget-text-editor p {
	font-size: 14px !important;
	line-height: 1.7 !important;
	color: #6b7280 !important;
	margin-bottom: 0 !important;
}

.elementor-location-footer a {
	color: #6b7280 !important;
	text-decoration: none !important;
	transition: color 0.22s ease, transform 0.22s ease;
}

.elementor-location-footer a:hover {
	color: #d93c63 !important;
}

.elementor-location-footer ul,
.elementor-location-footer .elementor-icon-list-items {
	margin: 0 !important;
	padding: 0 !important;
}

.elementor-location-footer li,
.elementor-location-footer .elementor-icon-list-item {
	margin-bottom: 10px !important;
}

.elementor-location-footer img {
	max-width: 110px !important;
	height: auto !important;
}

.elementor-location-footer .elementor-widget-image {
	margin-bottom: 14px !important;
}

/* tighten oversized footer section spacing */
.elementor-location-footer .elementor-top-section,
.elementor-location-footer .e-con {
	padding-top: 22px !important;
	padding-bottom: 22px !important;
}

/* make the small trust/delivery note feel intentional */
.elementor-location-footer .elementor-widget-text-editor:last-child,
.elementor-location-footer .elementor-widget-icon-list:last-child {
	margin-top: 14px !important;
	font-size: 13px !important;
	color: #8b9098 !important;
}

/* mobile footer rhythm */
@media (max-width: 767px) {
	.elementor-location-footer .elementor-top-section,
	.elementor-location-footer .e-con {
		padding-top: 16px !important;
		padding-bottom: 16px !important;
	}

	.elementor-location-footer .elementor-widget-heading h2,
	.elementor-location-footer .elementor-widget-heading h3,
	.elementor-location-footer .elementor-widget-heading h4,
	.elementor-location-footer .elementor-heading-title {
		margin-bottom: 10px !important;
	}
}

/* Hide leaked mini-cart subtotal/buttons if they escape into page/footer flow */
footer .woocommerce-mini-cart__total,
footer .elementor-menu-cart__subtotal,
footer .woocommerce-mini-cart__buttons,
footer .elementor-menu-cart__footer,
footer .elementor-menu-cart__footer-buttons,
footer .custom-mini-cart-buttons,
.elementor-location-footer .woocommerce-mini-cart__total,
.elementor-location-footer .elementor-menu-cart__subtotal,
.elementor-location-footer .woocommerce-mini-cart__buttons,
.elementor-location-footer .elementor-menu-cart__footer,
.elementor-location-footer .elementor-menu-cart__footer-buttons,
.elementor-location-footer .custom-mini-cart-buttons {
	display: none !important;
}

/* Prevent closed mini-cart from leaking into page layout */
body.candy-shop .elementor-menu-cart__container[aria-hidden="true"],
body.candy-home .elementor-menu-cart__container[aria-hidden="true"],
body.woocommerce-cart .elementor-menu-cart__container[aria-hidden="true"],
body.woocommerce-checkout .elementor-menu-cart__container[aria-hidden="true"] {
	display: none !important;
}

/* Keep open drawer working normally */
body.candy-shop .elementor-menu-cart__container[aria-hidden="false"],
body.candy-home .elementor-menu-cart__container[aria-hidden="false"],
body.woocommerce-cart .elementor-menu-cart__container[aria-hidden="false"],
body.woocommerce-checkout .elementor-menu-cart__container[aria-hidden="false"] {
	display: block !important;
}

body .elementor-menu-cart__container:not([aria-hidden="false"]) {
	display: none !important;
}

/* Disable sticky checkout/cart info bar on all pages */
#stickyCheckoutBar {
	display: none !important;
}

/* ===== PREMIUM FOOTER REFINEMENT ===== */

.elementor-location-footer {
	background: #f8f6fb;
	border-top: 1px solid rgba(17, 24, 39, 0.08);
}

/* Headings */
.elementor-location-footer h2,
.elementor-location-footer h3,
.elementor-location-footer h4 {
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.02em;
	color: #1f2937 !important;
	margin-bottom: 10px !important;
}

/* Links */
.elementor-location-footer a {
	font-size: 13.5px !important;
	color: #6b7280 !important;
	transition: all 0.2s ease;
}

.elementor-location-footer a:hover {
	color: #ff4d6d !important;
	transform: translateX(2px);
}

/* Paragraph */
.elementor-location-footer p {
	font-size: 13.5px !important;
	line-height: 1.6 !important;
	color: #6b7280 !important;
	max-width: 260px;
}

/* List spacing */
.elementor-location-footer li {
	margin-bottom: 8px !important;
}

/* Logo sizing */
.elementor-location-footer img {
	max-width: 95px !important;
	margin-bottom: 10px !important;
}

/* Bottom note (delivery text) */
.elementor-location-footer .elementor-widget-text-editor:last-child {
	font-size: 12.5px !important;
	color: #9ca3af !important;
	margin-top: 12px !important;
}

/* subtle fade-in feel */
.elementor-location-footer {
	transition: all 0.3s ease;
}

/* ===== Footer height + alignment fix ===== */

.elementor-location-footer .elementor-top-section,
.elementor-location-footer .e-con,
.elementor-location-footer .elementor-container {
	min-height: 0 !important;
	height: auto !important;
	align-items: flex-start !important;
}

.elementor-location-footer .elementor-top-section,
.elementor-location-footer .e-con {
	padding-top: 18px !important;
	padding-bottom: 18px !important;
}

.elementor-location-footer .elementor-column,
.elementor-location-footer .elementor-widget-wrap {
	justify-content: flex-start !important;
	align-content: flex-start !important;
}

.elementor-location-footer .elementor-widget-wrap > .elementor-element {
	margin-bottom: 10px !important;
}

.elementor-location-footer .elementor-widget-wrap > .elementor-element:last-child {
	margin-bottom: 0 !important;
}

/* tighten the left text block */
.elementor-location-footer p {
	margin-top: 6px !important;
	margin-bottom: 0 !important;
}

/* tighten list rhythm */
.elementor-location-footer .elementor-icon-list-item,
.elementor-location-footer li {
	margin-bottom: 8px !important;
}

/* ===== Footer premium upgrade ===== */

.elementor-location-footer {
	border-top: 1px solid rgba(17, 24, 39, 0.08);
	background:
		linear-gradient(
			180deg,
			rgba(248, 246, 251, 0.96) 0%,
			rgba(246, 243, 249, 0.98) 100%
		);
}

/* tighten overall footer typography */
.elementor-location-footer .elementor-heading-title,
.elementor-location-footer h2,
.elementor-location-footer h3,
.elementor-location-footer h4 {
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.3 !important;
	letter-spacing: 0.01em !important;
	color: #1b1b1f !important;
	margin-bottom: 12px !important;
}

/* footer body text */
.elementor-location-footer p,
.elementor-location-footer .elementor-widget-text-editor,
.elementor-location-footer .elementor-widget-text-editor p {
	font-size: 14px !important;
	line-height: 1.65 !important;
	color: #6b7280 !important;
}

/* links */
.elementor-location-footer a {
	color: #6b7280 !important;
	text-decoration: none !important;
	transition:
		color 0.22s ease,
		transform 0.22s ease,
		opacity 0.22s ease;
}

.elementor-location-footer a:hover {
	color: #d93c63 !important;
	transform: translateX(2px);
}

/* cleaner link rhythm */
.elementor-location-footer .elementor-icon-list-item,
.elementor-location-footer li {
	margin-bottom: 8px !important;
}

/* logo block */
.elementor-location-footer .elementor-widget-image img {
	max-width: 96px !important;
	height: auto !important;
}

.elementor-location-footer .elementor-widget-image {
	margin-bottom: 12px !important;
}

/* make the delivery note feel intentional */
.elementor-location-footer .elementor-widget-text-editor:last-child,
.elementor-location-footer .elementor-widget-icon-list:last-child {
	margin-top: 12px !important;
	font-size: 13px !important;
	color: #8b9098 !important;
}

/* soften the whole footer visually */
.elementor-location-footer .elementor-container,
.elementor-location-footer .e-con,
.elementor-location-footer .elementor-column,
.elementor-location-footer .elementor-widget-wrap {
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
}

/* Footer top divider */
.elementor-location-footer {
	border-top: 1px solid rgba(0, 0, 0, 0.06);
	position: relative;
}

.elementor-location-footer::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 120px;
	height: 2px;
	background: linear-gradient(90deg, #ff4d6d, #ff7aa2);
	border-radius: 2px;
	opacity: 0.6;
}

/* Footer links upgrade */
.elementor-location-footer a {
	position: relative;
	color: #6b7280 !important;
	transition: all 0.25s ease;
}

/* underline animation */
.elementor-location-footer a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 0%;
	height: 1.5px;
	background: linear-gradient(90deg, #ff4d6d, #ff7aa2);
	transition: width 0.25s ease;
}

.elementor-location-footer a:hover {
	color: #111827 !important;
}

.elementor-location-footer a:hover::after {
	width: 100%;
}

/* Footer headings */
.elementor-location-footer h3,
.elementor-location-footer h4 {
	font-weight: 700 !important;
	font-size: 15px !important;
	color: #111827 !important;
	margin-bottom: 14px !important;
	letter-spacing: 0.02em;
}

/* Logo spacing */
.elementor-location-footer .elementor-widget-image {
	margin-bottom: 14px !important;
}

/* Description text */
.elementor-location-footer .elementor-widget-text-editor p {
	max-width: 260px;
	line-height: 1.6;
}

/* Footer fade-in */
.elementor-location-footer {
	animation: footerFade 0.6s ease forwards;
	opacity: 0;
}

@keyframes footerFade {
	to {
		opacity: 1;
	}
}

/* Footer bottom bar */
.footer-bottom-bar {
	border-top: 1px solid rgba(0, 0, 0, 0.06);
	margin-top: 20px;
	padding-top: 14px;
	font-size: 13px;
	color: #9aa0a6;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.footer-bottom-bar strong {
	color: #6b7280;
}

.elementor-location-footer::before {
	width: 80px;
	height: 2px;
	opacity: 0.8;
	filter: blur(0.2px);
}

.elementor-location-footer::before {
	width: 80px;
	height: 2px;
	opacity: 0.8;
	filter: blur(0.2px);
}

.elementor-location-footer a {
  transition: color 0.22s ease, opacity 0.22s ease, transform 0.22s ease;
}

.elementor-location-footer a:hover {
  color: #d94b6a !important;
  transform: translateX(2px);
}

.elementor-location-footer .elementor-widget-image {
  position: relative;
  padding-bottom: 10px;
}

.elementor-location-footer .elementor-widget-image::after {
  content: "";
  display: block;
  width: 44px;
  height: 2px;
  margin-top: 10px;
  background: linear-gradient(90deg, #ff5a7a, #ff7f96);
  border-radius: 999px;
  opacity: 0.9;
}

/* Homepage product cards: pull price closer to title */
body.home .price,
body.home .woocommerce-Price-amount,
body.home .product-card__price,
body.home .candy-product-card .price,
body.home .elementor-loop-container .price,
body.home .elementor-widget-woocommerce-products .price {
	margin-top: 0 !important;
}

body.home .product h2,
body.home .product h3,
body.home .woocommerce-loop-product__title,
body.home .product-card__title,
body.home .candy-product-card__title {
	margin-bottom: 6px !important;
}

/* Tighten homepage product-card content spacing */
body.home .product .price,
body.home .candy-product-card .price,
body.home .elementor-widget-woocommerce-products .price {
	display: block;
	line-height: 1.2 !important;
}

body.home .product .woocommerce-loop-product__title + .price,
body.home .candy-product-card__title + .price {
	margin-top: 4px !important;
}


/* Homepage cards: make title + price sit like shop page */
body.home .candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link,
body.home .candy-home-products ul.products li.product > a.woocommerce-loop-product__link,
body.home .candy-home-products .products li.product > a.woocommerce-LoopProduct-link,
body.home .candy-home-products .products li.product > a.woocommerce-loop-product__link {
	display: block !important;
	min-height: auto !important;
	margin: 0 0 12px !important;
	padding: 18px 18px 0 !important;
	text-align: left !important;
}

body.home .candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link img,
body.home .candy-home-products ul.products li.product > a.woocommerce-loop-product__link img,
body.home .candy-home-products .products li.product > a.woocommerce-LoopProduct-link img,
body.home .candy-home-products .products li.product > a.woocommerce-loop-product__link img {
	display: block !important;
	max-height: 205px !important;
	margin: 0 auto 12px !important;
}

body.home .candy-home-products ul.products li.product h2,
body.home .candy-home-products ul.products li.product .woocommerce-loop-product__title,
body.home .candy-home-products .products li.product h2,
body.home .candy-home-products .products li.product .woocommerce-loop-product__title {
	margin: 0 0 6px !important;
	text-align: left !important;
}

body.home .candy-home-products ul.products li.product .price,
body.home .candy-home-products .products li.product .price {
	display: block !important;
	margin: 0 0 14px !important;
	text-align: left !important;
}

/* ===== HOMEPAGE FIX: keep Woo add-to-cart feedback clean ===== */
body.home .candy-home-products .candy-shop-actions .added_to_cart {
	display: none !important;
}

body.home .candy-home-products a.added_to_cart {
	display: none !important;
}

body.home .candy-home-products .candy-shop-actions__cart {
	display: flex !important;
	align-items: stretch !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a,
body.home .candy-home-products .candy-shop-actions__cart > .button {
	width: 100% !important;
	flex: 1 1 auto !important;
}

/* stop homepage card layout from jumping when button gets Woo classes */
body.home .candy-home-products .candy-shop-actions__cart > a.added,
body.home .candy-home-products .candy-shop-actions__cart > a.loading,
body.home .candy-home-products .candy-shop-actions__cart > a.ajax_add_to_cart.added,
body.home .candy-home-products .candy-shop-actions__cart > a.add_to_cart_button.added {
	padding-right: 0 !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a.added::after,
body.home .candy-home-products .candy-shop-actions__cart > a.ajax_add_to_cart.added::after,
body.home .candy-home-products .candy-shop-actions__cart > a.add_to_cart_button.added::after {
	content: none !important;
	display: none !important;
}

/* ===== HOMEPAGE FIX: make badges visible like shop page ===== */
body.home .candy-home-products ul.products li.product .candy-shop-badges,
body.home .candy-home-products .products li.product .candy-shop-badges {
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	pointer-events: none;
	max-width: calc(100% - 28px);
}

body.home .candy-home-products ul.products li.product .candy-shop-badge,
body.home .candy-home-products .products li.product .candy-shop-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 6px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.2px;
	color: #ffffff;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
	white-space: nowrap;
}

body.home .candy-home-products ul.products li.product .candy-shop-badge.is-sale,
body.home .candy-home-products .products li.product .candy-shop-badge.is-sale {
	background: linear-gradient(135deg, #ff4b6e, #ff6b8a);
}

body.home .candy-home-products ul.products li.product .candy-shop-badge.is-outofstock,
body.home .candy-home-products .products li.product .candy-shop-badge.is-outofstock {
	background: linear-gradient(135deg, #767676, #9b9b9b);
}

body.home .candy-home-products ul.products li.product .candy-shop-badge.is-new,
body.home .candy-home-products .products li.product .candy-shop-badge.is-new {
	background: linear-gradient(135deg, #5b7cff, #7a95ff);
}

body.home .candy-home-products ul.products li.product .candy-shop-badge.is-popular,
body.home .candy-home-products .products li.product .candy-shop-badge.is-popular {
	background: linear-gradient(135deg, #ff9f1a, #ffbd59);
	color: #ffffff;
}

body.home .candy-home-products ul.products li.product .candy-shop-badge.is-sugarfree,
body.home .candy-home-products .products li.product .candy-shop-badge.is-sugarfree {
	background: linear-gradient(135deg, #08a05c, #20bf78);
}
	
	/* ===== HOMEPAGE: make custom add-to-cart behave like shop ===== */

body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart {
	display: flex !important;
	align-items: stretch !important;
}

body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > a,
body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > .button {
	flex: 1 1 0 !important;
	width: 100% !important;
}

/* Hide WooCommerce's injected View cart link on homepage cards */
body.home .candy-home-products ul.products li.product a.added_to_cart,
body.home .candy-home-products .products li.product a.added_to_cart,
body.home .candy-home-products .candy-shop-actions__cart a.added_to_cart,
body.home .candy-home-products .candy-shop-actions__cart a.added_to_cart.wc-forward {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	font-size: 0 !important;
	line-height: 0 !important;
}

/* Keep homepage card button stable after AJAX add */
body.home .candy-home-products .candy-shop-actions__cart > a.added,
body.home .candy-home-products .candy-shop-actions__cart > a.add_to_cart_button.added,
body.home .candy-home-products .candy-shop-actions__cart > a.ajax_add_to_cart.added {
	padding-right: 0 !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a.added::after,
body.home .candy-home-products .candy-shop-actions__cart > a.add_to_cart_button.added::after,
body.home .candy-home-products .candy-shop-actions__cart > a.ajax_add_to_cart.added::after {
	content: none !important;
	display: none !important;
}

/* Homepage product-card added feedback = same as shop */
body.home .candy-home-products .candy-shop-actions__cart > a.is-added-feedback,
body.home .candy-home-products .candy-shop-actions__cart > .button.is-added-feedback {
	background: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	box-shadow:
		0 12px 24px rgba(8, 160, 92, 0.24),
		0 4px 10px rgba(32, 191, 120, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		inset 0 -10px 18px rgba(7, 122, 71, 0.12) !important;
	transform: translateY(-2px);
	color: #ffffff !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a.is-resetting,
body.home .candy-home-products .candy-shop-actions__cart > .button.is-resetting {
	transition:
		background 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease,
		color 220ms ease,
		border-color 220ms ease !important;
}

/* Homepage quick-view modal added feedback = same as shop */
body.home .candy-quick-view__cart .single_add_to_cart_button.is-added-feedback,
body.home .candy-quick-view__cart .button.alt.is-added-feedback,
body.home .candy-quick-view__submit.is-added-feedback {
	background: linear-gradient(135deg, #08a05c 0%, #1bb56f 52%, #2ccc82 100%) !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	box-shadow:
		0 12px 24px rgba(8, 160, 92, 0.24),
		0 4px 10px rgba(32, 191, 120, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.22),
		inset 0 -10px 18px rgba(7, 122, 71, 0.12) !important;
	transform: translateY(-2px);
	color: #ffffff !important;
}

body.home .candy-quick-view__cart .single_add_to_cart_button.is-resetting,
body.home .candy-quick-view__cart .button.alt.is-resetting,
body.home .candy-quick-view__submit.is-resetting {
	transition:
		background 220ms ease,
		box-shadow 220ms ease,
		transform 220ms ease,
		color 220ms ease,
		border-color 220ms ease !important;
}

/* ===== HOMEPAGE: restore product badges like shop ===== */
body.home .candy-home-products ul.products li.product .candy-shop-badges,
body.home .candy-home-products .products li.product .candy-shop-badges {
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	pointer-events: none;
	max-width: calc(100% - 28px);
}

body.home .candy-home-products ul.products li.product .candy-shop-badge,
body.home .candy-home-products .products li.product .candy-shop-badge {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 28px;
	padding: 6px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: 0.2px;
	color: #ffffff;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12);
	white-space: nowrap;
}

body.home .candy-home-products .candy-shop-badge.is-sale { background: linear-gradient(135deg, #ff4b6e, #ff6b8a); }
body.home .candy-home-products .candy-shop-badge.is-outofstock { background: linear-gradient(135deg, #767676, #9b9b9b); }
body.home .candy-home-products .candy-shop-badge.is-new { background: linear-gradient(135deg, #5b7cff, #7a95ff); }
body.home .candy-home-products .candy-shop-badge.is-popular { background: linear-gradient(135deg, #ff9f1a, #ffbd59); color: #ffffff; }
body.home .candy-home-products .candy-shop-badge.is-sugarfree { background: linear-gradient(135deg, #08a05c, #20bf78); }

a.added_to_cart,
a.added_to_cart.wc-forward,
.wc-forward {
	display: none !important;
}

body.candy-shop #candy-quick-view-modal a.added_to_cart,
body.candy-shop #candy-quick-view-modal .added_to_cart,
body.candy-shop #candy-quick-view-modal a.wc-forward,
body.candy-shop #candy-quick-view-modal .wc-forward {
	display: none !important;
}

a.added_to_cart,
.added_to_cart,
a.wc-forward,
.wc-forward {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

body.candy-shop #candy-quick-view-modal .single_add_to_cart_button.loading,
body.candy-shop #candy-quick-view-modal .button.alt.loading,
body.candy-shop #candy-quick-view-modal .candy-quick-view__submit.loading {
	transform: scale(0.98);
	opacity: 0.9;
	filter: saturate(1.05);
	pointer-events: none;
}

body.candy-shop #candy-quick-view-modal .single_add_to_cart_button.is-added-feedback,
body.candy-shop #candy-quick-view-modal .button.alt.is-added-feedback,
body.candy-shop #candy-quick-view-modal .candy-quick-view__submit.is-added-feedback {
	animation: candyQuickViewAddSuccess 700ms cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes candyQuickViewAddSuccess {
	0% {
		transform: scale(1);
	}
	30% {
		transform: scale(1.08);
	}
	55% {
		transform: scale(0.98);
	}
	100% {
		transform: scale(1);
	}
}

body.candy-shop #candy-quick-view-modal .candy-quick-view-modal__dialog.is-added-pulse {
	animation: candyQuickViewModalAddedPulse 900ms cubic-bezier(0.22, 1, 0.36, 1);
}

@keyframes candyQuickViewModalAddedPulse {
	0% {
		transform: translate3d(0, 0, 0) scale(1);
		box-shadow:
			0 28px 70px rgba(0, 0, 0, 0.18),
			0 10px 28px rgba(255, 75, 110, 0.08),
			inset 0 1px 0 rgba(255, 255, 255, 0.82),
			inset 0 -22px 34px rgba(255, 255, 255, 0.12);
	}
	30% {
		transform: translate3d(0, 0, 0) scale(1.025);
		box-shadow:
			0 34px 84px rgba(0, 0, 0, 0.22),
			0 14px 36px rgba(8, 160, 92, 0.18),
			0 0 0 6px rgba(8, 160, 92, 0.10),
			inset 0 1px 0 rgba(255, 255, 255, 0.86),
			inset 0 -22px 34px rgba(255, 255, 255, 0.12);
	}
	60% {
		transform: translate3d(0, 0, 0) scale(0.995);
	}
	100% {
		transform: translate3d(0, 0, 0) scale(1);
		box-shadow:
			0 28px 70px rgba(0, 0, 0, 0.18),
			0 10px 28px rgba(255, 75, 110, 0.08),
			inset 0 1px 0 rgba(255, 255, 255, 0.82),
			inset 0 -22px 34px rgba(255, 255, 255, 0.12);
	}
}

/* Keep animation but make it smooth and premium */
body.home .candy-home-products .candy-shop-actions > * {
	transition:
		box-shadow 0.35s ease,
		background-color 0.35s ease,
		color 0.35s ease,
		border-color 0.35s ease !important;
}

/* Subtle hover instead of jump */
body.home .candy-home-products .candy-shop-actions > *:hover {
	box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}


/* ===== HOMEPAGE ONLY: slow down ADD-TO-CART success animation ===== */

/* Home page product-card Add to Cart */
body.home .candy-home-products .candy-shop-actions__cart > a.is-added-feedback,
body.home .candy-home-products .candy-shop-actions__cart > .button.is-added-feedback {
	transform: none !important;
	animation: none !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a.is-added-feedback::after,
body.home .candy-home-products .candy-shop-actions__cart > .button.is-added-feedback::after {
	animation: none !important;
}

body.home .candy-home-products .candy-shop-actions__cart > a.is-resetting,
body.home .candy-home-products .candy-shop-actions__cart > .button.is-resetting {
	transition:
		background 420ms ease,
		box-shadow 420ms ease,
		transform 420ms ease,
		color 420ms ease,
		border-color 420ms ease !important;
}

/* Home page Quick View modal Add to Cart only */
body.home #candy-quick-view-modal .single_add_to_cart_button.is-added-feedback,
body.home #candy-quick-view-modal .button.alt.is-added-feedback,
body.home #candy-quick-view-modal .candy-quick-view__submit.is-added-feedback {
	transform: none !important;
	animation: none !important;
}

body.home #candy-quick-view-modal .single_add_to_cart_button.is-added-feedback::after,
body.home #candy-quick-view-modal .button.alt.is-added-feedback::after,
body.home #candy-quick-view-modal .candy-quick-view__submit.is-added-feedback::after {
	animation: none !important;
}

body.home #candy-quick-view-modal .single_add_to_cart_button.is-resetting,
body.home #candy-quick-view-modal .button.alt.is-resetting,
body.home #candy-quick-view-modal .candy-quick-view__submit.is-resetting {
	transition:
		background 420ms ease,
		box-shadow 420ms ease,
		transform 420ms ease,
		color 420ms ease,
		border-color 420ms ease !important;
}

/* =========================================
   FIX: HOMEPAGE ADD-TO-CART CLICK ANIMATION
   ========================================= */

/* Kill the jump when item is added */
body.home .candy-home-products .candy-shop-actions__cart > .button.is-added-feedback,
body.home .candy-home-products .candy-shop-actions__cart > a.is-added-feedback {
	transform: none !important;
	animation: none !important;
}

/* Kill the snap-back reset */
body.home .candy-home-products .candy-shop-actions__cart > .button.is-resetting,
body.home .candy-home-products .candy-shop-actions__cart > a.is-resetting {
	transform: none !important;

	transition:
		background 400ms ease,
		box-shadow 400ms ease,
		color 400ms ease,
		border-color 400ms ease !important;
}

/* =========================================
   FINAL FIXED SLIDING HEADER SYSTEM
========================================= */

:root {
	--wp-admin-bar-height: 0px;
	--site-header-height: 0px;
	--site-sticky-offset: 0px;
	--site-header-gap: 16px;
}

/* Fixed Elementor header */
.elementor-location-header {
	position: fixed !important;
	top: var(--wp-admin-bar-height) !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	z-index: 1100 !important;
	transition: transform 0.32s ease !important;
	will-change: transform;
}

.elementor-location-header.header-hidden {
	transform: translateY(calc(-1 * var(--site-header-height))) !important;
}

/* Do not use body padding for offset in this setup */
body.has-fixed-site-header {
	padding-top: 0 !important;
}

/* Keep anchor jumps accurate */
html {
	scroll-padding-top: calc(var(--site-sticky-offset) + var(--site-header-gap));
}

/* Shop filter row */
body.candy-shop .woocommerce-before-shop-loop {
	position: sticky !important;
	top: calc(var(--site-sticky-offset) + var(--site-header-gap)) !important;
	z-index: 1001 !important;
	margin-bottom: 24px !important;
}

/* Prevent nested sticky conflict */
body.candy-shop .candy-shop-toolbar-wrap.is-sticky {
	position: static !important;
	top: auto !important;
}

/* Mobile */
@media (max-width: 768px) {
	body.candy-shop .woocommerce-before-shop-loop {
		position: relative !important;
		top: auto !important;
		margin-bottom: 18px !important;
	}
}

/* WordPress admin bar heights */
body.admin-bar {
	--wp-admin-bar-height: 32px;
}

@media (max-width: 782px) {
	body.admin-bar {
		--wp-admin-bar-height: 46px;
	}
}

/* HOMEPAGE: push content below fixed header */
.home .elementor-location-header + * {
	margin-top: 120px;
}

/* Hide page title on homepage */
.home .entry-title,
.home h1.page-title {
	display: none !important;
}

/* SHOP: keep first product row below the sticky filter */
:root {
	--shop-filter-height: 0px;
	--shop-filter-gap: 16px;
}

@media (min-width: 769px) {
	body.candy-shop .woocommerce ul.products,
	body.candy-shop .woocommerce-page ul.products {
		padding-top: 0 !important;
	}
}

@media (max-width: 768px) {
	body.candy-shop .woocommerce ul.products,
	body.candy-shop .woocommerce-page ul.products {
		padding-top: 0 !important;
	}
}

/* SHOP ONLY: push products below sticky filter */
body.post-type-archive-product.candy-shop .woocommerce ul.products,
body.post-type-archive-product.candy-shop .woocommerce-page ul.products {
	margin-top: 120px !important;
}

/* SHOP ONLY: keep products below the sticky filter row */
@media (min-width: 769px) {
	body.candy-shop .woocommerce-before-shop-loop {
		position: sticky !important;
		top: calc(var(--site-sticky-offset) + 16px) !important;
		z-index: 1001 !important;
	}

	body.post-type-archive-product.candy-shop .woocommerce ul.products,
	body.post-type-archive-product.candy-shop .woocommerce-page ul.products {
		margin-top: 180px !important;
	}
}

@media (max-width: 768px) {
	body.candy-shop .woocommerce ul.products,
	body.candy-shop .woocommerce-page ul.products {
		margin-top: 0 !important;
	}
}

.elementor-location-header {
	position: fixed !important;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1100;
	transition: transform 0.3s ease;
}

.elementor-location-header.header-hidden {
	transform: translateY(-100%);
}

/* Remove rounded corners from header */
.elementor-location-header,
.elementor-location-header * {
	border-radius: 0 !important;
}

body.candy-shop .candy-shop-active-filters {
	margin-top: 14px;
}

body.candy-shop .candy-shop-active-filters__list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: center;
}

body.candy-shop .candy-shop-active-filters__chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 14px;
	border-radius: 999px;
	border: 1px solid rgba(255,255,255,0.42);
	background: rgba(255,255,255,0.78);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	box-shadow: 0 6px 16px rgba(17,24,39,0.06);
	cursor: pointer;
	font: inherit;
	line-height: 1;
}

body.candy-shop .candy-shop-active-filters__chip-text {
	font-size: 13px;
	font-weight: 700;
	color: #2b2b34;
}

body.candy-shop .candy-shop-active-filters__chip-x {
	font-size: 16px;
	line-height: 1;
	color: #d93c63;
}

body.candy-shop .candy-shop-active-filters__clear-all {
	display: inline-flex;
	align-items: center;
	padding: 10px 4px;
	background: transparent;
	border: 0;
	cursor: pointer;
	font-size: 13px;
	font-weight: 700;
	color: #d93c63;
}

/* Make Shop + Candy archive cards use the same sizing */
body.candy-shop ul.products {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 22px;
}

body.candy-shop ul.products li.product {
	width: 100%;
	max-width: none;
	margin: 0;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 100%;
}

/* Standardize the image box */
body.candy-shop ul.products li.product a.woocommerce-LoopProduct-link,
body.candy-shop ul.products li.product a.woocommerce-loop-product__link {
	display: flex;
	flex-direction: column;
	height: 100%;
}

body.candy-shop ul.products li.product img {
	width: 100%;
	height: 220px;
	object-fit: contain;
	display: block;
	margin: 0 auto 16px;
}

/* Tablet */
@media (max-width: 1024px) {
	body.candy-shop ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Mobile */
@media (max-width: 767px) {
	body.candy-shop ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}

	body.candy-shop ul.products li.product img {
		height: 180px;
	}

	body.candy-shop ul.products li.product .candy-shop-actions {
		grid-template-columns: 1fr;
	}
}

/* Remove the test outline if still present */
body.tax-product_cat ul.products li.product {
	outline: none !important;
}

/* Make product category archives use the same full-width content area as Shop */
body.tax-product_cat .site-main,
body.tax-product_cat .content-area,
body.tax-product_cat .woocommerce,
body.tax-product_cat .woocommerce-page,
body.tax-product_cat .elementor-widget-theme-archive-content,
body.tax-product_cat .elementor-location-archive,
body.tax-product_cat main {
	max-width: 100% !important;
	width: 100% !important;
}

/* Remove narrow inner container behavior on Candy/category pages */
body.tax-product_cat .woocommerce-breadcrumb,
body.tax-product_cat .woocommerce-before-shop-loop,
body.tax-product_cat ul.products,
body.tax-product_cat .shop-load-more-area {
	max-width: 100% !important;
	width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* Force the same 4-column product grid sizing */
body.tax-product_cat ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 24px !important;
	margin: 0 !important;
}

@media (max-width: 768px) {
	body.tax-product_cat.candy-shop .woocommerce-before-shop-loop {
		margin-bottom: 18px !important;
	}
}

/* Match card sizing */
body.tax-product_cat ul.products li.product {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column !important;
}

/* Match image area */
body.tax-product_cat ul.products li.product img {
	width: 100% !important;
	height: 220px !important;
	object-fit: contain !important;
	display: block !important;
	margin: 0 auto 16px !important;
}

/* Match action row/buttons */
body.tax-product_cat ul.products li.product .candy-shop-actions {
	margin-top: auto !important;
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 12px !important;
}

body.tax-product_cat ul.products li.product .candy-shop-btn,
body.tax-product_cat ul.products li.product .button,
body.tax-product_cat ul.products li.product .candy-shop-actions__cart .button {
	min-height: 50px !important;
	width: 100% !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 18px !important;
	box-sizing: border-box !important;
}

/* FORCE Candy page buttons to match Shop page exactly */
body.tax-product_cat .candy-shop-btn--primary,
body.tax-product_cat .candy-shop-actions__cart .button,
body.tax-product_cat a.button.product_type_simple,
body.tax-product_cat a.button.add_to_cart_button {
	background: linear-gradient(135deg, #ff6a88, #ff3d6b) !important;
	color: #fff !important;
	border: none !important;
	box-shadow: 0 8px 18px rgba(255, 61, 107, 0.35) !important;
}

/* Quick view button (secondary style) */
body.tax-product_cat .candy-shop-btn--secondary {
	background: #fff !important;
	color: #ff3d6b !important;
	border: 1px solid rgba(255, 61, 107, 0.3) !important;
	box-shadow: none !important;
}

/* Hover states (important for polish) */
body.tax-product_cat .candy-shop-btn--primary:hover,
body.tax-product_cat .candy-shop-actions__cart .button:hover {
	background: linear-gradient(135deg, #ff3d6b, #ff1f5a) !important;
	transform: translateY(-1px);
	box-shadow: 0 10px 22px rgba(255, 61, 107, 0.45) !important;
}

body.tax-product_cat .candy-shop-btn--secondary:hover {
	background: rgba(255, 61, 107, 0.08) !important;
}

/* Candy page: force product card buttons to match Shop page */
body.tax-product_cat ul.products li.product .candy-shop-actions .button,
body.tax-product_cat ul.products li.product .candy-shop-actions a.button,
body.tax-product_cat ul.products li.product .candy-shop-actions button,
body.tax-product_cat ul.products li.product .candy-shop-actions .candy-shop-btn,
body.tax-product_cat ul.products li.product .candy-shop-actions .add_to_cart_button,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_simple,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_variable,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_grouped,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_external {
	background: linear-gradient(135deg, #ff6a88 0%, #ff4f7b 45%, #ff3d6b 100%) !important;
	background-image: linear-gradient(135deg, #ff6a88 0%, #ff4f7b 45%, #ff3d6b 100%) !important;
	color: #ffffff !important;
	border: 0 !important;
	box-shadow: 0 10px 24px rgba(255, 61, 107, 0.28) !important;
	-webkit-appearance: none !important;
	appearance: none !important;
}

/* Candy page: quick view button should match Shop page white style */
body.tax-product_cat ul.products li.product .candy-shop-actions .candy-shop-btn--secondary,
body.tax-product_cat ul.products li.product .candy-shop-actions .js-candy-quick-view {
	background: #ffffff !important;
	background-image: none !important;
	color: #f45b7a !important;
	border: 1px solid rgba(244, 91, 122, 0.22) !important;
	box-shadow: none !important;
}

/* Hover states */
body.tax-product_cat ul.products li.product .candy-shop-actions .button:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions a.button:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions button:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .add_to_cart_button:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_simple:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_variable:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_grouped:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .product_type_external:hover {
	background: linear-gradient(135deg, #ff6a88 0%, #ff4f7b 45%, #ff3d6b 100%) !important;
	background-image: linear-gradient(135deg, #ff6a88 0%, #ff4f7b 45%, #ff3d6b 100%) !important;
	color: #ffffff !important;
}

body.tax-product_cat ul.products li.product .candy-shop-actions .candy-shop-btn--secondary:hover,
body.tax-product_cat ul.products li.product .candy-shop-actions .js-candy-quick-view:hover {
	background: #ffffff !important;
	background-image: none !important;
	color: #f45b7a !important;
	border-color: rgba(244, 91, 122, 0.32) !important;
}

/* Candy category page: move sticky filter left when mini-cart drawer is open */
body.tax-product_cat:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
body.tax-product_tag:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
body.tax-product_taxonomy:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
body.tax-product_cat.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop {
	margin-right: calc(min(420px, 100vw) + 18px) !important;
	max-width: calc(100% - min(420px, 100vw) - 18px) !important;
	transition: margin-right 0.28s cubic-bezier(0.4, 0, 0.2, 1), max-width 0.28s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Keep inner toolbar from overflowing once shifted */
body.tax-product_cat:has(.elementor-menu-cart__container[aria-hidden="false"]) .candy-shop-toolbar-wrap,
body.tax-product_tag:has(.elementor-menu-cart__container[aria-hidden="false"]) .candy-shop-toolbar-wrap,
body.tax-product_taxonomy:has(.elementor-menu-cart__container[aria-hidden="false"]) .candy-shop-toolbar-wrap,
body.tax-product_cat.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .candy-shop-toolbar-wrap {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	max-width: 100% !important;
}

@media (max-width: 1024px) {
	body.tax-product_cat:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
	body.tax-product_tag:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
	body.tax-product_taxonomy:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop,
	body.tax-product_cat.candy-shop:has(.elementor-menu-cart__container[aria-hidden="false"]) .woocommerce-before-shop-loop {
		margin-right: 0 !important;
		max-width: 100% !important;
	}
}

/* Homepage action buttons: fully match Shop page button text */
body.home .candy-home-products .candy-shop-actions > .candy-quick-view__trigger,
body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > a,
body.home .candy-home-products .candy-shop-actions > .candy-shop-actions__cart > .button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 14.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
	text-align: center !important;
	white-space: nowrap !important;
	text-transform: none !important;
	font-family: inherit !important;
}

body.page-id-12.woocommerce-checkout.admin-bar #content::before,
body.page-id-12.woocommerce-checkout.admin-bar main::before {
	content: "";
	display: block;
	height: 152px;
}

body.page-id-12.woocommerce-checkout:not(.admin-bar) #content::before,
body.page-id-12.woocommerce-checkout:not(.admin-bar) main::before {
	content: "";
	display: block;
	height: 120px;
}

/* =========================================
   CHECKOUT PAYMENT — STRIPE / APPLE STYLE
========================================= */

/* Remove WooCommerce's harsh outer payment borders */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method.is-active,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method-inner {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
}

body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method::before,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method::after {
	display: none !important;
	content: none !important;
}

/* Payment section shell */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .payment_box,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-payment-form,
body.page-id-12.woocommerce-checkout .wc-block-components-payment-method {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.82) 0%,
		rgba(255, 250, 252, 0.78) 100%
	) !important;
	border: 1px solid rgba(230, 233, 240, 0.9) !important;
	border-radius: 22px !important;
	box-shadow:
		0 10px 24px rgba(17, 24, 39, 0.05),
		inset 0 1px 0 rgba(255, 255, 255, 0.82) !important;
	padding: 20px !important;
}

/* Payment method header row */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method label,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-radio-control__label,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-payment-method-label {
	font-weight: 700 !important;
	color: #1f2937 !important;
	letter-spacing: -0.01em;
}

/* Card brand row ("Card") */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .StripeElement,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .__PrivateStripeElement {
	border-radius: 16px !important;
}

/* Input wrappers inside Stripe area */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="text"],
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="tel"],
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="email"],
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-text-input input {
	height: 56px !important;
	border-radius: 16px !important;
	border: 1px solid rgba(220, 226, 235, 0.92) !important;
	background: rgba(255, 255, 255, 0.92) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.85),
		0 2px 8px rgba(17, 24, 39, 0.02) !important;
	padding-left: 16px !important;
	padding-right: 16px !important;
	transition:
		border-color 0.22s ease,
		box-shadow 0.22s ease,
		transform 0.22s ease !important;
}

/* Focus = Stripe-like */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input:focus,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-text-input input:focus,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .StripeElement--focus {
	border-color: rgba(99, 102, 241, 0.42) !important;
	box-shadow:
		0 0 0 4px rgba(99, 102, 241, 0.10),
		0 10px 24px rgba(99, 102, 241, 0.06) !important;
	outline: none !important;
}

/* Labels inside payment section */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-text-input label,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-text-input,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method small,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method p {
	color: #4b5563 !important;
}

/* Save payment checkbox row */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-checkbox,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-checkbox__label {
	color: #4b5563 !important;
	font-size: 14px !important;
}

/* Checkbox style */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="checkbox"] {
	accent-color: #111827;
}

/* Primary button = cleaner luxury style */
body.page-id-12.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.page-id-12.woocommerce-checkout button[type="submit"],
body.page-id-12.woocommerce-checkout .place-order button {
	min-height: 58px !important;
	border-radius: 999px !important;
	border: 1px solid rgba(17, 24, 39, 0.04) !important;
	background: linear-gradient(180deg, #111827 0%, #1f2937 100%) !important;
	color: #ffffff !important;
	font-size: 16px !important;
	font-weight: 800 !important;
	letter-spacing: 0.01em !important;
	box-shadow:
		0 14px 28px rgba(17, 24, 39, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
	transition:
		transform 0.22s ease,
		box-shadow 0.22s ease,
		filter 0.22s ease !important;
}

body.page-id-12.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
body.page-id-12.woocommerce-checkout button[type="submit"]:hover,
body.page-id-12.woocommerce-checkout .place-order button:hover {
	transform: translateY(-1px);
	box-shadow:
		0 18px 34px rgba(17, 24, 39, 0.22),
		inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
	filter: brightness(1.03);
}

/* Mobile polish */
@media (max-width: 768px) {
	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .payment_box,
	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-payment-form,
	body.page-id-12.woocommerce-checkout .wc-block-components-payment-method {
		padding: 16px !important;
		border-radius: 18px !important;
	}

	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="text"],
	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="tel"],
	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method input[type="email"],
	body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-text-input input {
		height: 52px !important;
	}
}

/* Remove remaining dark outlines for Stripe and shipping boxes */
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method,
body.page-id-12.woocommerce-checkout .wc-block-components-radio-control__option,
body.page-id-12.woocommerce-checkout .wc-block-checkout__shipping-option,
body.page-id-12.woocommerce-checkout .wc-block-checkout__payment-method-inner,
body.page-id-12.woocommerce-checkout .wc-payment-form,
body.page-id-12.woocommerce-checkout .payment_box {
	border: none !important;
	box-shadow: none !important;
	background: rgba(255, 255, 255, 0.6) !important;
	border-radius: 16px !important;
}

/* Optional: subtle highlight on selected shipping */
body.page-id-12.woocommerce-checkout .wc-block-components-radio-control__option--checked {
	background: rgba(255, 75, 110, 0.08) !important;
}

/* Add space below Stripe card inputs for the save payment checkbox */
.woocommerce-checkout .wc-block-checkout__payment-method .payment_box,
.woocommerce-checkout .wc-payment-form {
    padding-bottom: 50px !important; /* increase bottom padding */
    box-sizing: border-box; /* ensures padding doesn't break layout */
}

/* Ensure payment box grows to fit the checkbox below */
.woocommerce-checkout .wc-block-checkout__payment-method .payment_box,
.woocommerce-checkout .wc-payment-form {
    display: flex !important;
    flex-direction: column !important;
    padding-bottom: 70px !important; /* increased space for checkbox */
    box-sizing: border-box !important;
}

/* Optional: give some margin to checkbox to avoid overlapping */
.woocommerce-checkout .wc-block-checkout__payment-method .wc-block-components-checkbox {
    margin-top: 16px !important;
}

/* Ensure qty wrapper is visible inside order summary */
.checkout-qty-wrapper {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-top: 8px !important;
    position: relative !important;
    z-index: 10 !important;
}

/* Input field */
.checkout-qty-wrapper input.qty {
    width: 50px !important;
    text-align: center !important;
    display: inline-block !important;
}

/* Buttons */
.checkout-qty-wrapper .qty-btn {
    display: inline-block !important;
    position: relative !important;
}

/* CART page only - shift the content down so that there is no overlap by the Header */
body.page-id-11.woocommerce-cart main#content.site-main.post-11 > .page-content {
	padding-top: 120px !important;
}

body.page-id-11.woocommerce-cart.admin-bar main#content.site-main.post-11 > .page-content {
	padding-top: 152px !important;
}

/* =========================================================
   PREMIUM CART PAGE
   Matches candy-shop glassmorphism / soft luxury styling
========================================================= */

body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
	max-width: 1280px;
	margin-left: auto;
	margin-right: auto;
	padding: 0 18px 32px;
}

/* Main two-column layout */
body.page-id-11.woocommerce-cart .wc-block-cart {
	gap: 28px !important;
	align-items: start !important;
}

/* Left cart items card */
body.page-id-11.woocommerce-cart .wc-block-cart-items,
body.page-id-11.woocommerce-cart .wc-block-cart-items-block,
body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout .wc-block-cart-items-block {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.88) 0%,
			rgba(255, 248, 251, 0.84) 100%
		) !important;
	border: 1px solid rgba(231, 220, 236, 0.92) !important;
	border-radius: 24px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05),
		inset 0 1px 0 rgba(255, 255, 255, 0.72),
		inset 0 -18px 32px rgba(255, 255, 255, 0.12) !important;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
	padding: 10px 18px 16px !important;
	overflow: hidden !important;
}

/* Right cart totals card */
body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
body.page-id-11.woocommerce-cart .wc-block-components-sidebar,
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.9) 0%,
			rgba(255, 248, 251, 0.86) 100%
		) !important;
	border: 1px solid rgba(231, 220, 236, 0.92) !important;
	border-radius: 24px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05),
		inset 0 1px 0 rgba(255, 255, 255, 0.74) !important;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
	padding: 18px !important;
}

/* Section headings */
body.page-id-11.woocommerce-cart .wc-block-cart-items__header,
body.page-id-11.woocommerce-cart .wc-block-components-title {
	font-weight: 800 !important;
	letter-spacing: -0.01em;
	color: #1b1b1f !important;
}

/* Row separators softer */
body.page-id-11.woocommerce-cart .wc-block-cart-items .wc-block-cart-items__row,
body.page-id-11.woocommerce-cart .wc-block-cart-items .wc-block-cart-item {
	border-color: rgba(17, 24, 39, 0.08) !important;
}

/* Product image */
body.page-id-11.woocommerce-cart .wc-block-cart-item__image img,
body.page-id-11.woocommerce-cart .wc-block-components-product-image img {
	border-radius: 16px !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.88) 0%,
			rgba(248, 244, 251, 0.82) 100%
		) !important;
	padding: 6px !important;
	border: 1px solid rgba(255, 255, 255, 0.62) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		0 6px 16px rgba(17, 24, 39, 0.05) !important;
}

/* Product titles */
body.page-id-11.woocommerce-cart .wc-block-components-product-name,
body.page-id-11.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name {
	color: #d93c63 !important;
	font-weight: 750 !important;
	font-size: 17px !important;
	line-height: 1.35 !important;
	text-decoration: none !important;
}

body.page-id-11.woocommerce-cart .wc-block-components-product-name:hover,
body.page-id-11.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name:hover {
	color: #c92f56 !important;
	text-decoration: none !important;
}

/* Secondary description text */
body.page-id-11.woocommerce-cart .wc-block-components-product-metadata,
body.page-id-11.woocommerce-cart .wc-block-cart-item__prices,
body.page-id-11.woocommerce-cart .wc-block-components-product-price,
body.page-id-11.woocommerce-cart .wc-block-formatted-money-amount {
	color: #4b5563 !important;
}

/* Price emphasis */
body.page-id-11.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper,
body.page-id-11.woocommerce-cart .wc-block-components-product-price__value,
body.page-id-11.woocommerce-cart .wc-block-formatted-money-amount {
	font-weight: 800 !important;
}

/* Quantity selector */
body.page-id-11.woocommerce-cart .wc-block-components-quantity-selector {
	border: 1px solid rgba(255, 213, 222, 0.8) !important;
	border-radius: 14px !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.8) 0%,
			rgba(255, 245, 247, 0.68) 100%
		) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.78),
		0 4px 12px rgba(255, 75, 110, 0.05) !important;
	overflow: hidden !important;
}

body.page-id-11.woocommerce-cart .wc-block-components-quantity-selector input {
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	font-weight: 700 !important;
	color: #1f1f1f !important;
}

body.page-id-11.woocommerce-cart .wc-block-components-quantity-selector button {
	background: transparent !important;
	color: #d93c63 !important;
	border: 0 !important;
	font-weight: 800 !important;
}

body.page-id-11.woocommerce-cart .wc-block-components-quantity-selector button:hover {
	background: rgba(255, 75, 110, 0.06) !important;
	color: #c92f56 !important;
}

/* Remove item button */
body.page-id-11.woocommerce-cart .wc-block-cart-item__remove-link,
body.page-id-11.woocommerce-cart .wc-block-components-product-remove-button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 34px !important;
	height: 34px !important;
	min-width: 34px !important;
	border-radius: 999px !important;
	background: rgba(255, 245, 247, 0.92) !important;
	border: 1px solid rgba(255, 213, 222, 0.8) !important;
	color: #d93c63 !important;
	text-decoration: none !important;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82) !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__remove-link:hover,
body.page-id-11.woocommerce-cart .wc-block-components-product-remove-button:hover {
	background: rgba(255, 236, 241, 0.96) !important;
	color: #c92f56 !important;
}

/* Coupon/totals rows */
body.page-id-11.woocommerce-cart .wc-block-components-totals-wrapper,
body.page-id-11.woocommerce-cart .wc-block-components-totals-item,
body.page-id-11.woocommerce-cart .wc-block-components-panel {
	border-color: rgba(17, 24, 39, 0.08) !important;
}

/* Coupon toggle */
body.page-id-11.woocommerce-cart .wc-block-components-panel__button {
	font-weight: 700 !important;
	color: #1f1f1f !important;
}

/* Estimated total */
body.page-id-11.woocommerce-cart .wc-block-components-totals-footer-item,
body.page-id-11.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-formatted-money-amount {
	font-size: 18px !important;
	font-weight: 800 !important;
	color: #1b1b1f !important;
}

/* Proceed to checkout button - premium primary */
body.page-id-11.woocommerce-cart .wc-block-cart__submit-button,
body.page-id-11.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a,
body.page-id-11.woocommerce-cart .wc-block-components-button.contained {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 56px !important;
	padding: 16px 24px !important;
	border-radius: 999px !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	color: #ffffff !important;
	-webkit-text-fill-color: #ffffff !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	text-decoration: none !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08) !important;
	box-shadow:
		0 14px 30px rgba(255, 75, 110, 0.25),
		0 6px 14px rgba(255, 107, 138, 0.15),
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14) !important;
	transition:
		transform 0.24s ease,
		box-shadow 0.24s ease,
		filter 0.24s ease !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart__submit-button:hover,
body.page-id-11.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a:hover,
body.page-id-11.woocommerce-cart .wc-block-components-button.contained:hover {
	transform: translateY(-2px) !important;
	box-shadow:
		0 18px 36px rgba(255, 75, 110, 0.32),
		0 8px 18px rgba(255, 107, 138, 0.18),
		inset 0 1px 0 rgba(255, 255, 255, 0.28),
		inset 0 -10px 18px rgba(191, 34, 77, 0.16) !important;
	filter: brightness(1.03) saturate(1.05) !important;
}

/* Side card sticky */
@media (min-width: 1025px) {
	body.page-id-11.woocommerce-cart .wc-block-cart__sidebar {
		position: sticky !important;
		top: 120px !important;
	}
}

/* Mobile polish */
@media (max-width: 1024px) {
	body.page-id-11.woocommerce-cart .wc-block-cart {
		gap: 20px !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-cart-items,
	body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
		border-radius: 18px !important;
		padding: 14px !important;
	}
}

@media (max-width: 767px) {
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
		padding-left: 12px;
		padding-right: 12px;
	}

	body.page-id-11.woocommerce-cart .wc-block-components-product-name {
		font-size: 15px !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-cart__submit-button,
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-proceed-to-checkout-block a {
		min-height: 52px !important;
		font-size: 17px !important;
	}
}

/* CART: force items + totals side by side on desktop */
body.page-id-11.woocommerce-cart .wc-block-cart {
	display: grid !important;
	grid-template-columns: minmax(0, 3fr) minmax(280px, 360px) !important;
	gap: 32px !important;
	align-items: start !important;
}

/* Make left and right columns behave */
body.page-id-11.woocommerce-cart .wc-block-cart-items-block {
	min-width: 0 !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
	width: 100% !important;
	min-width: 0 !important;
	align-self: start !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-items-block {
	width: 100% !important;
	max-width: none !important;
}

/* Keep totals card sticky on desktop */
@media (min-width: 1025px) {
	body.page-id-11.woocommerce-cart .wc-block-cart__sidebar {
		position: sticky !important;
		top: 120px !important;
	}
}

/* CART: make the left products column truly wide */
body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 1.9fr) minmax(320px, 420px) !important;
	gap: 32px !important;
	align-items: start !important;
}

/* Left column should stretch fully */
body.page-id-11.woocommerce-cart .wc-block-components-main,
body.page-id-11.woocommerce-cart .wc-block-cart-items-block,
body.page-id-11.woocommerce-cart .wc-block-cart-items {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
}

/* Right totals column stays compact */
body.page-id-11.woocommerce-cart .wc-block-components-sidebar,
body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
	width: 100% !important;
	max-width: 420px !important;
	justify-self: end !important;
}

/* Desktop only */
@media (min-width: 1025px) {
	body.page-id-11.woocommerce-cart .wc-block-components-sidebar {
		position: sticky !important;
		top: 120px !important;
	}
}

/* Tablet/mobile stacks */
@media (max-width: 1024px) {
	body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout {
		display: block !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-components-sidebar,
	body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
		max-width: none !important;
		justify-self: stretch !important;
	}
}

/* Tablet/mobile: stack naturally */
@media (max-width: 1024px) {
	body.page-id-11.woocommerce-cart .wc-block-cart {
		display: block !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-cart-items-block,
	body.page-id-11.woocommerce-cart .wc-block-cart__sidebar,
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart-totals-block {
		width: 100% !important;
		max-width: none !important;
	}
}

/* Add inner padding to each cart item */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
	padding: 20px 24px !important;
}

/* Extra spacing between image and text */
body.page-id-11.woocommerce-cart .wc-block-cart-item__image {
	margin-right: 16px !important;
}

/* Add spacing between text content and right price */
body.page-id-11.woocommerce-cart .wc-block-cart-item__product {
	padding-right: 20px !important;
}

/* Optional: increase vertical spacing between items */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row + .wc-block-cart-items__row {
	margin-top: 10px !important;
}

.wc-block-cart-items__row {
	padding: 24px 32px !important;
}

.wc-block-cart-item__total {
	padding-left: 20px !important;
}

/* CART ROWS - safe spacing only */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
	padding: 22px 28px !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__image {
	margin-right: 18px !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__product {
	padding-right: 24px !important;
	min-width: 0 !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__total {
	padding-left: 18px !important;
	white-space: nowrap !important;
}

body.page-id-11.woocommerce-cart .wc-block-components-product-name,
body.page-id-11.woocommerce-cart .wc-block-cart-item__product .wc-block-components-product-name {
	display: block !important;
	width: auto !important;
	max-width: none !important;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: break-word !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__prices,
body.page-id-11.woocommerce-cart .wc-block-cart-item__product p {
	display: block !important;
	width: auto !important;
	max-width: none !important;
	white-space: normal !important;
}

/* MAKE CART AREA WIDER */
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
	max-width: 1200px !important;
	margin: 0 auto !important;
	padding: 0 24px !important;
}

/* PRODUCT ROW CARD */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
	padding: 28px 32px !important; /* more breathing room */
	border-radius: 20px !important;
	margin-bottom: 18px !important;
	background: rgba(255,255,255,0.65) !important;
}

/* SPACE BETWEEN IMAGE AND TEXT */
body.page-id-11.woocommerce-cart .wc-block-cart-item__image {
	margin-right: 22px !important;
}

/* TEXT COLUMN – KEY FIX */
body.page-id-11.woocommerce-cart .wc-block-cart-item__product {
	padding-right: 32px !important;
}

/* PRODUCT NAME + DESCRIPTION SPACING */
body.page-id-11.woocommerce-cart .wc-block-components-product-name {
	margin-bottom: 8px !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__product p {
	margin-bottom: 14px !important;
	line-height: 1.5 !important;
}

/* RIGHT SIDE PRICE COLUMN */
body.page-id-11.woocommerce-cart .wc-block-cart-item__total {
	padding-left: 24px !important;
}

/* 1. Make cart container wider */
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
	max-width: 1300px !important;
	margin: 0 auto !important;
}

/* 2. Add real padding inside product rows */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
	padding: 24px 36px !important;
}

/* ===== FINAL CART WIDTH + INNER SPACING OVERRIDE ===== */
body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart,
body.page-id-11.woocommerce-cart .wc-block-cart,
body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout,
body.page-id-11.woocommerce-cart .wc-block-components-main,
body.page-id-11.woocommerce-cart .wc-block-cart-items-block,
body.page-id-11.woocommerce-cart .wc-block-cart-items {
  max-width: none !important;
  width: 100% !important;
}

body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
	max-width: 1380px !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding-left: 28px !important;
	padding-right: 28px !important;
}

/* Make the products column wider than totals */
body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout {
	display: grid !important;
	grid-template-columns: minmax(0, 2.3fr) minmax(320px, 400px) !important;
	gap: 36px !important;
	align-items: start !important;
}

/* Real inner spacing for each product row */
body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
	padding: 28px 34px !important;
}

/* Keep text away from edges */
body.page-id-11.woocommerce-cart .wc-block-cart-item__image {
	margin-right: 20px !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__product {
	padding-right: 34px !important;
	min-width: 0 !important;
}

body.page-id-11.woocommerce-cart .wc-block-cart-item__total {
	padding-left: 24px !important;
	white-space: nowrap !important;
}

/* Mobile/tablet */
@media (max-width: 1024px) {
	body.page-id-11.woocommerce-cart .wp-block-woocommerce-cart {
		max-width: none !important;
		padding-left: 18px !important;
		padding-right: 18px !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout {
		display: block !important;
	}

	body.page-id-11.woocommerce-cart .wc-block-cart-items__row {
		padding: 22px 20px !important;
	}
}

/* ================================
   CART BLOCK WIDTH FIX
   Safe, minimal, desktop-first
   Place at absolute end of style.css
   ================================ */

@media (min-width: 1025px) {

  /* 1) Let the cart use more horizontal space overall */
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
    max-width: 1440px;
    width: min(1440px, calc(100% - 40px));
    margin-left: auto;
    margin-right: auto;
  }

  /* 2) Make the left products column visibly wider than the totals column */
  body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block .wc-block-cart {
    grid-template-columns: minmax(0, 1.55fr) minmax(320px, 0.7fr) !important;
    column-gap: 40px !important;
    align-items: start;
  }

  /* 3) Add breathing room inside the left cart products area */
  body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart__main,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block .wc-block-cart__main {
    padding-left: 20px !important;
    padding-right: 20px !important;
    min-width: 0;
  }

  /* 4) Add breathing room inside each cart item row/card */
  body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-cart-items__row,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block .wc-block-cart-items__row {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* =========================================
   CART WIDTH FIX - stronger but still safe
   Put at absolute bottom of style.css
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Widen common page/content wrappers that often cap the cart width */
  body.woocommerce-cart .site-main,
  body.woocommerce-cart .content-area,
  body.woocommerce-cart .entry-content,
  body.woocommerce-cart .elementor-section .elementor-container,
  body.woocommerce-cart .elementor-widget-container,
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
    max-width: 1440px !important;
    width: min(1440px, calc(100% - 40px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 2) Force the cart layout itself to give more room to products */
  body.woocommerce-cart .wc-block-cart {
    display: grid !important;
    grid-template-columns: minmax(0, 1.6fr) minmax(340px, 0.72fr) !important;
    column-gap: 40px !important;
    align-items: start !important;
  }

  /* 3) Make sure the left side is allowed to expand */
  body.woocommerce-cart .wc-block-cart__main {
    min-width: 0 !important;
    width: 100% !important;
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  /* 4) Keep totals on the right */
  body.woocommerce-cart .wc-block-cart__sidebar {
    min-width: 340px !important;
    width: 100% !important;
  }

  /* 5) Add row breathing room */
  body.woocommerce-cart .wc-block-cart-items__row {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

/* =========================================
   FIX: CART CONTAINER WIDTH (REAL FIX)
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Kill narrow container constraint */
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
    max-width: none !important;
    width: calc(100% - 60px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 2) Expand the inner cart content */
  body.woocommerce-cart .wc-block-cart {
    max-width: 1400px !important;
    width: 100% !important;
    margin: 0 auto !important;
  }

  /* 3) Add breathing room inside the product list */
  body.woocommerce-cart .wc-block-cart__main {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  /* 4) Add spacing inside each row */
  body.woocommerce-cart .wc-block-cart-items__row {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

/* =========================================
   FINAL FIX: INNER CART WIDTH + BREATHING ROOM
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Expand usable width inside the cart */
  body.woocommerce-cart .wc-block-cart__main {
    padding-left: 40px !important;
    padding-right: 40px !important;
  }

  /* 2) Increase spacing inside each product row */
  body.woocommerce-cart .wc-block-cart-items__row {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  /* 3) Allow product content to stretch properly */
  body.woocommerce-cart .wc-block-cart-item__wrap {
    width: 100% !important;
    max-width: none !important;
  }

  /* 4) Ensure text/content area can grow */
  body.woocommerce-cart .wc-block-cart-item__product {
    width: 100% !important;
    max-width: none !important;
  }

}

/* =========================================
   CART BLOCK - FINAL WIDTH / SPACING FIX
   Uses the actual live Woo Blocks structure
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Control the actual 2-column cart layout */
  body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large {
    grid-template-columns: minmax(0, 1.75fr) minmax(340px, 0.85fr) !important;
    column-gap: 56px !important;
    align-items: start !important;
  }

  /* 2) Give the left products column more internal breathing room */
  body.page-id-11.woocommerce-cart .wc-block-components-main.wc-block-cart__main.wp-block-woocommerce-cart-items-block {
    padding-left: 32px !important;
    padding-right: 32px !important;
  }

  /* 3) Increase inner padding on the actual line-items table */
  body.page-id-11.woocommerce-cart .wc-block-cart-items.wp-block-woocommerce-cart-line-items-block {
    padding-left: 32px !important;
    padding-right: 32px !important;
    width: 100% !important;
  }

  /* 4) Keep the totals column stable on the right */
  body.page-id-11.woocommerce-cart .wc-block-components-sidebar.wc-block-cart__sidebar.wp-block-woocommerce-cart-totals-block {
    min-width: 340px !important;
    width: 100% !important;
  }
}

/* =========================================
   CART BLOCK: REAL WIDTH / BREATHING ROOM FIX
   Based on live DOM from inspector
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Make the products column wider vs totals */
  body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large {
    grid-template-columns: minmax(0, 1.9fr) 360px !important;
    column-gap: 56px !important;
    align-items: start !important;
  }

  /* 2) Remove fake inner squeeze from the main wrapper */
  body.page-id-11.woocommerce-cart .wc-block-components-main.wc-block-cart__main.wp-block-woocommerce-cart-items-block {
    padding-left: 0 !important;
    padding-right: 0 !important;
    min-width: 0 !important;
  }

  /* 3) Keep the table full width */
  body.page-id-11.woocommerce-cart table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block {
    width: 100% !important;
    max-width: none !important;
  }

  /* 4) Add real breathing room to the visible left product column */
  body.page-id-11.woocommerce-cart table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block th:first-child,
  body.page-id-11.woocommerce-cart table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block td:first-child {
    padding-left: 40px !important;
    padding-right: 28px !important;
  }

  /* 5) Keep the total column tighter so product content gets more room */
  body.page-id-11.woocommerce-cart table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block th:last-child,
  body.page-id-11.woocommerce-cart table.wc-block-cart-items.wp-block-woocommerce-cart-line-items-block td:last-child {
    width: 120px !important;
    white-space: nowrap !important;
    padding-right: 40px !important;
  }
}

/* =========================================
   CART WIDTH FIX - FINAL SAFE PATCH
   ========================================= */

@media (min-width: 1025px) {

  /* Wider left column, stable totals column */
  body.page-id-11.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large {
    grid-template-columns: minmax(0, 1.65fr) 380px !important;
    column-gap: 48px !important;
    align-items: start !important;
  }

  /* Remove artificial squeeze on main area */
  body.page-id-11.woocommerce-cart .wc-block-components-main.wc-block-cart__main.wp-block-woocommerce-cart-items-block {
    padding-left: 0 !important;
    padding-right: 0 !important;
    min-width: 0 !important;
  }

  /* Real breathing room on the actual product content cell */
  body.page-id-11.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__product,
  body.page-id-11.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-product {
    padding-left: 20px !important;
    padding-right: 28px !important;
  }

  /* Keep total column compact and aligned */
  body.page-id-11.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__total,
  body.page-id-11.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-total {
    width: 120px !important;
    min-width: 120px !important;
    white-space: nowrap !important;
    padding-right: 24px !important;
  }

  /* Slightly more room around the image cell */
  body.page-id-11.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__image,
  body.page-id-11.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-image {
    padding-left: 24px !important;
    padding-right: 12px !important;
  }
}

/* =========================================
   CART PAGE - SAFE WIDTH FIX
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Widen the actual page content wrapper on cart only */
  body.woocommerce-cart .page-content,
  body.woocommerce-cart .site-main,
  body.woocommerce-cart .entry-content {
    max-width: 1500px !important;
    width: min(1500px, calc(100% - 48px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* 2) Give more room to products vs totals */
  body.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large {
    grid-template-columns: minmax(0, 1.85fr) 360px !important;
    column-gap: 48px !important;
    align-items: start !important;
  }

  /* 3) Add real visible breathing room in the product content cell */
  body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__product,
  body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-product {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  /* 4) Keep totals column compact */
  body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__total,
  body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-total {
    width: 120px !important;
    min-width: 120px !important;
    white-space: nowrap !important;
    padding-right: 24px !important;
  }

  /* 5) Small image-cell spacing adjustment */
  body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__image,
  body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-image {
    padding-left: 24px !important;
    padding-right: 12px !important;
  }
}

body.woocommerce-cart * {
  outline: none !important;
}

/* Kill all debug outlines */
*,
*::before,
*::after {
  outline: none !important;
}

/* Remove all debug outlines on cart page */
body.woocommerce-cart,
body.woocommerce-cart * ,
body.woocommerce-cart *::before,
body.woocommerce-cart *::after {
  outline: none !important;
  box-shadow: none;
}

/* =========================================
   CART – FINAL POLISH (SAFE)
   ========================================= */

@media (min-width: 1025px) {

  /* 1) Improve left vs right balance */
  body.woocommerce-cart .wc-block-components-sidebar-layout.wc-block-cart.wp-block-woocommerce-filled-cart-block.is-large {
    grid-template-columns: minmax(0, 1.75fr) 360px;
    column-gap: 64px;
  }

  /* 2) Give product content more breathing room */
  body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__product,
  body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-product {
    padding-left: 28px;
    padding-right: 28px;
  }

  /* 3) Slightly reduce total column dominance */
  body.woocommerce-cart .wc-block-cart-items td.wc-block-cart-item__total,
  body.woocommerce-cart .wc-block-cart-items th.wc-block-cart-items__header-total {
    width: 110px;
    min-width: 110px;
  }

  /* 4) Subtle outer breathing room */
  body.woocommerce-cart .wp-block-woocommerce-cart,
  body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
    padding-left: 20px;
    padding-right: 20px;
  }

}

/* =========================================
   CART → FOOTER SPACING
   ========================================= */
body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-cart .wp-block-woocommerce-filled-cart-block {
  padding-bottom: 80px;
}

/* =========================================
   CART HEADINGS SIZE IMPROVEMENT
   ========================================= */

/* PRODUCT + TOTAL (table headers) */
body.woocommerce-cart .wc-block-cart-items th {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.5px;
}

/* CART TOTALS title */
body.woocommerce-cart .wc-block-components-totals-wrapper h2,
body.woocommerce-cart .wc-block-cart__totals-title {
  font-size: 18px;
  font-weight: 600;
}

/* =========================================
   CART HEADINGS – STRONGER HIERARCHY
   ========================================= */

/* PRODUCT + TOTAL (top headers) */
body.woocommerce-cart .wc-block-cart-items th {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.6px;
}

/* CART TOTALS title */
body.woocommerce-cart .wc-block-components-totals-wrapper h2,
body.woocommerce-cart .wc-block-cart__totals-title {
  font-size: 20px;
  font-weight: 700;
}

/* =========================================
   CHECKOUT – UPDATE CART BUTTON SHADOW
   ========================================= */

body.woocommerce-checkout .wc-block-components-button {
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
  transition: box-shadow 0.2s ease;
}

/* Hover state (optional but recommended) */
body.woocommerce-checkout .wc-block-components-button:hover {
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.22);
}

/* =========================================
   CHECKOUT – UPDATE CART BUTTON VISIBILITY
   ========================================= */

body.woocommerce-checkout .wc-block-components-totals .wc-block-components-button {
  background: #fff; /* clean contrast */
  border: 1.5px solid rgba(255, 0, 90, 0.25);
  color: #e83e5a; /* your pink tone */
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12);
  font-weight: 600;
}

/* Hover state */
body.woocommerce-checkout .wc-block-components-totals .wc-block-components-button:hover {
  background: #fff;
  border-color: rgba(255, 0, 90, 0.5);
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18);
  transform: translateY(-1px);
}

/* =========================================
   CHECKOUT – MAKE UPDATE CART BUTTON VISIBLE
   ========================================= */

body.woocommerce-checkout .wc-block-components-sidebar .wc-block-components-button:not(.wc-block-components-checkout-place-order-button) {
  background: #ffffff !important;
  border: 1.5px solid rgba(232, 62, 90, 0.35) !important;
  color: #e83e5a !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.16) !important;
  font-weight: 700 !important;
}

body.woocommerce-checkout .wc-block-components-sidebar .wc-block-components-button:not(.wc-block-components-checkout-place-order-button):hover {
	background: #fff0f5 !important;
	border: 1.5px solid rgba(232, 62, 90, 0.45) !important;
	box-shadow: 0 12px 28px rgba(0, 0, 0, 0.18) !important;
}


/* =========================================
   CHECKOUT – UPDATE CART BUTTON OUTLINE
   ========================================= */

body.woocommerce-checkout .candysodas-checkout-edit-cart-box__button {
  border: 2px solid #e83e5a !important;
  box-shadow: 0 8px 20px rgba(232, 62, 90, 0.14) !important;
}

/* Hide the current free-shipping / bundle recommendation block */
body.home .cartflows-sp-progress-wrap,
body.home .cartflows-sp-progress,
body.home .cartflows-sp-free-shipping-progress,
body.home .cartflows-sp-free-shipping-progress-wrap,
body.home .wcf-free-shipping-progress,
body.home .free-shipping-progress,
body.home .cartflows-shipping-progress,
body.home [class*="bundle-total"],
body.home [class*="bundle"],
body.post-type-archive-product .cartflows-sp-progress-wrap,
body.post-type-archive-product .cartflows-sp-progress,
body.post-type-archive-product .cartflows-sp-free-shipping-progress,
body.post-type-archive-product .cartflows-sp-free-shipping-progress-wrap,
body.post-type-archive-product .wcf-free-shipping-progress,
body.post-type-archive-product .free-shipping-progress,
body.post-type-archive-product .cartflows-shipping-progress,
body.post-type-archive-product [class*="bundle-total"],
body.post-type-archive-product [class*="bundle"],
body.tax-product_cat .cartflows-sp-progress-wrap,
body.tax-product_cat .cartflows-sp-progress,
body.tax-product_cat .cartflows-sp-free-shipping-progress,
body.tax-product_cat .cartflows-sp-free-shipping-progress-wrap,
body.tax-product_cat .wcf-free-shipping-progress,
body.tax-product_cat .free-shipping-progress,
body.tax-product_cat .cartflows-shipping-progress,
body.tax-product_cat [class*="bundle-total"],
body.tax-product_cat [class*="bundle"] {
	display: none !important;
}

/* Two-item mini-cart cross-sells */
body.home .candysodas-mini-cart-addons,
body.post-type-archive-product .candysodas-mini-cart-addons,
body.tax-product_cat .candysodas-mini-cart-addons {
	margin: 12px 0 14px !important;
	padding: 14px !important;
	border: 1px solid rgba(231, 220, 236, 0.92);
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(255,248,251,0.88) 100%);
}

.candysodas-mini-cart-addons__title {
	margin: 0 0 12px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.3;
	color: #1b1b1f;
}

.candysodas-mini-cart-addon {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	gap: 10px 12px;
	align-items: start;
	padding: 10px 0;
	border-top: 1px solid rgba(17, 24, 39, 0.08);
}

.candysodas-mini-cart-addon:first-of-type {
	border-top: 0;
	padding-top: 0;
}

.candysodas-mini-cart-addon__image img {
	width: 64px;
	height: 64px;
	object-fit: contain;
	display: block;
	border-radius: 12px;
	background: rgba(255,255,255,0.9);
	padding: 4px;
}

.candysodas-mini-cart-addon__content {
	min-width: 0;
}

.candysodas-mini-cart-addon__name {
	display: block;
	margin: 0 0 4px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	color: #d93c63 !important;
	text-decoration: none;
}

.candysodas-mini-cart-addon__price {
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: 800;
	color: #08985a;
}

.candysodas-mini-cart-addon .button,
.candysodas-mini-cart-addon .add_to_cart_button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 14px !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	color: #fff !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	border: 0 !important;
	box-shadow: 0 8px 18px rgba(255, 75, 110, 0.18);
}

/* Hide free-shipping / progress recommendation block in mini-cart */
body.home .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body.home .elementor-menu-cart__container .cartflows-sp-progress,
body.home .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body.home .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body.home .elementor-menu-cart__container .wcf-free-shipping-progress,
body.home .elementor-menu-cart__container .free-shipping-progress,
body.home .elementor-menu-cart__container .cartflows-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body.candy-shop .elementor-menu-cart__container .wcf-free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-shipping-progress {
	display: none !important;
}

/* Mini-cart recommended products */
body.home .candysodas-mini-cart-addons,
body.candy-shop .candysodas-mini-cart-addons {
	margin: 10px 0 12px !important;
	padding: 14px !important;
	border: 1px solid rgba(231, 220, 236, 0.92);
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(255,255,255,0.92) 0%, rgba(255,248,251,0.88) 100%);
}

.candysodas-mini-cart-addons__title {
	margin: 0 0 12px;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.3;
	color: #1b1b1f;
}

.candysodas-mini-cart-addon {
	display: grid;
	grid-template-columns: 64px minmax(0, 1fr);
	gap: 10px 12px;
	align-items: start;
	padding: 10px 0;
	border-top: 1px solid rgba(17, 24, 39, 0.08);
}

.candysodas-mini-cart-addon:first-of-type {
	border-top: 0;
	padding-top: 0;
}

.candysodas-mini-cart-addon__image img {
	width: 64px;
	height: 64px;
	object-fit: contain;
	display: block;
	border-radius: 12px;
	background: rgba(255,255,255,0.9);
	padding: 4px;
}

.candysodas-mini-cart-addon__content {
	min-width: 0;
}

.candysodas-mini-cart-addon__name {
	display: block;
	margin: 0 0 4px;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	color: #d93c63 !important;
	text-decoration: none;
}

.candysodas-mini-cart-addon__price {
	margin-bottom: 8px;
	font-size: 13px;
	font-weight: 800;
	color: #08985a;
}

.candysodas-mini-cart-addon .add_to_cart_button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding: 0 14px !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	color: #fff !important;
	font-size: 13px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-decoration: none !important;
	border: 0 !important;
	box-shadow: 0 8px 18px rgba(255, 75, 110, 0.18);
}

body .elementor-menu-cart__products {
	padding-bottom: 0 !important;
}

#candysodasDrawerUpsells {
    margin-top: 8px !important;
    margin-bottom: 10px !important;
}

body .elementor-menu-cart__footer {
    position: sticky;
    bottom: 0;
    background: inherit;
    z-index: 2;
}

.candysodas-drawer-upsells {
    max-height: 260px;
    overflow-y: auto;
}

.candysodas-mini-cart-upsell-item {
    padding: 10px;
}

.candysodas-drawer-upsells-list {
    display: flex;
    flex-direction: column;
    gap: 10px;
    position: relative;
}

/* =========================================
   FINAL MINI-CART DRAWER SPACING FIX
   Keep this at the VERY END of style.css
========================================= */

body.candy-shop .elementor-menu-cart__container,
body.candy-home .elementor-menu-cart__container,
body.woocommerce-cart .elementor-menu-cart__container,
body.woocommerce-checkout .elementor-menu-cart__container {
	padding-bottom: 0 !important;
}

/* Make cart items area shorter so subtotal + upsells + footer fit */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart {
	height: 280px !important;
	max-height: 280px !important;
	min-height: 280px !important;
	margin: 0 0 8px !important;
	padding-bottom: 0 !important;
}

/* Pull subtotal closer to cart list */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: 0 0 6px !important;
	padding: 8px 0 6px !important;
}

/* Upsell wrapper: move slightly up and reduce height pressure */
#candysodasDrawerUpsells {
	margin: 6px 0 8px !important;
	padding: 12px !important;
	max-height: 235px !important;
	overflow-y: auto !important;
	box-sizing: border-box !important;
}

/* Slightly tighter header spacing inside upsell box */
#candysodasDrawerUpsells .candysodas-drawer-upsells-head {
	margin-bottom: 8px !important;
}

#candysodasDrawerUpsells .candysodas-drawer-upsells-title {
	margin-bottom: 2px !important;
}

/* Tighter list spacing */
#candysodasDrawerUpsells .candysodas-drawer-upsells-list {
	gap: 8px !important;
}

/* Make each item more compact so second item fully fits */
#candysodasDrawerUpsells .candysodas-mini-cart-upsell-item {
	padding: 10px !important;
	grid-template-columns: 60px minmax(0, 1fr) !important;
	gap: 10px !important;
	align-items: center !important;
	min-height: 0 !important;
}

#candysodasDrawerUpsells .candysodas-mini-cart-upsell-image,
#candysodasDrawerUpsells .candysodas-mini-cart-upsell-image img {
	width: 60px !important;
	height: 60px !important;
	min-width: 60px !important;
}

#candysodasDrawerUpsells .candysodas-mini-cart-upsell-meta {
	min-height: 14px !important;
	margin-bottom: 2px !important;
}

#candysodasDrawerUpsells .candysodas-mini-cart-upsell-title {
	font-size: 12.5px !important;
	line-height: 1.3 !important;
	margin-bottom: 4px !important;
}

#candysodasDrawerUpsells .candysodas-mini-cart-upsell-price {
	margin-bottom: 6px !important;
	font-size: 12.5px !important;
}

#candysodasDrawerUpsells .candysodas-mini-cart-upsell-btn {
	min-height: 32px !important;
	padding: 0 12px !important;
	font-size: 12px !important;
}

/* Keep footer buttons fully visible and inside drawer */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer {
	position: sticky !important;
	bottom: 0 !important;
	margin: 0 !important;
	padding: 10px 8px 8px !important;
	background: rgba(255,255,255,0.96) !important;
	z-index: 20 !important;
}

/* Mobile-specific tightening */
@media (max-width: 767px) {
	body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
	body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
	body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
	body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
	body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
	body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
	body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
	body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart {
		height: 248px !important;
		max-height: 248px !important;
		min-height: 248px !important;
	}

	#candysodasDrawerUpsells {
		max-height: 220px !important;
		padding: 10px !important;
	}

	#candysodasDrawerUpsells .candysodas-mini-cart-upsell-item {
		padding: 8px !important;
		grid-template-columns: 56px minmax(0, 1fr) !important;
		gap: 8px !important;
	}

	#candysodasDrawerUpsells .candysodas-mini-cart-upsell-image,
	#candysodasDrawerUpsells .candysodas-mini-cart-upsell-image img {
		width: 56px !important;
		height: 56px !important;
		min-width: 56px !important;
	}
}

/* FINAL: show full 2-item upsell block */
#candysodasDrawerUpsells {
	max-height: none !important;
	overflow: visible !important;
}

/* ===== FINAL MINI-CART GAP FIX: KEEP UPSELL RIGHT UNDER SUBTOTAL ===== */

/* 2) Remove fake bottom space from the cart items area */
body .elementor-menu-cart__products {
	padding-bottom: 0 !important;
}

/* 3) Keep drawer content stacked naturally from the top */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__main,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__main,
body.candy-shop .elementor-menu-cart__container .widget_shopping_cart_content,
body.candy-home .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-cart .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-checkout .elementor-menu-cart__container .widget_shopping_cart_content {
	display: flex !important;
	flex-direction: column !important;
	justify-content: flex-start !important;
	align-items: stretch !important;
	align-content: flex-start !important;
	height: 100% !important;
	min-height: 0 !important;
}

/* 4) Keep subtotal tight */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: 0 0 6px !important;
	padding: 8px 0 6px !important;
}

/* 5) Put the upsell block immediately under subtotal */
#candysodasDrawerUpsells {
	margin: 0 !important;
	position: relative !important;
	top: 0 !important;
	transform: none !important;
}

/* 6) Keep the native footer visible at the bottom */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: sticky !important;
	bottom: 0 !important;
	z-index: 20 !important;
	margin: 0 !important;
}

/* 🔥 Kill cart content spacing */
.widget_shopping_cart_content {
	margin: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	height: auto !important;
}

/* 🔥 Remove inner WooCommerce spacing */
.widget_shopping_cart_content .woocommerce-mini-cart {
	margin: 0 !important;
	padding: 0 !important;
}

/* 🔥 Remove bottom gap specifically */
.widget_shopping_cart_content .woocommerce-mini-cart__total {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

/* 🔥 Ensure upsell sticks tightly */
#candysodasDrawerUpsells {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* 🔥 Remove ALL spacing inside mini cart */
.woocommerce-mini-cart,
.woocommerce-mini-cart li,
.woocommerce-mini-cart__total {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

/* ===== MINI-CART FIX: stop cart content from growing and pushing upsells down ===== */
body.candy-shop .elementor-menu-cart__container .widget_shopping_cart_content,
body.candy-home .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-cart .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-checkout .elementor-menu-cart__container .widget_shopping_cart_content {
	flex: 0 0 auto !important;
	height: auto !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Keep the upsell directly after the cart content */
body.candy-shop #candysodasDrawerUpsells,
body.candy-home #candysodasDrawerUpsells,
body.woocommerce-cart #candysodasDrawerUpsells,
body.woocommerce-checkout #candysodasDrawerUpsells {
	flex: 0 0 auto !important;
	margin-top: 0 !important;
}

#candysodasDrawerUpsells {
    margin-top: 20px !important;
    padding: 16px !important;
	background: linear-gradient(180deg, #fff5f8 0%, #ffeef3 100%);
	border: 1px solid rgba(255, 75, 110, 0.25);
	box-shadow: 0 12px 28px rgba(255, 75, 110, 0.12);
    border-radius: 16px;
}

.widget_shopping_cart_content {
    padding-bottom: 20px !important;
}

/* ===== ENSURE CART BUTTONS ARE VISIBLE ===== */

body .woocommerce-mini-cart__buttons,
body .elementor-menu-cart__footer-buttons,
body .elementor-menu-cart__footer {
	display: flex !important;
	flex-direction: row !important;
	gap: 10px;
	padding: 15px;
	opacity: 1 !important;
	visibility: visible !important;
}

/* ===== CONTROL DRAWER ORDER ===== */

body .elementor-menu-cart__main {
	display: flex !important;
	flex-direction: column !important;
}

/* Cart content */
.widget_shopping_cart_content {
	order: 1;
}

/* Upsell */
#candysodasDrawerUpsells {
	order: 2;
}

/* Buttons LAST */
body .woocommerce-mini-cart__buttons,
body .elementor-menu-cart__footer-buttons,
body .elementor-menu-cart__footer {
	order: 3;
}

/* Buttons styling */
body .woocommerce-mini-cart__buttons a,
body .elementor-menu-cart__footer-buttons a {
	flex: 1;
	text-align: center;
	padding: 12px;
	background: #000;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	font-weight: 600;
}

/* ===== FINAL FIX: restore native drawer buttons after upsell ===== */

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__main,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__main {
	display: flex !important;
	flex-direction: column !important;
}

/* cart content first */
body.candy-shop .elementor-menu-cart__container .widget_shopping_cart_content,
body.candy-home .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-cart .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-checkout .elementor-menu-cart__container .widget_shopping_cart_content {
	order: 1 !important;
}

/* upsell second */
#candysodasDrawerUpsells {
	order: 2 !important;
}

/* native buttons/footer third */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer {
	display: flex !important;
	order: 3 !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: static !important;
	bottom: auto !important;
	margin: 12px 0 0 !important;
	padding: 12px 0 0 !important;
	background: transparent !important;
	border-top: 0 !important;
	box-shadow: none !important;
}

/* keep the two buttons side by side */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a {
	flex: 1 1 0 !important;
	margin: 0 !important;
}

.elementor-menu-cart__footer,
.elementor-menu-cart__footer-buttons,
.woocommerce-mini-cart__buttons {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* Hide mini-cart close (X) button */
.elementor-menu-cart__close-button {
	display: none !important;
}

/* =========================================================
   FINAL MINI-CART + CART RECOMMENDATIONS OVERRIDE
   Put this at the VERY END of style.css
   ========================================================= */

/* 1) Always hide shipping / free-shipping / bundle / addon offer blocks
   inside Elementor mini-cart on all relevant page types */
body.home .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body.home .elementor-menu-cart__container .cartflows-sp-progress,
body.home .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body.home .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body.home .elementor-menu-cart__container .wcf-free-shipping-progress,
body.home .elementor-menu-cart__container .free-shipping-progress,
body.home .elementor-menu-cart__container .cartflows-shipping-progress,
body.home .elementor-menu-cart__container [class*="free-shipping"],
body.home .elementor-menu-cart__container [class*="shipping-progress"],
body.home .elementor-menu-cart__container [class*="bundle"],
body.home .elementor-menu-cart__container [class*="addon-offer"],

body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body.candy-shop .elementor-menu-cart__container .wcf-free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .free-shipping-progress,
body.candy-shop .elementor-menu-cart__container .cartflows-shipping-progress,
body.candy-shop .elementor-menu-cart__container [class*="free-shipping"],
body.candy-shop .elementor-menu-cart__container [class*="shipping-progress"],
body.candy-shop .elementor-menu-cart__container [class*="bundle"],
body.candy-shop .elementor-menu-cart__container [class*="addon-offer"],

body.woocommerce-cart .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body.woocommerce-cart .elementor-menu-cart__container .cartflows-sp-progress,
body.woocommerce-cart .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body.woocommerce-cart .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body.woocommerce-cart .elementor-menu-cart__container .wcf-free-shipping-progress,
body.woocommerce-cart .elementor-menu-cart__container .free-shipping-progress,
body.woocommerce-cart .elementor-menu-cart__container .cartflows-shipping-progress,
body.woocommerce-cart .elementor-menu-cart__container [class*="free-shipping"],
body.woocommerce-cart .elementor-menu-cart__container [class*="shipping-progress"],
body.woocommerce-cart .elementor-menu-cart__container [class*="bundle"],
body.woocommerce-cart .elementor-menu-cart__container [class*="addon-offer"],

body.woocommerce-checkout .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body.woocommerce-checkout .elementor-menu-cart__container .cartflows-sp-progress,
body.woocommerce-checkout .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body.woocommerce-checkout .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body.woocommerce-checkout .elementor-menu-cart__container .wcf-free-shipping-progress,
body.woocommerce-checkout .elementor-menu-cart__container .free-shipping-progress,
body.woocommerce-checkout .elementor-menu-cart__container .cartflows-shipping-progress,
body.woocommerce-checkout .elementor-menu-cart__container [class*="free-shipping"],
body.woocommerce-checkout .elementor-menu-cart__container [class*="shipping-progress"],
body.woocommerce-checkout .elementor-menu-cart__container [class*="bundle"],
body.woocommerce-checkout .elementor-menu-cart__container [class*="addon-offer"] {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
}

/* 2) Force native Elementor footer buttons back and keep them visible */
body.home .elementor-menu-cart__container .elementor-menu-cart__footer,
body.home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons {
	display: flex !important;
	visibility: visible !important;
	opacity: 1 !important;
	position: sticky !important;
	bottom: 0 !important;
	top: auto !important;
	z-index: 20 !important;
	margin-top: auto !important;
	margin-bottom: 0 !important;
	padding: 12px 10px 10px !important;
	gap: 10px !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	background: rgba(255,255,255,0.96) !important;
	backdrop-filter: blur(14px) saturate(1.12) !important;
	-webkit-backdrop-filter: blur(14px) saturate(1.12) !important;
	border-top: 1px solid rgba(17,24,39,0.08) !important;
	border-radius: 18px 18px 0 0 !important;
	box-shadow: 0 -10px 24px rgba(17,24,39,0.06) !important;
}

body.home .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons > a,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons > a {
	display: inline-flex !important;
	flex: 1 1 0 !important;
	width: 100% !important;
	min-width: 0 !important;
	min-height: 46px !important;
	align-items: center !important;
	justify-content: center !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* ===== FINAL SAFE FIX: mini-cart footer lower in drawer ===== */
body.home .elementor-menu-cart__container .elementor-menu-cart__main,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__main,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__main,
body.home .elementor-menu-cart__container .widget_shopping_cart_content,
body.candy-shop .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-cart .elementor-menu-cart__container .widget_shopping_cart_content,
body.woocommerce-checkout .elementor-menu-cart__container .widget_shopping_cart_content {
	display: flex !important;
	flex-direction: column !important;
	height: 100% !important;
	min-height: 0 !important;
}

body.home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
body.home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.home .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart {
	flex: 0 0 auto !important;
	height: 260px !important;
	max-height: 260px !important;
	min-height: 260px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	margin: 0 0 14px !important;
	padding-right: 6px !important;
}

body.home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.home .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: 0 0 12px !important;
	padding: 10px 0 8px !important;
}

body.home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.home .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer {
	margin-top: auto !important;
	position: sticky !important;
	bottom: 0 !important;
	padding: 14px 10px 12px !important;
	background: rgba(255,255,255,0.96) !important;
	border-top: 1px solid rgba(17,24,39,0.08) !important;
	z-index: 20 !important;
}

/* ===== FINAL SAFE FIX: hide shipping/progress section in mini-cart ===== */

body .elementor-menu-cart__container .cartflows-sp-progress-wrap,
body .elementor-menu-cart__container .cartflows-sp-progress,
body .elementor-menu-cart__container .cartflows-sp-free-shipping-progress,
body .elementor-menu-cart__container .cartflows-sp-free-shipping-progress-wrap,
body .elementor-menu-cart__container .wcf-free-shipping-progress,
body .elementor-menu-cart__container .free-shipping-progress,
body .elementor-menu-cart__container .cartflows-shipping-progress,
body .elementor-menu-cart__container [class*="free-shipping"],
body .elementor-menu-cart__container [class*="shipping-progress"],
body .elementor-menu-cart__container [class*="bundle"],
body .elementor-menu-cart__container [class*="addon-offer"] {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
}

/* ===== FINAL MINI-CART LIST HEIGHT OVERRIDE ===== */

body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container ul.cart_list,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container ul.cart_list,
body.candy-home .elementor-menu-cart__container ul.product_list_widget,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container ul.cart_list,
body.woocommerce-cart .elementor-menu-cart__container ul.product_list_widget,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container ul.cart_list,
body.woocommerce-checkout .elementor-menu-cart__container ul.product_list_widget {
	height: 420px !important;
	max-height: 420px !important;
	min-height: 420px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	padding-right: 6px !important;
	margin: 0 0 12px !important;
}

/* Slightly tighter rows so the 4th item fits cleanly */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.candy-shop .elementor-menu-cart__container .mini_cart_item,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__product,
body.candy-shop .elementor-menu-cart__container li.mini_cart_item,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.candy-home .elementor-menu-cart__container .mini_cart_item,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__product,
body.candy-home .elementor-menu-cart__container li.mini_cart_item,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.woocommerce-cart .elementor-menu-cart__container .mini_cart_item,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__product,
body.woocommerce-cart .elementor-menu-cart__container li.mini_cart_item,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.woocommerce-checkout .elementor-menu-cart__container .mini_cart_item,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__product,
body.woocommerce-checkout .elementor-menu-cart__container li.mini_cart_item {
	min-height: 72px !important;
	padding: 6px 0 !important;
	box-sizing: border-box !important;
}

/* ===== Pull subtotal + upsell section higher ===== */

body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: -18px 0 4px !important;
	padding: 4px 0 2px !important;
}

body.candy-shop .elementor-menu-cart__container #candysodasDrawerUpsells,
body.candy-home .elementor-menu-cart__container #candysodasDrawerUpsells,
body.woocommerce-cart .elementor-menu-cart__container #candysodasDrawerUpsells,
body.woocommerce-checkout .elementor-menu-cart__container #candysodasDrawerUpsells {
	margin: -2px 8px 6px !important;
}

/* ===== REMOVE GAP BELOW CART ITEMS (REAL FIX) ===== */

body .elementor-menu-cart__container .elementor-menu-cart__products,
body .elementor-menu-cart__container ul.woocommerce-mini-cart,
body .elementor-menu-cart__container .woocommerce-mini-cart,
body .elementor-menu-cart__container ul.cart_list,
body .elementor-menu-cart__container ul.product_list_widget {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

/* Pull subtotal UP aggressively */
body .elementor-menu-cart__container .woocommerce-mini-cart__total,
body .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin-top: -22px !important;
}

/* ===== Prevent upsells/subtotal from sitting under sticky footer buttons ===== */

body .elementor-menu-cart__container .elementor-menu-cart__main,
body .elementor-menu-cart__container .widget_shopping_cart_content,
body .elementor-menu-cart__container .elementor-menu-cart__container-inner {
	padding-bottom: 110px !important;
	box-sizing: border-box !important;
}

/* Keep the cart items list tight so the extra bottom space is used below content, not inside the list */
body .elementor-menu-cart__container .elementor-menu-cart__products,
body .elementor-menu-cart__container ul.woocommerce-mini-cart,
body .elementor-menu-cart__container .woocommerce-mini-cart,
body .elementor-menu-cart__container ul.cart_list,
body .elementor-menu-cart__container ul.product_list_widget {
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

/* Tighten subtotal + upsell spacing a little, but do not force overlap */
body .elementor-menu-cart__container .woocommerce-mini-cart__total,
body .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: -8px 0 6px !important;
	padding: 6px 0 4px !important;
}

body .elementor-menu-cart__container #candysodasDrawerUpsells {
	margin: 0 8px 10px !important;
}

/* ===== REAL FIX: reserve space above sticky footer for upsells ===== */

body .elementor-menu-cart__container #candysodasDrawerUpsells {
	margin: 0 8px 110px !important;
}

body .elementor-menu-cart__container .woocommerce-mini-cart__total,
body .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: -8px 0 8px !important;
	padding: 6px 0 4px !important;
}

body .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body .elementor-menu-cart__container .elementor-menu-cart__footer {
	z-index: 30 !important;
}

/* ===== Move footer up in layout, not visually ===== */

body .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body .elementor-menu-cart__container .elementor-menu-cart__footer {
	transform: none !important;
	margin-top: auto !important;
	margin-bottom: 100px !important;
}

body .elementor-menu-cart__container #candysodasDrawerUpsells {
	margin: 0 8px 10px !important;
}

body .elementor-menu-cart__container .woocommerce-mini-cart__total,
body .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: 0 0 8px !important;
	padding: 6px 0 4px !important;
}

body.woocommerce-cart .hello-child-cart-recommendations {
	margin-top: 28px !important;
}

body.woocommerce-cart .hello-child-cart-recommendations__title {
	margin: 0 0 18px !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	color: #1b1b1f !important;
}

/* Cart recommendations should use same spacing as home/shop cards */
body.woocommerce-cart .hello-child-cart-recommendations {
	margin-top: 28px !important;
}

body.woocommerce-cart .hello-child-cart-recommendations__title {
	margin: 0 0 18px !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	color: #1b1b1f !important;
}

body.woocommerce-cart .hello-child-cart-recommendations.candy-home-products ul.products {
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media (max-width: 1024px) {
	body.woocommerce-cart .hello-child-cart-recommendations.candy-home-products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	body.woocommerce-cart .hello-child-cart-recommendations.candy-home-products ul.products {
		grid-template-columns: 1fr !important;
	}
}

/* Cart page: keep custom recommendation row, hide native Woo cross-sells */
body.woocommerce-cart .cross-sells,
body.woocommerce-cart .wc-block-cart__cross-sells,
body.woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block {
	display: none !important;
}

/* Hide native WooCommerce cart cross-sells completely */
body.woocommerce-cart .cross-sells,
body.woocommerce-cart .wc-block-cart__cross-sells,
body.woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block {
	display: none !important;
}

/* ===== CART RECOMMENDATIONS: FINAL SINGLE SOURCE OF TRUTH ===== */

body.woocommerce-cart .candy-cart-cross-sells,
body.woocommerce-cart .candy-cross-sells.candy-home-products {
	margin-top: 28px !important;
	clear: both !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products > h2 {
	margin: 0 0 18px !important;
	font-size: 18px !important;
	font-weight: 800 !important;
	line-height: 1.25 !important;
	color: #1b1b1f !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products::before,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products::after,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products::before,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products::after {
	display: none !important;
	content: none !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product {
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
	clear: none !important;
	padding: 18px !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	min-height: 0 !important;
	height: auto !important;
	overflow: hidden !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-loop-product__link,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-LoopProduct-link,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-loop-product__link {
	display: block !important;
	min-height: auto !important;
	margin: 0 0 12px !important;
	padding: 18px 18px 0 !important;
	text-align: left !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link img,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-loop-product__link img,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-LoopProduct-link img,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-loop-product__link img {
	display: block !important;
	max-height: 205px !important;
	margin: 0 auto 12px !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product h2,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .woocommerce-loop-product__title,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product h2,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .woocommerce-loop-product__title {
	margin: 0 0 6px !important;
	text-align: left !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .price,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .price {
	display: block !important;
	margin: 0 0 14px !important;
	text-align: left !important;
	line-height: 1.2 !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .candy-shop-badges,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .candy-shop-badges {
	position: absolute;
	top: 14px;
	left: 14px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	pointer-events: none;
	max-width: calc(100% - 28px);
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .candy-shop-actions,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .candy-shop-actions {
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart {
	display: flex !important;
	align-items: stretch !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > a,
body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > .button {
	width: 100% !important;
	flex: 1 1 auto !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product a.added_to_cart,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product a.added_to_cart,
body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart a.added_to_cart,
body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart a.added_to_cart.wc-forward {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
	font-size: 0 !important;
	line-height: 0 !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > a.added,
body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > a.loading,
body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > a.ajax_add_to_cart.added,
body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > a.add_to_cart_button.added {
	padding-right: 0 !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > a.added::after,
body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > a.ajax_add_to_cart.added::after,
body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > a.add_to_cart_button.added::after {
	content: none !important;
	display: none !important;
}

@media (max-width: 1024px) {
	body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products,
	body.woocommerce-cart .candy-cross-sells.candy-home-products .products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products,
	body.woocommerce-cart .candy-cross-sells.candy-home-products .products {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions {
		gap: 8px !important;
		padding-top: 0 !important;
	}

	body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > a,
	body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > .button,
	body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions > .candy-quick-view__trigger {
		height: 40px !important;
		min-height: 40px !important;
		padding: 0 12px !important;
		font-size: 15px !important;
	}
}

/* ===== CART: MATCH HOMEPAGE CONTENT FLOW EXACTLY ===== */

/* 1. Limit title lines (prevents tall uneven cards) */
body.woocommerce-cart .candy-cross-sells.candy-home-products .woocommerce-loop-product__title {
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	min-height: 2.6em !important;
	line-height: 1.3 !important;
}

/* 2. Ensure consistent spacing after title */
body.woocommerce-cart .candy-cross-sells.candy-home-products li.product .woocommerce-loop-product__title {
	margin-bottom: 6px !important;
}

/* 3. Price spacing EXACT match to homepage */
body.woocommerce-cart .candy-cross-sells.candy-home-products li.product .price {
	margin-bottom: 14px !important;
	font-weight: 600 !important;
}

/* 4. Force full height flex behavior (critical for button alignment) */
body.woocommerce-cart .candy-cross-sells.candy-home-products li.product {
	display: flex !important;
	flex-direction: column !important;
}

/* 5. Push buttons to absolute bottom (fixes misalignment) */
body.woocommerce-cart .candy-cross-sells.candy-home-products li.product .candy-shop-actions {
	margin-top: auto !important;
}

/* 6. Slightly increase image visual balance */
body.woocommerce-cart .candy-cross-sells.candy-home-products li.product img {
	max-height: 220px !important;
	object-fit: contain !important;
}

/* 7. Normalize card height feel */
body.woocommerce-cart .candy-cross-sells.candy-home-products li.product {
	min-height: 100% !important;
}

/* ===== CART: MATCH HOMEPAGE VISUAL DESIGN ===== */

body.woocommerce-cart .candy-cross-sells.candy-home-products li.product {

	/* Remove glass/gradient look */
	background: #ffffff !important;
	box-shadow: none !important;
	border: 1px solid #f1f1f1 !important;

	/* Match homepage corners */
	border-radius: 12px !important;

	/* Clean spacing */
	padding: 18px !important;
}

/* Remove inner glow effect */
body.woocommerce-cart .candy-cross-sells.candy-home-products li.product::before {
	display: none !important;
}

/* Title styling = homepage */
body.woocommerce-cart .candy-cross-sells.candy-home-products .woocommerce-loop-product__title {
	font-size: 16px !important;
	font-weight: 500 !important;
	color: #e91e63 !important;
}

/* Price = same color as homepage */
body.woocommerce-cart .candy-cross-sells.candy-home-products .price {
	color: #333 !important;
	font-size: 14px !important;
}

/* Remove green price from cart */
body.woocommerce-cart .candy-cross-sells.candy-home-products .price * {
	color: #333 !important;
}

/* Image spacing match */
body.woocommerce-cart .candy-cross-sells.candy-home-products li.product img {
	margin-bottom: 12px !important;
}

/* ===== CART RECOMMENDATIONS: MATCH HOME TITLE + TITLE/PRICE ALIGNMENT ===== */

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-loop-product__link,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-LoopProduct-link,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-loop-product__link {
	text-decoration: none !important;
	color: inherit !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product h2,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .woocommerce-loop-product__title,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product h2,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .woocommerce-loop-product__title {
	display: block !important;
	width: 100% !important;
	margin: 0 0 6px !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em !important;
	color: #1b1b1f !important;
	text-align: left !important;
	text-decoration: none !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .price,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .price {
	display: block !important;
	width: 100% !important;
	margin: 0 0 14px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em !important;
	color: #08985a !important;
	text-align: left !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .price del,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .price del {
	color: #9a9a9a !important;
	font-weight: 500 !important;
	margin-right: 6px !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .price ins,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .price ins {
	color: #08985a !important;
	text-decoration: none !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link:hover h2,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link:hover .woocommerce-loop-product__title,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-loop-product__link:hover h2,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-loop-product__link:hover .woocommerce-loop-product__title,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-LoopProduct-link:hover h2,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-LoopProduct-link:hover .woocommerce-loop-product__title,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-loop-product__link:hover h2,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-loop-product__link:hover .woocommerce-loop-product__title {
	color: #1b1b1f !important;
	text-decoration: none !important;
}

/* FIX: PRICE COLOR (override pink) */
body.woocommerce-cart .candy-cross-sells .price,
body.woocommerce-cart .candy-cross-sells .price * {
	color: #08985a !important; /* same green as homepage */
}

/* ===== SHOP PRICE COLOR: MATCH HOMEPAGE ===== */
body.candy-shop ul.products li.product .price,
body.candy-shop ul.products li.product .price *,
body.candy-shop ul.products li.product .woocommerce-Price-amount,
body.candy-shop ul.products li.product .woocommerce-Price-amount * {
	color: #08985a !important;
}

body.candy-shop ul.products li.product .price del,
body.candy-shop ul.products li.product .price del *,
body.candy-shop ul.products li.product del .woocommerce-Price-amount {
	color: #9a9a9a !important;
}

body.candy-shop ul.products li.product .price ins,
body.candy-shop ul.products li.product .price ins *,
body.candy-shop ul.products li.product ins .woocommerce-Price-amount {
	color: #08985a !important;
	text-decoration: none !important;
}

/* ===== ALIGN TITLE + PRICE (SHOP + CART + HOME CONSISTENCY) ===== */

.candy-home-products li.product,
.candy-shop ul.products li.product,
.woocommerce-cart .candy-cross-sells li.product {
	text-align: left !important;
}

/* Title */
.candy-home-products .woocommerce-loop-product__title,
.candy-shop ul.products .woocommerce-loop-product__title,
.woocommerce-cart .candy-cross-sells .woocommerce-loop-product__title {
	display: block !important;
	width: 100% !important;
	margin: 0 0 6px !important;
	line-height: 1.4 !important;
	text-align: left !important;
}

/* Price */
.candy-home-products .price,
.candy-shop ul.products .price,
.woocommerce-cart .candy-cross-sells .price {
	display: block !important;
	width: 100% !important;
	margin: 0 0 14px !important;
	text-align: left !important;
}

/* ===== BUTTON TEXT: BOLD ===== */

.candy-shop-actions a,
.candy-shop-actions .button,
.candy-shop-actions__cart a,
.candy-shop-actions__cart .button,
.candy-quick-view__trigger {
	font-weight: 700 !important;
	letter-spacing: 0.02em !important;
}

/* ===== FINAL SHOP TITLE + PRICE: MATCH HOMEPAGE CARD EXACTLY ===== */

body.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link,
body.candy-shop ul.products li.product > a.woocommerce-loop-product__link {
	text-decoration: none !important;
	color: inherit !important;
}

body.candy-shop ul.products li.product h2,
body.candy-shop ul.products li.product .woocommerce-loop-product__title {
	display: block !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em !important;
	color: #1b1b1f !important;
	text-align: left !important;
	text-decoration: none !important;
}

body.candy-shop ul.products li.product .price {
	display: block !important;
	width: 100% !important;
	margin: 0 0 14px !important;
	padding: 0 !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em !important;
	color: #08985a !important;
	text-align: left !important;
}

body.candy-shop ul.products li.product .price .woocommerce-Price-amount,
body.candy-shop ul.products li.product .price bdi,
body.candy-shop ul.products li.product .price span {
	display: inline !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: inherit !important;
	color: inherit !important;
}

body.candy-shop ul.products li.product .price del,
body.candy-shop ul.products li.product .price del * {
	color: #9a9a9a !important;
	font-weight: 500 !important;
}

body.candy-shop ul.products li.product .price ins,
body.candy-shop ul.products li.product .price ins * {
	color: #08985a !important;
	text-decoration: none !important;
}

body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button {
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
}

/* ===== SHOP: ALIGN TITLE + PRICE TO SAME CONTENT LINE AS HOMEPAGE ===== */

body.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link,
body.candy-shop ul.products li.product > a.woocommerce-loop-product__link {
	display: block !important;
	min-height: auto !important;
	margin: 0 0 12px !important;
	padding: 18px 18px 0 !important;
	text-align: left !important;
}

body.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link img,
body.candy-shop ul.products li.product > a.woocommerce-loop-product__link img {
	display: block !important;
	max-height: 205px !important;
	margin: 0 auto 12px !important;
}

body.candy-shop ul.products li.product h2,
body.candy-shop ul.products li.product .woocommerce-loop-product__title {
	display: block !important;
	width: 100% !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em !important;
	color: #1b1b1f !important;
	text-align: left !important;
	text-decoration: none !important;
}

body.candy-shop ul.products li.product .price {
	display: block !important;
	width: calc(100% - 36px) !important;
	margin: 0 18px 14px !important;
	padding: 0 !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em !important;
	color: #08985a !important;
	text-align: left !important;
}

body.candy-shop ul.products li.product .price .woocommerce-Price-amount,
body.candy-shop ul.products li.product .price bdi,
body.candy-shop ul.products li.product .price span {
	display: inline !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	color: inherit !important;
	line-height: inherit !important;
}

/* ===== FINAL SHOP TITLE + PRICE: EXACTLY MATCH HOMEPAGE CARD ===== */

body.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link,
body.candy-shop ul.products li.product > a.woocommerce-loop-product__link {
	display: block !important;
	min-height: auto !important;
	margin: 0 0 12px !important;
	padding: 18px 18px 0 !important;
	text-align: left !important;
	text-decoration: none !important;
	color: inherit !important;
}

body.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link img,
body.candy-shop ul.products li.product > a.woocommerce-loop-product__link img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 205px !important;
	margin: 0 auto 12px !important;
	object-fit: contain !important;
}

body.candy-shop ul.products li.product h2,
body.candy-shop ul.products li.product .woocommerce-loop-product__title {
	display: block !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em !important;
	color: #1b1b1f !important;
	text-align: left !important;
	text-decoration: none !important;
}

body.candy-shop ul.products li.product .price {
	display: block !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 0 14px !important;
	padding: 0 !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em !important;
	color: #08985a !important;
	text-align: left !important;
}

body.candy-shop ul.products li.product .price .woocommerce-Price-amount,
body.candy-shop ul.products li.product .price bdi,
body.candy-shop ul.products li.product .price span {
	display: inline !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: inherit !important;
	color: inherit !important;
}

body.candy-shop ul.products li.product .price del,
body.candy-shop ul.products li.product .price del * {
	color: #9a9a9a !important;
	font-weight: 500 !important;
}

body.candy-shop ul.products li.product .price ins,
body.candy-shop ul.products li.product .price ins * {
	color: #08985a !important;
	text-decoration: none !important;
}

/* ===== FINAL SHOP FIX: HARD-ALIGN TITLE + PRICE ===== */

body.candy-shop ul.products li.product h2,
body.candy-shop ul.products li.product .woocommerce-loop-product__title {
	display: block !important;
	width: calc(100% - 40px) !important;
	margin: 0 20px 6px !important;
	padding: 0 !important;
	min-height: 0 !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em !important;
	color: #1b1b1f !important;
	text-align: left !important;
	text-decoration: none !important;
}

body.candy-shop ul.products li.product .price {
	display: block !important;
	width: calc(100% - 40px) !important;
	margin: 0 20px 14px !important;
	padding: 0 !important;
	min-height: 0 !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em !important;
	color: #08985a !important;
	text-align: left !important;
}

body.candy-shop ul.products li.product .price .woocommerce-Price-amount,
body.candy-shop ul.products li.product .price bdi,
body.candy-shop ul.products li.product .price span {
	display: inline !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: inherit !important;
	color: inherit !important;
}

/* ===== FORCE PERFECT ALIGNMENT (TITLE + PRICE) ===== */

body.candy-shop ul.products li.product {
	display: flex !important;
	flex-direction: column !important;
}

/* Wrap content area consistently */
body.candy-shop ul.products li.product .woocommerce-loop-product__title,
body.candy-shop ul.products li.product .price {
	width: 100% !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
	box-sizing: border-box !important;
}

/* Reset ALL offsets */
body.candy-shop ul.products li.product .woocommerce-loop-product__title {
	margin: 0 0 6px 0 !important;
	min-height: unset !important;
}

body.candy-shop ul.products li.product .price {
	margin: 0 0 14px 0 !important;
}

/* Kill any hidden wrappers that shift alignment */
body.candy-shop ul.products li.product .price * {
	margin-left: 0 !important;
	padding-left: 0 !important;
}

/* Debug safety (remove later if needed) */
body.candy-shop ul.products li.product {
	align-items: stretch !important;
}

/* ===== FINAL: FORCE SAME CONTENT COLUMN ===== */

/* 1. Normalize link wrapper (remove layout influence) */
body.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link,
body.candy-shop ul.products li.product > a.woocommerce-loop-product__link {
	display: block !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* 2. Create ONE consistent content column */
body.candy-shop ul.products li.product h2,
body.candy-shop ul.products li.product .woocommerce-loop-product__title,
body.candy-shop ul.products li.product .price {
	padding-left: 20px !important;
	padding-right: 20px !important;
	box-sizing: border-box !important;
	width: 100% !important;
	text-align: left !important;
}

/* 3. Fix spacing (match homepage rhythm) */
body.candy-shop ul.products li.product .woocommerce-loop-product__title {
	margin: 0 0 6px !important;
	min-height: 0 !important;
}

body.candy-shop ul.products li.product .price {
	margin: 0 0 14px !important;
}

/* 4. Keep price inline (prevent CHF breaking) */
body.candy-shop ul.products li.product .price *,
body.candy-shop ul.products li.product .woocommerce-Price-amount,
body.candy-shop ul.products li.product bdi {
	display: inline !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* ===== FINAL SHOP = EXACT HOMEPAGE PRODUCT CARD MATCH ===== */

body.candy-shop ul.products,
body.candy-shop .woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.candy-shop ul.products::before,
body.candy-shop ul.products::after,
body.candy-shop .woocommerce ul.products::before,
body.candy-shop .woocommerce ul.products::after {
	display: none !important;
	content: none !important;
}

body.candy-shop ul.products li.product,
body.candy-shop .woocommerce ul.products li.product {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
	clear: none !important;
	padding: 18px !important;
	min-height: 0 !important;
	height: auto !important;
	box-sizing: border-box !important;
}

body.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link,
body.candy-shop ul.products li.product > a.woocommerce-loop-product__link,
body.candy-shop .woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
body.candy-shop .woocommerce ul.products li.product > a.woocommerce-loop-product__link {
	display: block !important;
	min-height: auto !important;
	height: auto !important;
	margin: 0 0 12px !important;
	padding: 18px 18px 0 !important;
	text-align: left !important;
	text-decoration: none !important;
	color: inherit !important;
}

body.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link img,
body.candy-shop ul.products li.product > a.woocommerce-loop-product__link img,
body.candy-shop .woocommerce ul.products li.product > a.woocommerce-LoopProduct-link img,
body.candy-shop .woocommerce ul.products li.product > a.woocommerce-loop-product__link img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 205px !important;
	margin: 0 auto 12px !important;
	object-fit: contain !important;
}

body.candy-shop ul.products li.product h2,
body.candy-shop ul.products li.product .woocommerce-loop-product__title,
body.candy-shop .woocommerce ul.products li.product h2,
body.candy-shop .woocommerce ul.products li.product .woocommerce-loop-product__title {
	display: block !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em !important;
	color: #1b1b1f !important;
	text-align: left !important;
	text-decoration: none !important;
}

body.candy-shop ul.products li.product .price,
body.candy-shop .woocommerce ul.products li.product .price {
	display: block !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 0 14px !important;
	padding: 0 !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em !important;
	color: #08985a !important;
	text-align: left !important;
}

body.candy-shop ul.products li.product .price .woocommerce-Price-amount,
body.candy-shop ul.products li.product .price bdi,
body.candy-shop ul.products li.product .price span,
body.candy-shop .woocommerce ul.products li.product .price .woocommerce-Price-amount,
body.candy-shop .woocommerce ul.products li.product .price bdi,
body.candy-shop .woocommerce ul.products li.product .price span {
	display: inline !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: inherit !important;
	color: inherit !important;
}

body.candy-shop ul.products li.product .price del,
body.candy-shop ul.products li.product .price del *,
body.candy-shop .woocommerce ul.products li.product .price del,
body.candy-shop .woocommerce ul.products li.product .price del * {
	color: #9a9a9a !important;
	font-weight: 500 !important;
}

body.candy-shop ul.products li.product .price ins,
body.candy-shop ul.products li.product .price ins *,
body.candy-shop .woocommerce ul.products li.product .price ins,
body.candy-shop .woocommerce ul.products li.product .price ins * {
	color: #08985a !important;
	text-decoration: none !important;
}

body.candy-shop ul.products li.product .candy-shop-actions,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 12px !important;
	align-items: stretch !important;
	width: 100% !important;
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	display: block !important;
}

body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	display: block !important;
}

body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	height: 46px !important;
	min-height: 46px !important;
	padding: 0 16px !important;
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	line-height: 1 !important;
	align-self: stretch !important;
	white-space: nowrap !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
}

body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
	order: 1 !important;
}

body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	order: 2 !important;
}

@media (max-width: 1024px) {
	body.candy-shop ul.products,
	body.candy-shop .woocommerce ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	body.candy-shop ul.products,
	body.candy-shop .woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		gap: 16px !important;
	}

	body.candy-shop ul.products li.product,
	body.candy-shop .woocommerce ul.products li.product {
		padding: 16px !important;
	}

	body.candy-shop ul.products li.product .candy-shop-actions,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions {
		gap: 8px !important;
		padding-top: 0 !important;
	}

	body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
	body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
	body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
		height: 40px !important;
		min-height: 40px !important;
		padding: 0 12px !important;
		font-size: 15px !important;
	}
}


/* ===== FIX ALIGNMENT (REAL FIX) ===== */

body.candy-shop ul.products li.product,
body.candy-shop .woocommerce ul.products li.product {
	display: flex !important;
	flex-direction: column !important;
}

/* REMOVE broken link spacing */
body.candy-shop ul.products li.product > a {
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
}

/* Make content stack naturally */
body.candy-shop ul.products li.product img {
	margin-bottom: 12px !important;
}

body.candy-shop ul.products li.product h2,
body.candy-shop ul.products li.product .woocommerce-loop-product__title {
	margin-bottom: 6px !important;
	min-height: unset !important; /* IMPORTANT */
}

body.candy-shop ul.products li.product .price {
	margin-bottom: 14px !important;
}

/* THIS is the key fix */
body.candy-shop ul.products li.product .candy-shop-actions {
	margin-top: auto !important;
}

/* ===== FINAL SHOP = SAME STRUCTURE + SAME SPACING AS HOMEPAGE ===== */

body.candy-shop ul.products,
body.candy-shop .woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.candy-shop ul.products::before,
body.candy-shop ul.products::after,
body.candy-shop .woocommerce ul.products::before,
body.candy-shop .woocommerce ul.products::after {
	display: none !important;
	content: none !important;
}

body.candy-shop ul.products li.product,
body.candy-shop .woocommerce ul.products li.product {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
	clear: none !important;
	padding: 18px !important;
	min-height: 0 !important;
	height: auto !important;
	box-sizing: border-box !important;
}

body.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link,
body.candy-shop ul.products li.product > a.woocommerce-loop-product__link,
body.candy-shop .woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
body.candy-shop .woocommerce ul.products li.product > a.woocommerce-loop-product__link {
	display: block !important;
	min-height: auto !important;
	height: auto !important;
	margin: 0 0 12px !important;
	padding: 18px 18px 0 !important;
	text-align: left !important;
	text-decoration: none !important;
	color: inherit !important;
}

body.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link img,
body.candy-shop ul.products li.product > a.woocommerce-loop-product__link img,
body.candy-shop .woocommerce ul.products li.product > a.woocommerce-LoopProduct-link img,
body.candy-shop .woocommerce ul.products li.product > a.woocommerce-loop-product__link img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 205px !important;
	margin: 0 auto 12px !important;
	object-fit: contain !important;
}

body.candy-shop ul.products li.product h2,
body.candy-shop ul.products li.product .woocommerce-loop-product__title,
body.candy-shop .woocommerce ul.products li.product h2,
body.candy-shop .woocommerce ul.products li.product .woocommerce-loop-product__title {
	display: block !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	letter-spacing: 0.01em !important;
	color: #1b1b1f !important;
	text-align: left !important;
	text-decoration: none !important;
}

body.candy-shop ul.products li.product .price,
body.candy-shop .woocommerce ul.products li.product .price {
	display: block !important;
	width: 100% !important;
	min-height: 0 !important;
	margin: 0 0 14px !important;
	padding: 0 !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	letter-spacing: 0.01em !important;
	color: #08985a !important;
	text-align: left !important;
}

body.candy-shop ul.products li.product .price .woocommerce-Price-amount,
body.candy-shop ul.products li.product .price bdi,
body.candy-shop ul.products li.product .price span,
body.candy-shop .woocommerce ul.products li.product .price .woocommerce-Price-amount,
body.candy-shop .woocommerce ul.products li.product .price bdi,
body.candy-shop .woocommerce ul.products li.product .price span {
	display: inline !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: inherit !important;
	color: inherit !important;
}

body.candy-shop ul.products li.product .candy-shop-actions,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 12px !important;
	align-items: stretch !important;
	width: 100% !important;
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	display: block !important;
}

body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart {
	display: block !important;
}

body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
body.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	height: 46px !important;
	min-height: 46px !important;
	padding: 0 16px !important;
	margin: 0 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box !important;
	line-height: 1 !important;
	align-self: stretch !important;
	white-space: nowrap !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
}

/* ===== FINAL MICRO-POLISH: KEEP SHOP TITLE/PRICE LOCKED ===== */

body.candy-shop ul.products li.product .woocommerce-loop-product__title,
body.candy-shop .woocommerce ul.products li.product .woocommerce-loop-product__title,
body.candy-shop ul.products li.product h2,
body.candy-shop .woocommerce ul.products li.product h2 {
	margin: 0 0 6px !important;
	line-height: 1.45 !important;
	min-height: 0 !important;
}

body.candy-shop ul.products li.product .price,
body.candy-shop .woocommerce ul.products li.product .price {
	margin: 0 0 14px !important;
	line-height: 1.35 !important;
}

body.candy-shop ul.products li.product .candy-shop-actions,
body.candy-shop .woocommerce ul.products li.product .candy-shop-actions {
	margin-top: auto !important;
	padding-top: 10px !important;
}

/* ===== CART RECOMMENDATIONS: FORCE TITLE + PRICE SAME LEFT EDGE ===== */

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-loop-product__link,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-LoopProduct-link,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-loop-product__link {
	padding: 0 !important;
	margin: 0 0 12px !important;
	text-align: left !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-LoopProduct-link img,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > a.woocommerce-loop-product__link img,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-LoopProduct-link img,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > a.woocommerce-loop-product__link img {
	display: block !important;
	max-height: 205px !important;
	margin: 0 auto 12px !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product h2,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .woocommerce-loop-product__title,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product h2,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .woocommerce-loop-product__title {
	display: block !important;
	width: 100% !important;
	margin: 0 0 6px !important;
	padding: 0 18px !important;
	box-sizing: border-box !important;
	text-align: left !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .price,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .price {
	display: block !important;
	width: 100% !important;
	margin: 0 0 14px !important;
	padding: 0 18px !important;
	box-sizing: border-box !important;
	text-align: left !important;
	line-height: 1.2 !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .price .woocommerce-Price-amount,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .price bdi,
body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .price span,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .price .woocommerce-Price-amount,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .price bdi,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .price span {
	display: inline !important;
	margin: 0 !important;
	padding: 0 !important;
	width: auto !important;
}

/* ===== CART RECOMMENDATIONS: MATCH SHOP/HOME BADGES ===== */

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .candy-shop-badges,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .candy-shop-badges {
	position: absolute !important;
	top: 14px !important;
	left: 14px !important;
	z-index: 3 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 8px !important;
	pointer-events: none !important;
	max-width: calc(100% - 28px) !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .candy-shop-badge,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .candy-shop-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 28px !important;
	padding: 6px 10px !important;
	border-radius: 999px !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	letter-spacing: 0.2px !important;
	color: #ffffff !important;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12) !important;
	white-space: nowrap !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .candy-shop-badge.is-sale,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .candy-shop-badge.is-sale {
	background: linear-gradient(135deg, #ff4b6e, #ff6b8a) !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .candy-shop-badge.is-outofstock,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .candy-shop-badge.is-outofstock {
	background: linear-gradient(135deg, #767676, #9b9b9b) !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .candy-shop-badge.is-new,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .candy-shop-badge.is-new {
	background: linear-gradient(135deg, #5b7cff, #7a95ff) !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .candy-shop-badge.is-popular,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .candy-shop-badge.is-popular {
	background: linear-gradient(135deg, #ff9f1a, #ffbd59) !important;
	color: #ffffff !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product .candy-shop-badge.is-sugarfree,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product .candy-shop-badge.is-sugarfree {
	background: linear-gradient(135deg, #08a05c, #20bf78) !important;
}

/* Space between product cards and footer */
.candy-home-products,
.candy-cross-sells,
.woocommerce ul.products {
	margin-bottom: 60px !important;
}

/* Cart page product cards (cross-sells) */
body.woocommerce-cart .candy-cross-sells .product {
	background: #fff;
	border-radius: 20px;
	padding: 20px;
	transition: all 0.3s ease;
	
	/* Default shadow (like homepage) */
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
}

/* Hover effect */
body.woocommerce-cart .candy-cross-sells .product:hover {
	transform: translateY(-6px);
	box-shadow: 0 20px 40px rgba(255, 105, 135, 0.25); /* soft pink glow */
}

/* Optional: smoother image hover */
body.woocommerce-cart .candy-cross-sells .product img {
	transition: transform 0.3s ease;
}

body.woocommerce-cart .candy-cross-sells .product:hover img {
	transform: scale(1.05);
}

body.woocommerce-cart .candy-cross-sells .product {
	background: #fff;
	border-radius: 20px;
	padding: 20px;
	transition: all 0.3s ease;

	/* Shadow */
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);

	/* 👉 ADD THEM HERE */
	backdrop-filter: blur(10px);
	border: 1px solid rgba(255, 105, 135, 0.15);
}

/* CART PAGE BACKGROUND (behind recommendations) */
body.woocommerce-cart .candy-cross-sells .product {
	background: #ffffff;
	border-radius: 20px;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
	border: 1px solid rgba(255, 105, 135, 0.08);
}

body.woocommerce-cart .candy-cross-sells .product:hover {
	transform: translateY(-8px);
	box-shadow: 0 25px 50px rgba(255, 105, 135, 0.25);
}

body.woocommerce-cart .candy-cross-sells .product::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 20px;
	background: radial-gradient(circle at top left, rgba(255, 105, 135, 0.08), transparent 60%);
	pointer-events: none;
}

/* ===== CART RECOMMENDATIONS: MAKE CARDS STAND OUT LIKE CART TOTALS ===== */

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.96) 0%,
			rgba(255, 250, 252, 0.94) 42%,
			rgba(248, 244, 251, 0.96) 100%
		) !important;
	border: 1px solid rgba(255, 255, 255, 0.72) !important;
	border-radius: 22px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.08),
		0 8px 22px rgba(255, 75, 110, 0.07),
		inset 0 1px 0 rgba(255, 255, 255, 0.84),
		inset 0 -18px 30px rgba(255, 255, 255, 0.12) !important;
	backdrop-filter: blur(12px) saturate(1.06) !important;
	-webkit-backdrop-filter: blur(12px) saturate(1.06) !important;
	position: relative !important;
	isolation: isolate !important;
	overflow: hidden !important;
	transition:
		transform 0.34s cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 0.34s cubic-bezier(0.22, 1, 0.36, 1),
		border-color 0.28s ease,
		background 0.28s ease,
		filter 0.28s ease !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product::before,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 22px;
	padding: 1px;
	background: linear-gradient(
		145deg,
		rgba(255, 255, 255, 0.62) 0%,
		rgba(255, 255, 255, 0.18) 22%,
		rgba(255, 120, 153, 0.16) 52%,
		rgba(255, 255, 255, 0.08) 78%,
		rgba(255, 255, 255, 0.5) 100%
	);
	opacity: 0.72;
	pointer-events: none;
	z-index: 0;
	transition: opacity 0.3s ease, filter 0.3s ease;
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product::after,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 22px;
	background:
		radial-gradient(
			ellipse at top center,
			rgba(255, 255, 255, 0.58) 0%,
			rgba(255, 227, 235, 0.16) 34%,
			rgba(255, 255, 255, 0) 68%
		),
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.24) 0%,
			rgba(255, 255, 255, 0.08) 26%,
			rgba(255, 255, 255, 0) 58%
		);
	opacity: 0.92;
	pointer-events: none;
	z-index: 0;
	transition:
		opacity 0.32s ease,
		transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product > *,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product > * {
	position: relative;
	z-index: 1;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product:hover,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product:hover {
	transform: translateY(-8px) !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.98) 0%,
			rgba(255, 249, 252, 0.96) 46%,
			rgba(248, 244, 251, 0.98) 100%
		) !important;
	border-color: rgba(255, 107, 138, 0.2) !important;
	box-shadow:
		0 28px 56px rgba(17, 24, 39, 0.11),
		0 12px 28px rgba(255, 75, 110, 0.09),
		inset 0 1px 0 rgba(255, 255, 255, 0.86),
		inset 0 -18px 34px rgba(255, 255, 255, 0.18) !important;
	filter: saturate(1.02) !important;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product:hover::before,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product:hover::before {
	opacity: 1;
	filter: brightness(1.04);
}

body.woocommerce-cart .candy-cross-sells.candy-home-products ul.products li.product:hover::after,
body.woocommerce-cart .candy-cross-sells.candy-home-products .products li.product:hover::after {
	opacity: 1;
	transform: translateY(-2px);
}

/* Light subtle border for cart header container */
.cart-contents,
a.cart-contents,
.elementor-menu-cart__toggle_button {
	border: 1px solid rgba(0, 0, 0, 0.06) !important;
	box-shadow: none !important;
	background: transparent !important;
	border-radius: 10px;
}

/* ===== SHOP ONLY: FIX STICKY FILTER OVERLAPPING FIRST PRODUCT ROW ===== */
@media (min-width: 769px) {
	body.post-type-archive-product.candy-shop .woocommerce ul.products {
		margin-top: calc(100px + 95px) !important;
	}
}

@media (max-width: 768px) {
	body.candy-shop .woocommerce ul.products,
	body.candy-shop .woocommerce-page ul.products {
		margin-top: 0 !important;
	}
}

@media (max-width: 768px) {
	body.candy-shop .woocommerce ul.products,
	body.candy-shop .woocommerce-page ul.products {
		margin-top: 0 !important;
	}
}

/* ===== REMOVE SUBTOTAL BOX ===== */

.woocommerce-mini-cart__total,
.woocommerce-mini-cart__total.total,
.woocommerce-mini-cart__total strong,
.woocommerce-mini-cart__total span {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
}

/* ===== REMOVE UPSELL OUTER CONTAINER ===== */

.woocommerce-mini-cart .cross-sells,
.woocommerce-mini-cart .upsells,
.woocommerce-mini-cart .mini-cart-upsells,
.woocommerce-mini-cart .cart-collaterals {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

/* ===== FORCE REMOVE ANY REMAINING BORDERS ===== */

.woocommerce-mini-cart * {
	border-color: transparent !important;
}

.woocommerce-mini-cart div,
.woocommerce-mini-cart section {
	border: none !important;
	box-shadow: none !important;
	background: transparent !important;
}

/* ===== MINI-CART DRAWER: SHOW 4 ITEMS, PULL LOWER SECTIONS UP ===== */

/* 1) Limit visible product list area so only ~4 items show before scroll */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container ul.cart_list,
body.candy-shop .elementor-menu-cart__container ul.product_list_widget,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container ul.cart_list,
body.candy-home .elementor-menu-cart__container ul.product_list_widget,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container ul.cart_list,
body.woocommerce-cart .elementor-menu-cart__container ul.product_list_widget,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container ul.cart_list,
body.woocommerce-checkout .elementor-menu-cart__container ul.product_list_widget {
	height: 332px !important;
	max-height: 332px !important;
	min-height: 332px !important;
	overflow-y: auto !important;
	overflow-x: hidden !important;
	margin: 0 0 8px !important;
	padding-right: 6px !important;
}

/* 2) Tighten each cart row slightly so 4 items fit cleanly */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.candy-shop .elementor-menu-cart__container .mini_cart_item,
body.candy-shop .elementor-menu-cart__container li.mini_cart_item,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.candy-home .elementor-menu-cart__container .mini_cart_item,
body.candy-home .elementor-menu-cart__container li.mini_cart_item,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.woocommerce-cart .elementor-menu-cart__container .mini_cart_item,
body.woocommerce-cart .elementor-menu-cart__container li.mini_cart_item,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart-item,
body.woocommerce-checkout .elementor-menu-cart__container .mini_cart_item,
body.woocommerce-checkout .elementor-menu-cart__container li.mini_cart_item {
	min-height: 78px !important;
	padding: 8px 0 !important;
}

/* 3) Pull subtotal upward and remove extra dead space */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: 0 0 6px !important;
	padding: 6px 0 4px !important;
	border-top: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* 4) Pull upsell block upward */
body.candy-shop .elementor-menu-cart__container .cross-sells,
body.candy-shop .elementor-menu-cart__container .upsell,
body.candy-shop .elementor-menu-cart__container .upsells,
body.candy-shop .elementor-menu-cart__container .mini-cart-upsells,
body.candy-home .elementor-menu-cart__container .cross-sells,
body.candy-home .elementor-menu-cart__container .upsell,
body.candy-home .elementor-menu-cart__container .upsells,
body.candy-home .elementor-menu-cart__container .mini-cart-upsells,
body.woocommerce-cart .elementor-menu-cart__container .cross-sells,
body.woocommerce-cart .elementor-menu-cart__container .upsell,
body.woocommerce-cart .elementor-menu-cart__container .upsells,
body.woocommerce-cart .elementor-menu-cart__container .mini-cart-upsells,
body.woocommerce-checkout .elementor-menu-cart__container .cross-sells,
body.woocommerce-checkout .elementor-menu-cart__container .upsell,
body.woocommerce-checkout .elementor-menu-cart__container .upsells,
body.woocommerce-checkout .elementor-menu-cart__container .mini-cart-upsells {
	margin: 0 0 6px !important;
	padding-top: 0 !important;
}

/* 5) Pull footer buttons upward and tighten footer shell */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-top: 10px !important;
	padding-bottom: 8px !important;
}

/* 6) Mobile: slightly tighter */
@media (max-width: 767px) {
	body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
	body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
	body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
	body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
	body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
	body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
	body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
	body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
	body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart {
		height: 320px !important;
		max-height: 320px !important;
		min-height: 320px !important;
	}
}

/* ===== MINI-CART: MOVE SUBTOTAL / UPSELLS / BUTTONS A LITTLE DOWN ===== */

/* Add a little more space under the product list */
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-shop .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__products,
body.candy-home .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-cart .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__products,
body.woocommerce-checkout .elementor-menu-cart__container ul.woocommerce-mini-cart,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart {
	margin: 0 0 16px !important;
}

/* Push subtotal down slightly */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__subtotal,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__total,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__subtotal {
	margin: 8px 0 12px !important;
	padding: 10px 0 8px !important;
}

/* Push the upsell wrapper down slightly */
#candysodasDrawerUpsells {
	margin: 12px 0 14px !important;
}

/* Push footer buttons down slightly */
body.candy-shop .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-shop .elementor-menu-cart__container .elementor-menu-cart__footer,
body.candy-home .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.candy-home .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-cart .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-cart .elementor-menu-cart__container .elementor-menu-cart__footer,
body.woocommerce-checkout .elementor-menu-cart__container .woocommerce-mini-cart__buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer-buttons,
body.woocommerce-checkout .elementor-menu-cart__container .elementor-menu-cart__footer {
	margin-top: 12px !important;
}

/* CART RECOMMENDATIONS: smooth card replacement */
body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-cart-recommendation-item {
	transition:
		opacity 0.28s ease,
		transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 0.22s ease,
		border-color 0.22s ease,
		background 0.22s ease;
	will-change: opacity, transform;
}

body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-cart-recommendation-item.is-swapping-out {
	opacity: 0;
	transform: translateY(-10px) scale(0.98);
}

body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-cart-recommendation-item.is-swapping-in {
	opacity: 0;
	transform: translateY(12px) scale(0.98);
}

body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > a.is-loading,
body.woocommerce-cart .candy-cross-sells.candy-home-products .candy-shop-actions__cart > .button.is-loading {
	pointer-events: none;
	opacity: 0.92;
	filter: saturate(0.96);
	transform: scale(0.98);
}

/* =========================================
   PREMIUM MINI-CART DRAWER OPEN / CLOSE
   STATE-DRIVEN VERSION
========================================= */

body .elementor-menu-cart__container {
	display: block !important;
	will-change: opacity, transform;
	backface-visibility: hidden;
	-webkit-backface-visibility: hidden;
}

/* base hidden */
body .elementor-menu-cart__container[data-candy-cart-state="closed"] {
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	transform: translate3d(28px, 0, 0) scale(0.985) !important;
}

/* entering */
body .elementor-menu-cart__container[data-candy-cart-state="opening"] {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	transform: translate3d(0, 0, 0) scale(1) !important;
	transition:
		opacity 360ms ease,
		transform 460ms cubic-bezier(0.22, 1, 0.36, 1),
		visibility 0s linear 0s !important;
}

/* open */
body .elementor-menu-cart__container[data-candy-cart-state="open"] {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	transform: translate3d(0, 0, 0) scale(1) !important;
	transition:
		opacity 260ms ease,
		transform 420ms cubic-bezier(0.22, 1, 0.36, 1),
		visibility 0s linear 0s !important;
}

/* exiting */
body .elementor-menu-cart__container[data-candy-cart-state="closing"] {
	opacity: 0 !important;
	visibility: visible !important;
	pointer-events: none !important;
	transform: translate3d(22px, 0, 0) scale(0.988) !important;
	transition:
		opacity 300ms ease,
		transform 420ms cubic-bezier(0.22, 1, 0.36, 1),
		visibility 0s linear 420ms !important;
}

/* smooth interior */
body .elementor-menu-cart__container .elementor-menu-cart__main,
body .elementor-menu-cart__container .widget_shopping_cart_content,
body .elementor-menu-cart__container .elementor-menu-cart__container-inner {
	will-change: opacity, transform;
	transition:
		opacity 320ms ease,
		transform 420ms cubic-bezier(0.22, 1, 0.36, 1) !important;
}

body .elementor-menu-cart__container[data-candy-cart-state="closed"] .elementor-menu-cart__main,
body .elementor-menu-cart__container[data-candy-cart-state="closed"] .widget_shopping_cart_content,
body .elementor-menu-cart__container[data-candy-cart-state="closed"] .elementor-menu-cart__container-inner,
body .elementor-menu-cart__container[data-candy-cart-state="closing"] .elementor-menu-cart__main,
body .elementor-menu-cart__container[data-candy-cart-state="closing"] .widget_shopping_cart_content,
body .elementor-menu-cart__container[data-candy-cart-state="closing"] .elementor-menu-cart__container-inner {
	opacity: 0.985;
	transform: translate3d(10px, 0, 0);
}

body .elementor-menu-cart__container[data-candy-cart-state="opening"] .elementor-menu-cart__main,
body .elementor-menu-cart__container[data-candy-cart-state="opening"] .widget_shopping_cart_content,
body .elementor-menu-cart__container[data-candy-cart-state="opening"] .elementor-menu-cart__container-inner,
body .elementor-menu-cart__container[data-candy-cart-state="open"] .elementor-menu-cart__main,
body .elementor-menu-cart__container[data-candy-cart-state="open"] .widget_shopping_cart_content,
body .elementor-menu-cart__container[data-candy-cart-state="open"] .elementor-menu-cart__container-inner {
	opacity: 1;
	transform: translate3d(0, 0, 0);
}

/* backdrop polish */
body .elementor-menu-cart__container::before,
body .elementor-menu-cart__container::after {
	transition:
		opacity 320ms ease,
		backdrop-filter 360ms ease,
		-webkit-backdrop-filter 360ms ease !important;
}

@media (prefers-reduced-motion: reduce) {
	body .elementor-menu-cart__container,
	body .elementor-menu-cart__container .elementor-menu-cart__main,
	body .elementor-menu-cart__container .widget_shopping_cart_content,
	body .elementor-menu-cart__container .elementor-menu-cart__container-inner,
	body .elementor-menu-cart__container::before,
	body .elementor-menu-cart__container::after {
		transition: none !important;
		transform: none !important;
	}
}

/* Add real space after the last row of products before the footer */
body.candy-shop .woocommerce ul.products,
body.home .candy-home-products ul.products {
	margin-bottom: 56px !important;
}

/* Keep spacing even when the product loop is wrapped by Woo/Elementor containers */
body.candy-shop .woocommerce,
body.candy-shop .site-main,
body.candy-shop .content-area {
	padding-bottom: 40px !important;
}

/* CATEGORY ARCHIVES: add gap only after the sticky filter, not above it */
@media (max-width: 768px) {
	body.tax-product_cat.candy-shop .woocommerce-before-shop-loop + ul.products {
		margin-top: 0 !important;
	}
}

/* Add space AFTER sticky filter on category pages */
@media (min-width: 769px) {
	body.tax-product_cat.candy-shop .woocommerce-before-shop-loop + ul.products {
		margin-top: 32px !important;
	}
}

@media (min-width: 769px) {
	body.tax-product_cat.candy-shop.woocommerce ul.products,
	body.tax-product_cat.candy-shop.woocommerce-page ul.products {
		margin: 0 !important;
		padding: 20px 0 0 !important;
	}

	body.tax-product_cat.candy-shop .woocommerce-before-shop-loop {
		margin-bottom: 0 !important;
	}
}

/* =========================================================
   CANDY + DRINKS: reliable gap below sticky filter bar
   Add at the VERY END of style.css
========================================================= */
@media (min-width: 769px) {
	body.tax-product_cat.candy-shop .woocommerce-before-shop-loop {
		position: sticky !important;
		top: calc(var(--site-sticky-offset, 0px) + var(--site-header-gap, 16px)) !important;
		z-index: 1001 !important;

		/* This is the actual gap below the sticky filter */
		margin: 0 0 75px 0 !important;

		display: block !important;
	}

	/* Prevent nested/double sticky behavior inside the sticky shell */
	body.tax-product_cat.candy-shop .candy-shop-toolbar-wrap,
	body.tax-product_cat.candy-shop .candy-shop-toolbar-wrap.is-sticky {
		position: static !important;
		top: auto !important;
		margin: 0 !important;
	}

	/* Neutralize category-specific grid offsets that fight the spacing */
	body.tax-product_cat.candy-shop .woocommerce ul.products,
	body.tax-product_cat.candy-shop .woocommerce-page ul.products {
		margin-top: 0 !important;
		padding-top: 0 !important;
	}
}

@media (max-width: 768px) {
	body.tax-product_cat.candy-shop .woocommerce-before-shop-loop {
		position: relative !important;
		top: auto !important;
		margin: 0 0 18px 0 !important;
	}

	body.tax-product_cat.candy-shop .candy-shop-toolbar-wrap,
	body.tax-product_cat.candy-shop .candy-shop-toolbar-wrap.is-sticky {
		position: static !important;
		top: auto !important;
		margin: 0 !important;
	}

	body.tax-product_cat.candy-shop .woocommerce ul.products,
	body.tax-product_cat.candy-shop .woocommerce-page ul.products {
		margin-top: 0 !important;
		padding-top: 0 !important;
	}
}

/* =========================================================
   HOMEPAGE PRODUCT CARDS — FORCE SAME HOVER AS SHOP
   Use this at the very end of style.css
   ========================================================= */

body.home .candy-home-products :is(ul.products, .products) li.product {
	position: relative !important;
	isolation: isolate !important;
	overflow: hidden !important;
	box-sizing: border-box;
	transition:
		transform 0.34s cubic-bezier(0.22, 1, 0.36, 1),
		box-shadow 0.34s cubic-bezier(0.22, 1, 0.36, 1),
		border-color 0.28s ease,
		background 0.28s ease,
		filter 0.28s ease !important;
}

body.home .candy-home-products :is(ul.products, .products) li.product > * {
	position: relative;
	z-index: 1;
}

body.home .candy-home-products :is(ul.products, .products) li.product::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 22px;
	padding: 1px;
	background: linear-gradient(
		145deg,
		rgba(255, 255, 255, 0.62) 0%,
		rgba(255, 255, 255, 0.18) 22%,
		rgba(255, 120, 153, 0.18) 52%,
		rgba(255, 255, 255, 0.08) 78%,
		rgba(255, 255, 255, 0.5) 100%
	);
	opacity: 0.72;
	pointer-events: none;
	z-index: 0;
	transition: opacity 0.3s ease, filter 0.3s ease;
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
}

body.home .candy-home-products :is(ul.products, .products) li.product::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 22px;
	background:
		radial-gradient(
			ellipse at top center,
			rgba(255, 255, 255, 0.62) 0%,
			rgba(255, 227, 235, 0.18) 34%,
			rgba(255, 255, 255, 0) 68%
		),
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.26) 0%,
			rgba(255, 255, 255, 0.08) 26%,
			rgba(255, 255, 255, 0) 58%
		);
	opacity: 0.92;
	pointer-events: none;
	z-index: 0;
	transition:
		opacity 0.32s ease,
		transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Trigger on card hover OR anything inside the card being hovered/focused */
body.home .candy-home-products :is(ul.products, .products) li.product:is(:hover, :focus-within) {
	transform: translateY(-8px) !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.9) 0%,
			rgba(255, 249, 252, 0.88) 46%,
			rgba(248, 244, 251, 0.92) 100%
		) !important;
	border-color: rgba(255, 107, 138, 0.18) !important;
	box-shadow:
		0 28px 56px rgba(17, 24, 39, 0.11),
		0 12px 28px rgba(255, 75, 110, 0.08),
		0 1px 0 rgba(255, 255, 255, 0.82) inset,
		0 -18px 34px rgba(255, 255, 255, 0.22) inset !important;
	filter: saturate(1.02);
}

body.home .candy-home-products :is(ul.products, .products) li.product:is(:hover, :focus-within)::before {
	opacity: 1;
	filter: brightness(1.04);
}

body.home .candy-home-products :is(ul.products, .products) li.product:is(:hover, :focus-within)::after {
	opacity: 1;
	transform: translateY(-2px);
}

body.home .candy-home-products :is(ul.products, .products) li.product img {
	transition:
		transform 0.46s cubic-bezier(0.22, 1, 0.36, 1),
		filter 0.34s ease,
		opacity 0.26s ease !important;
	transform-origin: center center;
	will-change: transform;
}

body.home .candy-home-products :is(ul.products, .products) li.product:is(:hover, :focus-within) img {
	transform: translateY(-6px) scale(1.06) !important;
	filter: saturate(1.06) contrast(1.01);
	opacity: 1;
}

body.home .candy-home-products :is(ul.products, .products) li.product h2,
body.home .candy-home-products :is(ul.products, .products) li.product .woocommerce-loop-product__title {
	transition: color 0.24s ease, transform 0.24s ease !important;
}

body.home .candy-home-products :is(ul.products, .products) li.product:is(:hover, :focus-within) h2,
body.home .candy-home-products :is(ul.products, .products) li.product:is(:hover, :focus-within) .woocommerce-loop-product__title {
	color: #111111 !important;
	transform: translateY(-1px) !important;
}

body.home .candy-home-products :is(ul.products, .products) li.product .price {
	transition: transform 0.24s ease, color 0.24s ease, opacity 0.24s ease !important;
	transform-origin: left center;
}

body.home .candy-home-products :is(ul.products, .products) li.product:is(:hover, :focus-within) .price {
	transform: translateY(-1px) !important;
	color: #078c53 !important;
	opacity: 1;
}

/* =========================================================
   REMOVE FREE SHIPPING NOTICE + RELATED PRODUCTS (SINGLE PRODUCT PAGE)
   ========================================================= */

/* Remove the free-shipping progress notice on single product pages only */
body.single-product .cartflows-sp-progress-wrap,
body.single-product .cartflows-sp-progress,
body.single-product .cartflows-sp-free-shipping-progress,
body.single-product .cartflows-sp-free-shipping-progress-wrap,
body.single-product .wcf-free-shipping-progress,
body.single-product .free-shipping-progress,
body.single-product .cartflows-shipping-progress,
body.single-product [class*="free-shipping"],
body.single-product [class*="shipping-progress"] {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
}

/* =========================================================
   SINGLE PRODUCT QTY +/- BUTTONS on Sinlge Product Page
   ========================================================= */

body.single-product form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
}

body.single-product form.cart .quantity {
	display: inline-flex;
	align-items: stretch;
	border: 1px solid rgba(255, 213, 222, 0.8);
	border-radius: 14px;
	overflow: hidden;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.86) 0%,
			rgba(255, 255, 255, 0.72) 100%
		);
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.8),
		0 6px 16px rgba(17, 24, 39, 0.04);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
}

body.single-product form.cart .quantity input.qty {
	width: 56px;
	height: 46px;
	border: 0 !important;
	box-shadow: none !important;
	text-align: center;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent;
	-moz-appearance: textfield;
	appearance: textfield;
	font-weight: 700;
	color: #1f1f1f;
}

body.single-product form.cart .quantity input.qty::-webkit-outer-spin-button,
body.single-product form.cart .quantity input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

body.single-product form.cart .candy-single-qty-btn {
	width: 42px;
	height: 46px;
	border: 0;
	background:
		linear-gradient(
			180deg,
			rgba(255, 245, 247, 0.96) 0%,
			rgba(255, 236, 241, 0.9) 100%
		);
	color: #d93c63;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: background 0.22s ease, color 0.22s ease, transform 0.22s ease;
	flex: 0 0 auto;
}

body.single-product form.cart .candy-single-qty-btn:hover {
	background:
		linear-gradient(
			180deg,
			rgba(255, 236, 241, 1) 0%,
			rgba(255, 226, 233, 0.96) 100%
		);
	color: #c52f56;
}

body.single-product form.cart .candy-single-qty-btn:active {
	transform: scale(0.96);
}

/* =========================================================
   SINGLE PRODUCT QTY BUTTONS - RED STYLE
   ========================================================= */

body.single-product form.cart .candy-single-qty-btn {
	background: linear-gradient(180deg, #ff6b81 0%, #ff4d6d 100%);
	color: #ffffff;
}

body.single-product form.cart .candy-single-qty-btn:hover {
	background: linear-gradient(180deg, #ff4d6d 0%, #e63956 100%);
	color: #ffffff;
}

body.single-product form.cart .candy-single-qty-btn:active {
	background: #e63956;
	transform: scale(0.95);
}

/* Layout */
body.single-product form.cart {
	display: flex;
	align-items: center;
	gap: 14px;
}

/* Quantity wrapper */
body.single-product form.cart .quantity {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px;
	border: 1px solid rgba(255, 213, 222, 0.8);
	border-radius: 16px;
}

/* Quantity input */
body.single-product form.cart .quantity input.qty {
	width: 46px;
	height: 34px;
	border: 0;
	text-align: center;
	background: transparent;
	font-weight: 700;
	appearance: textfield;
}

body.single-product form.cart .quantity input.qty::-webkit-inner-spin-button,
body.single-product form.cart .quantity input.qty::-webkit-outer-spin-button {
	-webkit-appearance: none;
	margin: 0;
}

/* +/- buttons */
body.single-product form.cart .candy-single-qty-btn {
	width: 34px;
	height: 34px;
	border: 0;
	border-radius: 50%;
	background: linear-gradient(180deg, #ff6b81, #ff4d6d);
	color: #fff;
	font-size: 18px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}

/* Add to cart button (long pill) */
body.single-product form.cart .single_add_to_cart_button {
	min-width: 170px;
	padding: 13px 30px;
	border-radius: 999px;
	background: linear-gradient(135deg, #ff4b6e, #ff7894);
	color: #fff;
	font-weight: 800;
	border: none;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* =========================================================
   SINGLE PRODUCT — FINAL ALIGNMENT FIX
   Make qty + Add to cart match the balanced first screenshot
   ========================================================= */

body.single-product form.cart {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 14px !important;
}

body.single-product form.cart .quantity {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	min-width: 154px !important;
	height: 40px !important;
	padding: 0 8px !important;
	border: 1px solid rgba(255, 213, 222, 0.8) !important;
	border-radius: 14px !important;
	background: #fff !important;
	box-sizing: border-box !important;
}

body.single-product form.cart .quantity input.qty {
	width: 34px !important;
	min-width: 34px !important;
	height: 34px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	text-align: center !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 34px !important;
	color: #1f1f1f !important;
}

body.single-product form.cart .candy-single-qty-btn {
	flex: 0 0 30px !important;
	width: 30px !important;
	height: 30px !important;
	min-width: 30px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(180deg, #ff6b81 0%, #ff4d6d 100%) !important;
	color: #ffffff !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-size: 18px !important;
	font-weight: 700 !important;
	line-height: 1 !important;
	box-shadow: none !important;
	transform: none !important;
}

body.single-product form.cart .single_add_to_cart_button,
body.single-product form.cart button.single_add_to_cart_button,
body.single-product form.cart .button.alt {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	height: 40px !important;
	min-height: 40px !important;
	min-width: 154px !important;
	padding: 0 28px !important;
	margin: 0 !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #ff5d79 0%, #ff4b6e 100%) !important;
	color: #ffffff !important;
	font-size: 14.5px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	text-align: center !important;
	box-shadow:
		0 10px 20px rgba(255, 75, 110, 0.18),
		0 3px 8px rgba(255, 107, 138, 0.1) !important;
	transform: none !important;
}

body.single-product form.cart .single_add_to_cart_button::before,
body.single-product form.cart button.single_add_to_cart_button::before,
body.single-product form.cart .button.alt::before,
body.single-product form.cart .single_add_to_cart_button::after,
body.single-product form.cart button.single_add_to_cart_button::after,
body.single-product form.cart .button.alt::after {
	display: none !important;
	content: none !important;
}

/* =========================================================
   SINGLE PRODUCT — HIDE WOO NOTICES / REUSE TOAST STYLING
   ========================================================= */

body.single-product .woocommerce-notices-wrapper,
body.single-product .woocommerce-message,
body.single-product .woocommerce-info {
	display: none !important;
}

/* Same toast behavior on single product page */
body.single-product .candy-shop-toast {
	position: fixed;
	right: 24px;
	bottom: 24px;
	z-index: 999999;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	max-width: min(360px, calc(100vw - 32px));
	padding: 14px 16px;
	border-radius: 16px;
	background: rgba(31, 31, 31, 0.96);
	color: #ffffff;
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.22);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	opacity: 0;
	transform: translateY(14px) scale(0.98);
	pointer-events: none;
	transition:
		opacity 260ms ease,
		transform 260ms cubic-bezier(0.22, 1, 0.36, 1);
}

body.single-product .candy-shop-toast.is-visible {
	opacity: 1;
	transform: translateY(0) scale(1);
}

body.single-product .candy-shop-toast__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	border-radius: 999px;
	background: #08a05c;
	color: #ffffff;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	flex: 0 0 auto;
}

body.single-product .candy-shop-toast__text {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	color: #ffffff;
}

@media (max-width: 767px) {
	body.single-product .candy-shop-toast {
		right: 16px;
		bottom: 16px;
		padding: 13px 14px;
		border-radius: 14px;
	}
}

/* =========================================================
   SINGLE PRODUCT — RELATED PRODUCTS MATCH SHOP CARD ACTIONS
   ========================================================= */

body.single-product .related ul.products li.product .added_to_cart,
body.single-product .upsells ul.products li.product .added_to_cart {
	display: none !important;
}

body.single-product .related ul.products li.product .candy-shop-actions,
body.single-product .upsells ul.products li.product .candy-shop-actions {
	display: flex !important;
	align-items: stretch !important;
	width: 100% !important;
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.single-product .related ul.products li.product .candy-shop-actions__cart,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart {
	display: flex !important;
	width: 100% !important;
}

body.single-product .related ul.products li.product .candy-shop-actions__cart > a,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .button,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > a,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .button,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart {
	flex: 1 1 auto !important;
	width: 100% !important;
	min-width: 0 !important;
	min-height: 46px !important;
	padding: 13px 22px !important;
	border: 1px solid rgba(255, 255, 255, 0.18) !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #ff4b6e 0%, #ff5f7f 48%, #ff7894 100%) !important;
	color: #ffffff !important;
	font-size: 14.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;
	line-height: 1 !important;
	text-align: center !important;
	text-decoration: none !important;
	text-shadow: 0 1px 0 rgba(0, 0, 0, 0.08) !important;
	box-shadow:
		0 12px 24px rgba(255, 75, 110, 0.22),
		0 4px 10px rgba(255, 107, 138, 0.12),
		inset 0 1px 0 rgba(255, 255, 255, 0.24),
		inset 0 -10px 18px rgba(191, 34, 77, 0.12) !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: relative !important;
	overflow: hidden !important;
	isolation: isolate !important;
	transition:
		transform 0.24s ease,
		box-shadow 0.24s ease,
		filter 0.24s ease,
		border-color 0.24s ease !important;
}

body.single-product .related ul.products li.product .candy-shop-actions__cart > a::before,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .button::before,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .add_to_cart_button::before,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart::before,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > a::before,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .button::before,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .add_to_cart_button::before,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart::before {
	content: "";
	position: absolute;
	inset: 1px;
	border-radius: inherit;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.24) 0%,
		rgba(255, 255, 255, 0.1) 38%,
		rgba(255, 255, 255, 0) 100%
	);
	opacity: 0.95;
	pointer-events: none;
	z-index: 0;
}

body.single-product .related ul.products li.product .candy-shop-actions__cart > a::after,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .button::after,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .add_to_cart_button::after,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart::after,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > a::after,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .button::after,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .add_to_cart_button::after,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -32%;
	width: 34%;
	background: linear-gradient(
		120deg,
		rgba(255, 255, 255, 0) 0%,
		rgba(255, 255, 255, 0.18) 50%,
		rgba(255, 255, 255, 0) 100%
	);
	transform: skewX(-20deg) translateX(-180%);
	transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1);
	pointer-events: none;
	z-index: 0;
}

body.single-product .related ul.products li.product .candy-shop-actions__cart > a:hover,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .button:hover,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .add_to_cart_button:hover,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart:hover,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > a:hover,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .button:hover,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .add_to_cart_button:hover,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart:hover {
	transform: translateY(-2px) !important;
	color: #ffffff !important;
	border-color: rgba(255, 255, 255, 0.22) !important;
	box-shadow:
		0 16px 30px rgba(255, 75, 110, 0.28),
		0 6px 14px rgba(255, 107, 138, 0.16),
		inset 0 1px 0 rgba(255, 255, 255, 0.26),
		inset 0 -10px 18px rgba(191, 34, 77, 0.14) !important;
	filter: saturate(1.04) brightness(1.02) !important;
}

body.single-product .related ul.products li.product .candy-shop-actions__cart > a:hover::after,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .button:hover::after,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .add_to_cart_button:hover::after,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart:hover::after,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > a:hover::after,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .button:hover::after,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .add_to_cart_button:hover::after,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart:hover::after {
	transform: skewX(-20deg) translateX(420%);
}

/* =========================================================
   SINGLE PRODUCT — HIDE TOP 3 PRODUCTS UNDER MAIN PRODUCT
   ========================================================= */

body.single-product .woocommerce div.product > .upsells,
body.single-product .woocommerce div.product > .related,
body.single-product .woocommerce div.product .upsells.products,
body.single-product .woocommerce div.product .related.products {
	display: none !important;
}

/* === FINAL FIX: PERFECT BUTTON ALIGNMENT (ALL PAGES) === */

.candy-shop-actions .candy-shop-btn,
.candy-shop-actions .button {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;

	/* THIS fixes the vertical misalignment */
	line-height: 1 !important;

	/* Force identical sizing */
	height: 46px !important;
	min-height: 46px !important;

	/* Typography consistency */
	font-size: 14.5px !important;
	font-weight: 800 !important;
	letter-spacing: 0.02em !important;

	/* Prevent text shift */
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

/* Ensure both buttons share identical box model */
.candy-shop-actions > * > a,
.candy-shop-actions > .candy-quick-view__trigger {
	box-sizing: border-box !important;
}

/* =========================================================
   SINGLE PRODUCT RECOMMENDATIONS
   Match homepage product cards exactly
========================================================= */

/* Grid */
body.single-product .candy-home-products.candy-single-recommendations ul.products,
body.single-product .candy-home-products.candy-single-recommendations .products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products::before,
body.single-product .candy-home-products.candy-single-recommendations ul.products::after,
body.single-product .candy-home-products.candy-single-recommendations .products::before,
body.single-product .candy-home-products.candy-single-recommendations .products::after {
	display: none !important;
	content: none !important;
}

/* Card shell */
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product,
body.single-product .candy-home-products.candy-single-recommendations .products li.product {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.82) 0%,
			rgba(255, 248, 251, 0.78) 46%,
			rgba(247, 243, 250, 0.84) 100%
		) !important;
	border: 1px solid rgba(231, 220, 236, 0.92) !important;
	border-radius: 22px !important;
	padding: 18px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05),
		0 1px 0 rgba(255, 255, 255, 0.72) inset,
		0 -18px 32px rgba(255, 255, 255, 0.16) inset !important;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
	overflow: hidden !important;
	position: relative !important;
	margin: 0 !important;
	width: 100% !important;
	float: none !important;
	clear: none !important;
	text-align: left !important;
	list-style: none !important;
}

/* Make every direct child stack correctly */
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > *,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > * {
	width: 100% !important;
	float: none !important;
	clear: both !important;
	flex: 0 0 auto !important;
	position: relative;
	z-index: 1;
}

/* Image wrapper */
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.woocommerce-LoopProduct-link,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.woocommerce-loop-product__link,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a.woocommerce-LoopProduct-link,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a.woocommerce-loop-product__link {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 198px !important;
	margin: 0 0 12px !important;
	border-radius: 18px !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 247, 250, 0.7) 48%,
			rgba(246, 241, 249, 0.76) 100%
		) !important;
	border: 1px solid rgba(255, 255, 255, 0.58) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -10px 20px rgba(255, 255, 255, 0.16),
		0 8px 22px rgba(17, 24, 39, 0.04) !important;
	overflow: hidden !important;
	padding: 18px 18px 0 !important;
	text-align: left !important;
	position: relative !important;
}

/* Product image */
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product img,
body.single-product .candy-home-products.candy-single-recommendations .products li.product img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 205px !important;
	margin: 0 auto 12px !important;
	object-fit: contain !important;
	position: relative !important;
	z-index: 1 !important;
}

/* Title */
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product h2,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product .woocommerce-loop-product__title,
body.single-product .candy-home-products.candy-single-recommendations .products li.product h2,
body.single-product .candy-home-products.candy-single-recommendations .products li.product .woocommerce-loop-product__title {
	margin: 0 0 6px !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	color: #1b1b1f !important;
	text-align: left !important;
}

/* Price */
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product .price,
body.single-product .candy-home-products.candy-single-recommendations .products li.product .price {
	display: block !important;
	margin: 0 0 14px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	color: #08985a !important;
	text-align: left !important;
}

/* Badges: keep above image */
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product .candy-shop-badges,
body.single-product .candy-home-products.candy-single-recommendations .products li.product .candy-shop-badges {
	position: absolute !important;
	top: 14px !important;
	left: 14px !important;
	z-index: 5 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 8px !important;
	pointer-events: none !important;
	max-width: calc(100% - 28px) !important;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product .candy-shop-badge,
body.single-product .candy-home-products.candy-single-recommendations .products li.product .candy-shop-badge {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 28px !important;
	padding: 6px 10px !important;
	border-radius: 999px !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	line-height: 1 !important;
	letter-spacing: 0.2px !important;
	color: #ffffff !important;
	box-shadow: 0 8px 18px rgba(0, 0, 0, 0.12) !important;
	white-space: nowrap !important;
}

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-badge.is-sale { background: linear-gradient(135deg, #ff4b6e, #ff6b8a) !important; }
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-badge.is-outofstock { background: linear-gradient(135deg, #767676, #9b9b9b) !important; }
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-badge.is-new { background: linear-gradient(135deg, #5b7cff, #7a95ff) !important; }
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-badge.is-popular { background: linear-gradient(135deg, #ff9f1a, #ffbd59) !important; color: #ffffff !important; }
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-badge.is-sugarfree { background: linear-gradient(135deg, #08a05c, #20bf78) !important; }

/* Hide Woo extra button */
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.add_to_cart_button,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.ajax_add_to_cart,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > .button:not(.candy-quick-view__trigger),
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.button:not(.candy-quick-view__trigger) {
	display: none !important;
}

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions .added_to_cart,
body.single-product .candy-home-products.candy-single-recommendations a.added_to_cart {
	display: none !important;
}

/* Responsive */
@media (max-width: 1024px) {
	body.single-product .candy-home-products.candy-single-recommendations ul.products,
	body.single-product .candy-home-products.candy-single-recommendations .products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	body.single-product .candy-home-products.candy-single-recommendations ul.products,
	body.single-product .candy-home-products.candy-single-recommendations .products {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	body.single-product .candy-home-products.candy-single-recommendations ul.products li.product,
	body.single-product .candy-home-products.candy-single-recommendations .products li.product {
		padding: 16px !important;
		border-radius: 16px !important;
	}

	body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.woocommerce-LoopProduct-link,
	body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.woocommerce-loop-product__link,
	body.single-product .candy-home-products.candy-single-recommendations .products li.product > a.woocommerce-LoopProduct-link,
	body.single-product .candy-home-products.candy-single-recommendations .products li.product > a.woocommerce-loop-product__link {
		min-height: 180px !important;
	}

	body.single-product .candy-home-products.candy-single-recommendations ul.products li.product img,
	body.single-product .candy-home-products.candy-single-recommendations .products li.product img {
		max-height: 165px !important;
	}
}

/* ===== SINGLE PRODUCT RECOMMENDATIONS: EXACTLY MATCH HOMEPAGE CARDS ===== */

body.single-product .candy-home-products.candy-single-recommendations ul.products,
body.single-product .candy-home-products.candy-single-recommendations .products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products::before,
body.single-product .candy-home-products.candy-single-recommendations ul.products::after,
body.single-product .candy-home-products.candy-single-recommendations .products::before,
body.single-product .candy-home-products.candy-single-recommendations .products::after {
	display: none !important;
	content: none !important;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product,
body.single-product .candy-home-products.candy-single-recommendations .products li.product {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.82) 0%,
			rgba(255, 248, 251, 0.78) 46%,
			rgba(247, 243, 250, 0.84) 100%
		) !important;
	border: 1px solid rgba(231, 220, 236, 0.92) !important;
	border-radius: 22px !important;
	padding: 18px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.07),
		0 6px 18px rgba(255, 75, 110, 0.05),
		0 1px 0 rgba(255, 255, 255, 0.72) inset,
		0 -18px 32px rgba(255, 255, 255, 0.16) inset !important;
	backdrop-filter: blur(12px) saturate(1.08);
	-webkit-backdrop-filter: blur(12px) saturate(1.08);
	overflow: hidden !important;
	position: relative !important;
	margin: 0 !important;
	width: 100% !important;
	float: none !important;
	clear: none !important;
	text-align: left !important;
	list-style: none !important;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > *,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > * {
	width: 100% !important;
	float: none !important;
	clear: both !important;
	flex: 0 0 auto !important;
	position: relative;
	z-index: 1;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.woocommerce-LoopProduct-link,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.woocommerce-loop-product__link,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a:first-of-type,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a.woocommerce-LoopProduct-link,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a.woocommerce-loop-product__link,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a:first-of-type {
	display: block !important;
	min-height: auto !important;
	margin: 0 0 12px !important;
	padding: 18px 18px 0 !important;
	text-align: left !important;
	border-radius: 18px !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 247, 250, 0.70) 48%,
			rgba(246, 241, 249, 0.76) 100%
		) !important;
	border: 1px solid rgba(255, 255, 255, 0.58) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -10px 20px rgba(255, 255, 255, 0.16),
		0 8px 22px rgba(17, 24, 39, 0.04) !important;
	overflow: hidden !important;
	position: relative !important;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product img,
body.single-product .candy-home-products.candy-single-recommendations .products li.product img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 205px !important;
	margin: 0 auto 12px !important;
	object-fit: contain !important;
	position: relative !important;
	z-index: 1 !important;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product h2,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product .woocommerce-loop-product__title,
body.single-product .candy-home-products.candy-single-recommendations .products li.product h2,
body.single-product .candy-home-products.candy-single-recommendations .products li.product .woocommerce-loop-product__title {
	margin: 0 0 6px !important;
	font-size: 15px !important;
	font-weight: 750 !important;
	line-height: 1.45 !important;
	color: #1b1b1f !important;
	text-align: left !important;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product .price,
body.single-product .candy-home-products.candy-single-recommendations .products li.product .price {
	display: block !important;
	margin: 0 0 14px !important;
	font-size: 14px !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	color: #08985a !important;
	text-align: left !important;
}

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-badges {
	position: absolute !important;
	top: 14px !important;
	left: 14px !important;
	z-index: 5 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 8px !important;
	pointer-events: none !important;
	max-width: calc(100% - 28px) !important;
}

body.single-product .candy-home-products.candy-single-recommendations a.added_to_cart,
body.single-product .candy-home-products.candy-single-recommendations .added_to_cart {
	display: none !important;
}

@media (max-width: 1024px) {
	body.single-product .candy-home-products.candy-single-recommendations ul.products,
	body.single-product .candy-home-products.candy-single-recommendations .products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 767px) {
	body.single-product .candy-home-products.candy-single-recommendations ul.products,
	body.single-product .candy-home-products.candy-single-recommendations .products {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}
}

/* ===== SINGLE PRODUCT RECOMMENDATIONS: FINAL VISUAL MATCH TO HOME/SHOP ===== */

/* same premium edge ring */
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product::before,
body.single-product .candy-home-products.candy-single-recommendations .products li.product::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 22px;
	padding: 1px;
	background: linear-gradient(
		145deg,
		rgba(255, 255, 255, 0.62) 0%,
		rgba(255, 255, 255, 0.18) 22%,
		rgba(255, 120, 153, 0.18) 52%,
		rgba(255, 255, 255, 0.08) 78%,
		rgba(255, 255, 255, 0.5) 100%
	);
	opacity: 0.72;
	pointer-events: none;
	z-index: 0;
	transition: opacity 0.3s ease, filter 0.3s ease;
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product::after,
body.single-product .candy-home-products.candy-single-recommendations .products li.product::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: 22px;
	background:
		radial-gradient(
			ellipse at top center,
			rgba(255, 255, 255, 0.62) 0%,
			rgba(255, 227, 235, 0.18) 34%,
			rgba(255, 255, 255, 0) 68%
		),
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.26) 0%,
			rgba(255, 255, 255, 0.08) 26%,
			rgba(255, 255, 255, 0) 58%
		);
	opacity: 0.92;
	pointer-events: none;
	z-index: 0;
	transition: opacity 0.32s ease, transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product:hover::before,
body.single-product .candy-home-products.candy-single-recommendations .products li.product:hover::before {
	opacity: 1;
	filter: brightness(1.04);
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product:hover::after,
body.single-product .candy-home-products.candy-single-recommendations .products li.product:hover::after {
	opacity: 1;
	transform: translateY(-2px);
}

/* make the image shell match home/shop exactly */
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.woocommerce-LoopProduct-link,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.woocommerce-loop-product__link,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a:first-of-type,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a.woocommerce-LoopProduct-link,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a.woocommerce-loop-product__link,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a:first-of-type {
	order: 1 !important;
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	min-height: 198px !important;
	margin: 0 0 12px !important;
	padding: 0 !important;
	text-align: center !important;
	column-gap: 0 !important;
	row-gap: 0 !important;
	overflow: hidden !important;
	border-radius: 18px !important;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.78) 0%,
			rgba(255, 247, 250, 0.7) 48%,
			rgba(246, 241, 249, 0.76) 100%
		) !important;
	border: 1px solid rgba(255, 255, 255, 0.58) !important;
	box-shadow:
		inset 0 1px 0 rgba(255, 255, 255, 0.82),
		inset 0 -10px 20px rgba(255, 255, 255, 0.16),
		0 8px 22px rgba(17, 24, 39, 0.04) !important;
	position: relative !important;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.woocommerce-LoopProduct-link::before,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a.woocommerce-loop-product__link::before,
body.single-product .candy-home-products.candy-single-recommendations ul.products li.product > a:first-of-type::before,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a.woocommerce-LoopProduct-link::before,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a.woocommerce-loop-product__link::before,
body.single-product .candy-home-products.candy-single-recommendations .products li.product > a:first-of-type::before {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
	background:
		radial-gradient(
			circle at top,
			rgba(255, 255, 255, 0.54),
			rgba(255, 255, 255, 0) 56%
		);
	opacity: 0.88;
	pointer-events: none;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product img,
body.single-product .candy-home-products.candy-single-recommendations .products li.product img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 205px !important;
	margin: 0 auto !important;
	object-fit: contain !important;
	position: relative !important;
	z-index: 1 !important;
	transition:
		transform 0.46s cubic-bezier(0.22, 1, 0.36, 1),
		filter 0.34s ease,
		opacity 0.26s ease !important;
	transform-origin: center center !important;
}

body.single-product .candy-home-products.candy-single-recommendations ul.products li.product:hover img,
body.single-product .candy-home-products.candy-single-recommendations .products li.product:hover img {
	transform: translateY(-6px) scale(1.06);
	filter: saturate(1.06) contrast(1.01);
	opacity: 1;
}

/* Remove Quick View button (single product recommendations only) */
body.single-product .candy-home-products.candy-single-recommendations .button.quick-view,
body.single-product .candy-home-products.candy-single-recommendations .quick-view,
body.single-product .candy-home-products.candy-single-recommendations a.button[href*="quick"],
body.single-product .candy-home-products.candy-single-recommendations .yith-wcqv-button {
	display: none !important;
}

/* Make Add to Cart button full width */
body.single-product .candy-home-products.candy-single-recommendations .add_to_cart_button,
body.single-product .candy-home-products.candy-single-recommendations .button.product_type_simple,
body.single-product .candy-home-products.candy-single-recommendations a.button.add_to_cart_button {
	display: block !important;
	width: 100% !important;
	text-align: center !important;
	padding: 12px 16px !important;
	border-radius: 999px !important;
}

/* Make Add to Cart large & full width */
.candy-home-products .add_to_cart_button,
.candy-home-products a.button.add_to_cart_button {
    width: 100% !important;
    padding: 14px 18px !important;
    border-radius: 999px !important;
}

/* ===== SINGLE PRODUCT RECOMMENDATIONS: REMOVE QUICK VIEW, ONE FULL-WIDTH CTA ===== */

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions > .candy-quick-view__trigger {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	max-width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
}

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .candy-shop-btn,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > a,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .ajax_add_to_cart {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	height: 46px !important;
	min-height: 46px !important;
	padding: 0 22px !important;
}

/* SINGLE PRODUCT ONLY: hide Quick View + make Add to Cart longer */
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions > .candy-quick-view__trigger {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	max-width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
}

body.single-product .candy-home-products.candy-single-recommendations li.product .candy-shop-actions__cart > .candy-shop-btn,
body.single-product .candy-home-products.candy-single-recommendations li.product .candy-shop-actions__cart > a,
body.single-product .candy-home-products.candy-single-recommendations li.product .candy-shop-actions__cart > .button,
body.single-product .candy-home-products.candy-single-recommendations li.product .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .candy-home-products.candy-single-recommendations li.product .candy-shop-actions__cart > .ajax_add_to_cart {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	padding: 13px 22px !important;
	height: 46px !important;
	min-height: 46px !important;
	line-height: 20px !important;
	text-align: center !important;
}

/* =========================================================
   SINGLE PRODUCT ONLY — RELATED / RECOMMENDED PRODUCT CARDS
   One full-width Add to Cart button, no Quick View
   ========================================================= */

/* keep Quick View hidden */
body.single-product .related ul.products li.product .candy-quick-view__trigger,
body.single-product .upsells ul.products li.product .candy-quick-view__trigger,
body.single-product .candy-home-products.candy-single-recommendations .candy-quick-view__trigger,
body.single-product .related ul.products li.product .button.quick-view,
body.single-product .upsells ul.products li.product .button.quick-view,
body.single-product .candy-home-products.candy-single-recommendations .button.quick-view,
body.single-product .related ul.products li.product .quick-view,
body.single-product .upsells ul.products li.product .quick-view,
body.single-product .candy-home-products.candy-single-recommendations .quick-view {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	max-width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}

/* wrapper must occupy full row */
body.single-product .related ul.products li.product .candy-shop-actions__cart,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart {
	display: block !important;
	flex: 0 0 100% !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* actual Add to Cart button */
body.single-product .related ul.products li.product .candy-shop-actions__cart > a,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .button,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > a,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .button,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > a,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .ajax_add_to_cart {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	align-self: stretch !important;
	float: none !important;
	clear: both !important;
	position: relative !important;
	left: auto !important;
	right: auto !important;

	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;

	min-height: 46px !important;
	height: 46px !important;
	padding: 0 22px !important;

	text-align: center !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

/* remove Woo injected extra link */
body.single-product .related ul.products li.product .added_to_cart,
body.single-product .upsells ul.products li.product .added_to_cart,
body.single-product .candy-home-products.candy-single-recommendations .added_to_cart {
	display: none !important;
}

/* Kill any flex constraints on cart wrapper */
body.single-product .related ul.products li.product .candy-shop-actions__cart,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart {
	display: block !important;
	width: 100% !important;
	flex: none !important;
}

/* THE CRITICAL LINE: force button to behave like block */
body.single-product .related ul.products li.product a.add_to_cart_button,
body.single-product .upsells ul.products li.product a.add_to_cart_button,
body.single-product .candy-home-products.candy-single-recommendations a.add_to_cart_button,
body.single-product .related ul.products li.product .button,
body.single-product .upsells ul.products li.product .button,
body.single-product .candy-home-products.candy-single-recommendations .button {
	display: block !important;   /* 🔥 THIS fixes your issue */
	width: 100% !important;
	max-width: 100% !important;
}

/* =========================================================
   SINGLE PRODUCT ONLY — RELATED / RECOMMENDED CARDS
   One full-width Add to Cart button, Quick View hidden
   ========================================================= */

/* keep Quick View hidden */
body.single-product .related ul.products li.product .candy-quick-view__trigger,
body.single-product .upsells ul.products li.product .candy-quick-view__trigger,
body.single-product .candy-home-products.candy-single-recommendations .candy-quick-view__trigger,
body.single-product .related ul.products li.product .button.quick-view,
body.single-product .upsells ul.products li.product .button.quick-view,
body.single-product .candy-home-products.candy-single-recommendations .button.quick-view,
body.single-product .related ul.products li.product .quick-view,
body.single-product .upsells ul.products li.product .quick-view,
body.single-product .candy-home-products.candy-single-recommendations .quick-view {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	max-width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}

/* wrapper must take the full row */
body.single-product .related ul.products li.product .candy-shop-actions__cart,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart {
	display: block !important;
	flex: 0 0 100% !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* actual Add to Cart button */
body.single-product .related ul.products li.product .candy-shop-actions__cart > a,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .button,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .related ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > a,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .button,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .upsells ul.products li.product .candy-shop-actions__cart > .ajax_add_to_cart,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > a,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .ajax_add_to_cart {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	float: none !important;
	clear: both !important;
	position: relative !important;
	left: auto !important;
	right: auto !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	min-height: 46px !important;
	height: 46px !important;
	padding: 0 22px !important;
	text-align: center !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

/* remove Woo injected extra link */
body.single-product .related ul.products li.product .added_to_cart,
body.single-product .upsells ul.products li.product .added_to_cart,
body.single-product .candy-home-products.candy-single-recommendations .added_to_cart {
	display: none !important;
}

/* =========================================================
   SINGLE PRODUCT ONLY — RELATED / RECOMMENDED CTA FINAL FIX
   ========================================================= */

/* keep Quick View hidden */
body.single-product .candy-home-products.candy-single-recommendations .candy-quick-view__trigger,
body.single-product .candy-home-products.candy-single-recommendations .quick-view,
body.single-product .candy-home-products.candy-single-recommendations .button.quick-view {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	width: 0 !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}

/* force every intermediate wrapper to full width */
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart *,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions > *:not(.candy-quick-view__trigger) {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	box-sizing: border-box !important;
}

/* actual Add to Cart target — broad on purpose */
body.single-product .candy-home-products.candy-single-recommendations a.add_to_cart_button,
body.single-product .candy-home-products.candy-single-recommendations a.ajax_add_to_cart,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions a.button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions .button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions .candy-shop-btn,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions .candy-shop-btn--primary {
	display: flex !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	height: 46px !important;
	min-height: 46px !important;
	margin: 0 !important;
	padding: 0 22px !important;
	align-items: center !important;
	justify-content: center !important;
	float: none !important;
	clear: both !important;
	align-self: stretch !important;
	text-align: center !important;
	line-height: 1 !important;
	white-space: nowrap !important;
	border-radius: 999px !important;
}

/* hide Woo injected extra link */
body.single-product .candy-home-products.candy-single-recommendations .added_to_cart,
body.single-product .candy-home-products.candy-single-recommendations a.added_to_cart {
	display: none !important;
}

/* =========================================
   FORCE FULL-WIDTH ADD TO CART (FINAL FIX)
   ========================================= */

body.single-product .candy-home-products.candy-single-recommendations li.product a.add_to_cart_button,
body.single-product .candy-home-products.candy-single-recommendations li.product a.ajax_add_to_cart,
body.single-product .candy-home-products.candy-single-recommendations li.product a.button {
	display: flex !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;

	height: 46px !important;
	padding: 0 20px !important;

	align-items: center !important;
	justify-content: center !important;

	margin-top: auto !important; /* pushes it to bottom */
	float: none !important;
}

/* =========================================================
   SINGLE PRODUCT ONLY — RELATED / RECOMMENDED PRODUCTS
   One full-width Add to Cart button
   ========================================================= */

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin-top: auto !important;
	padding-top: 10px !important;
	gap: 0 !important;
	grid-template-columns: 1fr !important;
}

/* keep Quick View hidden */
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions > .candy-quick-view__trigger,
body.single-product .candy-home-products.candy-single-recommendations .button.quick-view,
body.single-product .candy-home-products.candy-single-recommendations .quick-view,
body.single-product .candy-home-products.candy-single-recommendations .yith-wcqv-button {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	width: 0 !important;
	min-width: 0 !important;
	max-width: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	overflow: hidden !important;
	pointer-events: none !important;
}

/* cart wrapper must take full row */
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	flex: 0 0 100% !important;
}

/* actual Add to Cart button */
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > a,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .add_to_cart_button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .ajax_add_to_cart,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .candy-shop-btn,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions__cart > .candy-shop-btn--primary {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 100% !important;
	box-sizing: border-box !important;
	margin: 0 !important;
	height: 46px !important;
	min-height: 46px !important;
	padding: 0 22px !important;
	text-align: center !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

/* remove any centering from generic product button rules */
body.single-product .candy-home-products.candy-single-recommendations .product .button,
body.single-product .candy-home-products.candy-single-recommendations .product a.button,
body.single-product .candy-home-products.candy-single-recommendations .product a.add_to_cart_button {
	margin: 0 !important;
}

/* hide Woo injected extra link */
body.single-product .candy-home-products.candy-single-recommendations .added_to_cart,
body.single-product .candy-home-products.candy-single-recommendations a.added_to_cart {
	display: none !important;
}

/* =========================================================
   SINGLE PRODUCT ONLY — RESTORE QUICK VIEW
   Related / recommended products section only
   ========================================================= */

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 12px !important;
	align-items: stretch !important;
	width: 100% !important;
	margin-top: auto !important;
	padding-top: 10px !important;
}

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions > .candy-quick-view__trigger,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions > .candy-shop-actions__cart {
	display: block !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100% !important;
	margin: 0 !important;
	visibility: visible !important;
	opacity: 1 !important;
	height: auto !important;
	pointer-events: auto !important;
}

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions > .candy-shop-actions__cart {
	display: flex !important;
	align-items: stretch !important;
}

body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions > .candy-shop-actions__cart > a,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions > .candy-shop-actions__cart > .button,
body.single-product .candy-home-products.candy-single-recommendations .candy-shop-actions > .candy-quick-view__trigger {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	height: 46px !important;
	min-height: 46px !important;
	padding: 0 16px !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	line-height: 1 !important;
	white-space: nowrap !important;
}

/* keep Woo injected extra link hidden */
body.single-product .candy-home-products.candy-single-recommendations .added_to_cart,
body.single-product .candy-home-products.candy-single-recommendations a.added_to_cart {
	display: none !important;
}

/* =========================================================
   SINGLE PRODUCT — DESCRIPTION / REVIEWS ACCORDION
   ========================================================= */

body.single-product .woocommerce-tabs,
body.single-product .woocommerce div.product .woocommerce-tabs {
	max-width: 1180px;
	margin: 36px auto 0 !important;
	padding: 0 16px !important;
}

body.single-product .woocommerce-tabs ul.tabs,
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs {
	display: none !important;
}

body.single-product .woocommerce-tabs .panel,
body.single-product .woocommerce div.product .woocommerce-tabs .panel {
	display: block !important;
	margin: 0 0 16px !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.single-product .woocommerce-tabs .candy-accordion-item,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-item {
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.9) 0%,
			rgba(255, 248, 251, 0.84) 100%
		) !important;
	border: 1px solid rgba(231, 220, 236, 0.92) !important;
	border-radius: 22px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.06),
		0 6px 18px rgba(255, 75, 110, 0.04),
		inset 0 1px 0 rgba(255, 255, 255, 0.76) !important;
	backdrop-filter: blur(12px) saturate(1.06);
	-webkit-backdrop-filter: blur(12px) saturate(1.06);
	overflow: hidden;
	margin-bottom: 16px !important;
}

body.single-product .woocommerce-tabs .candy-accordion-trigger,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-trigger {
	appearance: none;
	-webkit-appearance: none;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 22px;
	border: 0;
	background: transparent;
	color: #1b1b1f;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.2;
	text-align: left;
	cursor: pointer;
	box-shadow: none;
}

body.single-product .woocommerce-tabs .candy-accordion-trigger:hover,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-trigger:hover {
	background: rgba(255, 255, 255, 0.32);
}

body.single-product .woocommerce-tabs .candy-accordion-trigger:focus-visible,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-trigger:focus-visible {
	outline: 0;
	box-shadow: inset 0 0 0 3px rgba(255, 75, 110, 0.14);
}

body.single-product .woocommerce-tabs .candy-accordion-trigger-text,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-trigger-text {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}

body.single-product .woocommerce-tabs .candy-accordion-icon,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-icon {
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background:
		linear-gradient(
			180deg,
			rgba(255, 255, 255, 0.92) 0%,
			rgba(255, 245, 247, 0.82) 100%
		);
	border: 1px solid rgba(255, 213, 222, 0.8);
	color: #d93c63;
	font-size: 18px;
	font-weight: 800;
	line-height: 1;
	transition: transform 220ms ease;
}

body.single-product .woocommerce-tabs .candy-accordion-item.is-open .candy-accordion-icon,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-item.is-open .candy-accordion-icon {
	transform: rotate(45deg);
}

body.single-product .woocommerce-tabs .candy-accordion-content,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content {
	padding: 0 22px 22px;
	color: #4b5563;
	font-size: 15px;
	line-height: 1.75;
}

body.single-product .woocommerce-tabs .candy-accordion-content > :first-child,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content > :first-child {
	margin-top: 0 !important;
}

body.single-product .woocommerce-tabs .candy-accordion-content > :last-child,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content > :last-child {
	margin-bottom: 0 !important;
}

body.single-product .woocommerce-tabs .candy-accordion-content h2,
body.single-product .woocommerce-tabs .candy-accordion-content h3,
body.single-product .woocommerce-tabs .candy-accordion-content h4,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content h2,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content h3,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content h4 {
	color: #1b1b1f;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.35;
	margin: 0 0 12px;
}

body.single-product .woocommerce-tabs .candy-accordion-content p,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content p {
	margin: 0 0 14px;
}

body.single-product .woocommerce-tabs .candy-accordion-content ul,
body.single-product .woocommerce-tabs .candy-accordion-content ol,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content ul,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content ol {
	margin: 0 0 14px 18px;
	padding: 0;
}

body.single-product .woocommerce-tabs .candy-accordion-content table,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content table {
	width: 100%;
	border-collapse: collapse;
	background: rgba(255, 255, 255, 0.72);
	border-radius: 16px;
	overflow: hidden;
}

body.single-product .woocommerce-tabs .candy-accordion-content table th,
body.single-product .woocommerce-tabs .candy-accordion-content table td,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content table th,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content table td {
	padding: 12px 14px;
	border-bottom: 1px solid rgba(231, 220, 236, 0.82);
	text-align: left;
}

body.single-product .woocommerce-tabs .candy-accordion-content table tr:last-child th,
body.single-product .woocommerce-tabs .candy-accordion-content table tr:last-child td,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content table tr:last-child th,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content table tr:last-child td {
	border-bottom: 0;
}

body.single-product .woocommerce-tabs .candy-accordion-content[hidden],
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content[hidden] {
	display: none !important;
}

@media (max-width: 767px) {
	body.single-product .woocommerce-tabs,
	body.single-product .woocommerce div.product .woocommerce-tabs {
		margin-top: 24px !important;
		padding: 0 12px !important;
	}

	body.single-product .woocommerce-tabs .candy-accordion-trigger,
	body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-trigger {
		padding: 16px 16px;
		font-size: 16px;
	}

	body.single-product .woocommerce-tabs .candy-accordion-content,
	body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content {
		padding: 0 16px 16px;
		font-size: 14px;
		line-height: 1.7;
	}
}

/* =========================================================
   SINGLE PRODUCT — DESCRIPTION / REVIEWS ACCORDION
   ========================================================= */

body.single-product .woocommerce-tabs,
body.single-product .woocommerce div.product .woocommerce-tabs {
	max-width: 1180px;
	margin: 36px auto 0 !important;
	padding: 0 16px !important;
}

body.single-product .woocommerce-tabs ul.tabs,
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs {
	display: none !important;
}

body.single-product .woocommerce-tabs .candy-accordion-item,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-item {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.92) 0%,
		rgba(255, 248, 251, 0.86) 100%
	) !important;
	border: 1px solid rgba(231, 220, 236, 0.92) !important;
	border-radius: 22px !important;
	box-shadow:
		0 18px 38px rgba(17, 24, 39, 0.06),
		0 6px 18px rgba(255, 75, 110, 0.04),
		inset 0 1px 0 rgba(255, 255, 255, 0.78) !important;
	backdrop-filter: blur(12px) saturate(1.05);
	-webkit-backdrop-filter: blur(12px) saturate(1.05);
	overflow: hidden;
	margin: 0 0 16px !important;
}

body.single-product .woocommerce-tabs .panel,
body.single-product .woocommerce div.product .woocommerce-tabs .panel {
	display: block !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

body.single-product .woocommerce-tabs .candy-accordion-trigger,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-trigger {
	appearance: none;
	-webkit-appearance: none;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 22px;
	border: 0;
	background: transparent;
	color: #1b1b1f;
	font-size: 18px;
	font-weight: 800;
	line-height: 1.2;
	text-align: left;
	cursor: pointer;
}

body.single-product .woocommerce-tabs .candy-accordion-trigger:hover,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-trigger:hover {
	background: rgba(255, 255, 255, 0.34);
}

body.single-product .woocommerce-tabs .candy-accordion-trigger:focus-visible,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-trigger:focus-visible {
	outline: 0;
	box-shadow: inset 0 0 0 3px rgba(255, 75, 110, 0.14);
}

body.single-product .woocommerce-tabs .candy-accordion-trigger-text,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-trigger-text {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
}

body.single-product .woocommerce-tabs .candy-accordion-icon,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-icon {
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	border-radius: 999px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.94) 0%,
		rgba(255, 245, 247, 0.84) 100%
	);
	border: 1px solid rgba(255, 213, 222, 0.8);
	color: #d93c63;
	font-size: 18px;
	font-weight: 800;
	line-height: 1;
	transition: transform 220ms ease;
}

body.single-product .woocommerce-tabs .candy-accordion-item.is-open .candy-accordion-icon,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-item.is-open .candy-accordion-icon {
	transform: rotate(45deg);
}

body.single-product .woocommerce-tabs .candy-accordion-content,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content {
	padding: 0 22px 22px;
	color: #4b5563;
	font-size: 15px;
	line-height: 1.75;
}

body.single-product .woocommerce-tabs .candy-accordion-content[hidden],
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content[hidden] {
	display: none !important;
}

body.single-product .woocommerce-tabs .candy-accordion-content > :first-child,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content > :first-child {
	margin-top: 0 !important;
}

body.single-product .woocommerce-tabs .candy-accordion-content > :last-child,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content > :last-child {
	margin-bottom: 0 !important;
}

body.single-product .woocommerce-tabs .candy-accordion-content h2,
body.single-product .woocommerce-tabs .candy-accordion-content h3,
body.single-product .woocommerce-tabs .candy-accordion-content h4,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content h2,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content h3,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content h4 {
	color: #1b1b1f;
	font-size: 17px;
	font-weight: 800;
	line-height: 1.35;
	margin: 0 0 12px;
}

body.single-product .woocommerce-tabs .candy-accordion-content p,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content p {
	margin: 0 0 14px;
}

body.single-product .woocommerce-tabs .candy-accordion-content ul,
body.single-product .woocommerce-tabs .candy-accordion-content ol,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content ul,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content ol {
	margin: 0 0 14px 18px;
	padding: 0;
}

body.single-product .woocommerce-tabs .candy-accordion-content table,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content table {
	width: 100%;
	border-collapse: collapse;
	background: rgba(255, 255, 255, 0.72);
	border-radius: 16px;
	overflow: hidden;
}

body.single-product .woocommerce-tabs .candy-accordion-content table th,
body.single-product .woocommerce-tabs .candy-accordion-content table td,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content table th,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content table td {
	padding: 12px 14px;
	border-bottom: 1px solid rgba(231, 220, 236, 0.82);
	text-align: left;
}

body.single-product .woocommerce-tabs .candy-accordion-content table tr:last-child th,
body.single-product .woocommerce-tabs .candy-accordion-content table tr:last-child td,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content table tr:last-child th,
body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content table tr:last-child td {
	border-bottom: 0;
}

@media (max-width: 767px) {
	body.single-product .woocommerce-tabs,
	body.single-product .woocommerce div.product .woocommerce-tabs {
		margin-top: 24px !important;
		padding: 0 12px !important;
	}

	body.single-product .woocommerce-tabs .candy-accordion-trigger,
	body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-trigger {
		padding: 16px;
		font-size: 16px;
	}

	body.single-product .woocommerce-tabs .candy-accordion-content,
	body.single-product .woocommerce div.product .woocommerce-tabs .candy-accordion-content {
		padding: 0 16px 16px;
		font-size: 14px;
		line-height: 1.7;
	}
}

/* Reduce gap between accordion and recommendations */

body.single-product .woocommerce-tabs,
body.single-product .woocommerce div.product .woocommerce-tabs {
	margin-bottom: 12px !important; /* reduce this */
}

/* tighten the recommendations section spacing */
body.single-product .candy-home-products.candy-single-recommendations {
	margin-top: 8px !important;
	padding-top: 0 !important;
}

body.single-product .candy-home-products.candy-single-recommendations h2,
body.single-product .candy-home-products.candy-single-recommendations .section-title {
	margin-bottom: 6px;
	margin-top: 4px;
}

/* =========================================
   TIGHTEN GAP ABOVE RECOMMENDATIONS
   ========================================= */

/* reduce space after accordion */
body.single-product .woocommerce-tabs,
body.single-product .woocommerce div.product .woocommerce-tabs {
	margin-bottom: 2px !important;
}

/* pull recommendations section up */
body.single-product .candy-home-products.candy-single-recommendations {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* remove extra space on the heading */
body.single-product .candy-home-products.candy-single-recommendations h2,
body.single-product .candy-home-products.candy-single-recommendations .section-title {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

.wpml-ls-item {
  margin: 0 6px;
  font-weight: 500;
}

/* SINGLE PRODUCT — PUSH CONTENT BELOW FIXED HEADER */
body.single-product.admin-bar #content::before,
body.single-product.admin-bar main::before {
	content: "";
	display: block;
	height: 164px;
}

body.single-product:not(.admin-bar) #content::before,
body.single-product:not(.admin-bar) main::before {
	content: "";
	display: block;
	height: 132px;
}

@media (max-width: 767px) {
  .mobile-slide-menu {
    position: relative;
  }

  .mobile-slide-menu .elementor-nav-menu--dropdown {
    position: absolute;
    top: 100%;
    right: 0;
    left: auto;
    width: 260px;
    max-width: 85vw;
    opacity: 0;
    visibility: hidden;
    transform: translateX(-20px);
    transition: transform 0.28s ease, opacity 0.28s ease, visibility 0.28s ease;
    z-index: 9999;
  }

  .mobile-slide-menu .elementor-menu-toggle[aria-expanded="true"] + .elementor-nav-menu--dropdown,
  .mobile-slide-menu .elementor-menu-toggle.elementor-active + .elementor-nav-menu--dropdown,
  .mobile-slide-menu .elementor-nav-menu--dropdown.elementor-active {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }
}

@media (max-width: 767px) {
	body.candy-shop ul.products,
	body.candy-shop .woocommerce ul.products {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	body.candy-shop ul.products li.product,
	body.candy-shop .woocommerce ul.products li.product {
		padding: 16px !important;
	}

	body.candy-shop ul.products li.product .candy-shop-actions,
	body.candy-shop .woocommerce ul.products li.product .candy-shop-actions {
		gap: 8px !important;
		padding-top: 0 !important;
	}
}

@media (max-width: 767px) {
	body.tax-product_cat ul.products {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}
}

@media (max-width: 767px) {
	body.candy-shop ul.products,
	body.candy-shop .woocommerce ul.products,
	.candy-shop.woocommerce ul.products,
	body.tax-product_cat ul.products {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	body.candy-shop ul.products li.product,
	body.candy-shop .woocommerce ul.products li.product,
	.candy-shop.woocommerce ul.products li.product,
	body.tax-product_cat ul.products li.product {
		width: 100% !important;
		max-width: 100% !important;
	}
}

@media (max-width: 767px) {
  .candy-shop.woocommerce ul.products li.product {
    border-radius: 12px;
    padding: 16px;
  }
}

@media (max-width: 767px) {
  .candy-shop.woocommerce ul.products {
    gap: 20px !important;
  }
}

@media (max-width: 767px) {
  .candy-shop.woocommerce ul.products li.product h2 {
    font-size: 15px;
    line-height: 1.3;
  }
}

@media (max-width: 767px) {
  .candy-shop-actions a {
    padding: 10px !important;
  }
}

/* ==========================================
   MOBILE CONVERSION POLISH
   Archive cards only: Shop + product categories
   Desktop unchanged
   ========================================== */
@media (max-width: 767px) {

	/* 1) Stronger title/price hierarchy */
	.candy-shop.woocommerce ul.products li.product h2,
	.candy-shop.woocommerce ul.products li.product .woocommerce-loop-product__title,
	body.tax-product_cat.candy-shop ul.products li.product h2,
	body.tax-product_cat.candy-shop ul.products li.product .woocommerce-loop-product__title,
	body.tax-product_cat.woocommerce ul.products li.product h2,
	body.tax-product_cat.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 15px !important;
		line-height: 1.35 !important;
		font-weight: 750 !important;
		margin-bottom: 6px !important;
		letter-spacing: 0.005em !important;
		color: #1b1b1f !important;
	}

	.candy-shop.woocommerce ul.products li.product .price,
	body.tax-product_cat.candy-shop ul.products li.product .price,
	body.tax-product_cat.woocommerce ul.products li.product .price {
		display: block !important;
		margin: 0 0 12px !important;
		font-size: 16px !important;
		line-height: 1.25 !important;
		font-weight: 850 !important;
		color: #08985a !important;
		letter-spacing: 0 !important;
	}

	.candy-shop.woocommerce ul.products li.product .price del,
	body.tax-product_cat.candy-shop ul.products li.product .price del,
	body.tax-product_cat.woocommerce ul.products li.product .price del {
		font-size: 12px !important;
		font-weight: 600 !important;
		color: #9aa0a6 !important;
		opacity: 0.9 !important;
		margin-right: 6px !important;
	}

	.candy-shop.woocommerce ul.products li.product .price ins,
	body.tax-product_cat.candy-shop ul.products li.product .price ins,
	body.tax-product_cat.woocommerce ul.products li.product .price ins {
		font-size: 16px !important;
		font-weight: 850 !important;
		color: #08985a !important;
		text-decoration: none !important;
	}

	/* 2) Tighter card rhythm */
	.candy-shop.woocommerce ul.products li.product,
	body.tax-product_cat.candy-shop ul.products li.product,
	body.tax-product_cat.woocommerce ul.products li.product {
		padding: 14px !important;
		border-radius: 18px !important;
	}

	.candy-shop.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
	.candy-shop.woocommerce ul.products li.product > a.woocommerce-loop-product__link,
	.candy-shop.woocommerce ul.products li.product > a:first-of-type,
	body.tax-product_cat.candy-shop ul.products li.product > a.woocommerce-LoopProduct-link,
	body.tax-product_cat.candy-shop ul.products li.product > a.woocommerce-loop-product__link,
	body.tax-product_cat.candy-shop ul.products li.product > a:first-of-type,
	body.tax-product_cat.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link,
	body.tax-product_cat.woocommerce ul.products li.product > a.woocommerce-loop-product__link,
	body.tax-product_cat.woocommerce ul.products li.product > a:first-of-type {
		margin-bottom: 10px !important;
		min-height: 160px !important;
	}

	.candy-shop.woocommerce ul.products li.product img,
	body.tax-product_cat.candy-shop ul.products li.product img,
	body.tax-product_cat.woocommerce ul.products li.product img {
		max-height: 170px !important;
		margin: 0 auto 8px !important;
	}

	/* 3) Better badge restraint on mobile */
	.candy-shop.woocommerce ul.products li.product .candy-shop-badges,
	body.tax-product_cat.candy-shop ul.products li.product .candy-shop-badges,
	body.tax-product_cat.woocommerce ul.products li.product .candy-shop-badges {
		top: 10px !important;
		left: 10px !important;
		gap: 6px !important;
		max-width: calc(100% - 20px) !important;
	}

	.candy-shop.woocommerce ul.products li.product .candy-shop-badge,
	body.tax-product_cat.candy-shop ul.products li.product .candy-shop-badge,
	body.tax-product_cat.woocommerce ul.products li.product .candy-shop-badge {
		min-height: 24px !important;
		padding: 4px 8px !important;
		font-size: 10px !important;
		line-height: 1 !important;
		border-radius: 999px !important;
		box-shadow: 0 6px 14px rgba(0, 0, 0, 0.10) !important;
	}

	/* Show max two badges on mobile to reduce clutter */
	.candy-shop.woocommerce ul.products li.product .candy-shop-badges .candy-shop-badge:nth-child(n+3),
	body.tax-product_cat.candy-shop ul.products li.product .candy-shop-badges .candy-shop-badge:nth-child(n+3),
	body.tax-product_cat.woocommerce ul.products li.product .candy-shop-badges .candy-shop-badge:nth-child(n+3) {
		display: none !important;
	}

	/* 4) Stronger CTA hierarchy */
	.candy-shop.woocommerce ul.products li.product .candy-shop-actions,
	body.tax-product_cat.candy-shop ul.products li.product .candy-shop-actions,
	body.tax-product_cat.woocommerce ul.products li.product .candy-shop-actions {
		gap: 8px !important;
		padding-top: 0 !important;
		margin-top: 8px !important;
	}

	.candy-shop.woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
	.candy-shop.woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
	.candy-shop.woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
	body.tax-product_cat.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
	body.tax-product_cat.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
	body.tax-product_cat.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
	body.tax-product_cat.woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
	body.tax-product_cat.woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
	body.tax-product_cat.woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
		height: 42px !important;
		min-height: 42px !important;
		padding: 0 12px !important;
		font-size: 14px !important;
		font-weight: 800 !important;
		line-height: 1 !important;
	}

	/* Primary CTA stays dominant */
	.candy-shop.woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
	.candy-shop.woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
	body.tax-product_cat.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
	body.tax-product_cat.candy-shop ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button,
	body.tax-product_cat.woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > a,
	body.tax-product_cat.woocommerce ul.products li.product .candy-shop-actions > .candy-shop-actions__cart > .button {
		box-shadow:
			0 10px 20px rgba(255, 75, 110, 0.22),
			0 4px 10px rgba(255, 107, 138, 0.10),
			inset 0 1px 0 rgba(255, 255, 255, 0.22),
			inset 0 -8px 14px rgba(191, 34, 77, 0.10) !important;
	}

	/* Secondary CTA quieter */
	.candy-shop.woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
	body.tax-product_cat.candy-shop ul.products li.product .candy-shop-actions > .candy-quick-view__trigger,
	body.tax-product_cat.woocommerce ul.products li.product .candy-shop-actions > .candy-quick-view__trigger {
		background:
			linear-gradient(
				180deg,
				rgba(255, 255, 255, 0.96) 0%,
				rgba(255, 247, 249, 0.92) 100%
			) !important;
		color: #d93c63 !important;
		border: 1px solid rgba(255, 213, 222, 0.72) !important;
		box-shadow:
			inset 0 1px 0 rgba(255, 255, 255, 0.84),
			0 4px 10px rgba(17, 24, 39, 0.04) !important;
	}

	/* 5) Better scanability of the whole card */
	.candy-shop.woocommerce ul.products,
	body.tax-product_cat.candy-shop ul.products,
	body.tax-product_cat.woocommerce ul.products {
		gap: 18px !important;
	}
}