/* ============================================================================
   EXPERT AUDIT ÉNERGÉTIQUE — Page service « Audit énergétique » (v3 flagship)
   ----------------------------------------------------------------------------
   Expérience narrative premium, auto-contenue, namespacée sous .aud
   (modèle de la page « À propos » : tout est encapsulé, aucun conflit thème).
   Typo : Thunder (titres) + Helvetica (texte). Couleurs du site.
   Dépendance : GSAP + ScrollTrigger (uniquement pour le scroll horizontal).
   ========================================================================== */

/* -------- Polices -------- */
@font-face{font-family:'Thunder';font-weight:200;font-style:italic;font-display:swap;src:url('fonts/Thunder-ExtraLightLCItalic.woff2') format('woff2');}
@font-face{font-family:'Thunder';font-weight:400;font-style:normal;font-display:swap;src:url('fonts/Thunder-LC.woff2') format('woff2');}
@font-face{font-family:'Thunder';font-weight:500;font-style:normal;font-display:swap;src:url('fonts/Thunder-MediumLC.woff2') format('woff2');}
@font-face{font-family:'Thunder';font-weight:500;font-style:italic;font-display:swap;src:url('fonts/Thunder-MediumLCItalic.woff2') format('woff2');}
@font-face{font-family:'Thunder';font-weight:600;font-style:normal;font-display:swap;src:url('fonts/Thunder-SemiBoldLC.woff2') format('woff2');}

/* -------- Tokens + reset (locaux) -------- */
.aud{
  --navy:#173955; --navy-2:#122c43; --cream:#FCFAEC; --paper:#fffdf5;
  --green:#129E53; --green-d:#129E53; --gold:#FBBC05;
  /* DA stricte : texte uniquement navy (corps) ou navy atténué (secondaire) — jamais de gris/noir */
  --ink:#173955; --muted:rgba(23,57,85,.62); --line:rgba(23,57,85,.12);
  --sans:'Helvetica Neue',Helvetica,Arial,sans-serif;
  --r:clamp(18px,2vw,34px); --r-s:clamp(12px,1.4vw,20px);
  font-family:var(--sans); color:var(--navy); background:var(--cream);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; line-height:1.55; overflow-x:hidden;
}
.aud *,.aud *::before,.aud *::after{ box-sizing:border-box; margin:0; padding:0; }
.aud img,.aud svg{ display:block; max-width:100%; }
.aud a{ text-decoration:none; }
.aud a:not([class]){ color:inherit; }
.aud button{ font:inherit; color:inherit; cursor:pointer; background:none; border:0; }
.aud ::selection{ background:var(--green); color:#fff; }
.aud-wrap{ width:100%; max-width:1280px; margin:0 auto; padding:0 clamp(20px,5vw,72px); }

/* -------- Type helpers -------- */
.aud-display{ font-family:'Thunder',var(--sans); font-weight:500; line-height:.96; letter-spacing:.4px; }
.aud-eyebrow{ font-weight:700; letter-spacing:.18em; text-transform:uppercase; font-size:clamp(11px,1vw,13px); color:var(--green); display:inline-flex; align-items:center; gap:.6em; }
.aud-eyebrow .d{ width:6px; height:6px; border-radius:50%; background:var(--green); }
.aud-lead{ font-size:clamp(17px,1.5vw,23px); line-height:1.5; color:var(--ink); }
.aud-p{ font-size:clamp(15px,1.15vw,18px); line-height:1.65; color:var(--ink); }
.aud-kicker{ font-weight:700; letter-spacing:.16em; text-transform:uppercase; font-size:clamp(11px,1vw,13px); color:var(--muted); }

/* -------- Boutons -------- */
.aud-btn{ display:inline-flex; align-items:center; justify-content:center; gap:.5em;
  font-family:'Thunder',var(--sans); font-weight:500; font-style:italic; font-size:clamp(16px,1.3vw,22px);
  padding:clamp(13px,1vw,18px) clamp(26px,2.3vw,46px); border-radius:999px; border:2.5px solid transparent;
  transition:background .25s,color .25s,border-color .25s,transform .25s; }
.aud-btn svg{ width:1.05em; height:1.05em; stroke:currentColor; fill:none; stroke-width:2.4; }
/* Un seul style de bouton, comme le site : fond navy, texte + contour cream, vert AU SURVOL uniquement */
.aud-btn,.aud-btn--navy,.aud-btn--cream,.aud-btn--green,.aud-btn--ghost{ background:var(--navy); color:var(--cream); border-color:var(--cream); }
.aud-btn:hover,.aud-btn--navy:hover,.aud-btn--cream:hover,.aud-btn--green:hover,.aud-btn--ghost:hover,.aud-btn:focus-visible{ background:var(--green); color:var(--cream); border-color:var(--green); transform:translateY(-2px); }
.aud-link{ display:inline-flex; align-items:center; gap:.45em; font-weight:600; color:var(--green); border-bottom:2px solid transparent; transition:gap .2s,border-color .2s; }
.aud-link:hover{ gap:.7em; border-color:var(--green); }

/* -------- Reveal -------- */
.aud-rv{ opacity:0; transform:translateY(28px); transition:opacity .8s ease, transform .8s cubic-bezier(.22,.61,.36,1); will-change:opacity,transform; }
.aud-rv.in{ opacity:1; transform:none; }
.aud-stagger>.in:nth-child(2){transition-delay:.08s} .aud-stagger>.in:nth-child(3){transition-delay:.16s}
.aud-stagger>.in:nth-child(4){transition-delay:.24s} .aud-stagger>.in:nth-child(5){transition-delay:.32s}
@media (prefers-reduced-motion:reduce){ .aud-rv{opacity:1;transform:none;transition:none} }

/* ============================ NAV STICKY ============================ */
.aud-nav{ position:sticky; top:0; z-index:60; display:flex; align-items:center; justify-content:space-between; gap:16px;
  background:rgba(252,250,236,.86); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  padding:clamp(10px,1.2vw,16px) clamp(18px,5vw,72px); border-bottom:1px solid var(--line); }
.aud-nav__logo{ height:clamp(30px,3.4vw,44px); width:auto; }
.aud-nav__r{ display:flex; align-items:center; gap:clamp(12px,1.6vw,24px); }
.aud-nav__tel{ display:inline-flex; align-items:center; gap:.45em; font-weight:700; font-size:clamp(14px,1.1vw,17px); white-space:nowrap; }
.aud-nav__tel svg{ width:1.05em; height:1.05em; stroke:var(--green); fill:none; stroke-width:2; }
.aud-nav__cta{ display:inline-flex; align-items:center; gap:.4em; font-family:'Thunder',var(--sans); font-weight:500; font-style:italic;
  font-size:clamp(14px,1.2vw,19px); color:var(--cream); background:var(--navy); border:2px solid var(--cream); border-radius:999px; padding:.5em 1.2em; transition:background .25s,border-color .25s,transform .2s; }
.aud-nav__cta svg{ width:1.05em; height:1.05em; stroke:currentColor; fill:none; stroke-width:2.4; }
.aud-nav__cta:hover{ background:var(--green); border-color:var(--green); transform:translateY(-1px); }
@media (max-width:560px){ .aud-nav__tel{ display:none; } }

/* ============================ HERO ============================ */
.aud-hero{ position:relative; padding:clamp(40px,6vw,84px) 0 0; }
.aud-hero__grid{ display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(30px,5vw,72px); align-items:center;
  padding-bottom:clamp(36px,5vw,72px); }
.aud-hero__eyebrow{ margin-bottom:clamp(18px,2vw,28px); }
.aud-hero__title{ font-family:'Thunder',var(--sans); font-weight:500; line-height:.94; letter-spacing:.3px;
  font-size:clamp(46px,6.4vw,104px); color:var(--navy); }
.aud-hero__title em{ font-style:italic; font-weight:500; color:var(--green); }
.aud-hero__sub{ margin-top:clamp(18px,2vw,28px); max-width:46ch; font-size:clamp(16px,1.4vw,21px); line-height:1.5; color:var(--ink); }
.aud-hero__meta{ display:flex; align-items:center; gap:clamp(14px,1.6vw,22px); flex-wrap:wrap; margin-top:clamp(22px,2.6vw,34px); }
.aud-hero__rating{ display:inline-flex; align-items:center; gap:.5em; font-weight:600; font-size:clamp(14px,1.1vw,16px); color:var(--ink); }
.aud-hero__rating img{ width:1.3em; height:1.3em; }
.aud-hero__rating .st{ color:var(--gold); letter-spacing:1px; }
.aud-hero__cta{ display:flex; flex-wrap:wrap; gap:12px; margin-top:clamp(24px,2.8vw,38px); }

/* Carte formulaire (réutilise la DA : cream + cadre navy + champs navy) */
.aud-formcard{ background:var(--paper); border:1px solid var(--line); border-radius:var(--r); padding:clamp(20px,2vw,34px);
  box-shadow:0 40px 90px -50px rgba(23,57,85,.5); }
.aud-formcard__h{ text-align:center; margin-bottom:clamp(12px,1.4vw,18px); }
.aud-formcard__h b{ display:block; font-family:'Thunder',var(--sans); font-weight:500; font-style:italic; font-size:clamp(24px,2.4vw,36px); color:var(--navy); }
.aud-formcard__h span{ font-size:clamp(12px,1vw,14px); color:var(--muted); }
.aud-form{ display:flex; flex-direction:column; gap:clamp(10px,1.1vw,14px); }
.aud-form__row{ display:flex; gap:clamp(10px,1vw,14px); }
.aud-form__row .field{ flex:1 1 0; min-width:0; }
.aud .field{ font-family:var(--sans); font-weight:400; font-size:clamp(15px,1.05vw,17px); color:var(--navy);
  background:#fff; border:1.5px solid var(--line); border-radius:14px; padding:0 clamp(14px,1.3vw,20px);
  width:100%; height:clamp(46px,4.6vh,54px); transition:border-color .2s,box-shadow .2s; }
.aud .field::placeholder{ color:var(--muted); }
.aud .field:focus{ outline:none; border-color:var(--green); box-shadow:0 0 0 3px rgba(18,158,83,.14); }
.aud .field--area{ height:auto; min-height:clamp(84px,11vh,120px); padding-top:12px; resize:none; }
.aud .send{ font-family:'Thunder',var(--sans); font-weight:500; font-style:italic; font-size:clamp(16px,1.3vw,22px);
  color:var(--cream); background:var(--navy); border:2px solid var(--navy); border-radius:14px; height:clamp(50px,5.2vh,58px); transition:background .25s,border-color .25s,transform .2s; }
.aud .send:hover{ background:var(--green); border-color:var(--green); transform:translateY(-1px); }
.aud-form__fine{ text-align:center; font-size:clamp(11px,.9vw,13px); color:var(--muted); margin-top:2px; }

/* Bande photo immersive bas de héros */
.aud-hero__strip{ position:relative; height:clamp(220px,32vw,420px); overflow:hidden; }
.aud-hero__strip img{ width:100%; height:100%; object-fit:cover; }
.aud-hero__strip::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(252,250,236,.5), transparent 30%); }

/* ============================ ÉCHELLE DPE (motif signature) ============================ */
.aud-scale{ display:flex; align-items:flex-end; gap:clamp(4px,.5vw,7px); margin-top:clamp(26px,3vw,40px); }
.aud-scale__bar{ flex:1 1 0; border-radius:6px 6px 0 0; display:flex; align-items:flex-end; justify-content:center;
  color:#15311f; font-family:'Thunder',var(--sans); font-weight:600; font-size:clamp(12px,1vw,16px); padding-bottom:6px;
  transform-origin:bottom; }
.aud-scale--anim .aud-scale__bar{ transform:scaleY(.18); opacity:.4; transition:transform .7s cubic-bezier(.22,.61,.36,1),opacity .5s; }
.aud-scale--anim.in .aud-scale__bar{ transform:none; opacity:1; }
.aud-scale--anim.in .aud-scale__bar:nth-child(2){transition-delay:.06s}
.aud-scale--anim.in .aud-scale__bar:nth-child(3){transition-delay:.12s}
.aud-scale--anim.in .aud-scale__bar:nth-child(4){transition-delay:.18s}
.aud-scale--anim.in .aud-scale__bar:nth-child(5){transition-delay:.24s}
.aud-scale--anim.in .aud-scale__bar:nth-child(6){transition-delay:.30s}
.aud-scale--anim.in .aud-scale__bar:nth-child(7){transition-delay:.36s}
.aud-scale__cap{ margin-top:.7em; font-size:clamp(12px,1vw,14px); color:var(--muted); }

/* ============================ SECTION GÉNÉRIQUE ============================ */
.aud-sec{ padding:clamp(44px,5.5vw,90px) 0; }
.aud-sec--navy{ background:var(--navy); color:var(--cream); }
.aud-sec--navy .aud-p,.aud-sec--navy .aud-lead{ color:rgba(252,250,236,.8); }
.aud-sec--navy .aud-kicker{ color:rgba(252,250,236,.6); }
.aud-sec__head{ max-width:none; }
.aud-sec__head--c{ max-width:none; margin:0 auto; text-align:center; }
.aud-sec__head .aud-lead,.aud-sec__head--c .aud-lead{ max-width:56ch; }
.aud-sec__head--c .aud-lead{ margin-left:auto; margin-right:auto; }
.aud-h2{ font-family:'Thunder',var(--sans); font-weight:500; line-height:1; font-size:clamp(34px,5vw,76px); margin:.3em 0 .35em; }
.aud-h2 em{ font-style:italic; color:var(--green); }
.aud-sec--navy .aud-h2 em{ color:#129E53; }

/* ============================ DPE vs AUDIT (split éditorial) ============================ */
.aud-vs{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(16px,2vw,30px); margin-top:clamp(36px,4vw,60px); position:relative; }
.aud-vs__card{ border-radius:var(--r); overflow:hidden; position:relative; min-height:clamp(360px,38vw,480px); display:flex; flex-direction:column; justify-content:flex-end;
  color:#fff; isolation:isolate; }
.aud-vs__card img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.aud-vs__card::after{ content:""; position:absolute; inset:0; z-index:-1; }
.aud-vs__card--dpe::after,.aud-vs__card--audit::after{ background:linear-gradient(180deg, rgba(18,44,67,.15), rgba(15,34,52,.9)); }
.aud-vs__inner{ padding:clamp(24px,2.6vw,44px); }
.aud-vs__tag{ display:inline-block; font-weight:700; letter-spacing:.12em; text-transform:uppercase; font-size:clamp(10px,.9vw,12px);
  padding:.4em .9em; border-radius:999px; background:rgba(255,255,255,.18); margin-bottom:clamp(12px,1.4vw,18px); }
.aud-vs__card--audit .aud-vs__tag{ background:var(--green); }
.aud-vs__t{ font-family:'Thunder',var(--sans); font-weight:500; font-size:clamp(26px,2.8vw,44px); line-height:1; }
.aud-vs__d{ margin-top:.5em; font-size:clamp(14px,1.1vw,17px); line-height:1.5; color:rgba(255,255,255,.85); max-width:34ch; }
.aud-vs__vs{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); z-index:3; width:clamp(54px,4.6vw,76px); height:clamp(54px,4.6vw,76px);
  border-radius:50%; background:var(--cream); color:var(--navy); display:flex; align-items:center; justify-content:center;
  font-family:'Thunder',var(--sans); font-weight:600; font-style:italic; font-size:clamp(16px,1.4vw,22px); box-shadow:0 16px 40px -16px rgba(0,0,0,.5); }
.aud-vs__punch{ text-align:center; max-width:24ch; margin:clamp(34px,4vw,56px) auto 0; font-family:'Thunder',var(--sans); font-weight:500;
  font-size:clamp(24px,3vw,44px); line-height:1.08; }
.aud-vs__punch b{ color:var(--green); font-weight:500; }
@media (max-width:760px){ .aud-vs{ grid-template-columns:1fr; } .aud-vs__vs{ position:static; transform:none; margin:-30px auto; } }

/* ============================ SCROLL HORIZONTAL (process, GSAP) ============================ */
.aud-hs{ background:var(--navy); color:var(--cream); position:relative; overflow:hidden; }
.aud-hs__head{ padding:clamp(56px,7vw,110px) clamp(20px,5vw,72px) clamp(20px,3vw,40px); max-width:1280px; margin:0 auto; }
.aud-hs__track{ display:flex; gap:clamp(18px,2vw,32px); padding:0 clamp(20px,5vw,72px) clamp(56px,7vw,100px); width:max-content; }
.aud-hs__panel{ position:relative; flex:0 0 clamp(280px,42vw,560px); border-radius:var(--r); overflow:hidden; min-height:clamp(380px,52vh,560px);
  display:flex; flex-direction:column; justify-content:flex-end; color:#fff; isolation:isolate; }
.aud-hs__panel img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2; }
.aud-hs__panel::after{ content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg, rgba(18,44,67,.15) 35%, rgba(10,26,40,.92)); }
.aud-hs__num{ position:absolute; top:clamp(18px,2vw,30px); left:clamp(20px,2vw,32px); font-family:'Thunder',var(--sans); font-weight:600;
  font-size:clamp(46px,5vw,86px); line-height:1; color:rgba(255,255,255,.22); }
.aud-hs__body{ padding:clamp(22px,2.4vw,40px); }
.aud-hs__step{ font-weight:700; letter-spacing:.14em; text-transform:uppercase; font-size:clamp(10px,.9vw,12px); color:#129E53; margin-bottom:.6em; }
.aud-hs__t{ font-family:'Thunder',var(--sans); font-weight:500; font-size:clamp(24px,2.4vw,38px); line-height:1.02; }
.aud-hs__d{ margin-top:.5em; font-size:clamp(14px,1.08vw,17px); line-height:1.5; color:rgba(255,255,255,.82); max-width:36ch; }
.aud-hs__progress{ height:3px; background:rgba(252,250,236,.16); max-width:1280px; margin:0 auto; border-radius:2px; overflow:hidden; }
.aud-hs__progress i{ display:block; height:100%; width:0; background:var(--green); }
/* mobile : défilement natif (pas de pin GSAP) */
@media (max-width:820px){
  .aud-hs__track{ overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; padding-bottom:clamp(36px,9vw,56px); }
  .aud-hs__track::-webkit-scrollbar{ display:none; }
  .aud-hs__panel{ flex-basis:78vw; scroll-snap-align:start; }
  .aud-hs__progress{ display:none; }
}

/* ============================ DÉPERDITIONS (infographie maison) ============================ */
.aud-heat{ display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(30px,5vw,72px); align-items:center; margin-top:clamp(36px,4vw,56px); }
.aud-heat__list{ display:flex; flex-direction:column; gap:clamp(13px,1.5vw,20px); }
.aud-heat__row .t{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:.45em; }
.aud-heat__row .n{ font-weight:600; font-size:clamp(14px,1.1vw,17px); color:var(--ink); }
.aud-heat__row .v{ font-family:'Thunder',var(--sans); font-weight:500; font-size:clamp(18px,1.5vw,26px); color:var(--navy); }
.aud-heat__bar{ height:clamp(9px,.9vw,13px); border-radius:999px; background:var(--line); overflow:hidden; }
.aud-heat__bar i{ display:block; height:100%; width:0; border-radius:999px; background:var(--green); transition:width 1.1s cubic-bezier(.22,.61,.36,1); }
.aud-heat.in .aud-heat__bar i{ width:var(--w,0%); }
.aud-heat__media{ border-radius:var(--r); overflow:hidden; aspect-ratio:4/5; box-shadow:0 40px 80px -44px rgba(23,57,85,.5); }
.aud-heat__media img{ width:100%; height:100%; object-fit:cover; }
@media (max-width:880px){ .aud-heat{ grid-template-columns:1fr; } .aud-heat__media{ aspect-ratio:16/10; order:-1; } }

/* ============================ PREUVE (témoignage + stats) ============================ */
.aud-proof__quote{ max-width:24ch; }
.aud-quote{ font-family:'Thunder',var(--sans); font-weight:500; font-style:italic; font-size:clamp(28px,3.6vw,58px); line-height:1.08; }
.aud-quote__who{ display:flex; align-items:center; gap:.7em; margin-top:clamp(18px,2vw,28px); font-style:normal; }
.aud-quote__who img{ width:clamp(40px,3.4vw,52px); height:clamp(40px,3.4vw,52px); border-radius:50%; object-fit:cover; }
.aud-quote__who b{ font-family:var(--sans); font-weight:700; font-size:clamp(14px,1.1vw,16px); }
.aud-quote__who span{ display:block; font-family:var(--sans); font-weight:400; font-size:clamp(12px,.95vw,14px); color:rgba(252,250,236,.66); }
.aud-stats{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(20px,3vw,44px); margin-top:clamp(40px,5vw,72px); border-top:1px solid rgba(252,250,236,.16); padding-top:clamp(34px,4vw,56px); text-align:center; }
.aud-stat .n{ font-family:'Thunder',var(--sans); font-weight:500; font-size:clamp(40px,5.4vw,84px); line-height:.9; }
.aud-stat .n .st{ color:var(--gold); font-size:.62em; }
.aud-stat .l{ font-size:clamp(13px,1.05vw,16px); color:rgba(252,250,236,.7); margin-top:.4em; }
@media (max-width:640px){ .aud-stats{ grid-template-columns:1fr; gap:24px; } }

/* marquee agréments */
.aud-marquee{ background:var(--cream); overflow:hidden; padding:clamp(26px,3.4vw,48px) 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.aud-marquee__t{ display:flex; align-items:center; width:max-content; animation:aud-scroll 38s linear infinite; gap:clamp(48px,6vw,104px); }
.aud-marquee__t img{ height:clamp(46px,5vw,78px); width:auto; object-fit:contain; }
@keyframes aud-scroll{ from{transform:translateX(0)} to{transform:translateX(-50%)} }
@media (prefers-reduced-motion:reduce){ .aud-marquee__t{ animation:none; } }

/* ============================ ARGENT / AIDES ============================ */
.aud-money{ position:relative; background:var(--navy); color:var(--cream); overflow:hidden; }
.aud-money__grid{ position:relative; display:grid; grid-template-columns:1.18fr .82fr; gap:clamp(28px,4vw,60px); align-items:center; }
.aud-money__amount{ font-family:'Thunder',var(--sans); font-weight:500; line-height:.84; }
.aud-money__amount .pre{ display:block; font-size:clamp(22px,2.5vw,40px); color:rgba(252,250,236,.7); }
.aud-money__amount .big{ display:block; font-size:clamp(64px,9.4vw,124px); color:#129E53; white-space:nowrap; }
.aud-money__amount .post{ display:block; font-size:clamp(24px,2.7vw,44px); }
.aud-money__d{ font-size:clamp(15px,1.25vw,20px); line-height:1.55; color:rgba(252,250,236,.82); max-width:42ch; }
.aud-money__cta{ display:flex; flex-wrap:nowrap; gap:12px; margin-top:clamp(22px,2.6vw,34px); }
.aud-money__cta .aud-btn{ flex:1 1 0; min-width:0; padding-left:clamp(14px,1.3vw,22px); padding-right:clamp(14px,1.3vw,22px); font-size:clamp(14px,1.1vw,18px); white-space:nowrap; }
@media(max-width:880px){ .aud-money__cta{ flex-wrap:wrap; } .aud-money__cta .aud-btn{ flex:1 1 auto; } }
@media (max-width:880px){ .aud-money__grid{ grid-template-columns:1fr; } }

/* ============================ MICRO-FAQ inline ============================ */
.aud-mfaq{ max-width:880px; margin:clamp(30px,4vw,52px) auto 0; display:flex; gap:clamp(14px,1.6vw,22px); padding:clamp(20px,2vw,30px) clamp(22px,2.2vw,32px);
  border-radius:var(--r); background:rgba(18,158,83,.07); border:1px solid rgba(18,158,83,.24); }
.aud-sec--navy .aud-mfaq{ background:rgba(18,158,83,.14); border-color:rgba(18,158,83,.3); }
.aud-mfaq__b{ flex:0 0 auto; width:clamp(34px,3vw,44px); height:clamp(34px,3vw,44px); border-radius:50%; background:var(--green); color:#fff;
  display:flex; align-items:center; justify-content:center; font-family:'Thunder',var(--sans); font-weight:600; font-size:clamp(16px,1.4vw,22px); }
.aud-mfaq__q{ font-family:'Thunder',var(--sans); font-weight:500; font-size:clamp(17px,1.5vw,24px); line-height:1.15; margin-bottom:.3em; }
.aud-mfaq__a{ font-size:clamp(14px,1.08vw,17px); line-height:1.6; color:var(--ink); }
.aud-sec--navy .aud-mfaq__a{ color:rgba(252,250,236,.8); }

/* ============================ FAQ accordéon ============================ */
.aud-faq__list{ max-width:880px; margin:clamp(32px,4vw,52px) auto 0; display:flex; flex-direction:column; gap:clamp(10px,1.1vw,14px); }
.aud-faq__item{ border:1px solid var(--line); border-radius:var(--r-s); overflow:hidden; background:var(--paper); transition:border-color .3s; }
.aud-faq__item.open{ border-color:var(--green); }
.aud-faq__q{ width:100%; display:flex; align-items:center; gap:16px; text-align:left; padding:clamp(16px,1.6vw,24px) clamp(18px,1.8vw,28px);
  font-family:'Thunder',var(--sans); font-weight:500; font-size:clamp(17px,1.5vw,24px); line-height:1.15; }
.aud-faq__q span{ flex:1; }
.aud-faq__ic{ position:relative; flex:0 0 auto; width:22px; height:22px; transition:transform .35s; }
.aud-faq__ic::before,.aud-faq__ic::after{ content:""; position:absolute; left:50%; top:50%; background:var(--green); border-radius:2px; }
.aud-faq__ic::before{ width:100%; height:2.5px; transform:translate(-50%,-50%); }
.aud-faq__ic::after{ width:2.5px; height:100%; transform:translate(-50%,-50%); }
.aud-faq__item.open .aud-faq__ic{ transform:rotate(135deg); }
.aud-faq__p{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1); }
.aud-faq__item.open .aud-faq__p{ grid-template-rows:1fr; }
.aud-faq__pi{ overflow:hidden; }
.aud-faq__a{ padding:0 clamp(18px,1.8vw,28px) clamp(18px,1.8vw,26px); font-size:clamp(14px,1.1vw,17px); line-height:1.65; color:var(--ink); }
.aud-faq__a a{ color:var(--green); font-weight:600; }

/* ============================ CTA FINAL ============================ */
.aud-final{ background:var(--navy); color:var(--cream); }
.aud-final__grid{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,72px); align-items:center; }
.aud-final__h{ font-family:'Thunder',var(--sans); font-weight:500; font-size:clamp(34px,4.4vw,68px); line-height:1; }
.aud-final__h em{ font-style:italic; color:#129E53; }
.aud-final__contact{ list-style:none; display:flex; flex-direction:column; gap:14px; margin-top:clamp(22px,2.4vw,32px); }
.aud-final__contact li{ display:flex; align-items:center; gap:.8em; font-size:clamp(15px,1.15vw,18px); color:rgba(252,250,236,.82); }
.aud-final__contact a{ font-weight:600; color:var(--cream); border-bottom:2px solid transparent; transition:border-color .2s,color .2s; }
.aud-final__contact a:hover{ color:#129E53; border-color:#129E53; }
.aud-final__contact .ic{ flex:0 0 auto; width:clamp(38px,3vw,46px); height:clamp(38px,3vw,46px); border-radius:50%; border:2px solid rgba(252,250,236,.3);
  display:flex; align-items:center; justify-content:center; }
.aud-final__contact .ic svg{ width:46%; height:46%; stroke:#129E53; fill:none; stroke-width:2; }
@media (max-width:880px){ .aud-final__grid{ grid-template-columns:1fr; } }

/* ============================ FOOTER ============================ */
.aud-foot{ background:var(--cream); color:var(--navy); padding:clamp(26px,3vw,44px) 0; border-top:1px solid var(--line); }
.aud-foot__in{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px; }
.aud-foot__nav{ display:flex; flex-wrap:wrap; gap:clamp(14px,1.8vw,30px); }
.aud-foot__nav a{ font-size:clamp(13px,1vw,16px); color:var(--ink); transition:color .2s; }
.aud-foot__nav a:hover{ color:var(--green); }
.aud-foot__c{ font-weight:500; font-size:clamp(13px,1vw,16px); }

/* CTA flottant mobile */
.aud-float{ position:fixed; left:16px; right:16px; bottom:14px; z-index:55; display:none; }
.aud-float a{ display:flex; align-items:center; justify-content:center; gap:.5em; width:100%; font-family:'Thunder',var(--sans); font-weight:500; font-style:italic;
  font-size:18px; color:var(--cream); background:var(--navy); border:2px solid var(--cream); border-radius:999px; padding:13px; box-shadow:0 16px 34px -12px rgba(0,0,0,.5); }
@media (max-width:820px){ .aud-float{ display:block; } }

/* ============================ RESPONSIVE GLOBAL ============================ */
@media (max-width:980px){
  .aud-hero__grid,.aud-money__grid,.aud-final__grid{ grid-template-columns:1fr; }
  .aud-hero__title{ font-size:clamp(44px,11vw,76px); }
}

/* ============================================================================
   COMPOSANTS PARTAGÉS (réutilisés par MAR / DTG / Aides)
   ========================================================================== */
/* Split photo + texte */
.aud-split{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(30px,5vw,72px); align-items:center; margin-top:clamp(36px,4vw,56px); }
.aud-split--rev .aud-split__media{ order:2; }
.aud-split__media{ border-radius:var(--r); overflow:hidden; aspect-ratio:4/3; box-shadow:0 40px 80px -44px rgba(23,57,85,.5); }
.aud-split__media img{ width:100%; height:100%; object-fit:cover; }
@media(max-width:880px){ .aud-split{ grid-template-columns:1fr; } .aud-split--rev .aud-split__media{ order:0; } }

/* Rangées « réassurance » (picto rond navy + titre + sous-texte) — alternative graphique à une liste */
.aud-rows{ display:flex; flex-direction:column; gap:clamp(12px,1.4vw,18px); margin-top:clamp(24px,2.8vw,34px); }
/* Variante horizontale : 3 cartes réparties sur toute la largeur (sous l'image + le texte) */
.aud-rows--h{ display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(14px,1.6vw,24px); margin-top:clamp(30px,3.6vw,52px); }
.aud-rows--h .aud-row{ align-items:flex-start; }
.aud-rows--h .aud-row:hover{ transform:translateY(-4px); }
@media(max-width:880px){ .aud-rows--h{ grid-template-columns:1fr; } }
.aud-row{ display:flex; gap:clamp(14px,1.4vw,20px); align-items:center; background:var(--paper); border:1px solid var(--line);
  border-radius:var(--r-s); padding:clamp(14px,1.5vw,20px) clamp(16px,1.7vw,24px); transition:border-color .3s,transform .3s,box-shadow .3s; }
.aud-row:hover{ border-color:var(--green); transform:translateX(4px); box-shadow:0 18px 36px -28px rgba(23,57,85,.45); }
.aud-row__ic{ flex:0 0 auto; width:clamp(44px,3.4vw,56px); height:clamp(44px,3.4vw,56px); border-radius:50%; background:var(--navy);
  color:var(--cream); display:flex; align-items:center; justify-content:center; }
.aud-row__ic svg{ width:48%; height:48%; stroke:currentColor; fill:none; stroke-width:2; }
.aud-row__t{ font-family:'Thunder',var(--sans); font-weight:600; font-size:clamp(18px,1.5vw,25px); line-height:1.05; color:var(--navy); }
.aud-row__d{ font-size:clamp(14px,1.05vw,17px); line-height:1.45; color:var(--ink); margin-top:.12em; }

/* Checklist (✓ vert / ✗ rouge) */
.aud-checklist{ list-style:none; display:flex; flex-direction:column; gap:clamp(12px,1.4vw,18px); margin-top:clamp(18px,2vw,26px); }
.aud-checklist li{ display:flex; gap:.7em; align-items:flex-start; font-size:clamp(15px,1.12vw,18px); line-height:1.5; color:var(--ink); }
.aud-sec--navy .aud-checklist li{ color:rgba(252,250,236,.85); }
.aud-checklist svg{ flex:0 0 auto; width:1.35em; height:1.35em; margin-top:.06em; stroke:var(--green); fill:none; stroke-width:2.4; }
.aud-checklist--x svg{ stroke:#c0392b; }
.aud-checklist strong{ font-weight:700; }

/* Duo : deux cartes côte à côte */
.aud-duo{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(16px,2vw,28px); margin-top:clamp(34px,4vw,56px); }
.aud-duo__card{ background:var(--paper); border:1px solid var(--line); border-radius:var(--r); padding:clamp(24px,2.4vw,40px); }
.aud-sec--navy .aud-duo__card{ background:rgba(252,250,236,.05); border-color:rgba(252,250,236,.14); }
.aud-duo__t{ font-family:'Thunder',var(--sans); font-weight:500; font-size:clamp(22px,2vw,32px); margin-bottom:.2em; }
@media(max-width:760px){ .aud-duo{ grid-template-columns:1fr; } }

/* Pills réassurance (héros) */
.aud-pills{ display:flex; flex-wrap:wrap; gap:10px; margin-top:clamp(22px,2.6vw,32px); }
.aud-pills span{ display:inline-flex; align-items:center; gap:.5em; padding:.55em 1.1em; border-radius:999px; border:1.5px solid var(--line); font-weight:600; font-size:clamp(13px,1.05vw,16px); color:var(--navy); }
.aud-pills svg{ width:1.05em; height:1.05em; stroke:var(--green); fill:none; stroke-width:2.4; }

/* Tableau d'aides (réutilisé page Aides / MAR) */
.aud-table{ width:100%; border-collapse:collapse; margin-top:clamp(20px,2.4vw,32px); font-size:clamp(14px,1.08vw,17px); }
.aud-table th,.aud-table td{ border:1px solid var(--line); padding:clamp(9px,1vw,14px) clamp(12px,1.3vw,18px); text-align:left; }
.aud-table th{ background:var(--navy); color:var(--cream); font-family:'Thunder',var(--sans); font-weight:500; letter-spacing:.3px; }
.aud-table tr:nth-child(even) td{ background:rgba(23,57,85,.03); }
.aud-table strong{ color:var(--green); font-weight:700; }
@media(max-width:620px){ .aud-table{ display:block; overflow-x:auto; white-space:nowrap; } }

/* ============================================================================
   CORRECTIFS (retour client) — jamais de vert sur navy + ajustements frise
   ========================================================================== */
/* Punch DPE/audit sur une seule ligne */
.aud-vs__punch{ max-width:none; }

/* JAMAIS de vert sur fond navy : accents et éléments passent en cream */
.aud-sec--navy .aud-h2 em,
.aud-hs .aud-h2 em,
.aud-money .aud-h2 em,
.aud-final__h em{ color:var(--cream); }
.aud-hs__step{ color:var(--cream); }
.aud-hs__progress i{ background:var(--cream); }
.aud-money__amount .big{ color:var(--cream); }
.aud-sec--navy .aud-spot__amount .big{ color:var(--cream); }
.aud-sec--navy .aud-spot__amount .pre{ color:rgba(252,250,236,.7); }
.aud-final__contact .ic svg{ stroke:var(--cream); }
.aud-final__contact a:hover{ color:var(--cream); border-color:var(--cream); }
.aud-sec--navy .aud-checklist svg{ stroke:var(--cream); }
.aud-sec--navy .aud-table strong{ color:var(--cream); }

/* Frise : plus de respiration navy en bas + écart à droite identique à gauche */
.aud-hs{ padding-bottom:clamp(40px,5vw,80px); }
.aud-hs__track{ padding-right:0; }
.aud-hs__spacer{ flex:0 0 clamp(20px,5vw,72px); }

/* ============================================================================
   CARTES (missions, atouts…) — réutilisé MAR / DTG
   ========================================================================== */
.aud-cards{ display:grid; gap:clamp(16px,1.8vw,28px); margin-top:clamp(34px,4vw,56px); }
.aud-cards--4{ grid-template-columns:repeat(4,1fr); }
.aud-cards--3{ grid-template-columns:repeat(3,1fr); }
.aud-card{ background:var(--paper); border:1px solid var(--line); border-radius:var(--r); padding:clamp(22px,2vw,34px); transition:transform .3s,box-shadow .3s,border-color .3s; }
.aud-card__ic{ width:clamp(46px,3.6vw,58px); height:clamp(46px,3.6vw,58px); border-radius:50%; background:var(--navy); color:var(--cream); display:flex; align-items:center; justify-content:center; margin-bottom:clamp(14px,1.4vw,20px); }
.aud-card__ic svg{ width:50%; height:50%; stroke:currentColor; fill:none; stroke-width:1.8; }
.aud-card__t{ font-family:'Thunder',var(--sans); font-weight:500; font-size:clamp(19px,1.6vw,26px); line-height:1.08; margin-bottom:.35em; color:var(--navy); }
.aud-card__d{ font-size:clamp(14px,1.05vw,17px); line-height:1.55; color:var(--ink); }
.aud-card:hover{ transform:translateY(-5px); box-shadow:0 26px 50px -30px rgba(23,57,85,.4); border-color:var(--green); }
@media(max-width:980px){ .aud-cards--4{ grid-template-columns:repeat(2,1fr);} .aud-cards--3{grid-template-columns:1fr;} }
@media(max-width:560px){ .aud-cards--4{ grid-template-columns:1fr; } }

/* Carte PDF (guide des aides) */
.aud-pdf{ display:flex; flex-direction:column; gap:clamp(12px,1.4vw,18px); background:var(--navy); color:var(--cream); border-radius:var(--r); padding:clamp(24px,2.4vw,38px); }
.aud-pdf__tag{ font-weight:700; letter-spacing:.12em; text-transform:uppercase; font-size:clamp(10px,.9vw,12px); color:rgba(252,250,236,.7); }
.aud-pdf__t{ font-family:'Thunder',var(--sans); font-weight:500; font-size:clamp(22px,2vw,32px); line-height:1.05; }
.aud-pdf__d{ font-size:clamp(14px,1.05vw,17px); line-height:1.55; color:rgba(252,250,236,.8); }
.aud-pdf__btn{ align-self:flex-start; display:inline-flex; align-items:center; gap:.5em; font-family:'Thunder',var(--sans); font-weight:500; font-style:italic; font-size:clamp(15px,1.2vw,20px); color:var(--navy); background:var(--cream); border:2.5px solid var(--cream); border-radius:999px; padding:.6em 1.3em; transition:background .25s,color .25s,border-color .25s,transform .2s; }
.aud-pdf__btn:hover{ background:var(--green); border-color:var(--green); color:var(--cream); transform:translateY(-2px); }
.aud-pdf__btn svg{ width:1.1em; height:1.1em; stroke:currentColor; fill:none; stroke-width:2; }

/* Spotlight chiffre (aides) */
.aud-spot{ display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(24px,3vw,52px); align-items:center; margin-top:clamp(34px,4vw,56px); }
.aud-spot__amount{ font-family:'Thunder',var(--sans); font-weight:500; line-height:.88; }
.aud-spot__amount .pre{ display:block; font-size:clamp(18px,2vw,30px); color:var(--muted); }
.aud-spot__amount .big{ display:block; font-size:clamp(50px,6vw,92px); color:var(--green); white-space:nowrap; }
.aud-spot__amount .post{ display:block; font-size:clamp(18px,2vw,30px); }
@media(max-width:880px){ .aud-spot{ grid-template-columns:1fr; } }

/* ============================================================================
   Graisse Thunder Bold (700) + ExtraBold (800) — chiffre d'aides renforcé
   ========================================================================== */
@font-face{font-family:'Thunder';font-weight:700;font-style:normal;font-display:swap;src:url('fonts/Thunder-BoldLC.woff2') format('woff2');}
@font-face{font-family:'Thunder';font-weight:800;font-style:normal;font-display:swap;src:url('fonts/Thunder-ExtraBoldLC.woff2') format('woff2');}
/* Chiffre des aides (40 000 €) renforcé : ExtraBold + tracking légèrement resserré */
.aud-money__amount .big,
.aud-spot__amount .big{ font-weight:800; letter-spacing:-.01em; }

/* ============================================================================
   ZONES D'INTERVENTION (SEO local + conversion) + correctifs responsive
   ========================================================================== */
.aud-zones__grid{ display:flex; flex-wrap:wrap; justify-content:center; gap:clamp(8px,.9vw,13px); margin-top:clamp(26px,3vw,40px); }
.aud-zone{ display:inline-flex; align-items:center; gap:.5em; padding:clamp(8px,.8vw,12px) clamp(14px,1.3vw,22px); border-radius:999px;
  border:1.5px solid var(--line); background:var(--paper); color:var(--navy); font-weight:600; font-size:clamp(13px,1.05vw,16px);
  transition:border-color .2s,color .2s,transform .2s; }
.aud-zone svg{ width:1.05em; height:1.05em; stroke:var(--green); fill:none; stroke-width:2; }
.aud-zone:hover{ border-color:var(--green); color:var(--green); transform:translateY(-2px); }
.aud-sec--navy .aud-zone{ background:rgba(252,250,236,.06); border-color:rgba(252,250,236,.2); color:var(--cream); }
.aud-sec--navy .aud-zone svg{ stroke:var(--cream); }
.aud-sec--navy .aud-zone:hover{ border-color:var(--cream); color:var(--cream); }

/* Lien contextuel inline (maillage interne) */
.aud-inline-link{ color:var(--green); font-weight:700; border-bottom:2px solid transparent; transition:border-color .2s; }
.aud-inline-link:hover{ border-color:var(--green); }
.aud-sec--navy .aud-inline-link{ color:var(--cream); }
.aud-sec--navy .aud-inline-link:hover{ border-color:var(--cream); }

/* Responsive mobile poussé : titres et chiffres plus mesurés, paddings resserrés */
@media (max-width:600px){
  .aud-h2{ font-size:clamp(30px,9vw,44px); }
  .aud-money__amount .big{ font-size:clamp(56px,17vw,84px); }
  .aud-spot__amount .big{ font-size:clamp(52px,16vw,78px); }
  .aud-vs__vs{ font-size:20px; }
  .aud-rows--h .aud-row{ align-items:center; }
}
