/* Page home. Toute nouvelle règle doit être préfixée par body[data-page="home"] pour rester isolée. */

/* Styles hérités de la page 1.0. À consolider dans ce bloc uniquement. */
/* spécifique accueil */
.hchip{text-decoration:none}
#about{padding-bottom:clamp(4rem,8vw,6rem)}
.fusion-note{margin-top:2.2rem;color:var(--grey);font-weight:300;max-width:62ch}
.fusion-note b{color:var(--gold);font-weight:600}

/* V1.7 — cadrage multi-écrans, carrousel stable et retour d'opération. */
body[data-page="home"] .hero{
  height:var(--viewport-h);min-height:42rem;max-height:68rem;padding-top:calc(var(--nav-h) + 1.5rem);
  padding-bottom:clamp(2.2rem,4.5vh,3.6rem);justify-content:center
}
body[data-page="home"] .hero-slides,body[data-page="home"] .hslide{width:100%;height:100%}
body[data-page="home"] .hslide{background-size:cover;background-position:center 48%}
body[data-page="home"] .hero .eyebrow{margin-bottom:1.15rem}
body[data-page="home"] .hero h1{font-size:clamp(3.35rem,6.35vw,7.15rem);max-width:13.5ch;line-height:.94}
body[data-page="home"] .hero-sub{margin-top:1.45rem;max-width:58ch;line-height:1.62}
body[data-page="home"] .hero-cta{margin-top:1.45rem}
body[data-page="home"] .hero-ind{margin-top:1.55rem;gap:.65rem}
body[data-page="home"] .hchip{min-width:145px;padding:.68rem .9rem .72rem}
body[data-page="home"] .hc-val{font-size:clamp(1.2rem,1.8vw,1.55rem)}
body[data-page="home"] .hc-val.news{min-height:0}
body[data-page="home"] .hc-chg{max-width:19ch;line-height:1.25}
body[data-page="home"] .trust-band{padding:clamp(1.35rem,2.4vw,2rem) 0}
body[data-page="home"] .trust-band .ml{margin-bottom:.75rem}
body[data-page="home"] #about{padding-top:clamp(3.5rem,6vw,5.25rem)!important;padding-bottom:clamp(3.5rem,6vw,5.25rem)!important}
body[data-page="home"] #about .about-flow{gap:clamp(2.4rem,5vw,5rem)}
body[data-page="home"] .office-strip{margin-top:clamp(2.5rem,4vw,3.5rem)}
body[data-page="home"] .kpi{padding:clamp(2.25rem,3.8vw,3.4rem) 1.25rem}
body[data-page="home"] .kpi .lbl{margin-top:.9rem;line-height:1.45}
body[data-page="home"] #expertise{padding-top:clamp(4.7rem,8vw,7rem);padding-bottom:clamp(4.7rem,8vw,7rem)}
body[data-page="home"] .who{margin-top:clamp(2.8rem,5vw,4.2rem);padding-top:clamp(2.5rem,4vw,3.5rem)}
body[data-page="home"] #track{padding-top:clamp(4.7rem,8vw,7rem);padding-bottom:clamp(2.8rem,4.5vw,4rem)}
body[data-page="home"] .trh-track{padding-top:2rem}
body[data-page="home"] .trh-track.auto-running{scroll-snap-type:none;scroll-behavior:auto}
body[data-page="home"] .trh-track.is-paused{scroll-snap-type:x proximity}
body[data-page="home"] .trh-track.is-returning{scroll-behavior:auto;pointer-events:none}
body[data-page="home"] .trh-card{flex-basis:clamp(250px,24vw,340px);aspect-ratio:4/5.2}
body[data-page="home"] .trh-nav{position:relative;z-index:2;margin-top:.8rem}
body[data-page="home"] .trh-nav button{background:rgba(255,255,255,.045);backdrop-filter:blur(10px);min-width:46px;min-height:46px}
body[data-page="home"] .cta-band{min-height:clamp(28rem,58svh,39rem);display:grid;place-items:center}
body[data-page="home"] .cta-band .bgimg{background-position:center 46%;filter:saturate(.83)}
body[data-page="home"] .cta-band::after{background:linear-gradient(100deg,rgba(2,2,4,.9),rgba(2,2,4,.58) 50%,rgba(2,2,4,.78))}
body[data-page="home"] .cta-band h2{text-shadow:0 3px 32px rgba(0,0,0,.7)}
body[data-page="home"] .cta-band p{color:#dedee4;text-shadow:0 2px 18px #000}

@media(max-width:1100px){
  body[data-page="home"] .hero h1{font-size:clamp(3.15rem,8vw,6rem)}
  body[data-page="home"] .hero-ind{max-width:720px}
}
@media(max-width:880px){
  body[data-page="home"] .hero{height:auto;min-height:max(43rem,var(--viewport-h));max-height:none;padding-top:calc(var(--nav-h) + 2.3rem);padding-bottom:2.4rem}
  body[data-page="home"] .hero h1{font-size:clamp(3rem,12vw,5rem)}
  body[data-page="home"] .hero-sub{font-size:1rem;line-height:1.58}
  body[data-page="home"] .hero-ind{width:100%;flex-wrap:nowrap;overflow-x:auto;padding:.15rem 0 .45rem;scroll-snap-type:x proximity;scrollbar-width:none}
  body[data-page="home"] .hero-ind::-webkit-scrollbar{display:none}
  body[data-page="home"] .hchip{flex:0 0 min(46vw,190px);scroll-snap-align:start}
  body[data-page="home"] #about .frmap-wrap{margin-inline:auto}
  body[data-page="home"] .trh-card{flex-basis:min(76vw,310px);aspect-ratio:4/5.1}
}
@media(max-width:520px){
  body[data-page="home"] .hero{min-height:max(45rem,var(--viewport-h));padding-inline:1.25rem}
  body[data-page="home"] .hero .eyebrow{font-size:.66rem;letter-spacing:.22em;gap:.7rem}
  body[data-page="home"] .hero .eyebrow::before{width:25px}
  body[data-page="home"] .hero h1{font-size:clamp(2.75rem,13.7vw,4rem)}
  body[data-page="home"] .hero-cta{width:100%;justify-content:center}
  body[data-page="home"] .hchip{flex-basis:68vw}
  body[data-page="home"] #about{padding-inline:1.25rem}
  body[data-page="home"] .cta-band{margin-inline:1rem;border-radius:22px;padding-inline:1.3rem}
}

/* ============ V1.9.1 · bandeau clients compact et stable ============ */
/* Le sélecteur historique `.marquee-track span` appliquait aussi ses marges au
   span interne `.lgimg`, ce qui doublait artificiellement les espaces et
   allongeait le rail. Ces règles sont limitées à l'accueil. */
body[data-page="home"] .trust-band{
  padding:clamp(.78rem,1.35vw,1.15rem) 0;
  overflow:hidden
}
body[data-page="home"] .trust-band .ml{
  margin-bottom:clamp(.45rem,.7vw,.65rem);
  font-size:clamp(.6rem,.72vw,.7rem);
  letter-spacing:.3em;
  color:var(--grey-2)
}
body[data-page="home"] .trust-band .ml::before,
body[data-page="home"] .trust-band .ml::after{
  width:24px;
  margin:0 .65rem;
  opacity:.72
}
body[data-page="home"] .trust-band .marquee-mask{
  width:100%;
  max-width:100%;
  overflow:hidden;
  padding-block:4px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 11%,#000 89%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 11%,#000 89%,transparent)
}
body[data-page="home"] .trust-band .marquee-track{
  display:flex!important;
  align-items:center;
  width:max-content;
  max-width:none;
  animation:none!important
}
body[data-page="home"] .trust-band .marquee-line{
  display:flex;
  align-items:center;
  flex:0 0 auto;
  gap:clamp(1.05rem,2vw,2.1rem);
  padding-inline:clamp(.65rem,1.2vw,1.1rem)
}
body[data-page="home"] .trust-band .marquee-line>span{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  min-height:42px;
  margin:0!important;
  gap:clamp(.55rem,.9vw,.85rem)
}
body[data-page="home"] .trust-band .marquee-line>span>b{
  margin:0!important;
  font-size:.8rem;
  line-height:1
}
body[data-page="home"] .trust-band .marquee-track .lgimg{
  display:grid;
  place-items:center;
  position:relative;
  width:clamp(104px,9.5vw,146px);
  min-width:clamp(104px,9.5vw,146px);
  height:clamp(1.65rem,2vw,2rem);
  margin:0!important
}
body[data-page="home"] .trust-band .marquee-track .lgimg img,
body[data-page="home"] .trust-band .marquee-track .lgimg img.c{
  grid-area:1/1;
  position:static;
  inset:auto;
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  filter:none
}
@media(max-width:520px){
  body[data-page="home"] .trust-band{padding:.7rem 0 .78rem}
  body[data-page="home"] .trust-band .ml{margin-bottom:.4rem;font-size:.58rem;letter-spacing:.24em}
  body[data-page="home"] .trust-band .ml::before,
  body[data-page="home"] .trust-band .ml::after{display:none}
  body[data-page="home"] .trust-band .marquee-mask{
    -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
    mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)
  }
  body[data-page="home"] .trust-band .marquee-line{gap:.95rem;padding-inline:.55rem}
  body[data-page="home"] .trust-band .marquee-line>span{min-height:38px;gap:.5rem}
  body[data-page="home"] .trust-band .marquee-track .lgimg{
    width:100px;
    min-width:100px;
    height:1.55rem
  }
}

