/**
 * Anabelis Bio — Single product page (strict Figma match).
 * Woodmart Elementor single-product builder + classic template.
 */

.anabelis-wc-presentation {
	--anabelis-gold: #c5a059;
	--anabelis-black: #111111;
	--anabelis-border: #e5e5e5;
	--anabelis-muted: #555555;
	--anabelis-max: none;
	--anabelis-sp-gutter: clamp(20px, 3vw, 40px);
	--anabelis-sp-image-max-w: 304px;
	--anabelis-sp-image-max-h: 416px;
}

/* Full-width main content — scoped to single product only (header/footer untouched) */
.anabelis-wc-presentation.single-product .wd-page-content {
	background-color: #ffffff;
	overflow-x: clip;
}

.anabelis-wc-presentation.single-product #main-content.wd-content-layout {
	max-width: none !important;
	width: 100% !important;
	padding-inline: 0 !important;
	padding-block: 0 !important;
	background-color: #ffffff;
	box-sizing: border-box;
}

.anabelis-wc-presentation.single-product .elementor-location-single,
.anabelis-wc-presentation.single-product .wd-single-product,
.anabelis-wc-presentation.single-product .single-product-page.entry-content {
	width: 100%;
	max-width: none;
}

.anabelis-wc-presentation.single-product #main-content .e-con.e-parent,
.anabelis-wc-presentation.single-product .elementor-location-single > .e-con,
.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con {
	--width: 100% !important;
	--content-width: 100% !important;
	max-width: none !important;
	width: 100% !important;
}

/* ========================================================================== */
/* Tagged containers (anabelis-sp__*) — reliable without :has()               */
/* ========================================================================== */

@media (min-width: 768px) {
	.anabelis-wc-presentation.single-product .anabelis-sp__hero > .e-con-inner {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: flex-start !important;
	}
}

.anabelis-wc-presentation.single-product .anabelis-sp__hero > .e-con-inner {
	gap: clamp(32px, 5vw, 72px) !important;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: clamp(24px, 3vw, 48px) var(--anabelis-sp-gutter);
	box-sizing: border-box;
}

@media (min-width: 1200px) {
	.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary {
		flex: 1 1 calc(50% - 36px) !important;
		width: calc(50% - 36px) !important;
		max-width: calc(50% - 36px) !important;
		min-width: 280px;
		margin: 0 !important;
		position: static !important;
		top: auto !important;
		transform: none !important;
	}
}

.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery,
.anabelis-wc-presentation.single-product .anabelis-sp__w-gallery {
	align-self: flex-start !important;
	padding-top: 0 !important;
	margin-top: 0 !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery > .e-con-inner {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__col-summary > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__title-wrap {
	margin: 0 0 20px;
	width: 100%;
}

.anabelis-wc-presentation.single-product .anabelis-sp__title-wrap .product_title {
	margin: 0 !important;
}

.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_title,
.anabelis-wc-presentation.single-product .anabelis-sp__w-title:not(.anabelis-sp__title-wrap) {
	display: none !important;
	height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-entities-title,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .woocommerce-loop-product__title {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	max-height: none !important;
	overflow: visible !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-variations {
	order: 2 !important;
	width: 100%;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-cart {
	order: 3 !important;
	width: 100%;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-wishlist {
	order: 4 !important;
}

/* Hide wishlist on single product — frees cart row width */
.anabelis-wc-presentation.single-product .anabelis-sp__w-wishlist,
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_wishlist_button,
.anabelis-wc-presentation.single-product .wd-wishlist-btn,
.anabelis-wc-presentation.single-product a.wd-wishlist-btn {
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	overflow: hidden !important;
	visibility: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	pointer-events: none !important;
}

.anabelis-wc-presentation.single-product .e-con:has(.elementor-widget-wd_single_product_add_to_cart):has(.elementor-widget-wd_single_product_wishlist_button) .elementor-widget-wd_single_product_add_to_cart {
	flex: 1 1 100% !important;
	max-width: 100% !important;
	width: 100% !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery .product-labels,
.anabelis-wc-presentation.single-product .anabelis-sp__w-gallery .product-labels {
	display: none !important;
}

/* ========================================================================== */
/* ELEMENTOR SINGLE PRODUCT (Woodmart builder)                                */
/* ========================================================================== */

.anabelis-wc-presentation.single-product .elementor-location-single,
.anabelis-wc-presentation.single-product .wd-single-product,
.anabelis-wc-presentation.single-product .single-product-page.entry-content {
	background: #ffffff;
}

/* Hero row: 50/50 columns, full page width with edge padding */
.anabelis-wc-presentation.single-product .elementor-location-single > .e-con,
.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child {
	max-width: none;
	width: 100%;
	margin-left: 0;
	margin-right: 0;
}

.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner,
.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child > .e-con-inner {
	display: flex !important;
	flex-wrap: wrap;
	align-items: flex-start !important;
	gap: clamp(40px, 6vw, 80px) !important;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: clamp(32px, 4vw, 56px) var(--anabelis-sp-gutter) clamp(24px, 3vw, 40px);
	box-sizing: border-box;
}

.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner > .e-con,
.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child > .e-con-inner > .e-con {
	flex: 1 1 calc(50% - 40px) !important;
	width: calc(50% - 40px) !important;
	max-width: calc(50% - 40px) !important;
	min-width: 280px;
}

/* Remove Woodmart demo sticky offset on summary column */
.anabelis-wc-presentation.single-product .e-con:has(.elementor-widget-wd_single_product_title) {
	margin-top: 0 !important;
	position: static !important;
	top: auto !important;
	transform: none !important;
}

/*
 * Summary column order (fixes title appearing at bottom).
 * Flex order 0 beats order 1 — every sibling needs an explicit order.
 */
.anabelis-wc-presentation.single-product .e-con:has(> .e-con-inner > .elementor-widget-wd_single_product_title) > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	gap: 0 !important;
}

.anabelis-wc-presentation.single-product .e-con:has(> .e-con-inner > .elementor-widget-wd_single_product_title) > .e-con-inner > .elementor-widget-wd_wc_notices {
	order: 0 !important;
}

.anabelis-wc-presentation.single-product .e-con:has(> .e-con-inner > .elementor-widget-wd_single_product_title) > .e-con-inner > .elementor-widget-wd_single_product_title {
	order: 1 !important;
	width: 100%;
}

.anabelis-wc-presentation.single-product .e-con:has(> .e-con-inner > .elementor-widget-wd_single_product_title) > .e-con-inner > .elementor-widget-wd_single_product_linked_variations {
	order: 2 !important;
	width: 100%;
}

.anabelis-wc-presentation.single-product .e-con:has(> .e-con-inner > .elementor-widget-wd_single_product_title) > .e-con-inner > .e-con:has(.elementor-widget-wd_single_product_add_to_cart) {
	order: 3 !important;
	width: 100% !important;
	max-width: 100% !important;
	flex: 1 1 auto !important;
}

.anabelis-wc-presentation.single-product .e-con:has(> .e-con-inner > .elementor-widget-wd_single_product_title) > .e-con-inner > .elementor-widget-wd_single_product_price,
.anabelis-wc-presentation.single-product .e-con:has(> .e-con-inner > .elementor-widget-wd_single_product_title) > .e-con-inner > .elementor-widget-wd_single_product_short_description,
.anabelis-wc-presentation.single-product .e-con:has(> .e-con-inner > .elementor-widget-wd_single_product_title) > .e-con-inner > .elementor-widget-wd_single_product_content,
.anabelis-wc-presentation.single-product .e-con:has(> .e-con-inner > .elementor-widget-wd_single_product_title) > .e-con-inner > .elementor-widget-wd_single_product_additional_info_table {
	order: 98 !important;
	display: none !important;
	height: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

/* Cart + wishlist inner row */
.anabelis-wc-presentation.single-product .e-con:has(.elementor-widget-wd_single_product_add_to_cart):has(.elementor-widget-wd_single_product_wishlist_button) > .e-con-inner {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: flex-end !important;
	gap: 12px !important;
	width: 100%;
}

.anabelis-wc-presentation.single-product .e-con:has(.elementor-widget-wd_single_product_add_to_cart):has(.elementor-widget-wd_single_product_wishlist_button) .elementor-widget-wd_single_product_add_to_cart {
	flex: 1 1 calc(100% - 52px) !important;
	max-width: calc(100% - 52px) !important;
	order: 0 !important;
}

.anabelis-wc-presentation.single-product .e-con:has(.elementor-widget-wd_single_product_add_to_cart):has(.elementor-widget-wd_single_product_wishlist_button) .elementor-widget-wd_single_product_wishlist_button {
	flex: 0 0 auto !important;
	order: 1 !important;
	align-self: flex-end;
	margin-bottom: 8px;
}

/* Hidden via PHP; keep as safety net */
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_price,
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_short_description,
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_content,
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_additional_info_table,
.anabelis-wc-presentation.single-product .wd-single-short-desc,
.anabelis-wc-presentation.single-product .summary .woocommerce-product-details__short-description:not(.anabelis-sp__description-content) {
	display: none !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__description-block {
	width: 100%;
}

/* Disable single product gallery hover / zoom / image swap */
.anabelis-wc-presentation.single-product .woocommerce-product-gallery__image a {
	pointer-events: none;
	cursor: default;
}

.anabelis-wc-presentation.single-product .woocommerce-product-gallery__image img,
.anabelis-wc-presentation.single-product .product-images img,
.anabelis-wc-presentation.single-product .wd-gallery-images img {
	transform: none !important;
	transition: none !important;
	opacity: 1 !important;
}

.anabelis-wc-presentation.single-product .woocommerce-product-gallery__image:hover img,
.anabelis-wc-presentation.single-product .product-images .product-image-link:hover img {
	transform: none !important;
	opacity: 1 !important;
}

.anabelis-wc-presentation.single-product .wd-gallery-images .wd-hover-img,
.anabelis-wc-presentation.single-product .product-element-top .hover-img,
.anabelis-wc-presentation.single-product .wd-gallery-images figure + figure,
.anabelis-wc-presentation.single-product .product-images .wd-additional-img {
	display: none !important;
}

.anabelis-wc-presentation.single-product .woocommerce-product-gallery__trigger,
.anabelis-wc-presentation.single-product .wd-action-zoom,
.anabelis-wc-presentation.single-product .wd-gallery-zoom {
	display: none !important;
}

/* Gallery — left column, contained white-bg image */
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_gallery,
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_gallery .product-images,
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_gallery .woocommerce-product-gallery {
	background: #ffffff !important;
	width: 100%;
}

.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_gallery .woocommerce-product-gallery__wrapper,
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_gallery .woocommerce-product-gallery__image,
.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery .woocommerce-product-gallery,
.anabelis-wc-presentation.single-product .anabelis-sp__w-gallery .woocommerce-product-gallery {
	display: flex !important;
	align-items: flex-start !important;
	justify-content: center !important;
	min-height: 0 !important;
	max-height: none !important;
	max-width: min(100%, var(--anabelis-sp-image-max-w, 304px)) !important;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	padding: 0 12px 16px !important;
	background: #ffffff !important;
	overflow: visible !important;
}

.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_gallery .woocommerce-product-gallery__image:not(:first-child),
.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery .woocommerce-product-gallery__image:not(:first-child),
.anabelis-wc-presentation.single-product .anabelis-sp__w-gallery .woocommerce-product-gallery__image:not(:first-child) {
	display: none !important;
}

.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_gallery img,
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_gallery .woocommerce-product-gallery__image img,
.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery img,
.anabelis-wc-presentation.single-product .anabelis-sp__w-gallery img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: min(100%, var(--anabelis-sp-image-max-w, 304px)) !important;
	max-height: var(--anabelis-sp-image-max-h, 416px) !important;
	object-fit: contain !important;
	margin: 0 auto !important;
	box-shadow: none !important;
	filter: none !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery .product-element-top::before,
.anabelis-wc-presentation.single-product .anabelis-sp__w-gallery .product-element-top::before,
.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery .wd-product-thumb::before,
.anabelis-wc-presentation.single-product .anabelis-sp__w-gallery .wd-product-thumb::before {
	display: none !important;
	content: none !important;
	padding: 0 !important;
}

/* Title */
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_title .product_title,
.anabelis-wc-presentation.single-product .product_title.entry-title {
	margin: 0 0 20px !important;
	padding: 0 !important;
	font-size: clamp(2rem, 3vw, 2.65rem) !important;
	font-weight: 600 !important;
	line-height: 1.08 !important;
	color: var(--anabelis-black) !important;
	letter-spacing: -0.02em;
}

/* ========================================================================== */
/* Variations / Size (Figma box buttons in a row)                             */
/* ========================================================================== */

.anabelis-wc-presentation.single-product table.variations {
	margin: 0 0 20px !important;
	width: 100%;
	border: 0 !important;
	border-collapse: collapse;
}

.anabelis-wc-presentation.single-product table.variations tbody {
	display: block;
}

.anabelis-wc-presentation.single-product table.variations tr {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: center !important;
	gap: 12px 16px !important;
	margin-bottom: 0 !important;
}

/* Woodmart wd-label-top-* stacks label above swatches — force inline Figma row */
.anabelis-wc-presentation.single-product form.variations_form.wd-label-top-md table.variations .cell,
.anabelis-wc-presentation.single-product form.variations_form.wd-label-top-lg table.variations .cell,
.anabelis-wc-presentation.single-product form.variations_form table.variations .cell {
	display: block !important;
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
}

.anabelis-wc-presentation.single-product form.variations_form.wd-label-top-md table.variations .label,
.anabelis-wc-presentation.single-product form.variations_form.wd-label-top-lg table.variations .label,
.anabelis-wc-presentation.single-product form.variations_form table.variations .label {
	margin-bottom: 0 !important;
	padding-right: 0 !important;
	padding-bottom: 0 !important;
}

.anabelis-wc-presentation.single-product table.variations th.label,
.anabelis-wc-presentation.single-product table.variations td.label,
.anabelis-wc-presentation.single-product table.variations th.label.cell,
.anabelis-wc-presentation.single-product table.variations td.label.cell {
	display: block !important;
	flex: 0 0 auto !important;
	width: auto !important;
	padding: 0 !important;
	border: 0 !important;
	text-align: left;
	vertical-align: middle;
	white-space: nowrap;
}

.anabelis-wc-presentation.single-product table.variations td.value,
.anabelis-wc-presentation.single-product table.variations td.value.cell {
	display: block !important;
	flex: 1 1 auto !important;
	width: auto !important;
	min-width: 0;
	padding: 0 !important;
	border: 0 !important;
}

.anabelis-wc-presentation.single-product table.variations td.value.with-swatches select,
.anabelis-wc-presentation.single-product table.variations td.value select.wd-changes-variation-image {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

.anabelis-wc-presentation.single-product table.variations .wd-reset-var,
.anabelis-wc-presentation.single-product table.variations .reset_variations {
	display: none !important;
}

.anabelis-wc-presentation.single-product .wd-swatches-product,
.anabelis-wc-presentation.single-product .wd-swatches-product.wd-swatches-grid {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin: 0 !important;
}

.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch,
.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch.wd-text {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 72px !important;
	min-height: 40px !important;
	padding: 8px 16px !important;
	border-radius: 0 !important;
	border: 1px solid #cccccc !important;
	background: #ffffff !important;
	font-size: 0.9rem !important;
	font-weight: 500 !important;
	color: var(--anabelis-black) !important;
	box-shadow: none !important;
	cursor: pointer;
}

.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch::after,
.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch.wd-active::after,
.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch:hover::after {
	display: none !important;
	content: none !important;
	opacity: 0 !important;
}

.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch-bg::before {
	border: none !important;
	box-shadow: none !important;
}

.anabelis-wc-presentation.single-product .wd-swatches-product.wd-swatches-single .wd-swatch-text {
	font-size: 0.9rem !important;
	font-weight: 500 !important;
	color: var(--anabelis-black) !important;
}

.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch.wd-active,
.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch:hover,
.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch.wd-active .wd-swatch-bg {
	border: 1px solid var(--anabelis-black) !important;
	box-shadow: none !important;
	background: #ffffff !important;
	color: var(--anabelis-black) !important;
}

.anabelis-wc-presentation.single-product table.variations select {
	display: none !important;
}

.anabelis-wc-presentation.single-product table.variations th.label label,
.anabelis-wc-presentation.single-product table.variations td.label label {
	font-size: 0.95rem !important;
	font-weight: 500 !important;
	color: #333333 !important;
	margin: 0 !important;
}

.anabelis-wc-presentation.single-product table.variations label::after {
	content: none !important;
	display: none !important;
}

/* Linked variations (separate widget) */
.anabelis-wc-presentation.single-product .wd-single-linked-variations .wd-swatches-product {
	margin-bottom: 16px !important;
}

/* Price row — after size, before qty/buttons */
.anabelis-wc-presentation.single-product .anabelis-sp__price-row {
	margin: 0 0 20px;
	padding: 0;
	min-height: 1.35em;
}

.anabelis-wc-presentation.single-product .anabelis-sp__price-row .price {
	display: block;
	margin: 0;
}

.anabelis-wc-presentation.single-product .anabelis-sp__price-row .price,
.anabelis-wc-presentation.single-product .anabelis-sp__price-row .woocommerce-Price-amount {
	font-size: clamp(1.35rem, 1.8vw, 1.5rem) !important;
	font-weight: 500 !important;
	color: var(--anabelis-black) !important;
}

.anabelis-wc-presentation.single-product .summary .price:not(.anabelis-sp__price-row .price),
.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_add_to_cart > .price {
	display: none !important;
}

.anabelis-wc-presentation.single-product .single_variation_wrap > .woocommerce-variation .woocommerce-variation-price,
.anabelis-wc-presentation.single-product .single_variation_wrap .woocommerce-variation-price {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

/* ========================================================================== */
/* Cart row — qty + Add to Cart + Buy Now in one row (Figma)                  */
/* ========================================================================== */

.anabelis-wc-presentation.single-product form.cart,
.anabelis-wc-presentation.single-product form.variations_form {
	display: block !important;
	margin: 0 !important;
	width: 100%;
}

.anabelis-wc-presentation.single-product form.cart .single_variation_wrap {
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
}

.anabelis-wc-presentation.single-product form.variations_form .single_variation_wrap .woocommerce-variation {
	margin: 0 !important;
	padding: 0 !important;
}

.anabelis-wc-presentation.single-product form.cart .woocommerce-variation-add-to-cart {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	gap: 10px !important;
	width: 100%;
	margin: 0 !important;
}

/* Simple products: price on its own row (same as variable) */
.anabelis-wc-presentation.single-product form.cart:not(.variations_form) {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: stretch !important;
	gap: 10px !important;
	width: 100%;
	margin: 0 !important;
}

.anabelis-wc-presentation.single-product form.cart:not(.variations_form) .anabelis-sp__price-row,
.anabelis-wc-presentation.single-product form.cart:not(.variations_form) .anabelis-sp__price-row--simple {
	flex: 0 0 100% !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 16px !important;
	order: 0;
}

.anabelis-wc-presentation.single-product form.cart:not(.variations_form) > .quantity,
.anabelis-wc-presentation.single-product form.cart:not(.variations_form) > div.quantity,
.anabelis-wc-presentation.single-product form.cart:not(.variations_form) > .single_add_to_cart_button,
.anabelis-wc-presentation.single-product form.cart:not(.variations_form) > .wd-buy-now-btn,
.anabelis-wc-presentation.single-product form.cart:not(.variations_form) > button.wd-buy-now-btn {
	flex: 0 0 auto !important;
	max-width: none !important;
}

/* Woodmart qty uses +/- buttons (~110px); do not squeeze to 52px */
.anabelis-wc-presentation.single-product form.cart .quantity,
.anabelis-wc-presentation.single-product form.cart div.quantity {
	margin: 0 !important;
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	display: inline-flex !important;
	vertical-align: top !important;
	white-space: nowrap !important;
	position: relative !important;
	inset: auto !important;
	height: auto !important;
	filter: none !important;
	transform: none !important;
}

.anabelis-wc-presentation.single-product form.cart.wd-quantity-overlap .quantity,
.anabelis-wc-presentation.single-product .wd-quantity-overlap form.cart .quantity {
	position: relative !important;
	bottom: auto !important;
	inset-inline-start: auto !important;
	z-index: auto !important;
}

.anabelis-wc-presentation.single-product form.cart .quantity .qty,
.anabelis-wc-presentation.single-product form.cart .quantity input[type="number"],
.anabelis-wc-presentation.single-product form.cart .quantity input[type="text"] {
	min-height: 48px !important;
	height: 48px !important;
	width: 42px !important;
	min-width: 42px !important;
	max-width: 42px !important;
	text-align: center;
	border: 1px solid #d8d8d8 !important;
	border-radius: 0 !important;
	font-size: 0.95rem;
	padding: 0 !important;
}

.anabelis-wc-presentation.single-product form.cart .quantity input[type="button"] {
	min-height: 48px !important;
	height: 48px !important;
	min-width: 32px !important;
	width: auto !important;
	padding: 0 8px !important;
	border: 1px solid #d8d8d8 !important;
	border-radius: 0 !important;
	background: #ffffff !important;
	color: var(--anabelis-black) !important;
	box-shadow: none !important;
}

.anabelis-wc-presentation.single-product form.cart.wd-quantity-overlap .single_add_to_cart_button,
.anabelis-wc-presentation.single-product form.cart .quantity:not(.hidden) + .single_add_to_cart_button {
	padding-inline-start: 20px !important;
}

.anabelis-wc-presentation.single-product form.cart .single_add_to_cart_button,
.anabelis-wc-presentation.single-product form.cart button.single_add_to_cart_button {
	flex: 1 1 0 !important;
	width: auto !important;
	min-width: 140px !important;
	max-width: none !important;
	min-height: 48px !important;
	padding: 0 20px !important;
	background: var(--anabelis-black) !important;
	color: #ffffff !important;
	border: 1px solid var(--anabelis-black) !important;
	border-radius: 0 !important;
	font-weight: 600 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

.anabelis-wc-presentation.single-product form.cart .single_add_to_cart_button:hover {
	background: #000000 !important;
	color: #ffffff !important;
}

.anabelis-wc-presentation.single-product .wd-buy-now-btn,
.anabelis-wc-presentation.single-product a.buy_now_button,
.anabelis-wc-presentation.single-product .wd-action-btn.wd-buy-now-btn,
.anabelis-wc-presentation.single-product button.wd-buy-now-btn {
	flex: 1 1 0 !important;
	width: auto !important;
	min-width: 120px !important;
	max-width: none !important;
	min-height: 48px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 16px !important;
	background: transparent !important;
	color: var(--anabelis-gold) !important;
	border: 1px solid var(--anabelis-gold) !important;
	border-radius: 0 !important;
	font-weight: 600 !important;
	text-transform: none !important;
	margin: 0 !important;
}

.anabelis-wc-presentation.single-product .wd-buy-now-btn:hover,
.anabelis-wc-presentation.single-product a.buy_now_button:hover,
.anabelis-wc-presentation.single-product button.wd-buy-now-btn:hover {
	background: var(--anabelis-gold) !important;
	color: #111111 !important;
}

/* Inner add-to-cart row (cart + wishlist container in Elementor) — handled above */

/* Product description — after cart (Figma) */
.anabelis-wc-presentation.single-product .anabelis-sp__description-block {
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid var(--anabelis-border);
	width: 100%;
}

.anabelis-wc-presentation.single-product .anabelis-sp__section-title {
	margin: 0 0 8px;
	font-size: 1rem;
	font-weight: 600;
	color: var(--anabelis-black);
}

.anabelis-wc-presentation.single-product .anabelis-sp__description-content {
	font-size: 0.92rem;
	line-height: 1.6;
	color: var(--anabelis-muted);
}

.anabelis-wc-presentation.single-product .anabelis-sp__description-content p {
	margin: 0 0 0.45em;
}

.anabelis-wc-presentation.single-product .anabelis-sp__description-content p:last-child {
	margin-bottom: 0;
}

/* ========================================================================== */
/* Classic Woodmart template (non-Elementor fallback)                         */
/* ========================================================================== */

.anabelis-wc-presentation.single-product .product-image-summary {
	display: grid !important;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(40px, 6vw, 80px);
	align-items: start;
	width: 100%;
	max-width: none;
	margin: 0;
	padding: clamp(32px, 4vw, 56px) var(--anabelis-sp-gutter);
	background: #ffffff !important;
	box-sizing: border-box;
}

.anabelis-wc-presentation.single-product .product-image-summary .product-images {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 205px;
	max-width: min(100%, var(--anabelis-sp-image-max-w, 304px));
	margin-left: auto;
	margin-right: auto;
	padding: 24px 12px;
	background: #ffffff !important;
}

.anabelis-wc-presentation.single-product .product-image-summary .woocommerce-product-gallery__image img,
.anabelis-wc-presentation.single-product .product-image-summary .wp-post-image {
	max-width: min(100%, var(--anabelis-sp-image-max-w, 304px)) !important;
	max-height: var(--anabelis-sp-image-max-h, 416px) !important;
	object-fit: contain !important;
	margin: 0 auto !important;
	box-shadow: none !important;
}

.anabelis-wc-presentation.single-product .summary-inner {
	display: flex;
	flex-direction: column;
}

.anabelis-wc-presentation.single-product .summary-inner .product_title {
	order: 1;
}

.anabelis-wc-presentation.single-product .summary-inner .variations_form,
.anabelis-wc-presentation.single-product .summary-inner form.cart {
	order: 3;
}

.anabelis-wc-presentation.single-product .summary-inner .anabelis-sp__description-block {
	order: 4;
}

/* ========================================================================== */
/* Below-hero stack (details + batch + similar collection) — unified margins  */
/* ========================================================================== */

.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack > .e-con-inner,
.anabelis-wc-presentation.single-product .e-con.anabelis-sp__lower-stack > .e-con-inner {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	gap: 0 !important;
	width: 100% !important;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: var(--anabelis-sp-gutter) !important;
	padding-right: var(--anabelis-sp-gutter) !important;
	box-sizing: border-box !important;
}

/* Content wrapper — horizontal inset lives on .e-con-inner above, not here (avoids double pad) */
.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack-content {
	width: 100%;
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box;
}

/* Nested inside hero row — inherit hero inset only (no second horizontal pad) */
.anabelis-wc-presentation.single-product .anabelis-sp__hero .anabelis-sp__lower-stack > .e-con-inner,
.anabelis-wc-presentation.single-product .anabelis-sp__hero .e-con.anabelis-sp__lower-stack > .e-con-inner {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Elementor anchor widgets — PHP renders the visible section above them */
.anabelis-wc-presentation.single-product .anabelis-sp__w-similar-collection,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection,
.anabelis-wc-presentation.single-product .elementor-widget-anabelis_similar_collection:has(.elementor-widget-container:empty),
.anabelis-wc-presentation.single-product .elementor-widget-wd_products.anabelis-sp__w-related-collection {
	display: none !important;
	margin: 0 !important;
	padding: 0 !important;
	height: 0 !important;
	min-height: 0 !important;
	overflow: hidden !important;
	visibility: hidden !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack > .e-con-inner > *,
.anabelis-wc-presentation.single-product .e-con.anabelis-sp__lower-stack > .e-con-inner > * {
	flex: 0 0 auto !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__below-hero {
	display: block !important;
	flex: 0 0 100% !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	clear: both !important;
	position: relative !important;
	float: none !important;
	box-sizing: border-box !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__below-hero .anabelis-sp__details-grid,
.anabelis-wc-presentation.single-product .anabelis-sp__below-hero .anabelis-bv-product {
	width: 100% !important;
	max-width: 100% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	float: none !important;
	position: relative !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-similar-collection,
.anabelis-wc-presentation.single-product .elementor-widget-anabelis_similar_collection {
	flex: 0 0 100% !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
}

/* Fallback when lower-stack class is missing: force full row in flex parents */
.anabelis-wc-presentation.single-product .e-con-inner:has(.anabelis-sp__below-hero),
.anabelis-wc-presentation.single-product .e-con-inner:has(.anabelis-sp__w-similar-collection),
.anabelis-wc-presentation.single-product .e-con-inner:has(.elementor-widget-anabelis_similar_collection) {
	flex-wrap: wrap !important;
	align-items: stretch !important;
}

.anabelis-wc-presentation.single-product .e-con-inner > .anabelis-sp__below-hero,
.anabelis-wc-presentation.single-product .e-con-inner > .anabelis-sp__w-similar-collection,
.anabelis-wc-presentation.single-product .e-con-inner > .elementor-widget-anabelis_similar_collection {
	flex: 0 0 100% !important;
	width: 100% !important;
	max-width: 100% !important;
}

/* ========================================================================== */
/* Two-column details (Key Benefits | Specs) — aligns with hero columns       */
/* ========================================================================== */

.anabelis-wc-presentation.single-product .anabelis-sp__details-grid {
	width: 100%;
	padding: clamp(20px, 3vw, 28px) 0 clamp(16px, 2.5vw, 24px);
	border-top: 1px solid var(--anabelis-border);
	background: #ffffff;
	box-sizing: border-box;
	overflow: hidden;
}

.anabelis-wc-presentation.single-product .anabelis-sp__details-inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: clamp(24px, 4vw, 48px);
	width: 100%;
	max-width: none;
	margin: 0;
}

.anabelis-wc-presentation.single-product .anabelis-sp__details-col {
	min-width: 0;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.anabelis-wc-presentation.single-product .anabelis-sp__details-title {
	margin: 0 0 14px;
	font-size: 1rem;
	font-weight: 600;
	color: var(--anabelis-black);
}

.anabelis-wc-presentation.single-product .anabelis-sp__details-title--spaced {
	margin-top: 28px;
}

.anabelis-wc-presentation.single-product .anabelis-sp__details-content {
	font-size: 0.92rem;
	line-height: 1.75;
	color: var(--anabelis-muted);
}

.anabelis-wc-presentation.single-product .anabelis-sp__details-content ul {
	margin: 0;
	padding-left: 1.1em;
}

.anabelis-wc-presentation.single-product .anabelis-sp__details-content li {
	margin-bottom: 0.65em;
}

/* Batch verification */
.anabelis-wc-presentation.single-product .anabelis-bv-product {
	max-width: 100%;
	margin: 0 auto;
	padding: clamp(8px, 1.5vw, 16px) 0 0 !important;
	width: 100% !important;
	box-sizing: border-box !important;
	clear: both !important;
	position: relative !important;
	float: none !important;
}

.anabelis-wc-presentation.single-product .anabelis-bv-product__inner {
	padding: clamp(1.25rem, 3vw, 1.75rem) !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
}

/* Similar Collection — align with Key Benefits / Specs columns above (same content box) */
.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack-content .anabelis-fc--similar-collection,
.anabelis-wc-presentation.single-product .anabelis-sp__similar-collection {
	--anabelis-fc-gutter-x: clamp(14px, 2vw, 20px);
	width: 100%;
	max-width: none;
	margin: clamp(32px, 5vw, 56px) 0 0;
	padding: clamp(8px, 1.5vw, 16px) 0 clamp(24px, 4vw, 40px);
	border-top: 0;
	box-sizing: border-box;
}

.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__header {
	margin-bottom: clamp(20px, 3vw, 28px);
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__viewport {
	width: 100%;
	max-width: none;
	border-top: 1px solid var(--anabelis-border);
}

.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection {
	--anabelis-fc-image-max-w: 224px;
	--anabelis-fc-image-max-h: 272px;
	--anabelis-fc-image-wrap-min-h: 256px;
}

.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__item {
	padding: clamp(20px, 2.5vw, 28px) var(--anabelis-fc-gutter-x) clamp(24px, 3vw, 32px);
	min-height: clamp(272px, 33.6vw, 368px);
}

.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__image {
	min-height: var(--anabelis-fc-image-wrap-min-h, 256px);
}

.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__image img,
.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__image .anabelis-fc__product-image {
	max-width: min(100%, var(--anabelis-fc-image-max-w, 224px)) !important;
	max-height: var(--anabelis-fc-image-max-h, 272px) !important;
}

.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__name {
	margin-bottom: clamp(14px, 2vw, 20px);
}

.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__price {
	padding-top: clamp(10px, 1.5vw, 14px);
}

.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__empty {
	padding-left: 0;
	padding-right: 0;
}

/* ========================================================================== */
/* Similar Collection — Figma card layout                                     */
/* ========================================================================== */

.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:nth-child(2):not(.anabelis-sp__lower-stack),
.anabelis-wc-presentation.single-product .elementor-location-single > .e-con:nth-child(2):not(.anabelis-sp__lower-stack) {
	width: 100%;
	max-width: none;
	margin-left: 0;
	margin-right: 0;
	padding: clamp(24px, 3vw, 40px) var(--anabelis-sp-gutter);
	box-sizing: border-box;
}

/* Lower-stack row — horizontal inset is applied on .anabelis-sp__lower-stack (responsive block below) */
.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con.anabelis-sp__lower-stack,
.anabelis-wc-presentation.single-product .elementor-location-single > .e-con.anabelis-sp__lower-stack {
	padding-top: 0;
	padding-bottom: 0;
	box-sizing: border-box;
}

.anabelis-wc-presentation.single-product .elementor-widget-wd_products .wd-el-title,
.anabelis-wc-presentation.single-product .elementor-widget-wd_products .products-title,
.anabelis-wc-presentation.single-product .wd-products-element > .title,
.anabelis-wc-presentation.single-product .related-products > h2,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-el-title,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection h2,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection h4 {
	font-size: clamp(1.35rem, 2vw, 1.65rem) !important;
	font-weight: 600 !important;
	color: var(--anabelis-black) !important;
	margin: 0 0 24px !important;
	text-align: left !important;
}

.anabelis-wc-presentation.single-product .elementor-widget-wd_products .wd-carousel-item {
	padding: 0 8px;
	height: auto !important;
}

.anabelis-wc-presentation.single-product .elementor-widget-wd_products .wd-product,
.anabelis-wc-presentation.single-product .elementor-widget-wd_products .wd-product-wrapper {
	height: auto !important;
	position: relative !important;
}

/* Similar Collection — Figma card layout (wd-hover-base, not wd-hover-small) */
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection {
	--wd-primary-color: var(--anabelis-gold);
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-carousel-item {
	padding: 0 10px !important;
	height: auto !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product {
	height: auto !important;
	text-align: left !important;
	--text-align: left;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product.wd-hover-small .wd-product-wrapper,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product[class*="wd-hover-"] .wd-product-wrapper {
	display: grid !important;
	grid-template-columns: 1fr !important;
	grid-template-rows: auto minmax(150px, auto) auto !important;
	grid-template-areas: "card-title" "card-image" "card-price" !important;
	flex-direction: column !important;
	gap: 0 !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product-wrapper,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .product-wrapper {
	display: grid !important;
	grid-template-columns: 1fr !important;
	grid-template-rows: auto minmax(150px, auto) auto !important;
	grid-template-areas: "card-title" "card-image" "card-price" !important;
	background: #ffffff !important;
	border: 1px solid #e8e8e8 !important;
	border-radius: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	overflow: hidden !important;
	position: relative !important;
	flex-direction: column !important;
	gap: 0 !important;
	text-align: left !important;
	box-shadow: none !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product-card-bg,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .content-product-imagin {
	display: none !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .product-element-bottom,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .product-information {
	display: contents !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-entities-title,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .woocommerce-loop-product__title {
	grid-area: card-title !important;
	margin: 0 !important;
	padding: 14px 14px 8px !important;
	font-size: 0.88rem !important;
	font-weight: 400 !important;
	line-height: 1.35 !important;
	color: var(--anabelis-black) !important;
	position: relative !important;
	text-align: left !important;
	background: #fff !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .product-element-top,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product-thumb {
	grid-area: card-image !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 14px 10px !important;
	min-height: 150px !important;
	max-height: 190px !important;
	height: auto !important;
	position: relative !important;
	overflow: hidden !important;
	flex: none !important;
	max-width: 100% !important;
	width: 100% !important;
	border-radius: 0 !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .product-element-top::before,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product-thumb::before {
	display: none !important;
	content: none !important;
	padding: 0 !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .product-element-top img,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product-img-link img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 150px !important;
	max-height: 170px !important;
	object-fit: contain !important;
	margin: 0 auto !important;
	position: relative !important;
	box-shadow: none !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .product-rating-price,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wrapp-product-price,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .product-element-bottom > .price {
	grid-area: card-price !important;
	margin: 0 !important;
	padding: 0 14px 14px !important;
	position: relative !important;
	background: #fff !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .price,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .price .amount,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .amount {
	color: var(--anabelis-gold) !important;
	font-size: 0.95rem !important;
	font-weight: 500 !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .star-rating,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-star-rating,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .product-labels,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .onsale,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product-card-hover,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product-card-bg,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-bottom-actions,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-buttons,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wrapp-swatches,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .hover-img,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-add-btn,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-quick-shop,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-product-cats,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-action-btn {
	display: none !important;
}

.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-carousel-wrap,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-carousel-inner,
.anabelis-wc-presentation.single-product .anabelis-sp__w-related-collection .wd-carousel {
	height: auto !important;
	align-items: stretch !important;
}

/* Generic wd_products fallback (non-related) */
.anabelis-wc-presentation.single-product .elementor-widget-wd_products:not(.anabelis-sp__w-related-collection) .wd-product-wrapper {
	display: grid !important;
	grid-template-columns: 1fr !important;
	grid-template-rows: auto minmax(140px, auto) auto !important;
	grid-template-areas: "card-title" "card-image" "card-price" !important;
}

/* Tablet (768–991px) — side-by-side hero handled in 768–1199 block; lower-section tweaks */

/* Tablet portrait + small tablet (768–991px) — lower-stack inset, 1-col details */
@media (min-width: 768px) and (max-width: 991px) {
	.anabelis-wc-presentation.single-product {
		--anabelis-sp-gutter: clamp(16px, 3vw, 28px);
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack > .e-con-inner,
	.anabelis-wc-presentation.single-product .e-con.anabelis-sp__lower-stack > .e-con-inner {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack-content {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__hero .anabelis-sp__lower-stack,
	.anabelis-wc-presentation.single-product .anabelis-sp__hero .e-con.anabelis-sp__lower-stack {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__details-inner {
		grid-template-columns: 1fr !important;
		gap: 24px;
	}

	.anabelis-wc-presentation.single-product .anabelis-bv-product__inner {
		grid-template-columns: 1fr !important;
		gap: 1.25rem !important;
		padding: 1.25rem !important;
	}

	.anabelis-wc-presentation.single-product .elementor-widget-wd_single_product_gallery img,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery img {
		max-width: min(100%, 240px) !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection {
		--anabelis-fc-gutter-x: clamp(14px, 2.5vw, 20px);
		margin-top: clamp(28px, 4vw, 44px);
		padding-bottom: clamp(20px, 4vw, 32px);
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__item {
		flex: 0 0 50% !important;
		min-width: 50% !important;
		min-height: 288px;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__image {
		min-height: 176px;
	}
}

/* Legacy ≤991 block — mobile-only stacking moved to ≤767; keep shared lower-section tweaks */
@media (max-width: 991px) {
	.anabelis-wc-presentation.single-product .anabelis-sp__description-block {
		margin-top: 14px;
		padding-top: 14px;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__details-grid {
		padding-top: 20px;
		padding-bottom: 16px;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__description-block--stack + .anabelis-sp__details-grid {
		padding-top: 16px;
	}

	.anabelis-wc-presentation.single-product .anabelis-bv-product {
		padding-top: 12px;
	}

	.anabelis-wc-presentation.single-product form.cart:not(.variations_form) .anabelis-sp__price-row {
		margin-bottom: 14px !important;
	}
}

/* Side-by-side tablet (768–1199px) — desktop-like hero; mobile ≤767 stacks */
@media (min-width: 768px) and (max-width: 1199px) {
	.anabelis-wc-presentation.single-product {
		--anabelis-sp-gutter: clamp(16px, 2vw, 28px);
		--anabelis-sp-tablet-summary-pad: clamp(12px, 2vw, 20px);
	}

	/*
	 * Tablet stacked hero — centered image, full-width summary below.
	 */
	.anabelis-wc-presentation.single-product .anabelis-sp__hero > .e-con-inner,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con:first-child > .e-con-inner,
	.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child > .e-con-inner {
		display: grid !important;
		grid-template-columns: 1fr !important;
		grid-template-rows: auto auto auto !important;
		row-gap: clamp(24px, 4vw, 36px) !important;
		column-gap: 0 !important;
		align-items: start !important;
		padding-inline: var(--anabelis-sp-gutter) !important;
		box-sizing: border-box !important;
	}

	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner > .e-con,
	.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child > .e-con-inner > .e-con {
		flex: unset !important;
		min-width: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner > .e-con.anabelis-sp__col-gallery {
		grid-column: 1 !important;
		grid-row: 1 !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: unset !important;
		justify-self: center !important;
		text-align: center !important;
		box-sizing: border-box !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery .woocommerce-product-gallery,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery .elementor-widget-wd_single_product_gallery {
		margin-inline: auto !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner > .e-con.anabelis-sp__col-summary {
		grid-column: 1 !important;
		grid-row: 2 !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: unset !important;
		padding-inline: 0 !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		box-sizing: border-box !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack,
	.anabelis-wc-presentation.single-product .anabelis-sp__hero .anabelis-sp__lower-stack,
	.anabelis-wc-presentation.single-product .e-con.anabelis-sp__lower-stack {
		grid-column: 1 !important;
		grid-row: 3 !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
		flex: unset !important;
	}

	/* Description lives in lower-stack on tablet — keeps summary column compact */
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .anabelis-sp__description-block--summary {
		display: none !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__description-block--stack {
		display: block !important;
		margin-top: 0;
		padding-top: 20px;
		border-top: 1px solid var(--anabelis-border);
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary > .e-con-inner,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .elementor-widget,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .elementor-widget-container,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .elementor-widget-wd_single_product_add_to_cart,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.variations_form {
		width: 100% !important;
		max-width: 100% !important;
		padding-inline: 0 !important;
		box-sizing: border-box !important;
	}

	/* Size + price — match desktop inline row */
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .anabelis-sp__w-variations table.variations tr,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-single-linked-variations table.variations tr {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		gap: 12px 16px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .anabelis-sp__w-variations .wd-swatches-product,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-single-linked-variations .wd-swatches-product {
		display: flex !important;
		flex-flow: row wrap !important;
		gap: 8px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary table.variations tr {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		gap: 12px 16px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary table.variations th.label,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary table.variations td.label,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary table.variations th.label.cell,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary table.variations td.label.cell {
		flex: 0 0 auto !important;
		width: auto !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-swatches-product,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-swatches-product.wd-swatches-grid {
		display: flex !important;
		flex-flow: row wrap !important;
		gap: 8px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-swatches-product .wd-swatch,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-swatches-product .wd-swatch.wd-text {
		flex: 0 0 auto !important;
		min-width: 72px !important;
		min-height: 40px !important;
		padding: 8px 16px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .anabelis-sp__title-wrap .product_title,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .product_title.entry-title {
		font-size: clamp(2.25rem, 5vw, 3rem) !important;
		font-weight: 700 !important;
		line-height: 1.1 !important;
		margin-bottom: 24px !important;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary table.variations,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .anabelis-sp__w-variations {
		margin-bottom: 8px !important;
		padding: 8px 0 16px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-swatches-product,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-swatches-product.wd-swatches-grid {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		gap: 10px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-swatches-product .wd-swatch,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-swatches-product .wd-swatch.wd-text {
		min-width: 80px !important;
		min-height: 44px !important;
		padding: 10px 20px !important;
		font-size: 0.95rem !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .anabelis-sp__price-row {
		margin: 24px 0 36px !important;
		width: 100% !important;
		padding: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .anabelis-sp__price-row .price,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .anabelis-sp__price-row .woocommerce-Price-amount {
		font-size: clamp(1.5rem, 2.8vw, 1.85rem) !important;
		font-weight: 600 !important;
	}

	/* Cart row — qty + Add to cart + Buy now in one row */
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart .woocommerce-variation-add-to-cart,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart:not(.variations_form) {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: stretch !important;
		gap: 14px !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart .quantity,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart div.quantity {
		flex: 0 0 auto !important;
		min-height: 54px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart .quantity .qty,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart .quantity input[type="number"] {
		min-height: 54px !important;
		height: 54px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart .quantity input[type="button"] {
		min-height: 54px !important;
		height: 54px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart .single_add_to_cart_button,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart button.single_add_to_cart_button {
		flex: 1 1 0 !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
		min-height: 54px !important;
		height: 54px !important;
		line-height: 1.2 !important;
		padding: 0 24px !important;
		font-size: 1.05rem !important;
		font-weight: 600 !important;
		white-space: nowrap !important;
		box-sizing: border-box !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .wd-buy-now-btn,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary a.buy_now_button,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary button.wd-buy-now-btn {
		flex: 1 1 0 !important;
		width: auto !important;
		min-width: 0 !important;
		max-width: none !important;
		min-height: 54px !important;
		height: 54px !important;
		line-height: 1.2 !important;
		padding: 0 24px !important;
		font-size: 1.05rem !important;
		font-weight: 600 !important;
		white-space: nowrap !important;
		box-sizing: border-box !important;
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart.wd-quantity-overlap .single_add_to_cart_button,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary form.cart .quantity:not(.hidden) + .single_add_to_cart_button {
		padding-inline-start: 16px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .e-con:has(.elementor-widget-wd_single_product_add_to_cart):has(.elementor-widget-wd_single_product_wishlist_button) > .e-con-inner {
		flex-direction: row !important;
		flex-wrap: nowrap !important;
		align-items: flex-end !important;
		gap: 12px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .e-con:has(.elementor-widget-wd_single_product_add_to_cart):has(.elementor-widget-wd_single_product_wishlist_button) .elementor-widget-wd_single_product_add_to_cart {
		flex: 1 1 auto !important;
		max-width: none !important;
		min-width: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .e-con:has(.elementor-widget-wd_single_product_add_to_cart):has(.elementor-widget-wd_single_product_wishlist_button) .elementor-widget-wd_single_product_wishlist_button {
		flex: 0 0 auto !important;
		align-self: flex-end !important;
		margin-bottom: 8px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__details-inner {
		gap: clamp(24px, 3vw, 40px) !important;
	}
}

/* ========================================================================== */
/* Mobile (≤767px) — stacked cart, full-width cards, tighter gutters          */
/* ========================================================================== */

@media (max-width: 767px) {
	.anabelis-wc-presentation.single-product {
		--anabelis-sp-gutter: 16px;
		--anabelis-sp-mobile-edge: 16px;
	}

	/* Stack hero — image above summary (mobile only) */
	.anabelis-wc-presentation.single-product .anabelis-sp__hero > .e-con-inner,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner,
	.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child > .e-con-inner {
		display: flex !important;
		grid-template-columns: unset !important;
		flex-direction: column !important;
		flex-wrap: nowrap !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner > .e-con,
	.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child > .e-con-inner > .e-con {
		flex: 1 1 100% !important;
		width: 100% !important;
		max-width: 100% !important;
		min-width: 0 !important;
	}

	.anabelis-wc-presentation.single-product .product-image-summary {
		grid-template-columns: 1fr !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__hero > .e-con-inner,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner,
	.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child > .e-con-inner {
		padding: 20px var(--anabelis-sp-mobile-edge) !important;
		gap: 24px !important;
		box-sizing: border-box !important;
	}

	.anabelis-wc-presentation.single-product .product-image-summary {
		padding: 20px var(--anabelis-sp-mobile-edge) !important;
		gap: 24px !important;
	}

	/*
	 * Unified mobile inset: hero e-con-inner is the ONLY horizontal pad when
	 * lower-stack is nested inside hero (fixes double 16px on Key Benefits).
	 */
	.anabelis-wc-presentation.single-product .e-con.anabelis-sp__lower-stack {
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack > .e-con-inner,
	.anabelis-wc-presentation.single-product .e-con.anabelis-sp__lower-stack > .e-con-inner {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack-content {
		padding-left: 0 !important;
		padding-right: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	/* Lower stack as sibling below hero — inset handled in v1.8.9 block at file end */
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con.anabelis-sp__lower-stack,
	.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con.anabelis-sp__lower-stack {
		--padding-left: 0px !important;
		--padding-right: 0px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__hero .anabelis-sp__lower-stack,
	.anabelis-wc-presentation.single-product .anabelis-sp__hero .e-con.anabelis-sp__lower-stack {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	/* Match Product Description (hero) and Key Benefits / Similar Collection left edge */
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary > .e-con-inner,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .elementor-widget-container,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-grid,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-inner,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-col {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__description-block,
	.anabelis-wc-presentation.single-product .anabelis-sp__section-title,
	.anabelis-wc-presentation.single-product .anabelis-sp__description-content,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-title,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-content {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__details-content ul {
		padding-left: 1.1em;
		margin-left: 0;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__header {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__item {
		align-items: flex-start !important;
		text-align: left !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__name,
	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__price {
		width: 100% !important;
		text-align: left !important;
		align-self: stretch !important;
		margin-left: 0 !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.anabelis-wc-presentation.single-product form.cart .woocommerce-variation-add-to-cart {
		flex-direction: column !important;
		flex-wrap: wrap !important;
		align-items: flex-start !important;
	}

	.anabelis-wc-presentation.single-product form.cart:not(.variations_form) {
		flex-direction: column !important;
		flex-wrap: nowrap !important;
		align-items: flex-start !important;
	}

	.anabelis-wc-presentation.single-product form.cart:not(.variations_form) .anabelis-sp__price-row {
		margin-bottom: 12px !important;
	}

	.anabelis-wc-presentation.single-product form.cart .quantity,
	.anabelis-wc-presentation.single-product form.cart div.quantity {
		flex: 0 0 auto !important;
		width: auto !important;
		max-width: 100% !important;
		justify-content: flex-start !important;
		align-self: flex-start !important;
	}

	.anabelis-wc-presentation.single-product form.cart .single_add_to_cart_button,
	.anabelis-wc-presentation.single-product .wd-buy-now-btn,
	.anabelis-wc-presentation.single-product a.buy_now_button,
	.anabelis-wc-presentation.single-product form.cart:not(.variations_form) > .single_add_to_cart_button,
	.anabelis-wc-presentation.single-product form.cart:not(.variations_form) > .wd-buy-now-btn {
		flex: 1 1 100% !important;
		width: 100% !important;
		min-width: 0 !important;
		align-self: stretch !important;
	}

	.anabelis-wc-presentation.single-product .e-con:has(.elementor-widget-wd_single_product_add_to_cart):has(.elementor-widget-wd_single_product_wishlist_button) > .e-con-inner {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 16px !important;
	}

	.anabelis-wc-presentation.single-product .e-con:has(.elementor-widget-wd_single_product_add_to_cart):has(.elementor-widget-wd_single_product_wishlist_button) .elementor-widget-wd_single_product_wishlist_button {
		align-self: flex-start !important;
		margin-bottom: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__title-wrap .product_title,
	.anabelis-wc-presentation.single-product .product_title.entry-title {
		font-size: clamp(1.65rem, 7vw, 2rem) !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__details-title--spaced {
		margin-top: 20px;
	}

	.anabelis-wc-presentation.single-product form.variations_form table.variations tr {
		align-items: flex-start !important;
		flex-wrap: wrap !important;
		gap: 8px 10px !important;
	}

	.anabelis-wc-presentation.single-product table.variations th.label,
	.anabelis-wc-presentation.single-product table.variations td.label,
	.anabelis-wc-presentation.single-product table.variations th.label.cell,
	.anabelis-wc-presentation.single-product table.variations td.label.cell {
		flex: 0 0 100% !important;
		width: 100% !important;
	}

	.anabelis-wc-presentation.single-product .wd-swatches-product {
		gap: 6px !important;
	}

	.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch,
	.anabelis-wc-presentation.single-product .wd-swatches-product .wd-swatch.wd-text {
		min-width: 58px !important;
		min-height: 36px !important;
		padding: 6px 12px !important;
		font-size: 0.85rem !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-bv-product {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-bv-product__inner {
		padding: 1.15rem 1rem !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection {
		--anabelis-fc-gutter-x: 10px;
		margin-top: clamp(24px, 6vw, 36px);
		padding-top: 4px;
		padding-bottom: clamp(16px, 5vw, 28px);
		padding-left: 0;
		padding-right: 0;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__header {
		margin-bottom: 18px;
		gap: 12px;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__title {
		font-size: clamp(1.35rem, 6vw, 1.75rem);
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__item {
		flex: 0 0 auto !important;
		min-width: 0 !important;
		min-height: 208px;
		padding-top: 12px;
		padding-bottom: 16px;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__image {
		min-height: 96px;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__image img,
	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__image .anabelis-fc__product-image {
		max-width: min(100%, 96px) !important;
		max-height: 128px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__name {
		font-size: 15px;
		margin-bottom: 12px;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__price {
		font-size: 16px;
		padding-top: 8px;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__nav-btn {
		width: 40px;
		height: 40px;
		min-width: 40px;
		min-height: 40px;
	}

	.anabelis-wc-presentation.single-product .anabelis-bv-product__qr {
		justify-self: center;
		max-width: 220px;
	}

	.anabelis-wc-presentation.single-product .anabelis-bv-product__qr img {
		width: clamp(170px, 42vw, 200px);
	}
}

/* ========================================================================== */
/* v1.8.9 — Tablet/mobile: one page inset, aligned text blocks, carousel      */
/* ========================================================================== */

@media (max-width: 1199px) {
	.anabelis-wc-presentation.single-product {
		--anabelis-sp-page-inset: clamp(16px, 3vw, 28px);
	}

	/*
	 * Root cause fix: hero and lower-stack each had their own horizontal pad
	 * (nth-child(2) + .anabelis-sp__lower-stack), so Key Benefits sat further
	 * right than Product Description. One inset layer per row only.
	 */
	.anabelis-wc-presentation.single-product .anabelis-sp__hero > .e-con-inner,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con.anabelis-sp__hero > .e-con-inner,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con:first-child:not(.anabelis-sp__lower-stack) > .e-con-inner,
	.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child:not(.anabelis-sp__lower-stack) > .e-con-inner {
		padding-left: var(--anabelis-sp-page-inset) !important;
		padding-right: var(--anabelis-sp-page-inset) !important;
		box-sizing: border-box !important;
	}

	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con.anabelis-sp__lower-stack,
	.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con.anabelis-sp__lower-stack {
		padding-left: var(--anabelis-sp-page-inset) !important;
		padding-right: var(--anabelis-sp-page-inset) !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		box-sizing: border-box !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__hero .anabelis-sp__lower-stack,
	.anabelis-wc-presentation.single-product .anabelis-sp__hero .e-con.anabelis-sp__lower-stack,
	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack > .e-con-inner,
	.anabelis-wc-presentation.single-product .e-con.anabelis-sp__lower-stack > .e-con-inner,
	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack-content,
	.anabelis-wc-presentation.single-product .anabelis-sp__below-hero,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-grid,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-inner,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-col,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary > .e-con-inner,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .elementor-widget-container,
	.anabelis-wc-presentation.single-product .anabelis-sp__description-block,
	.anabelis-wc-presentation.single-product .anabelis-sp__description-content,
	.anabelis-wc-presentation.single-product .anabelis-sp__section-title,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-title,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-content,
	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection,
	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__header {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__details-content ul {
		padding-left: 1.1em;
		margin-left: 0;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__details-content p,
	.anabelis-wc-presentation.single-product .anabelis-sp__description-content p {
		margin-left: 0;
		padding-left: 0;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__viewport {
		width: 100% !important;
		max-width: 100% !important;
		overflow: hidden !important;
		min-width: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__grid {
		min-width: 0 !important;
	}
}

@media (max-width: 991px) {
	.anabelis-wc-presentation.single-product .anabelis-sp__details-inner {
		grid-template-columns: 1fr !important;
		gap: clamp(20px, 3vw, 28px) !important;
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__item {
		flex: 0 0 auto !important;
		min-width: 0 !important;
	}
}

@media (min-width: 1200px) {
	.anabelis-wc-presentation.single-product .anabelis-sp__description-block--stack {
		display: none !important;
	}
}

@media (max-width: 767px) {
	.anabelis-wc-presentation.single-product {
		--anabelis-sp-page-inset: 16px;
	}

	/* Summary-column copy hidden; stack copy shares container with Key Benefits */
	.anabelis-wc-presentation.single-product .anabelis-sp__description-block--summary {
		display: none !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__description-block--stack {
		margin-top: 0;
		padding-top: 20px;
		border-top: 1px solid var(--anabelis-border);
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__hero .anabelis-sp__col-gallery,
	.anabelis-wc-presentation.single-product .anabelis-sp__hero .anabelis-sp__col-summary,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary > .e-con-inner,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .elementor-element,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .elementor-widget-container {
		padding-left: 0 !important;
		padding-right: 0 !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__section-title,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-title,
	.anabelis-wc-presentation.single-product .anabelis-sp__description-content,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-content,
	.anabelis-wc-presentation.single-product .anabelis-sp__description-content p,
	.anabelis-wc-presentation.single-product .anabelis-sp__details-content p,
	.anabelis-wc-presentation.single-product .anabelis-sp__description-content.woocommerce-product-details__short-description {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		text-indent: 0 !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__item {
		flex: 0 0 auto !important;
		min-width: 0 !important;
		min-height: 260px;
	}
}

@media (min-width: 768px) and (max-width: 1199px) {
	.anabelis-wc-presentation.single-product .anabelis-sp__description-block--summary {
		display: none !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__description-block--stack {
		display: block !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary > .e-con-inner,
	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary .elementor-widget-container {
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
}

/* ========================================================================== */
/* v1.8.16 — Tablet stacked hero + summary polish (wins cascade)              */
/* ========================================================================== */

@media (min-width: 768px) and (max-width: 1199px) {
	.anabelis-wc-presentation.single-product .anabelis-sp__hero > .e-con-inner,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con:first-child > .e-con-inner,
	.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child > .e-con-inner {
		display: grid !important;
		grid-template-columns: 1fr !important;
		grid-template-rows: auto auto auto !important;
		row-gap: clamp(24px, 4vw, 36px) !important;
		flex-wrap: unset !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-gallery,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner > .e-con.anabelis-sp__col-gallery {
		grid-column: 1 !important;
		grid-row: 1 !important;
		justify-self: center !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__col-summary,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con > .e-con-inner > .e-con.anabelis-sp__col-summary {
		grid-column: 1 !important;
		grid-row: 2 !important;
		padding-inline: 0 !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
	}

	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack,
	.anabelis-wc-presentation.single-product .anabelis-sp__hero .anabelis-sp__lower-stack,
	.anabelis-wc-presentation.single-product .e-con.anabelis-sp__lower-stack {
		grid-column: 1 !important;
		grid-row: 3 !important;
		padding-inline: 0 !important;
		--padding-left: 0px !important;
		--padding-right: 0px !important;
	}
}

/* ========================================================================== */
/* v1.8.18 — Mobile inset restore + desktop lower-section alignment           */
/* ========================================================================== */

/* Mobile: hero > .e-con-inner is the ONLY horizontal inset (never zero it) */
@media (max-width: 767px) {
	.anabelis-wc-presentation.single-product .anabelis-sp__hero > .e-con-inner,
	.anabelis-wc-presentation.single-product .elementor-location-single > .e-con:first-child:not(.anabelis-sp__lower-stack) > .e-con-inner,
	.anabelis-wc-presentation.single-product .single-product-page.entry-content > .e-con:first-child:not(.anabelis-sp__lower-stack) > .e-con-inner {
		padding-left: var(--anabelis-sp-page-inset, 16px) !important;
		padding-right: var(--anabelis-sp-page-inset, 16px) !important;
		padding-top: 20px !important;
		padding-bottom: 20px !important;
		box-sizing: border-box !important;
	}
}

/* Similar Collection — same left edge as Key Benefits (no extra item gutter) */
.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection {
	--anabelis-fc-gutter-x: 0 !important;
}

.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__header,
.anabelis-wc-presentation.single-product .anabelis-fc--similar-collection .anabelis-fc__item {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Desktop: Key Benefits + Similar Collection — shared inset, more breathing room */
@media (min-width: 1200px) {
	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack-content .anabelis-sp__details-grid,
	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack-content > .anabelis-fc--similar-collection {
		padding-inline: clamp(24px, 4vw, 48px) !important;
		box-sizing: border-box !important;
	}
}

/* Tablet: Key Benefits + Similar share hero page-inset only — lock alignment */
@media (min-width: 768px) and (max-width: 1199px) {
	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack-content .anabelis-sp__description-block--stack,
	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack-content .anabelis-sp__details-grid,
	.anabelis-wc-presentation.single-product .anabelis-sp__lower-stack-content > .anabelis-fc--similar-collection {
		padding-inline: 0 !important;
		margin-inline: 0 !important;
	}
}
