/* CLVR CRM marketing site
   z-index ladder: hero canvas 0 < content 1 < decor (pointer-events none) 2 < sticky mobile CTA 30 < top nav 40 < dialogs 60 < toast 80 */
:root{
  color-scheme:dark;
  --night:#06080c; --night2:#0a0e14; --panel:rgba(255,255,255,.045); --panel2:rgba(255,255,255,.07);
  --line:rgba(255,255,255,.09); --line2:rgba(255,255,255,.16);
  --ink:#eef3ea; --muted:#9aa59a; --dim:#6d776d;
  --leaf:#6fbd4a; --leaf-hi:#a9dd86; --leaf-deep:#245f20; --mint:#7ee8b4;
  --gold:#f2c466; --red:#ff4d5e; --yellow:#ffd07a;
  --display:'Sora','Inter',system-ui,sans-serif; --body:'Inter',system-ui,-apple-system,sans-serif;
  --pad:max(20px,env(safe-area-inset-left,0px)); --max:1180px; --r:22px;
}
*{box-sizing:border-box}
html{background:var(--night);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--night);color:var(--ink);font:16px/1.6 var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:var(--leaf-hi)}
:focus-visible{outline:2px solid var(--leaf-hi);outline-offset:3px;border-radius:8px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--pad)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
section{position:relative;z-index:1}
h1,h2,h3{font-family:var(--display);letter-spacing:-.02em;line-height:1.08;margin:0;text-wrap:balance}
h2{font-size:clamp(32px,5.4vw,56px);font-weight:700}
h3{font-size:clamp(20px,2.4vw,24px);font-weight:600}
p{margin:0;text-wrap:pretty}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--leaf-hi)}
.eyebrow::before{content:'';width:18px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--leaf),transparent)}
.lede{font-size:clamp(17px,2vw,20px);color:var(--muted);max-width:60ch}
.grad{background:linear-gradient(100deg,#d8f5c4 0%,var(--leaf-hi) 35%,var(--mint) 70%,#d8f5c4 100%);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:sheen 8s linear infinite}
@keyframes sheen{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.grad{animation:none}}

/* buttons */
.btn{--h:52px;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--h);padding:0 24px;border-radius:999px;font:600 16px/1 var(--body);text-decoration:none;cursor:pointer;border:0;white-space:nowrap;transition:transform .2s ease,box-shadow .2s ease,background .2s}
.btn.p{color:#0b1a07;background:linear-gradient(180deg,#c7ef9f,var(--leaf) 55%,#4e9e33);box-shadow:0 10px 30px -8px rgba(111,189,74,.6),inset 0 1px 0 rgba(255,255,255,.5)}
.btn.p:hover{transform:translateY(-2px);box-shadow:0 16px 40px -8px rgba(111,189,74,.75),inset 0 1px 0 rgba(255,255,255,.5)}
.btn.g{color:var(--ink);background:var(--panel2);border:1px solid var(--line2);backdrop-filter:blur(10px)}
.btn.g:hover{background:rgba(255,255,255,.11)}
.btn.sm{--h:42px;padding:0 18px;font-size:15px}
.btn svg{width:18px;height:18px;flex:none}

/* nav */
.nav{position:fixed;top:0;left:0;right:0;z-index:40;padding-top:env(safe-area-inset-top,0px);transition:background .3s,border-color .3s,backdrop-filter .3s;border-bottom:1px solid transparent}
.nav.solid{background:rgba(6,8,12,.72);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4);border-color:var(--line)}
.nav .wrap{display:flex;align-items:center;gap:16px;height:68px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font:700 21px/1 var(--display);letter-spacing:-.01em;flex:none}
.brand svg{width:34px;height:34px;filter:drop-shadow(0 3px 6px rgba(0,0,0,.4))}
.brand i{font-style:normal;font-weight:500;color:var(--muted);margin-left:2px}
.links{display:flex;gap:4px;margin:0 auto}
.links a{color:var(--muted);text-decoration:none;font-size:15px;font-weight:500;padding:10px 12px;border-radius:10px}
.links a:hover{color:var(--ink);background:var(--panel)}
.nav .acts{display:flex;gap:8px;align-items:center;margin-left:auto}
@media (max-width:920px){.links{display:none}}
@media (max-width:520px){.nav .acts .btn.p{display:none}.brand{font-size:19px}}

/* hero */
.hero{min-height:100svh;display:flex;align-items:center;padding:calc(96px + env(safe-area-inset-top,0px)) 0 64px;overflow:hidden;isolation:isolate}
#gl{position:absolute;inset:0;width:100%;height:100%;z-index:0;display:block;touch-action:pan-y}
.hero::after{content:'';position:absolute;inset:auto 0 0;height:180px;background:linear-gradient(transparent,var(--night));z-index:1;pointer-events:none}
.hero .aura{position:absolute;inset:-20% -10% auto auto;width:70vw;height:70vw;max-width:900px;max-height:900px;border-radius:50%;background:radial-gradient(closest-side,rgba(111,189,74,.22),transparent 70%);z-index:0;pointer-events:none}
.hero .wrap{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:24px;align-items:center;width:100%}
.hero h1{font-size:clamp(40px,6.6vw,80px);font-weight:700}
.hero .lede{margin-top:22px}
.hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hero .micro{margin-top:18px;color:var(--dim);font-size:14px;display:flex;flex-wrap:wrap;gap:6px 18px}
.hero .micro span::before{content:'✓';color:var(--leaf);margin-right:6px;font-weight:700}
.stage{position:relative;aspect-ratio:1/1;width:100%;max-width:560px;justify-self:end;pointer-events:none}
.stage .chip{position:absolute;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:14px;background:rgba(10,14,20,.66);border:1px solid var(--line2);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-size:14px;box-shadow:0 20px 40px -20px rgba(0,0,0,.8);white-space:nowrap}
.stage .chip b{font:700 18px/1 var(--display);font-variant-numeric:tabular-nums}
.stage .chip .dot{width:10px;height:10px;border-radius:50%;flex:none}
.chip.c1{top:9%;left:0}.chip.c2{bottom:14%;right:0}.chip.c3{bottom:2%;left:8%}
.chip.c1 .dot{background:var(--mint);box-shadow:0 0 12px var(--mint)}
.chip.c2 .dot{background:var(--gold);box-shadow:0 0 12px var(--gold)}
.chip.c3 .dot{background:var(--leaf);box-shadow:0 0 12px var(--leaf)}
.floaty{animation:floaty 6s ease-in-out infinite}.floaty.d2{animation-delay:-2s}.floaty.d3{animation-delay:-4s}
@keyframes floaty{50%{transform:translateY(-10px)}}
@media (prefers-reduced-motion:reduce){.floaty{animation:none}}
.stage .fallback{position:absolute;inset:14%;display:none}
.no-gl .stage .fallback{display:block}
@media (max-width:860px){
  .hero{align-items:flex-start;padding-top:calc(80px + env(safe-area-inset-top,0px))}
  .hero .wrap{grid-template-columns:1fr;gap:0}
  .stage{order:-1;max-width:300px;width:72%;justify-self:center;margin:-14px 0 4px}
  .stage .chip{font-size:12px;padding:7px 10px;gap:7px;border-radius:12px}.stage .chip b{font-size:14px}
  .chip.c1{top:4%;left:-14%}.chip.c2{bottom:4%;right:-14%}.chip.c3{display:none}
  .hero h1{font-size:clamp(36px,10.4vw,56px)}
  .hero .lede{margin-top:14px;font-size:16px}
  .hero .ctas{margin-top:22px}.hero .ctas .btn{flex:1 1 auto}
  .hero .eyebrow{font-size:11.5px;letter-spacing:.1em}
}

/* proof strip */
.proof{border-block:1px solid var(--line);background:linear-gradient(180deg,rgba(255,255,255,.02),transparent)}
.proof .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:0}
.proof .s{padding:28px 18px;text-align:center;border-left:1px solid var(--line)}
.proof .s:first-child{border-left:0}
.proof b{display:block;font:700 clamp(28px,3.6vw,40px)/1 var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.proof span{display:block;margin-top:8px;color:var(--muted);font-size:14px}
@media (max-width:760px){.proof .wrap{grid-template-columns:1fr 1fr}.proof .s:nth-child(3){border-left:0}.proof .s:nth-child(n+3){border-top:1px solid var(--line)}}

/* generic section */
.sec{padding:clamp(80px,12vw,150px) 0}
.head{max-width:760px}
.head.c{margin:0 auto;text-align:center}
.head.c .lede{margin-left:auto;margin-right:auto}
.head h2{margin:14px 0 18px}

/* reveal */
.rv{opacity:0;transform:translateY(28px);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform .9s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
.rv.d1{transition-delay:.08s}.rv.d2{transition-delay:.16s}.rv.d3{transition-delay:.24s}
.no-js .rv,.calm .rv{opacity:1;transform:none}

/* pain cards */
.pains{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:56px}
.card{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:26px;overflow:hidden}
.card::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(160deg,rgba(255,255,255,.14),transparent 40%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.pain .ic{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:rgba(255,77,94,.12);color:var(--red);margin-bottom:18px}
.pain .ic svg{width:22px;height:22px}
.pain h3{font-size:19px;margin-bottom:10px}
.pain p{color:var(--muted);font-size:15px}
.pain .cost{margin-top:16px;font-size:13px;font-weight:600;color:#ff8f9a;letter-spacing:.02em}
@media (max-width:1000px){.pains{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.pains{grid-template-columns:1fr}}

/* feature split */
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,6vw,90px);align-items:center}
.split.rev .media{order:-1}
@media (min-width:861px){.measure .media{position:sticky;top:110px;align-self:start}}
.split .txt .lede{margin-top:18px}
.ticks{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:14px}
.ticks li{display:grid;grid-template-columns:26px 1fr;gap:12px;color:var(--ink)}
.ticks li::before{content:'';width:26px;height:26px;border-radius:8px;background:rgba(111,189,74,.16) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a9dd86' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/15px no-repeat}
.ticks li span{color:var(--muted)}
.ticks li b{font-weight:600}
@media (max-width:860px){.split{grid-template-columns:1fr}.split.rev .media{order:0}}

/* phone frame */
.phone{position:relative;width:min(340px,80vw);aspect-ratio:393/852;margin:0 auto;border-radius:48px;padding:10px;background:linear-gradient(145deg,#2a2f36,#0c0f13 40%,#1c2026);box-shadow:0 0 0 1px rgba(255,255,255,.08),0 50px 100px -30px rgba(0,0,0,.9),0 30px 80px -40px rgba(111,189,74,.35)}
.phone .scr{width:100%;height:100%;border-radius:38px;overflow:hidden;background:#0a0b12;position:relative}
.phone .scr img{width:100%;height:100%;object-fit:cover;object-position:top}
.phone .scr .ph{position:absolute;inset:0;display:grid;place-content:center;text-align:center;color:var(--dim);font-size:14px;padding:20px}
.phone::after{content:'';position:absolute;top:20px;left:50%;width:30%;height:26px;transform:translateX(-50%);background:#000;border-radius:20px}
.duo{position:relative;display:flex;justify-content:center;align-items:flex-end;gap:0}
.duo .phone{width:min(290px,62vw)}
.duo .phone.back{position:absolute;right:2%;top:-6%;width:min(250px,52vw);transform:rotate(6deg);opacity:.9;z-index:-1}
.duo .phone.front{margin-right:30%;transform:rotate(-3deg)}
@media (max-width:860px){.duo .phone.front{margin-right:24%}}

/* measure feature */
.measure{background:radial-gradient(1200px 600px at 80% 20%,rgba(111,189,74,.12),transparent 60%),radial-gradient(800px 500px at 0% 100%,rgba(126,232,180,.06),transparent 60%)}
.badge{display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:rgba(242,196,102,.12);border:1px solid rgba(242,196,102,.35);color:var(--gold);font-size:13px;font-weight:600;letter-spacing:.04em}
.roofbox{position:relative;border-radius:28px;overflow:hidden;border:1px solid var(--line2);background:#0b1210;aspect-ratio:4/3.3;box-shadow:0 40px 90px -40px rgba(0,0,0,.9)}
.roofbox .sat{position:absolute;inset:0;background:
  radial-gradient(120% 90% at 30% 20%,#2d3a2a,#141c15 60%,#0b100c);}
.roofbox .sat::before{content:'';position:absolute;inset:0;opacity:.5;background-image:
  repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 2px,transparent 2px 7px),repeating-linear-gradient(0deg,rgba(0,0,0,.18) 0 3px,transparent 3px 11px)}
.roofbox svg{position:absolute;inset:0;width:100%;height:100%}
.roofbox .facet{fill:rgba(111,189,74,.0);stroke:none;transition:fill 1s}
.roofbox.on .facet{fill:rgba(111,189,74,.18)}
.roofbox .edge{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.roofbox .scan{position:absolute;left:0;right:0;height:120px;top:-120px;background:linear-gradient(transparent,rgba(126,232,180,.22),transparent);pointer-events:none}
.roofbox.on .scan{animation:scan 2.4s ease-in-out 1}
@keyframes scan{to{top:100%}}
.readout{position:absolute;left:14px;right:14px;bottom:14px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.readout div{background:rgba(6,10,8,.72);border:1px solid var(--line2);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:14px;padding:10px 12px}
.readout b{display:block;font:700 clamp(17px,2.2vw,22px)/1.1 var(--display);font-variant-numeric:tabular-nums}
.readout span{font-size:12px;color:var(--muted)}
.legend{position:absolute;top:14px;left:14px;display:flex;flex-wrap:wrap;gap:6px;font-size:12px;max-width:calc(100% - 28px)}
.legend span{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;background:rgba(6,10,8,.72);border:1px solid var(--line)}
.legend i{width:14px;height:3px;border-radius:2px}
@media (max-width:520px){.roofbox{aspect-ratio:4/4.4}.readout{gap:5px;left:8px;right:8px;bottom:8px}.readout div{padding:7px 8px;border-radius:10px}.readout b{font-size:15px}.readout span{font-size:10.5px}.legend{gap:4px;font-size:11px}.legend span{padding:4px 7px}}
.race{margin-top:30px;display:grid;gap:10px}
.race .row{display:grid;grid-template-columns:110px 1fr auto;gap:12px;align-items:center;font-size:14px}
.race .row .nm{color:var(--muted);font-weight:500}
.race .row.me .nm{color:var(--ink);font-weight:700}
.race .bar{height:10px;border-radius:99px;background:var(--panel2);overflow:hidden}
.race .bar i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#6b737b,#a2a9b0);transition:width 1.6s cubic-bezier(.2,.7,.2,1)}
.race .row.me .bar i{background:linear-gradient(90deg,var(--leaf),var(--mint));box-shadow:0 0 16px rgba(126,232,180,.6)}
.race .val{font-variant-numeric:tabular-nums;color:var(--muted);min-width:96px;text-align:right}
.race .row.me .val{color:var(--mint);font-weight:700}
.race .note{font-size:12px;color:var(--dim)}

/* 60-minute steps */
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px;counter-reset:s}
.step{counter-increment:s}
.step .n{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}
.step .n::before{content:counter(s,decimal-leading-zero);font:700 15px/1 var(--display);color:var(--leaf-hi);padding:7px 10px;border-radius:9px;background:rgba(111,189,74,.12)}
.step .n span{font:600 13px/1 var(--body);color:var(--muted);font-variant-numeric:tabular-nums}
.step h3{margin-bottom:10px}
.step p{color:var(--muted);font-size:15px}
.timeline{margin-top:28px;height:8px;border-radius:99px;background:var(--panel2);position:relative;overflow:hidden}
.timeline i{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,var(--mint),var(--yellow) 70%,var(--red));border-radius:inherit}
.tl-lab{display:flex;justify-content:space-between;margin-top:10px;font-size:13px;color:var(--dim)}
@media (max-width:860px){.steps{grid-template-columns:1fr}}

/* urgency orbs demo */
.orbs{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin:46px 0 10px}
.orb{position:relative;width:96px;height:96px;display:grid;place-items:center;text-align:center}
.orb svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}
.orb .bg{fill:none;stroke:rgba(255,255,255,.08);stroke-width:5}
.orb .fg{fill:none;stroke-width:5;stroke-linecap:round;stroke-dasharray:283;transition:stroke-dashoffset 1s linear}
.orb .core{width:66px;height:66px;border-radius:50%;display:grid;place-content:center;font:700 14px/1.1 var(--display);font-variant-numeric:tabular-nums}
.orb .core small{display:block;font:500 10px/1.2 var(--body);color:var(--muted);margin-top:2px}
.orb.r .fg{stroke:var(--red)}.orb.r .core{background:radial-gradient(circle,rgba(255,77,94,.35),rgba(255,77,94,.08));box-shadow:0 0 30px rgba(255,77,94,.45)}
.orb.y .fg{stroke:var(--yellow)}.orb.y .core{background:radial-gradient(circle,rgba(255,208,122,.25),rgba(255,208,122,.05))}
.orb.g .fg{stroke:var(--mint)}.orb.g .core{background:radial-gradient(circle,rgba(126,232,180,.22),rgba(126,232,180,.04))}
.orb.r{animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(1.07)}}
@media (prefers-reduced-motion:reduce){.orb.r{animation:none}}

/* clover chat */
.chat{max-width:440px;margin:0 auto;background:rgba(12,16,22,.8);border:1px solid var(--line2);border-radius:28px;padding:18px;box-shadow:0 40px 90px -40px rgba(0,0,0,.9),0 0 0 1px rgba(111,189,74,.08);backdrop-filter:blur(12px)}
.chat .top{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.chat .top img{width:46px;height:54px}
.chat .top b{display:block;font:700 16px/1.2 var(--display)}
.chat .top span{font-size:13px;color:var(--mint)}
.msgs{display:flex;flex-direction:column;gap:10px;padding:16px 0 6px;min-height:330px}
.msg{max-width:86%;padding:11px 14px;border-radius:18px;font-size:15px;line-height:1.45;opacity:0;transform:translateY(8px);transition:opacity .4s,transform .4s}
.msg.show{opacity:1;transform:none}
.msg.me{align-self:flex-end;background:linear-gradient(180deg,#3d8f2c,#2d6f20);border-bottom-right-radius:6px}
.msg.ai{align-self:flex-start;background:var(--panel2);border:1px solid var(--line);border-bottom-left-radius:6px}
.typing{display:inline-flex;gap:4px}.typing i{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:blink 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{50%{opacity:.25}}
.sugg{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.sugg span{font-size:13px;padding:7px 11px;border-radius:999px;border:1px solid var(--line2);color:var(--muted)}

/* training / contest */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px}
.tile .big{font:700 clamp(34px,4vw,46px)/1 var(--display);letter-spacing:-.02em;margin:14px 0 6px;font-variant-numeric:tabular-nums}
.tile p{color:var(--muted);font-size:15px}
.tile .k{font-size:13px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--dim)}
.board{margin-top:16px;display:grid;gap:8px}
.board div{display:grid;grid-template-columns:22px 1fr auto;gap:10px;align-items:center;font-size:14px;padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.03)}
.board div:first-child{background:rgba(242,196,102,.1);border:1px solid rgba(242,196,102,.25)}
.board em{font-style:normal;color:var(--muted);font-variant-numeric:tabular-nums}
@media (max-width:900px){.tiles{grid-template-columns:1fr}}

/* everything grid */
.grid6{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px}
.feat .ic{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:rgba(111,189,74,.12);color:var(--leaf-hi);margin-bottom:16px}
.feat .ic svg{width:21px;height:21px}
.feat h3{font-size:18px;margin-bottom:8px}
.feat p{color:var(--muted);font-size:15px}
.soon{display:inline-block;margin-left:6px;font:600 11px/1 var(--body);letter-spacing:.06em;text-transform:uppercase;color:var(--gold);padding:4px 7px;border-radius:6px;background:rgba(242,196,102,.1);vertical-align:2px}
@media (max-width:900px){.grid6{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.grid6{grid-template-columns:1fr}}

/* compare table */
.tablewrap{margin-top:52px;border:1px solid var(--line2);border-radius:var(--r);overflow:auto;background:var(--panel);-webkit-overflow-scrolling:touch}
table{width:100%;border-collapse:collapse;min-width:760px;font-size:15px}
th,td{padding:16px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
tr:last-child td{border-bottom:0}
thead th{font:600 14px/1.3 var(--body);color:var(--muted);position:sticky;top:0;background:#0d1117}
thead th.me{color:#0b1a07;background:linear-gradient(180deg,#c7ef9f,var(--leaf));font-weight:700}
td.me{background:rgba(111,189,74,.08);color:var(--ink);font-weight:600}
td{color:var(--muted)}
td:first-child,th:first-child{color:var(--ink);font-weight:600;min-width:200px;position:sticky;left:0;background:#0b0f14;z-index:1}
thead th:first-child{z-index:2;background:#0d1117}
.y{color:var(--mint)}.n{color:#ff8f9a}
.fine{margin-top:14px;font-size:13px;color:var(--dim)}
.fine a{color:var(--muted)}

/* story */
.story{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(30px,6vw,80px);align-items:center}
.quote{font:600 clamp(24px,3.2vw,34px)/1.25 var(--display);letter-spacing:-.015em}
.quote::before{content:'“';display:block;font-size:80px;line-height:.6;color:var(--leaf);margin-bottom:16px}
.story .who{margin-top:22px;color:var(--muted);font-size:15px}
.story .who b{color:var(--ink)}
@media (max-width:860px){.story{grid-template-columns:1fr}}

/* faq */
.faq{max-width:820px;margin:48px auto 0;display:grid;gap:12px}
.faq details{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:0 22px}
.faq summary{list-style:none;cursor:pointer;padding:20px 32px 20px 0;font:600 17px/1.4 var(--body);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';position:absolute;right:0;top:16px;font-size:24px;color:var(--leaf-hi);transition:transform .25s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{padding:0 0 20px;color:var(--muted)}

/* final cta + form */
.final{padding:clamp(80px,12vw,140px) 0 calc(120px + env(safe-area-inset-bottom,0px));background:radial-gradient(900px 500px at 50% 0%,rgba(111,189,74,.16),transparent 70%)}
.formcard{max-width:640px;margin:44px auto 0;padding:clamp(22px,4vw,36px)}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fgrid .full{grid-column:1/-1}
label.f{display:block;font-size:14px;font-weight:600;margin-bottom:6px;color:var(--ink)}
.fin{width:100%;min-height:50px;border-radius:14px;border:1px solid var(--line2);background:rgba(0,0,0,.3);color:var(--ink);font:16px/1.3 var(--body);padding:12px 14px}
.fin:focus{outline:none;border-color:var(--leaf);box-shadow:0 0 0 3px rgba(111,189,74,.25)}
select.fin{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239aa59a' stroke-width='2.5'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:40px}
textarea.fin{min-height:90px;resize:vertical}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.formcard .btn{width:100%;margin-top:18px}
.fmsg{margin-top:12px;font-size:15px;text-align:center;min-height:1.5em}
.fmsg.ok{color:var(--mint)}.fmsg.err{color:#ff8f9a}
.formcard .alt{margin-top:14px;text-align:center;color:var(--muted);font-size:14px}
@media (max-width:560px){.fgrid{grid-template-columns:1fr}}

/* footer */
footer{border-top:1px solid var(--line);padding:36px 0 calc(110px + env(safe-area-inset-bottom,0px));color:var(--dim);font-size:14px}
footer .wrap{display:flex;flex-wrap:wrap;gap:16px 28px;align-items:center;justify-content:space-between}
footer a{color:var(--muted);text-decoration:none}
footer nav{display:flex;flex-wrap:wrap;gap:6px 20px}
@media (min-width:861px){footer{padding-bottom:36px}.final{padding-bottom:clamp(80px,12vw,140px)}}

/* sticky mobile CTA (lives in its own bar; content has bottom padding so nothing hides under it) */
.mbar{position:fixed;left:0;right:0;bottom:0;z-index:30;display:none;gap:10px;padding:12px var(--pad) calc(12px + env(safe-area-inset-bottom,0px));background:rgba(6,8,12,.82);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line);transform:translateY(110%);transition:transform .35s ease}
.mbar.on{transform:none}
.mbar .btn{flex:1}
.mbar .btn.g{flex:0 0 auto}
@media (max-width:860px){.mbar{display:flex}}
.mbar.hide{transform:translateY(110%)}

/* toast */
.toast{position:fixed;left:50%;top:calc(80px + env(safe-area-inset-top,0px));transform:translate(-50%,-20px);z-index:80;opacity:0;pointer-events:none;background:#12201a;border:1px solid rgba(126,232,180,.4);color:var(--ink);padding:12px 18px;border-radius:14px;transition:.3s;font-size:15px;max-width:calc(100% - 32px)}
.toast.on{opacity:1;transform:translate(-50%,0)}

.swipe{display:none;margin-top:10px;font-size:13px;color:var(--dim);text-align:right}
@media (max-width:860px){.swipe{display:block}}

/* in-app screens */
.inapp{display:flex;justify-content:center;gap:clamp(18px,4vw,56px);margin-top:clamp(50px,8vw,90px)}
.inapp figure,.strip figure{margin:0;text-align:center}
.inapp .phone{width:min(280px,42vw)}
figcaption{margin-top:16px;font-size:14px;color:var(--muted);font-weight:500}
.browser{margin:52px auto 0;max-width:1040px;border-radius:16px;overflow:hidden;border:1px solid var(--line2);background:#0c0f14;box-shadow:0 50px 100px -40px rgba(0,0,0,.95),0 30px 80px -50px rgba(111,189,74,.4)}
.browser .bar{display:flex;align-items:center;gap:7px;padding:11px 14px;border-bottom:1px solid var(--line);background:#11151b}
.browser .bar i{width:11px;height:11px;border-radius:50%;background:#2c323a}
.browser .bar span{margin-left:12px;font-size:12.5px;color:var(--dim);background:rgba(255,255,255,.04);padding:4px 12px;border-radius:7px}
.strip{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:40px}
.strip .phone{width:100%;border-radius:36px;padding:8px}.strip .phone .scr{border-radius:29px}.strip .phone::after{top:15px;height:20px}
@media (max-width:860px){.strip{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(-1*var(--pad));padding:0 var(--pad) 10px;gap:16px;-webkit-overflow-scrolling:touch}.strip figure{flex:0 0 62%;scroll-snap-align:center}}
@media (max-width:560px){.inapp .phone{width:44vw;border-radius:30px;padding:6px}.inapp .phone .scr{border-radius:25px}.inapp .phone::after{top:12px;height:16px}.inapp{gap:12px}}

/* ===== 5-benefit reel (hero) ===== */
.reel{position:relative;z-index:3;padding:12px 14px 4px;border-radius:18px;background:rgba(10,14,20,.72);border:1px solid var(--line2);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 30px 60px -30px rgba(0,0,0,.9),0 0 0 1px rgba(111,189,74,.08) inset}
.reel-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.reel-k{font:600 11px/1 var(--body);letter-spacing:.12em;text-transform:uppercase;color:var(--leaf-hi)}
.reel-pp{width:32px;height:32px;border-radius:50%;border:1px solid var(--line2);background:transparent;color:var(--muted);display:grid;place-items:center;cursor:pointer;flex:none}
.reel-pp svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.reel-pp .pl{display:none;fill:currentColor;stroke:none}.reel.paused .reel-pp .pl{display:block}.reel.paused .reel-pp .ps{display:none}
.reel-view{position:relative;height:78px;margin-top:6px;overflow:hidden}
.slide{position:absolute;inset:0;display:flex;align-items:center;gap:14px;opacity:0;transform:translateY(18px);transition:opacity .5s ease,transform .6s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.slide.on{opacity:1;transform:none}
.slide.out{opacity:0;transform:translateY(-18px)}
.slide .big{flex:none;min-width:92px;font:700 32px/1 var(--display);font-variant-numeric:tabular-nums;white-space:nowrap;background:linear-gradient(120deg,var(--leaf-hi),var(--mint));-webkit-background-clip:text;background-clip:text;color:transparent}
.slide .big img{display:block;width:40px;height:40px}
.slide.on .big{animation:pop .7s cubic-bezier(.2,1.4,.4,1)}
@keyframes pop{0%{transform:scale(.6);opacity:0}100%{transform:none;opacity:1}}
.slide strong{display:block;font:600 16px/1.25 var(--display);color:var(--ink)}
.slide span{display:block;margin-top:3px;font-size:13.5px;line-height:1.35;color:var(--muted)}
.segs{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:4px}
.segs button{height:28px;padding:0;border:0;background:none;cursor:pointer;display:flex;align-items:center}
.segs i{position:relative;display:block;width:100%;height:4px;border-radius:4px;background:rgba(255,255,255,.12);overflow:hidden}
.segs i::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--leaf),var(--mint));transform:scaleX(0);transform-origin:left}
.segs .done i::after{transform:scaleX(1)}
.segs .run i::after{animation:fill 4.2s linear forwards}
.reel.paused .segs .run i::after{animation-play-state:paused}
@keyframes fill{to{transform:scaleX(1)}}
@media (prefers-reduced-motion:reduce){.slide,.slide.out{transform:none}.slide.on .big{animation:none}.segs .run i::after{animation-duration:7s}}
@media (min-width:861px){
  .hero .txt{grid-column:1;grid-row:1}
  .stage{grid-column:2;grid-row:1}
  .reel{grid-column:2;grid-row:1;align-self:end;justify-self:end;width:min(440px,90%);margin:0 4% -2% 0}
}
@media (max-width:860px){
  .stage{max-width:210px;width:56%;margin:-18px 0 -6px}
  .reel{order:-1;margin:0 0 20px}
  .reel-view{height:84px}
  .slide{gap:12px}.slide .big{min-width:74px;font-size:26px}.slide .big img{width:34px;height:34px}
  .slide strong{font-size:15px}.slide span{font-size:13px}
}
.reel.offscreen .segs .run i::after{animation-play-state:paused}
