/* Aloo Beirut PDP — 2026 conversion */
:root{
	--pdp-ink:#121412;
	--pdp-cedar:#163226;
	--pdp-cedar-deep:#0c1f18;
	--pdp-sand:#e8e2d6;
	--pdp-mist:#f6f3ec;
	--pdp-line:rgba(18,20,18,.14);
}
body.single-product{
	background:
		radial-gradient(800px 360px at 100% 0%, rgba(22,50,38,.07), transparent 55%),
		var(--pdp-mist);
	color:var(--pdp-ink);
	font-family:Manrope,system-ui,sans-serif;
}
body.single-product .product_title,
body.single-product .related.products > h2,
body.single-product .upsells.products > h2{
	font-family:Fraunces,Georgia,serif;
	letter-spacing:-.02em;
}
body.single-product .product_title{
	font-size:clamp(1.7rem, 3.5vw, 2.35rem);
	font-weight:650;
	line-height:1.15;
	margin-bottom:.35rem;
}
body.single-product .price{
	font-size:1.35rem;
	font-weight:700;
	color:var(--pdp-cedar);
	margin:0 0 1rem;
}
body.single-product .woocommerce-product-details__short-description{
	font-size:1rem;
	line-height:1.55;
	color:rgba(18,20,18,.78);
	max-width:38ch;
}
/* Gallery */
body.single-product .woocommerce-product-gallery{
	opacity:1 !important;
	margin-bottom:1.25rem;
}
body.single-product .woocommerce-product-gallery__image img,
body.single-product .woocommerce-product-gallery__wrapper img{
	border-radius:0;
	background:#fff;
}
body.single-product .flex-control-thumbs{
	display:flex !important;
	gap:.5rem;
	margin-top:.75rem !important;
	padding:0 !important;
	list-style:none !important;
}
body.single-product .flex-control-thumbs li{
	width:18% !important;
	float:none !important;
}
body.single-product .flex-control-thumbs img{
	border:1px solid var(--pdp-line) !important;
	opacity:.75;
}
body.single-product .flex-control-thumbs .flex-active{
	opacity:1;
	border-color:var(--pdp-cedar) !important;
}
/* Variations */
body.single-product table.variations{
	width:100%;
	border:0;
	margin:1.25rem 0 1rem;
}
body.single-product table.variations th.label{
	display:block;
	width:100%;
	padding:0 0 .45rem;
	font-size:.78rem;
	font-weight:700;
	letter-spacing:.14em;
	text-transform:uppercase;
	color:rgba(18,20,18,.7);
}
body.single-product table.variations td.value{
	display:block;
	width:100%;
	padding:0 0 1rem;
}
body.single-product .variable-items-wrapper{
	display:flex !important;
	flex-wrap:wrap;
	gap:.55rem;
	margin:0 !important;
	padding:0 !important;
	list-style:none !important;
}
body.single-product .variable-item{
	margin:0 !important;
	border:1px solid var(--pdp-line) !important;
	border-radius:0 !important;
	box-shadow:none !important;
	min-width:2.6rem;
	min-height:2.6rem;
	transition:border-color .15s ease, transform .15s ease;
}
body.single-product .variable-item:hover{
	border-color:var(--pdp-cedar) !important;
	transform:translateY(-1px);
}
body.single-product .variable-item.selected,
body.single-product .variable-item.selected:hover{
	border-color:var(--pdp-cedar) !important;
	outline:2px solid var(--pdp-cedar);
	outline-offset:1px;
}
body.single-product .button-variable-item .variable-item-span-button{
	font-family:Manrope,sans-serif !important;
	font-weight:700 !important;
	font-size:.85rem !important;
	min-width:2.4rem;
	padding:.55rem .7rem !important;
}
/* Color swatches — fix empty background-color from missing term meta */
body.single-product .color-variable-item{
	width:2.55rem !important;
	height:2.55rem !important;
	padding:3px !important;
	background:#fff !important;
}
body.single-product .color-variable-item .variable-item-span-color{
	display:block !important;
	width:100% !important;
	height:100% !important;
	border-radius:0 !important;
	border:1px solid rgba(0,0,0,.08);
}
body.single-product .color-variable-item-white .variable-item-span-color,
body.single-product .color-variable-item-white span{background-color:#ffffff !important}
body.single-product .color-variable-item-black .variable-item-span-color,
body.single-product .color-variable-item-black span{background-color:#111111 !important}
body.single-product .color-variable-item-carolina-blue .variable-item-span-color,
body.single-product .color-variable-item-carolina-blue span{background-color:#56a0d3 !important}
body.single-product .color-variable-item-dark-green .variable-item-span-color,
body.single-product .color-variable-item-dark-green span{background-color:#1f4d3a !important}
body.single-product .color-variable-item-earthy-brown .variable-item-span-color,
body.single-product .color-variable-item-earthy-brown span{background-color:#6b4a2b !important}
body.single-product .color-variable-item-heather-prism-ice-blue .variable-item-span-color,
body.single-product .color-variable-item-heather-prism-ice-blue span{background-color:#b7c9d9 !important}
body.single-product .color-variable-item-khaki .variable-item-span-color,
body.single-product .color-variable-item-khaki span{background-color:#c3b091 !important}
body.single-product .color-variable-item-pink .variable-item-span-color,
body.single-product .color-variable-item-pink span{background-color:#e7a0b2 !important}
body.single-product .color-variable-item-red-color .variable-item-span-color,
body.single-product .color-variable-item-red-color span,
body.single-product .color-variable-item-red .variable-item-span-color{background-color:#c0392b !important}
body.single-product .color-variable-item-navy .variable-item-span-color{background-color:#1b2a4a !important}
body.single-product .color-variable-item-grey .variable-item-span-color,
body.single-product .color-variable-item-gray .variable-item-span-color{background-color:#8a8f98 !important}
body.single-product .color-variable-item-beige .variable-item-span-color{background-color:#d8c3a5 !important}
body.single-product .color-variable-item-blue .variable-item-span-color{background-color:#2f5f9a !important}
body.single-product .color-variable-item-green .variable-item-span-color{background-color:#2e6b4f !important}
body.single-product a.reset_variations{
	font-size:.8rem;
	color:rgba(18,20,18,.55);
}
/* ATC */
body.single-product form.cart{
	margin-top:.5rem;
}
body.single-product .single_add_to_cart_button,
body.single-product button.single_add_to_cart_button{
	background:var(--pdp-cedar) !important;
	color:#f4efe6 !important;
	border:0 !important;
	border-radius:0 !important;
	min-height:3.15rem;
	padding:.9rem 1.4rem !important;
	font-family:Manrope,sans-serif !important;
	font-weight:700 !important;
	font-size:1rem !important;
	letter-spacing:.01em;
	width:100%;
	max-width:100%;
	transition:background .2s ease, transform .15s ease;
}
body.single-product .single_add_to_cart_button:hover{
	background:var(--pdp-cedar-deep) !important;
	transform:translateY(-1px);
}
body.single-product .single_add_to_cart_button.disabled,
body.single-product .single_add_to_cart_button.wc-variation-selection-needed{
	opacity:.55;
}
body.single-product .quantity .qty{
	min-height:3.15rem;
	border-radius:0 !important;
	border:1px solid var(--pdp-line) !important;
}
body.single-product form.cart .quantity{
	margin-right:.65rem;
}
/* Trust under ATC */
.tdc-pdp-trust{
	display:flex;
	flex-wrap:wrap;
	gap:.55rem .9rem;
	margin:1rem 0 1.35rem;
	padding:0;
	list-style:none;
	font-size:.86rem;
	color:rgba(18,20,18,.72);
}
.tdc-pdp-trust li{
	position:relative;
	padding-left:1.1rem;
}
.tdc-pdp-trust li::before{
	content:"";
	position:absolute;left:0;top:.45em;
	width:.45rem;height:.45rem;
	background:var(--pdp-cedar);
}
/* Sticky mobile ATC */
.tdc-pdp-sticky{
	display:none;
}
@media (max-width:900px){
	.tdc-pdp-sticky{
		display:flex;
		position:fixed;
		left:0;right:0;bottom:0;
		z-index:9998;
		gap:.65rem;
		align-items:center;
		justify-content:space-between;
		padding:.75rem 1rem calc(.75rem + env(safe-area-inset-bottom));
		background:rgba(246,243,236,.96);
		border-top:1px solid var(--pdp-line);
		backdrop-filter:blur(10px);
	}
	.tdc-pdp-sticky__price{
		font-weight:700;
		font-size:1.05rem;
		color:var(--pdp-cedar);
		white-space:nowrap;
	}
	.tdc-pdp-sticky__btn{
		flex:1;
		display:inline-flex;
		align-items:center;
		justify-content:center;
		min-height:2.85rem;
		background:var(--pdp-cedar);
		color:#f4efe6;
		font-weight:700;
		text-decoration:none;
		border:0;
		cursor:pointer;
		font-family:Manrope,sans-serif;
	}
	body.single-product{
		padding-bottom:5.5rem;
	}
}
/* Related */
body.single-product .related.products{
	margin-top:3.5rem;
	padding-top:2rem;
	border-top:1px solid var(--pdp-line);
}
body.single-product .related.products > h2{
	font-size:1.75rem;
	text-align:center;
	margin-bottom:1.5rem;
}
