/* ═══════════════════════════════════════════════════════════
   GS LOCAMASTER — site vitrine
   Design system hérité de la landing page propriétaires :
   bleu #1D6DFF · encre #14161A · Inter · pills · cartes sombres
   ═══════════════════════════════════════════════════════════ */
:root{
  --bleu:#1D6DFF; --bleu-fonce:#0F4FCC; --bleu-pale:#EAF1FF;
  --blanc:#FFFFFF; --gris:#F7F8FA;
  --encre:#14161A; --ink-2:#5A5F68; --ink-3:#8C929B;
  --line:#E8EAED;
  --wa:#1D6DFF;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --pad:clamp(18px,4vw,40px);
  --r-card:16px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;background:#fff;scroll-padding-top:84px}
body{font-family:var(--sans);background:#fff;color:var(--encre);font-size:17px;line-height:1.6;
 -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
img,video{max-width:100%;display:block} a{text-decoration:none;color:inherit}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
ul{list-style:none}
:focus-visible{outline:2px solid var(--bleu);outline-offset:3px;border-radius:4px}
.wrap{max-width:1180px;margin:0 auto;padding-inline:var(--pad)}
.wide{max-width:1300px;margin:0 auto;padding-inline:var(--pad)}
.narrow{max-width:860px;margin:0 auto;padding-inline:var(--pad)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ══ TYPO ══ */
.k{font-size:10.5px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--bleu)}
h1{font-size:clamp(27px,3.45vw,44px);font-weight:800;line-height:1.1;letter-spacing:-.042em}
h1 .hl,h2 .hl{color:var(--bleu)}
h2{font-size:clamp(25px,3vw,40px);font-weight:800;line-height:1.12;letter-spacing:-.042em;margin-top:13px}
h3{font-size:clamp(17px,1.5vw,20px);font-weight:800;letter-spacing:-.03em;line-height:1.25}
.lead{margin-top:12px;font-size:clamp(14px,1.2vw,17px);color:var(--ink-2);line-height:1.6;max-width:62ch}
.lead b{color:var(--encre);font-weight:800}
.sec-head{text-align:center;margin-bottom:clamp(26px,3vw,40px)}
.sec-head h2{max-width:24ch;margin-inline:auto}
.sec-head .lead{margin-inline:auto}
.sec-head.left{text-align:left}
.sec-head.left h2,.sec-head.left .lead{margin-inline:0}

/* ══ NAV ══ */
.topbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(10px);
 -webkit-backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.topbar-in{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:70px}
.logo{display:inline-flex;align-items:center;gap:13px;line-height:1;flex:none}
.logo-img{height:30px;width:auto;flex:none}
.logo-txt{display:flex;flex-direction:column;gap:3px}
.logo-txt b{font-size:clamp(14px,1.5vw,17px);font-weight:800;letter-spacing:-.02em;color:var(--encre)}
.logo-txt i{font-style:normal;font-size:8.5px;font-weight:700;letter-spacing:.24em;color:var(--ink-3)}
.nav{display:flex;align-items:center;gap:clamp(14px,1.8vw,28px)}
.nav a{font-size:14px;font-weight:600;color:var(--ink-2);padding:6px 2px;border-bottom:2px solid transparent;transition:color .2s}
.nav a:hover{color:var(--encre)}
.nav a.on{color:var(--encre);border-bottom-color:var(--bleu)}
.nav-cta{display:inline-flex;align-items:center;gap:.5em;background:var(--bleu);color:#fff!important;border:0!important;
 padding:11px 20px!important;border-radius:100px;font-size:12.5px!important;font-weight:800!important;
 letter-spacing:.08em;text-transform:uppercase;box-shadow:0 10px 24px -14px rgba(29,109,255,.9);
 transition:transform .2s cubic-bezier(.2,.8,.3,1),filter .2s}
.nav-cta:hover{transform:scale(1.03);filter:brightness(1.05)}
.burger{display:none;width:44px;height:44px;border-radius:12px;border:1px solid var(--line);align-items:center;justify-content:center;flex-direction:column;gap:5px}
.burger span{width:18px;height:2px;background:var(--encre);border-radius:2px;transition:transform .25s,opacity .25s}
.burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ══ PILL / CALLOUT ══ */
.callout{display:inline-flex;align-items:center;gap:11px;background:var(--bleu);color:#fff;
 border-radius:100px;padding:11px 24px;margin-bottom:clamp(14px,1.6vw,20px);
 font-size:clamp(10px,.95vw,12.5px);font-weight:800;letter-spacing:.12em;text-transform:uppercase;
 line-height:1.45;max-width:min(100%,760px);box-shadow:0 10px 28px -14px rgba(29,109,255,.95)}
.callout::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.28)}
.callout.ghost{background:var(--bleu-pale);color:var(--bleu);box-shadow:none}
.callout.ghost::before{background:var(--bleu);box-shadow:0 0 0 4px rgba(29,109,255,.18)}

/* ══ BOUTONS ══ */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;background:var(--bleu);color:#fff;border:0;
 padding:20px clamp(26px,3.6vw,44px);border-radius:14px;
 box-shadow:0 1px 0 rgba(255,255,255,.2) inset,0 14px 34px -16px rgba(29,109,255,.8);
 transition:transform .2s cubic-bezier(.2,.8,.3,1),box-shadow .2s ease,filter .2s ease}
.btn:hover{transform:scale(1.025);filter:brightness(1.04);box-shadow:0 1px 0 rgba(255,255,255,.2) inset,0 18px 42px -16px rgba(29,109,255,.95)}
.btn:active{transform:scale(.995)}
.btn-main{display:inline-flex;align-items:center;gap:.55em;white-space:nowrap;font-size:clamp(15px,1.5vw,20px);
 font-weight:800;letter-spacing:-.02em;text-transform:uppercase;line-height:1;color:#fff}
.btn.big{padding:22px clamp(30px,4.6vw,58px);min-width:min(100%,440px)}
.btn.big .btn-main{font-size:clamp(16px,1.8vw,23px)}
.btn-sub{display:block;margin-top:14px;font-size:clamp(11px,1vw,12.5px);font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.btn-ghost{display:inline-flex;align-items:center;gap:.5em;padding:16px 26px;border-radius:14px;border:1.5px solid var(--line);
 background:#fff;color:var(--encre);font-size:14px;font-weight:700;transition:border-color .2s,transform .2s}
.btn-ghost:hover{border-color:var(--bleu);color:var(--bleu);transform:translateY(-1px)}
.btn-wa{display:inline-flex;align-items:center;gap:.6em;padding:18px 30px;border-radius:14px;background:var(--wa);color:#fff;
 font-size:15px;font-weight:800;letter-spacing:-.01em;box-shadow:0 14px 34px -16px rgba(29,109,255,.9);transition:transform .2s,filter .2s}
.btn-wa:hover{transform:scale(1.02);filter:brightness(1.04)}
.btn-wa svg{width:22px;height:22px;fill:#fff}
.cta-halo{display:inline-flex;flex-direction:column;align-items:center;padding:clamp(24px,2.8vw,34px) clamp(26px,3.2vw,46px);
 border-radius:22px;min-width:min(100%,520px);background:linear-gradient(180deg,rgba(29,109,255,.06),rgba(29,109,255,.02));
 border:1.5px solid rgba(29,109,255,.24)}

/* ══ HERO ══ */
.hero{padding-block:clamp(30px,4vw,56px) clamp(16px,1.8vw,24px);text-align:center}
.hero h1{max-width:46ch;margin-inline:auto}
.hero h1 .pay{display:block;width:fit-content;margin:.3em auto 0;font-size:.62em;font-weight:900;letter-spacing:-.035em;line-height:1.16;color:var(--bleu);text-transform:uppercase}
.hero .lead{margin:clamp(14px,1.6vw,20px) auto 0;font-weight:500;max-width:60ch}

/* page header (pages internes) */
.page-head{padding-block:clamp(34px,4.6vw,66px) clamp(26px,3vw,44px);text-align:center;border-bottom:1px solid var(--line);
 background:linear-gradient(180deg,#fff 0%,var(--gris) 100%)}
.page-head h1{max-width:30ch;margin-inline:auto}
.page-head .lead{margin-inline:auto;text-align:center}

/* ══ MEDIA (vidéo cadrée façon VSL) ══ */
.media{padding-block:clamp(22px,2.6vw,34px) clamp(16px,2vw,26px)}
.media-inner{max-width:900px;margin:0 auto;border-radius:18px;overflow:hidden;background:var(--encre);border:2px solid var(--bleu);
 box-shadow:0 0 0 6px rgba(29,109,255,.09),0 30px 66px -36px rgba(29,109,255,.55)}
.media-inner video{width:100%;aspect-ratio:16/9;object-fit:cover}

/* ══ CTA + PREUVE ══ */
.cta{text-align:center;padding-bottom:clamp(28px,3.2vw,44px)}
.proof{margin-top:clamp(20px,2.4vw,28px);display:flex;flex-direction:column;align-items:center;gap:13px}
.proof-row{display:flex;align-items:center;gap:15px;justify-content:center}
.avatars{display:flex;flex:none}
.avatars span{width:40px;height:40px;border-radius:50%;margin-left:-11px;overflow:hidden;box-shadow:0 0 0 2px rgba(29,109,255,.3),0 2px 8px rgba(20,22,26,.16)}
.avatars span:first-child{margin-left:0}
.avatars img{width:100%;height:100%;object-fit:cover}
.proof-txt{text-align:left;max-width:32ch}
.proof-txt b{display:block;font-size:clamp(13px,1.15vw,15px);font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--encre);line-height:1.35}
.proof-txt span{display:block;font-size:clamp(12.5px,1.1vw,14px);color:var(--ink-3);font-weight:600;margin-top:4px}
.rating{display:inline-flex;align-items:center;gap:9px;font-size:clamp(12.5px,1.1vw,14.5px);color:var(--ink-3)}
.rating b{color:var(--encre);font-weight:800}
.stars{display:inline-flex;gap:2px}
.stars svg{width:15px;height:15px;fill:var(--bleu)}

/* ══ STATBAR ══ */
.statbar{background:var(--encre);color:#fff;padding-block:clamp(28px,3.2vw,42px);border-block:1px solid rgba(255,255,255,.06)}
.statbar-in{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.6vw,40px);max-width:1000px;margin:0 auto;text-align:center}
.statbar-in.four{grid-template-columns:repeat(4,1fr);max-width:1100px}
.sb{display:flex;flex-direction:column;gap:8px}
.sb-v{font-size:clamp(26px,3vw,40px);font-weight:900;letter-spacing:-.048em;line-height:1;color:var(--bleu)}
.sb-l{font-size:clamp(11.5px,1.05vw,13.5px);font-weight:500;color:#9BA1AA;line-height:1.45;max-width:26ch;margin-inline:auto}
.anchor{max-width:74ch;margin:clamp(22px,2.6vw,32px) auto 0;padding-top:clamp(20px,2.4vw,28px);border-top:1px solid rgba(255,255,255,.09);
 text-align:center;font-size:clamp(14px,1.3vw,18px);font-weight:500;line-height:1.55;color:#9BA1AA}
.anchor b{color:#fff;font-weight:800}
.anchor s{color:#6E747E;text-decoration-color:var(--bleu);text-decoration-thickness:2px}

/* ══ SECTIONS ══ */
.sec{padding-block:clamp(40px,5vw,76px)}
.sec.grey{background:var(--gris);border-block:1px solid var(--line)}
.sec.dark{background:var(--encre);color:#fff}
.sec.dark .lead{color:#9BA1AA}
.sec.dark h2{color:#fff}

/* cartes services */
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.8vw,22px)}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.8vw,22px)}
.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(14px,1.8vw,22px)}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:clamp(20px,2.2vw,28px);
 display:flex;flex-direction:column;gap:10px;transition:transform .25s,box-shadow .25s,border-color .25s}
.card:hover{transform:translateY(-3px);border-color:rgba(29,109,255,.35);box-shadow:0 22px 44px -30px rgba(20,22,26,.35)}
.card .num{font-size:12px;font-weight:900;letter-spacing:.14em;color:var(--bleu)}
.card .ico{width:44px;height:44px;border-radius:12px;background:var(--bleu-pale);color:var(--bleu);display:flex;align-items:center;justify-content:center}
.card .ico svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.card p{font-size:14.5px;color:var(--ink-2);line-height:1.6}
.card .tag{margin-top:auto;padding-top:8px;font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--bleu)}
.sec.dark .card{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.09);color:#fff}
.sec.dark .card p{color:#9BA1AA}
.sec.dark .card .ico{background:rgba(29,109,255,.16)}

/* étapes */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.8vw,22px);counter-reset:s}
.step{position:relative;background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:clamp(22px,2.4vw,30px) clamp(18px,2vw,26px) clamp(20px,2.2vw,26px)}
.step-n{width:44px;height:44px;border-radius:50%;background:var(--bleu);color:#fff;display:flex;align-items:center;justify-content:center;
 font-size:15px;font-weight:900;letter-spacing:-.02em;box-shadow:0 10px 24px -12px rgba(29,109,255,.9);margin-bottom:16px}
.step h3{font-size:17px}
.step p{margin-top:8px;font-size:14.5px;color:var(--ink-2);line-height:1.6}
.step .when{display:inline-block;margin-top:12px;font-size:10.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--bleu)}

/* comparatif revenus */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,60px);align-items:center}
.compare{background:#fff;border:1px solid var(--line);border-radius:22px;padding:clamp(22px,2.6vw,34px)}
.bar{margin-bottom:22px}
.bar-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:9px}
.bar-l{font-size:13.5px;font-weight:600;color:var(--ink-2)}
.bar-v{font-size:clamp(20px,2vw,26px);font-weight:900;letter-spacing:-.04em;color:var(--encre)}
.bar-v small{font-size:12px;font-weight:500;color:var(--ink-3);letter-spacing:0;margin-left:.2em}
.bar-v.blue{color:var(--bleu)}
.track{height:12px;border-radius:100px;background:var(--gris);border:1px solid var(--line);overflow:hidden}
.fill{height:100%;border-radius:100px;background:#C9CED6;width:0;transition:width 1.1s cubic-bezier(.2,.8,.3,1)}
.fill.blue{background:linear-gradient(90deg,var(--bleu),#4F8DFF)}
.in .fill.w40{width:40%} .in .fill.w100{width:100%}
.badge-x{display:flex;align-items:center;gap:16px;margin-top:8px;padding:16px 18px;border-radius:14px;background:var(--bleu-pale);border:1px solid rgba(29,109,255,.18)}
.badge-x b{font-size:clamp(26px,2.6vw,34px);font-weight:900;letter-spacing:-.05em;color:var(--bleu);line-height:1}
.badge-x span{font-size:13.5px;font-weight:600;color:var(--ink-2);line-height:1.4}
.note{margin-top:14px;font-size:11.5px;color:var(--ink-3);line-height:1.5}

/* offre / prix (pattern valeur barrée) */
.offer{max-width:760px;margin:0 auto;background:#fff;border:1.5px solid rgba(29,109,255,.24);border-radius:24px;overflow:hidden;
 box-shadow:0 0 0 6px rgba(29,109,255,.06),0 40px 80px -50px rgba(29,109,255,.5)}
.offer-top{padding:clamp(24px,3vw,40px) clamp(22px,3vw,40px) clamp(20px,2.4vw,30px);text-align:center;
 background:linear-gradient(180deg,rgba(29,109,255,.06),rgba(29,109,255,0))}
.offer-top .k{display:block}
.offer-top h3{margin-top:10px;font-size:clamp(22px,2.4vw,30px);letter-spacing:-.04em}
.offer-top p{margin-top:8px;font-size:14.5px;color:var(--ink-2);max-width:48ch;margin-inline:auto}
.offer-cmp{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px;text-align:left}
.cmp{padding:16px 18px;border-radius:14px;border:1px solid var(--line);background:#fff}
.cmp .cmp-l{font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}
.cmp .cmp-v{margin-top:6px;font-size:clamp(20px,2.2vw,28px);font-weight:900;letter-spacing:-.04em;line-height:1.05;color:var(--ink-3)}
.cmp .cmp-v s{text-decoration-color:var(--bleu);text-decoration-thickness:3px}
.cmp .cmp-d{margin-top:6px;font-size:12.5px;color:var(--ink-3);line-height:1.45}
.cmp.us{border-color:var(--bleu);background:var(--bleu);color:#fff;box-shadow:0 18px 40px -22px rgba(29,109,255,.9)}
.cmp.us .cmp-l{color:rgba(255,255,255,.75)}
.cmp.us .cmp-v{color:#fff;font-size:clamp(28px,3.2vw,40px)}
.cmp.us .cmp-v small{font-size:.42em;font-weight:700;letter-spacing:0;margin-left:.25em;color:rgba(255,255,255,.85)}
.cmp.us .cmp-d{color:rgba(255,255,255,.8)}
.offer-list{padding:clamp(20px,2.4vw,30px) clamp(22px,3vw,40px);display:grid;grid-template-columns:1fr 1fr;gap:10px 22px;border-top:1px solid var(--line)}
.offer-list li{display:flex;gap:10px;align-items:flex-start;font-size:14.5px;font-weight:500;color:var(--ink-2);line-height:1.45}
.offer-list li::before{content:"";flex:none;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--bleu);
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23000' stroke='none'/%3E%3Cpath d='M8 12.5l2.6 2.6L16 9.5' stroke='%23fff'/%3E%3C/svg%3E") center/contain no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10' fill='%23000' stroke='none'/%3E%3Cpath d='M8 12.5l2.6 2.6L16 9.5' stroke='%23fff'/%3E%3C/svg%3E") center/contain no-repeat}
.offer-foot{padding:clamp(20px,2.4vw,30px) clamp(22px,3vw,40px) clamp(24px,3vw,36px);text-align:center;border-top:1px solid var(--line);background:var(--gris)}

/* tableau d'exemple */
.tbl{width:100%;border-collapse:separate;border-spacing:0;background:#fff;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;font-size:14.5px}
.tbl th,.tbl td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line)}
.tbl th{font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3);background:var(--gris)}
.tbl tr:last-child td{border-bottom:0}
.tbl td.r,.tbl th.r{text-align:right;font-variant-numeric:tabular-nums}
.tbl td b{font-weight:800}
.tbl .hi td{background:var(--bleu-pale);font-weight:800;color:var(--bleu)}

/* résultats (cases) */
.cases{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(14px,1.8vw,23px)}
.rc-media{position:relative;aspect-ratio:1/1;border-radius:16px;overflow:hidden;background:#EEF0F3}
.rc-media img{width:100%;height:100%;object-fit:cover;object-position:center 22%}
.rc-body{padding-top:13px}
.rc-v{font-size:clamp(17px,1.6vw,20px);font-weight:900;letter-spacing:-.045em;color:var(--bleu);line-height:1}
.rc-v span{font-size:11.5px;font-weight:500;color:var(--ink-3);margin-left:.35em;letter-spacing:0}
.rc-name{margin-top:8px;font-size:clamp(13.5px,1.25vw,15px);font-weight:800;letter-spacing:-.03em;line-height:1.24}
.rc-act{margin-top:4px;font-size:11.5px;font-weight:600;color:var(--ink-3);letter-spacing:.06em;text-transform:uppercase}

/* témoignages */
.testi{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:clamp(22px,2.4vw,30px);display:flex;flex-direction:column;gap:14px}
.testi .stars svg{width:14px;height:14px}
.testi q{font-size:15px;line-height:1.65;color:var(--encre);font-weight:500;quotes:"« " " »"}
.testi q::before{content:open-quote;color:var(--bleu);font-weight:900}
.testi q::after{content:close-quote;color:var(--bleu);font-weight:900}
.who{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:6px}
.who img{width:44px;height:44px;border-radius:50%;object-fit:cover;object-position:center 22%}
.who b{display:block;font-size:14px;font-weight:800;letter-spacing:-.02em}
.who span{display:block;font-size:12px;color:var(--ink-3);font-weight:600;margin-top:2px}

/* FAQ */
.faq-list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
.faq-item{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:border-color .2s}
.faq-item.open{border-color:rgba(29,109,255,.4)}
.faq-q{width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;padding:18px 20px;
 font-size:15.5px;font-weight:700;letter-spacing:-.01em;line-height:1.35}
.faq-q .pm{flex:none;width:28px;height:28px;border-radius:50%;background:var(--bleu-pale);color:var(--bleu);display:flex;align-items:center;justify-content:center;
 font-size:18px;font-weight:700;line-height:1;transition:transform .25s,background .25s,color .25s}
.faq-item.open .pm{transform:rotate(45deg);background:var(--bleu);color:#fff}
.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .3s ease}
.faq-a>div{overflow:hidden}
.faq-a p{padding:0 20px 18px;font-size:14.5px;color:var(--ink-2);line-height:1.65}
.faq-item.open .faq-a{grid-template-rows:1fr}

/* équipe */
.team{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.8vw,22px)}
.tm{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}
.tm-photo{aspect-ratio:4/4.2;background:var(--gris);overflow:hidden}
.tm-photo img{width:100%;height:100%;object-fit:cover;object-position:center 15%}
.tm-body{padding:20px 22px 24px}
.tm-body h3{font-size:17px}
.tm-role{margin-top:4px;font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--bleu)}
.tm-body p{margin-top:12px;font-size:14px;color:var(--ink-2);line-height:1.6}

/* story */
.story{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(24px,4vw,60px);align-items:start}
.story .txt p{margin-top:14px;font-size:15.5px;color:var(--ink-2);line-height:1.7}
.story .txt p:first-of-type{margin-top:18px}
.conv{border-radius:22px;padding:clamp(26px,3vw,40px);color:#fff;position:relative;overflow:hidden;
 background:linear-gradient(160deg,#171A1F 0%,#12151A 52%,#0E1B33 100%);border:1px solid rgba(255,255,255,.07)}
.conv::before{content:"";position:absolute;top:-50%;right:-30%;width:90%;aspect-ratio:1;background:radial-gradient(circle,rgba(29,109,255,.28) 0%,transparent 60%);pointer-events:none}
.conv>*{position:relative}
.conv h3{font-size:clamp(20px,2.2vw,26px);letter-spacing:-.04em;line-height:1.2}
.conv h3 .hl{color:var(--bleu)}
.conv p{margin-top:14px;font-size:14.5px;color:#9BA1AA;line-height:1.65}
.conv .kpis{display:flex;gap:18px;margin-top:22px;padding-top:20px;border-top:1px solid rgba(255,255,255,.09)}
.conv .kpis div{flex:1}
.conv .kpis b{display:block;font-size:24px;font-weight:900;letter-spacing:-.05em;color:var(--bleu);line-height:1}
.conv .kpis span{display:block;margin-top:6px;font-size:11.5px;color:#9BA1AA;line-height:1.4}

/* contact */
.contact-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(20px,3vw,40px);align-items:stretch}
.wa-card{background:#fff;border:1.5px solid rgba(29,109,255,.28);border-radius:24px;padding:clamp(28px,3.2vw,44px);text-align:center;
 display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;box-shadow:0 0 0 6px rgba(29,109,255,.07)}
.wa-big{width:72px;height:72px;border-radius:22px;background:var(--wa);display:flex;align-items:center;justify-content:center;box-shadow:0 18px 40px -18px rgba(29,109,255,.9)}
.wa-big svg{width:40px;height:40px;fill:#fff}
.wa-card h2{font-size:clamp(22px,2.4vw,30px);margin-top:4px}
.wa-card p{font-size:14.5px;color:var(--ink-2);max-width:40ch}
.wa-card .hours{font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}
.alt{display:flex;flex-direction:column;gap:12px}
.alt .card{flex-direction:row;align-items:center;gap:16px}
.alt .card .ico{flex:none}
.alt .card b{display:block;font-size:15px;font-weight:800;letter-spacing:-.02em}
.alt .card p{margin-top:2px;font-size:13.5px}
.alt .card .go{margin-left:auto;flex:none;color:var(--bleu);font-weight:800;font-size:13px;white-space:nowrap}

/* blog */
.filters{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-top:20px}
.filters button{padding:9px 16px;border-radius:100px;border:1px solid var(--line);background:#fff;font-size:12.5px;font-weight:700;color:var(--ink-2);transition:all .2s}
.filters button:hover{border-color:var(--bleu);color:var(--bleu)}
.filters button.on{background:var(--encre);border-color:var(--encre);color:#fff}
.featured{display:grid;grid-template-columns:1fr 1fr;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden}
.featured .fig{min-height:300px;background:linear-gradient(160deg,#171A1F 0%,#12151A 52%,#0E1B33 100%);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}
.featured .fig::before{content:"";position:absolute;inset:auto -20% -60% auto;width:90%;aspect-ratio:1;background:radial-gradient(circle,rgba(29,109,255,.35) 0%,transparent 60%)}
.featured .fig svg{width:110px;height:110px;stroke:#fff;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;position:relative;opacity:.9}
.featured .body{padding:clamp(26px,3vw,44px)}
.featured h3{font-size:clamp(22px,2.4vw,30px);letter-spacing:-.04em;margin-top:12px}
.featured p{margin-top:14px;font-size:15px;color:var(--ink-2);line-height:1.65}
.meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:18px;font-size:12.5px;font-weight:600;color:var(--ink-3)}
.cat{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--bleu)}
.post{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.post:hover{transform:translateY(-3px);box-shadow:0 22px 44px -30px rgba(20,22,26,.35)}
.post .fig{aspect-ratio:16/9;background:var(--bleu-pale);display:flex;align-items:center;justify-content:center}
.post .fig svg{width:54px;height:54px;stroke:var(--bleu);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.post .body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.post h3{font-size:17px;letter-spacing:-.025em}
.post p{font-size:14px;color:var(--ink-2);line-height:1.6}
.post .meta{margin-top:auto;padding-top:8px}
.post.hide{display:none}
.newsband{border-radius:24px;padding:clamp(30px,3.6vw,48px);text-align:center;color:#fff;position:relative;overflow:hidden;
 background:linear-gradient(160deg,#171A1F 0%,#12151A 52%,#0E1B33 100%);border:1px solid rgba(255,255,255,.07)}
.newsband::before{content:"";position:absolute;top:-58%;left:50%;transform:translateX(-50%);width:115%;aspect-ratio:1;background:radial-gradient(circle,rgba(29,109,255,.22) 0%,transparent 60%);pointer-events:none}
.newsband>*{position:relative}
.newsband h2{color:#fff;max-width:22ch;margin-inline:auto}
.newsband p{margin:12px auto 0;max-width:48ch;color:#9BA1AA;font-size:15px}
.newsform{display:flex;gap:10px;max-width:520px;margin:22px auto 0}
.newsform input{flex:1;min-width:0;padding:16px 18px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);color:#fff;font-size:15px}
.newsform input::placeholder{color:#7C838D}
.newsform button{padding:16px 22px;border-radius:14px;background:var(--bleu);color:#fff;font-weight:800;font-size:13px;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.newsband .tiny{margin-top:12px;font-size:12px;color:#7C838D}

/* ══ CTA FINAL ══ */
.final{padding-block:clamp(34px,4vw,56px)}
.final-in{max-width:840px;margin:0 auto;text-align:center;border-radius:24px;padding:clamp(34px,4vw,52px) clamp(22px,3vw,44px);
 display:flex;flex-direction:column;align-items:center;background:linear-gradient(160deg,#171A1F 0%,#12151A 52%,#0E1B33 100%);
 border:1px solid rgba(255,255,255,.07);color:#fff;position:relative;overflow:hidden}
.final-in::before{content:"";position:absolute;top:-58%;left:50%;transform:translateX(-50%);width:115%;aspect-ratio:1;background:radial-gradient(circle,rgba(29,109,255,.22) 0%,transparent 60%);pointer-events:none}
.final-in>*{position:relative;z-index:1}
.final-k{font-size:10.5px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--bleu);margin-bottom:14px}
.final-t{font-size:clamp(24px,2.8vw,38px);font-weight:800;line-height:1.14;letter-spacing:-.042em;max-width:20ch;margin:0 auto}
.final-d{margin:14px auto 0;max-width:46ch;font-size:clamp(14px,1.2vw,16px);color:#9BA1AA;line-height:1.6}
.final-in .btn{margin-top:24px}
.final-in .btn-sub{color:#7C838D}

/* ══ FOOTER ══ */
footer{background:#fff;border-top:1px solid var(--line);padding-block:clamp(30px,3.4vw,44px);text-align:center}
footer .logo{margin-bottom:20px}
footer .logo-img{height:26px}
.f-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:clamp(14px,2vw,26px);font-size:13.5px;font-weight:500;color:var(--ink-2)}
.f-links a:hover{color:var(--bleu)}
.f-links.legal{margin-top:12px;font-size:12.5px;color:var(--ink-3)}
.f-copy{margin-top:18px;font-size:12.5px;color:var(--ink-3)}
.f-disc{margin:14px auto 0;max-width:70ch;font-size:11.5px;line-height:1.6;color:#A9AEB5}

/* WhatsApp flottant */
.wa-float{position:fixed;right:18px;bottom:18px;z-index:60;width:56px;height:56px;border-radius:50%;background:var(--wa);display:flex;align-items:center;justify-content:center;
 box-shadow:0 14px 34px -12px rgba(29,109,255,.9);transition:transform .2s}
.wa-float:hover{transform:scale(1.06)}
.wa-float svg{width:30px;height:30px;fill:#fff}

/* légal */
.legal h2{font-size:20px;margin-top:34px;letter-spacing:-.03em}
.legal p,.legal li{margin-top:10px;font-size:15px;color:var(--ink-2);line-height:1.7}
.legal ul{list-style:disc;padding-left:22px}
.legal .todo{background:#FFF7E0;border:1px solid #F5DFA0;color:#7A5A00;padding:2px 8px;border-radius:6px;font-size:12.5px;font-weight:700}

/* ══ ANIM ══ */
.rise{opacity:1;transform:none}
.js .rise{opacity:0;transform:translateY(14px);transition:opacity .55s ease,transform .55s ease}
.js .rise.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rise{opacity:1!important;transform:none!important}}

/* ══ TABLETTE ══ */
@media(max-width:1080px){
 h1{font-size:clamp(27px,4vw,38px)}
 .hero h1{max-width:none}
 .grid3,.grid4{grid-template-columns:repeat(2,1fr)}
 .steps{grid-template-columns:repeat(2,1fr)}
 .cases{grid-template-columns:repeat(3,1fr)}
 .team{grid-template-columns:repeat(3,1fr)}
 .statbar-in.four{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:900px){
 .nav{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--line);
  padding:8px var(--pad) 18px;display:none;box-shadow:0 30px 50px -30px rgba(20,22,26,.3)}
 .nav.open{display:flex}
 .nav a{padding:13px 4px;border-bottom:1px solid var(--line);font-size:15px}
 .nav a.on{border-bottom-color:var(--line);color:var(--bleu)}
 .nav-cta{margin-top:14px;justify-content:center;padding:15px 20px!important;border-radius:14px}
 .burger{display:flex}
 .split,.story,.contact-grid,.featured{grid-template-columns:1fr}
 .featured .fig{min-height:200px}
 .team{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
 .statbar-in{grid-template-columns:1fr;gap:20px}
 .statbar-in.four{grid-template-columns:1fr 1fr}
 .sb-l{max-width:34ch}
}
/* ══ MOBILE ══ */
@media(max-width:620px){
 body{font-size:16px}
 .wrap,.wide,.narrow{padding-inline:16px}
 .topbar-in{min-height:60px}
 .logo-img{height:24px}
 .logo{gap:10px}
 .hero{padding-block:22px 14px}
 .callout{width:100%;max-width:none;display:flex;align-items:flex-start;text-align:left;gap:9px;font-size:8.8px;letter-spacing:.09em;line-height:1.5;padding:10px 14px;border-radius:12px;margin-bottom:13px}
 .callout::before{margin-top:4px;width:6px;height:6px}
 h1{font-size:24px;line-height:1.18;letter-spacing:-.03em}
 .hero h1 .pay{font-size:.72em;margin-top:.42em}
 .lead{font-size:14px;margin-top:11px}
 .media{padding-block:14px}
 .media-inner{border-radius:12px;border-width:1.5px;box-shadow:0 0 0 4px rgba(29,109,255,.08),0 20px 44px -28px rgba(29,109,255,.5)}
 .cta{padding-bottom:24px}
 .cta-halo{display:flex;width:100%;min-width:0;padding:18px 14px;border-radius:16px}
 .btn,.btn.big{width:100%;min-width:0;padding:18px 12px;border-radius:12px}
 .btn-main,.btn.big .btn-main{font-size:15px;letter-spacing:-.01em;gap:.4em}
 .btn-sub{font-size:10.5px}
 .proof{margin-top:16px;gap:11px}
 .proof-row{flex-direction:column;gap:10px;text-align:center}
 .proof-txt{text-align:center;max-width:none}
 .proof-txt b{font-size:12px;letter-spacing:.03em}
 .proof-txt span{font-size:11.5px;margin-top:3px}
 .avatars span{width:32px;height:32px;margin-left:-9px}
 .rating{font-size:12px;gap:7px}
 .stars svg{width:13px;height:13px}
 .statbar{padding-block:24px}
 .statbar-in{gap:18px}
 .statbar-in.four{grid-template-columns:1fr 1fr;gap:16px}
 .sb-v{font-size:26px}
 .sb-l{font-size:11.5px;max-width:30ch;line-height:1.4}
 .anchor{font-size:14px;margin-top:20px;padding-top:18px}
 .sec{padding-block:30px}
 .sec-head{margin-bottom:18px}
 .k{font-size:9.5px;letter-spacing:.18em}
 h2{font-size:23px;line-height:1.18;letter-spacing:-.03em;margin-top:11px}
 .sec-head h2{max-width:none}
 .grid3,.grid4,.grid2,.steps,.team{grid-template-columns:1fr;gap:11px}
 .cases{grid-template-columns:repeat(2,1fr);gap:11px}
 .rc-media{border-radius:10px}
 .rc-body{padding-top:9px}
 .rc-v{font-size:17px} .rc-v span{font-size:10.5px}
 .rc-name{font-size:13px} .rc-act{font-size:10.5px}
 .offer-cmp,.offer-list{grid-template-columns:1fr}
 .tbl{font-size:13px} .tbl th,.tbl td{padding:11px 12px}
 .newsform{flex-direction:column}
 .final{padding-block:26px}
 .final-in{padding:26px 18px;border-radius:17px}
 .final-t{font-size:22px;max-width:none}
 .f-links{gap:12px;font-size:13px}
 .page-head{padding-block:28px 22px}
 .wa-float{width:50px;height:50px;right:14px;bottom:14px}
 .wa-float svg{width:26px;height:26px}
}

/* variante 6 cartes */
.cases.c3{grid-template-columns:repeat(3,1fr);max-width:980px;margin-inline:auto}
@media(max-width:620px){.cases.c3{grid-template-columns:repeat(2,1fr)}}

/* ══ GRAPHIQUE ANIMÉ (hero, fond clair) ══ */
.gs{max-width:1240px;margin:0 auto;padding:clamp(12px,1.6vw,20px);border-radius:24px;background:#EEF2FB;text-align:left}
.gs-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,1.4vw,18px)}
.kpi{position:relative;background:#fff;border:1px solid #DFE5F2;border-radius:16px;padding:clamp(16px,2vw,24px) clamp(16px,2.2vw,26px);
 box-shadow:0 8px 24px -20px rgba(20,22,26,.25);transition:border-color .3s,box-shadow .3s}
.kpi.on{border-color:var(--bleu);box-shadow:0 0 0 1px var(--bleu),0 14px 30px -22px rgba(29,109,255,.6)}
.kpi-l{font-size:clamp(12.5px,1.05vw,14.5px);font-weight:600;color:var(--encre)}
.kpi-v{margin-top:8px;font-size:clamp(28px,3.1vw,42px);font-weight:800;letter-spacing:-.045em;line-height:1;color:var(--encre);font-variant-numeric:tabular-nums}
.kpi.on .kpi-v{color:var(--bleu)}
.kpi-d{margin-top:10px;font-size:clamp(11px,.9vw,12.5px);color:var(--ink-3)}
.kpi-ar{position:absolute;top:18px;right:18px;width:14px;height:14px;color:var(--ink-3)}
.kpi.on .kpi-ar{color:var(--bleu)}
.kpi-ar svg{width:100%;height:100%;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gs-card{margin-top:clamp(10px,1.4vw,18px);background:#fff;border:1px solid #DFE5F2;border-radius:18px;box-shadow:0 8px 24px -20px rgba(20,22,26,.25);overflow:hidden}
.gs-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:clamp(18px,2.2vw,28px) clamp(18px,2.2vw,28px) 0}
.gs-head .k{color:var(--ink-3);font-size:10px}
.gs-title{margin-top:8px;font-size:clamp(18px,1.8vw,22px);font-weight:700;letter-spacing:-.03em}
.gs-leg{display:flex;gap:16px;font-size:11.5px;color:var(--ink-3);white-space:nowrap;padding-bottom:4px}
.gs-leg span{display:inline-flex;align-items:center;gap:7px}
.gs-leg i{width:16px;height:3px;border-radius:3px;background:var(--bleu)}
.gs-leg i.g{background:none;border-top:2px dotted #A9B1C2;height:0}
.gs-plot{padding:clamp(10px,1.4vw,18px) clamp(18px,2.2vw,28px) 0}
.gs-plot svg{display:block;width:100%;height:auto;overflow:visible}
.gs .grid line{stroke:#E6EAF2}
.gs .ylab{fill:#8C929B;font-size:11px;font-family:var(--sans);font-weight:500}
.gs .xlab{fill:#8C929B;font-size:11px;font-family:var(--sans);font-weight:500}
.gs .base{fill:none;stroke:#B8C0CF;stroke-width:1.5;stroke-dasharray:5 6}
.gs .line{fill:none;stroke:var(--bleu);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.gs .area{fill:url(#gsArea)}
.gs .pt{fill:#fff;stroke:var(--bleu);stroke-width:2;opacity:0;transition:opacity .25s}
.gs .pt.on{opacity:1}
.gs .pt-end{fill:var(--bleu);stroke:#fff;stroke-width:2.5;opacity:0;transition:opacity .25s}
.gs .pt-end.on{opacity:1}
.gs .pt-end-halo{fill:none;stroke:var(--bleu);stroke-width:2;opacity:0}
.gs .pt-end-halo.on{animation:gsHalo 1.5s ease-out infinite}
@keyframes gsHalo{0%{opacity:.5;r:7}100%{opacity:0;r:20}}
.gs-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:clamp(10px,1.4vw,18px);padding:12px clamp(18px,2.2vw,28px);border-top:1px solid #E6EAF2;font-size:12.5px;color:var(--ink-2)}
.gs-foot .tag{display:inline-flex;align-items:center;gap:8px}
.gs-foot .tag svg{width:16px;height:16px;stroke:var(--bleu);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.gs-pause{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:500;color:var(--ink-2);padding:4px 6px;border-radius:8px}
.gs-pause:hover{background:var(--gris)}
.gs-pause svg{width:12px;height:12px;fill:var(--ink-2)}
.gs-under{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;margin-top:clamp(10px,1.4vw,16px);font-size:12.5px;color:var(--ink-2)}
.gs-under span{display:inline-flex;align-items:center;gap:7px}
.gs-under span::before{content:"";width:12px;height:12px;background:var(--bleu);
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/contain no-repeat}
.gs-disc{margin-top:8px;text-align:center;font-size:10.5px;color:#A9AEB5}
@media(max-width:620px){
 .gs{padding:10px;border-radius:16px}.gs-kpis{grid-template-columns:1fr;gap:8px}.kpi{padding:14px 16px}.kpi-v{font-size:26px}
 .gs-head{flex-direction:column;align-items:flex-start}.gs-leg{padding-bottom:0}.gs-under{gap:6px 16px;font-size:11.5px}
}

/* ══ TÉMOIGNAGES — mur défilant ══ */
.wall{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;height:600px;overflow:hidden;
 -webkit-mask-image:linear-gradient(180deg,transparent 0,#000 12%,#000 88%,transparent 100%);
 mask-image:linear-gradient(180deg,transparent 0,#000 12%,#000 88%,transparent 100%)}
.col{display:flex;flex-direction:column;gap:16px;transform:translate3d(0,0,0);backface-visibility:hidden}
.wall .testi{flex:none}
.wall .testi q{font-size:14.5px}
.who .ini{width:44px;height:44px;border-radius:50%;background:var(--bleu-pale);color:var(--bleu);display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;letter-spacing:-.02em;flex:none}
.who b .v{display:inline-block;width:14px;height:14px;margin-left:5px;vertical-align:-2px;border-radius:50%;background:var(--bleu);
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%23000'/%3E%3Cpath d='M7 12.5l3 3 7-7' stroke='%23fff' stroke-width='3' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%23000'/%3E%3Cpath d='M7 12.5l3 3 7-7' stroke='%23fff' stroke-width='3' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
@media(prefers-reduced-motion:reduce){.wall{height:auto;mask-image:none;-webkit-mask-image:none}}

/* ══ RÉSERVATION D'APPEL ══ */
.book{max-width:960px;margin:0 auto;background:#fff;border:1.5px solid rgba(29,109,255,.24);border-radius:24px;overflow:hidden;
 box-shadow:0 0 0 6px rgba(29,109,255,.06),0 40px 80px -50px rgba(29,109,255,.5)}
.book-steps{display:flex;justify-content:center;gap:clamp(14px,3vw,34px);padding:14px 18px;border-bottom:1px solid var(--line);
 font-size:12.5px;font-weight:600;color:var(--ink-3);background:var(--gris)}
.book-steps span{display:inline-flex;align-items:center;gap:8px}
.book-steps span::before{content:"";width:7px;height:7px;border-radius:50%;background:#C9CED6}
.book-steps span.on{color:var(--encre)}
.book-steps span.on::before{background:var(--bleu);box-shadow:0 0 0 3px rgba(29,109,255,.18)}
.book-steps span.done{color:var(--ink-2)}
.book-steps span.done::before{background:var(--bleu)}
.book-body{display:grid;grid-template-columns:1fr 1.15fr}
.book-left{padding:clamp(20px,2.6vw,30px);border-right:1px solid var(--line)}
.book-right{padding:clamp(20px,2.6vw,30px);position:relative;background:#fff}
.book-title{font-size:clamp(19px,1.9vw,23px);font-weight:800;letter-spacing:-.035em;line-height:1.2}
.book-sub{margin-top:6px;font-size:13px;color:var(--ink-3);font-weight:600}
.book-ul{margin-top:14px;display:flex;flex-direction:column;gap:7px}
.book-ul li{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;color:var(--ink-2);line-height:1.45}
.book-ul li::before{content:"";flex:none;width:16px;height:16px;margin-top:2px;border-radius:50%;background:var(--bleu);
 -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%23000'/%3E%3Cpath d='M7 12.5l3 3 7-7' stroke='%23fff' stroke-width='3' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat;
 mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='12' fill='%23000'/%3E%3Cpath d='M7 12.5l3 3 7-7' stroke='%23fff' stroke-width='3' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/contain no-repeat}
.book-form{margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.book-form .full{grid-column:1/-1}
.book-form label{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:5px}
.book-form input{width:100%;padding:13px 14px;border-radius:12px;border:1px solid var(--line);background:#fff;font-size:15px;color:var(--encre);transition:border-color .2s,box-shadow .2s}
.book-form input:focus{outline:0;border-color:var(--bleu);box-shadow:0 0 0 3px rgba(29,109,255,.15)}
.book-form input.err{border-color:#E5484D}
.book-consent{grid-column:1/-1;font-size:11.5px;color:var(--ink-3);line-height:1.5}
.book-consent a{color:var(--encre);text-decoration:underline}
.book-btn{grid-column:1/-1;display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:16px 20px;border-radius:12px;
 background:var(--bleu);color:#fff;font-size:14px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;
 box-shadow:0 14px 34px -16px rgba(29,109,255,.8);transition:transform .2s,filter .2s}
.book-btn:hover{transform:scale(1.02);filter:brightness(1.05)}
.book-btn[disabled]{opacity:.45;cursor:not-allowed;transform:none;filter:none}
.book-err{grid-column:1/-1;font-size:12.5px;color:#E5484D;font-weight:600;display:none}
.book-err.show{display:block}
/* récap étape 2 */
.book-recap{margin-top:18px;padding:16px;border-radius:14px;background:var(--gris);border:1px solid var(--line);font-size:13.5px;color:var(--ink-2);line-height:1.5}
.book-recap b{display:block;color:var(--encre);font-size:14px}
.book-recap .edit{display:inline-block;margin-top:8px;font-size:12px;font-weight:700;color:var(--bleu);cursor:pointer}
.book-sel{margin-top:14px;padding:16px;border-radius:14px;background:var(--bleu-pale);border:1px solid rgba(29,109,255,.2);font-size:13.5px;color:var(--ink-2)}
.book-sel b{display:block;color:var(--bleu);font-size:15px;font-weight:800;letter-spacing:-.02em}
.book-sel.empty{background:#fff;border-style:dashed;color:var(--ink-3)}
.book-left .book-btn{width:100%;margin-top:14px}
/* calendrier */
.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}
.cal-title{font-size:15px;font-weight:800;letter-spacing:-.02em;text-transform:capitalize}
.cal-nav{display:flex;gap:6px}
.cal-nav button{width:34px;height:34px;border-radius:10px;border:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;color:var(--ink-2);transition:border-color .2s,color .2s}
.cal-nav button:hover{border-color:var(--bleu);color:var(--bleu)}
.cal-nav button[disabled]{opacity:.35;cursor:not-allowed}
.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}
.cal-grid .dow{text-align:center;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);padding:6px 0}
.cal-grid button{aspect-ratio:1;border-radius:10px;font-size:14px;font-weight:700;color:var(--encre);background:var(--bleu-pale);transition:background .15s,color .15s,transform .15s}
.cal-grid button:hover{background:var(--bleu);color:#fff;transform:scale(1.04)}
.cal-grid button.sel{background:var(--bleu);color:#fff;box-shadow:0 8px 20px -10px rgba(29,109,255,.9)}
.cal-grid button[disabled]{background:transparent;color:#C9CED6;cursor:not-allowed;transform:none}
.cal-grid button.today:not(.sel){box-shadow:inset 0 0 0 1.5px var(--bleu)}
.slots{margin-top:16px}
.slots-t{font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:8px}
.slots-g{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.slots-g button{padding:11px 6px;border-radius:10px;border:1.5px solid var(--line);background:#fff;font-size:14px;font-weight:700;color:var(--encre);font-variant-numeric:tabular-nums;transition:all .15s}
.slots-g button:hover{border-color:var(--bleu);color:var(--bleu)}
.slots-g button.sel{background:var(--bleu);border-color:var(--bleu);color:#fff}
.slots-g button[disabled]{opacity:.35;cursor:not-allowed}
.slots-empty{font-size:13px;color:var(--ink-3)}
.slots-tz{margin-top:10px;font-size:11px;color:var(--ink-3)}
.book-lock{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;
 background:rgba(255,255,255,.72);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);z-index:2}
.book-lock p{background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 18px;font-size:14px;font-weight:600;color:var(--ink-2);text-align:center;max-width:30ch;
 box-shadow:0 20px 40px -24px rgba(20,22,26,.35)}
.book.step2 .book-lock{display:none}
.book.step2 .book-form{display:none}
.book-recap,.book-sel{display:none}
.book.step2 .book-recap,.book.step2 .book-sel{display:block}
.book.step2 .book-left .book-btn{display:inline-flex}
.book-left>.book-btn{display:none}
/* confirmation */
.book-done{display:none;padding:clamp(28px,3.6vw,48px);text-align:center;flex-direction:column;align-items:center;gap:12px}
.book.done .book-body{display:none}
.book.done .book-done{display:flex}
.book-done .ok{width:64px;height:64px;border-radius:50%;background:var(--bleu);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 16px 36px -12px rgba(29,109,255,.9)}
.book-done .ok svg{width:30px;height:30px;stroke:#fff;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.book-done h3{font-size:clamp(20px,2.2vw,26px);letter-spacing:-.035em}
.book-done p{font-size:14.5px;color:var(--ink-2);max-width:48ch}
.book-done .when{font-size:16px;font-weight:800;color:var(--bleu)}
.book-done .acts{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:8px}
@media(max-width:900px){.book-body{grid-template-columns:1fr}.book-left{border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:620px){
 .chart-top{grid-template-columns:1fr 1fr 1fr;gap:6px;padding:12px 12px 4px}.ck{padding:9px 8px}.ck-l{font-size:8.5px;letter-spacing:.1em}.ck-v{font-size:17px}.ck-d{font-size:9.5px}
 .wall{grid-template-columns:1fr;height:480px}.col:nth-child(2),.col:nth-child(3){display:none}
 .book-form{grid-template-columns:1fr}.slots-g{grid-template-columns:repeat(3,1fr)}.book-steps{font-size:11px;gap:10px}
}
@media(min-width:621px) and (max-width:900px){.wall{grid-template-columns:1fr 1fr}.col:nth-child(3){display:none}}

/* ══ Téléphone +33 ══ */
.tel-wrap{display:flex;align-items:stretch;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.tel-wrap:focus-within{border-color:var(--bleu);box-shadow:0 0 0 3px rgba(29,109,255,.15)}
.tel-wrap.err{border-color:#E5484D}
.tel-pre{display:inline-flex;align-items:center;gap:7px;padding:0 10px 0 12px;font-size:14px;font-weight:600;color:var(--encre);background:var(--gris);border-right:1px solid var(--line);white-space:nowrap}
.flag-fr{width:20px;height:14px;border-radius:2px;background:linear-gradient(90deg,#0055A4 0 33.3%,#fff 33.3% 66.6%,#EF4135 66.6%);box-shadow:0 0 0 1px rgba(20,22,26,.08)}
.tel-wrap input{border:0!important;border-radius:0!important;box-shadow:none!important;flex:1;min-width:0;letter-spacing:.02em}

/* ══ Avis : version sombre ══ */
.sec.dark .testi{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.09);color:#fff}
.sec.dark .testi::before{content:"\201C";font-family:Georgia,'Times New Roman',serif;font-size:34px;line-height:.6;font-weight:700;color:var(--bleu);margin-bottom:-4px}
.sec.dark .testi .stars svg{fill:var(--bleu)}
.sec.dark .testi q{color:#E6E8EC}
.sec.dark .testi q::before,.sec.dark .testi q::after{color:var(--bleu)}
.sec.dark .who b{color:#fff}
.sec.dark .who span{color:#8C929B}
.sec.dark .who .ini{background:rgba(29,109,255,.18);color:#8FB4FF}
.sec.dark .who img{box-shadow:0 0 0 2px rgba(255,255,255,.08)}
.sec.dark .sec-head .lead{color:#9BA1AA}
.wall-foot{text-align:center;margin-top:18px}
.wall-pause{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#fff;font-size:12.5px;font-weight:600;transition:background .2s,border-color .2s}
.wall-pause:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28)}
.wall-pause svg{width:12px;height:12px;fill:#fff}
.final-t .hl{color:var(--bleu)}

/* ══ SIX EXPERTISES — cartes à scènes animées ══ */
.sx-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:11.5px;color:var(--ink-3)}
.sx-cur{display:inline-flex;align-items:center;gap:8px}
.sx-cur i{width:6px;height:6px;border-radius:50%;background:var(--bleu);box-shadow:0 0 0 3px rgba(29,109,255,.18)}
.sx-cur b{font-weight:600;color:var(--ink-2)}
.sx-pause{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:11.5px;font-weight:600;color:var(--ink-2)}
.sx-pause:hover{border-color:var(--bleu);color:var(--bleu)}
.sx-pause svg{width:10px;height:10px;fill:currentColor}
.sx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,1.8vw,22px)}
.sx-card{position:relative;min-height:312px;background:#fff;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden;cursor:pointer;
 transition:transform .5s cubic-bezier(.2,.8,.3,1),box-shadow .5s,border-color .5s}
.sx-card.on{border-color:rgba(29,109,255,.45);box-shadow:0 34px 70px -34px rgba(29,109,255,.5),0 0 0 3px rgba(29,109,255,.08);transform:translateY(-4px)}
.sx-info{position:absolute;inset:0;padding:clamp(20px,2.2vw,28px);display:flex;flex-direction:column;gap:10px;transition:opacity .45s,filter .45s,transform .45s}
.sx-info .ico{width:44px;height:44px;border-radius:12px;background:var(--bleu-pale);color:var(--bleu);display:flex;align-items:center;justify-content:center}
.sx-info .ico svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.sx-info .num{font-size:12px;font-weight:900;letter-spacing:.14em;color:var(--bleu)}
.sx-info p{font-size:14.5px;color:var(--ink-2);line-height:1.6}
.sx-info .tag{margin-top:auto;padding-top:8px;font-size:10.5px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--bleu)}
.sx-card.on .sx-info{opacity:0;filter:blur(5px);transform:scale(.97);pointer-events:none}
.sx-scene{position:absolute;inset:0;padding:36px 18px 26px;display:flex;flex-direction:column;align-items:center;justify-content:center;
 background:linear-gradient(180deg,#fff 0%,#F4F7FF 100%);opacity:0;visibility:hidden;transform:scale(.97);transition:opacity .5s,transform .5s,visibility 0s .5s}
.sx-card.on .sx-scene{opacity:1;visibility:visible;transform:none;transition:opacity .5s .1s,transform .5s .1s,visibility 0s}
.sx-lbl{position:absolute;left:16px;top:14px;font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--ink-3)}
.sx-cap{position:absolute;left:0;right:0;bottom:12px;text-align:center;font-size:10.5px;color:var(--ink-3);font-weight:500}
.sx-cap .sx-checks{display:block;margin-top:3px;font-size:9px}
.sx-cap em{font-style:normal;margin:0 5px;color:var(--ink-3);opacity:0}
.sx-prog{position:absolute;left:0;bottom:0;height:3px;width:0;background:var(--bleu);border-radius:0 3px 3px 0}
.sx-card.on .sx-prog{animation:sxProg 6s linear forwards}
@keyframes sxProg{from{width:0}to{width:100%}}
.sx-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:11px;color:var(--ink-3)}
.sx-foot a{font-size:13px;font-weight:700;color:var(--bleu)}
.sx.paused .sx-card.on .sx-scene *,.sx.paused .sx-card.on .sx-prog{animation-play-state:paused!important}
/* utilitaires d'apparition (toutes les scènes durent 6 s) */
.sx-card.on .a-in{animation:sxIn .55s cubic-bezier(.2,.8,.3,1) both}
@keyframes sxIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes sxPop{from{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}
@keyframes sxFade{from{opacity:0}to{opacity:1}}
@keyframes sxOut{from{opacity:1}to{opacity:0;visibility:hidden}}

/* 01 · annonce */
.sc-annonce{width:100%;max-width:300px;margin-top:0}
.sc-annonce .mock{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 20px 40px -28px rgba(20,22,26,.35);opacity:0}
.sx-card.on .sc-annonce .mock{animation:sxIn .6s cubic-bezier(.2,.8,.3,1) .15s both}
.mock-h{display:flex;align-items:center;gap:4px;padding:7px 10px;border-bottom:1px solid var(--line)}
.mock-h i{width:5px;height:5px;border-radius:50%;background:#D5D9E0}
.mock-h span{margin-left:6px;font-size:8px;color:var(--ink-3)}
.mock-ph{position:relative;aspect-ratio:16/8;overflow:hidden}
.mock-ph img{width:100%;height:100%;object-fit:cover;transform:scale(1.04);transition:transform 6s linear}
.sx-card.on .mock-ph img{transform:scale(1.12)}
.ph-badge{position:absolute;right:8px;top:8px;padding:4px 8px;border-radius:100px;background:var(--bleu);color:#fff;font-size:8px;font-weight:700;opacity:0}
.sx-card.on .ph-badge{animation:sxPop .5s cubic-bezier(.2,.8,.3,1) 1.4s both}
.ph-tag{position:absolute;left:8px;bottom:8px;padding:3px 7px;border-radius:6px;background:rgba(255,255,255,.85);color:var(--encre);font-size:7.5px;font-weight:600;opacity:0}
.sx-card.on .ph-tag{animation:sxIn .5s ease .9s both}
.mock-t{padding:9px 10px 0;font-size:10.5px;font-weight:800;letter-spacing:-.02em;opacity:0}
.sx-card.on .mock-t{animation:sxIn .5s ease 2s both}
.mock-l{height:4px;border-radius:2px;background:#E9ECF2;margin:6px 10px 0;width:0}
.sx-card.on .mock-l{animation:mockL .6s ease 2.4s both}.sx-card.on .mock-l.l2{animation-delay:2.7s}
@keyframes mockL{from{width:0}to{width:calc(100% - 20px)}}
.mock-l.l2{max-width:60%}
.mock-pills{display:flex;gap:5px;padding:9px 10px 10px}
.mock-pills span{padding:3px 7px;border-radius:100px;background:var(--gris);border:1px solid var(--line);font-size:7.5px;font-weight:600;color:var(--ink-2);opacity:0}
.sx-card.on .mock-pills span{animation:sxPop .4s cubic-bezier(.2,.8,.3,1) both}
.sx-card.on .mock-pills span:nth-child(1){animation-delay:3.2s}.sx-card.on .mock-pills span:nth-child(2){animation-delay:3.45s}.sx-card.on .mock-pills span:nth-child(3){animation-delay:3.7s}

/* téléphone (02 & 05) */
.ph{position:relative;width:110px;height:226px;border-radius:22px;background:#14161A;padding:5px;box-shadow:0 24px 44px -26px rgba(20,22,26,.5);margin-top:6px;opacity:0}
.sx-card.on .ph{animation:sxIn .6s cubic-bezier(.2,.8,.3,1) .1s both}
.ph::before{content:"";position:absolute;left:50%;top:10px;width:26px;height:6px;border-radius:3px;background:#14161A;transform:translateX(-50%);z-index:2}
.scr{position:relative;height:100%;border-radius:18px;background:#F5F8FF;overflow:hidden}
.scr::after{content:"";position:absolute;left:50%;bottom:5px;width:30px;height:3px;border-radius:2px;background:#C9CED6;transform:translateX(-50%)}
.scrA{position:absolute;inset:0;padding:20px 7px 10px;display:flex;flex-direction:column;gap:5px}
.ch-h{display:flex;align-items:center;gap:5px;margin-bottom:3px}
.ch-h i{width:16px;height:16px;border-radius:50%;background:var(--bleu-pale);color:var(--bleu);font-style:normal;font-size:8px;font-weight:800;display:flex;align-items:center;justify-content:center}
.ch-h b{display:block;font-size:7.5px;font-weight:800}.ch-h span{display:block;font-size:6px;color:var(--ink-3)}
.bb{max-width:86%;padding:4px 6px;border-radius:8px;font-size:6.8px;line-height:1.3;opacity:0}
.bb.g{align-self:flex-start;background:#E8ECF4;color:var(--encre);border-bottom-left-radius:3px}
.bb.b{align-self:flex-end;background:var(--bleu);color:#fff;border-bottom-right-radius:3px}
.sx-card.on .bb{animation:sxIn .4s ease both}
.sx-card.on .d1{animation-delay:.5s}.sx-card.on .d2{animation-delay:1.2s}.sx-card.on .d3{animation-delay:1.9s}.sx-card.on .d4{animation-delay:2.6s}
.sx-card.on .sc-chat .scrA{animation:sxOut .4s ease 3.5s forwards}
.scrB{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;opacity:0;padding-top:6px}
.sx-card.on .scrB{animation:sxFade .5s ease 3.8s both}
.scrB .av{width:32px;height:32px;border-radius:50%;background:var(--bleu-pale);color:var(--bleu);font-style:normal;font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:6px}
.scrB b{font-size:8px;font-weight:800}
.scrB span{font-size:6.5px;color:var(--ink-3)}
.scrB .st1,.scrB .st2{position:absolute;top:118px;white-space:nowrap}
.sx-card.on .scrB .st1{animation:sxOut .3s ease 4.9s forwards}
.scrB .st2{opacity:0;color:#1E9E5A}.sx-card.on .scrB .st2{animation:sxFade .3s ease 5s both}
.okc{width:22px;height:22px;border-radius:50%;background:#25C46B;margin-top:16px;position:relative;opacity:0;box-shadow:0 8px 18px -8px rgba(37,196,107,.9)}
.okc::after{content:"";position:absolute;left:8px;top:4px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.sx-card.on .okc{animation:sxPop .4s cubic-bezier(.2,.8,.3,1) 5s both}
.wave{display:flex;gap:2px;align-items:center;height:10px;margin-top:4px;opacity:0}
.sx-card.on .wave{animation:sxFade .3s ease 5.2s both}
.wave i{width:2px;height:4px;border-radius:1px;background:var(--bleu);animation:wv .7s ease-in-out infinite}
.wave i:nth-child(2){animation-delay:.1s;height:8px}.wave i:nth-child(3){animation-delay:.2s;height:10px}.wave i:nth-child(4){animation-delay:.3s;height:7px}.wave i:nth-child(5){animation-delay:.4s}
@keyframes wv{50%{transform:scaleY(.35)}}
.fx-ok{align-self:center;margin-top:auto;padding:4px 7px;border-radius:100px;background:#E4F7EC;color:#1E9E5A;font-size:6.8px;white-space:nowrap;font-weight:700;opacity:0}
.sx-card.on .fx-ok{animation:sxPop .4s cubic-bezier(.2,.8,.3,1) 3.6s both}
.sx-card.on .sc-fix .d3{animation-delay:2.7s}

/* 03 · lit */
.sc-bed{width:100%;max-width:240px;margin-top:0}
.sc-bed svg{width:100%;height:auto;display:block}
.sc-bed .shadow{fill:rgba(20,22,26,.08)}
.sc-bed .head{fill:#E8DEC7}.sc-bed .head-l{stroke:rgba(120,100,60,.15);stroke-width:1.5}
.sc-bed .matt{fill:#fff;stroke:#DCE2EC;stroke-width:1.5}
.sc-bed .sheet{stroke:#E6EAF1;stroke-width:1}
.sc-bed .pil{fill:#fff;stroke:#DCE2EC;stroke-width:1.5}
.sc-bed .blank{fill:url(#bk)}.sc-bed .blank-fold{stroke:rgba(255,255,255,.5);stroke-width:2}
.sc-bed .leg{fill:#D8CBAA}
.sc-bed .towels rect{fill:#fff;stroke:#DCE2EC;stroke-width:1}
.sc-bed .towels{opacity:0;transform-origin:120px 92px}
.sx-card.on .sc-bed svg{animation:sxIn .7s cubic-bezier(.2,.8,.3,1) .1s both}
.sx-card.on .sc-bed .blank{animation:blankIn .8s cubic-bezier(.2,.8,.3,1) 1s both;transform-origin:120px 128px}
@keyframes blankIn{from{transform:translateY(-14px);opacity:0}to{transform:none;opacity:1}}
.sx-card.on .sc-bed .towels{animation:sxPop .5s cubic-bezier(.2,.8,.3,1) 2.6s both}
.sx-card.on .sc-bed .pil{animation:pilIn .5s ease .7s both}.sx-card.on .sc-bed .pil+.pil{animation-delay:.9s}
@keyframes pilIn{from{transform:translateY(-6px);opacity:0}to{transform:none;opacity:1}}
.sx-card.on .sx-cap .c1{animation:sxFade .4s ease 1.8s both}.sx-card.on .sx-cap .c2{animation:sxFade .4s ease 3.2s both}

/* 04 · tarification */
.sc-price{width:100%;max-width:290px;margin-top:0}
.pc{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px 10px;box-shadow:0 20px 40px -28px rgba(20,22,26,.35);position:relative;opacity:0}
.sx-card.on .pc{animation:sxIn .6s cubic-bezier(.2,.8,.3,1) .1s both}
.pc-h{display:flex;justify-content:space-between;align-items:center}
.pc-h b{font-size:10px;font-weight:800;letter-spacing:-.02em}.pc-h span{font-size:6.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3)}
.pc-k{display:flex;gap:26px;margin-top:8px}
.pc-k span{display:block;font-size:7px;color:var(--ink-3)}
.pc-k b{display:block;font-size:19px;font-weight:800;letter-spacing:-.04em;color:var(--bleu);font-variant-numeric:tabular-nums;line-height:1.1}
.pc-line{display:block;width:100%;height:auto;margin-top:6px}
.pc-line .ar{fill:rgba(29,109,255,.1);opacity:0}
.sx-card.on .pc-line .ar{animation:sxFade .8s ease 2s both}
.pc-line .ln{fill:none;stroke:var(--bleu);stroke-width:2;stroke-linecap:round;stroke-dasharray:260;stroke-dashoffset:260}
.sx-card.on .pc-line .ln{animation:lnDraw 2.2s cubic-bezier(.3,.7,.3,1) .5s forwards}
@keyframes lnDraw{to{stroke-dashoffset:0}}
.pc-bars{display:flex;align-items:flex-end;gap:5px;height:34px;margin-top:8px}
.pc-bars i{flex:1;position:relative;height:calc(var(--h) * 100%);border-radius:3px 3px 1px 1px;background:#A9C4FF;transform:scaleY(0);transform-origin:bottom}
.pc-bars i.hi{background:#6F9BFF}
.pc-bars i em{position:absolute;left:0;right:0;top:100%;margin-top:3px;text-align:center;font-style:normal;font-size:6px;color:var(--ink-3)}
.sx-card.on .pc-bars i{animation:barUp .5s cubic-bezier(.2,.8,.3,1) both}
.sx-card.on .pc-bars i:nth-child(1){animation-delay:1.2s}.sx-card.on .pc-bars i:nth-child(2){animation-delay:1.3s}.sx-card.on .pc-bars i:nth-child(3){animation-delay:1.4s}.sx-card.on .pc-bars i:nth-child(4){animation-delay:1.5s}.sx-card.on .pc-bars i:nth-child(5){animation-delay:1.6s}.sx-card.on .pc-bars i:nth-child(6){animation-delay:1.7s}.sx-card.on .pc-bars i:nth-child(7){animation-delay:1.8s}
@keyframes barUp{from{transform:scaleY(0)}to{transform:scaleY(1)}}
.pc{padding-bottom:18px}
.pc-pill{position:absolute;right:12px;bottom:14px;padding:4px 8px;border-radius:100px;background:var(--bleu);color:#fff;font-size:7.5px;font-weight:700;opacity:0;box-shadow:0 8px 18px -8px rgba(29,109,255,.9)}
.sx-card.on .pc-pill{animation:sxPop .45s cubic-bezier(.2,.8,.3,1) 4.3s both}

/* 06 · reporting */
.sc-report{width:100%;max-width:290px;margin-top:0}
.rp{background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 14px 12px;box-shadow:0 20px 40px -28px rgba(20,22,26,.35);position:relative;opacity:0}
.sx-card.on .rp{animation:sxIn .6s cubic-bezier(.2,.8,.3,1) .1s both}
.rp-h{display:flex;align-items:center;gap:7px}
.rp-h i{width:20px;height:20px;border-radius:5px;background:var(--bleu);color:#fff;font-style:normal;font-size:7px;font-weight:800;display:flex;align-items:center;justify-content:center}
.rp-h b{display:block;font-size:9.5px;font-weight:800;letter-spacing:-.02em}.rp-h span{display:block;font-size:6.5px;color:var(--ink-3)}
.rp-h em{margin-left:auto;font-style:normal;font-size:6.5px;font-weight:700;letter-spacing:.1em;color:var(--ink-3)}
.rp-k{display:flex;gap:26px;margin-top:8px}
.rp-k span{display:block;font-size:7px;color:var(--ink-3)}
.rp-k b{display:block;font-size:17px;font-weight:800;letter-spacing:-.04em;color:var(--encre);font-variant-numeric:tabular-nums;line-height:1.1}
.rp-body{display:flex;align-items:flex-end;gap:14px;margin-top:8px}
.rp-bars{flex:1;display:flex;align-items:flex-end;gap:5px;height:38px}
.rp-bars i{flex:1;height:calc(var(--h) * 100%);border-radius:3px 3px 1px 1px;background:#8FB0FF;transform:scaleY(0);transform-origin:bottom}
.sx-card.on .rp-bars i{animation:barUp .5s cubic-bezier(.2,.8,.3,1) both}
.sx-card.on .rp-bars i:nth-child(1){animation-delay:.8s}.sx-card.on .rp-bars i:nth-child(2){animation-delay:.95s}.sx-card.on .rp-bars i:nth-child(3){animation-delay:1.1s}.sx-card.on .rp-bars i:nth-child(4){animation-delay:1.25s}.sx-card.on .rp-bars i:nth-child(5){animation-delay:1.4s}.sx-card.on .rp-bars i:nth-child(6){animation-delay:1.55s}
.rp-ring{width:46px;height:46px;flex:none}
.rp-ring .bg{fill:none;stroke:#E6EAF2;stroke-width:5}
.rp-ring .fg{fill:none;stroke:var(--bleu);stroke-width:5;stroke-linecap:round;stroke-dasharray:151;stroke-dashoffset:151;transform:rotate(-90deg);transform-origin:50% 50%}
.sx-card.on .rp-ring .fg{animation:ring 1.6s cubic-bezier(.3,.7,.3,1) 1.2s forwards}
@keyframes ring{to{stroke-dashoffset:34}}
.rp-ring text{font-size:6px;fill:var(--ink-3);text-anchor:middle;font-family:var(--sans)}
.rp-list{display:flex;flex-direction:column;gap:2px;margin-top:8px}
.rp-list em{font-style:normal;font-size:7px;color:var(--ink-3);opacity:0}
.sx-card.on .rp-list .c1{animation:sxFade .3s ease 2.6s both}.sx-card.on .rp-list .c2{animation:sxFade .3s ease 2.9s both}.sx-card.on .rp-list .c3{animation:sxFade .3s ease 3.2s both}
.rp-btn{position:absolute;left:14px;right:14px;bottom:-8px;padding:7px 10px;border-radius:8px;background:var(--bleu);color:#fff;text-align:center;font-size:8px;font-weight:700;opacity:0;box-shadow:0 12px 24px -12px rgba(29,109,255,.9)}
.sx-card.on .rp-btn{animation:sxIn .5s cubic-bezier(.2,.8,.3,1) 4.3s both}

@media(max-width:1080px){.sx-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.sx-grid{grid-template-columns:1fr;gap:11px}.sx-card{min-height:312px}.sx-foot{flex-direction:column;align-items:flex-start;gap:6px}}
@media(prefers-reduced-motion:reduce){.sx-card.on .sx-scene *{animation-duration:.01s!important;animation-delay:0s!important}}

/* ══ Articles de blog ══ */
a.post,a.featured{color:inherit;display:flex}
a.featured{display:grid}
.tm-photo{aspect-ratio:1/1}
.tm-photo img{object-position:center top}
.art-head{text-align:left}
.art-head h1{max-width:none;margin-inline:0;font-size:clamp(28px,3.4vw,44px)}
.art-head .lead{text-align:left;margin-inline:0;max-width:60ch}
.art-back{display:block;width:fit-content;margin-bottom:16px;font-size:13px;font-weight:700;color:var(--bleu)}
.art-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:20px;font-size:13px;color:var(--ink-3)}
.art-meta img{width:36px;height:36px;border-radius:50%;object-fit:cover;object-position:center top}
.art-meta b{color:var(--encre)}
.prose{font-size:17px;line-height:1.75;color:#2B2F36}
.prose h2{font-size:clamp(21px,2.1vw,27px);letter-spacing:-.035em;margin:40px 0 12px}
.prose h3{font-size:18px;margin:26px 0 8px}
.prose p{margin-top:14px}
.prose ul,.prose ol{margin:14px 0 0 22px;display:flex;flex-direction:column;gap:8px}
.prose ul{list-style:disc}.prose ol{list-style:decimal}
.prose li::marker{color:var(--bleu);font-weight:800}
.prose b,.prose strong{color:var(--encre);font-weight:700}
.prose a{color:var(--bleu);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.prose .key{margin-top:26px;padding:20px 22px;border-radius:16px;background:var(--bleu-pale);border:1px solid rgba(29,109,255,.18)}
.prose .key b.t{display:block;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--bleu);margin-bottom:6px}
.prose .key p:first-of-type{margin-top:0}
.prose .tbl{margin-top:18px;font-size:15px}
.prose .fine{margin-top:30px;padding-top:16px;border-top:1px solid var(--line);font-size:13px;color:var(--ink-3);line-height:1.6}
.art-cta{margin-top:40px;padding:clamp(22px,2.6vw,32px);border-radius:22px;color:#fff;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;
 background:linear-gradient(160deg,#171A1F 0%,#12151A 52%,#0E1B33 100%);border:1px solid rgba(255,255,255,.07)}
.art-cta b{display:block;font-size:clamp(18px,1.8vw,22px);letter-spacing:-.03em}
.art-cta p{margin-top:6px;font-size:14px;color:#9BA1AA;max-width:44ch}
@media(max-width:620px){.prose{font-size:16px}.art-cta .btn{width:100%}}
