
@font-face{font-family:'Unbounded';font-style:normal;font-weight:300 700;font-display:swap;src:url('/fonts/eclat/unbounded-var.woff2') format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-display:swap;src:url('/fonts/eclat/archivo-var.woff2') format('woff2')}
@font-face{font-family:'Barlow Logo';font-style:italic;font-weight:900;font-display:swap;
  src:url('/fonts/mobglass/barlow-blackitalic.woff2') format('woff2')}
@font-face{font-family:'Martian Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url('/fonts/eclat/martianmono-var.woff2') format('woff2')}

/* ==================== TOKENS ==================== */
:root{
  --carbone:#FFFFFF;          /* fond principal : blanc */
  --carbone2:#F7F5F0;         /* surfaces : cartes, assistant */
  --porcelaine:#141210;       /* texte principal : noir chaud */
  --brume:#EFEBE3;
  --encre:#141210;
  --gris:#5C554D;             /* texte secondaire */
  --gris-c:#5C554D;
  --lignes:rgba(20,17,14,.14);
  --lignes-c:rgba(20,17,14,.12);
  /* signature : spectre prismatique (réfraction) */
  --rouge:#DA291C;--rouge-vif:#F03A2B;--prisme:linear-gradient(90deg,#F03A2B 0%,#DA291C 100%);
  --cyan:#DA291C; /* rouge suisse — accent unique */
  --maxw:1240px;
  --disp:"Unbounded",system-ui,sans-serif;
  --sans:"Archivo","Helvetica Neue",Arial,sans-serif;
  --mono:"Martian Mono",ui-monospace,Menlo,monospace;
}
[hidden]{display:none !important}   /* garde-fou : hidden gagne toujours */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;overflow-x:clip}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001s!important;animation-iteration-count:1!important;transition-duration:.001s!important}
}
body{font-family:var(--sans);background:var(--carbone);color:var(--porcelaine);
  line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3{font-family:var(--disp);font-weight:700;line-height:1.06;letter-spacing:-.01em}
p{max-width:60ch}
a{color:inherit;text-decoration:none}
svg,canvas{display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}
.mono{font-family:var(--mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
.idx{font-family:var(--mono);font-size:.66rem;letter-spacing:.2em;color:var(--gris);text-transform:uppercase}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
:focus-visible{outline:2.5px solid var(--cyan);outline-offset:3px;border-radius:3px}
.skip{position:fixed;top:-60px;left:16px;z-index:300;background:var(--encre);color:#fff;
  padding:10px 18px;border-radius:8px;font-weight:600;transition:top .2s}
.skip:focus{top:12px}

/* filet prismatique — LA signature, toujours en épaisseur de trait */
.prisme-h{height:6px;width:100%;background:repeating-linear-gradient(135deg,#DA291C 0 14px,#FFFFFF 14px 28px)}
.u-prisme{background-image:var(--prisme);background-size:100% 2px;background-position:0 100%;
  background-repeat:no-repeat;padding-bottom:4px}

/* ==================== EN-TÊTE ==================== */
header.nav{position:fixed;inset:0 0 auto 0;z-index:100;background:rgba(255,255,255,.85);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--lignes)}
.nav-in{max-width:var(--maxw);margin:0 auto;padding:16px 28px;display:flex;align-items:center;gap:34px}
.brand{display:flex;align-items:center;gap:12px;font-family:var(--disp);font-weight:700;font-size:1.05rem;letter-spacing:.02em}
.brand .glyph{width:26px;height:16px}
.brand img{height:46px;width:auto;max-width:none}
nav.main{margin-left:auto}
nav.main ol{display:flex;gap:30px;list-style:none;counter-reset:n}
nav.main a{font-family:var(--mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gris);transition:color .18s;display:flex;gap:8px;align-items:baseline}
nav.main a b{font-weight:500;color:var(--porcelaine);opacity:.35;font-size:.6rem}
nav.main a:hover{color:var(--porcelaine)}
.nav-tel{font-family:var(--mono);font-size:.66rem;letter-spacing:.12em;color:var(--gris)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;position:relative;
  font-family:var(--mono);font-weight:500;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;
  padding:16px 26px;border-radius:10px;cursor:pointer;border:1px solid var(--lignes);
  background:var(--rouge);color:#fff;transition:transform .15s,box-shadow .2s}
.btn::before{content:"";position:absolute;inset:-2px;border-radius:12px;background:var(--prisme);
  z-index:-1;opacity:0;transition:opacity .2s}
.btn:hover{transform:translateY(-1px)}
.btn:hover::before{opacity:1}
.btn-ligne{background:transparent;color:var(--porcelaine);border-color:rgba(20,17,14,.30)}
.s1 .btn-ligne{color:var(--encre);border-color:rgba(23,19,16,.30)}
.s1 .actions .btn{font-size:.86rem;padding:21px 34px;font-weight:700;letter-spacing:.13em}
@media (max-width:760px){.s1 .actions .btn{width:100%;justify-content:center;text-align:center;padding:20px 18px}}
.btn-ligne:hover{border-color:transparent}
.burger{display:none;background:none;border:none;cursor:pointer;padding:8px;margin-left:auto}
.burger span{display:block;width:24px;height:2px;background:var(--porcelaine);margin:6px 0;transition:transform .25s,opacity .2s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.menu-mobile{display:none}
.sticky-cta{display:none}
@media (max-width:760px){
  .sticky-cta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:120;gap:1px;
    background:var(--lignes);border-top:1px solid var(--lignes);
    padding-bottom:env(safe-area-inset-bottom)}
  .sticky-cta a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:17px 10px;
    background:var(--carbone2);color:var(--porcelaine);font-family:var(--mono);font-size:.66rem;
    letter-spacing:.14em;text-transform:uppercase;font-weight:500}
  .sticky-cta a.pri{background:var(--rouge);color:#fff;font-weight:700}
  body{padding-bottom:56px}
}


/* ==================== SCÈNE 01 — LE VERRE ==================== */
.s1{position:relative;min-height:100svh;display:flex;align-items:stretch;overflow:hidden}
#verre{position:absolute;inset:0;width:100%;height:100%}
.film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 50%;pointer-events:none;background:#171310 url("eclat-poster.jpg") center/cover no-repeat}
.s1 .voile{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(244,241,234,.72) 0%,rgba(244,241,234,.40) 40%,rgba(244,241,234,0) 65%),
  linear-gradient(180deg,rgba(244,241,234,.34) 0%,rgba(244,241,234,.22) 38%,rgba(244,241,234,.80) 74%,rgba(244,241,234,.96) 100%)}
.s1-in{position:relative;z-index:2;color:var(--encre);text-shadow:0 1px 12px rgba(244,241,234,.55),0 0 2px rgba(244,241,234,.5);display:flex;flex-direction:column;justify-content:flex-end;
  width:100%;max-width:var(--maxw);margin:0 auto;padding:120px 28px 56px}
.s1 .chrome{position:absolute;top:96px;left:28px;right:28px;display:flex;justify-content:space-between;
  z-index:2;pointer-events:none}
.s1 .chrome .idx{color:rgba(23,19,16,.55)}
.s1 h1{font-size:clamp(1.9rem,6.2vw,5.9rem);font-weight:700;max-width:17ch;margin-bottom:18px}
.s1 h1 .fin{font-weight:700;display:block;font-size:min(.56em,1.6rem);letter-spacing:.02em;margin-bottom:18px;color:rgba(23,19,16,.88);line-height:1.3}
.s1 h1 .star{color:#B22015}
.s1 h1 a.cond{color:inherit;border-bottom:2px solid transparent;border-image:linear-gradient(90deg,#F03A2B,#DA291C) 1;
  border-bottom:2px solid;cursor:help}
.s1 .sous{display:flex;gap:34px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap}
.s1 .sous p{color:rgba(23,19,16,.88);font-size:1.08rem;font-weight:500;max-width:44ch}
.s1 .sous p b{color:var(--encre);font-weight:700}
.s1 .actions{display:flex;gap:14px;flex-wrap:wrap}
.promo-200{flex-basis:100%;align-self:flex-start;display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px 12px;
  width:fit-content;margin:4px 0 8px;padding:14px 24px;background:var(--rouge);color:#fff;
  border-radius:18px;font-family:var(--mono);font-size:.72rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;line-height:1.5;border:none}
.promo-200 .chf{font-family:var(--disp);font-size:1.4rem;font-weight:800;color:#fff;
  letter-spacing:0;text-transform:none;line-height:1}
.promo-200:hover{background:#B22015}
.s1 .sous p.mini-fiab{width:100%;margin-top:8px;font-family:var(--mono);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(23,19,16,.85);max-width:none}
.hint-verre{position:absolute;right:32px;bottom:180px;z-index:2;display:flex;align-items:center;gap:10px;
  font-family:var(--mono);font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:rgba(23,19,16,.85);
  writing-mode:vertical-rl;pointer-events:none}
.hint-verre::before{content:"";width:1px;height:44px;background:var(--prisme);writing-mode:horizontal-tb}

/* ==================== base des scènes ==================== */
.scene{position:relative;padding:120px 0}
.scene-tete{display:flex;align-items:baseline;justify-content:space-between;gap:20px;
  border-top:1px solid var(--lignes);padding-top:22px;margin-bottom:70px}
.scene-tete h2{font-size:clamp(1.7rem,3.6vw,2.9rem);font-weight:700;max-width:22ch}
.claire .scene-tete{border-color:var(--lignes-c)}
.claire{background:#FFFFFF;color:var(--encre)}
.claire .idx{color:var(--gris-c)}
.claire p{color:var(--gris-c)}

/* ==================== SCÈNE 02 — LE DÉROULÉ (sticky) ==================== */
.s2-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}
.s2-colle{position:sticky;top:120px}
.s2-colle .grand-num{font-family:var(--disp);font-weight:700;font-size:clamp(6rem,15vw,13rem);
  line-height:.9;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1.5px rgba(20,17,14,.28)}
.s2-colle .grand-num b{display:block;height:4px;width:88px;background:var(--prisme);margin-top:26px}
.s2-colle p{color:var(--gris);margin-top:24px;font-size:1rem;max-width:34ch}
.pas{border-top:1px solid var(--lignes);padding:44px 0 46px}
.pas:last-child{border-bottom:1px solid var(--lignes)}
.pas .idx{display:block;margin-bottom:16px}
.pas h3{font-size:clamp(1.3rem,2.4vw,1.9rem);font-weight:500;margin-bottom:14px}
.pas p{color:var(--gris);font-size:1rem}
.pas .note{display:inline-block;margin-top:18px;font-family:var(--mono);font-size:.62rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--cyan)}

/* ==================== SCÈNE 03 — PREUVES (clair) ==================== */
.manifeste{font-family:var(--disp);font-weight:500;font-size:clamp(1.3rem,2.8vw,2.1rem);
  line-height:1.4;max-width:30ch;letter-spacing:-.005em;margin-bottom:80px}
.manifeste .u-prisme{font-weight:700}
.spec{border:1px solid var(--lignes-c);border-radius:14px;overflow:hidden}
.spec-l{display:grid;grid-template-columns:110px 1fr 1.5fr;gap:26px;align-items:baseline;
  padding:26px 28px;border-top:1px solid var(--lignes-c);background:#FFFFFF;transition:background .18s}
.spec-l:first-child{border-top:none}
.spec-l:hover{background:#F7F5F0}
.spec-l .cn{font-family:var(--mono);font-size:.7rem;letter-spacing:.18em;color:var(--gris-c)}
.spec-l h3{font-family:var(--sans);font-weight:600;font-size:1.05rem;letter-spacing:0}
.spec-l p{font-size:.94rem;color:var(--gris-c);max-width:none}
.spec-pied{padding:22px 28px;background:var(--encre);color:#F4F1EA;display:flex;gap:16px;
  align-items:center;flex-wrap:wrap}
.spec-pied .pt{width:9px;height:9px;border-radius:50%;background:var(--prisme);flex-shrink:0}
.spec-pied p{font-size:.9rem;color:rgba(244,241,234,.85);max-width:none}
.ligne-claire{margin-top:64px;display:grid;grid-template-columns:repeat(3,1fr);gap:44px}
.lc h3{font-family:var(--sans);font-weight:600;font-size:1.02rem;margin:14px 0 10px}
.lc p{font-size:.92rem}
.lc .idx b{background-image:var(--prisme);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:500}
.lc .src{display:inline-block;margin-top:14px;font-family:var(--mono);font-size:.6rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gris-c);border-bottom:1px solid var(--lignes-c);padding-bottom:3px}

/* ==================== SCÈNE 04 — RÉSEAU ==================== */
.reseau{counter-reset:v}
.vil{display:grid;grid-template-columns:64px 1fr auto auto;gap:26px;align-items:center;
  padding:20px 4px;border-top:1px solid var(--lignes);transition:padding .18s;position:relative}
.vil:last-of-type{border-bottom:1px solid var(--lignes)}
.vil::before{counter-increment:v;content:counter(v,decimal-leading-zero);
  font-family:var(--mono);font-size:.68rem;letter-spacing:.14em;color:var(--gris)}
.vil::after{content:"";position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--prisme);transition:width .3s}
.vil:hover::after{width:100%}
.vil:hover{padding-left:16px}
.vil .nom{font-family:var(--disp);font-weight:500;font-size:clamp(1.15rem,2.4vw,1.7rem);letter-spacing:0}
.vil .dep{font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gris)}
.vil .fl{width:22px;height:22px;color:var(--porcelaine);opacity:.45;transition:opacity .18s,transform .18s}
.vil:hover .fl{opacity:1;transform:translateX(6px)}
.reseau-note{margin-top:30px;color:var(--gris);font-size:.95rem}
.reseau-note a{color:var(--porcelaine);border-bottom:1px solid var(--cyan)}

/* ==================== SCÈNE 05 — PAROLES ==================== */
.paroles blockquote{font-family:var(--disp);font-weight:500;font-size:clamp(1.25rem,2.9vw,2.2rem);
  line-height:1.42;max-width:32ch;letter-spacing:-.005em;min-height:5.6em}
.paroles blockquote::before{content:"« "}
.paroles blockquote::after{content:" »"}
.paroles .qui{margin-top:34px;display:flex;align-items:center;gap:16px}
.paroles .qui .p{font-family:var(--mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--gris-c)}
.paroles .nav-t{margin-top:40px;display:flex;gap:10px;align-items:center}
.paroles .nav-t button{width:44px;height:44px;border-radius:50%;border:1px solid var(--lignes-c);
  background:transparent;cursor:pointer;color:var(--encre);display:flex;align-items:center;justify-content:center;
  transition:border-color .15s,transform .12s}
.paroles .nav-t button:hover{border-color:var(--encre);transform:translateY(-1px)}
.paroles .compte{font-family:var(--mono);font-size:.66rem;letter-spacing:.2em;color:var(--gris-c);margin-left:10px}

/* ==================== SCÈNE 06 — LE GESTE (assistant) ==================== */
.geste{padding-bottom:140px}
.assistant{max-width:760px;margin:0 auto;border:1px solid var(--lignes);border-radius:18px;
  background:var(--carbone2);overflow:hidden}
.assistant .barre{height:3px;background:rgba(20,17,14,.10);position:relative}
.assistant .barre i{position:absolute;inset:0 auto 0 0;width:33%;background:var(--prisme);transition:width .35s ease}
.assistant .corps{padding:44px 48px 40px}
.assistant .idx{display:block;margin-bottom:20px}
.assistant h3{font-size:clamp(1.55rem,3vw,2.05rem);font-weight:600;margin-bottom:26px;letter-spacing:0}
.panneau{display:none}
.panneau.actif{display:block;animation:app .35s ease}
@keyframes app{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.choix{display:grid;gap:12px}
.choix-ill{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.choix-ill input{position:absolute;opacity:0;pointer-events:none}
.choix-ill label{display:flex;flex-direction:column;align-items:center;gap:12px;padding:24px 12px 18px;
  background:#FFFFFF;border:1px solid var(--lignes);border-radius:14px;cursor:pointer;
  text-align:center;transition:border-color .15s,background .15s}
.choix-ill label svg{width:78px;height:78px;stroke:var(--porcelaine);fill:none;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round}
.choix-ill label b{font-size:1.08rem;font-weight:700;letter-spacing:.01em}
.choix-ill input:checked+label{border-color:var(--cyan);background:rgba(218,41,28,.07)}
.choix-ill input:focus-visible+label{outline:2px solid var(--cyan);outline-offset:2px}
.note-degats{margin-top:16px;font-size:.85rem;color:var(--gris);line-height:1.6}
.schema-wrap{text-align:center}
.schema-auto{display:block;margin:0 auto;max-width:250px;width:78%}
.schema-auto .car{stroke:rgba(20,17,14,.55);fill:none;stroke-width:2}
.schema-auto .zone{fill:rgba(20,17,14,.07);stroke:rgba(20,17,14,.38);stroke-width:1.6;cursor:pointer;transition:fill .15s,stroke .15s}
.schema-auto .zone:hover{fill:rgba(20,17,14,.15)}
.schema-auto .zone.sel{fill:rgba(218,41,28,.22);stroke:var(--cyan)}
.zone-nom{margin-top:14px;font-family:var(--mono);font-size:.74rem;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;color:var(--cyan);min-height:1.2em}
.autre-vitre{margin-top:10px;background:none;border:none;cursor:pointer;color:var(--gris);
  font-size:.82rem;text-decoration:underline;text-underline-offset:3px}
.autre-vitre:hover{color:var(--porcelaine)}
.choix input{position:absolute;opacity:0;pointer-events:none}
.choix label{cursor:pointer;padding:22px 22px 22px 60px;border:1px solid var(--lignes);border-radius:14px;
  display:flex;flex-direction:column;align-items:flex-start;gap:8px;font-size:1.3rem;font-weight:700;
  line-height:1.25;transition:border-color .15s,background .15s;position:relative}
.choix label::before{content:"";position:absolute;left:20px;top:26px;width:22px;height:22px;border-radius:50%;
  border:2px solid rgba(20,17,14,.40);transition:border-color .15s,background .15s}
.choix input:checked+label{border-color:var(--cyan);background:rgba(218,41,28,.07)}
.choix input:checked+label::before{border-color:var(--cyan);
  background:radial-gradient(circle,var(--cyan) 0 42%,transparent 50%)}
.choix input:focus-visible+label{outline:2px solid var(--cyan);outline-offset:2px}
.choix label small{font-size:.96rem;font-weight:400;color:var(--gris);line-height:1.55;letter-spacing:.01em}
.choix label:hover{border-color:rgba(20,17,14,.4)}
.choix input:checked + label{border-color:transparent;
  background:linear-gradient(#FFFFFF,#FFFFFF) padding-box,
             linear-gradient(90deg,#F03A2B,#DA291C) border-box}
.choix input:focus-visible + label{outline:2.5px solid var(--cyan);outline-offset:2px}
.champ{margin-bottom:18px}
.champ label{display:block;font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gris);margin-bottom:9px}
.champ input,.champ select{width:100%;padding:16px 16px;border:1px solid var(--lignes);border-radius:10px;
  background:#FFFFFF;color:var(--porcelaine);font-family:var(--sans);font-size:1.02rem;
  transition:border-color .15s}
.champ input:focus,.champ select:focus{outline:none;border-color:var(--cyan)}
.champ select{appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 49%,var(--gris) 50%),linear-gradient(135deg,var(--gris) 50%,transparent 51%);background-position:calc(100% - 22px) 26px,calc(100% - 16px) 26px;background-size:6px 6px;background-repeat:no-repeat}
.champ select option{background:var(--carbone2);color:var(--porcelaine)}
.champ input[type=date]{color-scheme:light}
.quand{margin-top:22px}
.quand-titre{display:block;font-size:1.05rem;font-weight:600;margin-bottom:12px}
.choix-quand{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.choix-quand input{position:absolute;opacity:0;pointer-events:none}
.choix-quand label{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;
  padding:18px 10px;border:1px solid var(--lignes);border-radius:14px;cursor:pointer;text-align:center;
  font-size:1.08rem;font-weight:700;transition:border-color .15s,background .15s}
.choix-quand label small{font-size:.8rem;font-weight:400;color:var(--gris)}
.choix-quand input:checked+label{border-color:var(--cyan);background:rgba(218,41,28,.07)}
.creneau{margin-top:14px}
.deux{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.consent{display:flex;gap:12px;align-items:flex-start;margin:8px 0 4px}
.consent input{margin-top:4px;width:17px;height:17px;accent-color:var(--cyan);flex-shrink:0;cursor:pointer}
.consent label{font-size:.82rem;color:var(--gris);line-height:1.6;cursor:pointer}
.consent b{color:var(--porcelaine);font-weight:600}
.consent a{text-decoration:underline;text-underline-offset:2px;color:var(--porcelaine)}
.assistant .pied{display:flex;justify-content:space-between;align-items:center;gap:14px;
  margin-top:32px;padding-top:26px;border-top:1px solid var(--lignes)}
.assistant .retour{background:none;border:none;cursor:pointer;color:var(--gris);
  font-family:var(--mono);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;padding:10px 4px}
.assistant .retour:hover{color:var(--porcelaine)}
.assistant .retour[hidden]{visibility:hidden;display:block}
.err-msg{margin-top:20px;font-size:.84rem;color:#DA291C;font-weight:500}
.err-msg[hidden]{display:none}
.err-champ{margin:8px 0 0;font-size:.8rem;color:#DA291C;font-weight:500}
.champ input.ko,.champ select.ko{border-color:#DA291C}
.note-tel{display:block;margin-top:8px;font-size:.72rem;color:var(--gris);letter-spacing:.02em}
.fin-recap{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);margin:0 auto 14px}
dialog#doc-modale,dialog#rappel-modale{max-width:640px;width:calc(100% - 40px);margin:auto;border:1px solid var(--lignes);border-radius:16px;
  background:var(--carbone2);color:var(--porcelaine);padding:28px 30px 22px}
dialog#doc-modale::backdrop,dialog#rappel-modale::backdrop{background:rgba(12,9,7,.75);backdrop-filter:blur(3px)}
.doc-tete{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:14px}
.doc-tete h3{font-size:1.15rem;font-weight:500}
.doc-fermer{background:none;border:none;color:var(--gris);font-size:1.7rem;line-height:1;cursor:pointer;padding:4px 8px}
.doc-fermer:hover{color:var(--porcelaine)}
#doc-corps{font-size:.92rem;color:rgba(20,17,14,.85);line-height:1.7}
#doc-corps p{max-width:none;margin-bottom:10px}
.doc-note{margin-top:16px;font-family:var(--mono);font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gris)}
.micro{margin-top:16px;font-family:var(--mono);font-size:.6rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--gris);text-align:center}
.fin-ok{display:none;text-align:center;padding:70px 40px}
.fin-ok .rond{width:60px;height:60px;border-radius:50%;margin:0 auto 22px;position:relative}
.fin-ok .rond::before{content:"";position:absolute;inset:-2px;border-radius:50%;background:var(--prisme)}
.fin-ok .rond::after{content:"✓";position:absolute;inset:2px;border-radius:50%;background:var(--carbone2);
  display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:var(--porcelaine)}
.fin-ok h3{margin-bottom:10px}
.fin-ok p{color:var(--gris);margin:0 auto;font-size:.96rem}
.assistant.fini .corps,.assistant.fini .barre{display:none}
.assistant.fini .fin-ok{display:block}
.rassure{max-width:960px;margin:56px auto 0;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.rassure figure{margin:0}
.rassure img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;border:1px solid var(--lignes);display:block}
.rassure figcaption{margin-top:14px}
.rassure .rt{display:block;font-family:var(--mono);font-size:.78rem;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--porcelaine);line-height:1.45}
.rassure .rs{display:block;margin-top:6px;font-size:.88rem;color:var(--gris);line-height:1.55}
@media (max-width:760px){.rassure{grid-template-columns:1fr;gap:26px;margin-top:44px}.rassure img{height:190px;aspect-ratio:auto}}

/* ==================== v8 — FORMULAIRE DEVIS SOMBRE ==================== */
#geste{background:#16181D;color:#fff;padding:88px 0 96px}
#geste .wrap{max-width:1040px}
.devis-tete{display:flex;justify-content:space-between;align-items:flex-start;gap:32px}
.devis-titre{display:flex;flex-direction:column;gap:12px}
.devis-kicker{font-family:var(--mono);font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:#8B93A0}
#geste .devis-titre h2{color:#fff;margin:0}
.compteur{font-family:'Barlow Logo',sans-serif;font-style:italic;font-weight:900;font-size:4.4rem;line-height:.82;color:var(--rouge);flex-shrink:0;letter-spacing:.02em}
.compteur span{font-size:1.9rem;color:#3A3E46}
#geste .geste-sous{color:#C9CDD4;margin-top:20px}
#geste .geste-sous .urgence{color:#fff}
#geste .geste-sous b{color:#fff}
#geste .geste-boost{color:#C9CDD4}
#geste .assistant{max-width:none;margin:30px 0 0;border:none;background:none;border-radius:0;overflow:visible}
#geste .barre{height:3px;background:#262A31}
#geste .barre i{background:var(--rouge)}
#geste .corps{padding:0}
.recap{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:20px 0 4px}
.recap[hidden]{display:none}
.recap-lbl{font-family:var(--mono);font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:#5B6472}
.recap .pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--rouge);border-radius:99px;padding:8px 15px;background:none;color:#fff;font-weight:700;font-size:.82rem;cursor:pointer;font-family:var(--sans);transition:background .15s}
.recap .pill:hover{background:var(--rouge)}
.recap .pill em{font-style:normal;color:var(--rouge);font-size:.9em;transition:color .15s}
.recap .pill:hover em{color:#fff}
#geste .idx{display:none}
#geste .panneau{padding-top:26px}
#geste h3{color:#fff;font-family:var(--sans);font-weight:800;font-size:clamp(1.5rem,3vw,2rem);margin-bottom:24px}
#geste .choix-ill{grid-template-columns:repeat(4,1fr)}
#geste .choix-ill label{background:#1B1E24;border:2px solid #262A31;border-radius:14px;padding:30px 14px 22px}
#geste .choix-ill label svg{stroke:#fff;width:60px;height:60px;stroke-width:2.2}
#geste .choix-ill label b{color:#fff}
#geste .choix-ill label:hover{border-color:var(--rouge)}
#geste .choix-ill input:checked+label{border-color:var(--rouge);background:#2A1513}
#geste .note-degats{color:#8B93A0}
#geste .schema-auto .car{stroke:rgba(255,255,255,.5)}
#geste .schema-auto .zone{fill:rgba(255,255,255,.05);stroke:rgba(255,255,255,.32)}
#geste .schema-auto .zone:hover{fill:rgba(255,255,255,.12)}
#geste .schema-auto .zone.sel{fill:rgba(218,41,28,.30);stroke:var(--rouge)}
#geste .zone-nom{color:var(--rouge)}
#geste .autre-vitre{color:#8B93A0}
#geste .autre-vitre:hover{color:#fff}
#geste .choix{grid-template-columns:1fr 1fr}
#geste .choix label{padding:20px 22px;background:#1B1E24;border:2px solid #262A31;border-radius:14px;font-size:1.08rem;color:#fff}
#geste .choix label::before{display:none}
#geste .choix label:hover{border-color:var(--rouge)}
#geste .choix input:checked+label{border-color:var(--rouge);background:#2A1513}
#geste .choix label small{color:#8B93A0}
#geste .champ label{color:#8B93A0}
#geste .champ input,#geste .champ select{background:#1B1E24;border:2px solid #262A31;color:#fff}
#geste .champ input::placeholder{color:#5B6472}
#geste .champ input:focus,#geste .champ select:focus{border-color:var(--rouge)}
#geste .champ select option{background:#1B1E24;color:#fff}
#geste .champ input[type=date]{color-scheme:dark}
#geste .quand-titre{color:#fff}
#geste .choix-quand label{background:#1B1E24;border:2px solid #262A31;color:#fff}
#geste .choix-quand input:checked+label{border-color:var(--rouge);background:#2A1513}
#geste .choix-quand label small{color:#8B93A0}
#geste .note-creneau{color:#8B93A0}
#geste .consent label{color:#8B93A0}
#geste .consent b{color:#fff}
#geste .consent a{color:#fff}
#geste .note-tel{color:#5B6472}
#geste .pied{border-top:1px solid #262A31}
#geste .retour{color:#8B93A0}
#geste .retour:hover{color:#fff}
#geste .micro{color:#5B6472}
#geste .fin-ok h3{color:#fff}
#geste .fin-ok p{color:#8B93A0}
#geste .fin-ok .rond::after{background:#16181D;color:#fff}
#geste .fin-recap{color:var(--rouge)}
#geste .mail-note{color:#C9CDD4}
@media(max-width:760px){
  #geste .choix-ill{grid-template-columns:1fr 1fr}
  #geste .choix{grid-template-columns:1fr}
  .devis-tete{flex-direction:column;gap:14px}
  .compteur{font-size:3rem}
}

/* ==================== v8 — BANDEAU DÉFILANT (marquee) ==================== */
.marquee{background:var(--rouge);overflow:hidden;transform:rotate(-1.2deg);margin:22px 0;position:relative;z-index:2}
.marquee-track{display:flex;width:max-content;animation:mg-marquee 22s linear infinite}
.marquee-grp{display:flex;align-items:center;gap:28px;padding:14px 14px 14px 42px;font-family:var(--mono);font-size:.8rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:#fff;white-space:nowrap}
.marquee-grp i{font-style:normal;opacity:.45}
@keyframes mg-marquee{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.marquee-track{animation:none}}

/* ==================== v8 — ZONE pastilles ==================== */
.rr{color:var(--rouge)}
#reseau{background:#EFEBE1}
#reseau .reseau{display:flex;flex-wrap:wrap;gap:12px}
#reseau .vil{display:inline-flex;align-items:baseline;gap:8px;background:#fff;border:1px solid var(--lignes);border-radius:100px;padding:12px 20px;color:var(--porcelaine);grid-template-columns:none;transition:border-color .15s,color .15s}
#reseau .vil:hover{border-color:var(--rouge);color:var(--rouge)}
#reseau .vil .nom{font-family:var(--sans);font-weight:700;font-size:.97rem;letter-spacing:0}
#reseau .vil .dep{font-family:var(--mono);font-size:.6rem;letter-spacing:.08em;color:#7B746E;text-transform:uppercase}
#reseau .vil .fl{display:none}
#reseau .vil::before{display:none}
#reseau .reseau-note{margin-top:6px;color:var(--gris)}
#reseau .reseau-note a{color:var(--rouge);text-decoration:underline;text-underline-offset:2px}

/* ==================== v8 — DÉROULÉ sombre ==================== */
#deroule{background:#16181D;color:#fff}
#deroule .scene-tete h2{color:#fff}
#deroule .deroule-sous{color:#8B93A0;font-size:1.02rem;margin:-6px 0 42px;max-width:640px}
.deroule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.d-card{border:1px solid #262A31;border-radius:14px;padding:32px 30px;display:flex;flex-direction:column;gap:14px;background:#1B1E24}
.d-top{display:flex;align-items:center;justify-content:space-between}
.d-num{font-family:'Barlow Logo',sans-serif;font-style:italic;font-weight:900;font-size:2.1rem;color:var(--rouge);line-height:1}
.d-pill{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:#8B93A0;border:1px solid #262A31;border-radius:100px;padding:6px 12px}
.d-card h3{color:#fff;font-family:var(--sans);font-weight:800;font-size:1.32rem;line-height:1.15;margin:0}
.d-card p{color:#8B93A0;font-size:.94rem;line-height:1.55;margin:0}
@media(max-width:860px){.deroule-grid{grid-template-columns:1fr}}

/* ==================== FAQ ==================== */
.faq details{border-top:1px solid var(--lignes)}
.faq details:last-child{border-bottom:1px solid var(--lignes)}
.faq summary{list-style:none;cursor:pointer;padding:26px 60px 26px 0;position:relative;
  display:grid;grid-template-columns:64px 1fr;gap:26px;align-items:baseline}
.faq summary::-webkit-details-marker{display:none}
.faq summary .qi{font-family:var(--mono);font-size:.66rem;letter-spacing:.16em;color:var(--gris)}
.faq summary .qt{font-family:var(--sans);font-weight:600;font-size:1.1rem;transition:color .15s}
.faq summary:hover .qt{color:var(--cyan)}
.faq summary::after{content:"+";position:absolute;right:8px;top:50%;transform:translateY(-50%);
  font-family:var(--disp);font-weight:300;font-size:1.5rem;color:var(--gris);transition:transform .25s,color .2s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg);color:var(--cyan)}
.faq .rep{padding:0 0 30px 90px;color:var(--gris);font-size:.98rem;max-width:66ch}
.faq .rep a{color:var(--porcelaine);text-decoration:underline;text-underline-offset:2px}

/* ==================== v8 — PRÉ-FOOTER CTA ==================== */
.prefooter{padding:0 0 90px}
.prefooter-card{position:relative;height:380px;border-radius:20px;overflow:hidden;background:#16181D}
.prefooter-img{position:absolute;right:-140px;top:50%;transform:translateY(-50%);width:1150px;max-width:none;height:auto}
.prefooter-voile{position:absolute;inset:0;background:linear-gradient(90deg,#16181D 0%,#16181D 42%,rgba(22,24,29,.55) 66%,rgba(22,24,29,0) 88%)}
.prefooter-in{position:absolute;left:64px;top:0;bottom:0;width:520px;max-width:calc(100% - 96px);display:flex;flex-direction:column;justify-content:center;gap:22px;z-index:2}
.kick-str{display:flex;align-items:center;gap:10px}
.str2{display:flex;flex-direction:column;gap:3px;align-items:flex-end}
.str2 i{display:block;height:3px;transform:skewX(-30deg)}
.str2 i:nth-child(1){width:18px;background:var(--rouge)}
.str2 i:nth-child(2){width:11px;background:#7A2018}
.kick-txt{font-family:var(--mono);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#C9CDD4}
.prefooter-in h2{color:#fff;font-weight:800;font-size:clamp(2rem,4vw,2.75rem);line-height:1.04;letter-spacing:-.5px}
.prefooter-cta{display:flex;gap:14px;align-items:center;flex-wrap:wrap}
.tel-saira{font-family:'Barlow Logo',sans-serif;font-style:italic;font-weight:900;font-size:1.3rem;color:#fff;letter-spacing:.02em}
.tel-saira:hover{color:var(--rouge)}
.sep-streak{height:4px;background:#16181D;position:relative}
.sep-streak span{position:absolute;left:96px;top:-4px;display:flex;gap:6px}
.sep-streak i{display:block;height:12px;background:var(--rouge);transform:skewX(-30deg)}
.sep-streak i:nth-child(1){width:34px}
.sep-streak i:nth-child(2){width:20px;opacity:.55}
.sep-streak i:nth-child(3){width:10px;opacity:.28}

/* ==================== v8 — PIED sombre ==================== */
footer{background:#16181D;color:#fff;padding:72px 0 60px;position:relative;overflow:hidden}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:56px;margin-bottom:0;position:relative;z-index:2}
.foot-brand{display:flex;flex-direction:column;gap:18px}
.foot-logo{display:flex;align-items:center;gap:8px}
.foot-logo .str2 i{height:3.5px}
.foot-logo .str2 i:nth-child(1){width:20px}
.foot-logo .str2 i:nth-child(2){width:12px;background:#7A2018}
.foot-word{font-family:'Barlow Logo',sans-serif;font-style:italic;font-weight:900;font-size:1.6rem;color:#fff;line-height:1;letter-spacing:.02em}
.foot-word b{color:var(--rouge)}
.foot-word span{color:#C9CDD4}
.foot-brand p{font-size:.94rem;line-height:1.6;color:#8B93A0;max-width:300px;margin:0}
.foot-tel{font-family:'Barlow Logo',sans-serif;font-style:italic;font-weight:900;font-size:1.3rem;color:var(--rouge);letter-spacing:.02em}
.foot-tel:hover{color:#fff}
.foot-grid h3{font-family:var(--mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;
  font-weight:500;color:#788393;margin-bottom:18px}
.foot-grid ul{list-style:none}
.foot-grid li{margin-bottom:13px}
.foot-grid a{font-size:.95rem;color:#C9CDD4;transition:color .15s}
.foot-grid a:hover{color:#fff}
.foot-legal{margin-top:56px;padding:22px 0;border-top:1px solid #262A31;display:flex;justify-content:space-between;align-items:center;gap:32px;position:relative;z-index:2}
.foot-legal p{font-size:.8rem;line-height:1.5;color:#788393;max-width:760px;margin:0}
.foot-legal p b{color:#8B93A0}
.foot-cp{font-family:var(--mono);font-size:.72rem;color:#788393;flex-shrink:0}
.foot-cp a{color:#8B93A0;text-decoration:none;border-bottom:1px solid #3A3E46;transition:color .15s,border-color .15s}
.foot-cp a:hover{color:var(--rouge);border-color:var(--rouge)}
.foot-mark{position:absolute;left:0;right:0;bottom:18px;top:auto;text-align:center;font-family:'Barlow Logo',sans-serif;font-style:italic;font-weight:900;font-size:clamp(2.4rem,13vw,8rem);line-height:.8;letter-spacing:.02em;color:transparent;-webkit-text-stroke:1.5px #23272E;white-space:nowrap;pointer-events:none;z-index:1}
.foot-mark b{-webkit-text-stroke:1.5px #3A1613}
@media(max-width:900px){.foot-grid{grid-template-columns:1fr 1fr;gap:34px}}
@media(max-width:600px){
  .prefooter-card{height:auto;min-height:360px}
  .prefooter-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 32%;opacity:1;right:auto;top:auto;transform:none}
  .prefooter-voile{background:linear-gradient(180deg,rgba(22,24,29,0) 0%,rgba(22,24,29,.10) 22%,rgba(22,24,29,.92) 44%,#16181D 64%)}
  .prefooter-in{position:relative;left:auto;width:auto;max-width:none;padding:150px 26px 34px;justify-content:flex-end;gap:14px;align-items:center;text-align:center}
  .prefooter-cta{justify-content:center}
  .prefooter-in .kick-str{justify-content:center}
  .foot-grid{grid-template-columns:1fr;gap:30px}
  .foot-legal{flex-direction:column;align-items:flex-start;gap:12px}
}

/* ==================== révélations ==================== */
.rev{opacity:0;transform:translateY(26px);transition:opacity .6s ease,transform .6s ease}
.rev.vu{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rev{opacity:1;transform:none}}

/* ==================== responsive ==================== */
@media (max-width:1040px){
  .s2-grid{grid-template-columns:1fr;gap:20px}
  .s2-colle{position:static;display:flex;align-items:baseline;gap:26px}
  .s2-colle .grand-num{font-size:5rem}
  .s2-colle .grand-num b{display:none}
  .ligne-claire{grid-template-columns:1fr;gap:34px}
  .spec-l{grid-template-columns:1fr;gap:4px}
  .spec-l p{grid-column:1}
}
@media (max-width:1010px){nav.main,.nav-tel{display:none}}
@media (max-width:760px){
  .scene{padding:84px 0}
  nav.main,.nav-tel,header .btn,.burger,.menu-mobile{display:none}
  .nav-in{justify-content:flex-start;gap:0}
  .brand img{height:34px;width:105px;object-fit:cover;object-position:center}
  .s1-in{padding:110px 28px 44px}
  .s1 .chrome{top:86px}
  .s1 .chrome span:last-child{display:none}
  .hint-verre{position:static;writing-mode:horizontal-tb;margin:18px 0 0;order:3}
  .hint-verre::before{width:26px;height:1px}
  .deux{grid-template-columns:1fr}
  .assistant .corps{padding:32px 24px 30px}
  .vil{grid-template-columns:44px 1fr auto;row-gap:2px}
  .vil .dep{grid-column:2}
  .vil .fl{grid-row:1}
  .faq summary{grid-template-columns:44px 1fr;gap:16px;padding-right:44px}
  .faq .rep{padding-left:60px}
  .foot-grid{grid-template-columns:1fr 1fr;gap:36px}
  .scene-tete{flex-direction:column;gap:10px}
}
@media (max-width:430px){.foot-grid{grid-template-columns:1fr}}
.tuiles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.tuile{display:flex;flex-direction:column;gap:8px;padding:22px 20px;border:1px solid var(--lignes);
  border-radius:12px;background:var(--carbone2);transition:border-color .18s,transform .18s}
.tuile:hover{border-color:var(--cyan);transform:translateY(-2px)}
.tuile b{font-family:var(--disp);font-weight:700;font-size:.95rem;line-height:1.3}
.tuile span{color:var(--gris);font-size:.86rem;line-height:1.5}
.offre-bande .scene-tete{margin-bottom:34px}
.presta-ligne{font-family:var(--mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--gris-c);margin:-26px 0 44px}
.prestas{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.presta{display:flex;flex-direction:column;gap:10px;padding:26px 22px;border:1px solid var(--lignes-c);
  border-radius:12px;background:#FFFDF7}
.presta svg{width:44px;height:44px;stroke:var(--encre);stroke-width:2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.presta h3{font-size:1.02rem}
.presta p{color:var(--gris-c);font-size:.9rem;line-height:1.55;flex:1}
.presta-cta{font-family:var(--mono);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--encre)}
.presta-cta:hover{color:var(--rouge)}
@media(max-width:960px){.tuiles,.prestas{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.tuiles,.prestas{grid-template-columns:1fr}}
.etiquette-wrap{display:flex;flex-direction:column;align-items:center;gap:30px;margin-bottom:64px}
.etiquette{max-width:680px;width:100%;background:#fff;border:1px solid var(--lignes);border-radius:6px;
  padding:34px 36px 26px;transform:rotate(-1.6deg);
  box-shadow:0 14px 40px rgba(20,17,14,.14),0 3px 10px rgba(20,17,14,.10)}
.et-rouge{background:var(--rouge);color:#fff;padding:26px 28px 22px;border-radius:4px;
  display:flex;flex-direction:column;gap:2px}
.et-rouge .et-l1{font-family:var(--disp);font-weight:700;font-size:clamp(1.7rem,5.2vw,3rem);
  line-height:1.04;text-transform:uppercase;letter-spacing:-.01em}
.et-rouge .et-ou{margin-top:14px;font-family:var(--disp);font-weight:500;font-size:clamp(1rem,3vw,1.5rem);text-transform:uppercase}
.et-rouge .et-ou b{font-weight:800;font-size:clamp(1.5rem,4.6vw,2.5rem)}
.et-rouge .et-ou i{font-style:normal;font-size:.7em;vertical-align:super}
.et-noir{margin-top:20px;display:flex;flex-direction:column}
.et-noir span{font-family:var(--disp);font-weight:700;font-size:clamp(1.15rem,3.6vw,2rem);
  line-height:1.12;text-transform:uppercase;color:var(--encre)}
.et-note{margin-top:16px;font-family:var(--mono);font-size:.62rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--gris);max-width:none}
.et-cta{transform:rotate(0);font-size:.82rem;padding:19px 32px;font-weight:700}
@media (max-width:620px){.etiquette{padding:22px 20px 18px;transform:rotate(-1.2deg)}
  .et-rouge{padding:20px 18px 16px}.etiquette-wrap{margin-bottom:48px}}
dialog#rappel-modale{max-width:440px}
dialog#rappel-modale .fin-ok{display:none}
dialog#rappel-modale.fini #form-rappel{display:none}
dialog#rappel-modale.fini .fin-ok{display:block}
.geste-sous{font-size:1.06rem;color:var(--gris);margin:-34px 0 44px;max-width:52ch}
.geste-sous b{color:var(--porcelaine);font-weight:600}
.geste-boost{display:inline;font-weight:700;font-size:1.14em;color:var(--encre);
  background:linear-gradient(transparent 58%,rgba(218,41,28,.18) 58%);
  -webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0;line-height:1.75}
.geste-boost b{color:var(--rouge);font-weight:800}
.etoile-note{width:100%;margin-top:12px;font-size:.82rem;color:rgba(23,19,16,.7);max-width:none;line-height:1.5}
.etoiles{font-size:1.3rem;letter-spacing:.2em;color:var(--rouge);margin-bottom:14px}
.assureurs{margin-top:26px;font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--gris)}
.geste-sous .urgence{display:inline-block;margin-top:12px;font-size:.92rem;font-weight:600;color:var(--porcelaine)}
.geste-sous .urgence::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--rouge);margin-right:8px;vertical-align:1px}
@media (max-width:620px){
  .s1 h1{margin-bottom:14px}
  .s1 h1 .fin{margin-bottom:12px}
  .s1 .sous p{font-size:1rem}
  .s1 .sous .promo-200{padding:11px 16px;font-size:.9rem}
}
.note-creneau{margin-top:12px;font-size:.82rem;color:var(--gris)}
.note-creneau b{color:var(--porcelaine)}
.mail-note{margin-top:9px;font-size:.86rem;line-height:1.5;padding:11px 13px;border-radius:9px;
  background:#FFF7E8;border:1px solid #E8C980;color:var(--porcelaine)}
.mail-note.ko{background:#FDECEA;border-color:#F0A69C}
.mail-note b{font-weight:700}
.mail-fix{display:block;margin-top:9px;background:var(--rouge);color:#fff;border:0;border-radius:99px;
  padding:9px 18px;font-family:var(--sans);font-size:.82rem;font-weight:700;cursor:pointer}
.mail-fix:hover{background:#B22015}
.gagne[hidden]{display:none}
.gagne{display:flex;flex-direction:column;gap:8px;margin-top:22px;padding:24px 26px;border-radius:14px;
  background:#141210;color:#fff;border-left:3px solid var(--rouge);animation:gagneFondu .28s ease-out}
.gagne-t{font-family:var(--disp);font-weight:800;font-size:clamp(1.5rem,5vw,2.1rem);line-height:1.1}
.gagne-s{font-size:.98rem;line-height:1.55;color:rgba(255,255,255,.85)}
.gagne-s b{color:#fff}
.gagne-z{margin-top:4px;font-family:var(--disp);font-weight:700;font-size:1.25rem}
.gagne-z b{color:#FFB020;font-size:1.6em}
@keyframes gagneFondu{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.acquis{margin:-4px 0 18px;padding:11px 16px;border-radius:99px;background:#F1F7F2;border:1px solid #BFDCC6;
  color:#1B7A3D;font-weight:700;font-size:.9rem;max-width:none}
@media (prefers-reduced-motion: reduce){.gagne{animation:none}}
.wordmark{font-family:'Barlow Logo',Archivo,sans-serif;font-style:italic;font-weight:900;
  letter-spacing:.01em;font-size:1.5rem;line-height:1;display:inline-flex;align-items:baseline}
.wordmark .wm-n{color:#141210}
.wordmark .wm-r{color:var(--rouge)}
footer .wordmark .wm-n{color:#fff}

/* ==================== HERO V2 (handoff hifi) ==================== */
@font-face{font-family:'Space Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/mobglass/spacemono-400.woff2') format('woff2')}
@font-face{font-family:'Space Mono';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/mobglass/spacemono-700.woff2') format('woff2')}
:root{--sm:"Space Mono",ui-monospace,Menlo,monospace}
header.nav{background:#FFFFFF;border-bottom:1px solid #EEE9E4}
.nav-in{padding:18px 56px;max-width:none}
nav.main ol a{font-family:var(--sm);font-size:13px;letter-spacing:1.5px;text-transform:uppercase;color:#16181D}
.nav-tel{font-family:var(--sm);font-size:13px;letter-spacing:1.5px;font-weight:700;color:#16181D}
header.nav .btn{font-family:var(--sm);font-size:13px;letter-spacing:1.5px;text-transform:uppercase;background:#DA291C;border-radius:8px;padding:14px 24px;transition:background .15s}
header.nav .btn:hover{background:#B92217}
.hero2{position:relative;height:780px;background:#16181D;overflow:hidden}
.hero2-img{position:absolute;right:-120px;top:0;height:780px;width:auto;max-width:none}
.hero2-voile{position:absolute;inset:0;background:linear-gradient(93deg,#FFFFFF 0%,#FFFFFF 36%,rgba(255,255,255,.88) 48%,rgba(255,255,255,0) 72%)}
.hero2-col{position:absolute;left:56px;top:0;bottom:0;width:640px;display:flex;flex-direction:column;justify-content:center;gap:26px;z-index:2}
.hero2-kicker{display:flex;align-items:center;gap:12px;font-family:var(--sm);font-size:13px;letter-spacing:2.5px;text-transform:uppercase;color:#16181D;max-width:none}
.hero2-kicker .trait{width:34px;height:2px;background:#DA291C;flex:none}
.hero2 h1{font-family:var(--sans);font-weight:900;font-stretch:105%;font-size:3rem;line-height:.98;letter-spacing:-1px;color:#16181D;margin:0;max-width:none}
.hero2 h1 .rge{color:#DA291C}
.hero2 h1 .mot{white-space:nowrap}
.hero2 h1 .ast{font-size:24px;vertical-align:super;color:#9A948E;border:0}
.hero2-sous{font-size:19px;font-weight:500;line-height:1.5;color:#3D4450;max-width:480px}
.hero2-sous strong{color:#16181D}
.hero2-ctas{display:flex;gap:14px;flex-wrap:wrap}
.cta2{font-family:var(--sm);font-size:14px;letter-spacing:1.5px;text-transform:uppercase;background:#16181D;color:#fff;padding:18px 28px;border-radius:8px;transition:background .15s,color .15s}
.cta2:hover{background:#DA291C}
.cta2-sec{background:#FFFFFF;color:#16181D;border:2px solid #16181D;padding:16px 26px}
.cta2-sec:hover{background:#16181D;color:#fff}
.hero2-rea{font-family:var(--sm);font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#5B6472;display:flex;gap:18px;flex-wrap:wrap;max-width:none}
.hero2-rea span{color:#DA291C}
.hero2-badge{position:absolute;right:56px;bottom:28px;z-index:2;display:flex;align-items:center;gap:10px;background:rgba(22,24,29,.82);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:12px 18px;border-radius:10px;font-family:var(--sm);font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#fff;max-width:none}
.hero2-badge .pastille{width:8px;height:8px;border-radius:50%;background:#4CC36B;flex:none}
.bande-assur{background:#16181D;padding:26px 56px;display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap}
.bande-assur .ba-lab{font-family:var(--sm);font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#8B93A0}
.bande-assur .ba-noms{display:flex;gap:28px;flex-wrap:wrap}
.bande-assur .ba-noms b{font-family:var(--sans);font-weight:700;font-size:15px;color:#C9CDD4;white-space:nowrap}
.note-legale{background:#fff;padding:14px 56px 40px;max-width:none;margin:0}
.note-legale span{display:block;font-size:13px;color:#9A948E;max-width:720px}
@media (max-width:1100px){
  .nav-in{padding:16px 24px}
  .hero2{height:auto;padding:110px 24px 0;background:#fff}
  .hero2-img{position:static;height:auto;width:calc(100% + 48px);max-width:calc(100% + 48px);margin:30px -24px 0;display:block}
  .hero2-voile{display:none}
  .hero2-col{position:static;width:auto}
  .hero2 h1{font-size:clamp(1.9rem,7.5vw,44px);letter-spacing:-1px}
  .hero2 h1 .ast{font-size:1rem}
  .hero2-badge{display:none}
  .bande-assur,.note-legale{padding-left:24px;padding-right:24px}
}


              .mg-adr{position:relative}
              #mg-sugg{position:absolute;left:0;right:0;top:100%;background:#fff;border:1px solid #d9d5cd;border-radius:0 0 10px 10px;box-shadow:0 10px 24px rgba(0,0,0,.14);z-index:40;max-height:236px;overflow:auto;display:none}
              #mg-sugg div{padding:11px 13px;cursor:pointer;font-size:14px;color:#1c1c1c;border-top:1px solid #f0ede6}
              #mg-sugg div:first-child{border-top:0}
              #mg-sugg div:hover,#mg-sugg div.on{background:#f6f4ef}
              #mg-zone{margin-top:9px;font-size:14px;line-height:1.35;display:none;padding:10px 13px;border-radius:9px}
              #mg-zone.ok{display:block;background:#e9f8ef;border:1px solid #bfe6cd;color:#0a5c2a}
              #mg-zone.no{display:block;background:#fbeeee;border:1px solid #f0cccc;color:#8a1c22}
            

  #mgc-launch{position:fixed;right:22px;bottom:22px;width:62px;height:62px;border-radius:50%;
    background:#DA291C;border:none;cursor:pointer;box-shadow:0 10px 28px rgba(218,41,28,.42);
    display:flex;align-items:center;justify-content:center;z-index:9998;transition:transform .18s;padding:0}
  #mgc-launch:hover{transform:scale(1.06)}
  #mgc-launch svg{width:28px;height:28px;fill:#fff}
  #mgc-launch .mgc-dot{position:absolute;top:-3px;right:-3px;width:16px;height:16px;border-radius:50%;
    background:#1fae54;border:2px solid #fff}
  #mgc-panel{position:fixed;right:22px;bottom:22px;width:380px;max-width:calc(100vw - 24px);
    height:588px;max-height:calc(100vh - 40px);background:#fff;border-radius:18px;
    box-shadow:0 24px 60px rgba(20,17,14,.28);display:none;flex-direction:column;overflow:hidden;
    z-index:9999;animation:mgc-in .22s ease;
    font-family:"Archivo","Helvetica Neue",Arial,sans-serif}
  @keyframes mgc-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
  #mgc-panel.mgc-open{display:flex}
  .mgc-head{background:#DA291C;color:#fff;padding:15px 16px;display:flex;align-items:center;gap:11px}
  .mgc-head .mgc-av{width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.18);
    display:flex;align-items:center;justify-content:center;flex:0 0 auto}
  .mgc-head .mgc-av svg{width:20px;height:20px;fill:#fff}
  .mgc-head .mgc-t{font-weight:700;font-size:.98rem;line-height:1.1}
  .mgc-head .mgc-s{font-size:.72rem;opacity:.92;display:flex;align-items:center;gap:5px;margin-top:2px}
  .mgc-head .mgc-s::before{content:"";width:7px;height:7px;border-radius:50%;background:#8fe6ab}
  .mgc-head .mgc-cb{margin-left:auto;background:rgba(255,255,255,.16);border:none;color:#fff;cursor:pointer;
    width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 auto;transition:background .15s}
  .mgc-head .mgc-cb:hover{background:rgba(255,255,255,.30)}
  .mgc-head .mgc-cb svg{width:17px;height:17px;fill:#fff}
  .mgc-head .mgc-x{background:none;border:none;color:#fff;cursor:pointer;font-size:22px;
    line-height:1;opacity:.85;padding:4px}
  .mgc-head .mgc-x:hover{opacity:1}
  .mgc-body{flex:1;overflow-y:auto;padding:16px 14px;background:#F4F1EA}
  .mgc-msg{max-width:82%;padding:10px 13px;border-radius:14px;font-size:.9rem;line-height:1.42;
    margin-bottom:10px;white-space:pre-wrap;word-wrap:break-word}
  .mgc-bot{background:#fff;color:#141210;border:1px solid rgba(20,17,14,.14);border-bottom-left-radius:5px}
  .mgc-user{background:#DA291C;color:#fff;margin-left:auto;border-bottom-right-radius:5px}
  .mgc-chips{display:flex;flex-wrap:wrap;gap:7px;margin:2px 0 12px}
  .mgc-chip{background:#fff;border:1px solid rgba(20,17,14,.14);color:#141210;
    padding:8px 12px;border-radius:20px;font-size:.8rem;cursor:pointer;transition:.14s;
    font-family:inherit;line-height:1.2}
  .mgc-chip:hover{border-color:#DA291C;color:#DA291C}
  .mgc-chip.mgc-cta{background:#DA291C;border-color:#DA291C;color:#fff;font-weight:600}
  .mgc-chip.mgc-cta:hover{background:#c0241a;color:#fff}
  .mgc-chip.mgc-ann{color:#5C554D}
  .mgc-chip.mgc-ann:hover{border-color:#5C554D;color:#141210}
  .mgc-typing{display:inline-flex;gap:4px;padding:12px 14px}
  .mgc-typing i{width:7px;height:7px;border-radius:50%;background:#b8b2a8;animation:mgc-b 1s infinite}
  .mgc-typing i:nth-child(2){animation-delay:.15s}.mgc-typing i:nth-child(3){animation-delay:.3s}
  @keyframes mgc-b{0%,60%,100%{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}
  .mgc-foot{border-top:1px solid rgba(20,17,14,.14);padding:10px;display:flex;gap:8px;background:#fff}
  .mgc-foot input{flex:1;border:1px solid rgba(20,17,14,.14);border-radius:11px;padding:11px 13px;
    font-size:.9rem;font-family:inherit;outline:none;color:#141210;background:#fff}
  .mgc-foot input:focus{border-color:#DA291C}
  .mgc-foot button{background:#DA291C;border:none;border-radius:11px;width:44px;cursor:pointer;
    display:flex;align-items:center;justify-content:center;flex:0 0 auto}
  .mgc-foot button:disabled{opacity:.5;cursor:default}
  .mgc-foot button svg{width:19px;height:19px;fill:#fff}
  .mgc-legal{font-size:.66rem;color:#5C554D;text-align:center;padding:0 0 8px;background:#fff}
  @media (max-width:760px){
    #mgc-launch{bottom:74px}          /* au-dessus de la barre CTA mobile (.sticky-cta, 56px) */
    #mgc-panel{bottom:74px;max-height:calc(100vh - 96px)}
  }
