.single-product .wp-site-blocks,
.single-product .wp-block-woocommerce-legacy-template {
	background: #07090a;
	color: #d7d0c8;
	overflow-x: clip;
}

/* Delban product gallery skin. */
.single-product .wp-site-blocks,
.single-product .wp-block-woocommerce-legacy-template { background: #fbf8f5; color: #2f2028; }
.single-product .woocommerce-breadcrumb { color: #807078; }
.single-product .woocommerce-breadcrumb a { color: #b92368; }
.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper { background: #fff; border-color: #efd8e2; }
.single-product .woocommerce-product-gallery .flex-control-thumbs img { border-color: #efd8e2; background: #fff; }
.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active { border-color: #ff3a89; }
.single-product .woocommerce span.onsale { background: #ff3a89; color: #fff; }

.single-product .wp-block-woocommerce-legacy-template {
	padding: clamp(1rem, 2.5vw, 2.5rem) max(1rem, calc((100vw - 76rem) / 2));
}

.single-product .woocommerce-breadcrumb {
	box-sizing: border-box;
	width: min(calc(100% - 2rem), 76rem);
	margin: 0 auto 1rem;
	padding-block-start: clamp(1.125rem, 2vw, 1.5rem);
	color: #a99f96;
	font-size: 0.75rem;
	line-height: 1.6;
	text-align: right;
	direction: rtl;
}

.single-product .woocommerce-breadcrumb a {
	color: #c8955e;
	text-decoration: none;
}

.single-product.woocommerce div.product {
	position: relative;
	display: grid;
	grid-template-columns: minmax(22rem, 1.15fr) minmax(20rem, 0.85fr);
	grid-template-areas:
		"gallery summary"
		"after after";
	column-gap: clamp(1.75rem, 3.5vw, 3.5rem);
	align-items: start;
	width: min(calc(100% - 2rem), 76rem);
	max-width: 76rem;
	margin: 0 auto;
	direction: ltr;
	overflow: clip;
}

.single-product.woocommerce div.product > .woocommerce-product-gallery {
	grid-area: gallery;
}

.single-product.woocommerce div.product > .summary {
	grid-area: summary;
	float: none;
	min-width: 0;
	width: auto;
	margin: 0;
	direction: rtl;
}

.single-product.woocommerce div.product > :is(.woocommerce-tabs, .kev-delban-product-recommendations, .related, .upsells) {
	grid-column: 1 / -1;
}

.single-product.woocommerce div.product > .woocommerce-product-gallery {
	--kev-product-gallery-height: clamp(30rem, 60vh, 34rem);

	display: grid;
	grid-template-columns: 4.5rem minmax(0, 1fr);
	grid-template-areas: "thumbs media";
	gap: 0.875rem;
	float: none !important;
	width: 100% !important;
	max-width: none;
	margin: 0 !important;
	direction: ltr;
	overflow: hidden;
}

.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper {
	grid-area: media;
	min-width: 0;
	border: 0;
	border-radius: 0.25rem;
	background: radial-gradient(circle at 50% 45%, #202324 0, #101213 58%, #090a0b 100%);
	overflow: hidden !important;
	contain: paint;
}

.single-product .woocommerce-product-gallery .flex-viewport {
	height: var(--kev-product-gallery-height) !important;
}

.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper {
	width: 100% !important;
	height: var(--kev-product-gallery-height) !important;
	transform: none !important;
}

.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image {
	position: absolute !important;
	inset: 0;
	float: none !important;
	width: 100% !important;
	opacity: 0;
	pointer-events: none;
}

.single-product .woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__image.flex-active-slide {
	position: relative !important;
	opacity: 1;
	pointer-events: auto;
}

.single-product .woocommerce-product-gallery .zoomImg {
	display: none !important;
}

.single-product .woocommerce-product-gallery__trigger {
	display: none !important;
}

.single-product .woocommerce-product-gallery__image,
.single-product .woocommerce-product-gallery__image--placeholder {
	overflow: hidden;
	height: var(--kev-product-gallery-height) !important;
	min-height: 0;
}

.single-product .woocommerce-product-gallery__image a {
	display: block;
	height: 100%;
}

.single-product .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery__image--placeholder img {
	display: block;
	width: 100% !important;
	height: 100% !important;
	min-height: 0;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	object-position: center !important;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs {
	grid-area: thumbs;
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs li {
	float: none;
	width: 100% !important;
	margin: 0;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs img {
	display: block;
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
	border: 1px solid #2b3032;
	border-radius: 0.25rem;
	background: #111415;
	opacity: 0.72;
	cursor: pointer;
}

.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active {
	border-color: #d89a57;
	opacity: 1;
}

.single-product .woocommerce span.onsale {
	z-index: 4;
	inset: 1rem auto auto 5.375rem;
	min-width: 0;
	min-height: 0;
	margin: 0;
	padding: 0.35rem 0.75rem;
	border-radius: 999px;
	background: #a8643a;
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	line-height: 1.4;
}

.kev-delban-product-gallery__overlays {
	position: absolute;
	z-index: 3;
	inset: 1rem auto auto 5.375rem;
	display: flex;
	width: calc((100% - clamp(1.75rem, 3.5vw, 3.5rem)) * 0.575 - 5.375rem);
	max-width: 34rem;
	align-items: flex-start;
	pointer-events: none;
}

.kev-delban-product-gallery__overlays .kev-delban-product-badge {
	position: static;
	order: 2;
}

@media (max-width: 767px) {
	.single-product .woocommerce-breadcrumb {
		width: calc(100% - 2rem);
		margin-bottom: 0.75rem;
		padding-block-start: 0.75rem;
		font-size: 0.6875rem;
	}

	.single-product .wp-block-woocommerce-legacy-template {
		padding: 0.75rem 0 calc(10rem + env(safe-area-inset-bottom));
	}

	.single-product.woocommerce div.product {
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		width: 100%;
		max-width: 100%;
		padding-inline: 1rem;
		gap: 0.75rem;
		direction: rtl;
	}

	.single-product.woocommerce div.product > .woocommerce-product-gallery,
	.single-product.woocommerce div.product > .summary {
		width: 100% !important;
	}

	.single-product.woocommerce div.product > .woocommerce-product-gallery {
		--kev-product-gallery-height: min(22rem, 92vw);

		display: block;
		max-width: none;
		margin-inline: -0.25rem !important;
		width: calc(100% + 0.5rem) !important;
	}

	.single-product .woocommerce-product-gallery .flex-viewport,
	.single-product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper {
		border-color: #202426;
		border-radius: 0.5rem;
		background: radial-gradient(circle at 50% 42%, #252829 0, #121516 60%, #090b0c 100%);
	}

	.single-product .woocommerce-product-gallery .flex-control-thumbs {
		flex-direction: row;
		gap: 0.5rem;
		margin-block-start: 0.4rem;
		padding-inline: 0.25rem;
		overflow-x: auto;
		scrollbar-width: none;
	}

	.single-product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar {
		display: none;
	}

	.single-product .woocommerce-product-gallery .flex-control-thumbs li {
		width: 3.75rem !important;
		flex: 0 0 3.75rem;
	}

	.single-product .woocommerce-product-gallery .flex-control-thumbs img {
		border-radius: 0.375rem;
		background: #101314;
	}

	.single-product .woocommerce span.onsale {
		inset: 0.75rem auto auto 0.75rem;
	}

	.kev-delban-product-gallery__overlays {
		inset: 0.875rem 0.625rem auto;
		width: auto;
		max-width: none;
		align-items: center;
	}

	.kev-delban-product-gallery__overlays .kev-delban-product-badge__row,
	.single-product .woocommerce span.onsale {
		padding: 0.35rem 0.7rem;
		font-size: 0.6875rem;
		box-shadow: 0 0.35rem 1rem rgb(0 0 0 / 22%);
	}

}

/* Approved Delban product composition. */
@media (min-width: 768px) {
	.single-product .wp-block-woocommerce-legacy-template { padding: 1.5rem max(2rem,calc((100vw - 88rem)/2)) 3rem; }
	.single-product .woocommerce-breadcrumb { width: min(calc(100% - 4rem),88rem); margin-bottom: 1.5rem; padding-block-start: .5rem; }
	.single-product.woocommerce div.product { --kev-product-main-height: clamp(28rem,36vw,32.5rem); grid-template-columns: minmax(0,1.08fr) minmax(25rem,.92fr); align-items: start; width: min(calc(100% - 4rem),88rem); max-width: 88rem; column-gap: clamp(2rem,4vw,4rem); }
	.single-product.woocommerce div.product > .summary { box-sizing: border-box; display: flex; height: var(--kev-product-main-height); min-height: 0; flex-direction: column; padding: .5rem clamp(.75rem,1.6vw,1.5rem) 0; overflow: hidden; }
	.single-product.woocommerce div.product > .woocommerce-product-gallery { --kev-product-gallery-height: var(--kev-product-main-height); grid-template-columns: 1fr; grid-template-areas: "media" "thumbs"; gap: .8rem; }
	.single-product .woocommerce-product-gallery .flex-control-thumbs { flex-direction: row; gap: .85rem; }
	.single-product .woocommerce-product-gallery .flex-control-thumbs li { width: 7.75rem !important; flex: 0 0 7.75rem; }
}
.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper { border: 1px solid #eadbdc; border-radius: .8rem; background: #f8eee8; }
.single-product .woocommerce-product-gallery__image img,
.single-product .woocommerce-product-gallery__image--placeholder img {
	object-fit: contain !important;
	object-position: center !important;
	padding: clamp(.5rem, 1.4vw, 1rem);
	box-sizing: border-box;
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img { border-color: #eadbdc; border-radius: .65rem; background: #f8eee8; opacity: .78; }
.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active { border: 2px solid #ad5c70; opacity: 1; }
.single-product .woocommerce span.onsale { inset: 1rem auto auto 1rem; background: #ad5c70; }
.kev-delban-product-gallery__overlays { inset: 1rem 1rem auto auto; width: auto; }

/* Keep badges attached to the gallery and remove the unstable summary card shell. */
.single-product.woocommerce div.product > span.onsale {
	top: 1rem !important;
	right: auto !important;
	bottom: auto !important;
	left: 1rem !important;
	min-width: 0 !important;
	min-height: 0 !important;
	padding: 0.4rem 0.8rem !important;
	border-radius: 999px !important;
	border: 1px solid #ebccd7 !important;
	background: #f7e8ed !important;
	box-shadow: 0 0.25rem 0.75rem rgb(91 25 61 / 7%) !important;
	color: #8f4056 !important;
	font-size: 0.75rem !important;
	line-height: 1.4 !important;
}

.single-product :where(.kev-delban-product-information, .kev-delban-product-purchase) {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.single-product .kev-delban-product-gallery__overlays .kev-delban-product-badge__row {
	padding: 0.4rem 0.8rem;
	border-radius: 999px;
	box-shadow: 0 0.25rem 0.75rem rgb(91 25 61 / 7%);
}
@media (max-width:767px) {
	.single-product .wp-block-woocommerce-legacy-template { padding-bottom: calc(8.5rem + env(safe-area-inset-bottom)); }
	.single-product .woocommerce-product-gallery .flex-viewport,
	.single-product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper { background: #f8eee8; }
	.single-product .woocommerce-product-gallery__image img { padding: .5rem; }
	.single-product.woocommerce div.product > span.onsale { top: .75rem !important; left: 1.25rem !important; }
}

/* Product photography must remain fully visible regardless of source ratio. */
.single-product .woocommerce-product-gallery :is(.woocommerce-product-gallery__image, .woocommerce-product-gallery__image--placeholder) img {
	width: 100% !important;
	height: 100% !important;
	max-width: 100% !important;
	max-height: 100% !important;
	object-fit: contain !important;
	object-position: center center !important;
}

/* Final Delban light gallery surface and mobile thumbnail rail. */
.single-product .woocommerce-product-gallery .flex-viewport,
.single-product .woocommerce-product-gallery > .woocommerce-product-gallery__wrapper {
	border: 1px solid #eadbdc;
	border-radius: 1.25rem;
	background: radial-gradient(circle at 50% 45%, #fff 0, #fff8f7 68%, #f8eeee 100%);
}
.single-product .woocommerce-product-gallery .flex-control-thumbs img { border-color: #eadbdc; border-radius: 0.65rem; background: #fff8f7; }
.single-product .woocommerce-product-gallery .flex-control-thumbs img.flex-active { border-color: #ad5c70; }

@media (max-width: 767px) {
	.single-product.woocommerce div.product > .woocommerce-product-gallery { grid-template-columns: minmax(0,1fr); grid-template-areas: 'media' 'thumbs'; }
	.single-product .woocommerce-product-gallery .flex-control-thumbs { flex-direction: row; overflow-x: auto; scrollbar-width: none; }
	.single-product .woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar { display: none; }
	.single-product .woocommerce-product-gallery .flex-control-thumbs li { width: 4rem !important; min-width: 4rem; }
}
