@font-face{font-family:"Jost";font-style:normal;font-weight:300 700;font-display:swap;src:url(/assets/fonts/jost-latin.woff2) format("woff2")}
:root{
  --night:#1b1c21;
  --night-2:#141519;
  --night-3:#2a2c33;
  --paper:#ece8e1;
  --paper-2:#e3ded5;
  --card:#ffffff;
  --ink:#1b1c21;
  --ink-2:#2f3239;
  --ink-3:#585c65;
  --light:#f4f2ee;
  --light-2:rgba(244,242,238,.86);
  --light-3:rgba(244,242,238,.64);
  --bronze:#a86b3c;
  --bronze-soft:#e6b98c;
  --line:#d9d3c8;
  --fr-blue:#2c4260;
  --fr-red:#8e2439;
  --max:1200px;
  --font:"Jost",system-ui,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font);background:var(--paper);color:var(--ink);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit}
button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}
.wrap{max-width:var(--max);margin:0 auto;padding:0 16px}
@media(min-width:768px){.wrap{padding:0 32px}}
:focus-visible{outline:2px solid var(--bronze-soft);outline-offset:3px}

.dark{background:var(--night);color:var(--light);position:relative;overflow:hidden}
.grain::after{content:"";position:absolute;inset:0;opacity:.07;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.stripes{position:absolute;width:140px;height:140px;pointer-events:none;background:linear-gradient(45deg,transparent 46%,rgba(244,242,238,.8) 46%,rgba(244,242,238,.8) 48.5%,transparent 48.5%,transparent 56%,rgba(244,242,238,.8) 56%,rgba(244,242,238,.8) 58.5%,transparent 58.5%)}
.stripes.tr{top:0;right:0;clip-path:polygon(0 0,100% 0,100% 100%)}
.stripes.bl{bottom:0;left:0;clip-path:polygon(0 0,0 100%,100% 100%)}
.tricolor{height:3px;background:linear-gradient(90deg,var(--fr-blue) 0 33.33%,var(--light) 33.33% 66.66%,var(--fr-red) 66.66%)}

/* En-tête */
.top{position:fixed;inset:0 0 auto;z-index:30;transition:background .3s,box-shadow .3s}
.top.scrolled{background:rgba(27,28,33,.82);backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(244,242,238,.08)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;height:76px;color:var(--light)}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.logo .s{width:34px;height:34px;border:2px solid currentColor;border-radius:10px;display:grid;place-items:center;font-weight:600;font-size:19px}
.logo .wm b{display:block;font-weight:600;font-size:17px;letter-spacing:.32em;line-height:1}
.logo .wm span{display:block;font-weight:300;font-size:10.5px;letter-spacing:.56em;margin-top:4px;line-height:1}
.nav{display:none;gap:32px;font-size:16px;color:var(--light-2)}
.nav a{text-decoration:none;transition:color .2s}
.nav a:hover{color:var(--light)}
@media(min-width:960px){.nav{display:flex}}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:50px;padding:0 26px;border-radius:999px;font-weight:500;font-size:16px;text-decoration:none;transition:transform .2s,box-shadow .2s,background .2s}
.btn:hover{transform:translateY(-1px)}
.btn .arrow{transition:transform .2s}
.btn:hover .arrow{transform:translateX(3px)}
.btn.light{background:var(--light);color:var(--night);box-shadow:0 12px 40px -14px rgba(230,185,140,.75)}
.btn.light:hover{box-shadow:0 16px 50px -12px rgba(230,185,140,.95)}
.btn.ghost{color:var(--light);box-shadow:inset 0 0 0 1px rgba(244,242,238,.3)}
.btn.ghost:hover{box-shadow:inset 0 0 0 1px var(--bronze-soft)}
.btn.inkb{background:var(--night);color:var(--light)}
.btn.small{min-height:44px;padding:0 20px;font-size:15px}

/* Accueil */
.hero{background:radial-gradient(70% 55% at 65% 80%,rgba(196,140,92,.42),transparent 70%),linear-gradient(160deg,var(--night-3) 0%,var(--night) 55%,var(--night-2) 100%);padding:132px 0 0}
.hero .wrap{position:relative;z-index:1}
h1{font-size:clamp(42px,7vw,90px);line-height:1;letter-spacing:-.025em;font-weight:500;max-width:14ch}
h1 em{font-style:normal;color:var(--bronze-soft)}
.lead{margin-top:24px;font-size:clamp(18px,1.9vw,22px);font-weight:400;color:var(--light-2);max-width:44ch}
.thread{margin:28px 0 0}
.thread svg{display:block;width:100%;height:auto;overflow:visible}
.thread-legend{display:flex;justify-content:space-between;font-size:14px;color:var(--light-3);margin-top:-4px}
.thread-legend .r{transition:color .6s}
.thread-legend .r.on{color:var(--bronze-soft)}

.diag{margin:26px 0 64px;border-radius:24px;background:rgba(20,21,25,.5);box-shadow:inset 0 0 0 1px rgba(244,242,238,.1),0 40px 80px -40px rgba(0,0,0,.6);backdrop-filter:blur(16px)}
.diag-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px;border-bottom:1px solid rgba(244,242,238,.08);font-size:15px;color:var(--light-3)}
@media(min-width:768px){.diag-head{padding:14px 40px}}
.steps{display:flex;gap:6px}
.steps i{display:block;width:30px;height:3px;border-radius:3px;background:rgba(244,242,238,.15);transition:background .4s}
.steps i.done{background:var(--bronze-soft)}
.reset{font-size:15px;color:var(--light-2);text-decoration:underline;text-underline-offset:3px;visibility:hidden;min-height:44px}
.reset.show{visibility:visible}
.diag-body{padding:26px 20px 30px}
@media(min-width:768px){.diag-body{padding:36px 40px 40px}}
.q{font-size:clamp(24px,2.8vw,32px);font-weight:500;letter-spacing:-.015em;line-height:1.15}
.hint{color:var(--light-3);font-size:16px;margin-top:4px}
.chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.chip{min-height:48px;padding:0 22px;border-radius:999px;box-shadow:inset 0 0 0 1px rgba(244,242,238,.2);font-size:17px;transition:background .2s,box-shadow .2s,transform .2s}
.chip:hover{background:rgba(230,185,140,.14);box-shadow:inset 0 0 0 1px var(--bronze-soft);transform:translateY(-1px)}
.pains{display:grid;gap:10px;margin-top:22px}
@media(min-width:768px){.pains{grid-template-columns:repeat(3,1fr)}}
.pain{text-align:left;border-radius:16px;padding:18px 20px 20px;box-shadow:inset 0 0 0 1px rgba(244,242,238,.14);transition:background .2s,box-shadow .2s,transform .2s}
.pain:hover{background:rgba(230,185,140,.1);box-shadow:inset 0 0 0 1px var(--bronze-soft);transform:translateY(-2px)}
.pain strong{display:block;font-size:19px;font-weight:500;line-height:1.3}
.pain span{display:block;color:var(--light-3);font-size:15px;margin-top:4px}
.other{display:flex;flex-direction:column;gap:12px;margin-top:22px;max-width:640px}
.other textarea{font:inherit;color:var(--light);background:rgba(244,242,238,.05);border:1px solid rgba(244,242,238,.18);border-radius:16px;padding:14px 16px;min-height:110px;resize:vertical}
.other textarea::placeholder{color:var(--light-3)}
.result-title{font-size:clamp(24px,3vw,36px);font-weight:500;letter-spacing:-.015em;line-height:1.12;max-width:28ch}
.result-title em{font-style:normal;color:var(--bronze-soft)}
.compare{display:grid;gap:12px;margin-top:26px}
@media(min-width:860px){.compare{grid-template-columns:1fr 1fr}}
.col{border-radius:16px;padding:22px}
.col.before{box-shadow:inset 0 0 0 1px rgba(244,242,238,.1)}
.col.after{background:linear-gradient(135deg,rgba(230,185,140,.2),rgba(230,185,140,.07));box-shadow:inset 0 0 0 1px rgba(230,185,140,.35)}
.col h3{font-size:15px;font-weight:600;color:var(--light-2)}
.col.after h3{color:var(--bronze-soft)}
.col ol{list-style:none;margin-top:12px;display:grid;gap:10px;counter-reset:s}
.col li{display:flex;gap:12px;align-items:flex-start;font-size:17px;line-height:1.4;opacity:0;transform:translateY(6px);animation:in .45s forwards}
.col.before li{color:var(--light-2);text-decoration:line-through;text-decoration-color:rgba(244,242,238,.25)}
.col li::before{counter-increment:s;content:counter(s);flex:none;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:500;box-shadow:inset 0 0 0 1px rgba(244,242,238,.25);margin-top:-1px;text-decoration:none}
.col.after li::before{background:var(--bronze-soft);color:var(--night);box-shadow:none}
@keyframes in{to{opacity:1;transform:none}}
.build{margin-top:22px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;padding-top:22px;border-top:1px solid rgba(244,242,238,.08)}
.build p{max-width:56ch;color:var(--light-2);font-size:17px}
.build p b{color:var(--light);font-weight:500}
.fade{animation:fade .4s ease both}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Sections */
section{padding:104px 0;position:relative}
#offre,#methode{background:var(--paper)}
#offre::before{content:"";position:absolute;inset:0;background:radial-gradient(50% 60% at 90% 0%,rgba(196,140,92,.16),transparent 70%);pointer-events:none}
#offre .wrap{position:relative}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:600;color:var(--bronze)}
.eyebrow::before{content:"";width:28px;height:2px;background:currentColor;border-radius:2px}
.dark .eyebrow{color:var(--bronze-soft)}
h2{font-size:clamp(32px,4.4vw,54px);line-height:1.04;letter-spacing:-.02em;font-weight:600;margin-top:14px;max-width:19ch}
.intro{margin-top:18px;font-size:20px;font-weight:400;color:var(--ink-2);max-width:52ch}
.dark .intro{color:var(--light-2)}

.offers{display:grid;gap:16px;margin-top:48px}
@media(min-width:960px){.offers{grid-template-columns:repeat(3,1fr)}}
.offer{background:var(--card);border-radius:24px;padding:12px 12px 28px;box-shadow:0 1px 0 rgba(27,28,33,.04),0 30px 50px -40px rgba(27,28,33,.45);display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s}
.offer:hover{transform:translateY(-4px);box-shadow:0 1px 0 rgba(27,28,33,.04),0 40px 60px -40px rgba(27,28,33,.55)}
.offer > h3,.offer > p,.offer > ul{margin-left:16px;margin-right:16px}
.vis{position:relative;height:190px;border-radius:16px;margin-bottom:26px;overflow:hidden;background:radial-gradient(80% 90% at 70% 110%,rgba(196,140,92,.55),transparent 70%),linear-gradient(160deg,#2a2c33,#17181c);color:var(--light);font-size:12px}
.vis .panel{position:absolute;background:rgba(244,242,238,.07);box-shadow:inset 0 0 0 1px rgba(244,242,238,.14);border-radius:12px;backdrop-filter:blur(6px)}
.vis .bar{height:7px;border-radius:4px;background:rgba(244,242,238,.2)}
.vis .pill{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--bronze-soft);color:var(--night);font-weight:500;font-size:11.5px}
.vis .muted{color:rgba(244,242,238,.7)}
.v-devis{left:22px;right:22px;top:22px;bottom:-12px;padding:14px 16px;display:grid;gap:9px;align-content:start}
.v-devis .hd{display:flex;justify-content:space-between;align-items:center;font-weight:500;font-size:13px}
.v-devis .ln{display:grid;grid-template-columns:1fr 46px;gap:10px;align-items:center}
.v-devis .tt{display:flex;justify-content:space-between;align-items:center;margin-top:4px;padding-top:9px;border-top:1px solid rgba(244,242,238,.14)}
.v-phone{left:50%;transform:translateX(-50%);top:18px;width:124px;bottom:-24px;border-radius:20px;padding:12px 10px;display:grid;gap:7px;align-content:start}
.v-phone .notch{width:34px;height:5px;border-radius:4px;background:rgba(244,242,238,.25);margin:0 auto 4px}
.v-phone .hero-b{height:46px;border-radius:9px;background:linear-gradient(135deg,rgba(230,185,140,.55),rgba(230,185,140,.15))}
.v-phone .cta{margin-top:4px;text-align:center;padding:6px 0;border-radius:999px;background:var(--bronze-soft);color:var(--night);font-weight:500;font-size:11px}
.v-search{left:20px;right:20px;top:20px;padding:10px 12px;display:flex;align-items:center;gap:8px;font-size:12.5px}
.v-search::before{content:"";width:11px;height:11px;border:2px solid rgba(244,242,238,.6);border-radius:50%;flex:none}
.v-res{left:20px;right:20px;top:66px;padding:10px 12px;display:grid;gap:3px}
.v-res b{font-weight:500;font-size:13px;color:var(--bronze-soft)}
.v-ai{left:44px;right:20px;top:128px;padding:9px 12px;font-size:11.5px;line-height:1.4;border-radius:12px 12px 12px 4px}
.v-ai strong{color:var(--bronze-soft);font-weight:500}
.offer h3{font-size:26px;font-weight:600;letter-spacing:-.01em;line-height:1.15}
.offer p{color:var(--ink-2);margin-top:12px;font-size:17.5px;line-height:1.55}
.offer ul{list-style:none;margin-top:auto;padding-top:22px;display:grid;gap:8px;font-size:16.5px;font-weight:500}
.offer ul li{display:flex;gap:10px;align-items:center;padding-top:8px;border-top:1px solid var(--line)}
.offer ul li::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--bronze)}

.proof{background:radial-gradient(60% 60% at 80% 40%,rgba(196,140,92,.28),transparent 70%),var(--night)}
.proof .wrap{position:relative;z-index:1}
.proof-grid{display:grid;gap:44px;margin-top:48px;align-items:center}
@media(min-width:960px){.proof-grid{grid-template-columns:5fr 6fr}}
.proof p{color:var(--light-2);font-size:19px;font-weight:400}
.proof p b{color:var(--light);font-weight:500}
.facts{list-style:none;margin-top:28px;display:grid}
.facts li{padding:16px 0;border-top:1px solid rgba(244,242,238,.1)}
.facts li b{display:block;font-weight:500;font-size:19px}
.facts li span{color:var(--light-3);font-size:16px}
.screen{border-radius:18px;background:#23252b;padding:14px;box-shadow:inset 0 0 0 1px rgba(244,242,238,.08),0 50px 100px -40px rgba(196,140,92,.55)}
.screen-bar{display:flex;gap:6px;margin-bottom:12px}
.screen-bar i{width:9px;height:9px;border-radius:50%;background:#3a3d45}
.screen-body{display:grid;grid-template-columns:110px 1fr;gap:12px;min-height:300px}
.sk{background:#2e3037;border-radius:8px}
.screen-side{display:grid;gap:8px;align-content:start}
.screen-side .sk{height:26px}
.screen-side .sk.on{background:rgba(230,185,140,.55)}
.screen-main{display:grid;gap:12px;grid-template-rows:auto 1fr}
.screen-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.screen-kpi .sk{height:64px}
.screen-rows{display:grid;gap:8px;align-content:start}
.screen-rows .sk{height:30px}
.note{font-size:14px;color:var(--light-3);margin-top:12px}

.method{position:relative;margin-top:56px;display:grid}
.method-line{position:absolute;left:39px;top:46px;bottom:40px;width:2px;background:linear-gradient(var(--line),var(--bronze))}
.stage{position:relative;padding:0 0 36px 50px}
.stage::before{content:"";position:absolute;left:1px;top:3px;width:22px;height:22px;border-radius:50%;background:var(--night);box-shadow:0 0 0 4px var(--paper),0 0 0 5px var(--bronze)}
.stage:last-child::before{background:var(--bronze)}
.method{background:var(--card);border-radius:24px;padding:36px 28px 8px;box-shadow:0 30px 50px -40px rgba(27,28,33,.45)}
@media(min-width:960px){.method{padding:40px 40px 36px}.method-line{left:40px!important;right:40px!important;top:50px!important}.stage::before{top:0!important}}
.stage h3{font-size:26px;font-weight:600;letter-spacing:-.01em}
.stage p{color:var(--ink-2);max-width:48ch;margin-top:6px;font-size:18px}
@media(min-width:960px){
  .method{grid-template-columns:repeat(3,1fr);gap:40px}
  .method-line{left:0;right:0;top:10px;bottom:auto;width:auto;height:2px;background:linear-gradient(90deg,var(--line),var(--bronze))}
  .stage{padding:52px 0 0}
  .stage::before{left:0;top:1px}
}

.people{display:grid;gap:10px;margin-top:32px}
.person{display:flex;flex-wrap:wrap;gap:16px;align-items:center;padding:16px 18px;border-radius:18px;background:rgba(244,242,238,.06);box-shadow:inset 0 0 0 1px rgba(244,242,238,.12)}
.person > div:nth-child(2){flex:1;min-width:140px}
.tel{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:999px;background:var(--light);color:var(--night);font-weight:500;text-decoration:none;font-size:16px}
.tel:hover{background:var(--bronze-soft)}
.avatar{flex:none;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,var(--bronze-soft),var(--bronze));display:grid;place-items:center;font-weight:600;color:var(--night);font-size:18px}
.person b{display:block;font-size:19px;font-weight:500}
.person span{color:var(--light-3);font-size:15.5px}
.place{margin-top:16px;color:var(--light-3);font-size:16px}

.contact{background:radial-gradient(60% 70% at 20% 90%,rgba(196,140,92,.35),transparent 70%),linear-gradient(200deg,var(--night-3),var(--night) 60%)}
.contact .wrap{position:relative;z-index:1}
.contact-grid{display:grid;gap:44px}
@media(min-width:960px){.contact-grid{grid-template-columns:1fr 1fr;align-items:start}}
.promise{list-style:none;display:grid;gap:12px;margin-top:28px}
.promise li{display:flex;gap:12px;color:var(--light-2);font-size:18px}
.promise li::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--bronze-soft);margin-top:11px}
form{display:grid;gap:14px;background:#f7f5f1;color:var(--ink);border-radius:24px;padding:26px}
label{font-size:15px;font-weight:500;display:grid;gap:6px}
input,textarea{font:inherit;font-weight:400;font-size:17px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px 16px;min-height:50px;width:100%;color:var(--ink)}
textarea{min-height:120px;resize:vertical}
input:focus,textarea:focus{outline:2px solid var(--bronze);outline-offset:1px}
.form-note{font-size:14px;color:var(--ink-3)}

footer{background:var(--night-2);color:var(--light-3);font-size:15px}
footer .wrap{display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between;padding-top:36px;padding-bottom:44px}
footer a{text-decoration:none}
footer a:hover{color:var(--light)}


@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}html{scroll-behavior:auto}}

/* ---------- Audit express ---------- */
.audit{background:var(--paper)}
.audit-box{margin-top:36px;background:var(--card);border-radius:24px;padding:22px;box-shadow:0 30px 50px -40px rgba(27,28,33,.45)}
@media(min-width:768px){.audit-box{padding:32px}}
.audit-form{display:flex;flex-wrap:wrap;gap:10px;background:none;padding:0;border-radius:0}
.audit-form input{flex:1 1 260px;min-height:56px;font-size:18px;border-radius:999px;padding:0 22px;background:var(--paper);border:1px solid var(--line)}
.audit-form .btn{min-height:56px}
.audit-note{font-size:14.5px;color:var(--ink-3);margin-top:12px}
.audit-wait{display:flex;align-items:center;gap:14px;margin-top:22px;font-size:17px;color:var(--ink-2)}
.audit-wait i{width:22px;height:22px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--bronze);animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.audit-err{margin-top:18px;padding:14px 18px;border-radius:14px;background:#fbe9e4;color:#7a2a15;font-size:16.5px}
.scores{display:grid;gap:12px;margin-top:26px}
@media(min-width:760px){.scores{grid-template-columns:repeat(3,1fr)}}
.score{border-radius:18px;padding:18px 20px;background:var(--night);color:var(--light);display:flex;align-items:center;gap:16px}
.score svg{flex:none;width:64px;height:64px}
.score b{display:block;font-size:18px;font-weight:600}
.score span{font-size:14.5px;color:var(--light-3)}
.checks{margin-top:24px;display:grid;gap:8px}
.checks h3{font-size:20px;font-weight:600;margin:18px 0 4px}
.chk{display:grid;grid-template-columns:28px 1fr;gap:12px;padding:14px 16px;border-radius:14px;background:var(--paper)}
.chk .ic{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:15px;font-weight:700;color:#fff}
.chk.ok .ic{background:#3f7d4e}.chk.warn .ic{background:#c07a1c}.chk.bad .ic{background:#b23a2a}
.chk b{font-weight:600;font-size:17px}
.chk p{font-size:16px;color:var(--ink-2);margin-top:2px;line-height:1.5}
.chk .fix{font-size:15px;color:var(--bronze);margin-top:4px;font-weight:500}
.audit-cta{margin-top:24px;padding:22px;border-radius:18px;background:var(--night);color:var(--light);display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}
.audit-cta p{max-width:52ch;color:var(--light-2)}
.audit-cta p b{color:var(--light);font-weight:600}

/* ---------- FAQ ---------- */
.faq{margin-top:40px;display:grid;gap:10px}
.faq details{background:var(--card);border-radius:18px;box-shadow:0 20px 40px -36px rgba(27,28,33,.5)}
.faq summary{cursor:pointer;list-style:none;padding:20px 56px 20px 22px;font-size:19px;font-weight:600;position:relative;min-height:44px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);font-size:26px;font-weight:300;color:var(--bronze);transition:transform .2s}
.faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq .a{padding:0 22px 22px;color:var(--ink-2);font-size:17.5px;max-width:75ch}

/* ---------- Pages intérieures ---------- */
.page-hero{background:radial-gradient(70% 70% at 75% 90%,rgba(196,140,92,.4),transparent 70%),linear-gradient(160deg,var(--night-3) 0%,var(--night) 60%,var(--night-2) 100%);padding:140px 0 64px}
.page-hero .wrap{position:relative;z-index:1}
.page-hero h1{font-size:clamp(36px,5.4vw,68px);max-width:18ch}
.crumbs{font-size:14.5px;color:var(--light-3);margin-bottom:22px}
.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--light)}
.page-hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.prose{max-width:72ch}
.prose h2{font-size:clamp(28px,3.4vw,40px);margin-top:0}
.prose p{margin-top:16px;color:var(--ink-2);font-size:18.5px}
.prose ul{margin-top:16px;padding-left:0;list-style:none;display:grid;gap:10px}
.prose li{display:flex;gap:12px;color:var(--ink-2);font-size:18px}
.prose li::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:var(--bronze);margin-top:12px}
.prose a{color:var(--bronze);font-weight:500}
.cases{display:grid;gap:14px;margin-top:40px}
.case{background:var(--card);border-radius:24px;padding:26px;box-shadow:0 30px 50px -40px rgba(27,28,33,.45)}
.case h3{font-size:24px;font-weight:600}
.case .sub{color:var(--ink-3);margin-top:2px}
.case .cmp{display:grid;gap:12px;margin-top:18px}
@media(min-width:860px){.case .cmp{grid-template-columns:1fr 1fr}}
.case .side{border-radius:16px;padding:18px}
.case .side.b{background:var(--paper)}
.case .side.a{background:var(--night);color:var(--light)}
.case .side h4{font-size:15px;font-weight:600;color:var(--ink-3)}
.case .side.a h4{color:var(--bronze-soft)}
.case ol{list-style:none;margin-top:10px;display:grid;gap:8px;counter-reset:c}
.case li{display:flex;gap:10px;font-size:17px;line-height:1.4}
.case li::before{counter-increment:c;content:counter(c);flex:none;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:600;background:var(--line)}
.case .side.a li::before{background:var(--bronze-soft);color:var(--night)}
.case .tool{margin-top:16px;font-size:17px;color:var(--ink-2)}
.case .tool b{color:var(--ink)}
.links-grid{display:grid;gap:12px;margin-top:36px}
@media(min-width:760px){.links-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1060px){.links-grid.three{grid-template-columns:repeat(3,1fr)}}
.link-card{display:block;text-decoration:none;background:var(--card);border-radius:20px;padding:22px 24px;box-shadow:0 20px 40px -36px rgba(27,28,33,.5);transition:transform .2s,box-shadow .2s}
.link-card:hover{transform:translateY(-3px);box-shadow:0 30px 50px -36px rgba(27,28,33,.6)}
.link-card b{display:block;font-size:20px;font-weight:600}
.link-card span{display:block;color:var(--ink-2);margin-top:4px;font-size:16.5px}
.link-card em{display:inline-block;margin-top:10px;font-style:normal;color:var(--bronze);font-weight:600;font-size:15.5px}
.band{padding:72px 0}
.legal{max-width:78ch}
.legal h2{font-size:26px;margin-top:40px}
.legal p,.legal li{color:var(--ink-2);font-size:17.5px;margin-top:10px}
.legal ul{padding-left:20px}
.todo{background:#fbeede;color:#7a4a15;padding:1px 6px;border-radius:5px;font-weight:500}

/* ---------- Pied de page ---------- */
.foot{display:grid;gap:28px;padding:48px 0 24px}
@media(min-width:900px){.foot{grid-template-columns:1.4fr 1fr 1fr 1fr}}
.foot h2{font-size:15px;font-weight:600;color:var(--light);margin:0 0 10px;letter-spacing:0;max-width:none;line-height:1.3}
.foot ul{list-style:none;display:grid;gap:8px}
.foot p{margin-top:12px;max-width:34ch}
.foot-bottom{display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;padding:20px 0 36px;border-top:1px solid rgba(244,242,238,.08)}

/* ---------- Barre d'action mobile ---------- */
.mbar{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));z-index:35;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px;border-radius:999px;background:rgba(27,28,33,.9);backdrop-filter:blur(14px);box-shadow:0 20px 40px -12px rgba(0,0,0,.5);transform:translateY(140%);transition:transform .35s}
.mbar.show{transform:none}
.mbar a{min-height:48px;display:flex;align-items:center;justify-content:center;border-radius:999px;font-weight:600;font-size:16px;text-decoration:none}
.mbar .call{background:var(--bronze-soft);color:var(--night)}
.mbar .diag-l{color:var(--light);box-shadow:inset 0 0 0 1px rgba(244,242,238,.25)}
@media(min-width:960px){.mbar{display:none}}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.sent{padding:18px;border-radius:14px;background:#e6f0e6;color:#234d2c;font-size:17px}
.shot{display:block;border-radius:18px;overflow:hidden;background:#23252b;box-shadow:inset 0 0 0 1px rgba(244,242,238,.1),0 50px 100px -40px rgba(196,140,92,.6);text-decoration:none;transition:transform .3s}
.shot:hover{transform:translateY(-4px)}
.shot-bar{display:flex;align-items:center;gap:6px;padding:10px 14px;font-size:13px;color:var(--light-3)}
.shot-bar i{width:9px;height:9px;border-radius:50%;background:#3a3d45}
.shot-bar span{margin-left:10px;padding:2px 12px;border-radius:999px;background:rgba(244,242,238,.07)}
.shot img{display:block;width:100%;height:auto}
.note a{color:var(--bronze-soft)}
.offer .more{margin:18px 16px 0;color:var(--bronze);font-weight:600;text-decoration:none;font-size:16px}
.offer .more:hover{text-decoration:underline}
.scores,#contact{scroll-margin-top:96px}
.gstars{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-size:15.5px;color:var(--light-2);text-decoration:none;min-height:32px}
.gstars span{color:#f5c04a;letter-spacing:1px}
.gstars b{color:var(--light);font-weight:600}
.gstars:hover{color:var(--light)}
.page-hero .gstars{display:flex;width:max-content}

/* ---------- En-têtes illustrés des sous-pages ---------- */
@media(min-width:1000px){.page-hero .hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}}
.hero-vis{margin-top:36px}
@media(min-width:1000px){.hero-vis{margin-top:0}}
.hero-vis .vis{height:320px;margin:0;box-shadow:0 40px 80px -40px rgba(0,0,0,.7),inset 0 0 0 1px rgba(244,242,238,.08);font-size:13px}
.vis .pill.ghost{background:rgba(244,242,238,.14);color:var(--light)}
.v-list{left:22px;right:22px;top:24px;padding:16px 18px;display:grid;gap:10px}
.v-list .hd,.v-agenda .hd{display:flex;justify-content:space-between;align-items:center;font-weight:500;font-size:13.5px}
.v-list .row{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-radius:10px;background:rgba(244,242,238,.06)}
.v-list .ok{color:var(--bronze-soft);font-weight:500}
.v-agenda{left:22px;right:22px;top:24px;padding:16px 18px;display:grid;gap:12px}
.v-agenda .slots{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.v-agenda .slots span{text-align:center;padding:9px 0;border-radius:9px;background:rgba(244,242,238,.06);color:rgba(244,242,238,.75)}
.v-agenda .slots .busy{opacity:.35;text-decoration:line-through}
.v-agenda .slots .on{background:var(--bronze-soft);color:var(--night);font-weight:600}
.v-phone.wide{width:150px}
.v-phone .tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
.v-phone .tiles i{height:62px;border-radius:8px;background:linear-gradient(180deg,rgba(230,185,140,.55),rgba(230,185,140,.12))}
.band-method{background:var(--paper);padding-bottom:88px}
.proof-band{background:radial-gradient(60% 60% at 85% 40%,rgba(196,140,92,.3),transparent 70%),var(--night);padding:88px 0}
.proof-band .wrap{position:relative;z-index:1}
.pb-grid{display:grid;gap:40px;align-items:center}
@media(min-width:960px){.pb-grid{grid-template-columns:1fr 1.1fr}}
.proof-band .btn{margin-top:24px}
