/* ============================================================
   BABOO DE GYCER — HABILLAGE WOOCOMMERCE
   Grille boutique, fiche produit, panier, commande, compte.
   ============================================================ */

/* Espace en haut (la nav Baboo remplace l'en-tête Astra) */
.bdg-storefront .site-content { padding-top:clamp(30px,4vw,50px) !important; padding-bottom:clamp(50px,7vw,90px); }

/* ===== BANDEAU PAGE BOUTIQUE ===== */
/* .bdg-page-head : utilisé si le template applique cette classe sur l'en-tête */
.bdg-page-head {
	background:var(--bdg-vert-hero); color:var(--bdg-creme);
	padding:clamp(120px,14vw,160px) clamp(20px,8vw,80px) clamp(60px,8vw,84px);
	position:relative; overflow:hidden; text-align:left;
}
.bdg-page-head::before {
	content:""; position:absolute; inset:0; pointer-events:none;
	background:radial-gradient(120% 90% at 82% 0%, rgba(221,168,44,.15), transparent 55%);
}
.bdg-page-head .bdg-eyebrow { color:var(--bdg-or-clair); margin-bottom:26px; position:relative; }
.bdg-page-head h1,
.bdg-page-head .woocommerce-products-header__title.page-title {
	font-family:var(--font-title); font-size:clamp(3rem,8vw,6.4rem);
	font-weight:340; line-height:1.05; letter-spacing:-.01em;
	color:var(--bdg-creme); max-width:16ch; text-transform:none; position:relative;
}
.bdg-page-head p, .bdg-page-head .bdg-lead {
	margin-top:26px; max-width:46ch; color:rgba(253,251,247,.72);
	font-weight:300; font-size:1.05rem; position:relative;
}

/* WooCommerce archive header — approximation CSS-only du bandeau sauge
   (sans wrapper .bdg-page-head dans le markup WooCommerce natif,
   on ne peut pas contrôler le padding-top qui tient compte de la nav fixe ;
   ajouter la classe .bdg-page-head via un hook PHP ou un override de template
   pour obtenir le rendu complet — cf. concern dans le rapport task-6) */
.woocommerce-products-header {
	background:var(--bdg-vert-hero); color:var(--bdg-creme);
	padding:clamp(60px,8vw,100px) clamp(20px,8vw,80px) clamp(40px,6vw,60px);
	position:relative; overflow:hidden; text-align:left; margin-bottom:0;
}
.woocommerce-products-header::before {
	content:""; position:absolute; inset:0; pointer-events:none;
	background:radial-gradient(120% 90% at 82% 0%, rgba(221,168,44,.15), transparent 55%);
}
.woocommerce-products-header__title.page-title {
	font-family:var(--font-title); font-weight:340;
	font-size:clamp(2.6rem,6vw,5rem); line-height:1.05;
	letter-spacing:-.01em; color:var(--bdg-creme);
	text-transform:none; position:relative;
}
.term-description {
	margin-top:20px; max-width:46ch; color:rgba(253,251,247,.72);
	font-weight:300; font-size:1.05rem; position:relative;
}
.woocommerce-products-header .woocommerce-result-count { color:rgba(253,251,247,.55); position:relative; }
.woocommerce .woocommerce-result-count { font-size:.85rem; }
.woocommerce .woocommerce-ordering select {
	border-radius:50px; border:1px solid var(--bdg-creme-2);
	padding:8px 14px; font-family:var(--font-corps);
}

/* ===== FILTRES CATÉGORIES ===== */
/* Pills custom (template .bdg-filters) */
.bdg-filters {
	display:flex; gap:12px; flex-wrap:wrap;
	padding:40px clamp(20px,8vw,80px) 0;
	background:var(--bdg-creme-2);
}
.bdg-filters button {
	font-family:var(--font-corps); cursor:pointer; font-size:13px;
	letter-spacing:.02em; color:var(--bdg-vert-hero);
	background:transparent; border:1px solid rgba(58,70,50,.18);
	padding:10px 20px; border-radius:999px;
	transition:all .5s var(--ease); line-height:1;
}
.bdg-filters button.active,
.bdg-filters button:hover {
	background:var(--bdg-vert-hero); color:var(--bdg-creme);
	border-color:var(--bdg-vert-hero);
}

/* WooCommerce widget catégories + layered nav — style pills */
.woocommerce .widget_product_categories ul,
.woocommerce-widget-layered-nav ul { list-style:none; display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:0; }
.woocommerce .widget_product_categories ul li a,
.woocommerce-widget-layered-nav ul li a {
	display:inline-block; font-family:var(--font-corps);
	font-size:13px; letter-spacing:.02em; color:var(--bdg-vert-hero);
	background:transparent; border:1px solid rgba(58,70,50,.18);
	padding:8px 18px; border-radius:999px;
	transition:all .5s var(--ease); text-decoration:none;
}
.woocommerce .widget_product_categories ul li.current-cat > a,
.woocommerce .widget_product_categories ul li a:hover,
.woocommerce-widget-layered-nav ul li.chosen a,
.woocommerce-widget-layered-nav ul li a:hover {
	background:var(--bdg-vert-hero); color:var(--bdg-creme);
	border-color:var(--bdg-vert-hero);
}

/* ===== GRILLE PRODUITS (boutique + accueil) ===== */
/* Fond crème-2 sur le conteneur WooCommerce principal (archive) */
.woocommerce.archive .site-main,
.woocommerce-page.archive .site-main {
	background:var(--bdg-creme-2);
	padding:56px clamp(20px,8vw,80px) clamp(80px,12vw,140px);
}

/* Cartes larges : 2 colonnes centrées sur la boutique (l'accueil garde 3 colonnes) */
.woocommerce ul.products,
.woocommerce-page ul.products {
	display:grid !important;
	grid-template-columns:repeat(2,1fr) !important;
	max-width:1080px; margin-inline:auto !important;
	gap:clamp(32px,5vw,72px); margin-block:0;
}
.bdg-front ul.products { grid-template-columns:repeat(3,1fr) !important; max-width:none; }
@media(max-width:860px){
	.woocommerce ul.products,
	.woocommerce-page ul.products,
	.bdg-front ul.products { grid-template-columns:1fr !important; max-width:460px; margin-inline:auto !important; }
}
@media(min-width:861px) and (max-width:1100px){
	.bdg-front ul.products { grid-template-columns:repeat(2,1fr) !important; }
}

/* Carte livre "objet précieux" */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	width:auto !important; margin:0 !important; float:none !important;
	text-align:left; display:flex; flex-direction:column;
	padding:14px; border-radius:22px;
	background:rgba(58,70,50,.05); border:1px solid rgba(58,70,50,.09);
	transition:transform .7s var(--ease), box-shadow .7s var(--ease);
}
.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover {
	transform:translateY(-8px);
	box-shadow:0 40px 60px -30px rgba(44,54,39,.4);
}

/* Couverture 2/3 (format livre — les couvertures réelles sont en 1200×1800) */
.woocommerce ul.products li.product a img {
	aspect-ratio:2/3; object-fit:cover;
	border-radius:12px; display:block; width:100%;
	margin-bottom:0;
}

/* Zone meta sous la couverture — typo élargie avec les cartes */
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family:var(--font-title); font-weight:400; font-size:1.9rem;
	color:var(--bdg-noir); padding:0; line-height:1.12;
	text-transform:none; letter-spacing:-.01em; margin-top:26px;
}
.bdg-front ul.products li.product .woocommerce-loop-product__title { font-size:1.5rem; }
.woocommerce ul.products li.product .woocommerce-loop-category__title {
	font-size:12px; color:var(--bdg-gris); letter-spacing:.04em;
	margin-top:4px; font-family:var(--font-corps);
}
.woocommerce ul.products li.product .price {
	color:var(--bdg-vert-hero) !important; font-family:var(--font-corps);
	font-size:1.15rem; font-weight:600; margin:10px 0 16px;
}
.woocommerce ul.products li.product .price del { color:var(--bdg-gris); font-size:.9rem; opacity:.6; }
.woocommerce ul.products li.product .star-rating { color:var(--bdg-or); margin-bottom:8px; font-size:.8em; }

/* Bouton panier */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart {
	margin-top:auto; background:var(--bdg-or); color:var(--bdg-noir) !important;
	border-radius:50px; font-family:var(--font-corps); font-weight:600;
	text-transform:uppercase; letter-spacing:.05em;
	font-size:.82rem; padding:12px 20px; text-align:center;
	transition:all .25s var(--ease); border:0;
}
.woocommerce ul.products li.product .button:hover { background:var(--bdg-or-fonce); transform:translateY(-2px); }
.woocommerce ul.products li.product .added_to_cart { background:var(--bdg-vert-hero); color:#fff !important; margin-top:8px; }

/* Badge promo */
.woocommerce span.onsale {
	background:var(--bdg-or); color:var(--bdg-noir); border-radius:50px;
	font-family:var(--font-corps); font-weight:700; letter-spacing:.08em;
	min-height:auto; min-width:auto; padding:5px 12px; top:24px; left:24px; margin:0;
}

/* ===== FICHE PRODUIT ===== */

/* Page spacing */
.single-product .site-content { padding-top:clamp(80px,11vw,100px) !important; }

/* Fil d'Ariane — contraste AA (le #777 par défaut de WooCommerce ne fait que
   4.33:1). !important pour battre .woocommerce-js .woocommerce-breadcrumb a. */
.woocommerce-breadcrumb,
.woocommerce-breadcrumb a { color:#6d6d6d !important; }

/* 2-column grid — gallery(0.9) | summary(1.1) */
.woocommerce div.product {
	display:grid;
	grid-template-columns:0.9fr 1.1fr;
	gap:clamp(40px,6vw,90px);
	padding:44px clamp(20px,8vw,80px) clamp(80px,10vw,130px);
	align-items:start;
}

/* ---- Cover — sticky frame ---- */
.woocommerce-product-gallery {
	position:sticky;
	top:120px;
	margin-bottom:0;
	/* Neutralise le width:48%/float:left par défaut de WooCommerce sur .images
	   (sinon la couverture ne remplit que la moitié de sa colonne de grille). */
	width:100% !important;
	float:none !important;
}
.woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
	padding:16px;
	border-radius:26px;
	background:rgba(58,70,50,.05);
	border:1px solid rgba(58,70,50,.09);
}
.woocommerce-product-gallery .woocommerce-product-gallery__image {
	border-radius:16px;
	overflow:hidden;
	position:relative;
}
.woocommerce-product-gallery .woocommerce-product-gallery__image::after {
	content:"";
	position:absolute;
	inset:0;
	background:radial-gradient(90% 60% at 80% 6%,rgba(221,168,44,.18),transparent 60%);
	pointer-events:none;
}
.woocommerce-product-gallery img {
	aspect-ratio:2/3;
	object-fit:cover;
	border-radius:16px;
	display:block;
	width:100%;
	box-shadow:0 50px 70px -40px rgba(44,54,39,.6);
	margin-bottom:0;
}

/* ===== Rail de vignettes (galerie multi-images) ===== */
/* Desktop : rail vertical à gauche + grande image à droite.
   NB : la racine flexslider (.woocommerce-product-gallery) doit garder une
   largeur DÉFINIE (colonne grille) sinon flexslider calcule des largeurs de
   slides aberrantes. On place donc le rail en absolu dans une gouttière. */
@media(min-width:901px){
	/* Empêche le blowout de la grille : sans minmax(0,…) la piste 0.9fr a un
	   minimum = min-content, que flexslider (slides floats additionnés) fait
	   exploser. minmax(0,…) borne le minimum à 0. */
	.woocommerce div.product {
		grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr);
	}
	/* Gouttière du rail seulement si la galerie a des vignettes (>1 image) :
	   sinon un produit à couverture unique garderait une gouttière vide. */
	.single-product .woocommerce-product-gallery:has(ol.flex-control-thumbs) {
		position:relative;
		padding-left:94px;
	}
	.single-product .woocommerce-product-gallery ol.flex-control-thumbs {
		position:absolute;
		left:0;
		top:0;
		width:78px;
		display:flex;
		flex-direction:column;
		gap:12px;
		margin:0;
		padding:0;
		list-style:none;
		z-index:2;
	}
	.single-product .woocommerce-product-gallery ol.flex-control-thumbs li { margin:0 !important; width:100% !important; float:none !important; }
	.single-product .woocommerce-product-gallery ol.flex-control-thumbs img {
		border-radius:10px;
		cursor:pointer;
		display:block;
		width:100% !important;
		aspect-ratio:2/3;
		object-fit:cover;
		opacity:.5;
		box-shadow:none;
		border:1px solid rgba(58,70,50,.12);
		transition:opacity .3s var(--ease);
	}
	.single-product .woocommerce-product-gallery ol.flex-control-thumbs img:hover,
	.single-product .woocommerce-product-gallery ol.flex-control-thumbs img.flex-active {
		opacity:1;
		border-color:var(--bdg-or);
	}
}

/* Mobile : vignettes horizontales sous la grande image (pas de rail vertical) */
@media(max-width:900px){
	.single-product .woocommerce-product-gallery ol.flex-control-thumbs {
		display:flex;
		flex-direction:row;
		flex-wrap:wrap;
		gap:10px;
		margin-top:14px;
		padding:0;
		list-style:none;
	}
	.single-product .woocommerce-product-gallery ol.flex-control-thumbs li { width:58px; }
	.single-product .woocommerce-product-gallery ol.flex-control-thumbs img {
		width:100%;
		aspect-ratio:2/3;
		object-fit:cover;
		border-radius:8px;
		cursor:pointer;
		opacity:.6;
		box-shadow:none;
		border:1px solid rgba(58,70,50,.12);
	}
	.single-product .woocommerce-product-gallery ol.flex-control-thumbs img.flex-active { opacity:1; border-color:var(--bdg-or); }
}

/* ---- Summary column ---- */
/* Neutralise le width:48%/float:right par défaut de WooCommerce sur .summary
   (sinon la colonne résumé ne remplit que la moitié de sa piste de grille). */
.woocommerce div.product .summary { margin-bottom:0; width:100% !important; float:none !important; }

/* Eyebrow — product category */
.woocommerce div.product .posted_in {
	display:block;
	font-size:11px;
	letter-spacing:.34em;
	text-transform:uppercase;
	font-weight:500;
	color:var(--bdg-or);
	margin-bottom:20px;
	font-family:var(--font-corps);
}
.woocommerce div.product .posted_in a { color:var(--bdg-or); text-decoration:none; }

/* Title — serif, gold italic em */
.single-product .product_title,
.woocommerce div.product .product_title {
	font-family:var(--font-title);
	font-size:clamp(2.6rem,5.5vw,4.4rem);
	font-weight:340;
	letter-spacing:-.02em;
	line-height:1.05;
	color:var(--bdg-noir);
	text-transform:none;
	margin-bottom:0;
}
.woocommerce div.product .product_title em { font-style:italic; color:var(--bdg-or); }

/* Short description — tagline */
.woocommerce div.product .woocommerce-product-details__short-description {
	margin-top:20px;
	font-size:1.12rem;
	color:var(--bdg-vert-soft);
	font-weight:300;
	max-width:40ch;
	line-height:1.7;
	margin-bottom:0;
}
.woocommerce div.product .woocommerce-product-details__short-description p { margin:0; }

/* Price row — serif big + old price strikethrough */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce div.product .summary .price {
	display:flex !important;
	align-items:baseline;
	flex-wrap:wrap;
	gap:16px;
	margin:36px 0 30px;
	color:var(--bdg-vert-hero);
	font-family:var(--font-title);
	font-size:2.6rem;
	font-weight:400;
}
.woocommerce div.product .price ins { text-decoration:none; }
.woocommerce div.product .price ins .woocommerce-Price-amount,
.woocommerce div.product .price > .woocommerce-Price-amount {
	font-family:var(--font-title);
	font-size:2.6rem;
	color:var(--bdg-vert-hero);
}
.woocommerce div.product .price del {
	font-family:var(--font-corps);
	font-size:1.1rem;
	color:var(--bdg-gris);
	text-decoration:line-through;
	opacity:1;
}

/* "Lancement" sale badge — pill tag (single product) */
.single-product span.onsale {
	font-size:11px;
	letter-spacing:.14em;
	text-transform:uppercase;
	color:var(--bdg-or);
	border:1px solid rgba(221,168,44,.4);
	padding:5px 12px;
	border-radius:999px;
	background:transparent;
	font-family:var(--font-corps);
	font-weight:500;
	min-height:auto;
	min-width:auto;
	line-height:1;
	position:static !important;
	display:inline-flex;
	align-items:center;
	margin:0;
	top:auto;
	left:auto;
}

/* Cart form layout */
.woocommerce div.product form.cart {
	margin-bottom:10px;
	display:flex;
	gap:14px;
	align-items:center;
	flex-wrap:wrap;
}
.woocommerce div.product .quantity input {
	border:1px solid var(--bdg-creme-2);
	border-radius:12px;
	padding:12px;
	font-family:var(--font-corps);
	background:transparent;
}

/* ---- Stepper quantité +/− ---- */
.bdg-qty {
	display:inline-flex;
	align-items:center;
	border:1px solid var(--bdg-creme-2);
	border-radius:999px;
	overflow:hidden;
}
.bdg-qty .bdg-qty-btn {
	border:none;
	background:transparent;
	cursor:pointer;
	font-family:var(--font-corps);
	font-size:18px;
	line-height:1;
	color:var(--bdg-vert-hero);
	padding:0 16px;
	height:48px;
	transition:color .3s var(--ease);
}
.bdg-qty .bdg-qty-btn:hover { color:var(--bdg-or); }
.bdg-qty input.qty {
	border:none !important;
	background:transparent !important;
	border-radius:0 !important;
	width:42px;
	text-align:center;
	padding:12px 0 !important;
	font-family:var(--font-title);
	font-size:1.1rem;
	-moz-appearance:textfield;
}
.bdg-qty input.qty::-webkit-outer-spin-button,
.bdg-qty input.qty::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }

/* Add-to-cart — gold pill */
.woocommerce div.product form.cart .button,
.woocommerce div.product .single_add_to_cart_button {
	font-family:var(--font-corps);
	font-weight:600;
	font-size:15px;
	background:var(--bdg-or);
	color:var(--bdg-vert-deep);
	border:none;
	border-radius:999px;
	padding:16px 34px;
	transition:transform .5s var(--ease),background .5s var(--ease);
	text-transform:none;
	letter-spacing:normal;
	cursor:pointer;
}
.woocommerce div.product form.cart .button:hover {
	background:var(--bdg-or-clair);
	transform:translateY(-2px);
}

/* Reassurance row — override base bdg-guarantees for single product */
.single-product .bdg-guarantees {
	display:flex;
	flex-direction:row;
	gap:22px;
	flex-wrap:wrap;
	margin-top:26px;
	padding:0;
	border-top:none;
	font-size:12.5px;
	color:var(--bdg-gris);
	font-family:var(--font-corps);
}
.single-product .bdg-guarantees li {
	display:flex;
	align-items:center;
	gap:7px;
	font-size:12.5px;
	color:var(--bdg-gris);
}
.single-product .bdg-guarantees li::before {
	content:"";
	width:5px;
	height:5px;
	border-radius:999px;
	background:var(--bdg-or);
	display:inline-block;
	flex-shrink:0;
}
.single-product .bdg-guarantees li span { display:none; }

/* Product meta */
.woocommerce div.product .product_meta {
	font-size:.85rem;
	color:var(--bdg-gris);
	margin-top:24px;
	font-family:var(--font-corps);
}
.woocommerce div.product .product_meta a { color:var(--bdg-vert-hero); text-decoration:none; }

/* ===== ONGLETS (description + avis) ===== */
.woocommerce-tabs {
	grid-column:1 / -1;
	margin-top:0;
	position:relative;
}

/* Produits liés et up-sells : pleine largeur dans la grille fiche produit */
.woocommerce div.product .related.products,
.woocommerce div.product .up-sells { grid-column:1 / -1; }
/* Gold hairline divider before tabs */
.woocommerce-tabs::before {
	content:"";
	display:block;
	height:1px;
	background:linear-gradient(90deg,rgba(221,168,44,.4),transparent);
	margin-bottom:46px;
}
/* Tab navigation — minimal pills */
.woocommerce-tabs ul.tabs {
	border:0;
	padding:0;
	display:flex;
	gap:8px;
	flex-wrap:wrap;
	background:transparent;
	margin-bottom:40px;
}
.woocommerce-tabs ul.tabs::before { border-color:rgba(58,70,50,.1); }
.woocommerce-tabs ul.tabs li {
	background:transparent;
	border:1px solid rgba(58,70,50,.18);
	border-radius:999px;
	margin:0;
}
.woocommerce-tabs ul.tabs li.active,
.woocommerce-tabs ul.tabs li:hover {
	background:var(--bdg-vert-hero);
	border-color:var(--bdg-vert-hero);
}
.woocommerce-tabs ul.tabs li a {
	font-family:var(--font-corps);
	font-weight:500;
	font-size:13px;
	letter-spacing:.02em;
	color:var(--bdg-vert-hero);
	text-transform:none;
	padding:8px 20px;
	display:block;
}
.woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs li:hover a { color:var(--bdg-creme); }

/* Description panel — À propos du livre */
.woocommerce-Tabs-panel--description { padding:0; }
.woocommerce-Tabs-panel--description h2 {
	font-family:var(--font-title);
	font-size:1.6rem;
	font-weight:400;
	color:var(--bdg-noir);
	margin-bottom:16px;
}
.woocommerce-Tabs-panel--description p {
	color:var(--bdg-vert-soft);
	font-weight:300;
	line-height:1.8;
	max-width:52ch;
}

/* "Ce que tu vas y trouver" — numbered list (ol) in description panel */
.woocommerce-Tabs-panel--description ol {
	list-style:none;
	display:grid;
	gap:2px;
	padding:0;
	margin:0;
	counter-reset:learn-counter;
}
.woocommerce-Tabs-panel--description ol li {
	display:flex;
	gap:16px;
	padding:18px 4px;
	border-top:1px solid rgba(58,70,50,.1);
	color:var(--bdg-vert-soft);
	font-weight:300;
	counter-increment:learn-counter;
}
.woocommerce-Tabs-panel--description ol li::before {
	content:counter(learn-counter);
	font-family:var(--font-title);
	color:var(--bdg-or);
	font-size:1.1rem;
	min-width:28px;
	flex-shrink:0;
	line-height:1.4;
}

/* ===== AVIS CLIENTS — dark sage full-bleed ===== */
#reviews {
	background:var(--bdg-vert-deep);
	color:var(--bdg-creme);
	padding:clamp(80px,10vw,130px) clamp(20px,8vw,80px);
}
.woocommerce-Reviews-title {
	font-family:var(--font-title);
	font-size:clamp(2rem,4vw,3rem);
	font-weight:340;
	color:var(--bdg-creme);
	margin:0 0 56px;
	max-width:16ch;
}
#reviews .commentlist {
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:2px;
	background:rgba(221,168,44,.16);
	list-style:none;
	padding:0;
	margin:0 0 40px;
}
#reviews .commentlist li {
	background:var(--bdg-vert-deep);
	padding:40px 34px;
}
#reviews .commentlist .star-rating {
	color:var(--bdg-or);
	font-size:13px;
	letter-spacing:.2em;
	margin-bottom:0;
}
#reviews .commentlist .description p {
	font-family:var(--font-title);
	font-size:1.5rem;
	line-height:1.4;
	margin:20px 0 22px;
	font-weight:340;
	color:var(--bdg-creme);
	font-style:italic;
}
.woocommerce-review__author {
	font-size:12px;
	letter-spacing:.14em;
	text-transform:uppercase;
	color:rgba(253,251,247,.55);
	font-family:var(--font-corps);
	font-weight:400;
}
.woocommerce-review__published-date { display:none; }
#review_form_wrapper { margin-top:60px; }
#review_form .comment-reply-title {
	font-family:var(--font-title);
	font-size:1.4rem;
	color:var(--bdg-creme);
	margin-bottom:20px;
}
#review_form input,
#review_form textarea {
	border-radius:12px;
	border:1px solid rgba(253,251,247,.2);
	background:rgba(253,251,247,.08);
	color:var(--bdg-creme);
	padding:12px 14px;
	font-family:var(--font-corps);
}
#review_form .form-submit .submit {
	background:var(--bdg-or);
	color:var(--bdg-vert-deep);
	border-radius:999px;
	border:none;
	padding:14px 28px;
	font-family:var(--font-corps);
	font-weight:600;
	cursor:pointer;
	transition:background .5s var(--ease);
}
#review_form .form-submit .submit:hover { background:var(--bdg-or-clair); }

/* ===== PRODUITS LIÉS ===== */
.related.products > h2,
.up-sells > h2 {
	font-family:var(--font-title);
	font-weight:400;
	font-size:1.8rem;
	color:var(--bdg-noir);
	text-transform:none;
}

/* ===== Responsive (fiche produit) ===== */
@media(max-width:900px){
	.woocommerce div.product {
		grid-template-columns:1fr;
		max-width:520px;
		margin-inline:auto;
		gap:38px; /* plus d'air entre la couverture et le résumé */
	}
	/* La couverture ne doit plus rester collée quand tout est empilé */
	.woocommerce-product-gallery { position:static !important; top:auto !important; }

	/* --- Aération du résumé : rythme vertical régulier --- */
	.woocommerce div.product .product_title { line-height:1.12; }
	.woocommerce div.product .summary .price { margin:28px 0 26px; }
	.woocommerce div.product .woocommerce-product-details__short-description { margin-top:22px; }
	.woocommerce div.product form.cart { margin-top:30px; }
	.woocommerce div.product .product_meta { margin-top:28px; }

	/* Garanties empilées et lisibles (au lieu de row wrap comprimé) */
	.single-product .bdg-guarantees {
		flex-direction:column;
		gap:12px;
		margin-top:30px;
	}

	/* Réserve d'espace bas quand la barre d'achat fixe est active
	   (classe posée par le JS ; pas de vide orphelin si JS absent) */
	body.bdg-has-buybar .site-content { padding-bottom:calc(96px + env(safe-area-inset-bottom)); }
}
@media(max-width:760px){
	#reviews .commentlist { grid-template-columns:1fr; }
}

/* ===== Barre d'achat fixe (mobile ≤900px) ===== */
.bdg-buybar {
	position:fixed;
	left:0; right:0; bottom:0;
	z-index:120;
	display:none; /* activée par body.bdg-has-buybar en ≤900px */
	align-items:center;
	gap:14px;
	padding:12px clamp(16px,5vw,22px);
	padding-bottom:calc(12px + env(safe-area-inset-bottom));
	background:rgba(253,251,247,.9); /* --bdg-creme translucide */
	-webkit-backdrop-filter:blur(12px);
	backdrop-filter:blur(12px);
	border-top:1px solid rgba(58,70,50,.12);
	box-shadow:0 -10px 30px -18px rgba(44,54,39,.5);
	transform:translateY(110%);
	opacity:0;
	pointer-events:none;
	transition:transform .45s var(--ease), opacity .45s var(--ease);
}
.bdg-buybar.is-visible {
	transform:translateY(0);
	opacity:1;
	pointer-events:auto;
}
.bdg-buybar__cover {
	width:40px; height:56px;
	object-fit:cover;
	border-radius:8px;
	flex-shrink:0;
}
.bdg-buybar__text {
	display:flex;
	flex-direction:column;
	line-height:1.15;
	min-width:0; /* autorise l'ellipsis du titre */
}
.bdg-buybar__title {
	font-family:var(--font-title);
	font-size:1rem;
	color:var(--bdg-noir);
	white-space:nowrap;
	overflow:hidden;
	text-overflow:ellipsis;
}
.bdg-buybar__cat {
	font-family:var(--font-corps);
	font-size:10px;
	letter-spacing:.2em;
	text-transform:uppercase;
	color:var(--bdg-or);
}
.bdg-buybar__price {
	margin-left:auto;
	font-family:var(--font-title);
	font-size:1.25rem;
	color:var(--bdg-vert-hero);
	white-space:nowrap;
}
.bdg-buybar__price del { display:none; } /* garder le prix courant seul, compact */
.bdg-buybar__btn {
	flex-shrink:0;
	font-family:var(--font-corps);
	font-weight:600;
	font-size:14px;
	background:var(--bdg-or);
	color:var(--bdg-vert-deep);
	border:none;
	border-radius:999px;
	padding:12px 22px;
	cursor:pointer;
	transition:background .4s var(--ease);
}
.bdg-buybar__btn:hover { background:var(--bdg-or-clair); }

/* Activation mobile uniquement */
@media(max-width:900px){ body.bdg-has-buybar .bdg-buybar { display:flex; } }
@media(min-width:901px){ .bdg-buybar { display:none !important; } }

/* Respect de prefers-reduced-motion : apparition sans glissement */
@media(prefers-reduced-motion:reduce){
	.bdg-buybar { transition:opacity .3s linear; transform:none; }
	.bdg-buybar.is-visible { transform:none; }
}

/* ===== PANIER / COMMANDE / COMPTE (recolorés) ===== */

/* ---- Fond crème sur les pages tunnel ---- */
.woocommerce-cart .site-main,
.woocommerce-checkout .site-main,
.woocommerce-account .site-main {
	background:var(--bdg-creme);
	padding:clamp(80px,10vw,110px) clamp(20px,8vw,80px) clamp(60px,9vw,110px);
}

/* ---- Boutons globaux tunnel (remplace les règles WooCommerce/Astra) ---- */
.woocommerce-cart a.button,
.woocommerce-cart button.button,
.woocommerce-cart input.button,
.woocommerce-checkout a.button,
.woocommerce-checkout button.button,
.woocommerce-checkout input.button,
.woocommerce-account a.button,
.woocommerce-account button.button,
.woocommerce-account input.button,
.woocommerce #respond input#submit,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce #place_order,
.woocommerce .checkout-button,
.woocommerce .woocommerce-Button {
	background:var(--bdg-or);
	color:var(--bdg-vert-deep) !important;
	border-radius:999px;
	font-family:var(--font-corps);
	font-weight:600;
	font-size:.9rem;
	letter-spacing:.03em;
	text-transform:none;
	padding:14px 30px;
	border:0;
	cursor:pointer;
	transition:background .45s var(--ease), transform .45s var(--ease);
	display:inline-block;
}
.woocommerce-cart a.button:hover,
.woocommerce-cart button.button:hover,
.woocommerce-cart input.button:hover,
.woocommerce-checkout a.button:hover,
.woocommerce-checkout button.button:hover,
.woocommerce-checkout input.button:hover,
.woocommerce-account a.button:hover,
.woocommerce-account button.button:hover,
.woocommerce-account input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce #place_order:hover,
.woocommerce .checkout-button:hover,
.woocommerce .woocommerce-Button:hover {
	background:var(--bdg-or-clair);
	transform:translateY(-2px);
}

/* Bouton "retour boutique" / secondaire — version outline */
.woocommerce-cart .wc-backward,
.woocommerce-account .woocommerce-Button--set-default-payment-method,
.woocommerce a.button.cancel {
	background:transparent !important;
	color:var(--bdg-vert-hero) !important;
	border:1px solid rgba(58,70,50,.22) !important;
}
.woocommerce-cart .wc-backward:hover,
.woocommerce a.button.cancel:hover {
	background:var(--bdg-creme-2) !important;
	transform:none;
}

/* ---- Tableau panier — hairline sauge ---- */
.woocommerce-cart table.cart,
.woocommerce table.shop_table {
	border-radius:16px;
	border:1px solid rgba(58,70,50,.12);
	border-collapse:separate;
	border-spacing:0;
	overflow:hidden;
	background:rgba(253,251,247,.7);
}
.woocommerce table.shop_table th {
	font-family:var(--font-corps);
	font-size:11px;
	text-transform:uppercase;
	letter-spacing:.1em;
	color:var(--bdg-gris);
	font-weight:500;
	background:var(--bdg-creme-2);
	border-bottom:1px solid rgba(58,70,50,.1);
	padding:14px 16px;
}
.woocommerce table.shop_table td {
	border-top:1px solid rgba(58,70,50,.08);
	padding:18px 16px;
	vertical-align:middle;
}
.woocommerce-cart table.cart td.product-name a {
	font-family:var(--font-title);
	font-size:1.15rem;
	font-weight:400;
	color:var(--bdg-noir);
	text-decoration:none;
}
.woocommerce-cart table.cart td.product-price .woocommerce-Price-amount,
.woocommerce-cart table.cart td.product-subtotal .woocommerce-Price-amount {
	font-family:var(--font-corps);
	font-weight:600;
	color:var(--bdg-vert-hero);
}
.woocommerce-cart table.cart td.product-quantity .quantity input {
	border:1px solid rgba(58,70,50,.18);
	border-radius:10px;
	padding:9px 12px;
	font-family:var(--font-corps);
	background:white;
	width:70px;
}

/* ---- Totaux panier ---- */
.woocommerce .cart_totals h2,
.woocommerce .cross-sells h2 {
	font-family:var(--font-title);
	font-size:1.5rem;
	font-weight:400;
	color:var(--bdg-noir);
	text-transform:none;
	margin-bottom:20px;
}
.woocommerce .cart_totals table.shop_table {
	border:1px solid rgba(58,70,50,.12);
}
.woocommerce-cart .wc-proceed-to-checkout {
	text-align:right;
}

/* ---- Checkout page ---- */
.woocommerce-checkout h3,
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout #order_review_heading {
	font-family:var(--font-title);
	font-size:1.5rem;
	font-weight:400;
	color:var(--bdg-noir);
	text-transform:none;
	border-bottom:1px solid rgba(58,70,50,.1);
	padding-bottom:14px;
	margin-bottom:24px;
}

/* Champs formulaire checkout — hairline crème */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout textarea,
.select2-container .select2-selection,
.select2-container--default .select2-selection--single {
	border-radius:12px !important;
	border:1px solid rgba(58,70,50,.18) !important;
	background:white !important;
	color:var(--bdg-noir) !important;
	padding:12px 14px !important;
	min-height:auto !important;
	font-family:var(--font-corps) !important;
	font-size:.95rem !important;
	transition:border-color .3s var(--ease);
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce-checkout input:focus,
.select2-container--default.select2-container--focus .select2-selection--single {
	border-color:rgba(58,70,50,.45) !important;
	outline:none;
}
.woocommerce form .form-row label {
	font-family:var(--font-corps);
	font-size:.8rem;
	letter-spacing:.06em;
	text-transform:uppercase;
	color:var(--bdg-gris);
	font-weight:500;
	margin-bottom:6px;
}

/* Récap commande checkout */
.woocommerce-checkout #order_review table.shop_table {
	border:1px solid rgba(58,70,50,.12);
	border-radius:14px;
	overflow:hidden;
}
.woocommerce-checkout #payment {
	background:var(--bdg-creme-2);
	border-radius:16px;
	border:1px solid rgba(58,70,50,.1);
}
.woocommerce-checkout #payment .payment_methods li label {
	font-family:var(--font-corps);
	font-size:.95rem;
	color:var(--bdg-noir);
}

/* ---- Compte client ---- */
.woocommerce-account h2 {
	font-family:var(--font-title);
	font-size:1.6rem;
	font-weight:400;
	color:var(--bdg-noir);
	text-transform:none;
	margin-bottom:20px;
}
.woocommerce-account .woocommerce-MyAccount-content h2 {
	border-bottom:1px solid rgba(58,70,50,.1);
	padding-bottom:14px;
}

/* Navigation latérale compte */
.woocommerce nav.woocommerce-MyAccount-navigation {
	border-right:1px solid rgba(58,70,50,.1);
}
.woocommerce nav.woocommerce-MyAccount-navigation ul {
	list-style:none;
	padding:0;
	margin:0;
}
.woocommerce nav.woocommerce-MyAccount-navigation ul li {
	border-bottom:1px solid rgba(58,70,50,.08);
}
.woocommerce nav.woocommerce-MyAccount-navigation ul li a {
	font-family:var(--font-corps);
	font-size:.9rem;
	color:var(--bdg-gris);
	text-decoration:none;
	display:block;
	padding:11px 6px;
	transition:color .3s var(--ease);
}
.woocommerce nav.woocommerce-MyAccount-navigation ul li a:hover {
	color:var(--bdg-vert-hero);
}
.woocommerce nav.woocommerce-MyAccount-navigation ul li.is-active a {
	color:var(--bdg-or-fonce);
	font-weight:600;
}

/* Tableaux historique commandes */
.woocommerce-account table.shop_table {
	border:1px solid rgba(58,70,50,.12);
	border-radius:14px;
	overflow:hidden;
}

/* ---- Notifications & messages ---- */
.woocommerce .woocommerce-message,
.woocommerce-info,
.woocommerce .woocommerce-info {
	border-top-color:var(--bdg-or);
	background:rgba(253,251,247,.9);
	font-family:var(--font-corps);
	border-radius:0 0 12px 12px;
}
.woocommerce-message::before,
.woocommerce-info::before {
	color:var(--bdg-or-fonce);
}
.woocommerce .woocommerce-error {
	border-top-color:rgba(180,50,40,.6);
	background:rgba(253,251,247,.9);
	font-family:var(--font-corps);
	border-radius:0 0 12px 12px;
}

