
:root{
  --white:#FFFFFF; --gray:#F4F6FB; --gray2:#E6EAF3; --line:#D5DAE6;
  --ink:#000532; --muted:#5B6078; --faint:#8A8EA3;
  --blue:#0166F8; --blue-h:#0057D9; --link:#0166F8;
  --brand1:#0166F8; --brand2:#000532;
  --grad:linear-gradient(135deg,#2F80FF 0%,#0166F8 55%,#0152CC 100%);
  --grad-text:linear-gradient(90deg,#0166F8 0%,#0166F8 40%,#4C93FF 100%);
  --ok:#248A3D; --ok-bg:#E3F5E8; --warn:#B25000; --warn-bg:#FFF1E0; --bad:#D70015; --bad-bg:#FDE7E9; --in-bg:#E6F0FF;
  --black:#000; --dark2:#161617;
  --font:"Inter",-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  --display:"Sora","Inter",sans-serif;
  --pad:22px; --safe-b:env(safe-area-inset-bottom,0px);
  --ease:cubic-bezier(.28,.11,.32,1);
  --spring:cubic-bezier(.2,.9,.25,1.05);
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--white);color:var(--ink);font-family:var(--font);font-size:17px;line-height:1.47;letter-spacing:-0.022em;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3{margin:0;font-family:var(--display);font-weight:600;letter-spacing:-0.04em;line-height:1.08}
p{margin:0}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;letter-spacing:inherit}
svg{flex:none}
[hidden]{display:none!important}
.wrap{width:100%;max-width:1040px;margin:0 auto;padding:0 var(--pad)}
.wide{max-width:1220px}
.center{text-align:center;margin-left:auto;margin-right:auto}
.grad-text{background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{font-size:clamp(17px,2.4vw,21px);font-weight:600;color:var(--muted);letter-spacing:-0.02em}
.eyebrow.blue{color:var(--blue)}
.h2{font-size:clamp(36px,7.6vw,64px);margin-top:8px}
.lead{font-size:clamp(18px,2.6vw,24px);color:var(--muted);font-weight:500;line-height:1.35;margin-top:16px;letter-spacing:-0.02em}
.sec{padding:96px 0}
@media(min-width:834px){.sec{padding:140px 0}:root{--pad:32px}}

/* ===== Transizioni allo scroll ===== */
.rv{opacity:0;transform:translateY(40px);filter:blur(6px);transition:opacity 1s var(--ease),transform 1s var(--ease),filter 1s var(--ease)}
.rv.in{opacity:1;transform:none;filter:none}
.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}.rv.d4{transition-delay:.32s}.rv.d5{transition-delay:.4s}
.zoom{opacity:0;transform:scale(.94);transition:opacity 1.1s var(--ease),transform 1.1s var(--ease)}
.zoom.in{opacity:1;transform:none}
.word{display:inline-block;opacity:0;transform:translateY(.45em);filter:blur(8px);transition:opacity .9s var(--ease),transform .9s var(--ease),filter .9s var(--ease)}
.loaded .word{opacity:1;transform:none;filter:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.rv,.zoom,.word{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}}

/* ===== Logo ===== */
.logo{display:inline-flex;align-items:center}
.wordmark{height:29px;width:auto;display:block}
.mark{width:28px;height:28px;display:block}

/* ===== Pulsanti ===== */
.pill{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;padding:0 24px;border-radius:980px;background:var(--blue);color:#fff;font-size:17px;font-weight:500;border:0;transition:background .25s var(--ease),transform .25s var(--ease)}
.pill:hover{background:var(--blue-h)}
.pill:active{transform:scale(.97)}
.pill.sm{min-height:30px;padding:0 13px;font-size:13px;font-weight:500}
.pill.dark{background:var(--ink)}
.pill.light{background:#fff;color:var(--ink)}
.pill[disabled]{opacity:.55;cursor:wait}
.more{display:inline-flex;align-items:center;gap:4px;color:var(--link);font-size:17px;font-weight:500}
.more:hover{text-decoration:underline}
.more svg{transition:transform .25s var(--ease)}
.more:hover svg{transform:translateX(3px)}
.ctas{display:flex;flex-wrap:wrap;gap:14px 28px;align-items:center;justify-content:center;margin-top:28px}

/* ===== Ribbon + Nav ===== */
.ribbon{background:var(--gray);text-align:center;font-size:14px;color:var(--ink);padding:11px var(--pad)}
.ribbon a{color:var(--link);white-space:nowrap}
.ribbon a:hover{text-decoration:underline}
.nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.72);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);transition:box-shadow .3s}
.nav.scrolled{box-shadow:0 1px 0 rgba(0,0,0,.08)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:52px;gap:20px}
.nav-links{display:none;gap:30px;font-size:13px;color:rgba(29,29,31,.8)}
.nav-links a{transition:color .2s}.nav-links a:hover{color:var(--ink)}
@media(min-width:834px){.nav-links{display:flex}}

/* ===== 1. HERO ===== */
.hero{padding:64px 0 0;text-align:center;overflow:hidden}
@media(min-width:834px){.hero{padding-top:96px}}
.hero .tag{display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--blue);margin-bottom:14px}
.hero .tag b{font-size:12px;font-weight:700;padding:3px 9px;border-radius:99px;background:var(--grad);color:#fff;letter-spacing:0}
.hero h1{font-size:clamp(38px,8.6vw,80px);font-weight:600;letter-spacing:-0.05em;line-height:1.06;max-width:980px;margin:0 auto}
.hero .lead{max-width:700px;margin:22px auto 0}
.checks{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 22px;margin-top:22px;font-size:14px;color:var(--muted)}
.checks span{display:inline-flex;align-items:center;gap:6px}

/* Product shot */
.shot-wrap{perspective:1600px;margin-top:64px;padding:0 var(--pad)}
@media(min-width:834px){.shot-wrap{margin-top:80px}}
.shot{position:relative;max-width:1080px;margin:0 auto;transform-origin:50% 0;will-change:transform;transform:rotateX(var(--rx,18deg)) scale(var(--sc,.92));transition:transform .08s linear}
.screen{display:none;border-radius:18px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.06),0 50px 100px -30px rgba(0,30,90,.35),0 30px 60px -30px rgba(0,0,0,.25);overflow:hidden;text-align:left}
@media(min-width:760px){.screen{display:block}}
.win-bar{height:38px;background:#F6F6F8;border-bottom:1px solid #ECECF0;display:flex;align-items:center;gap:7px;padding:0 14px}
.win-bar i{width:11px;height:11px;border-radius:50%;background:#FF5F57}.win-bar i:nth-child(2){background:#FEBC2E}.win-bar i:nth-child(3){background:#28C840}
.win-bar span{margin:0 auto;font-size:12px;color:var(--faint);padding:4px 60px;border-radius:7px;background:#ECECF0}
.app{display:grid;grid-template-columns:190px 1fr;min-height:470px}
.a-side{background:#FAFAFC;border-right:1px solid #ECECF0;padding:16px 12px;display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--muted)}
.a-side .logo{margin:2px 8px 16px}.a-side .logo img{height:22px;width:auto;display:block}
.a-side span{padding:7px 10px;border-radius:8px}
.a-side span.on{background:var(--in-bg);color:var(--blue);font-weight:600}
.a-main{padding:22px;display:grid;gap:14px;background:#fff;align-content:start}
.a-h{display:flex;justify-content:space-between;align-items:baseline}
.a-h b{font-size:24px;letter-spacing:-0.03em}
.a-h small{color:var(--faint);font-size:12.5px}
.k4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.k{border-radius:16px;background:var(--gray);padding:14px}
.k small{font-size:11.5px;color:var(--muted)}
.k b{display:block;font-size:24px;font-weight:700;letter-spacing:-0.04em;margin-top:2px}
.k i{font-style:normal;font-size:11px;font-weight:600;color:var(--ok)}
.k.h{background:var(--grad);color:#fff}.k.h small,.k.h i{color:rgba(255,255,255,.85)}
.dgrid{display:grid;grid-template-columns:1.35fr 1fr;gap:12px}
.bx{border-radius:16px;background:var(--gray);padding:14px;font-size:12.5px}
.bx.dark{background:#000532;color:#fff}
.bx h4{margin:0 0 8px;font-size:13.5px;letter-spacing:-0.02em}
.ai{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;border-radius:11px;background:rgba(255,255,255,.08);margin-top:6px}
.ai em{font-style:normal;font-size:11px;font-weight:600;padding:4px 10px;border-radius:99px;background:#fff;color:#000}
.lr{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-top:1px solid #E5E5EA}
.lr:first-of-type{border-top:0}
.st{padding:3px 9px;border-radius:99px;font-size:11px;font-weight:600;white-space:nowrap}
.st.ok{background:var(--ok-bg);color:var(--ok)}.st.wa{background:var(--warn-bg);color:var(--warn)}.st.ko{background:var(--bad-bg);color:var(--bad)}.st.in{background:var(--in-bg);color:var(--blue)}

.phone{width:min(76vw,300px);aspect-ratio:9/19;margin:0 auto;border-radius:48px;background:#0B0B0D;padding:10px;box-shadow:0 0 0 1.5px #2A2A2E inset,0 50px 90px -30px rgba(0,30,90,.45);position:relative}
.phone::before{content:"";position:absolute;top:20px;left:50%;transform:translateX(-50%);width:84px;height:24px;border-radius:20px;background:#000;z-index:2}
@media(min-width:760px){.shot .phone{position:absolute;right:-34px;bottom:-56px;width:220px;border-radius:38px;padding:8px}.shot .phone::before{top:15px;width:64px;height:18px}}
.ps{height:100%;border-radius:39px;background:var(--gray);overflow:hidden;padding:52px 13px 13px;display:flex;flex-direction:column;gap:9px;font-size:12.5px;text-align:left}
@media(min-width:760px){.shot .ps{border-radius:30px;padding:38px 10px 10px;gap:7px;font-size:10.5px}}
.ps h5{margin:0;font-size:1.45em;letter-spacing:-0.03em}
.c{border-radius:14px;background:#fff;padding:10px}
.c b{display:block}
.c small{color:var(--muted);font-size:.9em}
.c.g{background:var(--grad);color:#fff}.c.g small{color:rgba(255,255,255,.85)}
.qr{align-self:center;width:56%;aspect-ratio:1;border-radius:16px;background:#fff;padding:9px}

/* ===== 2. Butta via (nero) ===== */
.black{background:#000532;color:#F4F6FB}
.black .eyebrow{color:#86868B}
.black .lead{color:#A1A1A6}
/* Sezione "Butta via": sequenza guidata dallo scroll */
.toss{position:relative;height:300vh;background:#000532;color:#F4F6FB;margin-top:120px}
.toss-pin{position:sticky;top:0;height:100vh;height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding:0 var(--pad)}
.toss-pin::before{content:"";position:absolute;width:900px;height:900px;left:50%;top:58%;transform:translate(-50%,-50%) scale(calc(.4 + .8*var(--g,0)));border-radius:50%;background:radial-gradient(circle,rgba(1,102,248,.55) 0%,rgba(1,102,248,.18) 35%,transparent 65%);opacity:calc(.25 + .75*var(--g,0));pointer-events:none}
.toss .eyebrow{color:#8A8EA3;position:relative}
.toss h2{position:relative;font-size:clamp(42px,8.6vw,96px);font-weight:600;letter-spacing:-0.05em;line-height:1.02;margin-top:8px}
.toss h2 .hl{position:relative;display:inline-block;color:#fff}
.toss h2 .hl::after{content:"";position:absolute;left:0;right:0;bottom:.02em;height:.09em;border-radius:99px;background:#0166F8;transform:scaleX(var(--u,0));transform-origin:left;transition:transform .2s linear}
.tstage{position:relative;width:100%;max-width:960px;min-height:300px;margin-top:48px;display:flex;align-items:center;justify-content:center}
@media(max-width:600px){.tstage{min-height:360px;margin-top:36px}}
.chips{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
.chip{position:relative;display:inline-flex;align-items:center;gap:10px;padding:16px 24px;border-radius:99px;background:#0C1445;border:1px solid rgba(255,255,255,.08);font-size:clamp(16px,2.3vw,22px);font-weight:600;letter-spacing:-0.02em;color:#F4F6FB;transition:color .5s var(--ease),background .5s var(--ease),border-color .5s,transform 1.1s cubic-bezier(.55,0,.25,1),opacity .9s var(--ease),filter .9s var(--ease)}
.chip .e{font-size:1.1em;line-height:1;transition:filter .5s,opacity .5s}
.chip::after{content:"";position:absolute;left:18px;right:18px;top:50%;height:3px;margin-top:-1.5px;border-radius:3px;background:#FF453A;box-shadow:0 0 12px rgba(255,69,58,.6);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}
.chip.struck{color:#6B7090;background:#0A1035;border-color:rgba(255,69,58,.25);animation:nope .4s var(--ease)}
.chip.struck .e{filter:grayscale(1);opacity:.5}
.chip.struck::after{transform:scaleX(1)}
.chip.gone{opacity:0;filter:blur(10px);transform:translate(var(--dx),var(--dy)) rotate(var(--rot)) scale(.6)}
@keyframes nope{20%{transform:translateX(-6px) rotate(-1.5deg)}45%{transform:translateX(5px) rotate(1deg)}70%{transform:translateX(-3px)}}
.gym{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;opacity:var(--g,0);transform:scale(calc(.7 + .3*var(--g,0)));filter:blur(calc((1 - var(--g,0))*12px))}
.gym-in{display:flex;flex-direction:column;align-items:center;gap:18px}
.gym-logo{display:flex;align-items:center;gap:18px}
.gym-logo svg{width:clamp(56px,9vw,92px);height:auto;filter:drop-shadow(0 10px 40px rgba(1,102,248,.8))}
.gym-logo b{font-family:var(--display);font-weight:500;font-size:clamp(56px,11vw,120px);letter-spacing:-0.05em;line-height:1;color:#fff}
.gym-sub{font-size:clamp(17px,2.4vw,22px);color:#C9D2EE;font-weight:500}
.gym-sub s{color:#6B7090;text-decoration-color:#FF453A;text-decoration-thickness:2px}
.gym-sub b{color:#fff}
.scroll-hint{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;font-size:12px;color:#8A8EA3;opacity:calc(1 - var(--p,0)*8);transition:opacity .2s}
.scroll-hint i{width:2px;height:28px;border-radius:2px;background:linear-gradient(#8A8EA3,transparent);animation:hint 1.6s ease-in-out infinite}
@keyframes hint{0%{transform:translateY(-6px);opacity:0}50%{opacity:1}100%{transform:translateY(6px);opacity:0}}
.toss.static{height:auto;padding:110px 0}
.toss.static .toss-pin{position:relative;height:auto}
.toss.static .tstage{flex-direction:column;gap:40px}
.toss.static .gym{position:relative;opacity:1;transform:none;filter:none}
.toss.static .scroll-hint{display:none}
@media (prefers-reduced-motion:reduce){.chip{animation:none!important}.scroll-hint i{animation:none}}

/* ===== 3. Funzioni ===== */
.seg-wrap{display:flex;justify-content:center;margin-top:44px}
.seg{display:flex;gap:2px;padding:4px;border-radius:99px;background:var(--gray);overflow-x:auto;scrollbar-width:none;max-width:100%;scroll-snap-type:x proximity;position:relative}
.seg::-webkit-scrollbar{display:none}
.seg button{position:relative;z-index:1;flex:none;scroll-snap-align:center;min-height:40px;padding:0 16px;border:0;border-radius:99px;background:transparent;font-size:14px;font-weight:500;color:var(--muted);white-space:nowrap;transition:color .35s var(--ease)}
.seg button[aria-selected="true"]{color:var(--ink)}
.seg .thumb{position:absolute;top:4px;bottom:4px;left:0;border-radius:99px;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.08),0 0 0 .5px rgba(0,0,0,.04);transition:transform .45s var(--spring),width .45s var(--spring)}
@media(max-width:833px){.seg-wrap{margin-left:calc(var(--pad)*-1);margin-right:calc(var(--pad)*-1);padding:0 var(--pad);justify-content:flex-start}}
.stagec{margin-top:28px;border-radius:32px;background:var(--gray);padding:28px 22px;display:grid;gap:28px;position:relative;overflow:hidden;min-height:440px}
@media(min-width:900px){.stagec{grid-template-columns:1fr 1.1fr;align-items:center;padding:56px;gap:48px;min-height:400px}}
.fx{transition:opacity .45s var(--ease),transform .55s var(--ease),filter .45s var(--ease)}
.fx.out{opacity:0;transform:translateY(16px);filter:blur(4px)}
.stagec h3{font-size:clamp(28px,5.6vw,44px)}
.stagec .p{color:var(--muted);font-size:clamp(17px,2vw,19px);margin-top:12px}
.pts{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:12px}
.pts li{display:flex;gap:10px;align-items:flex-start;font-size:16px}
.pts .ck{width:22px;height:22px;border-radius:50%;background:var(--blue);display:grid;place-items:center;margin-top:1px}
.win{margin-top:22px;font-size:16px;font-weight:600;color:var(--blue)}
.ui{border-radius:24px;background:#fff;padding:16px;display:grid;gap:10px;font-size:13.5px;box-shadow:0 20px 50px -25px rgba(0,30,90,.25)}
.ui .row{display:flex;align-items:center;gap:10px;border-radius:14px;padding:11px 12px;background:var(--gray)}
.ui .row .t{flex:1;min-width:0}
.ui .row .t b{display:block;font-weight:600}
.ui .row .t small{color:var(--muted);font-size:12px}
.av{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:600;font-size:12.5px;flex:none}
.bub{max-width:86%;border-radius:18px 18px 18px 6px;background:var(--gray);padding:10px 13px}
.bub.me{margin-left:auto;border-radius:18px 18px 6px 18px;background:#34C759;color:#fff;max-width:40%}
.cw{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.cl{border-radius:14px;background:var(--gray);padding:10px}
.cl b{display:block;font-size:12.5px}.cl small{color:var(--muted);font-size:11px}
.bar{height:4px;border-radius:99px;background:#E0E0E5;margin-top:8px;overflow:hidden}
.bar i{display:block;height:100%;border-radius:99px;background:var(--blue);transform-origin:left;animation:grow 1s var(--ease)}
.cl.full .bar i{background:var(--bad)}
@keyframes grow{from{transform:scaleX(0)}}
.kb{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.kb div{border-radius:14px;background:var(--gray);padding:9px}
.kb h6{margin:0 0 6px;font-size:11.5px;color:var(--muted);font-weight:600}
.kb p{border-radius:10px;background:#fff;padding:8px;margin-top:6px;font-size:12px;font-weight:600}
.kb p small{display:block;font-weight:500;color:var(--muted);font-size:11px}
.bars{display:flex;align-items:flex-end;gap:10px;height:130px;padding:14px;border-radius:14px;background:var(--gray)}
.bars i{flex:1;border-radius:7px;background:#D9DCE3;transform-origin:bottom;animation:rise .9s var(--ease) backwards}
.bars i:last-child{background:var(--grad)}
.bars i:nth-child(2){animation-delay:.05s}.bars i:nth-child(3){animation-delay:.1s}.bars i:nth-child(4){animation-delay:.15s}.bars i:nth-child(5){animation-delay:.2s}.bars i:nth-child(6){animation-delay:.25s}
@keyframes rise{from{transform:scaleY(0)}}
.tip{border-radius:14px;background:#000532;color:#fff;padding:11px 13px;font-size:12.5px}
.ui>*{animation:pop .5s var(--ease) backwards}
.ui>*:nth-child(2){animation-delay:.06s}.ui>*:nth-child(3){animation-delay:.12s}.ui>*:nth-child(4){animation-delay:.18s}.ui>*:nth-child(5){animation-delay:.24s}
@keyframes pop{from{opacity:0;transform:translateY(10px)}}
@media (prefers-reduced-motion:reduce){.ui>*,.bars i,.bar i{animation:none}.fx{transition:none}}

/* ===== 4. Per chi (scroller) ===== */
.rail{display:grid;grid-auto-flow:column;grid-auto-columns:min(78%,300px);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px max(var(--pad),calc((100vw - 1040px)/2 + var(--pad))) 24px;margin-top:40px;scroll-padding:0 max(var(--pad),calc((100vw - 1040px)/2 + var(--pad)))}
.rail::-webkit-scrollbar{display:none}
.vc{scroll-snap-align:start;border-radius:28px;background:var(--gray);padding:28px;min-height:300px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.vc:hover{transform:scale(1.02);box-shadow:0 20px 40px -20px rgba(0,0,0,.2)}
.vc .em{font-size:44px;line-height:1}
.vc small{display:block;font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.vc h3{font-size:26px;margin-top:6px}
.vc p{color:var(--muted);font-size:15.5px;margin-top:8px}
.rail-ctl{display:flex;justify-content:flex-end;gap:12px;margin-top:4px}
.rail-ctl button{width:40px;height:40px;border-radius:50%;border:0;background:var(--gray);display:grid;place-items:center;transition:background .2s,opacity .2s}
.rail-ctl button:hover{background:var(--gray2)}
.rail-ctl button:disabled{opacity:.35;cursor:default}

/* ===== 5. Perché: bento ===== */
.bento{display:grid;gap:16px;margin-top:48px}
@media(min-width:834px){.bento{grid-template-columns:repeat(6,1fr)}.b2{grid-column:span 2}.b3{grid-column:span 3}.b4{grid-column:span 4}}
.tile{border-radius:28px;background:#fff;padding:30px;min-height:220px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;overflow:hidden;position:relative}
.tile .ic{position:absolute;top:28px;left:30px;font-size:34px;line-height:1}
.tile h3{font-size:24px}
.tile p{color:var(--muted);font-size:16px}
.tile s{color:var(--faint)}
.tile.blue{background:var(--grad);color:#fff}.tile.blue p{color:rgba(255,255,255,.85)}
.tile.black{background:#000532;color:#F4F6FB}.tile.black p{color:#A1A1A6}
.tile .big{font-family:var(--display);font-size:clamp(56px,9vw,88px);font-weight:700;letter-spacing:-0.05em;line-height:1}

/* ===== 6. Lancio ===== */
.launch{display:grid;gap:40px}
@media(min-width:900px){.launch{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:64px;align-items:center}}
.p50{display:inline-block;padding-right:.1em;font-family:var(--display);font-size:clamp(96px,21vw,170px);font-weight:600;letter-spacing:-0.06em;line-height:.9;margin-top:16px}
.cd{display:flex;gap:22px;margin-top:22px}
.cd div{text-align:left}
.cd b{display:block;font-family:var(--display);font-size:clamp(30px,5vw,40px);font-weight:600;letter-spacing:-0.04em;font-variant-numeric:tabular-nums}
.cd small{font-size:13px;color:var(--muted)}
.perks{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:12px}
.perks li{display:flex;gap:10px;align-items:center;font-size:17px}
.perks .ck{width:22px;height:22px;border-radius:50%;background:var(--ok);display:grid;place-items:center}
.form{border-radius:32px;background:var(--gray);padding:28px 22px;scroll-margin-top:80px}
@media(min-width:834px){.form{padding:44px}}
.form h3{font-size:28px}
.form .s{font-size:15px;color:var(--muted);margin:6px 0 22px}
form{display:grid;gap:12px}
.g2f{display:grid;gap:12px}
@media(min-width:560px){.g2f{grid-template-columns:1fr 1fr}}
.fl{position:relative}
.fl input,.fl select{width:100%;height:58px;padding:22px 16px 6px;border-radius:14px;border:1px solid var(--line);background:#fff;font:400 17px var(--font);color:var(--ink);letter-spacing:-0.02em;-webkit-appearance:none;appearance:none;transition:border-color .2s,box-shadow .2s}
.fl select{padding-top:24px;padding-right:40px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236E6E73' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}
.fl label{position:absolute;left:17px;right:40px;top:19px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:17px;color:var(--faint);pointer-events:none;transform-origin:left top;transition:transform .2s var(--ease),color .2s}
.fl input:focus,.fl select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(0,113,227,.15)}
.fl input:focus+label,.fl input:not(:placeholder-shown)+label,.fl select+label{transform:translateY(-10px) scale(.72);color:var(--muted)}
.fl select+label{right:auto;max-width:calc((100% - 50px)/.72)}
.form .pill{width:100%;min-height:54px;margin-top:6px}
.legal{font-size:12px;color:var(--faint);text-align:center}
.legal a{color:var(--link)}
.error{font-size:14px;color:var(--bad);font-weight:500}
.thanks{display:grid;gap:14px;justify-items:start;animation:pop .6s var(--ease)}
.thanks h3{font-size:32px}
.thanks p{color:var(--muted)}
.done{width:56px;height:56px;border-radius:50%;background:var(--ok);display:grid;place-items:center}
.done path{stroke-dasharray:30;stroke-dashoffset:30;animation:draw .6s var(--ease) .2s forwards}
@keyframes draw{to{stroke-dashoffset:0}}

/* ===== FAQ ===== */
.faq{max-width:780px;margin:44px auto 0}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:72px;font-size:clamp(17px,2.2vw,21px);font-weight:600;letter-spacing:-0.02em;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq summary svg{transition:transform .35s var(--ease)}
.faq details[open] summary svg{transform:rotate(45deg)}
.faq .ans{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}
.faq details[open] .ans{grid-template-rows:1fr}
.faq .ans>div{overflow:hidden}
.faq .ans p{padding:0 0 22px;color:var(--muted);font-size:17px}

/* ===== Finale ===== */
.final{text-align:center;padding:120px 0 130px;background:var(--gray)}
.final-logo{display:block;height:56px;width:auto;margin:0 auto 30px}
.final h2{font-size:clamp(40px,8.4vw,80px);max-width:900px;margin:0 auto}

footer{background:var(--gray);border-top:1px solid var(--gray2);padding:20px 0 calc(100px + var(--safe-b));font-size:12px;color:var(--faint)}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}
@media(min-width:834px){footer{padding-bottom:22px}}

/* Dock mobile */
.dock{position:fixed;left:10px;right:10px;bottom:calc(10px + var(--safe-b));z-index:60;border-radius:22px;padding:10px 10px 10px 18px;background:rgba(255,255,255,.78);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);box-shadow:0 10px 40px -10px rgba(0,0,0,.25),0 0 0 .5px rgba(0,0,0,.08);display:flex;align-items:center;gap:12px;transform:translateY(140%);transition:transform .5s var(--spring)}
.dock.show{transform:none}
.dock .info{flex:1;min-width:0;font-size:12.5px;color:var(--muted);line-height:1.3}
.dock .info b{display:block;font-size:15px;color:var(--ink)}
.dock .pill{min-height:44px;padding:0 18px;font-size:15px}
@media(min-width:834px){.dock{display:none}}
