/* Stable first-paint geometry for single wine products. The full declarations
 * remain in style.css; this small product-scoped copy is intentionally kept
 * render-blocking so simple and variable templates paint alike. */
body.single-product.stw-wine-product,
body.single-product.stw-wine-product .wp-site-blocks {
	overflow-x: clip;
	overflow-y: visible;
}

body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery__wrapper {
	display: flex;
	justify-content: center;
}

body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery__image {
	aspect-ratio: 1 / 2;
	margin-inline: auto;
	max-width: min(100%, 26rem);
	overflow: hidden;
	width: 100%;
}

body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery__image > a {
	display: block;
	height: 100%;
	width: 100%;
}

body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery__image img {
	display: block;
	height: 100% !important;
	mix-blend-mode: normal !important;
	object-fit: cover !important;
	object-position: center center !important;
	width: 100% !important;
}

body.stw-wine-product .wp-block-column:has(.wp-block-woocommerce-product-image-gallery.stw-wine-product-image),
body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image,
body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery,
body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery__wrapper,
body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery__image,
body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery__image > a {
	background: transparent !important;
	isolation: auto !important;
}

body.stw-wine-product .wp-block-column:has(.wp-block-woocommerce-product-image-gallery.stw-wine-product-image),
body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery__image {
	mix-blend-mode: multiply !important;
}

@media (min-width: 782px) {
	body.stw-wine-product .wp-block-column:has(.wp-block-woocommerce-product-image-gallery.stw-wine-product-image) {
		align-self: flex-start;
		flex-basis: 30% !important;
		height: fit-content;
		position: sticky;
		top: calc(var(--wp-admin--admin-bar--height, 0px) + 2rem);
		z-index: auto;
	}

	body.stw-wine-product .wp-block-column:has(.wp-block-woocommerce-product-image-gallery.stw-wine-product-image) + .wp-block-column {
		flex-basis: 70% !important;
		min-width: 0;
	}

	body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image {
		position: static;
	}
}

@media (max-width: 781px) {
	body.stw-wine-product .wp-block-column:has(.wp-block-woocommerce-product-image-gallery.stw-wine-product-image),
	body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image {
		position: static;
	}
}

@media (min-width: 640px) and (max-width: 900px) {
	body.single-product.stw-wine-product .wp-block-columns:has(.wp-block-woocommerce-product-image-gallery.stw-wine-product-image) {
		align-items: flex-start !important;
		flex-wrap: nowrap !important;
		gap: clamp(0.85rem, 2.8vw, 1.5rem) !important;
		margin-top: clamp(0.75rem, 2vw, 1.25rem) !important;
	}

	body.single-product.stw-wine-product .wp-block-column:has(.wp-block-woocommerce-product-image-gallery.stw-wine-product-image) {
		align-self: flex-start;
		flex: 0 0 28% !important;
		min-width: 0;
		position: sticky;
		top: calc(var(--wp-admin--admin-bar--height, 0px) + 1rem);
	}

	body.single-product.stw-wine-product .wp-block-column:has(.wp-block-woocommerce-product-image-gallery.stw-wine-product-image) + .wp-block-column {
		flex: 1 1 72% !important;
		min-width: 0;
	}

	body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image,
	body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery {
		max-width: min(100%, 17rem);
	}
}

@media (max-width: 639px) {
	body.single-product.stw-wine-product .wp-block-columns:has(.wp-block-woocommerce-product-image-gallery.stw-wine-product-image) {
		gap: 1.15rem !important;
		margin-top: 0.5rem !important;
	}

	body.single-product.stw-wine-product .wp-block-column:has(.wp-block-woocommerce-product-image-gallery.stw-wine-product-image) {
		display: flex;
		justify-content: center;
	}

	body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image,
	body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery {
		margin-left: auto !important;
		margin-right: auto !important;
		max-width: min(72vw, 17rem) !important;
		width: min(72vw, 17rem) !important;
	}

	body.stw-wine-product .wp-block-woocommerce-product-image-gallery.stw-wine-product-image .woocommerce-product-gallery__image {
		margin-left: auto !important;
		margin-right: auto !important;
		width: 100% !important;
	}
}
