:root{--brand-red:#ff3d5a;--brand-blue:#1f4fa3;--brand-yellow:#ffc93c;--brand-paper:#f7f5f0;--brand-ink:#1c1e24;--brand-line:#d9d4c7;--ink-2:#262932;--mute-d:rgba(247,245,240,.68);--mute-l:rgba(28,30,36,.68);--rule-d:rgba(247,245,240,.14);--rule-l:rgba(28,30,36,.14);--font-sans:"Inter Tight",system-ui,-apple-system,"Segoe UI",sans-serif;--font-serif:"Instrument Serif",Georgia,serif;--pad:clamp(1.25rem,4vw,4rem);--max:1520px;--r:18px;--s1:.5rem;--s2:1rem;--s3:1.5rem;--s4:2.5rem;--s5:4rem;--s6:clamp(5rem,11vw,10rem);--ease:cubic-bezier(.16,1,.3,1);--grain: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' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overflow-anchor:none}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;background:var(--brand-paper);color:var(--brand-ink);font-family:var(--font-sans);font-size:clamp(1rem,.95rem + .2vw,1.125rem);line-height:1.55;overflow-x:hidden;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--brand-red);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:1rem;top:-4rem;z-index:300;background:var(--brand-red);color:var(--brand-ink);padding:.7rem 1.1rem;border-radius:99px;font-weight:600;text-decoration:none}
.skip:focus{top:1rem}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.container{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--pad)}
.section{padding-block:var(--s6);position:relative}
.dark{background:var(--brand-ink);color:var(--brand-paper);position:relative;isolation:isolate}
.dark::before{content:"";position:absolute;inset:0;background-image:var(--grain);opacity:.04;pointer-events:none;z-index:-1}
/* typographie */
.t{font-weight:650;line-height:.92;letter-spacing:-.045em;margin:0;text-wrap:balance}
.t em,.em{font-family:var(--font-serif);font-style:italic;font-weight:400;letter-spacing:-.01em;color:var(--brand-red);padding-right:.04em}
.t-xl{font-size:clamp(2.45rem,6.6vw,8.6rem)}
.t-l{font-size:clamp(2.2rem,5.2vw,6rem)}
.t-m{font-size:clamp(1.8rem,3.4vw,3.6rem)}
.eyebrow{display:flex;gap:.6em;align-items:center;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;margin:0 0 var(--s3)}
.eyebrow b{font-weight:600;color:var(--brand-red);font-variant-numeric:tabular-nums}
.lead{font-size:clamp(1.1rem,1rem + .5vw,1.4rem);line-height:1.45;max-width:46ch;margin:0}
.dark .lead,.dark .mute{color:var(--mute-d)}
.mute{color:var(--mute-l)}
.line{display:block;overflow:hidden;padding-bottom:.12em;margin-bottom:-.12em}
.line__in{display:block}
.w{display:inline-block}
/* liens & boutons */
.link{display:inline-flex;align-items:center;gap:.5em;font-weight:600;text-decoration:none;background:linear-gradient(var(--brand-red),var(--brand-red)) 0 100%/100% 1px no-repeat;padding-bottom:.2em;transition:background-size .5s var(--ease)}
.link::after{content:"→";transition:transform .4s var(--ease)}
.link:hover{background-size:0 1px;background-position:100% 100%}
.link:hover::after{transform:translateX(4px)}
.btn{--bg:var(--brand-red);--fg:var(--brand-ink);display:inline-flex;align-items:center;justify-content:center;gap:.6em;min-height:3.25rem;padding:0 1.6rem;border-radius:99px;background:var(--bg);color:var(--fg);border:1px solid var(--bg);font:600 1rem/1 var(--font-sans);letter-spacing:-.01em;text-decoration:none;cursor:pointer;position:relative;overflow:hidden;transition:background .4s var(--ease),color .4s var(--ease)}
.btn__t{display:grid;overflow:hidden;height:1.2em;line-height:1.2em}
.btn__t>span{grid-area:1/1;transition:transform .55s var(--ease)}
.btn__t>span+span{transform:translateY(110%)}
.btn:hover .btn__t>span:first-child{transform:translateY(-110%)}
.btn:hover .btn__t>span+span{transform:none}
.btn--ghost{--bg:transparent;--fg:currentColor;border-color:currentColor}
.btn--ghost:hover{--bg:var(--brand-paper);--fg:var(--brand-ink);border-color:var(--brand-paper)}
.btn-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s3)}
/* chargement */
#loader{position:fixed;inset:0;z-index:500;animation:ldOut .4s ease 6s forwards}
@keyframes ldOut{to{opacity:0;visibility:hidden}}
.ld__red,.ld__ink{position:absolute;inset:0;clip-path:inset(0% 0% 0% 0%)}
.ld__red{background:var(--brand-red)}
.ld__ink{background:var(--brand-ink);color:var(--brand-paper);display:grid;grid-template-rows:auto 1fr auto;padding:var(--pad) var(--pad) calc(var(--pad) + .75rem);isolation:isolate}
.ld__ink::before{content:"";position:absolute;inset:0;background-image:var(--grain);opacity:.05;pointer-events:none;z-index:-1}
.ld__top{display:flex;justify-content:space-between;gap:1rem;overflow:hidden;font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--mute-d)}
.ld__top span{display:block}
.ld__wm{--p:0;position:relative;display:grid;place-self:center;overflow:hidden;padding:.06em 0 .1em;font-weight:700;font-size:clamp(4.5rem,21vw,17rem);letter-spacing:-.065em;line-height:.9}
.ld__o,.ld__f{grid-area:1/1;display:flex;white-space:nowrap;padding-inline:.02em .1em}
.ld__wm i{display:block;font-style:normal}
.ld__o{color:transparent;-webkit-text-stroke:1px rgba(247,245,240,.38)}
.ld__f{clip-path:inset(0 calc(100% - var(--p) * 1%) 0 0)}
.ld__f .r{color:var(--brand-red)}
.ld__scan{position:absolute;top:6%;bottom:6%;left:calc(var(--p) * 1%);width:2px;background:var(--brand-red);box-shadow:0 0 24px 3px rgba(255,61,90,.6);opacity:0}
.ld__bot{display:flex;justify-content:space-between;align-items:end;gap:1rem}
.ld__steps{display:grid;gap:.5rem}
.ld__sn{font-size:.72rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--mute-d)}
.ld__wd{display:block;height:1.15em;overflow:hidden;font-family:var(--font-serif);font-style:italic;font-size:clamp(1.6rem,3vw,2.6rem);line-height:1.15}
.ld__wl{display:flex;flex-direction:column;transition:transform .6s var(--ease)}
.ld__wl span{display:block;height:1.15em;white-space:nowrap}
.ld__count{font-weight:650;font-size:clamp(3rem,9vw,8rem);letter-spacing:-.06em;line-height:.85;font-variant-numeric:tabular-nums}
.ld__count::after{content:"%";font-size:.35em;letter-spacing:0;color:var(--brand-red);margin-left:.1em;vertical-align:top}
.ld__bar{position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--rule-d)}
.ld__bar i{display:block;height:100%;background:var(--brand-red);transform:scaleX(0);transform-origin:left}
.wm span{color:var(--brand-red)}
.pt{position:fixed;inset:0;z-index:450;background:var(--brand-ink);transform:translateY(100%);pointer-events:none}
/* curseur */
.cursor{position:fixed;left:0;top:0;z-index:400;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--brand-paper);mix-blend-mode:difference;pointer-events:none;display:none;place-items:center;transition:width .35s var(--ease),height .35s var(--ease),margin .35s var(--ease)}
.cursor.is-on{display:grid}
.cursor span{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-ink);transform:scale(0);transition:transform .3s var(--ease)}
.cursor.is-big{width:76px;height:76px;margin:-38px 0 0 -38px}
.cursor.is-big span{transform:none}
/* navigation */
.nav{position:fixed;inset:0 0 auto;z-index:200;color:var(--brand-paper);transition:transform .5s var(--ease),background .4s,border-color .4s;border-bottom:1px solid transparent}
.nav--solid{background:rgba(28,30,36,.78);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-color:var(--rule-d)}
.nav--hidden{transform:translateY(-101%)}
.nav__in{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);height:4.75rem}
.wm{font-weight:700;font-size:1.6rem;letter-spacing:-.06em;text-decoration:none;line-height:1}
.nav__links{display:flex;align-items:center;gap:clamp(1rem,2.4vw,2.4rem);list-style:none;margin:0;padding:0}
.nav__links a:not(.btn){text-decoration:none;font-weight:500;font-size:.98rem;position:relative;padding-block:.3em}
.nav__links a:not(.btn)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--brand-red);transform:scaleX(0);transform-origin:right;transition:transform .5s var(--ease)}
.nav__links a:hover::after,.nav__links a[aria-current]::after{transform:scaleX(1);transform-origin:left}
.nav .btn{min-height:2.75rem;padding:0 1.2rem;font-size:.95rem}
.nav__toggle{display:none;background:none;border:1px solid var(--rule-d);color:inherit;border-radius:99px;padding:.6rem 1.1rem;font:600 .9rem var(--font-sans);cursor:pointer}
.menu{position:fixed;inset:0;z-index:190;background:var(--brand-ink);color:var(--brand-paper);padding:7rem var(--pad) var(--pad);display:flex;flex-direction:column;justify-content:space-between;visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path .7s var(--ease),visibility 0s .7s}
.menu.is-open{visibility:visible;clip-path:inset(0);transition:clip-path .7s var(--ease)}
.menu ul{list-style:none;margin:0;padding:0}
.menu li{overflow:hidden;border-bottom:1px solid var(--rule-d)}
.menu li a{display:block;padding:.35em 0;font-size:clamp(2.3rem,11vw,4.5rem);font-weight:650;letter-spacing:-.045em;line-height:1;text-decoration:none}
.menu li a[aria-current]{color:var(--brand-red)}
.menu p{margin:0;color:var(--mute-d)}
.menu p a{color:var(--brand-paper)}
.lang{display:inline-flex;align-items:center;gap:.15rem;padding:.2rem;border:1px solid var(--rule-d);border-radius:99px;font-size:.76rem;font-weight:600;letter-spacing:.08em;line-height:1}
.lang>*{display:grid;place-items:center;min-width:2.2rem;height:2rem;padding:0 .5rem;border-radius:99px;text-decoration:none}
.lang a{color:var(--mute-d);transition:color .3s var(--ease),background .3s var(--ease)}
.lang a:hover{color:var(--brand-paper);background:rgba(247,245,240,.08)}
.lang [aria-current]{background:var(--brand-paper);color:var(--brand-ink)}
.nav__links .lang a{padding:0;font-size:inherit}
.nav__links .lang a::after{display:none}
/* héros */
.hero{min-height:100svh;padding-top:clamp(7.5rem,14vh,10rem);padding-bottom:var(--s4);display:flex;flex-direction:column;overflow:hidden}
.hero .t{max-width:15.5ch}
.hero__row{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,6rem);align-items:end;margin-top:clamp(2.5rem,5vw,4.5rem)}
.hero__copy{display:grid;gap:var(--s4);padding-bottom:var(--s3)}
.hero__foot{display:grid;grid-template-columns:1.4fr auto 1fr;gap:var(--s3);align-items:end;margin-top:auto;padding-top:var(--s5);border-top:1px solid var(--rule-d);font-size:.85rem;color:var(--mute-d)}
.hero__foot p{margin:0;padding-top:var(--s2)}
.hero__foot strong{color:var(--brand-paper);font-weight:600}
.scroll-ind{display:inline-flex;align-items:center;gap:.6em;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem}
.scroll-ind i{width:1px;height:28px;background:var(--rule-d);position:relative;overflow:hidden}
.scroll-ind i::after{content:"";position:absolute;inset:0;background:var(--brand-red);animation:drip 1.8s var(--ease) infinite}
@keyframes drip{from{transform:translateY(-100%)}to{transform:translateY(100%)}}
.clock{text-align:right;font-variant-numeric:tabular-nums}
/* maquette signature */
.stage{perspective:1400px}
.mock{--rv:100;margin:0;border-radius:var(--r);background:#2a2d36;border:1px solid var(--rule-d);box-shadow:0 40px 90px -30px rgba(0,0,0,.65);transform-style:preserve-3d;font-size:clamp(.5rem,.95vw,1rem)}
.mock__bar{display:flex;align-items:center;gap:.45rem;padding:.75rem 1rem;border-bottom:1px solid var(--rule-d);font-size:.75rem;color:var(--mute-d)}
.mock__bar i{width:9px;height:9px;border-radius:50%;background:rgba(247,245,240,.22)}
.mock__bar span{margin-left:.7rem;padding:.2rem .8rem;border-radius:99px;background:rgba(247,245,240,.07)}
.mock__view{position:relative;aspect-ratio:16/10.5;overflow:hidden;border-radius:0 0 var(--r) var(--r)}
.mk{position:absolute;inset:0;display:grid;grid-template-rows:auto 1fr auto;gap:1.4em;padding:1.6em 2em;color:var(--brand-ink)}
.mk--wire{background:var(--brand-paper);background-image:linear-gradient(var(--rule-l) 1px,transparent 1px),linear-gradient(90deg,var(--rule-l) 1px,transparent 1px);background-size:2.4em 2.4em}
.mk--final{background:var(--brand-paper);clip-path:inset(0 calc(100% - var(--rv) * 1%) 0 0)}
.mock__scan{position:absolute;top:0;bottom:0;left:calc(var(--rv) * 1%);width:1px;background:var(--brand-red);box-shadow:0 0 18px 2px rgba(255,61,90,.55)}
.mock[style*="--rv: 100"] .mock__scan,.mock:not([style]) .mock__scan{display:none}
.mk__top{display:flex;justify-content:space-between;align-items:center;gap:1em}
.mk__hero{display:grid;grid-template-columns:1.1fr 1fr;gap:1.6em;align-items:stretch}
.mk__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.9em}
.wf{display:block;border:1px dashed rgba(28,30,36,.35);border-radius:.4em}
.wf-l{display:block;height:.7em;border-radius:99px;background:rgba(28,30,36,.14);margin-top:.6em}
.mk--wire .mk__cards .wf{height:5.4em}
.mk__logo{font-family:var(--font-serif);font-style:italic;font-size:1.6em;line-height:1}
.mk__nav{display:flex;gap:1.2em;font-size:.9em;font-weight:500}
.mk__badge{font-size:.75em;font-weight:700;text-transform:uppercase;letter-spacing:.12em;background:var(--brand-ink);color:var(--brand-paper);padding:.35em .8em;border-radius:99px}
.mk__h{font-size:2.7em;font-weight:650;letter-spacing:-.04em;line-height:.95;margin:0}
.mk__h em{font-family:var(--font-serif);font-weight:400;color:var(--brand-blue)}
.mk__p{font-size:1em;margin:.8em 0 1.2em;color:var(--mute-l)}
.mk__btn{display:inline-block;background:var(--brand-ink);color:var(--brand-paper);border-radius:99px;padding:.6em 1.2em;font-weight:600;font-size:.9em}
.mk__img{border-radius:.8em;background:radial-gradient(circle at 30% 70%,#e9a43a 0 18%,transparent 19%),radial-gradient(ellipse 32% 18% at 66% 58%,#c97a2a 0 98%,transparent 100%),radial-gradient(circle at 75% 25%,var(--brand-paper) 0 10%,transparent 11%),var(--brand-yellow);position:relative;overflow:hidden}
.mk__img::after{content:"";position:absolute;left:0;right:0;bottom:0;height:28%;background:var(--brand-blue)}
.mk__card{background:#fff;border:1px solid var(--rule-l);border-radius:.7em;padding:.8em 1em;font-size:.85em}
.mk__card b{display:block;font-size:.8em;text-transform:uppercase;letter-spacing:.12em;color:var(--brand-red);margin-bottom:.3em}
.mock figcaption{display:flex;justify-content:space-between;gap:1rem;padding:.8rem 1rem;font-size:.78rem;color:var(--mute-d);border-top:1px solid var(--rule-d)}
/* manifeste */
.manifest p{font-size:clamp(1.9rem,4vw,4.6rem);font-weight:600;line-height:1.04;letter-spacing:-.04em;margin:0;max-width:24ch}
.manifest p em{font-family:var(--font-serif);font-style:italic;font-weight:400;color:var(--brand-red)}
/* constat */
.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:var(--s5);border-top:1px solid var(--rule-l)}
.stat{padding:var(--s4) clamp(1rem,2.5vw,2.5rem) 0;border-left:1px solid var(--rule-l)}
.stat:first-child{border-left:0;padding-left:0}
.stat__n{display:block;font-size:clamp(3.4rem,8.4vw,9rem);font-weight:650;letter-spacing:-.06em;line-height:.9;font-variant-numeric:tabular-nums;white-space:nowrap}
.stat__n small{font-size:.45em;letter-spacing:-.02em;color:var(--brand-red);margin-left:.06em}
.stat p{margin:var(--s3) 0 0;max-width:32ch}
.source{margin-top:var(--s5);font-size:.9rem;color:var(--mute-l)}
.source a{color:var(--brand-blue);text-underline-offset:3px}
/* étapes */
.steps{overflow:hidden}
.steps__head{display:flex;justify-content:space-between;align-items:end;gap:var(--s3);flex-wrap:wrap;padding-top:var(--s6)}
.steps__track{display:flex;gap:clamp(1rem,2vw,2rem);padding:var(--s5) var(--pad) var(--s4)}
.step{flex:0 0 min(78vw,620px);min-height:min(62vh,560px);border:1px solid var(--rule-d);border-radius:var(--r);padding:clamp(1.5rem,3vw,2.75rem);display:flex;flex-direction:column;background:rgba(247,245,240,.025)}
.step__num{font-size:clamp(6rem,14vw,13rem);font-weight:700;letter-spacing:-.07em;line-height:.8;color:transparent;-webkit-text-stroke:1px rgba(247,245,240,.45)}
.step__tag{margin-top:auto;padding-top:var(--s4);font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:var(--brand-red);font-weight:600}
.step h3{font-size:clamp(1.8rem,3vw,3rem);letter-spacing:-.04em;line-height:1;margin:.4em 0 .35em;font-weight:650}
.step p{margin:0;color:var(--mute-d);max-width:38ch}
.steps__bar{height:1px;background:var(--rule-d);margin:0 var(--pad) var(--s5)}
.steps__bar i{display:block;height:100%;background:var(--brand-red);transform-origin:left}
/* abonnement */
.sub__head{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);align-items:end;margin-bottom:var(--s5)}
.stack{display:grid;gap:var(--s4)}
.card-s{position:sticky;top:calc(6rem + var(--i) * 1.5rem);display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(1.5rem,4vw,4rem);align-items:center;background:#fff;border:1px solid var(--rule-l);border-radius:20px;padding:clamp(1.5rem,4vw,3.5rem);transform-origin:50% 0;box-shadow:0 30px 60px -40px rgba(28,30,36,.35)}
.card-s__n{font-size:.8rem;letter-spacing:.14em;color:var(--brand-red);font-weight:600}
.card-s h3{font-size:clamp(2rem,4.2vw,4.4rem);letter-spacing:-.045em;line-height:.95;margin:.3em 0 .35em;font-weight:650}
.card-s p{margin:0;max-width:36ch;color:var(--mute-l)}
.ui{background:var(--brand-ink);color:var(--brand-paper);border-radius:14px;padding:clamp(1.1rem,2.5vw,1.8rem);font-size:.9rem;position:relative}
.ui__tag{position:absolute;top:1rem;right:1rem;font-size:.68rem;text-transform:uppercase;letter-spacing:.14em;color:var(--mute-d)}
.ui__title{font-weight:600;margin:0 0 1rem}
.gauge{display:flex;align-items:end;gap:5px;height:90px}
.gauge i{flex:1;background:rgba(247,245,240,.16);border-radius:3px;height:var(--h)}
.gauge i:nth-child(3n){background:var(--brand-blue)}
.status{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.status span{padding:.3rem .75rem;border-radius:99px;border:1px solid var(--rule-d);font-size:.78rem}
.status span::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--brand-yellow);margin-right:.45rem}
.log{list-style:none;margin:0;padding:0}
.log li{display:flex;gap:.8rem;align-items:center;padding:.65rem 0;border-top:1px solid var(--rule-d)}
.log li::before{content:"";width:8px;height:8px;border-radius:50%;flex:none;background:var(--brand-red)}
.log li:nth-child(2)::before{background:var(--brand-yellow)}
.log li:nth-child(3)::before{background:var(--brand-blue)}
.hours{display:grid;gap:.6rem}
.hours label{display:grid;grid-template-columns:5.5rem 1fr;align-items:center;gap:.6rem;font-size:.85rem}
.hours input{width:100%;min-width:0;background:rgba(247,245,240,.06);border:1px solid var(--rule-d);border-radius:8px;color:var(--brand-paper);font:inherit;padding:.5rem .7rem}
.hours input:focus{border-color:var(--brand-red);outline:none}
.hours button{justify-self:start;margin-top:.4rem;min-height:2.4rem;font-size:.85rem;padding:0 1rem}
.hours output{font-size:.8rem;color:var(--brand-yellow);min-height:1.2em}
.sub__links{display:flex;flex-wrap:wrap;gap:var(--s4);margin-top:var(--s5)}
/* pour qui */
.qui{padding-top:var(--s6);overflow:hidden}
.mq{overflow:hidden;padding-block:var(--s3);border-block:1px solid var(--rule-l);margin-top:var(--s4)}
.mq__track{display:flex;width:max-content;animation:mq 40s linear infinite}
.mq.is-js .mq__track{animation:none}
@keyframes mq{to{transform:translateX(-50%)}}
.mq__w{font-size:clamp(3.2rem,9vw,9rem);font-weight:700;letter-spacing:-.05em;line-height:1;color:transparent;-webkit-text-stroke:1px var(--brand-ink);padding-inline:.35em;transition:color .35s var(--ease),-webkit-text-stroke-color .35s;white-space:nowrap}
.mq__w:hover{color:var(--brand-red);-webkit-text-stroke-color:var(--brand-red)}
.mq__w::after{content:"·";color:var(--brand-red);-webkit-text-stroke:0;padding-left:.7em}
.qui__grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s4);padding-block:var(--s5) var(--s6)}
/* studio */
.studio__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:var(--s5) clamp(2rem,6vw,6rem)}
.cards3{display:grid;gap:var(--s2)}
.card{border:1px solid var(--rule-l);border-radius:var(--r);padding:clamp(1.25rem,2.5vw,2rem);background:#fff}
.card h3{margin:0 0 .4em;font-size:1.3rem;letter-spacing:-.03em;font-weight:650}
.card p{margin:0;color:var(--mute-l)}
.promise{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.promise .card{background:transparent}
.promise ul{margin:.6em 0 0;padding:0;list-style:none}
.promise li{padding:.75em 0 .75em 1.8em;border-top:1px solid var(--rule-l);position:relative}
.promise li::before{content:"✓";position:absolute;left:0;color:var(--brand-blue);font-weight:700}
.promise .card--no li::before{content:"×";color:var(--brand-red);font-size:1.2em;line-height:1.1}
/* CTA */
.cta{text-align:center;overflow:hidden;--hx:50%;--hy:50%}
.cta::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(600px circle at var(--hx) var(--hy),rgba(255,61,90,.16),transparent 60%)}
.cta .t{max-width:13ch;margin-inline:auto}
.cta .eyebrow{justify-content:center}
.cta .lead{margin:var(--s4) auto}
.cta .btn-row{justify-content:center}
/* pied de page */
.footer{padding-top:var(--s6);overflow:hidden}
.footer__grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:var(--s4)}
.footer h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;color:var(--mute-d);font-weight:600;margin:0 0 var(--s2)}
.footer ul{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.footer ul a{text-decoration:none}
.footer ul a:hover,.footer ul a[aria-current]{color:var(--brand-red)}
.footer__base{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s5);padding-block:var(--s3);border-top:1px solid var(--rule-d);font-size:.88rem;color:var(--mute-d)}
.footer__big{overflow:hidden;line-height:.78;padding-bottom:.02em}
.footer__big span{display:block;font-weight:700;font-size:33.5vw;letter-spacing:-.075em;text-align:center;white-space:nowrap;margin-left:-.04em}
.footer__big b{color:var(--brand-red);font-weight:700}
/* responsive */
@media (max-width:1100px){.hero__row{grid-template-columns:1fr}.stage{max-width:760px}.studio__grid{grid-template-columns:1fr}}
@media (max-width:959px){.steps__track{flex-direction:column;padding-inline:var(--pad)}.step{flex:none;min-height:0}.steps__bar{display:none}.card-s{grid-template-columns:1fr}.sub__head,.qui__grid{grid-template-columns:1fr}}
@media (max-width:860px){.nav__links{display:none}.nav__toggle{display:inline-flex}.stats{grid-template-columns:1fr}.stat{border-left:0;padding-left:0;padding-bottom:var(--s4);border-bottom:1px solid var(--rule-l)}.hero__foot{grid-template-columns:1fr 1fr}.hero__foot>p:first-child{grid-column:1/-1}.footer__grid,.promise{grid-template-columns:1fr}}
@media (max-width:560px){.btn-row .btn{width:100%}.hero__copy .btn-row{flex-direction:column;align-items:stretch}.mk{padding:1.1em 1.2em;gap:1em}.mk__nav{display:none}.mock__bar span{display:none}.card-s{top:calc(5.5rem + var(--i) * 1rem)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}#loader,.pt,.cursor,.mock__scan{display:none!important}.mq__track{flex-wrap:wrap;width:auto}.mq__track [aria-hidden]{display:none}.card-s{position:relative;top:0}}