/* Grenat — chic bruxellois. Mobile d'abord. Couleurs et règles : charte.json */
:root{
  --g-bordeaux:#5B1A2A;--g-bordeaux-fonce:#43121F;--g-bordeaux-vif:#7E2B3D;
  --g-creme:#F7F1E8;--g-creme-profonde:#EDE3D3;--g-ivoire:#FFFCF7;
  --g-or:#B08A4E;--g-or-clair:#C9A468;--g-or-texte:#755A2E;
  --g-encre:#2B2023;--g-taupe:#6A5B5D;--g-bordure:#E0D3C1;--g-succes:#2F6B4F;--g-alerte:#A3302E;
  --g-titres:'Cormorant Garamond',Garamond,'Times New Roman',serif;
  --g-texte:'Jost',Futura,'Helvetica Neue',Arial,sans-serif;
  --g-gouttiere:16px;--g-largeur:1240px;--g-ombre:0 10px 30px rgba(67,18,31,.10);
  --global-palette1:#5B1A2A;--global-palette2:#43121F;--global-palette3:#2B2023;--global-palette4:#2B2023;--global-palette5:#6A5B5D;--global-palette6:#6A5B5D;
  --global-palette7:#EDE3D3;--global-palette8:#F7F1E8;--global-palette9:#FFFCF7;--global-palette9rgb:255,252,247;
  --global-body-font-family:var(--g-texte);--global-heading-font-family:var(--g-titres);
}
@media (min-width:768px){:root{--g-gouttiere:32px}}

/* ---------- Base ---------- */
html{scroll-behavior:smooth}
body.grenat,body.grenat .site,body.grenat #wrapper{background:var(--g-creme)!important;color:var(--g-encre)!important;font-family:var(--g-texte)!important;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
@media (min-width:1025px){body.grenat{font-size:17px}}
body.grenat h1,body.grenat h2,body.grenat h3,body.grenat h4,body.grenat .entry-title,body.grenat .page-title{font-family:var(--g-titres)!important;color:var(--g-bordeaux);font-weight:600;letter-spacing:.005em}
body.grenat h1,body.grenat .entry-title,body.grenat .page-title{font-size:clamp(2.1rem,1.4rem + 2.6vw,3.25rem);line-height:1.08;margin:0 0 .5em}
body.grenat h2{font-size:clamp(1.7rem,1.3rem + 1.4vw,2.35rem);line-height:1.15;margin:1.6em 0 .5em}
body.grenat h3{font-size:clamp(1.3rem,1.15rem + .6vw,1.55rem);line-height:1.25;margin:1.4em 0 .4em;color:var(--g-encre)}
body.grenat a{color:var(--g-bordeaux-vif);text-decoration-color:var(--g-or);text-underline-offset:4px;text-decoration-thickness:1px}
body.grenat a:hover{color:var(--g-bordeaux)}
body.grenat :focus-visible{outline:2px solid var(--g-bordeaux);outline-offset:2px}
body.grenat ::selection{background:var(--g-bordeaux);color:var(--g-creme)}
.g-conteneur{max-width:var(--g-largeur);margin-inline:auto;padding-inline:var(--g-gouttiere);box-sizing:border-box;width:100%}
.g-etroit{max-width:820px}
.g-centre{text-align:center}
.g-petit{font-size:.9rem;color:var(--g-taupe)}
.g-surtitre{font-family:var(--g-texte);font-size:.78rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--g-or-texte);margin:0 0 .8rem}
.g-surtitre a{color:inherit;text-decoration:none}
.g-icone{flex:none}
img{max-width:100%;height:auto}

/* Boutons */
.g-bouton,body.grenat .button,body.grenat button.button,body.grenat a.button,body.grenat input[type=submit],body.grenat .wp-element-button,body.grenat .single_add_to_cart_button,body.grenat #place_order,body.grenat .checkout-button,.grenat-bouton{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:50px;padding:.85em 1.6em;border:1px solid var(--g-bordeaux)!important;border-radius:2px!important;
  background:var(--g-bordeaux)!important;color:var(--g-creme)!important;font-family:var(--g-texte)!important;font-weight:500!important;font-size:.92rem!important;letter-spacing:.08em;text-transform:uppercase;text-decoration:none!important;line-height:1.2;box-shadow:none!important;transition:background .2s,box-shadow .2s;cursor:pointer}
.g-bouton:hover,body.grenat .button:hover,body.grenat .single_add_to_cart_button:hover,body.grenat #place_order:hover,.grenat-bouton:hover{background:var(--g-bordeaux-fonce)!important;color:var(--g-creme)!important;box-shadow:inset 0 -2px 0 var(--g-or)!important}
.g-bouton--secondaire{background:transparent!important;color:var(--g-bordeaux)!important}
.g-bouton--secondaire:hover{background:var(--g-creme-profonde)!important;color:var(--g-bordeaux)!important}
.g-bouton--clair{background:var(--g-creme)!important;color:var(--g-bordeaux)!important;border-color:var(--g-creme)!important}
.g-bouton--clair:hover{background:var(--g-ivoire)!important;color:var(--g-bordeaux)!important}
.g-lien-fleche{font-weight:500;text-decoration:underline}
.grenat-cta{margin:2rem 0}

/* ---------- Annonce, en-tête ---------- */
.g-annonce{background:var(--g-bordeaux-fonce);color:var(--g-creme);text-align:center;font-size:.78rem;letter-spacing:.06em;padding:.55rem var(--g-gouttiere)}
.g-annonce p{margin:0}
.g-entete{background:var(--g-ivoire);border-bottom:1px solid var(--g-bordure);position:sticky;top:0;z-index:50}
.g-entete__barre{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem;min-height:64px}
.g-logo{justify-self:center;display:block;line-height:0}
.g-logo img{width:150px;height:auto}
.g-bouton-icone{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;background:none;color:var(--g-bordeaux);padding:0;cursor:pointer;position:relative;border-radius:2px}
.g-bouton-icone:hover{background:var(--g-creme)}
.g-outils{display:flex;align-items:center;justify-content:flex-end;gap:0}
.g-outils .g-bouton-icone[href*="compte"],.g-outils .g-bouton-icone[href*="account"]{display:none}
.g-panier__nombre{position:absolute;top:5px;right:3px;min-width:18px;height:18px;border-radius:9px;background:var(--g-bordeaux);color:var(--g-creme);font-size:.68rem;font-weight:500;display:flex;align-items:center;justify-content:center;padding:0 4px}
.g-panier__nombre[hidden]{display:none}
.g-recherche{display:none}
.g-recherche--mobile{display:flex;padding:.5rem var(--g-gouttiere) .8rem;gap:0}
.g-recherche--mobile[hidden]{display:none}
.g-recherche input[type=search]{flex:1;min-width:0;height:46px;border:1px solid var(--g-bordure);border-right:0;border-radius:2px 0 0 2px;background:var(--g-ivoire);padding:0 1rem;font:inherit;font-size:.95rem;color:var(--g-encre)}
.g-recherche input[type=search]::placeholder{color:var(--g-taupe)}
.g-recherche__bouton{width:50px;height:46px;border:1px solid var(--g-bordeaux);background:var(--g-bordeaux);color:var(--g-creme);display:flex;align-items:center;justify-content:center;border-radius:0 2px 2px 0;cursor:pointer}
.g-burger{justify-self:start}

/* Tiroir (mobile) */
.g-tiroir{position:fixed;inset:0 auto 0 0;width:min(88vw,380px);background:var(--g-ivoire);z-index:80;transform:translateX(-102%);transition:transform .28s ease;overflow-y:auto;box-shadow:var(--g-ombre)}
.g-tiroir.est-ouvert{transform:none}
.g-tiroir__tete{display:flex;align-items:center;justify-content:space-between;padding:.8rem var(--g-gouttiere);border-bottom:1px solid var(--g-bordure)}
.g-tiroir__tete img{width:140px;height:auto}
.g-voile{position:fixed;inset:0;background:rgba(43,32,35,.45);z-index:70}
.g-voile[hidden]{display:none}
body.g-tiroir-ouvert{overflow:hidden}
.g-nav__liste{list-style:none;margin:0;padding:0}
.g-nav__item{border-bottom:1px solid var(--g-bordure)}
.g-nav__lien{display:flex;width:100%;align-items:center;justify-content:space-between;padding:1rem 0;background:none;border:0;font-family:var(--g-texte);font-size:.9rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--g-encre)!important;text-decoration:none!important;cursor:pointer;text-align:left}
.g-nav__item--mega>.g-nav__lien::after{content:'';width:8px;height:8px;border-right:1.5px solid var(--g-bordeaux);border-bottom:1.5px solid var(--g-bordeaux);transform:rotate(45deg);margin:-4px 4px 0 0;transition:transform .2s}
.g-nav__item--mega.est-ouvert>.g-nav__lien::after{transform:rotate(225deg);margin-top:4px}
.g-mega{display:none;padding:0 0 1rem}
.g-nav__item--mega.est-ouvert .g-mega{display:block}
.g-mega__titre{font-size:.72rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--g-or-texte);margin:1rem 0 .4rem}
.g-mega ul{list-style:none;margin:0;padding:0}
.g-mega li a{display:block;padding:.38rem 0;color:var(--g-encre);text-decoration:none;font-size:.98rem}
.g-mega li a:hover{color:var(--g-bordeaux)}
.g-mega__marque{font-weight:500}
.g-mega__gammes{padding-left:.9rem!important;border-left:1px solid var(--g-bordure);margin:.1rem 0 .4rem!important}
.g-mega__gammes a{font-size:.92rem!important;color:var(--g-taupe)!important}

/* Réassurance */
.g-bandeau-reassurance{background:var(--g-creme-profonde);border-bottom:1px solid var(--g-bordure)}
.g-reassurance{list-style:none;margin:0;padding:.7rem 0;display:grid;grid-template-columns:1fr 1fr;gap:.6rem 1rem}
.g-reassurance li{display:flex;align-items:center;gap:.55rem;font-size:.8rem;line-height:1.3;color:var(--g-encre)}
.g-reassurance .g-icone{color:var(--g-bordeaux);width:20px;height:20px}

@media (min-width:1025px){
  .g-entete__barre{grid-template-columns:auto minmax(280px,520px) auto;gap:2rem;min-height:92px}
  .g-burger,.g-outils__loupe,.g-tiroir__tete,.g-voile,.g-recherche--mobile{display:none!important}
  .g-logo{justify-self:start}.g-logo img{width:220px}
  .g-recherche{display:flex;justify-self:center;width:100%}
  .g-outils .g-bouton-icone[href*="compte"],.g-outils .g-bouton-icone[href*="account"]{display:inline-flex}
  .g-tiroir{position:static;transform:none;width:auto;background:transparent;box-shadow:none;overflow:visible;border-top:1px solid var(--g-bordure)}
  .g-nav__liste{display:flex;justify-content:center;gap:2.4rem}
  .g-nav__item{border:0;position:static}
  .g-nav__lien{padding:.95rem 0;font-size:.78rem;width:auto;gap:.6rem;border-bottom:1px solid transparent}
  .g-nav__lien:hover{border-bottom-color:var(--g-or)}
  .g-nav__item--mega>.g-nav__lien::after{width:6px;height:6px}
  .g-mega{position:absolute;left:0;right:0;top:100%;background:var(--g-ivoire);border-top:1px solid var(--g-bordure);border-bottom:1px solid var(--g-bordure);box-shadow:var(--g-ombre);padding:2rem 0 2.4rem}
  .g-nav__item--mega:hover .g-mega,.g-nav__item--mega:focus-within .g-mega{display:block}
  .g-mega__grille{max-width:var(--g-largeur);margin:0 auto;padding:0 var(--g-gouttiere);display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:2.5rem}
  .g-mega__colonne--large>ul{columns:2;column-gap:2rem}
  .g-mega__colonne--large>ul>li{break-inside:avoid}
  .g-reassurance{display:flex;justify-content:space-between;padding:.75rem 0}
  .g-reassurance li{font-size:.82rem}
}
@media (min-width:768px) and (max-width:1024px){.g-reassurance{grid-template-columns:repeat(4,1fr)}}

/* ---------- Fil d'Ariane ---------- */
.g-ariane{padding-top:1.1rem;padding-bottom:.3rem;font-size:.8rem}
.g-ariane ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.3rem .5rem;color:var(--g-taupe)}
.g-ariane li+li::before{content:'';display:inline-block;width:5px;height:5px;background:var(--g-or);transform:rotate(45deg);margin:0 .55rem 2px 0}
.g-ariane a{color:var(--g-taupe);text-decoration:none}
.g-ariane a:hover{color:var(--g-bordeaux);text-decoration:underline}

/* ---------- Mise en page Kadence ---------- */
body.grenat .content-bg,body.grenat .site-main .content-bg,body.grenat .entry.content-bg,body.grenat .single-entry,body.grenat .loop-entry{background:transparent!important;box-shadow:none!important}
body.grenat .content-container.site-container,body.grenat .site-container{max-width:var(--g-largeur);padding-inline:var(--g-gouttiere)}
body.grenat #primary{margin-top:0;margin-bottom:0}
body.grenat .content-area{margin-top:1.2rem;margin-bottom:3rem}
body.grenat .entry-content-wrap{padding:0!important}
body.grenat .entry-hero-container-inner,body.grenat .entry-hero{background:transparent!important}
body.grenat .site-footer,body.grenat .site-header{display:none}
body.grenat .entry-header{margin-bottom:1rem}
body.grenat.page .entry-content{max-width:760px;margin-inline:auto}
body.grenat.page .entry-header{max-width:760px;margin-inline:auto;text-align:left}
body.grenat.woocommerce-cart .entry-content,body.grenat.woocommerce-checkout .entry-content,body.grenat.woocommerce-account .entry-content{max-width:none}
body.grenat.woocommerce-cart .entry-header,body.grenat.woocommerce-checkout .entry-header,body.grenat.woocommerce-account .entry-header{max-width:none}
body.grenat.g-page--categorie .entry-content{max-width:none}
body.grenat.g-page--categorie .entry-content>*:not(.grenat-grille):not(.grenat-banniere){max-width:760px;margin-inline:auto}
body.grenat.g-page--categorie .entry-content>.grenat-banniere{max-width:1100px;margin-inline:auto}

/* Contenu éditorial */
.entry-content p,.entry-content li{color:var(--g-encre)}
.entry-content ul,.entry-content ol{padding-left:1.2rem}
.entry-content ul li::marker{color:var(--g-or)}
.entry-content strong{font-weight:500;color:var(--g-encre)}
.g-banniere,.grenat-banniere{margin:0 0 2rem;line-height:0}
.g-banniere img,.grenat-banniere img{width:100%;height:auto;aspect-ratio:16/8;object-fit:cover;border-radius:2px}
body.grenat.g-page--categorie .grenat-banniere img{aspect-ratio:16/6;max-height:340px;object-position:50% 30%}
.grenat-encart,.g-encart{background:var(--g-creme-profonde);border-left:3px solid var(--g-or);padding:1.1rem 1.3rem;margin:1.6rem 0;border-radius:0 2px 2px 0}
.grenat-encart p:last-child,.g-encart p:last-child{margin-bottom:0}
.grenat-tableau{overflow-x:auto;margin:1.5rem 0;border:1px solid var(--g-bordure);border-radius:2px;background:var(--g-ivoire);-webkit-overflow-scrolling:touch}
.grenat-tableau table{width:100%;border-collapse:collapse;font-size:.92rem;margin:0;min-width:520px}
.grenat-tableau th{background:var(--g-bordeaux);color:var(--g-creme);font-weight:500;text-align:left;padding:.7rem .9rem;font-size:.8rem;letter-spacing:.06em}
.grenat-tableau td{padding:.7rem .9rem;border-top:1px solid var(--g-bordure);vertical-align:top}
.grenat-tableau tr:nth-child(even) td{background:rgba(237,227,211,.35)}
.grenat-tableau th a{color:var(--g-creme)}

/* ---------- Accueil ---------- */
.g-accueil{background:var(--g-creme)}
.g-heros{display:grid;background:var(--g-ivoire)}
.g-heros__image{line-height:0}
.g-heros__image img{width:100%;aspect-ratio:4/3;object-fit:cover;object-position:35% 60%}
.g-heros__texte{padding:2rem var(--g-gouttiere) 2.6rem}
.g-heros__texte h1{margin-bottom:.4em}
.g-heros__promesse{font-size:1.05rem;color:var(--g-encre);max-width:34em}
.g-heros__actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.6rem}
.g-heros__actions.g-centre{justify-content:center}
@media (min-width:1025px){
  .g-heros{grid-template-columns:1.15fr 1fr;align-items:center;min-height:min(78vh,720px)}
  .g-heros__image,.g-heros__image picture{height:100%}
  .g-heros__image img{height:100%;aspect-ratio:auto}
  .g-heros__texte{padding:4rem 5vw 4rem 4.5rem}
}
.g-section{padding-block:3.5rem}
@media (min-width:1025px){.g-section{padding-block:6.5rem}}
.g-section--creme{background:var(--g-creme-profonde)}
.g-section--bordeaux{background:var(--g-bordeaux);color:var(--g-creme)}
.g-section--bordeaux h2{color:var(--g-creme)!important;margin-top:0}
.g-section--bordeaux p{color:var(--g-creme)}
.g-section--bordeaux .g-surtitre{color:var(--g-or-clair)}
.g-section__tete{max-width:720px;margin:0 auto 2.4rem;text-align:center}
.g-section__tete h2{margin-top:0}
.g-gammes{display:grid;gap:1rem}
@media (min-width:640px){.g-gammes{grid-template-columns:1fr 1fr}}
@media (min-width:1025px){.g-gammes{grid-template-columns:repeat(3,1fr);gap:1.5rem}}
.g-gamme{display:flex;flex-direction:column;gap:.5rem;padding:1.7rem 1.6rem;background:var(--g-ivoire);border:1px solid var(--g-bordure);border-radius:4px;text-decoration:none!important;color:var(--g-encre)!important;transition:box-shadow .2s,transform .2s;position:relative}
.g-gamme::before{content:'';position:absolute;left:1.6rem;top:0;width:40px;height:2px;background:var(--g-or)}
.g-gamme:hover{box-shadow:var(--g-ombre);transform:translateY(-2px)}
.g-gamme__marque{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--g-or-texte);font-weight:500}
.g-gamme__nom{font-family:var(--g-titres);font-size:1.75rem;font-weight:600;color:var(--g-bordeaux);line-height:1.1}
.g-gamme__texte{font-size:.95rem;color:var(--g-taupe);flex:1}
.g-gamme__lien{font-size:.85rem;font-weight:500;color:var(--g-bordeaux-vif);letter-spacing:.04em}
.g-hauteurs{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
@media (min-width:1025px){.g-hauteurs{grid-template-columns:repeat(4,1fr);gap:1.5rem}}
.g-hauteur{display:block;text-decoration:none!important;color:var(--g-encre)!important}
.g-hauteur picture{display:block;overflow:hidden;border-radius:2px;line-height:0}
.g-hauteur__image{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform .5s}
.g-hauteur:hover .g-hauteur__image{transform:scale(1.03)}
.g-hauteur__nom{display:block;font-family:var(--g-titres);font-size:1.45rem;font-weight:600;color:var(--g-bordeaux);margin-top:.7rem;line-height:1.15}
.g-hauteur__detail{display:block;font-size:.82rem;color:var(--g-taupe);letter-spacing:.04em}
.g-besoins{display:grid;gap:1rem}
@media (min-width:900px){.g-besoins{grid-template-columns:repeat(3,1fr);gap:1.5rem}}
.g-besoin{display:flex;flex-direction:column;gap:.6rem;padding:1.6rem;border-top:2px solid var(--g-bordeaux);background:var(--g-ivoire);text-decoration:none!important;color:var(--g-taupe)!important;font-size:.95rem}
.g-besoin:hover{background:#fff}
.g-besoin__nom{font-family:var(--g-titres);font-size:1.55rem;font-weight:600;color:var(--g-bordeaux)}
.g-oxydant{display:grid;gap:1.5rem}
@media (min-width:900px){.g-oxydant{grid-template-columns:1fr 1.4fr;gap:4rem;align-items:start}}
.g-deux-colonnes{display:grid;gap:2rem;align-items:center}
.g-deux-colonnes__image{line-height:0}
.g-deux-colonnes__image img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:2px}
.g-deux-colonnes h2{margin-top:0}
@media (min-width:900px){.g-deux-colonnes{grid-template-columns:1fr 1fr;gap:4.5rem}.g-deux-colonnes--inverse .g-deux-colonnes__image{order:2}}
.g-guides{display:grid;gap:1.5rem}
@media (min-width:900px){.g-guides{grid-template-columns:repeat(3,1fr)}}
.g-guide{display:flex;flex-direction:column;gap:.5rem;text-decoration:none!important;color:var(--g-taupe)!important;font-size:.95rem}
.g-guide picture{line-height:0;overflow:hidden;border-radius:2px}
.g-guide img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .5s}
.g-guide:hover img{transform:scale(1.03)}
.g-guide__nom{font-family:var(--g-titres);font-size:1.45rem;font-weight:600;color:var(--g-bordeaux);margin-top:.5rem;line-height:1.15}
.g-final{text-align:center;max-width:760px}
.g-final h2{margin-top:.6rem}

/* Accordéons */
.g-accordeon{border-top:1px solid var(--g-bordure);background:transparent}
.g-accordeon:last-of-type{border-bottom:1px solid var(--g-bordure)}
.g-accordeon summary{list-style:none;cursor:pointer;padding:1.05rem 2rem 1.05rem 0;position:relative;font-weight:500;color:var(--g-encre);font-size:1rem}
.g-accordeon summary::-webkit-details-marker{display:none}
.g-accordeon summary::after{content:'';position:absolute;right:.3rem;top:50%;width:9px;height:9px;border-right:1.5px solid var(--g-bordeaux);border-bottom:1.5px solid var(--g-bordeaux);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.g-accordeon[open] summary::after{transform:translateY(-30%) rotate(225deg)}
.g-accordeon__corps{padding:0 0 1.2rem;color:var(--g-taupe)}
.g-accordeon__corps p,.g-accordeon__corps li{color:var(--g-encre);font-size:.95rem}

/* ---------- Catalogue ---------- */
body.grenat .woocommerce-products-header{text-align:left;margin-bottom:1rem}
body.grenat .woocommerce-products-header__title,body.grenat .page-title{margin-bottom:.3em}
.g-chapeau{max-width:760px;font-size:1.05rem;color:var(--g-encre)}
.g-chapeau p{margin:0 0 1rem}
.g-filtres{display:grid;gap:.9rem;margin:1.2rem 0 1.6rem;padding:1.1rem 0;border-top:1px solid var(--g-bordure);border-bottom:1px solid var(--g-bordure)}
.g-filtres__groupe{display:grid;gap:.45rem}
.g-filtres__titre{margin:0;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--g-or-texte)}
.g-filtres ul{list-style:none;margin:0;padding:0;display:flex;gap:.45rem;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:2px}
.g-filtres ul::-webkit-scrollbar{display:none}
.g-puce{display:inline-flex;align-items:center;white-space:nowrap;min-height:38px;padding:.35rem 1rem;border:1px solid var(--g-bordure);border-radius:999px;background:var(--g-ivoire);color:var(--g-encre)!important;text-decoration:none!important;font-size:.86rem}
.g-puce:hover{border-color:var(--g-bordeaux)}
.g-puce--active{background:var(--g-bordeaux);border-color:var(--g-bordeaux);color:var(--g-creme)!important}
.g-filtres__effacer{margin:0;font-size:.85rem}
@media (min-width:1025px){.g-filtres{grid-template-columns:auto 1fr;align-items:center;column-gap:3rem}.g-filtres__groupe{grid-template-columns:120px 1fr;align-items:center}.g-filtres__effacer{grid-column:1/-1}.g-filtres ul{flex-wrap:wrap;overflow:visible}}
body.grenat .woocommerce-result-count{font-size:.85rem;color:var(--g-taupe);margin:.6rem 0}
body.grenat .woocommerce-ordering select{border:1px solid var(--g-bordure);background:var(--g-ivoire);border-radius:2px;min-height:42px;font-family:var(--g-texte);color:var(--g-encre)}
body.grenat ul.products{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.6rem .9rem;margin:0 0 2rem!important;padding:0}
@media (min-width:768px){body.grenat ul.products{grid-template-columns:repeat(3,minmax(0,1fr));gap:2.2rem 1.4rem}}
@media (min-width:1100px){body.grenat ul.products{grid-template-columns:repeat(4,minmax(0,1fr))}}
body.grenat ul.products::before,body.grenat ul.products::after{display:none!important}
body.grenat ul.products li.product{width:auto!important;margin:0!important;float:none!important;display:flex;flex-direction:column;background:var(--g-ivoire);border:1px solid var(--g-bordure);border-radius:4px;overflow:hidden;transition:box-shadow .2s;text-align:left}
body.grenat ul.products li.product:hover{box-shadow:var(--g-ombre)}
body.grenat ul.products li.product .woocommerce-loop-product__link{display:flex;flex-direction:column;flex:1;text-decoration:none!important;color:inherit}
body.grenat ul.products li.product img{aspect-ratio:1/1;object-fit:contain;background:#fff;margin:0!important;width:100%;padding:.6rem;box-sizing:border-box}
body.grenat ul.products li.product .product-details,body.grenat ul.products li.product .entry-content-wrap{padding:0!important}
.g-carte__gamme{margin:.85rem .9rem 0;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--g-or-texte);font-weight:500}
body.grenat ul.products li.product .woocommerce-loop-product__title{font-family:var(--g-titres)!important;font-size:1.12rem!important;font-weight:600;color:var(--g-bordeaux)!important;line-height:1.2;padding:.3rem .9rem 0!important;margin:0!important}
.g-carte__nuance{display:flex;align-items:center;gap:.5rem;margin:.45rem .9rem 0;font-size:.82rem;color:var(--g-taupe);line-height:1.3}
body.grenat ul.products li.product .price{display:block;padding:.5rem .9rem 0;margin:auto 0 0!important;font-family:var(--g-texte);font-weight:500;font-size:1.05rem!important;color:var(--g-encre)!important}
body.grenat ul.products li.product .price .exoneration-tva{display:block;font-weight:400;font-size:.66rem;color:var(--g-taupe);letter-spacing:.01em;margin-top:.15rem}
body.grenat ul.products li.product .button,body.grenat ul.products li.product .added_to_cart{margin:.8rem .9rem .9rem!important;min-height:42px;padding:.6em .8em;font-size:.74rem!important;letter-spacing:.06em}
body.grenat ul.products li.product .added_to_cart{background:transparent!important;color:var(--g-bordeaux)!important;border:0!important;margin-top:0!important;min-height:auto;text-transform:none;letter-spacing:0;font-size:.85rem!important}
body.grenat ul.products li.product .product-action-wrap{padding:0;margin-top:auto}
@media (max-width:480px){body.grenat ul.products li.product .woocommerce-loop-product__title{font-size:1.02rem!important}.g-carte__nuance span{font-size:.78rem}}
.g-pastille{display:inline-block;border-radius:50%;flex:none;box-shadow:0 0 0 2px var(--g-ivoire),0 2px 6px rgba(43,32,35,.18);vertical-align:middle;object-fit:cover}
.g-pastille--disque{background:radial-gradient(circle at 35% 30%,rgba(255,255,255,.45),transparent 45%),var(--g-teinte)}
.g-texte-categorie{max-width:760px;margin:3rem auto 0;padding-top:2rem;border-top:1px solid var(--g-bordure)}
.g-texte-categorie h2:first-child{margin-top:0}
body.grenat .woocommerce-pagination ul{border:0!important;display:flex;justify-content:center;gap:.4rem}
body.grenat .woocommerce-pagination ul li{border:0!important}
body.grenat .woocommerce-pagination ul li a,body.grenat .woocommerce-pagination ul li span{min-width:42px;height:42px;display:flex;align-items:center;justify-content:center;border:1px solid var(--g-bordure)!important;border-radius:2px;background:var(--g-ivoire);color:var(--g-encre)}
body.grenat .woocommerce-pagination ul li span.current{background:var(--g-bordeaux);color:var(--g-creme);border-color:var(--g-bordeaux)!important}
.g-aucun{padding:2rem;background:var(--g-ivoire);border:1px solid var(--g-bordure);border-radius:4px;max-width:760px}
.grenat-grille{margin:2rem 0 2.5rem}

/* ---------- Fiche produit ---------- */
body.grenat.single-product div.product{display:grid;gap:1.5rem;margin-top:.5rem}
@media (min-width:900px){body.grenat.single-product div.product{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem 4rem;align-items:start}}
body.grenat.single-product div.product .woocommerce-product-gallery{width:auto!important;float:none!important;margin:0!important;background:#fff;border:1px solid var(--g-bordure);border-radius:4px;padding:1rem}
body.grenat.single-product div.product .summary{width:auto!important;float:none!important;margin:0!important}
@media (min-width:900px){body.grenat.single-product div.product .summary{position:sticky;top:120px}}
body.grenat.single-product .product_title{font-size:clamp(2rem,1.5rem + 1.8vw,2.85rem)!important;margin:0 0 .4rem!important}
.g-nuance{display:flex;align-items:center;gap:1rem;margin:.6rem 0 1.2rem;padding:.9rem 1rem;background:var(--g-ivoire);border:1px solid var(--g-bordure);border-radius:4px}
.g-nuance__libelle{margin:0;font-family:var(--g-titres);font-size:1.35rem;font-weight:600;color:var(--g-encre);line-height:1.2}
.g-nuance__note{margin:.15rem 0 0;font-size:.8rem;color:var(--g-taupe)}
body.grenat.single-product .summary .price{font-family:var(--g-texte)!important;font-size:1.9rem!important;font-weight:500;color:var(--g-encre)!important;margin:0 0 .4rem}
body.grenat.single-product .summary .price .exoneration-tva{display:block;font-size:.75rem;font-weight:400;color:var(--g-taupe);margin-top:.2rem}
body.grenat.single-product .woocommerce-product-details__short-description{color:var(--g-encre);margin:1rem 0}
body.grenat.single-product .stock{font-size:.9rem;font-weight:500;color:var(--g-succes)!important;margin:.6rem 0}
body.grenat.single-product .stock.out-of-stock{color:var(--g-alerte)!important}
body.grenat.single-product form.cart{display:flex;flex-wrap:wrap;gap:.7rem;margin:1rem 0 1.2rem!important;align-items:stretch}
body.grenat.single-product form.cart .quantity{margin:0!important}
body.grenat.single-product form.cart .quantity input.qty{height:50px;width:4.5rem;border:1px solid var(--g-bordure);border-radius:2px;background:var(--g-ivoire);font-size:1rem;text-align:center;color:var(--g-encre)}
body.grenat.single-product form.cart .single_add_to_cart_button{flex:1;min-width:200px}
.g-encart__titre{font-weight:500;color:var(--g-bordeaux);letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;margin:0 0 .4rem}
.g-encart--oxydant p{font-size:.93rem;margin:0 0 .5rem}
.g-encart__detail{color:var(--g-taupe)!important}
.g-mini-reassurance{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;gap:.5rem}
.g-mini-reassurance li{display:flex;align-items:center;gap:.6rem;font-size:.86rem;color:var(--g-encre)}
.g-mini-reassurance .g-icone{color:var(--g-bordeaux);width:20px;height:20px}
.g-fiche-texte{grid-column:1/-1;display:grid;gap:2rem;margin-top:2.5rem;padding-top:2.5rem;border-top:1px solid var(--g-bordure)}
@media (min-width:900px){.g-fiche-texte{grid-template-columns:1.25fr 1fr;gap:4rem}}
.g-titre-section{margin-top:0!important}
.g-fiche-texte__description h2:not(.g-titre-section){font-size:1.45rem;margin-top:1.6em}
.g-voisines{grid-column:1/-1;margin-top:3rem}
body.grenat.single-product .fabrique-garantie,body.grenat .fabrique-garantie{grid-column:1/-1;font-size:.85rem;color:var(--g-taupe);background:var(--g-ivoire);border:1px solid var(--g-bordure);border-radius:4px;padding:1rem 1.2rem}
body.grenat.single-product .woocommerce-tabs,body.grenat.single-product .related,body.grenat.single-product .product_meta{display:none}

/* ---------- Panier, commande, compte ---------- */
body.grenat .woocommerce table.shop_table{border:1px solid var(--g-bordure)!important;border-radius:4px;background:var(--g-ivoire);border-collapse:separate}
body.grenat .woocommerce table.shop_table th{font-family:var(--g-texte);font-weight:500;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--g-taupe)}
body.grenat .woocommerce table.shop_table td{border-top:1px solid var(--g-bordure)!important}
body.grenat .cart_totals h2,body.grenat #order_review_heading,body.grenat .woocommerce-billing-fields h3,body.grenat .woocommerce-additional-fields h3{font-size:1.6rem;margin-top:0}
body.grenat .woocommerce form .form-row input.input-text,body.grenat .woocommerce form .form-row textarea,body.grenat .woocommerce form .form-row select,body.grenat .select2-container .select2-selection{border:1px solid var(--g-bordure)!important;border-radius:2px!important;background:var(--g-ivoire)!important;min-height:48px;font-family:var(--g-texte);color:var(--g-encre)}
body.grenat .woocommerce form .form-row label{font-size:.88rem;color:var(--g-encre)}
body.grenat #payment{background:var(--g-ivoire)!important;border:1px solid var(--g-bordure);border-radius:4px}
body.grenat .woocommerce-info,body.grenat .woocommerce-message,body.grenat .woocommerce-error,body.grenat .woocommerce-notice{background:var(--g-ivoire)!important;border:1px solid var(--g-bordure)!important;border-left:3px solid var(--g-or)!important;color:var(--g-encre)!important;border-radius:2px}
body.grenat .woocommerce-error{border-left-color:var(--g-alerte)!important}
body.grenat .woocommerce-message::before,body.grenat .woocommerce-info::before{color:var(--g-bordeaux)!important}
.g-encart--panier{margin-top:0}
.woocommerce-cart .g-reassurance{margin-top:2rem;border-top:1px solid var(--g-bordure);padding-top:1.2rem}
body.grenat .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;border:1px solid var(--g-bordure);border-radius:4px;background:var(--g-ivoire)}
body.grenat .woocommerce-MyAccount-navigation li a{display:block;padding:.75rem 1rem;border-bottom:1px solid var(--g-bordure);text-decoration:none;color:var(--g-encre)}
body.grenat .woocommerce-MyAccount-navigation li.is-active a{color:var(--g-bordeaux);font-weight:500;box-shadow:inset 3px 0 0 var(--g-bordeaux)}
body.grenat .fabrique-relais,body.grenat #fabrique-picker{background:var(--g-ivoire)}

/* ---------- Pied de page ---------- */
.g-pied{background:var(--g-bordeaux);color:var(--g-creme);margin-top:0}
.g-pied__haut{display:grid;gap:2rem;padding-top:3.2rem;padding-bottom:2.4rem}
@media (min-width:768px){.g-pied__haut{grid-template-columns:1fr 1fr}}
@media (min-width:1025px){.g-pied__haut{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;padding-top:4.5rem}}
.g-pied__marque img{width:200px;height:auto}
.g-pied__marque p{color:#E9DCC8;font-size:.92rem;max-width:30em;margin:1rem 0 0}
.g-pied__contact{display:flex;align-items:center;gap:.5rem}
.g-pied__contact a{color:var(--g-creme)!important}
.g-pied__titre{font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:500;color:var(--g-or-clair);margin:0 0 .9rem}
.g-pied ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.g-pied ul a{color:var(--g-creme)!important;text-decoration:none;font-size:.92rem}
.g-pied ul a:hover{text-decoration:underline;text-decoration-color:var(--g-or-clair)}
.g-pied__paiement{border-top:1px solid rgba(201,164,104,.35);padding-top:1.1rem;padding-bottom:1.1rem}
.g-pied__paiement p{margin:0;font-size:.8rem;color:#E9DCC8}
/* Liens légaux et rétractation injectés par la fabrique (wp_footer) : intégrés au pied */
body.grenat .fabrique-informations{background:var(--g-bordeaux-fonce)!important;color:#E9DCC8;padding:1.1rem var(--g-gouttiere) .4rem!important;text-align:center;font-size:.8rem;margin:0}
body.grenat .fabrique-informations a{color:var(--g-creme)!important;margin:.3rem .7rem!important;text-decoration:none;display:inline-block}
body.grenat .fabrique-informations a:hover{text-decoration:underline}
body.grenat .fabrique-informations p{margin:.6rem 0 0;color:#E9DCC8;font-size:.76rem}
body.grenat>.fabrique-retractation,body.grenat .fabrique-retractation{background:var(--g-bordeaux-fonce);margin:0;padding:.2rem var(--g-gouttiere) 1.4rem;text-align:center;font-size:.8rem}
body.grenat .fabrique-retractation a{color:var(--g-or-clair)!important}
.woocommerce-account .fabrique-retractation,.woocommerce-MyAccount-content .fabrique-retractation{background:none;padding:0;text-align:left}
.woocommerce-MyAccount-content .fabrique-retractation a{color:var(--g-bordeaux-vif)!important}

/* ---------- 404 ---------- */
.g-introuvable{text-align:center;padding-block:4rem 5rem}
.g-introuvable h1{margin-top:.4rem}
.g-recherche--page{display:flex;max-width:520px;margin:2rem auto;gap:.5rem}
.g-recherche--page input[type=search]{border-right:1px solid var(--g-bordure);border-radius:2px}
.g-liens-rapides{list-style:none;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 1.6rem}

/* Accessibilité */
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}html{scroll-behavior:auto}}

/* Corrections après revue visuelle n° 1 */
body.grenat.single-product .product-hero-section{display:none!important}
body.grenat ul.products li.product img.g-pastille{width:22px!important;height:22px!important;padding:0!important;aspect-ratio:auto!important;background:none!important;margin:0!important;box-shadow:0 0 0 2px var(--g-ivoire),0 1px 4px rgba(43,32,35,.2)}
.g-garantie .fabrique-garantie{border:0;padding:0;background:none;grid-column:auto}
.g-garantie img{max-width:100%;height:auto;border:1px solid var(--g-bordure)}
.g-garantie h2,.g-garantie h3{font-size:1.15rem!important;margin:.4rem 0 .6rem!important}
@media (max-width:640px){.g-annonce__suite{display:none}}

body.grenat .kadence-woo-toggle{display:none!important}
@media (min-width:1025px){.g-filtres__groupe{grid-template-columns:150px 1fr}}
body.grenat ul.products li.product .product-action-wrap,body.grenat ul.products li.product .button{opacity:1!important;visibility:visible!important;transform:none!important;position:static!important}
body.grenat ul.products li.product .button .kadence-svg-iconset,body.grenat ul.products li.product .button svg{display:none!important}
body.grenat ul.products li.product .button{display:flex!important;width:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:.55em .6em!important}
@media (max-width:480px){body.grenat ul.products li.product .button{font-size:.68rem!important;letter-spacing:.04em;margin:.7rem .6rem .7rem!important}.g-carte__gamme,body.grenat ul.products li.product .woocommerce-loop-product__title,.g-carte__nuance,body.grenat ul.products li.product .price{padding-left:.6rem!important;padding-right:.6rem!important;margin-left:0!important;margin-right:0!important}.g-carte__gamme,.g-carte__nuance{padding-left:.6rem}}

.g-pied__paiement{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.6rem 2rem}
.g-pied__retractation a{color:var(--g-or-clair)!important;font-size:.8rem}
body.grenat>.fabrique-retractation{display:none}
body.grenat .entry.content-bg,body.grenat .single-entry{margin-left:0!important;margin-right:0!important}
body.grenat.woocommerce-account .entry-content .fabrique-retractation,body.grenat .woocommerce-MyAccount-content .fabrique-retractation,body.grenat .woocommerce .fabrique-retractation{background:none!important;padding:0!important;margin:0 0 1.2rem!important;text-align:left!important}
body.grenat .woocommerce .fabrique-retractation a{color:var(--g-bordeaux-vif)!important}
body.grenat .woocommerce form.login,body.grenat .woocommerce form.register{border:1px solid var(--g-bordure)!important;border-radius:4px!important;background:var(--g-ivoire);padding:1.4rem!important}

button.g-puce{font-family:var(--g-texte);cursor:pointer;line-height:1.2}
.g-lien-bouton{background:none;border:0;padding:0;font:inherit;font-size:.85rem;color:var(--g-bordeaux-vif);text-decoration:underline;text-decoration-color:var(--g-or);text-underline-offset:4px;cursor:pointer}
.g-pied__securite{margin:0;font-size:.78rem;color:#E9DCC8;flex-basis:100%}

body.grenat .woocommerce a.remove,body.grenat a.remove{color:var(--g-bordeaux)!important;font-weight:400}
body.grenat .woocommerce a.remove:hover{background:var(--g-bordeaux)!important;color:var(--g-creme)!important}
body.grenat .woocommerce button.button:disabled,body.grenat .woocommerce button.button:disabled[disabled],body.grenat .woocommerce button.button.disabled{opacity:1!important;background:var(--g-creme-profonde)!important;color:var(--g-encre)!important;border-color:var(--g-bordure)!important;cursor:not-allowed}

.g-chapeau .grenat-banniere{margin:0 0 1.4rem}
.g-chapeau .grenat-banniere img{aspect-ratio:16/6;max-height:320px;object-position:50% 30%}
@media (min-width:1025px){.g-chapeau{max-width:none}.g-chapeau>p{max-width:760px}}

/* Formulaire de commande : contrastes (astérisques, widget Mondial Relay) */
body.grenat .woocommerce form .required,body.grenat abbr.required,body.grenat .required{color:var(--g-alerte)!important;text-decoration:none}
body.grenat #fabrique-picker button,body.grenat #fabrique-picker input[type=button],body.grenat #fabrique-picker input[type=submit],body.grenat #fabrique-picker a[class*="tn"],body.grenat #fabrique-picker [class*="Search"] button,body.grenat #fabrique-picker [class*="Btn"]{background:var(--g-bordeaux)!important;background-image:none!important;color:var(--g-creme)!important;border-color:var(--g-bordeaux)!important;text-shadow:none!important}
body.grenat #fabrique-picker [class*="Error"],body.grenat #fabrique-picker [class*="rror"],body.grenat #fabrique-picker [class*="Warning"],body.grenat #fabrique-picker [class*="Demo"],body.grenat #fabrique-picker [style*="red"],body.grenat #fabrique-picker font[color]{color:var(--g-alerte)!important;background:var(--g-ivoire)!important}

.grenat-grappe,.grenat-grappes{margin-top:3rem;padding-top:1.6rem;border-top:1px solid var(--g-bordure)}
.grenat-grappe ul,.grenat-grappes ul{list-style:none;padding:0;display:grid;gap:.5rem}
.grenat-grappe li a,.grenat-grappes li a{text-decoration:none;font-weight:500}
.grenat-grappe li a::before,.grenat-grappes li a::before{content:'';display:inline-block;width:6px;height:6px;background:var(--g-or);transform:rotate(45deg);margin:0 .7rem 2px 0}
.g-article-date{font-size:.8rem;color:var(--g-taupe);letter-spacing:.04em;margin:-.4rem 0 1.2rem}

.g-piliers{max-width:760px;margin:2.5rem auto 0;padding:1.4rem 1.6rem;background:var(--g-ivoire);border:1px solid var(--g-bordure);border-radius:4px}
.g-piliers ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
@media (min-width:768px){.g-piliers ul{grid-template-columns:1fr 1fr}}
.g-piliers a{font-weight:500;text-decoration:none}
