/* ==========================================================================
   Gholami Concept — feuille de styles du thème
   Conversion des maquettes (styles en ligne) en système de classes.
   Ordre : 1. jetons  2. base  3. mise en page  4. composants
           5. simulateur  6. responsive  7. préférences  8. impression
   ========================================================================== */

/* ── 1. Jetons de design ─────────────────────────────────────────────── */
:root{
  --gc-navy:#0f2447;
  --gc-navy-deep:#0d1c36;
  --gc-navy-hero:#0b1729;
  --gc-navy-card:#132c53;
  --gc-gold:#c8a45c;
  --gc-gold-light:#d9bd80;
  --gc-gold-dark:#a9812f;
  --gc-ink:#1b2536;
  --gc-text:#5a6478;
  --gc-muted:#6b7688;
  --gc-faint:#8b94a5;
  --gc-line:#e8eaef;
  --gc-line-soft:#eceef2;
  --gc-line-strong:#e0e3e9;
  --gc-bg:#ffffff;
  --gc-bg-alt:#f6f7f9;
  --gc-bg-field:#fbfbfc;
  --gc-bg-search:#f4f6f9;
  --gc-shell:1440px;
  --gc-gutter:clamp(16px,2.5vw,40px);
  --gc-font-title:'Montserrat',system-ui,-apple-system,'Segoe UI',sans-serif;
  --gc-font-body:'Barlow',system-ui,-apple-system,'Segoe UI',sans-serif;
  --gc-shadow-card:0 24px 50px rgba(15,36,71,.14);
  --gc-shadow-soft:0 20px 40px rgba(15,36,71,.12);
  --gc-ease:.25s ease;
}

/* ── 2. Base ─────────────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box}

html{-webkit-text-size-adjust:100%}

body{
  margin:0;
  background:var(--gc-bg);
  font-family:var(--gc-font-body);
  font-size:16px;
  color:var(--gc-ink);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}

a{color:var(--gc-navy);text-decoration:none;transition:color var(--gc-ease)}
a:hover,a:focus{color:var(--gc-gold)}

img{max-width:100%;height:auto;display:block}

h1,h2,h3,h4,h5,h6{font-family:var(--gc-font-title);color:var(--gc-navy);margin:0}

p{margin:0}

button{font:inherit}

::selection{background:var(--gc-gold);color:var(--gc-navy)}

:focus-visible{outline:2px solid var(--gc-gold);outline-offset:2px}

.gc-sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.gc-skip-link{
  position:absolute;left:-9999px;top:0;z-index:1000;
  background:var(--gc-gold);color:var(--gc-navy);
  font-family:var(--gc-font-title);font-weight:800;font-size:13px;
  letter-spacing:.12em;padding:14px 22px;
}
.gc-skip-link:focus{left:0}

@keyframes gc-fade{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* ── 3. Mise en page ─────────────────────────────────────────────────── */
.gc-shell{max-width:var(--gc-shell);margin:0 auto;padding-left:var(--gc-gutter);padding-right:var(--gc-gutter);width:100%}

.gc-section{padding:100px 0}
.gc-section--tight{padding:80px 0}
.gc-section--slim{padding:60px 0}
.gc-section--alt{background:var(--gc-bg-alt)}
.gc-section--navy{background:var(--gc-navy)}

.gc-grid{display:grid;gap:24px}
.gc-grid--2{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr))}
.gc-grid--cards{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.gc-grid--tiles{grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr))}
.gc-grid--wide-gap{gap:64px;align-items:center}
.gc-grid--media{grid-template-columns:1fr 1fr;gap:18px}

/* Grille « cloisonnée » : cartes séparées par un liseré, comme la maquette. */
.gc-split{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));
  gap:1px;background:var(--gc-line);border:1px solid var(--gc-line);
}
.gc-split--narrow{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}

/* ── 4. Composants ───────────────────────────────────────────────────── */

/* 4.1 Eyebrow (surtitre doré barré) */
.gc-eyebrow{
  display:flex;align-items:center;gap:14px;margin-bottom:16px;
  font-family:var(--gc-font-title);font-size:11px;font-weight:700;
  letter-spacing:.3em;color:var(--gc-gold);text-transform:uppercase;
}
.gc-eyebrow::before{content:"";width:40px;height:2px;background:var(--gc-gold);display:block;flex:none}
.gc-eyebrow--plain::before{display:none}

/* 4.2 Titres */
.gc-h1{font-weight:900;font-size:clamp(38px,5vw,68px);line-height:1.02;color:#fff}
.gc-h1--compact{font-size:clamp(34px,4.4vw,60px);line-height:1.04}
.gc-h2{font-weight:800;font-size:clamp(28px,3.2vw,42px);line-height:1.1;text-wrap:balance}
.gc-h2--lg{font-size:clamp(30px,3.4vw,46px);line-height:1.08}
.gc-h2--sm{font-size:clamp(26px,3vw,38px);line-height:1.12}
.gc-h2--light{color:#fff}
.gc-lead{font-size:17.5px;line-height:1.7;color:var(--gc-text);text-wrap:pretty}
.gc-lead--light{color:rgba(255,255,255,.78)}
.gc-lead--xl{font-size:19px;line-height:1.6}
.gc-gold{color:var(--gc-gold)}

/* 4.3 Boutons */
.gc-btn{
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--gc-font-title);font-weight:800;font-size:13px;
  letter-spacing:.14em;padding:19px 34px;border:1px solid transparent;
  cursor:pointer;text-align:center;white-space:nowrap;
  transition:background var(--gc-ease),color var(--gc-ease),border-color var(--gc-ease);
}
.gc-btn--gold{background:var(--gc-gold);color:var(--gc-navy)}
.gc-btn--gold:hover,.gc-btn--gold:focus{background:#fff;color:var(--gc-navy)}
.gc-btn--navy{background:var(--gc-navy);color:#fff}
.gc-btn--navy:hover,.gc-btn--navy:focus{background:var(--gc-gold);color:var(--gc-navy)}
.gc-btn--ghost{border-color:rgba(255,255,255,.5);color:#fff;background:transparent}
.gc-btn--ghost:hover,.gc-btn--ghost:focus{background:#fff;color:var(--gc-navy);border-color:#fff}
.gc-btn--outline{border-color:rgba(255,255,255,.4);color:#fff;background:transparent}
.gc-btn--outline:hover,.gc-btn--outline:focus{background:var(--gc-gold);color:var(--gc-navy);border-color:var(--gc-gold)}
.gc-btn--lg{padding:20px 36px}

.gc-link-more{
  font-family:var(--gc-font-title);font-size:12px;font-weight:700;
  letter-spacing:.16em;color:var(--gc-navy);
  border-bottom:2px solid var(--gc-gold);padding-bottom:8px;white-space:nowrap;
}
.gc-link-arrow{
  font-family:var(--gc-font-title);font-size:11.5px;font-weight:700;
  letter-spacing:.16em;color:var(--gc-navy);
}
.gc-link-arrow:hover{color:var(--gc-gold)}

/* 4.4 En-tête du site */
.gc-topbar{background:var(--gc-navy-deep);color:rgba(255,255,255,.72);font-size:13px;letter-spacing:.04em}
.gc-topbar__inner{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-top:6px;padding-bottom:6px}
.gc-topbar__left{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.gc-topbar__place{display:flex;align-items:center;gap:8px}
.gc-topbar__place::before{content:"";width:6px;height:6px;background:var(--gc-gold);transform:rotate(45deg);display:block;flex:none}
.gc-topbar a{color:rgba(255,255,255,.72)}
.gc-topbar a:hover{color:var(--gc-gold)}
.gc-topbar__social{display:flex;align-items:center;gap:20px;font-family:var(--gc-font-title);font-size:11px;font-weight:600;letter-spacing:.14em}
.gc-topbar__sep{color:rgba(255,255,255,.25)}
.gc-topbar__lang{color:var(--gc-gold)}

.gc-identity{background:#fff;border-bottom:1px solid var(--gc-line-soft)}
.gc-identity__inner{padding-top:20px;padding-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.gc-logo{display:flex;align-items:center;gap:16px}
.gc-logo__mark{
  width:50px;height:50px;flex:none;display:block;
  background:linear-gradient(135deg,var(--gc-gold-light),var(--gc-gold-dark));
  transform:rotate(45deg);box-shadow:0 8px 22px rgba(169,129,47,.28);
}
.gc-logo__text{display:block}
.gc-logo__name{display:block;font-family:var(--gc-font-title);font-weight:800;font-size:23px;letter-spacing:.02em;color:var(--gc-navy);line-height:1}
.gc-logo__tag{display:block;font-family:var(--gc-font-title);font-weight:600;font-size:12.5px;letter-spacing:.38em;color:var(--gc-gold);margin-top:5px}
.gc-logo__img{max-height:60px;width:auto;max-width:230px;object-fit:contain}
/* Le logo du pied de page a son propre gabarit, indépendant de l'en-tête. */
.gc-logo--footer .gc-logo__img{max-height:56px;max-width:210px}

.gc-infos{display:flex;align-items:stretch;gap:clamp(18px,2.4vw,40px);flex-wrap:wrap}
.gc-info{display:flex;flex-direction:column;gap:3px;border-left:1px solid var(--gc-line-soft);padding-left:24px}
.gc-info__label{font-family:var(--gc-font-title);font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--gc-gold)}
.gc-info__value{font-family:var(--gc-font-title);font-size:13px;font-weight:700;color:var(--gc-navy)}
.gc-info__note{font-size:13px;color:var(--gc-muted)}

.gc-navbar{background:#fff;border-bottom:1px solid var(--gc-line-soft);position:sticky;top:0;z-index:40;box-shadow:0 10px 30px rgba(15,36,71,.05)}
.gc-navbar__inner{display:flex;align-items:center;justify-content:space-between;gap:clamp(12px,2vw,32px)}
.gc-nav{display:flex;align-items:center;gap:clamp(14px,1.8vw,34px);font-family:var(--gc-font-title);font-size:clamp(11px,.95vw,13px);font-weight:700;letter-spacing:.08em;flex:1 1 auto;min-width:0}
.gc-nav ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:clamp(14px,1.8vw,34px);flex-wrap:wrap}
.gc-nav li{position:relative}
.gc-nav a{display:block;color:var(--gc-navy);padding:22px 0;border-bottom:2px solid transparent;white-space:nowrap;text-transform:uppercase}
.gc-nav a:hover{color:var(--gc-gold)}
.gc-nav .current-menu-item>a,
.gc-nav .current_page_item>a,
.gc-nav .current-menu-ancestor>a,
.gc-nav .current_page_parent>a{border-bottom-color:var(--gc-gold)}
/* Sous-menus */
.gc-nav ul ul{
  position:absolute;top:100%;left:0;min-width:230px;background:#fff;
  border:1px solid var(--gc-line);box-shadow:var(--gc-shadow-soft);
  flex-direction:column;align-items:stretch;gap:0;padding:6px 0;
  display:none;z-index:60;
}
.gc-nav li:hover>ul,.gc-nav li:focus-within>ul{display:flex}
.gc-nav ul ul a{padding:11px 18px;border-bottom:none;white-space:normal}
.gc-nav ul ul a:hover{background:var(--gc-bg-alt)}

.gc-navbar__actions{display:flex;align-items:center;gap:8px;flex:none}
.gc-search{
  display:flex;align-items:center;gap:10px;background:var(--gc-bg-search);
  border:1px solid #e6e9ee;padding:10px 16px;width:clamp(44px,12vw,230px);
  overflow:hidden;flex:none;
}
.gc-search__icon{width:11px;height:11px;border:2px solid #98a2b3;border-radius:50%;display:block;flex:none}
.gc-search input{border:none;background:transparent;outline:none;font-family:var(--gc-font-body);font-size:14px;width:100%;color:var(--gc-navy);min-width:0}
.gc-navbar__cta{
  background:var(--gc-gold);color:var(--gc-navy);font-family:var(--gc-font-title);
  font-weight:800;font-size:13px;letter-spacing:.12em;padding:20px clamp(16px,2vw,30px);
  white-space:nowrap;flex:none;transition:background var(--gc-ease),color var(--gc-ease);
}
.gc-navbar__cta:hover,.gc-navbar__cta:focus{background:var(--gc-navy);color:#fff}

.gc-burger{
  display:none;align-items:center;justify-content:center;flex:none;
  width:46px;height:46px;background:var(--gc-navy);border:none;cursor:pointer;
}
.gc-burger span{display:block;width:20px;height:2px;background:#fff;position:relative;transition:background .2s ease}
.gc-burger span::before,.gc-burger span::after{content:"";position:absolute;left:0;width:20px;height:2px;background:#fff;transition:transform .2s ease}
.gc-burger span::before{top:-6px}
.gc-burger span::after{top:6px}
.gc-burger[aria-expanded="true"] span{background:transparent}
.gc-burger[aria-expanded="true"] span::before{transform:translateY(6px) rotate(45deg)}
.gc-burger[aria-expanded="true"] span::after{transform:translateY(-6px) rotate(-45deg)}

.gc-catbar{background:var(--gc-navy)}
.gc-catbar__inner{display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap}
.gc-catbar ul{list-style:none;margin:0;padding:0;display:flex;align-items:center;justify-content:center;gap:4px;flex-wrap:wrap}
.gc-catbar a{
  display:block;color:rgba(255,255,255,.86);font-family:var(--gc-font-title);
  font-size:12.5px;font-weight:700;letter-spacing:.12em;padding:16px 20px;
  border-bottom:3px solid transparent;white-space:nowrap;text-transform:uppercase;
  transition:color var(--gc-ease),border-color var(--gc-ease);
}
.gc-catbar a:hover,.gc-catbar a:focus{color:var(--gc-gold);border-bottom-color:var(--gc-gold)}
.gc-catbar .current-menu-item>a,
.gc-catbar .current-menu-parent>a,
.gc-catbar .current-menu-ancestor>a{color:var(--gc-gold);border-bottom-color:var(--gc-gold)}

/* Sous-menu : les catégories d'une famille se déploient au survol. */
.gc-catbar li{position:relative}
/* `menu-item-has-children` est posée par WordPress : plus fiable que `:has()`,
   que Safari et Firefox anciens ne connaissent pas. */
.gc-catbar .menu-item-has-children > a::after{
  content:"";
  display:inline-block;
  width:5px;height:5px;
  margin-left:8px;
  vertical-align:middle;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
}
.gc-catbar ul ul{
  position:absolute;top:100%;left:0;
  display:none;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  min-width:250px;
  padding:6px 0;
  background:var(--gc-navy-deep);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 24px 50px rgba(0,0,0,.35);
  z-index:70;
}
.gc-catbar li:hover > ul,
.gc-catbar li:focus-within > ul{display:flex}
.gc-catbar ul ul a{
  padding:11px 18px;
  border-bottom:none;
  white-space:normal;
  font-size:12px;
  letter-spacing:.06em;
  text-transform:none;
  color:rgba(255,255,255,.8);
}
.gc-catbar ul ul a:hover{background:rgba(255,255,255,.07);color:var(--gc-gold)}

/* 4.5 Bandeau vertical latéral (accueil) */
.gc-rail{position:absolute;right:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;z-index:5}
.gc-rail a{
  writing-mode:vertical-rl;font-family:var(--gc-font-title);font-size:11px;
  font-weight:700;letter-spacing:.24em;padding:26px 13px;
}
.gc-rail a:first-child{background:var(--gc-navy);color:#fff}
.gc-rail a:last-child{background:var(--gc-gold);color:var(--gc-navy)}
.gc-rail a:hover{opacity:.88;color:inherit}

/* 4.6 Héros */
.gc-hero{position:relative;background:var(--gc-navy-hero);overflow:hidden}
.gc-hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.4}
.gc-hero__inner{position:relative;padding-top:88px;padding-bottom:88px}
.gc-hero--home{min-height:620px;display:flex;align-items:center}
.gc-hero--home .gc-hero__bg{opacity:.55}
.gc-hero--home .gc-hero__inner{padding-top:110px;padding-bottom:110px}
.gc-hero__veil{
  position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(9,20,38,.92) 0%,rgba(9,20,38,.62) 55%,rgba(9,20,38,.35) 100%);
}
.gc-hero--flat{background:var(--gc-navy)}
.gc-hero--flat .gc-hero__inner{padding-top:72px;padding-bottom:72px}
.gc-hero__content{max-width:820px;animation:gc-fade .7s ease both}
.gc-hero__kicker{display:flex;align-items:center;gap:14px;margin-bottom:26px}
.gc-hero__kicker span:first-child{width:56px;height:2px;background:var(--gc-gold);display:block;flex:none}
.gc-hero__kicker span:last-child{font-family:var(--gc-font-title);font-size:12px;font-weight:700;letter-spacing:.34em;color:var(--gc-gold)}
.gc-hero h1{margin:20px 0 0;letter-spacing:-.01em}
.gc-hero--home h1{margin:0}
.gc-hero p{margin:22px 0 0;max-width:680px}
.gc-hero--home p{margin-top:28px;font-size:21px;line-height:1.55;color:rgba(255,255,255,.82);max-width:620px}
.gc-hero__actions{display:flex;gap:16px;margin-top:44px;flex-wrap:wrap}

.gc-breadcrumb{
  font-family:var(--gc-font-title);font-size:11.5px;font-weight:700;
  letter-spacing:.2em;color:rgba(255,255,255,.6);
  display:flex;gap:10px;align-items:center;flex-wrap:wrap;text-transform:uppercase;
}
.gc-breadcrumb a{color:rgba(255,255,255,.6)}
.gc-breadcrumb a:hover{color:var(--gc-gold)}
.gc-breadcrumb [aria-current]{color:var(--gc-gold)}

/* 4.7 Bandeau de chiffres */
.gc-stats{background:#fff;border-bottom:1px solid var(--gc-line-soft)}
.gc-stats__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr))}
.gc-stat{padding:42px 30px;border-right:1px solid var(--gc-line-soft);display:flex;flex-direction:column;gap:6px}
.gc-stat:last-child{border-right:none}
.gc-stat__value{font-family:var(--gc-font-title);font-weight:900;font-size:44px;color:var(--gc-navy);line-height:1}
.gc-stat__label{font-family:var(--gc-font-title);font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--gc-gold)}
.gc-stat__note{font-size:15px;color:var(--gc-muted)}

.gc-figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:20px;margin-top:36px}
.gc-figure{border-left:2px solid var(--gc-gold);padding-left:16px}
.gc-figure__value{font-family:var(--gc-font-title);font-weight:900;font-size:34px;color:var(--gc-navy);line-height:1}
.gc-figure__label{font-family:var(--gc-font-title);font-size:10.5px;font-weight:700;letter-spacing:.16em;color:var(--gc-faint);margin-top:8px}

/* 4.8 En-tête de section (titre + lien) */
.gc-sechead{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:48px;flex-wrap:wrap}
.gc-sechead h2{max-width:660px}

/* 4.9 Cartes univers */
.gc-univers{
  background:#fff;display:flex;flex-direction:column;overflow:hidden;
  border:1px solid var(--gc-line);
  transition:transform var(--gc-ease),box-shadow var(--gc-ease);
}
.gc-univers:hover{transform:translateY(-6px);box-shadow:var(--gc-shadow-card)}
.gc-univers__media{position:relative;display:block;height:250px;background:var(--gc-navy);overflow:hidden}
.gc-univers__media img{width:100%;height:100%;object-fit:cover;opacity:.92}
.gc-univers__tag{
  position:absolute;left:0;bottom:0;background:var(--gc-gold);color:var(--gc-navy);
  font-family:var(--gc-font-title);font-size:11px;font-weight:800;letter-spacing:.16em;padding:9px 14px;
}
.gc-univers__body{display:block;padding:26px 24px 30px}
.gc-univers__title{display:block;font-family:var(--gc-font-title);font-weight:800;font-size:19px;letter-spacing:.04em;color:var(--gc-navy)}
.gc-univers__text{display:block;margin-top:12px;font-size:15.5px;line-height:1.6;color:var(--gc-muted)}
.gc-univers__more{display:block;margin-top:20px;font-family:var(--gc-font-title);font-size:11.5px;font-weight:700;letter-spacing:.16em;color:var(--gc-gold)}

/* 4.10 Carte « numérotée » (services, gammes, atouts, familles) */
.gc-tile{background:#fff;padding:40px 34px;display:flex;flex-direction:column;gap:12px;transition:background var(--gc-ease)}
.gc-tile:hover{background:var(--gc-bg-alt)}
.gc-tile__num{font-family:var(--gc-font-title);font-weight:900;font-size:14px;color:var(--gc-gold);letter-spacing:.1em}
.gc-tile__title{font-family:var(--gc-font-title);font-weight:800;font-size:18px;color:var(--gc-navy);letter-spacing:.03em;line-height:1.3}
.gc-tile__text{font-size:15.5px;line-height:1.65;color:var(--gc-muted)}
.gc-tile__link{margin-top:8px}
.gc-tile--boxed{border:1px solid var(--gc-line);padding:30px 26px;gap:10px}
.gc-tile--boxed:hover{background:#fff}
.gc-tile--boxed .gc-tile__title{font-size:16.5px}

/* 4.11 Puces losange */
.gc-proofs{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(180px,100%),1fr));gap:16px;margin-top:32px}
.gc-proof{display:flex;align-items:center;gap:12px;background:var(--gc-bg-alt);padding:16px 18px}
.gc-proof::before{content:"";width:8px;height:8px;background:var(--gc-gold);transform:rotate(45deg);display:block;flex:none}
.gc-proof span{font-family:var(--gc-font-title);font-size:13.5px;font-weight:700;color:var(--gc-navy)}

/* 4.11 bis — Substitut de visuel
   Affiché quand aucune image n'est disponible, ou quand une image distante
   échoue au chargement. Occupe exactement la place de l'image attendue. */
.gc-ph{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  width:100%;
  height:100%;
  min-height:120px;
  padding:20px;
  text-align:center;
  background:
    repeating-linear-gradient(135deg,rgba(200,164,92,.07) 0 12px,transparent 12px 24px),
    linear-gradient(160deg,#16294a 0%,var(--gc-navy) 60%,#0b1729 100%);
  color:rgba(255,255,255,.72);
}
.gc-ph__mark{
  width:34px;height:34px;flex:none;display:block;
  background:linear-gradient(135deg,var(--gc-gold-light),var(--gc-gold-dark));
  transform:rotate(45deg);
  box-shadow:0 6px 18px rgba(169,129,47,.35);
}
.gc-ph__label{
  font-family:var(--gc-font-title);
  font-size:11.5px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:var(--gc-gold);
  line-height:1.4;
  word-break:break-word;
}
/* Sur fond clair (brochures, partenaires) le substitut reste discret. */
.gc-brochure .gc-ph,
.gc-partner .gc-ph{
  min-height:150px;
  background:
    repeating-linear-gradient(135deg,rgba(15,36,71,.05) 0 10px,transparent 10px 20px),
    var(--gc-bg-alt);
}
.gc-brochure .gc-ph__label,
.gc-partner .gc-ph__label{color:var(--gc-navy)}
.gc-partner .gc-ph{min-height:0;padding:8px;gap:8px}
.gc-partner .gc-ph__mark{width:18px;height:18px;box-shadow:none}
.gc-partner__name{
  font-family:var(--gc-font-title);font-size:12px;font-weight:700;
  letter-spacing:.1em;color:var(--gc-navy);text-align:center;
}

/* 4.12 Carte décor */
.gc-decor{
  background:#fff;border:1px solid var(--gc-line);display:flex;flex-direction:column;
  overflow:hidden;transition:transform var(--gc-ease),box-shadow var(--gc-ease);
}
.gc-decor:hover{transform:translateY(-5px);box-shadow:var(--gc-shadow-soft)}
.gc-decor__media{display:block;height:260px;overflow:hidden;background:#eef0f4}
.gc-decor__media img{width:100%;height:100%;object-fit:cover}
.gc-decor__body{display:block;padding:18px 18px 22px}
.gc-decor__family{display:block;font-family:var(--gc-font-title);font-size:10px;font-weight:700;letter-spacing:.18em;color:var(--gc-gold);text-transform:uppercase}
.gc-decor__name{display:block;margin-top:8px;font-family:var(--gc-font-title);font-size:14.5px;font-weight:700;color:var(--gc-navy);line-height:1.35}
.gc-decor__cta{display:block;margin-top:14px;font-family:var(--gc-font-title);font-size:11px;font-weight:700;letter-spacing:.14em;color:var(--gc-faint)}
/* Variante sur fond marine */
.gc-decor--dark{background:var(--gc-navy-card);border-color:rgba(255,255,255,.08)}
.gc-decor--dark:hover{transform:none;box-shadow:none;border-color:var(--gc-gold)}
.gc-decor--dark .gc-decor__media{height:230px;background:#0b1c38}
.gc-decor--dark .gc-decor__name{color:#fff}

/* 4.12 bis — Catégories d'une famille */
.gc-cats-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill,minmax(min(230px,100%),1fr));
  gap:12px;
}
.gc-cat-chip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:18px 20px;
  background:#fff;
  border:1px solid var(--gc-line);
  border-left:3px solid var(--gc-gold);
  transition:transform var(--gc-ease),box-shadow var(--gc-ease),border-color var(--gc-ease);
}
.gc-cat-chip:hover{
  transform:translateY(-3px);
  box-shadow:var(--gc-shadow-soft);
  border-left-color:var(--gc-navy);
}
.gc-cat-chip__name{
  font-family:var(--gc-font-title);
  font-size:14px;
  font-weight:700;
  color:var(--gc-navy);
  line-height:1.35;
}
.gc-cat-chip__count{
  flex:none;
  min-width:30px;
  padding:3px 9px;
  background:var(--gc-bg-alt);
  color:var(--gc-muted);
  font-family:var(--gc-font-title);
  font-size:12px;
  font-weight:700;
  text-align:center;
}
.gc-cat-chip:hover .gc-cat-chip__count{background:var(--gc-gold);color:var(--gc-navy)}
/* Sur fond alterné, les pastilles gardent leur contraste. */
.gc-section--alt .gc-cat-chip__count{background:#eef0f4}

/* Fiche produit */
.gc-product__media img,
.gc-product__media .gc-ph{
  width:100%;
  height:480px;
  object-fit:cover;
  display:block;
  border:1px solid var(--gc-line);
}

/* 4.13 Tableau de spécifications */
.gc-specs{border-top:1px solid var(--gc-line-strong)}
.gc-spec{display:flex;justify-content:space-between;gap:24px;padding:18px 0;border-bottom:1px solid var(--gc-line-strong)}
.gc-spec__k{font-family:var(--gc-font-title);font-size:12.5px;font-weight:700;letter-spacing:.1em;color:var(--gc-navy)}
.gc-spec__v{font-size:16px;color:var(--gc-text);text-align:right}

/* 4.14 Jauges */
.gc-gauges{display:flex;flex-direction:column;gap:20px}
.gc-gauge__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}
.gc-gauge__label{font-family:var(--gc-font-title);font-size:13px;font-weight:700;letter-spacing:.08em;color:#fff}
.gc-gauge__pct{font-family:var(--gc-font-title);font-size:15px;font-weight:800;color:var(--gc-gold)}
.gc-gauge__track{height:4px;background:rgba(255,255,255,.18)}
.gc-gauge__bar{height:4px;background:var(--gc-gold);transition:width .9s ease}

/* 4.15 Partenaires */
.gc-partners__title{text-align:center;font-family:var(--gc-font-title);font-size:11px;font-weight:700;letter-spacing:.3em;color:var(--gc-faint);margin-bottom:32px;text-transform:uppercase}
.gc-partners__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:24px;align-items:center}
.gc-partner{height:70px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--gc-line);padding:14px}
.gc-partner img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.7;transition:filter var(--gc-ease),opacity var(--gc-ease)}
.gc-partner:hover img{filter:none;opacity:1}

/* 4.16 Bandeau CTA */
.gc-cta-band{background:var(--gc-navy);padding:80px 0}
.gc-cta-band__inner{display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap}
.gc-cta-band h2{color:#fff;max-width:640px}
.gc-cta-band p{margin:14px 0 0;font-size:18px;color:rgba(255,255,255,.72)}
.gc-cta-band__actions{display:flex;gap:16px;flex-wrap:wrap}

/* 4.17 Encart image + badge */
.gc-figure-shot{position:relative}
.gc-figure-shot img{width:100%;height:500px;object-fit:cover;display:block}
.gc-badge{position:absolute;right:-20px;bottom:-24px;background:var(--gc-navy);color:#fff;padding:30px 34px}
.gc-badge__value{font-family:var(--gc-font-title);font-weight:900;font-size:40px;color:var(--gc-gold);line-height:1}
.gc-badge__label{font-family:var(--gc-font-title);font-size:11px;font-weight:700;letter-spacing:.2em;margin-top:8px}

/* 4.18 Filtres du catalogue */
.gc-filterbar{background:#fff;border-bottom:1px solid var(--gc-line-soft);position:sticky;top:0;z-index:30}
.gc-filterbar__inner{padding-top:18px;padding-bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.gc-chips{display:flex;gap:8px;flex-wrap:wrap}
.gc-chip{
  font-family:var(--gc-font-title);font-size:12px;font-weight:700;letter-spacing:.14em;
  padding:13px 22px;cursor:pointer;border:1px solid var(--gc-line-strong);
  background:#fff;color:var(--gc-navy);text-transform:uppercase;
  transition:background var(--gc-ease),border-color var(--gc-ease);
}
.gc-chip:hover{border-color:var(--gc-gold)}
.gc-chip.is-active,.gc-chip[aria-pressed="true"]{background:var(--gc-gold);border-color:var(--gc-gold)}
.gc-chip--sm{font-size:11.5px;letter-spacing:.12em;padding:12px 18px}
.gc-filterbar__right{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.gc-filterbar .gc-search{min-width:min(240px,100%);width:auto;flex:1 1 240px}
.gc-count{font-family:var(--gc-font-title);font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--gc-faint)}
.gc-empty{padding:70px 0;text-align:center;font-size:18px;color:var(--gc-muted)}
.gc-decor.is-hidden{display:none}

/* 4.19 Brochures */
.gc-brochures{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:18px}
.gc-brochure{display:block;border:1px solid var(--gc-line);background:var(--gc-bg-alt);transition:transform var(--gc-ease)}
.gc-brochure:hover{transform:translateY(-6px)}
.gc-brochure img{width:100%;display:block}
.gc-brochure span{display:block;padding:14px;font-family:var(--gc-font-title);font-size:11.5px;font-weight:700;letter-spacing:.12em;color:var(--gc-navy);text-align:center}

/* 4.19 bis — Lecteur de brochures (double page) */
.gc-fb-section{background:var(--gc-navy-hero);padding:40px 0 56px}

.gc-fb{
  position:relative;
  background:linear-gradient(180deg,#0e1e3a 0%,var(--gc-navy-hero) 100%);
  border:1px solid rgba(255,255,255,.08);
  padding:24px 24px 0;
  outline:none;
}
.gc-fb:focus-visible{outline:2px solid var(--gc-gold);outline-offset:3px}
.gc-fb:fullscreen{padding:20px 20px 0;display:flex;flex-direction:column;justify-content:center}
.gc-fb:fullscreen .gc-fb__stage{height:calc(100vh - 130px)}

.gc-fb__stage{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:2px;
  height:min(74vh,760px);
  min-height:340px;
  /* Reliure centrale : l'ombre au pli donne l'impression du livre ouvert. */
  background:
    radial-gradient(ellipse at center,rgba(0,0,0,.45) 0%,rgba(0,0,0,0) 62%),
    transparent;
}
.gc-fb__stage.is-single{gap:0}

.gc-fb__side{
  display:flex;
  align-items:center;
  height:100%;
  max-width:50%;
}
.gc-fb__stage.is-single .gc-fb__side{max-width:100%}
.gc-fb__side--left{justify-content:flex-end}
.gc-fb__side--right{justify-content:flex-start}

.gc-fb-page{
  display:block;
  height:100%;
  width:auto;
  max-width:100%;
  object-fit:contain;
  background:#fff;
  box-shadow:0 18px 50px rgba(0,0,0,.5);
  /* Le contenu ne doit pas pouvoir être glissé ni sélectionné. */
  -webkit-user-select:none;
  user-select:none;
  -webkit-user-drag:none;
  pointer-events:none;
}
.gc-fb__side--left .gc-fb-page{border-right:1px solid rgba(0,0,0,.18)}

/* Tourne de page : une bascule brève, sans surcharge. */
@keyframes gc-fb-next{from{opacity:.25;transform:translateX(22px)}to{opacity:1;transform:none}}
@keyframes gc-fb-prev{from{opacity:.25;transform:translateX(-22px)}to{opacity:1;transform:none}}
.gc-fb__stage.is-turn-next .gc-fb-page{animation:gc-fb-next .38s ease both}
.gc-fb__stage.is-turn-prev .gc-fb-page{animation:gc-fb-prev .38s ease both}

.gc-fb__loader{
  position:absolute;inset:0;
  display:flex;align-items:center;justify-content:center;
  text-align:center;padding:24px;
  color:rgba(255,255,255,.75);
  font-family:var(--gc-font-title);font-size:13px;
  letter-spacing:.14em;text-transform:uppercase;
}

.gc-fb__bar{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:16px 0;
  margin-top:16px;
  border-top:1px solid rgba(255,255,255,.08);
  flex-wrap:wrap;
}
.gc-fb__btn{
  display:flex;align-items:center;justify-content:center;
  width:44px;height:44px;flex:none;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.14);
  color:#fff;cursor:pointer;
  transition:background var(--gc-ease),border-color var(--gc-ease),opacity var(--gc-ease);
}
.gc-fb__btn:hover:not([disabled]){background:var(--gc-gold);border-color:var(--gc-gold);color:var(--gc-navy)}
.gc-fb__btn[disabled]{opacity:.3;cursor:default}
.gc-fb__btn svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.gc-fb__btn--play svg{fill:currentColor;stroke:none}
.gc-fb__ico-pause{display:none}
.gc-fb__btn--play.is-on{background:var(--gc-gold);border-color:var(--gc-gold);color:var(--gc-navy)}
.gc-fb__btn--play.is-on .gc-fb__ico-play{display:none}
.gc-fb__btn--play.is-on .gc-fb__ico-pause{display:block}

.gc-fb__status{
  min-width:170px;text-align:center;
  font-family:var(--gc-font-title);font-size:12px;font-weight:700;
  letter-spacing:.12em;color:rgba(255,255,255,.72);
}
.gc-fb__note{
  margin-top:24px;text-align:center;
  font-size:14.5px;color:rgba(255,255,255,.6);
  max-width:640px;margin-left:auto;margin-right:auto;
}

/* 4.19 ter — Fenêtre modale générique */
.gc-modal{
  position:fixed;inset:0;z-index:200;
  display:flex;align-items:center;justify-content:center;
  padding:20px;
  background:rgba(9,20,38,.78);
  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
  overflow-y:auto;
}
.gc-modal[hidden]{display:none}
.gc-modal__card{
  width:100%;max-width:min(640px,100%);
  background:#fff;
  box-shadow:0 40px 90px rgba(0,0,0,.45);
  max-height:calc(100vh - 40px);
  display:flex;flex-direction:column;
  animation:gc-fade .28s ease both;
}
.gc-modal__head{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:22px 26px;border-bottom:1px solid var(--gc-line);
}
.gc-modal__head h2{font-size:20px;font-weight:800}
.gc-modal__close{
  width:38px;height:38px;flex:none;
  display:flex;align-items:center;justify-content:center;
  background:var(--gc-bg-alt);border:none;cursor:pointer;color:var(--gc-navy);
  transition:background var(--gc-ease),color var(--gc-ease);
}
.gc-modal__close:hover{background:var(--gc-navy);color:#fff}
.gc-modal__close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round}
.gc-modal__body{padding:24px 26px 28px;overflow-y:auto}
.gc-modal__intro{font-size:15.5px;line-height:1.65;color:var(--gc-text);margin-bottom:20px}

/* 4.20 Formulaire */
.gc-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.gc-form input[type="text"],
.gc-form input[type="email"],
.gc-form input[type="tel"],
.gc-form input[type="search"],
.gc-form textarea{
  width:100%;border:1px solid var(--gc-line-strong);padding:16px 18px;
  font-family:var(--gc-font-body);font-size:16px;outline:none;
  color:var(--gc-navy);background:var(--gc-bg-field);
  transition:border-color var(--gc-ease);
}
.gc-form input:focus,.gc-form textarea:focus{border-color:var(--gc-gold)}
.gc-form textarea{margin-top:22px;min-height:150px;resize:vertical}
.gc-form__legend{font-family:var(--gc-font-title);font-size:11px;font-weight:700;letter-spacing:.18em;color:var(--gc-faint);margin-bottom:12px;text-transform:uppercase}
.gc-form__block{margin-top:22px}
.gc-form__submit{margin-top:22px;border:none}
.gc-form__submit[disabled]{opacity:.6;cursor:progress}
.gc-form__note{margin-top:14px;font-size:13.5px;color:var(--gc-faint)}
.gc-alert{margin-top:18px;padding:16px 18px;font-size:16px}
.gc-alert--ok{background:#f2f7f2;border-left:3px solid #4b7f52;color:#2f5636}
.gc-alert--ko{background:#fdf3f2;border-left:3px solid #a4443a;color:#7d322b}
.gc-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* 4.21 Cartes contact */
.gc-contact-cards{display:flex;flex-direction:column;gap:22px}
.gc-contact-card{border:1px solid var(--gc-line);padding:26px 28px}
.gc-contact-card__label{font-family:var(--gc-font-title);font-size:10.5px;font-weight:700;letter-spacing:.2em;color:var(--gc-gold);margin-bottom:10px;text-transform:uppercase}
.gc-contact-card__value{font-family:var(--gc-font-title);font-size:17px;font-weight:700;color:var(--gc-navy)}
.gc-contact-card__note{font-size:15.5px;color:var(--gc-muted);margin-top:6px}
.gc-map{position:relative;display:block;height:220px;background:var(--gc-navy);overflow:hidden}
.gc-map img{width:100%;height:100%;object-fit:cover;opacity:.45}
.gc-map span{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  font-family:var(--gc-font-title);font-size:12.5px;font-weight:800;letter-spacing:.18em;color:#fff;
}

/* 4.22 Newsletter + pied de page */
.gc-newsletter{background:var(--gc-gold)}
.gc-newsletter__inner{padding-top:52px;padding-bottom:52px;display:flex;align-items:center;justify-content:space-between;gap:36px;flex-wrap:wrap}
.gc-newsletter__eyebrow{font-family:var(--gc-font-title);font-size:11px;font-weight:700;letter-spacing:.3em;color:rgba(15,36,71,.65)}
.gc-newsletter h2{margin:12px 0 0;font-weight:800;font-size:32px;color:var(--gc-navy)}
.gc-newsletter form{display:flex;flex:1;min-width:min(300px,100%);max-width:640px}
.gc-newsletter input{flex:1;min-width:0;border:none;padding:20px 24px;font-family:var(--gc-font-body);font-size:16px;outline:none;color:var(--gc-navy)}
.gc-newsletter button{
  background:var(--gc-navy);color:#fff;border:none;font-family:var(--gc-font-title);
  font-weight:800;font-size:13px;letter-spacing:.14em;padding:20px 32px;
  cursor:pointer;white-space:nowrap;transition:background var(--gc-ease),color var(--gc-ease);
}
.gc-newsletter button:hover{background:#fff;color:var(--gc-navy)}

.gc-footer{background:var(--gc-navy-deep);color:rgba(255,255,255,.7);padding:76px 0 0}
.gc-footer__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:48px}
.gc-footer__about p{margin:24px 0 0;font-size:15.5px;line-height:1.7;max-width:330px}
.gc-footer .gc-logo__name{color:#fff}
.gc-footer .gc-logo__mark{width:44px;height:44px;box-shadow:none}
.gc-footer .gc-logo__tag{font-size:11px;letter-spacing:.34em}
.gc-footer__title{font-family:var(--gc-font-title);font-size:12px;font-weight:700;letter-spacing:.2em;color:#fff;margin-bottom:22px}
.gc-footer__links{display:flex;flex-direction:column;gap:12px;font-size:15.5px;list-style:none;margin:0;padding:0}
.gc-footer a{color:rgba(255,255,255,.7)}
.gc-footer a:hover{color:var(--gc-gold)}
.gc-footer__contact{display:flex;flex-direction:column;gap:18px;font-size:15.5px}
.gc-footer__ckey{font-family:var(--gc-font-title);font-size:10.5px;font-weight:700;letter-spacing:.18em;color:var(--gc-gold);margin-bottom:5px}
.gc-footer__cval,.gc-footer__contact a{color:#fff}
.gc-footer__bottom{
  max-width:var(--gc-shell);margin:60px auto 0;
  padding:24px var(--gc-gutter);border-top:1px solid rgba(255,255,255,.12);
  display:flex;justify-content:space-between;gap:24px;font-size:14px;flex-wrap:wrap;
}
.gc-footer__social{display:flex;gap:20px;font-family:var(--gc-font-title);font-size:11px;font-weight:700;letter-spacing:.14em;flex-wrap:wrap}

/* 4.23 Contenu éditorial (pages/articles standards) */
.gc-prose{max-width:840px;margin:0 auto;font-size:17px;line-height:1.75;color:var(--gc-text)}
.gc-prose h2{margin:44px 0 16px;font-size:clamp(24px,2.6vw,32px)}
.gc-prose h3{margin:32px 0 12px;font-size:21px}
.gc-prose p,.gc-prose ul,.gc-prose ol{margin:0 0 18px}
.gc-prose ul,.gc-prose ol{padding-left:22px}
.gc-prose li{margin-bottom:8px}
.gc-prose img{margin:24px 0}
.gc-prose blockquote{margin:24px 0;padding:18px 24px;border-left:3px solid var(--gc-gold);background:var(--gc-bg-alt)}
.gc-prose a{text-decoration:underline;text-underline-offset:3px}
.gc-prose table{width:100%;border-collapse:collapse;margin:24px 0}
.gc-prose th,.gc-prose td{border:1px solid var(--gc-line-strong);padding:10px 14px;text-align:left}
.gc-prose .wp-caption-text{font-size:14px;color:var(--gc-faint);text-align:center}
.alignleft{float:left;margin:0 24px 18px 0}
.alignright{float:right;margin:0 0 18px 24px}
.aligncenter{margin-left:auto;margin-right:auto}

/* Liste d'articles */
.gc-post{border-bottom:1px solid var(--gc-line);padding-bottom:28px;margin-bottom:28px}
.gc-post__meta{font-family:var(--gc-font-title);font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--gc-gold);text-transform:uppercase}
.gc-post h2{margin:10px 0 12px;font-size:24px}

/* Pagination */
.gc-pagination{display:flex;gap:8px;justify-content:center;margin-top:48px;flex-wrap:wrap}
.gc-pagination .page-numbers{
  display:block;padding:12px 18px;border:1px solid var(--gc-line-strong);
  font-family:var(--gc-font-title);font-size:13px;font-weight:700;color:var(--gc-navy);
}
.gc-pagination .current,.gc-pagination .page-numbers:hover{background:var(--gc-gold);border-color:var(--gc-gold)}

/* ── 5. Page simulateur ──────────────────────────────────────────────── */
.gc-simu-intro{padding:56px 0 32px}
.gc-simu-intro .gc-lead{max-width:760px}

/* ── 6. Responsive ───────────────────────────────────────────────────── */
@media (max-width:1080px){
  .gc-rail{display:none}
  .gc-info:nth-child(3){display:none}
}

@media (max-width:900px){
  .gc-section{padding:70px 0}
  .gc-section--tight{padding:56px 0}
  .gc-grid--wide-gap{gap:40px}
  .gc-badge{right:0;bottom:-16px;padding:22px 24px}
  .gc-badge__value{font-size:32px}
  .gc-figure-shot img{height:360px}
  .gc-newsletter h2{font-size:26px}
  .gc-newsletter form{min-width:100%}
}

@media (max-width:860px){
  .gc-burger{display:flex}
  .gc-navbar__inner{padding-top:10px;padding-bottom:10px;flex-wrap:wrap}
  .gc-nav{
    display:none;order:3;flex:1 1 100%;flex-direction:column;align-items:stretch;
    gap:0;border-top:1px solid var(--gc-line-soft);margin-top:10px;
  }
  .gc-nav.is-open{display:flex}
  .gc-nav ul{flex-direction:column;align-items:stretch;gap:0;width:100%}
  .gc-nav a{padding:14px 0;border-bottom:1px solid var(--gc-line-soft);font-size:13px}
  .gc-nav .current-menu-item>a,.gc-nav .current_page_item>a{color:var(--gc-gold);border-bottom-color:var(--gc-line-soft)}
  .gc-nav ul ul{position:static;display:flex;border:none;box-shadow:none;padding:0 0 0 16px}
  .gc-navbar__actions{gap:6px}
  .gc-search{display:none}
  .gc-navbar__cta{padding:16px 18px;font-size:12px}
  .gc-infos{display:none}
  .gc-topbar__social a:not(:first-child){display:none}
  .gc-catbar__inner{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
  .gc-catbar__inner::-webkit-scrollbar{display:none}
  .gc-catbar ul{flex-wrap:nowrap}
  /* Bande défilante au doigt : un menu déroulant au survol n'a pas de sens
     ici, et serait de toute façon coupé par le défilement horizontal. Les
     catégories restent accessibles depuis la page de la famille. */
  .gc-catbar ul ul{display:none !important}
  .gc-catbar .menu-item-has-children > a::after{display:none}
}

@media (max-width:640px){
  .gc-section{padding:56px 0}
  .gc-hero--home{min-height:auto}
  .gc-hero--home .gc-hero__inner{padding-top:72px;padding-bottom:72px}
  .gc-hero__veil{background:linear-gradient(180deg,rgba(9,20,38,.86) 0%,rgba(9,20,38,.7) 100%)}
  .gc-hero__actions{gap:12px}
  .gc-btn{padding:16px 24px;font-size:12px;flex:1 1 auto}
  .gc-form__grid{grid-template-columns:1fr}
  .gc-grid--media{grid-template-columns:1fr}
  .gc-stat{border-right:none;border-bottom:1px solid var(--gc-line-soft);padding:30px 0}
  .gc-tile{padding:30px 24px}
  .gc-sechead{margin-bottom:32px;gap:20px}
  .gc-footer{padding-top:56px}
  .gc-footer__grid{gap:36px}
  .gc-footer__bottom{margin-top:40px}
  .gc-newsletter form{flex-direction:column}
  .gc-newsletter button{padding:18px}
  .gc-decor__media{height:200px}
  .gc-spec{flex-direction:column;gap:6px}
  .gc-spec__v{text-align:left}
  .gc-figure-shot img{height:260px}

  /* Lecteur de brochures : une seule page à la fois sur mobile — deux pages
     côte à côte y seraient illisibles. */
  .gc-fb{padding:14px 12px 0}
  .gc-fb__stage{height:min(64vh,520px);min-height:280px;gap:0}
  .gc-fb__side--right{display:none !important}
  .gc-fb__side--left{max-width:100%;justify-content:center}
  .gc-fb__bar{gap:8px;padding:12px 0}
  .gc-fb__btn{width:40px;height:40px}
  .gc-fb__status{min-width:100%;order:3}
  .gc-modal__head{padding:16px 18px}
  .gc-modal__body{padding:18px 18px 22px}
  .gc-product__media img,.gc-product__media .gc-ph{height:320px}
}

/* ── 7. Préférences utilisateur ──────────────────────────────────────── */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important;scroll-behavior:auto !important;
  }
}

/* ── 8. Impression ───────────────────────────────────────────────────── */
@media print{
  .gc-topbar,.gc-navbar,.gc-catbar,.gc-rail,.gc-newsletter,.gc-footer__social,#gc-simu{display:none !important}
  body{color:#000;background:#fff}
  .gc-hero{background:none}
  .gc-hero__bg,.gc-hero__veil{display:none}
  .gc-hero h1,.gc-hero p{color:#000}
}

/* Lien « feuilleter » sur la vignette de brochure. */
.gc-brochure__read{
  display:block;margin-top:6px;
  font-family:var(--gc-font-title);font-size:10.5px;font-weight:700;
  letter-spacing:.14em;color:var(--gc-gold);font-style:normal;
}

/* ── 9. Confort tactile sur mobile ───────────────────────────────────────
   Les liens de navigation et de pied de page sont des cibles de doigt :
   sous 860 px on leur donne une hauteur exploitable, sans changer le
   dessin de la page sur ordinateur. */
@media (max-width:860px){
  .gc-footer__links a,
  .gc-topbar__left a,
  .gc-topbar__social a,
  .gc-footer__social a,
  .gc-footer__contact a{
    display:inline-block;
    padding-top:7px;
    padding-bottom:7px;
  }
  .gc-footer__links{gap:4px}
  .gc-link-more,
  .gc-link-arrow{display:inline-block;padding-top:8px;padding-bottom:8px}
  .gc-decor__cta,
  .gc-univers__more{padding-top:4px}
  /* Un pouce ne vise pas 21 px : on élargit la zone cliquable des pastilles. */
  .gc-cat-chip{padding:16px 18px}
  .gc-chip{padding:14px 20px}
}

/* Très petits écrans : on resserre les marges plutôt que de rogner le texte. */
@media (max-width:380px){
  :root{--gc-gutter:14px}
  .gc-btn{padding:15px 18px;font-size:11.5px;letter-spacing:.1em}
  .gc-navbar__cta{padding:14px 12px;font-size:11px;letter-spacing:.08em}
  .gc-logo__name{font-size:20px}
  .gc-logo__tag{font-size:11px;letter-spacing:.3em}
  .gc-logo__mark{width:42px;height:42px}
  .gc-stat__value{font-size:36px}
  .gc-newsletter h2{font-size:22px}
  .gc-hero__kicker span:last-child{font-size:11px;letter-spacing:.24em}
}
