:root{--bg:#EFEAE0;--paper:#FBF8F2;--ink:#1C1A17;--mut:#6E675C;--line:#D8D0C2;--red:#C2413A;--acc:#6C63FF;--acc-d:#4A40D4;--night:#0E0B1A;--green:#2F7A4F;--serif:'Inter',system-ui,sans-serif}
*{box-sizing:border-box;margin:0}
body{background:var(--bg);color:var(--ink);font:16px/1.65 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:3px}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:8px;background:#fff;padding:8px;z-index:9}
.wrap{padding-inline:max(16px,calc(50% - 560px))}
.top{display:flex;align-items:baseline;gap:24px;padding-block:20px;font-size:14px}
.logo{font:600 22px var(--serif);margin-right:auto;text-decoration:none}
.top nav{display:flex;gap:22px;color:var(--mut)}.top nav a{text-decoration:none}.top nav a:hover{color:var(--ink)}
@media(max-width:640px){.top nav{display:none}}
.dl{text-decoration:underline}
h1{font:400 clamp(38px,5.6vw,68px)/1.03 var(--serif);letter-spacing:-.02em;max-width:14em}
h1 i,.ph h1 i{color:var(--acc)}
h2{font:400 clamp(24px,3vw,34px)/1.15 var(--serif);letter-spacing:-.01em}
.kick{font:500 12px Inter;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);margin-bottom:18px}
.kick a{text-decoration:none}
.ph{padding-block:70px 40px;border-bottom:1px solid var(--line)}
.lede{font-size:18px;color:var(--mut);max-width:36em;margin-top:20px}
.feat{display:grid;grid-template-columns:70px 1fr;gap:20px;padding-block:44px;border-bottom:1px solid var(--line)}
.feat .no,.glist .no{font:400 17px var(--serif);color:var(--acc)}
.feat p{color:var(--mut);max-width:38em;margin-top:10px}
.figs{display:flex;flex-wrap:wrap;gap:14px 40px;margin-top:22px}
.figs dt{font-size:13px;color:var(--mut)}.figs dd{font:400 34px var(--serif);font-variant-numeric:tabular-nums}
.neg{color:var(--red)}.pos{color:var(--green)}
.note{font-size:14px}
@media(max-width:640px){.feat{grid-template-columns:1fr;gap:4px}.figs dd{font-size:28px}}
.glist{list-style:none;padding:0;margin-top:20px}
.glist li{border-bottom:1px solid var(--line)}
.glist a,.glist .soon{display:grid;grid-template-columns:60px 1fr;gap:16px;padding:28px 0;text-decoration:none}
.glist b{display:block;font:400 clamp(22px,2.6vw,30px)/1.2 var(--serif)}
.glist small{display:block;color:var(--mut);font-size:15px;margin-top:6px}
.glist a:hover b{color:var(--acc-d)}.glist .soon{opacity:.55}
.guide{max-width:720px;padding-block:70px 30px}
.guide h2{margin:48px 0 14px}
.guide p,.guide li{color:#3d3831}.guide p+p{margin-top:12px}
.answer{background:var(--paper);border-left:3px solid var(--acc);padding:20px 24px;margin-top:30px;box-shadow:0 20px 40px -30px rgba(40,30,10,.35)}
.answer p{color:var(--ink);font-size:17px}
.tb{width:100%;border-collapse:collapse;margin-top:12px;font-size:15px}
.tb th,.tb td{text-align:left;padding:11px 8px;border-bottom:1px solid var(--line);vertical-align:top}
.tb thead th{font:500 12px Inter;letter-spacing:.08em;text-transform:uppercase;color:var(--mut)}
.tb.num td:last-child,.tb.num th:last-child{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.tb tbody th{font-weight:600}
.calc{margin-top:16px;padding-left:20px;display:grid;gap:8px}
.faq{padding-block:20px 40px;max-width:780px}
.faq details{border-bottom:1px solid var(--line);padding:22px 0}
.faq summary{font:400 clamp(20px,2.4vw,26px)/1.3 var(--serif);cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--acc);transition:transform .2s}.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{color:var(--mut);margin-top:12px;max-width:38em}
.end{padding-block:90px 50px;text-align:center}
.end-t{font:400 clamp(28px,4vw,44px) var(--serif)}
.stores{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin-top:22px}
.store{display:inline-flex;align-items:center;min-height:46px;padding:0 18px;border-radius:99px;border:1px solid var(--ink);text-decoration:none;font-weight:500;font-size:14px}
.store.soon{opacity:.55;cursor:default}
.store.p{background:var(--acc);border-color:var(--acc);color:#fff}
.fine{font-size:12.5px;color:var(--mut);margin-top:12px}
footer{padding-block:36px;display:flex;flex-wrap:wrap;gap:8px 22px;font-size:14px;border-top:1px solid var(--line);color:var(--mut)}
footer span{font:600 16px var(--serif);color:var(--ink);margin-right:auto}footer .fine{flex-basis:100%}
.kick{color:var(--acc-d)}
.feat.has-shot{grid-template-columns:70px 1fr 220px;align-items:start}
.shot{margin:0;width:220px;aspect-ratio:640/1387;border-radius:30px;padding:6px;background:linear-gradient(145deg,#3a3550,#121019);box-shadow:0 30px 60px -24px rgba(14,11,26,.55)}
.shot img{width:100%;height:100%;object-fit:cover;border-radius:24px;display:block}
@media(max-width:860px){.feat.has-shot{grid-template-columns:1fr}.shot{width:180px;margin-top:20px}}
.end{background:var(--night);color:#EEEAFF;border-radius:28px;margin:60px max(8px,calc(50% - 600px)) 0}
.end .fine{color:#A9A4C7}.end .store{border-color:#EEEAFF}

/* Police de l'app : Inter, titres gras et serrés, accent sans italique */
h1,h2,h3,.intro h1,.chap h3,.story-h h2,.proof h2,.final h2,.app-h h2,.end-t,.glist b,.faq summary,.feat h2{font-weight:700!important;letter-spacing:-.035em!important}
h1 i,h2 i,h3 i{font-style:normal!important}
.chap .fig b,.cfb dd,.rows dd,.figs dd,.ch .fig,.dev-n{font-weight:700!important;letter-spacing:-.03em}
.chap .n,.sheet h3,.vols button,.logo,footer span{font-style:normal!important;font-weight:600!important}

.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding-block:50px 20px;align-items:start}
.plan{background:#fff;border:1px solid var(--line);border-radius:24px;padding:30px 26px;position:relative}
.plan.best{background:var(--night);color:#EEEAFF;border-color:var(--night);box-shadow:0 40px 80px -30px rgba(14,11,26,.55)}
.plan .badge{position:absolute;top:-13px;left:26px;background:var(--acc);color:#fff;font:600 12px Inter;padding:5px 12px;border-radius:99px}
.plan h2{font-size:22px}
.price{margin-top:16px;display:flex;align-items:baseline;gap:8px}.price b{font-size:46px;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.price span{color:var(--mut);font-size:14px}
.best .price span,.best .pnote{color:#A9A4C7}
.pnote{font-size:13.5px;color:var(--mut);margin-top:4px;min-height:2.6em}
.plan ul{list-style:none;padding:20px 0 0;margin-top:18px;border-top:1px solid var(--line);display:grid;gap:10px;font-size:15px}
.best ul{border-color:#2E2A40}
.plan li{padding-left:24px;position:relative}.plan li::before{content:"";position:absolute;left:2px;top:.45em;width:12px;height:7px;border-left:2px solid var(--acc);border-bottom:2px solid var(--acc);transform:rotate(-45deg)}
.best li::before{border-color:#8B84FF}
.legal{font-size:13px;color:var(--mut);max-width:52em;padding-bottom:20px}
@media(max-width:860px){.plans{grid-template-columns:1fr;gap:26px}}

.plans{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:860px){.plans{grid-template-columns:minmax(0,1fr)}}.plan{min-width:0}
