/* Bijoux de Protection — charte « la Gardienne » : nuit, or, crème, bleu œil turc */
:root {
	--bdp-nuit: #1d2440;
	--bdp-nuit-2: #2a3357;
	--bdp-creme: #f8f5ef;
	--bdp-papier: #fffdf9;
	--bdp-encre: #23263a;
	--bdp-encre-douce: #5a5d72;
	--bdp-or: #a8844c;
	--bdp-or-clair: #d8b97f;
	--bdp-bleu: #2f5d9e;
	--bdp-bleu-fonce: #234878;
	--bdp-filet: #e6dfd2;
	--bdp-titre: 'Cormorant Garamond', Georgia, serif;
	--bdp-texte: 'Jost', 'Segoe UI', sans-serif;
}

body, .ast-separate-container { background: var(--bdp-creme); }
body, button, input, select, textarea, .ast-button, .ast-custom-button {
	font-family: var(--bdp-texte);
	color: var(--bdp-encre);
}
body { font-size: 17px; line-height: 1.65; }
h1, h2, h3, h4, h5, h6, .entry-title, .site-title, .woocommerce-loop-product__title, .product_title {
	font-family: var(--bdp-titre) !important;
	color: var(--bdp-encre);
	letter-spacing: 0;
	text-transform: none !important;
}
h1, .product_title { font-weight: 600; }
h2, h3 { font-weight: 700; }
a { color: var(--bdp-bleu); }
a:hover, a:focus { color: var(--bdp-or); }

/* En-tête */
.site-header, .ast-primary-header-bar, .main-header-bar, .ast-mobile-header-wrap .ast-primary-header-bar {
	background: var(--bdp-nuit) !important;
	border-bottom: 3px solid var(--bdp-or) !important;
}
.ast-above-header-bar, .ast-above-header {
	background: var(--bdp-nuit-2) !important;
	color: var(--bdp-or-clair);
	font-size: 14px;
}
.site-header .site-title a, .site-header .main-header-menu > .menu-item > .menu-link,
.site-header .ast-header-woo-cart .ast-cart-menu-wrap, .site-header .ast-site-header-cart a,
.site-header .ast-mobile-menu-trigger-minimal, .site-header .menu-toggle {
	color: var(--bdp-creme) !important;
}
.site-header .main-header-menu > .menu-item > .menu-link { font-family: var(--bdp-titre); font-size: 17px; font-weight: 700; }
.site-header .main-header-menu > .menu-item:hover > .menu-link,
.site-header .main-header-menu > .current-menu-item > .menu-link { color: var(--bdp-or-clair) !important; }
.site-header .sub-menu { background: var(--bdp-papier) !important; border-top: 2px solid var(--bdp-or) !important; }
.site-header .sub-menu .menu-link { color: var(--bdp-encre) !important; }
.site-header .sub-menu .menu-link:hover { color: var(--bdp-bleu) !important; background: var(--bdp-creme); }
.ast-builder-menu-mobile .main-navigation .menu-item > .menu-link { color: var(--bdp-encre) !important; }

/* Boutons */
.button, button.button, a.button, input[type="submit"], .wp-block-button__link,
.woocommerce .single_add_to_cart_button, .woocommerce a.checkout-button, .woocommerce #place_order {
	background: var(--bdp-bleu) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: 6px !important;
	font-family: var(--bdp-texte);
	font-weight: 700;
	letter-spacing: .02em;
	transition: background .15s ease;
}
.button:hover, button.button:hover, a.button:hover, input[type="submit"]:hover, .wp-block-button__link:hover,
.woocommerce .single_add_to_cart_button:hover { background: var(--bdp-bleu-fonce) !important; }

/* Prix */
.woocommerce .price, .woocommerce-Price-amount { color: var(--bdp-bleu) !important; font-weight: 700; }
.woocommerce .price del, .woocommerce .price del .woocommerce-Price-amount { color: var(--bdp-encre-douce) !important; opacity: .7; font-weight: 400; }
.woocommerce .price ins { text-decoration: none; }
.woocommerce span.onsale, .ast-onsale-card {
	background: var(--bdp-or) !important;
	color: var(--bdp-nuit) !important;
	font-weight: 700;
	border-radius: 4px !important;
}

/* Cartes produit */
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product {
	background: var(--bdp-papier);
	border: 1px solid var(--bdp-filet);
	border-radius: 10px;
	padding: 12px 12px 18px;
	text-align: center;
}
.woocommerce ul.products li.product img { border-radius: 6px; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: 18px; line-height: 1.3; }
.woocommerce ul.products li.product .ast-woo-product-category { color: var(--bdp-or); font-size: 13px; text-transform: uppercase; letter-spacing: .06em; }

/* Fiche produit */
.single-product div.product .woocommerce-product-details__short-description p:first-child {
	font-family: var(--bdp-titre);
	font-style: italic;
	font-size: 1.15em;
	color: var(--bdp-encre-douce);
	border-left: 3px solid var(--bdp-or);
	padding-left: 14px;
}
.single-product div.product .woocommerce-product-details__short-description ul { margin-left: 1.2em; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-family: var(--bdp-titre); font-size: 18px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--bdp-bleu); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active:before { background: var(--bdp-or); }
.woocommerce-Tabs-panel h2 { font-size: 1.6em; margin-top: .4em; }
.woocommerce-Tabs-panel h3 { font-size: 1.3em; margin-top: 1.4em; color: var(--bdp-bleu); }
.bdp-faq { display: grid; gap: 10px; margin-top: 10px; }
.bdp-faq-item { background: var(--bdp-papier); border: 1px solid var(--bdp-filet); border-radius: 8px; padding: 12px 16px; }
.bdp-faq-item h4 { font-size: 1.05em; margin: 0 0 4px; }
.bdp-faq-item p { margin: 0; }

/* Contenus */
.ast-separate-container .ast-article-single, .ast-separate-container .ast-article-post,
.woocommerce.ast-separate-container .site-main > .product, .ast-woocommerce-container {
	background: var(--bdp-papier);
}
.woocommerce-breadcrumb, .ast-breadcrumbs { color: var(--bdp-encre-douce); font-size: 14px; }

/* Pied de page */
.site-footer, .site-primary-footer-wrap, .site-below-footer-wrap, .site-above-footer-wrap {
	background: var(--bdp-nuit) !important;
	color: #d8c9ad !important;
	border-top: 3px solid var(--bdp-or);
}
.site-below-footer-wrap { border-top: 1px solid var(--bdp-nuit-2); }
.site-footer a { color: var(--bdp-or-clair) !important; }
.site-footer a:hover { color: #fff !important; }
.site-footer .widget-title, .site-footer h2, .site-footer h3, .site-footer h4 { color: var(--bdp-creme) !important; }

/* Accueil */
.bdp-hero {
	position: relative;
	background: var(--bdp-nuit) center/cover no-repeat;
	color: var(--bdp-creme);
	padding: 90px 24px;
	text-align: center;
	border-radius: 0 0 14px 14px;
	overflow: hidden;
}
.bdp-hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(29, 36, 64, .55), rgba(29, 36, 64, .82)); }
.bdp-hero > * { position: relative; }
.bdp-hero h1 { color: var(--bdp-creme); font-size: clamp(32px, 5vw, 54px); margin: 0 0 14px; }
.bdp-hero p { font-size: 1.2em; max-width: 680px; margin: 0 auto 26px; color: #ecdfc6; }
.bdp-hero .bdp-hero-ctas { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.bdp-hero .bdp-btn-sec { background: transparent !important; border: 2px solid var(--bdp-or-clair) !important; color: var(--bdp-or-clair) !important; }
.bdp-section { max-width: 1400px; margin: 0 auto; padding: 56px 20px 0; }
.bdp-section > h2 { text-align: center; font-size: clamp(26px, 3.4vw, 36px); margin-bottom: 8px; }
.bdp-section > .bdp-chapo { text-align: center; color: var(--bdp-encre-douce); max-width: 720px; margin: 0 auto 28px; }
.bdp-rayons { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
@media (max-width: 921px) { .bdp-rayons { grid-template-columns: repeat(2, 1fr); } }
.bdp-rayon {
	display: block; text-decoration: none; background: var(--bdp-papier); border: 1px solid var(--bdp-filet);
	border-radius: 10px; overflow: hidden; color: var(--bdp-encre) !important; transition: border-color .15s ease, box-shadow .15s ease;
}
.bdp-rayon:hover { border-color: var(--bdp-or); box-shadow: 0 6px 18px rgba(29, 36, 64, .12); }
.bdp-rayon img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; }
.bdp-rayon span { display: block; padding: 12px 14px; font-family: var(--bdp-titre); font-weight: 700; font-size: 19px; }
.bdp-rayon small { display: block; padding: 0 14px 14px; color: var(--bdp-encre-douce); font-size: 14px; }
.bdp-gaspard {
	display: grid; grid-template-columns: 1fr 1.4fr; gap: 32px; align-items: center;
	background: var(--bdp-papier); border: 1px solid var(--bdp-filet); border-radius: 14px; padding: 32px;
}
.bdp-gaspard img { width: 100%; border-radius: 10px; }
.bdp-gaspard blockquote { font-family: var(--bdp-titre); font-style: italic; font-size: 1.25em; border-left: 3px solid var(--bdp-or); margin: 0 0 16px; padding-left: 16px; }
.bdp-atouts { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
.bdp-atout { background: var(--bdp-papier); border: 1px solid var(--bdp-filet); border-top: 3px solid var(--bdp-or); border-radius: 10px; padding: 18px; }
.bdp-atout h3 { font-size: 1.15em; margin: 0 0 6px; }
.bdp-atout p { margin: 0; color: var(--bdp-encre-douce); }
.bdp-home-faq { max-width: 860px; margin: 0 auto; }
@media (max-width: 768px) {
	.bdp-gaspard { grid-template-columns: 1fr; padding: 20px; }
	.bdp-hero { padding: 60px 18px; }
	.bdp-section { padding-top: 40px; }
}

/* En-tête : titre sur une ligne, pas de slogan, panier compact */
.site-header .site-title { white-space: nowrap; font-size: 26px; margin: 0; }
.site-header .site-description { display: none; }
.site-header .ast-woo-header-cart-info-wrap { display: none !important; }
.site-header .ast-site-header-cart .ast-cart-menu-wrap .count, .site-header .ast-addon-cart-wrap .count { color: var(--bdp-creme); border-color: var(--bdp-or-clair); }
.site-header .ast-search-menu-icon .search-field { color: var(--bdp-encre); }
.site-header .astra-search-icon, .site-header .ast-icon svg { fill: var(--bdp-creme); color: var(--bdp-creme); }

/* Catégories */
.bdp-cat-bottom { background: var(--bdp-papier); border: 1px solid var(--bdp-filet); border-radius: 12px; padding: 28px 32px; margin: 40px 0 10px; }
.bdp-cat-bottom h2 { font-size: 1.6em; }
.bdp-cat-bottom h3 { font-size: 1.25em; color: var(--bdp-bleu); }
.bdp-cat-bottom .bdp-faq-item h3 { color: var(--bdp-encre); font-size: 1.05em; margin: 0 0 4px; }
.term-description { font-size: 1.08em; color: var(--bdp-encre-douce); max-width: 860px; }

/* Logo + visuels de l'accueil */
.site-header .custom-logo-link img, .site-header .custom-logo { max-height: 64px; width: auto; border-radius: 6px; }
.bdp-hero { background-image: url(/wp-content/uploads/2026/10/bdp-hero.jpg); }

/* Correctifs accueil / boutons */
.bdp-hero p { max-width: 680px !important; margin-left: auto !important; margin-right: auto !important; }
.site-header .site-title, .site-header .site-title a { font-family: var(--bdp-titre) !important; font-weight: 800; }
.button, a.button, button.button, .wp-block-button__link, .woocommerce .single_add_to_cart_button {
	text-transform: none !important; font-size: 16px !important; padding: 12px 22px !important; letter-spacing: 0 !important;
}
.woocommerce ul.products li.product .button { font-size: 14px !important; padding: 9px 16px !important; }

/* Pied de page lisible */
.site-footer, .site-footer p, .site-footer li, .site-footer .widget, .site-footer .ast-footer-copyright, .site-footer .ast-footer-copyright p { color: #d8c9ad !important; }
.site-footer .widget-title, .site-footer h2 { font-family: var(--bdp-titre) !important; font-size: 20px; margin-bottom: 10px; }
.site-footer ul { list-style: none; margin: 0; }
.site-footer li { margin-bottom: 6px; }
/* Pas d'étoiles vides sans avis */
.woocommerce ul.products li.product .star-rating:has(> span[style*="width:0%"]) { display: none; }

/* Sous-collections */
.bdp-souscols { display: flex; flex-wrap: wrap; gap: 8px; margin: 6px 0 22px; }
.bdp-souscols a { background: var(--bdp-papier); border: 1px solid var(--bdp-filet); border-radius: 999px; padding: 6px 14px; color: var(--bdp-encre) !important; text-decoration: none; font-weight: 500; }
.bdp-souscols a:hover { border-color: var(--bdp-or); color: var(--bdp-bleu) !important; }
.bdp-souscols small { color: var(--bdp-encre-douce); margin-left: 4px; }

/* Filtres couleur / matière */
.bdp-filtres { background: var(--bdp-papier); border: 1px solid var(--bdp-filet); border-radius: 12px; padding: 14px 16px; margin: 0 0 22px; display: grid; gap: 10px; }
.bdp-filtre { display: flex; gap: 12px; align-items: flex-start; }
.bdp-filtre-label { font-family: var(--bdp-titre); font-weight: 700; min-width: 74px; padding-top: 5px; }
.bdp-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.bdp-chip { display: inline-flex; align-items: center; gap: 6px; border: 1px solid var(--bdp-filet); background: #fff; border-radius: 999px; padding: 4px 11px; font-size: 14px; color: var(--bdp-encre) !important; text-decoration: none; }
.bdp-chip:hover { border-color: var(--bdp-or); }
.bdp-chip.is-on { background: var(--bdp-bleu); border-color: var(--bdp-bleu); color: #fff !important; }
.bdp-chip small { opacity: .65; }
.bdp-filtre-reset { justify-self: start; font-size: 14px; }
.bdp-sw { width: 14px; height: 14px; border-radius: 50%; border: 1px solid rgba(0,0,0,.2); display: inline-block; }
.bdp-sw-noir { background: #1d1d1d; } .bdp-sw-blanc { background: #fff; } .bdp-sw-gris { background: #8e8e8e; }
.bdp-sw-argente { background: linear-gradient(135deg, #f2f2f2, #9a9a9a); } .bdp-sw-dore { background: linear-gradient(135deg, #f7dd7a, #b8860b); }
.bdp-sw-cuivre { background: linear-gradient(135deg, #e3a06a, #8c4a22); } .bdp-sw-rouge { background: #c62828; } .bdp-sw-rose { background: #ef8fb5; }
.bdp-sw-orange { background: #ef7d22; } .bdp-sw-jaune { background: #f5cf2a; } .bdp-sw-vert { background: #2e9d4a; } .bdp-sw-bleu { background: #2463c9; }
.bdp-sw-violet { background: #7b3fb5; } .bdp-sw-marron { background: #6b4226; }
.bdp-sw-transparent { background: repeating-linear-gradient(45deg, #fff 0 3px, #dfe7ee 3px 6px); }
.bdp-sw-multicolore { background: conic-gradient(#e53935, #fdd835, #43a047, #1e88e5, #8e24aa, #e53935); }
@media (max-width: 600px) { .bdp-filtre { flex-direction: column; gap: 4px; } }

/* ===== Fiche produit : conversion ===== */
/* En-tête mobile : tout tient dans l'écran, le menu reste visible */
@media (max-width: 921px) {
	.site-header .custom-logo-link img, .site-header .custom-logo { max-height: 46px; }
	.site-header .site-title { font-size: 19px !important; }
}
@media (max-width: 420px) {
	.site-header .site-title { font-size: 16px !important; }
	.site-header .custom-logo-link img, .site-header .custom-logo { max-height: 40px; }
}

.bdp-ariane { margin: 0 0 14px; font-size: 14px; }
.bdp-ariane .bdp-sep { margin: 0 7px; color: var(--bdp-or); }
.single-product .summary > .price { font-size: 1.6em !important; margin-bottom: 10px; }
.single-product .woocommerce-variation-price { display: none; }
.single-product table.variations th.label { display: block; padding: 0 0 6px; text-align: left; }
.single-product table.variations td.value { display: block; padding: 0 0 12px; }
.bdp-hidden-select { position: absolute !important; opacity: 0; pointer-events: none; height: 0 !important; width: 0 !important; }
.bdp-pills { display: flex; flex-wrap: wrap; gap: 8px; }
.bdp-pill { border: 1.5px solid var(--bdp-filet); background: #fff; color: var(--bdp-encre); border-radius: 8px; padding: 8px 14px; font: inherit; font-size: 15px; cursor: pointer; line-height: 1.2; }
.bdp-pill:hover { border-color: var(--bdp-or); }
.bdp-pill.is-on { border-color: var(--bdp-bleu); box-shadow: inset 0 0 0 1px var(--bdp-bleu); background: #fdf3ef; font-weight: 700; }
.bdp-pill.is-off { opacity: .4; text-decoration: line-through; }
.single-product form.cart:not(.variations_form), .single-product .woocommerce-variation-add-to-cart { display: flex; gap: 10px; align-items: stretch; }
.single-product form.cart .quantity .qty { height: 52px; width: 70px; }
.single-product .single_add_to_cart_button { flex: 1; height: 52px; font-size: 18px !important; }
.bdp-rassure { list-style: none; margin: 18px 0 0; padding: 14px 16px; background: #fff; border: 1px solid var(--bdp-filet); border-radius: 10px; display: grid; gap: 6px; font-size: 15px; }
.bdp-rassure li { display: flex; align-items: center; gap: 10px; margin: 0; }
.bdp-rassure .bdp-picto { width: 36px; height: 36px; }
.woocommerce span.onsale { font-size: 15px; }
/* Vignettes de la galerie : une seule ligne défilante */
.single-product .flex-control-thumbs { display: flex !important; gap: 8px; overflow-x: auto; scrollbar-width: thin; }
.single-product .flex-control-thumbs li { flex: 0 0 calc(20% - 7px) !important; width: auto !important; margin: 8px 0 0 !important; }
/* Complète ta table */
.bdp-complete { clear: both; padding-top: 30px; }
.bdp-complete > h2 { font-size: 1.6em; }
/* Barre d'achat mobile */
.bdp-stickybar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 999; display: flex; gap: 10px; align-items: center; padding: 10px 12px calc(10px + env(safe-area-inset-bottom)); background: var(--bdp-papier); border-top: 2px solid var(--bdp-or); box-shadow: 0 -4px 14px rgba(29, 36, 64, .15); transform: translateY(110%); transition: transform .2s ease; }
.bdp-stickybar.is-on { transform: none; }
.bdp-sb-t { flex: 1; min-width: 0; line-height: 1.3; }
.bdp-sb-n { display: block; font-size: 13px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bdp-sb-p { display: block; font-weight: 700; color: var(--bdp-bleu); font-size: 15px; }
.bdp-sb-p del { display: none; }
.bdp-stickybar .button { white-space: nowrap; padding: 12px 16px !important; }
/* Sur ordinateur : barre centrée sur la largeur du site */
.bdp-stickybar.is-desk { gap: 16px; padding: 10px max(20px, calc((100vw - 1400px) / 2 + 20px)); }
.bdp-sb-img { width: 52px; height: 52px; object-fit: cover; border-radius: 6px; border: 1px solid var(--bdp-filet); flex: 0 0 auto; }
.is-desk .bdp-sb-n { font-family: var(--bdp-titre); font-weight: 700; font-size: 17px; }
.is-desk .bdp-sb-p { font-size: 17px; }
.bdp-sb-vars { display: flex; gap: 8px; flex: 0 1 auto; }
.bdp-sb-vars select { min-width: 150px; max-width: 240px; padding: 10px 12px; border: 1px solid var(--bdp-filet); border-radius: 6px; background: #fff; font: inherit; font-size: 15px; color: var(--bdp-encre); }
.bdp-sb-vars select:focus { outline: 2px solid var(--bdp-or); }

.bdp-pill { text-transform: none !important; letter-spacing: 0 !important; }

/* Un seul badge de remise par carte (celui d'Astra) */
ul.products li.product .onsale:not(.ast-onsale-card) { display: none !important; }

/* ===== Filtres en colonne latérale ===== */
#secondary .bdp-filtres { background: none; border: 0; padding: 0; margin: 0 0 24px; display: block; }
#secondary .bdp-filtres > summary { display: none; }
#secondary .bdp-filtres-in { display: grid; gap: 22px; }
#secondary .bdp-filtre { display: block; }
#secondary .bdp-filtre-label { display: block; font-size: 19px; padding: 0 0 8px; margin-bottom: 8px; border-bottom: 2px solid var(--bdp-or); }
#secondary .bdp-chips { display: grid; gap: 2px; }
#secondary .bdp-chip { border: 0; background: none; border-radius: 6px; padding: 6px 8px; font-size: 15px; justify-content: flex-start; }
#secondary .bdp-chip::after { content: ""; }
#secondary .bdp-chip small { margin-left: auto; }
#secondary .bdp-chip:hover { background: var(--bdp-papier); }
#secondary .bdp-chip.is-on { background: #fdf3ef; color: var(--bdp-bleu) !important; font-weight: 700; box-shadow: inset 3px 0 0 var(--bdp-bleu); }
#secondary .bdp-chip:not(:has(.bdp-sw))::before { content: ""; width: 14px; height: 14px; border: 1.5px solid #b9a98c; border-radius: 3px; display: inline-block; }
#secondary .bdp-chip.is-on:not(:has(.bdp-sw))::before { background: var(--bdp-bleu); border-color: var(--bdp-bleu); box-shadow: inset 0 0 0 2px #fff; }
#secondary .bdp-chip.is-on .bdp-sw { box-shadow: 0 0 0 2px #fff, 0 0 0 3.5px var(--bdp-bleu); }
#secondary .bdp-filtre-reset { display: inline-block; margin-top: 4px; }
.woocommerce.archive #secondary { width: 23%; padding-top: 6px; }
.woocommerce.archive #primary.content-area { width: 77%; }
@media (max-width: 921px) {
	.woocommerce .ast-container, .woocommerce-page .ast-container { display: flex; flex-direction: column !important; }
	.woocommerce #secondary, .woocommerce-page #secondary { order: -1; width: 100%; padding: 0; margin: 14px 0 0; }
	.woocommerce #primary.content-area, .woocommerce-page #primary.content-area { width: 100%; }
	#secondary .bdp-filtres { border: 1px solid var(--bdp-filet); border-radius: 10px; background: var(--bdp-papier); margin: 0; }
	#secondary .bdp-filtres > summary { display: block; cursor: pointer; padding: 12px 16px; font-family: var(--bdp-titre); font-weight: 700; font-size: 18px; }
	#secondary .bdp-filtres-in { padding: 0 16px 16px; }
	#secondary .bdp-chips { grid-template-columns: 1fr 1fr; }
}

/* Filtre couleur compact : 2 colonnes, lignes serrées */
#secondary .bdp-chip { padding: 4px 6px; line-height: 1.25; }
#secondary .bdp-f-couleur .bdp-chips { grid-template-columns: 1fr 1fr; column-gap: 4px; row-gap: 0; }
#secondary .bdp-f-couleur .bdp-chip { font-size: 14px; gap: 6px; }
#secondary .bdp-f-couleur .bdp-chip small { font-size: 11px; }
#secondary .bdp-sw { width: 13px; height: 13px; flex: 0 0 13px; }
#secondary .bdp-filtre-label { margin-bottom: 6px; padding-bottom: 6px; }
#secondary .bdp-filtres-in { gap: 18px; }
#secondary .bdp-f-couleur .bdp-chip { white-space: nowrap; }
#secondary .bdp-f-couleur .bdp-chip small { display: none; }

/* ===== Filtres mobile : bouton flottant + panneau ===== */
.bdp-fbtn, .bdp-fsheet { display: none; }
@media (max-width: 921px) {
	.woocommerce #secondary, .woocommerce-page #secondary { display: none; }
	.bdp-fbtn { display: inline-flex; align-items: center; gap: 7px; position: fixed; z-index: 998; left: 50%; bottom: calc(16px + env(safe-area-inset-bottom)); transform: translateX(-50%); padding: 10px 18px; border: 0; border-radius: 999px; background: var(--bdp-nuit); color: var(--bdp-creme); font: inherit; font-weight: 700; font-size: 15px; box-shadow: 0 6px 18px rgba(29, 36, 64, .35); cursor: pointer; }
	.bdp-fbtn b { background: var(--bdp-or); color: var(--bdp-nuit); border-radius: 999px; min-width: 20px; height: 20px; font-size: 12px; display: inline-grid; place-items: center; padding: 0 5px; }
	.bdp-fsheet { display: block; position: fixed; inset: 0; z-index: 1000; pointer-events: none; }
	.bdp-fsheet-bg { position: absolute; inset: 0; background: rgba(20, 12, 8, .45); opacity: 0; transition: opacity .2s ease; }
	.bdp-fsheet-panel { position: absolute; left: 0; right: 0; bottom: 0; max-height: 85vh; display: flex; flex-direction: column; background: var(--bdp-papier); border-radius: 16px 16px 0 0; transform: translateY(100%); transition: transform .25s ease; }
	.bdp-fsheet.is-open { pointer-events: auto; }
	.bdp-fsheet.is-open .bdp-fsheet-bg { opacity: 1; }
	.bdp-fsheet.is-open .bdp-fsheet-panel { transform: none; }
	.bdp-fsheet-head { display: flex; justify-content: space-between; align-items: center; padding: 14px 18px; border-bottom: 1px solid var(--bdp-filet); font-family: var(--bdp-titre); font-size: 20px; }
	.bdp-fsheet-x { border: 0; background: none; font-size: 28px; line-height: 1; color: var(--bdp-encre); cursor: pointer; padding: 0 4px; }
	.bdp-fsheet-body { overflow-y: auto; padding: 14px 18px; }
	.bdp-fsheet-foot { padding: 12px 18px calc(12px + env(safe-area-inset-bottom)); border-top: 1px solid var(--bdp-filet); }
	.bdp-fsheet-foot .button { width: 100%; }
	.bdp-fsheet .bdp-filtres-in { display: grid; gap: 18px; }
	.bdp-fsheet .bdp-filtre { display: block; }
	.bdp-fsheet .bdp-filtre-label { display: block; font-size: 18px; padding-bottom: 6px; margin-bottom: 6px; border-bottom: 2px solid var(--bdp-or); }
	.bdp-fsheet .bdp-chips { display: grid; grid-template-columns: 1fr 1fr; gap: 2px 6px; }
	.bdp-fsheet .bdp-chip { border: 0; background: none; padding: 7px 6px; font-size: 15px; justify-content: flex-start; white-space: nowrap; }
	.bdp-fsheet .bdp-chip small { margin-left: auto; }
	.bdp-fsheet .bdp-f-couleur .bdp-chip small { display: none; }
	.bdp-fsheet .bdp-chip.is-on { background: #fdf3ef; color: var(--bdp-bleu) !important; font-weight: 700; }
	.bdp-fsheet .bdp-chip:not(:has(.bdp-sw))::before { content: ""; width: 14px; height: 14px; border: 1.5px solid #b9a98c; border-radius: 3px; display: inline-block; flex: 0 0 14px; }
	.bdp-fsheet .bdp-chip.is-on:not(:has(.bdp-sw))::before { background: var(--bdp-bleu); border-color: var(--bdp-bleu); box-shadow: inset 0 0 0 2px #fff; }
	.bdp-fsheet .bdp-chip.is-on .bdp-sw { box-shadow: 0 0 0 2px #fff, 0 0 0 3.5px var(--bdp-bleu); }
	.bdp-fsheet .bdp-filtre-reset { display: inline-block; }
	html.bdp-noscroll { overflow: hidden; }
}

/* En-tête de collection pleine largeur */
.bdp-coll-head { padding: 34px 0 6px; }
.bdp-coll-head .ast-container { display: block; }
.bdp-coll-titre { font-size: clamp(32px, 4vw, 48px); margin: 6px 0 10px; }
.bdp-coll-head .term-description { max-width: 900px; margin-bottom: 14px; }
.bdp-coll-head .bdp-souscols { margin-bottom: 4px; }
.woocommerce.archive #primary .woocommerce-breadcrumb, .woocommerce.archive #primary .term-description { display: none; }
.woocommerce.archive #primary, .woocommerce.archive #secondary { padding-top: 18px; margin-top: 0; }
@media (max-width: 921px) { .bdp-coll-head { padding-top: 18px; } }

/* Filtres : bloc collant + accordéons */
@media (min-width: 922px) {
	#secondary .bdp-filtres { position: sticky; top: 20px; max-height: calc(100vh - 40px); overflow-y: auto; background: var(--bdp-papier); border: 1px solid var(--bdp-filet); border-radius: 12px; padding: 6px 14px 14px; box-shadow: 0 4px 16px rgba(29, 36, 64, .06); }
	#secondary .widget-area, #secondary .sidebar-main { height: 100%; }
	.woocommerce.archive #secondary { align-self: stretch; }
	.admin-bar #secondary .bdp-filtres { top: 52px; }
}
.bdp-filtres-in { gap: 4px !important; }
details.bdp-filtre > summary { list-style: none; cursor: pointer; display: flex; align-items: center; gap: 8px; padding: 10px 2px 8px !important; margin: 0 !important; border-bottom: 1px solid var(--bdp-filet) !important; font-family: var(--bdp-titre); font-weight: 700; font-size: 18px !important; user-select: none; }
details.bdp-filtre > summary::-webkit-details-marker { display: none; }
details.bdp-filtre > summary::after { content: ""; margin-left: auto; width: 8px; height: 8px; border-right: 2px solid var(--bdp-or); border-bottom: 2px solid var(--bdp-or); transform: rotate(45deg); transition: transform .15s ease; margin-right: 4px; }
details.bdp-filtre[open] > summary::after { transform: rotate(-135deg); }
details.bdp-filtre > .bdp-chips { padding: 8px 0 6px; }
.bdp-nb { background: var(--bdp-bleu); color: #fff; border-radius: 999px; font-size: 12px; min-width: 20px; height: 20px; display: inline-grid; place-items: center; padding: 0 6px; font-family: var(--bdp-texte); }
.bdp-filtres .bdp-filtre-reset { margin-top: 10px; }
#secondary details.bdp-filtre > summary, .bdp-fsheet details.bdp-filtre > summary { display: flex !important; align-items: center; }
#secondary .bdp-filtres { overflow-x: hidden; }
#secondary .bdp-chips, .bdp-fsheet .bdp-chips { min-width: 0; }
#secondary .bdp-chip, .bdp-fsheet .bdp-chip { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
#secondary .bdp-f-couleur .bdp-chip { font-size: 13.5px; padding: 4px 3px; gap: 5px; }

/* Collections : pas de fond ni de filet autour de la grille, seules les cartes et le bloc de filtres se détachent */
.woocommerce.archive #primary, .woocommerce.archive .ast-woocommerce-container, .woocommerce.archive .site-main,
.woocommerce.archive.ast-separate-container .ast-woocommerce-container { background: transparent !important; box-shadow: none !important; padding-left: 0; padding-right: 0; }
.woocommerce.archive #secondary, .woocommerce.archive #primary { border: 0 !important; }
.woocommerce.archive.ast-left-sidebar #primary { padding-left: 40px; }
.woocommerce.archive .woocommerce-result-count, .woocommerce.archive .woocommerce-ordering { margin-bottom: 18px; }
@media (max-width: 921px) { .woocommerce.archive.ast-left-sidebar #primary { padding-left: 0; } }

/* Fiche produit : pas de fond « papier » autour du produit */
.single-product .site-main > .product, .single-product.ast-separate-container .ast-woocommerce-container,
.single-product #primary, .single-product .ast-article-single { background: transparent !important; box-shadow: none !important; }
.single-product .woocommerce-tabs, .single-product .bdp-complete, .single-product .related { background: transparent; }
.single-product div.product .woocommerce-tabs ul.tabs::before { border-color: var(--bdp-filet); }

/* Aucun fond « papier » sur le conteneur WooCommerce (fiches, collections) : seuls les blocs se détachent */
.ast-woocommerce-container { background: transparent !important; }

/* Fiches, panier, commande : pleine largeur du conteneur */
.single-product #primary.content-area, .woocommerce-cart #primary, .woocommerce-checkout #primary { width: 100% !important; }

/* Fiche produit : de l'air sous le menu */
.single-product #primary { padding-top: 28px; }
.single-product .bdp-ariane { margin-bottom: 18px; }
@media (max-width: 921px) { .single-product #primary { padding-top: 16px; } }

/* Bouton « Acheter maintenant » à côté d'« Ajouter au panier » */
.single-product .bdp-buynow { flex: 1; height: 52px; font-size: 18px !important; background: #f2b233 !important; color: var(--bdp-nuit) !important; }
.single-product .bdp-buynow:hover { background: #e0a01f !important; color: var(--bdp-nuit) !important; }
.single-product .bdp-buynow.disabled { opacity: .5; }
.bdp-stickybar .bdp-sb-buy { background: #f2b233 !important; color: var(--bdp-nuit) !important; }
.bdp-stickybar .bdp-sb-buy:hover { background: #e0a01f !important; color: var(--bdp-nuit) !important; }
.single-product form.cart:not(.variations_form), .single-product .woocommerce-variation-add-to-cart { flex-wrap: wrap; }
@media (max-width: 600px) { .single-product .bdp-buynow { flex-basis: 100%; } }

/* Mobile : la grille des collections reprend toute la largeur */
@media (max-width: 921px) { .woocommerce.archive #primary.content-area, .woocommerce.archive #secondary { width: 100% !important; } .woocommerce.archive.ast-left-sidebar #primary { padding-left: 0 !important; padding-right: 0 !important; } }

/* Type de dés : 2 colonnes compactes */
#secondary .bdp-f-typedes .bdp-chips, .bdp-fsheet .bdp-f-typedes .bdp-chips { grid-template-columns: 1fr 1fr; column-gap: 4px; row-gap: 0; }
#secondary .bdp-f-typedes .bdp-chip { font-size: 14px; padding: 4px 3px; }
#secondary .bdp-f-typedes .bdp-chip, .bdp-fsheet .bdp-f-typedes .bdp-chip { white-space: nowrap; }
#secondary .bdp-f-typedes .bdp-chip small { font-size: 11px; }

/* Jamais de défilement horizontal de la page (clip ne casse pas position: sticky) */
html, body { overflow-x: clip; }

/* Accueil : barre de réassurance sous le hero */
.entry-content .bdp-reassure { max-width: 1440px !important; margin: 22px auto 0 !important; padding: 0 20px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; }
.bdp-reassure > div { width: 100%; max-width: none !important; margin: 0 !important; display: flex; gap: 12px; align-items: center; background: var(--bdp-papier); border: 1px solid var(--bdp-filet); border-radius: 10px; padding: 14px 16px; }

.bdp-reassure p { margin: 0; line-height: 1.3; }
.bdp-reassure strong { display: block; font-size: 16px; color: var(--bdp-encre); }
.bdp-reassure span { display: block; font-size: 14px; color: var(--bdp-encre-douce); }
@media (max-width: 921px) { .entry-content .bdp-reassure { grid-template-columns: repeat(2, 1fr); gap: 8px; margin-top: 14px !important; } .bdp-reassure > div { padding: 10px 12px; gap: 8px; } .bdp-reassure strong { font-size: 14px; } .bdp-reassure span { font-size: 12.5px; } }

/* Accueil : entrées par intention */
.bdp-intents { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.bdp-intent { display: flex; flex-direction: column; gap: 6px; text-decoration: none; background: var(--bdp-papier); border: 1px solid var(--bdp-filet); border-left: 4px solid var(--bdp-or); border-radius: 10px; padding: 18px 18px 16px; color: var(--bdp-encre) !important; transition: border-color .15s ease, box-shadow .15s ease; }
.bdp-intent:hover { border-color: var(--bdp-or); box-shadow: 0 6px 18px rgba(29, 36, 64, .12); }
.bdp-intent small { font-size: 13px; text-transform: uppercase; letter-spacing: .06em; color: var(--bdp-or); font-weight: 700; }
.bdp-intent strong { font-family: var(--bdp-titre); font-size: 21px; line-height: 1.2; }
.bdp-intent span { color: var(--bdp-encre-douce); font-size: 15px; flex: 1; }
.bdp-intent em { font-style: normal; font-weight: 700; color: var(--bdp-bleu); font-size: 15px; }
.bdp-intent em::after { content: " →"; }
@media (max-width: 921px) { .bdp-intents { grid-template-columns: repeat(2, 1fr); gap: 10px; } .bdp-intent { padding: 14px; } .bdp-intent strong { font-size: 18px; } }
@media (max-width: 480px) { .bdp-intents { grid-template-columns: 1fr; } }

/* Pictos maison : illustrations détourées, sans cadre */
.bdp-picto { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; }
.bdp-picto img { width: 100%; height: 100%; object-fit: contain; display: block; filter: drop-shadow(0 2px 3px rgba(29, 36, 64, .18)); }
.bdp-atout .bdp-picto { width: 64px; height: 64px; margin-bottom: 10px; }
@media (max-width: 921px) { .bdp-reassure .bdp-picto { width: 40px; height: 40px; } }

/* Accueil : FAQ en accordéons sur deux colonnes */
.bdp-home-faq { padding-bottom: 64px !important; }
.bdp-home-faq .bdp-faq { grid-template-columns: repeat(2, 1fr); align-items: start; gap: 12px 16px; }
.bdp-home-faq details.bdp-faq-item { padding: 0; }
.bdp-home-faq summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 18px; }
.bdp-home-faq summary::-webkit-details-marker { display: none; }
.bdp-home-faq summary h3 { font-size: 18px; margin: 0; line-height: 1.3; }
.bdp-home-faq summary::after { content: "+"; flex: 0 0 auto; font-size: 22px; line-height: 1; color: var(--bdp-or); font-weight: 700; }
.bdp-home-faq details[open] summary::after { content: "−"; }
.bdp-home-faq details p { padding: 0 18px 16px; margin: 0; color: var(--bdp-encre-douce); }
@media (max-width: 921px) { .bdp-home-faq .bdp-faq { grid-template-columns: 1fr; } }

/* En-tête : caché en descendant, revient dès qu'on remonte */
#masthead.bdp-hdr { position: sticky; top: var(--wp-admin--admin-bar--height, 0px); z-index: 1000; transition: transform .25s ease, box-shadow .25s ease; will-change: transform; }
#masthead.bdp-hdr.bdp-hdr-ombre { box-shadow: 0 4px 16px rgba(29, 36, 64, .25); }
#masthead.bdp-hdr.bdp-hdr-cache { transform: translateY(calc(-100% - var(--wp-admin--admin-bar--height, 0px))); box-shadow: none; }
@media (max-width: 600px) { #masthead.bdp-hdr { top: 0; } #masthead.bdp-hdr.bdp-hdr-cache { transform: translateY(-100%); } }
/* Les filtres des collections passent sous l'en-tête quand il est visible */
#secondary .bdp-filtres { transition: top .25s ease; }
html.bdp-hdr-visible #secondary .bdp-filtres { top: calc(var(--bdp-hdr-h, 80px) + var(--wp-admin--admin-bar--height, 0px) + 16px); max-height: calc(100vh - var(--bdp-hdr-h, 80px) - 40px); }

/* Guides du blog : H1 en casse saisie (Astra le passe en « capitalize ») ; tableaux défilants sur mobile */
body.single-post h1.entry-title, body.blog .entry-title, body.archive .entry-title { text-transform: none !important; }
@media (max-width: 600px) {
	.single-post .entry-content table { display: block; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
}

/* Cartes produit des guides d'achat ([cdd_carte]) */
.bdp-carte { display: flex; flex-direction: column; gap: 6px; margin: 0 0 12px; text-decoration: none !important; color: var(--bdp-encre) !important; background: #fff; border: 1px solid var(--bdp-filet); border-radius: 10px; padding: 10px; transition: border-color .15s ease, box-shadow .15s ease; }
.bdp-carte:hover { border-color: var(--bdp-or); box-shadow: 0 6px 18px rgba(29, 36, 64, .14); }
.bdp-carte img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 6px; display: block; margin: 0 0 4px; }
.bdp-carte-nom { font-family: var(--bdp-titre); font-weight: 700; font-size: 17px; line-height: 1.3; }
.bdp-carte-prix { font-weight: 700; color: var(--bdp-bleu); font-size: 17px; }
.bdp-carte-prix del { color: var(--bdp-encre-douce); opacity: .7; font-weight: 400; font-size: .85em; margin-right: 6px; }
.bdp-carte-prix ins { text-decoration: none; }
.bdp-carte-btn { display: block; text-align: center; margin-top: 4px; background: var(--bdp-bleu); color: #fff; border-radius: 6px; padding: 11px 14px; font-weight: 700; }
.bdp-carte:hover .bdp-carte-btn { background: var(--bdp-bleu-fonce); }
.bdp-cartes { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 230px), 1fr)); gap: 14px; margin: 10px 0 34px; }
.bdp-cartes .bdp-carte { margin: 0; }
.bdp-cartes-label { margin: 28px 0 0 !important; font-size: 13px; text-transform: uppercase; letter-spacing: .08em; font-weight: 700; color: var(--bdp-or); }

/* ===== Bijoux de Protection : ajustements ===== */
.entry-content .bdp-reassure.bdp-reassure-3 { grid-template-columns: repeat(3, 1fr); max-width: 1400px !important; }
@media (max-width: 921px) { .entry-content .bdp-reassure.bdp-reassure-3 { grid-template-columns: 1fr; } }
.bdp-hero h1 { font-weight: 600; letter-spacing: .01em; }
.bdp-gaspard h2 { margin-top: 0; }
.site-header .site-title a { font-family: var(--bdp-titre) !important; font-weight: 600; letter-spacing: .04em; }
.woocommerce span.onsale, .ast-onsale-card { background: var(--bdp-or) !important; color: #fff !important; }
/* Liens-blocs et boutons sans soulignement ; bloc « mot de la Gardienne » plus compact */
.bdp-rayon, .bdp-rayon *, .bdp-intent, .bdp-intent *, .bdp-hero a.button, a.button, .bdp-carte, .bdp-carte * { text-decoration: none !important; }
.bdp-gaspard { grid-template-columns: minmax(220px, 340px) 1fr; }
.bdp-gaspard img { aspect-ratio: 1 / 1; object-fit: cover; }
.bdp-gaspard blockquote { font-size: 1.4em; }
.bdp-rayon span { font-size: 21px; }
/* Logo : emblème haut, le nom doit rester lisible */
.site-header .custom-logo-link img.custom-logo, .site-header .site-logo-img img { max-height: 84px !important; height: 84px !important; width: auto !important; max-width: none !important; }
@media (max-width: 921px) { .site-header .custom-logo-link img.custom-logo, .site-header .site-logo-img img { max-height: 58px !important; height: 58px !important; } }
/* Panier et burger aux couleurs or */
.site-header .ast-cart-menu-wrap, .site-header .ast-cart-menu-wrap .count, .site-header .ast-cart-menu-wrap .count:after { color: var(--bdp-or-clair) !important; border-color: var(--bdp-or-clair) !important; }
.site-header .ast-mobile-menu-trigger-minimal svg, .site-header .menu-toggle svg, .site-header .ast-search-icon svg { fill: var(--bdp-or-clair) !important; }

/* Bandeau d'accueil illustré : le centre est déjà sombre, voile léger seulement */
.bdp-hero { padding: 110px 24px; }
.bdp-hero::before { background: radial-gradient(ellipse at center, rgba(29, 36, 64, .55) 0%, rgba(29, 36, 64, .15) 60%, rgba(29, 36, 64, 0) 100%); }
@media (max-width: 921px) { .bdp-hero { background-position: center; } .bdp-hero::before { background: rgba(29, 36, 64, .62); } }
.bdp-hero { min-height: 560px; display: flex; flex-direction: column; justify-content: center; align-items: center; background-position: center 55% !important; }
.entry-content .bdp-hero h1 { max-width: 640px !important; margin-left: auto !important; margin-right: auto !important; text-shadow: 0 2px 14px rgba(29, 36, 64, .85); }
.entry-content .bdp-hero p { max-width: 560px !important; text-shadow: 0 1px 8px rgba(29, 36, 64, .9); }
@media (max-width: 921px) { .bdp-hero { min-height: 0; } .entry-content .bdp-hero h1 { max-width: none !important; } }

/* Conteneur de 1400 px sur tout le site (Astra : site-content-width = 1400) */
.entry-content .bdp-reassure { max-width: 1400px !important; }
.bdp-coll-head .ast-container, .site-content > .ast-container { max-width: 1400px; }
/* Pas de colonne de filtres ici : la grille prend toute la largeur du conteneur */
.ast-no-sidebar #primary, .woocommerce.ast-no-sidebar #primary { width: 100% !important; max-width: 100% !important; flex: 1 1 100% !important; margin-left: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }

/* En-tête de collection aligné sur la grille */
.bdp-coll-head-in { padding-left: 0 !important; padding-right: 0 !important; }
/* Sections de l'accueil dans le conteneur de 1400 px (Astra force max-width: none sur .entry-content > *) */
.entry-content .bdp-section { max-width: 1400px !important; margin-left: auto !important; margin-right: auto !important; padding-left: 0 !important; padding-right: 0 !important; }
.entry-content .bdp-reassure.bdp-reassure-3 { padding-left: 0 !important; padding-right: 0 !important; }
@media (max-width: 1440px) { .entry-content .bdp-section, .entry-content .bdp-reassure.bdp-reassure-3 { padding-left: 20px !important; padding-right: 20px !important; } }
/* Un seul fil d'Ariane sur les fiches (celui du thème au-dessus du titre est masqué) */
.single-product .entry-summary .woocommerce-breadcrumb:not(.bdp-ariane), .single-product .summary .ast-breadcrumbs-wrapper { display: none !important; }
/* Mobile : sous-collections sur une seule ligne défilante, pour garder les produits près de la ligne de flottaison */
@media (max-width: 921px) {
	.bdp-souscols { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; margin: 4px -16px 14px; padding: 0 16px 2px; scroll-padding: 0 16px; }
	.bdp-souscols::-webkit-scrollbar { display: none; }
	.bdp-souscols a { flex: 0 0 auto; white-space: nowrap; padding: 5px 12px; font-size: .9em; }
}
/* Mobile : intro de collection limitée à 3 lignes, « Lire la suite » pour déplier */
@media (max-width: 921px) {
	.bdp-coll-head .term-description.bdp-replie { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; margin-bottom: 0; }
	.bdp-coll-head .term-description.bdp-replie p { margin: 0; display: inline; }
	.bdp-lire-suite { background: none; border: 0; padding: 0; margin: 4px 0 12px; color: var(--bdp-bleu); font-weight: 600; text-decoration: underline; cursor: pointer; font-size: .95em; }
}
@media (min-width: 922px) { .bdp-lire-suite { display: none; } }
/* Barre d'annonce */
.bdp-topbar { background: var(--bdp-or); color: var(--bdp-nuit); text-align: center; font-size: 15px; font-weight: 600; line-height: 1.4; letter-spacing: .02em; padding: 9px 16px; }
.bdp-topbar-code { color: var(--bdp-creme); background: var(--bdp-nuit); font-weight: 700; letter-spacing: .1em; border-radius: 4px; padding: 2px 9px; margin: 0 3px; }
@media (max-width: 600px) { .bdp-topbar { font-size: 13.5px; padding: 8px 12px; } }
/* Pied de page */
.bdp-pied { background: var(--bdp-nuit) !important; color: #cfd2de; border-top: 3px solid var(--bdp-or); padding: 56px 0 0; font-size: 15px; }
.bdp-pied__in { display: grid; grid-template-columns: 1.6fr 1fr 1fr 1fr 1fr; gap: 36px; }
.bdp-pied__logo img { width: 230px; height: auto; display: block; margin-bottom: 16px; }
.bdp-pied__marque p { margin: 0 0 16px; line-height: 1.6; max-width: 340px; }
.bdp-pied__titre { font-family: var(--bdp-titre); font-size: 20px; color: var(--bdp-creme); margin: 0 0 14px; padding-left: 12px; border-left: 2px solid var(--bdp-or); line-height: 1.3; }
.bdp-pied ul { list-style: none; margin: 0; padding: 0; }
.bdp-pied li { margin: 0 0 8px; }
.bdp-pied a { color: var(--bdp-or-clair) !important; text-decoration: none; }
.bdp-pied a:hover { color: #fff !important; text-decoration: underline; }
.bdp-pied__reassure li { font-size: 14px; padding-left: 18px; position: relative; }
.bdp-pied__reassure li::before { content: "✦"; position: absolute; left: 0; color: var(--bdp-or); font-size: 11px; top: 3px; }
.bdp-pied__bas { border-top: 1px solid rgba(255, 255, 255, .1); margin-top: 44px; padding: 20px 0 26px; display: flex; justify-content: space-between; gap: 24px; font-size: 13px; color: #9a9db0; }
.bdp-pied__bas p { margin: 0; }
.bdp-pied__bas p:last-child { max-width: 640px; text-align: right; }
@media (max-width: 921px) { .bdp-pied__in { grid-template-columns: 1fr 1fr; } .bdp-pied__marque { grid-column: 1 / -1; } }
@media (max-width: 544px) { .bdp-pied { padding: 40px 0 70px; } .bdp-pied__in { gap: 28px; } .bdp-pied__bas { flex-direction: column; } .bdp-pied__bas p:last-child { text-align: left; } }
/* Pages légales et d'aide */
.bdp-legal { max-width: 760px; margin: 0 auto; font-size: 16px; line-height: 1.7; }
.bdp-legal h2 { font-family: var(--bdp-titre); font-size: 26px; line-height: 1.3; margin: 36px 0 12px; padding-left: 14px; border-left: 3px solid var(--bdp-or); }
.bdp-legal .bdp-legal__maj { font-size: 14px; color: var(--bdp-encre-douce); margin-top: 36px; }
.bdp-legal .bdp-legal__encadre { background: var(--bdp-papier); border: 1px solid var(--bdp-filet); padding: 18px 22px; border-radius: 8px; }
body.page:has(.bdp-legal) .entry-header { max-width: 760px; margin-left: auto; margin-right: auto; }
body.page:has(.bdp-legal) .entry-title { font-size: 40px; }
@media (max-width: 600px) { body.page:has(.bdp-legal) .entry-title { font-size: 30px; } }
/* Accueil : rangée de 4 rayons, lien « voir tout » sous une rangée */
@media (min-width: 922px) { .bdp-rayons:has(> .bdp-rayon:nth-child(4):last-child) { grid-template-columns: repeat(4, 1fr); } }
.bdp-plus { text-align: center; margin: 18px 0 0; }
.bdp-plus a { font-weight: 600; color: var(--bdp-bleu) !important; text-decoration: underline; text-underline-offset: 3px; }
/* Accueil : sections bien séparées — padding égal, une section sur deux sur bandeau crème pleine largeur, ornement or sous les titres */
.home .bdp-section { padding: 64px 20px; }
.home .bdp-section.bdp-fond { position: relative; background: #f3ede2; box-shadow: 0 0 0 100vmax #f3ede2; clip-path: inset(0 -100vmax); }
.home .bdp-section > h2::after { content: ""; display: block; width: 56px; height: 2px; margin: 14px auto 0; background: var(--bdp-or); }
.home .bdp-section > .bdp-chapo { margin-top: 14px; }
.home .bdp-section.bdp-fond .bdp-rayon, .home .bdp-section.bdp-fond .bdp-intent, .home .bdp-section.bdp-fond .bdp-faq-item { background: #fff; }
@media (max-width: 600px) { .home .bdp-section { padding: 44px 16px; } }
/* Cartes d'intention : bleu nuit, titres plus grands, texte contrasté, bouton or */
.home .bdp-intents { gap: 20px; }
.home .bdp-section .bdp-intent, .home .bdp-section.bdp-fond .bdp-intent { background: var(--bdp-nuit); border: 0; border-top: 4px solid var(--bdp-or); border-radius: 12px; padding: 26px 24px 22px; gap: 10px; color: var(--bdp-creme) !important; }
.home .bdp-intent:hover { box-shadow: 0 10px 26px rgba(29, 36, 64, .3); transform: none; }
.home .bdp-intent small { color: var(--bdp-or-clair); font-size: 13px; letter-spacing: .1em; }
.home .bdp-intent strong { color: #fff; font-size: 30px; font-weight: 600; line-height: 1.1; }
.home .bdp-intent span { color: #dfe2ec; font-size: 16.5px; line-height: 1.55; }
.home .bdp-intent em { margin-top: 8px; align-self: flex-start; color: var(--bdp-nuit); background: var(--bdp-or-clair); border-radius: 999px; padding: 9px 18px; font-size: 15px; }
.home .bdp-intent:hover em { background: #fff; }
@media (max-width: 921px) { .home .bdp-intent strong { font-size: 25px; } .home .bdp-intent { padding: 20px 18px; } }
/* Zoom de l'image au survol (grilles produits et cartes de rayons) : l'image grossit DANS son cadre, la carte ne bouge pas (clic fiable) */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link, .bdp-rayon-img { display: block; overflow: hidden; line-height: 0; }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap img { display: block; margin: 0 !important; }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link { margin-bottom: .8em; }
.bdp-rayon-img { display: block; }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap > a.woocommerce-LoopProduct-link { border-radius: 6px; }
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap img, .bdp-rayon img { transition: transform .45s ease; transform-origin: center; }
@media (hover: hover) {
	.woocommerce ul.products li.product:hover .astra-shop-thumbnail-wrap img, .bdp-rayon:hover img { transform: scale(1.08); }
}
