:root{
  --violet:#6a51d3; --night:#0e0e1f; --orange:#fe7a40; --white:#fffeff;
  --bg:#fffeff; --bg-tint:#f1eefc; --surface:#ffffff;
  --text:#0e0e1f; --muted:#4f4d6b; --line:rgba(14,14,31,.12); --accent-text:#6a51d3;
  --font:"Nunito","Varela Round","Trebuchet MS",system-ui,sans-serif;
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#101024; --bg-tint:#161632; --surface:#1b1b3b;
    --text:#fffeff; --muted:#bcb9d9; --line:rgba(255,254,255,.14); --accent-text:#b7a9f7;
  }
}
:root[data-theme="dark"]{
  --bg:#101024; --bg-tint:#161632; --surface:#1b1b3b;
  --text:#fffeff; --muted:#bcb9d9; --line:rgba(255,254,255,.14); --accent-text:#b7a9f7;
}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:calc(env(safe-area-inset-top,0px) + 4.5rem);height:auto}
@media (prefers-reduced-motion: no-preference){ html{scroll-behavior:smooth} }
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-weight:600;line-height:1.55;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);background:var(--night);z-index:10}
img{max-width:100%;display:block}
h1,h2,h3,p{margin:0}
a{color:inherit}
:focus-visible{outline:3px solid var(--violet);outline-offset:3px;border-radius:6px}
.on-dark :focus-visible,.nav :focus-visible{outline-color:var(--orange)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font:800 1rem/1 var(--font);padding:1rem 1.6rem;border-radius:999px;border:2px solid transparent;cursor:pointer;text-decoration:none;transition:transform .18s ease,background-color .18s ease,border-color .18s ease}
.btn-primary{background:var(--orange);color:var(--night)}
.btn-primary:hover{background:#ff9160;transform:translateY(-2px)}
.btn-ghost{border-color:rgba(255,254,255,.45);color:var(--white);background:transparent}
.btn-ghost:hover{border-color:var(--white);transform:translateY(-2px)}

/* ---------- Nav ---------- */
.nav{position:sticky;top:env(safe-area-inset-top,0px);z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.8rem clamp(1.25rem,5vw,3.5rem);background:var(--night);color:var(--white)}
.brand{display:flex;align-items:center;gap:.65rem;text-decoration:none}
.brand img.mark{height:2.4rem;width:auto}
.brand img.word{height:1.35rem;width:auto}
.nav ul{display:flex;gap:2rem;list-style:none;margin:0;padding:0;font-weight:800}
.nav ul a{text-decoration:none;opacity:.85;transition:opacity .15s}
.nav ul a:hover{opacity:1}
.nav .btn{padding:.75rem 1.2rem;font-size:.95rem}
@media (max-width:720px){.nav ul{display:none}.brand img.word{height:1.15rem}}

/* ---------- Hero ---------- */
.hero{position:relative;background:var(--night);color:var(--white);min-height:calc(100svh - 4rem);display:grid;align-items:center;overflow:hidden}
.hero canvas{position:absolute;inset:0;width:100%;height:100%}
.hero::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--night) 0%,rgba(14,14,31,.88) 32%,rgba(14,14,31,0) 68%)}
@media (max-width:820px){.hero::after{background:linear-gradient(180deg,rgba(14,14,31,.78),rgba(14,14,31,.55))}}
.hero-inner{position:relative;z-index:2;width:100%;max-width:80rem;margin-inline:auto;padding:5rem clamp(1.25rem,6vw,5rem) 5rem}
.hero h1{font-size:clamp(3rem,8.2vw,6.8rem);line-height:.96;font-weight:900;letter-spacing:-.03em;max-width:13ch}
.hero .lead{font-size:clamp(1.1rem,2vw,1.35rem);max-width:28rem;color:rgba(255,254,255,.84);margin:1.6rem 0 2.2rem}
.cta-row{display:flex;flex-wrap:wrap;gap:.9rem}
.trio{display:flex;flex-wrap:wrap;gap:.9rem 2.2rem;margin:3.6rem 0 0;padding:0;list-style:none;font-weight:800;font-size:.98rem}
.trio li{display:flex;align-items:center;gap:.75rem}
.trio li::before{content:"";width:.8rem;height:.8rem;border-radius:50%;background:var(--white);box-shadow:0 0 0 4px var(--violet);flex:none}

/* ---------- Shared section bits ---------- */
.section{padding-block:clamp(4.5rem,10vw,8rem)}
.wrap{max-width:74rem;margin-inline:auto;padding-inline:clamp(1.25rem,6vw,4rem)}
.h2{font-size:clamp(2.1rem,5vw,3.8rem);line-height:1.04;font-weight:900;letter-spacing:-.025em;max-width:16ch}

/* ---------- Impact band ---------- */
.impact{background:var(--bg);padding:clamp(2.5rem,6vw,4.5rem) clamp(1.25rem,5vw,3.5rem)}
.impact-list{list-style:none;margin:0 auto;padding:0;max-width:74rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.impact-list li{border-left:6px solid var(--violet);padding:.2rem 0 .2rem clamp(.8rem,2vw,1.6rem)}
.impact-list li:nth-child(2){border-left-color:var(--orange)}
.impact-list b{display:block;font-size:clamp(2.4rem,8vw,6rem);line-height:1;font-weight:900;letter-spacing:-.03em;color:var(--accent-text)}
.impact-list span{display:block;margin-top:.5rem;font-weight:800;font-size:clamp(.9rem,1.8vw,1.25rem)}

@media (max-width:600px){
  .impact-list{grid-template-columns:1fr;gap:1.4rem}
  .impact-list li{display:flex;align-items:baseline;gap:1rem}
  .impact-list b{font-size:2.7rem;min-width:9rem;white-space:nowrap}
  .impact-list span{margin-top:0;font-size:1.15rem}
}

/* ---------- Problem ---------- */
.problem{background:var(--violet);color:var(--white);text-align:center}
.problem .h2{margin-inline:auto;max-width:18ch;font-size:clamp(2.2rem,5.6vw,4.4rem)}
.frags{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-top:3.2rem;text-align:left}
.frag{display:flex;align-items:center;background:var(--white);color:var(--night);padding:1.4rem 1.6rem;font-weight:800;font-size:clamp(1.1rem,1.8vw,1.3rem);line-height:1.25;border-radius:1.5rem 1.5rem 1.5rem .4rem;box-shadow:0 14px 30px rgba(14,14,31,.22)}
.frag:nth-child(1){transform:rotate(-2.5deg)}
.frag:nth-child(2){transform:translateY(1rem) rotate(1.5deg);border-radius:1.5rem 1.5rem .4rem 1.5rem}
.frag:nth-child(3){transform:translateY(-.3rem) rotate(-1deg)}
.converge{display:block;width:100%;max-width:100%;height:auto;margin-top:.8rem}
.resolve{font-size:clamp(1.8rem,4.6vw,3.3rem);line-height:1.08;font-weight:900;letter-spacing:-.02em;max-width:20ch;margin:.6rem auto 0}
@media (max-width:760px){
  .frags{grid-template-columns:1fr;gap:1rem}
  .frag:nth-child(n){transform:none}
  .converge{display:none}
  .resolve{margin-top:2.4rem;position:relative}
  .resolve::before{content:"";display:block;width:6px;height:3rem;border-radius:6px;background:var(--white);margin:0 auto 1.4rem}
}

/* ---------- Idea ---------- */
.idea{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,6vw,5rem);align-items:center}
.idea svg{width:100%;height:auto;max-height:34rem}
.idea p{font-size:clamp(1.1rem,1.8vw,1.3rem);color:var(--muted);max-width:30rem;margin-top:1.4rem;line-height:1.6}
@media (max-width:820px){.idea{grid-template-columns:1fr}.idea svg{max-width:26rem;margin-inline:auto}}

/* ---------- Bento ---------- */
.features{background:var(--bg-tint)}
.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:1.25rem;margin-top:3rem}
.card{position:relative;overflow:hidden;padding:clamp(1.6rem,3vw,2.4rem);min-height:19rem;display:flex;flex-direction:column}
.card h3{font-size:clamp(1.55rem,2.6vw,2.1rem);font-weight:900;line-height:1.08;letter-spacing:-.015em}
.card p{margin-top:.7rem;font-size:1.08rem;max-width:26rem}
.c-private{grid-column:span 5;background:var(--violet);color:var(--white);border-radius:3rem 1rem 3rem 1rem}
.c-friends{grid-column:span 7;background:var(--surface);color:var(--text);border-radius:1rem 3rem 1rem 3rem;padding-bottom:0}
.c-friends p{color:var(--muted)}
.c-tools{grid-column:span 7;background:var(--night);color:var(--white);border-radius:1rem 3rem 1rem 3rem}
.c-tools p{color:rgba(255,254,255,.8)}
.c-brand{grid-column:span 5;background:var(--orange);color:var(--night);border-radius:3rem 1rem 3rem 1rem}
@media (max-width:900px){.c-private,.c-friends,.c-tools,.c-brand{grid-column:span 12}}
.c-private svg{width:min(100%,19rem);height:auto;margin:auto auto 0}
.shot{margin-top:1.6rem;border-radius:1rem 1rem 0 0;overflow:hidden;box-shadow:0 -4px 30px rgba(14,14,31,.14),0 0 0 1px var(--line);aspect-ratio:10/5;margin-inline:auto;width:100%;max-width:34rem;margin-bottom:0}
.shot img{width:100%;height:100%;object-fit:cover;object-position:50% 78%}
.tools{display:flex;flex-wrap:wrap;gap:.8rem;margin:auto 0;padding:1.6rem 0 0;list-style:none}
.tools li{display:flex;align-items:center;gap:.65rem;padding:.8rem 1.4rem;border-radius:999px;border:2px solid rgba(255,254,255,.2);font-weight:800;font-size:1.15rem}
.tools li::before{content:"";width:.65rem;height:.65rem;border-radius:50%;background:var(--orange)}
.tools li:nth-child(3n+1){border-color:var(--violet);background:rgba(106,81,211,.28)}

.soon{display:inline-block;vertical-align:middle;margin-left:.4rem;padding:.3rem .7rem;border-radius:99px;background:var(--night);color:var(--white);font-size:.72rem;font-weight:800;letter-spacing:.01em;line-height:1}
/* brand switcher */
.mini{margin-top:1.4rem;background:var(--white);border-radius:1.1rem;box-shadow:0 14px 30px rgba(14,14,31,.22);overflow:hidden}
.mini-head{display:flex;align-items:center;gap:.7rem;padding:.8rem 1rem;border-bottom:1px solid rgba(14,14,31,.08);min-height:3.6rem}
.crest{width:2.2rem;height:2.2rem;border-radius:.65rem;display:grid;place-items:center;color:var(--white);font-weight:900;font-size:1.05rem;flex:none;overflow:hidden;background:var(--night)}
.crest img{width:78%;height:auto}
.bname{font-weight:900;font-size:1.1rem;color:var(--night)}
.mini-body{padding:1rem;display:grid;gap:.55rem}
.mini-body i{display:block;height:.6rem;border-radius:99px;background:rgba(14,14,31,.09)}
.mini-body i:nth-child(2){width:78%}.mini-body i:nth-child(3){width:52%}
.mini-body b{justify-self:start;margin-top:.5rem;padding:.45rem 1rem;border-radius:99px;color:var(--white);font-size:.85rem;font-weight:800;background:var(--night);transition:background-color .25s}
@keyframes swap{from{transform:scale(.8);opacity:0}to{transform:none;opacity:1}}
.swap .crest,.swap .bname{animation:swap .3s ease both}
.chips{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.1rem}
.chip{font:800 .9rem/1 var(--font);padding:.65rem 1rem;border-radius:999px;border:2px solid var(--night);background:transparent;color:var(--night);cursor:pointer;transition:background-color .15s,color .15s}
.chip:hover{background:rgba(14,14,31,.1)}
.chip[aria-pressed="true"]{background:var(--night);color:var(--white)}
.chip:focus-visible{outline-color:var(--night)}
.note{font-size:.8rem;margin-top:.8rem;opacity:.75}
.c-brand p{color:rgba(14,14,31,.82)}

/* ---------- Weave: academic + social ---------- */
.weave{background:var(--bg-tint)}
.lede{font-size:clamp(1.15rem,2vw,1.5rem);font-weight:700;color:var(--muted);margin-top:1rem;max-width:30rem}
.weave-grid{display:grid;grid-template-columns:1fr 8rem 1fr;align-items:stretch;margin-top:3rem}
.wcard{position:relative;z-index:1;padding:clamp(1.7rem,3vw,2.6rem)}
.w-acad{background:var(--night);color:var(--white);border-radius:3rem 1rem 1rem 3rem}
.w-soc{background:var(--orange);color:var(--night);border-radius:1rem 3rem 3rem 1rem}
.wcard h3{font-size:clamp(1.9rem,3.6vw,3rem);font-weight:900;letter-spacing:-.02em;line-height:1}
.wsub{margin-top:.5rem;font-weight:800;opacity:.8}
.wcard ul{list-style:none;margin:1.8rem 0 0;padding:0;display:grid;gap:.9rem}
.wcard li{display:flex;gap:.8rem;align-items:flex-start;font-weight:800;font-size:clamp(1.02rem,1.6vw,1.2rem);line-height:1.3}
.wcard li::before{content:"";flex:none;width:.7rem;height:.7rem;border-radius:50%;margin-top:.4rem}
.w-acad li::before{background:var(--white);box-shadow:0 0 0 3px var(--violet)}
.w-soc li::before{background:var(--night);box-shadow:0 0 0 3px var(--white)}
.weave-mid{position:relative;display:grid;place-items:center}
.weave-mid::before{content:"";position:absolute;left:0;right:0;top:50%;height:8px;border-radius:8px;transform:translateY(-50%);background:var(--violet)}
.weave-mid span{position:relative;z-index:1;width:5rem;height:5rem;border-radius:50%;background:var(--night);box-shadow:0 0 0 6px var(--violet);display:grid;place-items:center}
.weave-mid img{width:3.1rem;height:auto}
@media (max-width:820px){
  .weave-grid{grid-template-columns:1fr}
  .weave-mid{height:6rem}
  .weave-mid::before{left:50%;right:auto;top:0;bottom:0;width:8px;height:auto;transform:translateX(-50%)}
  .w-acad{border-radius:2rem}
  .w-soc{border-radius:2rem}
}

/* ---------- Vs. the giants ---------- */
.giants-sec{background:var(--night);color:var(--white)}
.hook{max-width:21ch;font-size:clamp(1.9rem,4.8vw,3.7rem)}
.hook span{display:block;color:rgba(255,254,255,.58)}
.hook strong{display:block;color:var(--white);font-weight:900;margin-top:.5rem}
.giants{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:3.6rem}
.giants::before{content:"";position:absolute;left:16.66%;right:16.66%;top:2.5rem;height:8px;border-radius:8px;transform:translateY(-50%);background:linear-gradient(90deg,var(--orange),var(--violet) 50%,var(--white))}
.g{position:relative;z-index:1;text-align:center;padding:0 1.3rem 1.8rem}
.gnode{display:block;margin:.9rem auto 1.5rem;width:3.2rem;height:3.2rem;border-radius:50%}
.gn-fb{background:var(--orange)}
.gn-li{background:var(--white)}
.g-us{background:var(--violet);border-radius:2rem}
.g-us .gnode{width:5rem;height:5rem;margin:0 auto 1.5rem;background:var(--night);box-shadow:0 0 0 6px var(--violet);display:grid;place-items:center;transform:translateY(0)}
.g-us .gnode img{width:3.1rem;height:auto}
.gtag{display:inline-block;padding:.35rem .95rem;border-radius:99px;border:2px solid rgba(255,254,255,.3);font-weight:800;font-size:.85rem}
.g-us .gtag{border-color:rgba(255,254,255,.65)}
.g h3{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:900;margin-top:.9rem;letter-spacing:-.015em}
.gsub{font-weight:800;opacity:.75;margin-top:.1rem}
.g p:last-child{margin:1rem auto 0;max-width:22rem;color:rgba(255,254,255,.82);font-size:1.06rem}
.g-us p:last-child{color:var(--white)}
.fine-dark{color:rgba(255,254,255,.55);margin-top:2.6rem;max-width:44rem}
.fine{font-size:.88rem}
@media (max-width:820px){
  .giants{grid-template-columns:1fr;gap:1rem}
  .giants::before{display:none}
  .g:not(.g-us){border-top:2px solid rgba(255,254,255,.16);padding-top:.4rem}
  .g-us{margin-block:.4rem}
}

.lede-dark{color:rgba(255,254,255,.78);margin-top:1.4rem;max-width:34rem}
.dims{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;margin-top:3rem}
.dims-label{font-weight:800;margin-right:.6rem;opacity:.7}
.dim{font:800 .98rem/1 var(--font);padding:.7rem 1.2rem;border-radius:999px;border:2px solid rgba(255,254,255,.28);background:transparent;color:var(--white);cursor:pointer;transition:background-color .15s,border-color .15s}
.dim:hover{border-color:var(--white)}
.dim[aria-selected="true"]{background:var(--violet);border-color:var(--violet)}
.dimpanel{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:1.6rem;transition:opacity .22s ease}
.dimpanel.out{opacity:0}
.dc{margin:0;padding-top:.9rem;border-top:4px solid var(--white);font-size:clamp(1.02rem,1.6vw,1.2rem);line-height:1.35}
.dc b{display:block;font-size:.88rem;font-weight:800;opacity:.65;margin-bottom:.35rem}
.dc span{display:block;font-weight:700;color:rgba(255,254,255,.88)}
.dc-fb{border-top-color:var(--orange)}
.dc-us{border-top-color:#9a87f0}
.dc-us span{color:var(--white);font-weight:900}
@media (max-width:820px){.dimpanel{grid-template-columns:1fr;gap:1.1rem}}

/* ---------- Shift (manifesto) ---------- */
.shift{background:var(--violet);color:var(--white)}
.shift .h2{max-width:17ch;font-size:clamp(2.2rem,5.6vw,4.4rem)}
.shift-sub{font-size:clamp(1.15rem,2vw,1.5rem);font-weight:700;margin-top:1.2rem;color:rgba(255,254,255,.92)}
.shift-list{list-style:none;margin:3.2rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.shift-list li{border-top:4px solid var(--white);padding-top:1.2rem}
.shift-list li:nth-child(2){border-top-color:var(--orange)}
.shift-list h3{font-size:clamp(1.35rem,2.2vw,1.7rem);font-weight:900;letter-spacing:-.01em}
.shift-list p{margin-top:.5rem;font-size:1.08rem;color:rgba(255,254,255,.92)}
@media (max-width:820px){.shift-list{grid-template-columns:1fr;gap:1.6rem}}

/* ---------- Who wins ---------- */
.who{background:var(--bg)}
.wins{list-style:none;margin:3rem 0 0;padding:0}
.wins li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:1rem 2.5rem;align-items:baseline;padding:1.6rem 0;border-top:2px solid var(--line)}
.wins li:last-child{border-bottom:2px solid var(--line)}
.wins h3{font-size:clamp(1.3rem,2.4vw,1.8rem);font-weight:900;letter-spacing:-.01em;color:var(--accent-text)}
.wins p{font-size:clamp(1.05rem,1.8vw,1.25rem);color:var(--text)}
@media (max-width:700px){.wins li{grid-template-columns:1fr;gap:.3rem}}

/* ---------- Preview ---------- */
.preview{background:var(--night);color:var(--white)}
.preview .h2{max-width:20ch}
.tabs{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2rem}
.tab{font:800 1rem/1 var(--font);padding:.8rem 1.3rem;border-radius:999px;border:2px solid rgba(255,254,255,.25);background:transparent;color:var(--white);cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.tab:hover{border-color:var(--white)}
.tab[aria-selected="true"]{background:var(--violet);border-color:var(--violet)}
.stage{margin-top:2.2rem;position:relative}
.stage::before{content:"";position:absolute;inset:8% 4% -6%;background:radial-gradient(closest-side,rgba(106,81,211,.55),rgba(106,81,211,0));filter:blur(30px);z-index:0}
.frame{position:relative;z-index:1;max-width:62rem;margin-inline:auto;background:#f4f3f8;border-radius:1.2rem;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.45),0 0 0 1px rgba(255,254,255,.12)}
.frame-bar{display:flex;align-items:center;gap:.5rem;padding:.7rem 1rem;background:#1c1c3a}
.frame-bar i{width:.7rem;height:.7rem;border-radius:50%;background:rgba(255,254,255,.28)}
.frame-bar i:first-child{background:var(--orange)}
.frame-bar span{margin-left:.8rem;flex:1;max-width:20rem;font-size:.8rem;font-weight:700;color:rgba(255,254,255,.7);background:rgba(255,254,255,.08);padding:.3rem .9rem;border-radius:99px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.frame-view{position:relative;aspect-ratio:16/10}
.frame-view img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top;opacity:0;transition:opacity .35s ease}
.frame-view img.on{opacity:1}
.caption{margin:1.6rem auto 0;max-width:62rem;font-size:1.15rem;font-weight:800;text-align:center;min-height:1.8rem}

/* ---------- Steps ---------- */
.steps{list-style:none;margin:3.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;position:relative}
.steps::before{content:"";position:absolute;top:2rem;left:2rem;right:0;height:6px;border-radius:6px;background:linear-gradient(90deg,var(--violet),var(--violet) 85%,var(--orange));transform:translateY(-50%)}
.steps::after{content:"";position:absolute;top:2rem;right:0;width:1.4rem;height:1.4rem;border-radius:50%;background:var(--orange);transform:translateY(-50%)}
.step{position:relative}
.node{position:relative;z-index:1;width:4rem;height:4rem;border-radius:50%;background:var(--violet);display:grid;place-items:center}
.node b{width:2.6rem;height:2.6rem;border-radius:50%;background:var(--white);color:var(--night);display:grid;place-items:center;font-weight:900;font-size:1.25rem}
.step h3{font-size:1.6rem;font-weight:900;margin-top:1.4rem;letter-spacing:-.01em}
.step p{margin-top:.4rem;color:var(--muted);font-size:1.08rem;max-width:18rem}
@media (max-width:760px){
  .steps{grid-template-columns:1fr;gap:2.4rem}
  .steps::before{top:2rem;bottom:2rem;left:2rem;right:auto;width:6px;height:auto;transform:translateX(-50%);background:linear-gradient(180deg,var(--violet) 80%,var(--orange))}
  .steps::after{display:none}
  .step{display:grid;grid-template-columns:4rem 1fr;column-gap:1.2rem}
  .step h3{margin-top:.2rem}
  .step p{grid-column:2}
}

.facts{list-style:none;margin:4.5rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(13.5rem,1fr));gap:1.6rem 2rem}
.facts li{border-top:4px solid var(--violet);padding-top:1rem}
.facts b{display:block;font-size:1.2rem;font-weight:900}
.facts span{display:block;margin-top:.3rem;color:var(--muted);font-size:1rem}

/* ---------- Final CTA ---------- */
.final{position:relative;background:var(--violet);color:var(--white);overflow:hidden}
.final .net-bg{position:absolute;right:-14%;top:50%;width:min(56rem,95vw);transform:translateY(-50%);opacity:.14;pointer-events:none}
.final .wrap{position:relative;z-index:1}
.final .h2{max-width:14ch;font-size:clamp(2.4rem,6.4vw,5rem)}
.final p.sub{font-size:1.25rem;margin-top:1.3rem;max-width:26rem;color:rgba(255,254,255,.92)}
.form{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:2.2rem;max-width:34rem}
.form input{flex:1 1 15rem;font:700 1.05rem/1 var(--font);padding:1.05rem 1.4rem;border-radius:999px;border:2px solid transparent;background:var(--white);color:var(--night)}
.form input::placeholder{color:#6b6987}
.form input:focus-visible{outline-color:var(--orange)}
.thanks{margin-top:1rem;font-weight:800;font-size:1.1rem;min-height:1.6rem}

/* ---------- Closing message ---------- */
.closing{background:var(--night);color:var(--white);padding-block:clamp(4.5rem,10vw,8rem)}
.hypha{display:block;position:relative;width:min(16rem,60%);height:6px;border-radius:6px;background:var(--violet);margin-bottom:2.6rem}
.hypha::after{content:"";position:absolute;right:-.5rem;top:50%;width:1.3rem;height:1.3rem;border-radius:50%;background:var(--orange);transform:translateY(-50%)}
.closing-text{font-size:clamp(1.8rem,4.8vw,3.6rem);line-height:1.08;font-weight:900;letter-spacing:-.025em;max-width:22ch;color:rgba(255,254,255,.62);margin-top:.6rem}
.closing-text.bright{color:var(--white);margin-top:1.1rem}
.closing .btn{margin-top:2.4rem}

/* ---------- Footer ---------- */
.foot{background:var(--night);color:rgba(255,254,255,.75);padding:2.2rem clamp(1.25rem,5vw,3.5rem);display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between;font-size:.95rem}
.foot .brand img.mark{height:2rem}.foot .brand img.word{height:1.1rem}
.ver{opacity:.45;margin-left:.6rem;font-size:.85em}
