/* ─────────────────────────────────────────────
   FIVE THIRTY EIGHT — shared design system
   ───────────────────────────────────────────── */
:root{
  --bg:#09090E; --bg-alt:#0E0E15;
  --surface:#1A1A24; --surface-2:#23232F; --surface-3:#2C2C3A;
  --line:#33334A; --line-strong:#4A4A63; --line-hot:#5E5E7C;
  --edge:rgba(255,255,255,.07);
  --text:#FFFFFF; --body:#DFDFE9; --mute:#ADADBE; --faint:#7E7E92;
  --green:#8CFF1A; --green-2:#6FD400; --amber:#FFC24D; --red:#FF6B78;
  --glow:rgba(140,255,26,.16);
  --shadow:0 1px 2px rgba(0,0,0,.5),0 10px 30px rgba(0,0,0,.28);
  --shadow-lg:0 2px 4px rgba(0,0,0,.5),0 20px 50px rgba(0,0,0,.32);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{background:var(--bg);color:var(--body);font-family:"Inter",system-ui,-apple-system,sans-serif;
  font-size:16px;line-height:1.75;letter-spacing:.005em;overflow-x:hidden;text-rendering:optimizeLegibility}
img{max-width:100%;display:block}
a{color:inherit}
::selection{background:var(--green);color:#09090E}
.d1,.d2,.d3,.stat-n,.big-n,.step-n,.calc-val,.calc-big,.faq-n,.otime,.fbrand{line-height:1.14;padding-bottom:3px}

/* PAGE TRANSITION */
body{animation:pgIn .45s cubic-bezier(.4,0,.2,1) both}
@keyframes pgIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
body.leaving{opacity:0;transform:translateY(-8px);transition:opacity .26s ease,transform .26s ease}

#prog{position:fixed;top:0;left:0;height:2px;width:0;background:var(--green);z-index:400;box-shadow:0 0 10px var(--green)}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:300;display:flex;align-items:center;gap:20px;
  padding:13px 44px;background:rgba(9,9,14,.88);backdrop-filter:blur(22px) saturate(140%);border-bottom:1px solid var(--line)}
.logo{display:flex;align-items:center;gap:11px;text-decoration:none;flex-shrink:0}
.logo img{width:34px;height:34px;filter:drop-shadow(0 0 8px var(--glow))}
.logo b{display:block;font-family:"Bebas Neue",sans-serif;font-size:17px;letter-spacing:3px;color:var(--text);line-height:1.1;font-weight:400}
.logo i{display:block;font-family:"JetBrains Mono",monospace;font-size:8.5px;letter-spacing:2.2px;color:var(--green);font-style:normal;text-transform:uppercase}
.nlinks{display:flex;gap:2px;margin-left:auto}
.nlinks a{color:var(--body);text-decoration:none;font-family:"JetBrains Mono",monospace;font-size:11.5px;
  letter-spacing:1.1px;text-transform:uppercase;padding:8px 12px;border-radius:3px;transition:color .18s,background .18s}
.nlinks a:hover{color:var(--text);background:var(--surface-2)}
.nlinks a.on{color:var(--green);background:rgba(140,255,26,.09)}
.ncta{background:var(--green);color:#09090E;padding:10px 22px;font-family:"JetBrains Mono",monospace;
  font-size:11px;font-weight:500;letter-spacing:1.4px;text-transform:uppercase;text-decoration:none;
  flex-shrink:0;transition:box-shadow .2s,transform .2s;border-radius:3px}
.ncta:hover{box-shadow:0 0 26px var(--glow);transform:translateY(-1px)}
#burger{display:none;background:none;border:1px solid var(--line-strong);color:var(--green);
  font-family:"JetBrains Mono",monospace;font-size:11px;padding:9px 13px;border-radius:3px;cursor:pointer}

/* TYPE */
.d1{font-family:"Bebas Neue",sans-serif;font-size:clamp(44px,5.6vw,84px);letter-spacing:1px;color:var(--text)}
.d2{font-family:"Bebas Neue",sans-serif;font-size:clamp(34px,4.2vw,58px);letter-spacing:1px;color:var(--text)}
.d3{font-family:"Bebas Neue",sans-serif;font-size:clamp(24px,2.2vw,32px);letter-spacing:.8px;color:var(--text)}
.g{color:var(--green)}
.kicker{display:inline-block;font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:3px;
  text-transform:uppercase;color:var(--green);margin-bottom:16px;padding:5px 12px;
  border:1px solid rgba(140,255,26,.3);background:rgba(140,255,26,.07);border-radius:3px}
.lead{font-size:18.5px;line-height:1.72;color:var(--body);max-width:66ch}
.sm{font-size:15px;line-height:1.74;color:var(--mute)}
h4.lbl{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:2.2px;text-transform:uppercase;
  color:var(--green);margin-bottom:9px;font-weight:500}
section{padding:100px 44px;position:relative}
.wrap{max-width:1300px;margin:0 auto}
.hr{height:1px;background:linear-gradient(90deg,transparent,var(--green),transparent);box-shadow:0 0 18px var(--glow)}

/* BUTTONS */
.btn{display:inline-block;padding:15px 34px;font-family:"JetBrains Mono",monospace;font-size:11.5px;
  font-weight:500;letter-spacing:1.5px;text-transform:uppercase;text-decoration:none;cursor:pointer;
  border:none;border-radius:3px;transition:all .2s}
.b1{background:var(--green);color:#09090E;box-shadow:0 0 26px var(--glow)}
.b1:hover{background:var(--green-2);box-shadow:0 0 44px rgba(140,255,26,.34);transform:translateY(-2px)}
.b2{color:var(--text);border:1px solid var(--line-strong);background:var(--surface)}
.b2:hover{border-color:var(--green);color:var(--green);background:var(--surface-2)}

/* HERO */
.hero{position:relative;min-height:92vh;display:flex;align-items:center;padding:132px 44px 72px;overflow:hidden}
.hero.short{min-height:auto;padding:170px 44px 76px;overflow:hidden}
#cv{position:absolute;right:0;bottom:0;width:44%;height:64%;z-index:0;pointer-events:none;opacity:.85;
  -webkit-mask-image:radial-gradient(ellipse 78% 78% at 82% 80%,#000 34%,transparent 76%);
  mask-image:radial-gradient(ellipse 78% 78% at 82% 80%,#000 34%,transparent 76%)}
.hero-in{position:relative;z-index:4;max-width:1300px;margin:0 auto;width:100%}
.pill{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line-strong);background:var(--surface);
  padding:8px 16px;margin-bottom:28px;font-family:"JetBrains Mono",monospace;font-size:10.5px;
  letter-spacing:2.2px;text-transform:uppercase;color:var(--green);border-radius:3px}
.pill::before{content:"";width:6px;height:6px;background:var(--green);border-radius:50%;animation:bp 2.2s infinite;box-shadow:0 0 8px var(--green)}
@keyframes bp{0%,100%{opacity:1}50%{opacity:.25}}
.hero h1{margin-bottom:24px;max-width:26ch;position:relative;z-index:4}
.hero .lead,.hero .reassure,.hero .cta-row,.hero .stats,.hero .pill{position:relative;z-index:4}
.hero .lead{margin-bottom:16px}
.reassure{font-family:"JetBrains Mono",monospace;font-size:12.5px;color:var(--mute);margin-bottom:34px;display:flex;align-items:center;gap:9px}
.reassure::before{content:"";width:14px;height:1px;background:var(--green);flex-shrink:0}
.cta-row{display:flex;gap:13px;flex-wrap:wrap;margin-bottom:44px}
.stats{display:flex;border-top:1px solid var(--line);flex-wrap:wrap}
.stat{padding:26px 36px 0 0;margin-right:36px;border-right:1px solid var(--line);padding-right:36px}
.stat:last-child{border-right:none;margin-right:0}
.stat-n{font-family:"Bebas Neue",sans-serif;font-size:52px;color:var(--green);text-shadow:0 0 22px var(--glow)}
.stat-l{font-family:"JetBrains Mono",monospace;font-size:11px;color:var(--mute);letter-spacing:1.2px;
  text-transform:uppercase;margin-top:6px;max-width:22ch;line-height:1.65}

/* PROOF */
.proof{background:var(--bg-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 44px}
.proof-in{max-width:1300px;margin:0 auto;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.proof b{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:2.4px;text-transform:uppercase;color:var(--mute);font-weight:400}
.pchip{display:flex;align-items:center;gap:9px;font-size:14.5px;color:var(--body);background:var(--surface);
  border:1px solid var(--line-strong);border-radius:3px;padding:8px 15px}
.pchip::before{content:"";width:6px;height:6px;background:var(--green);border-radius:50%;box-shadow:0 0 7px var(--green);flex-shrink:0}

/* CARDS */
.card{position:relative;background:var(--surface);border:1px solid var(--line-strong);border-radius:4px;
  padding:34px 30px;box-shadow:var(--shadow);transition:background .25s,border-color .25s,transform .25s,box-shadow .25s}
.card::before{content:"";position:absolute;top:0;left:1px;right:1px;height:1px;background:var(--edge)}
.card:hover{background:var(--surface-2);border-color:var(--line-hot);transform:translateY(-4px);
  box-shadow:0 2px 4px rgba(0,0,0,.5),0 18px 46px rgba(0,0,0,.4)}
.card h3{font-size:17px;font-weight:600;color:var(--text);margin-bottom:11px;line-height:1.32;letter-spacing:-.01em}
.card p{font-size:15.5px;color:var(--body);line-height:1.72;max-width:44ch}
.big-n{font-family:"Bebas Neue",sans-serif;font-size:42px;margin-bottom:12px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:54px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:54px}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:54px}

/* SEGMENT LINK CARDS */
a.seg{display:block;text-decoration:none;position:relative;background:var(--surface);border:1px solid var(--line-strong);
  border-radius:4px;padding:32px 28px;box-shadow:var(--shadow);transition:all .25s;overflow:hidden}
a.seg::before{content:"";position:absolute;top:0;left:1px;right:1px;height:1px;background:var(--edge)}
a.seg:hover{background:var(--surface-2);border-color:var(--green);transform:translateY(-4px);
  box-shadow:0 2px 4px rgba(0,0,0,.5),0 18px 46px rgba(0,0,0,.4)}
.seg-k{font-family:"JetBrains Mono",monospace;font-size:9.5px;letter-spacing:2.2px;text-transform:uppercase;color:var(--green);margin-bottom:12px}
.seg h3{font-family:"Bebas Neue",sans-serif;font-size:27px;color:var(--text);letter-spacing:.6px;margin-bottom:9px;line-height:1.16;padding-bottom:2px}
.seg p{font-size:15px;color:var(--body);line-height:1.68}
.seg-go{display:inline-flex;align-items:center;gap:8px;margin-top:18px;font-family:"JetBrains Mono",monospace;
  font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--green);transition:gap .25s}
a.seg:hover .seg-go{gap:14px}

/* CALCULATOR */
.calc{background:var(--surface);border:1px solid var(--line-strong);border-radius:4px;overflow:hidden;
  box-shadow:var(--shadow-lg);margin-top:54px;display:grid;grid-template-columns:1fr 1fr}
.calc-l{padding:44px;border-right:1px solid var(--line)}
.calc-r{padding:44px;background:var(--bg-alt);display:flex;flex-direction:column;justify-content:center}
.fld{margin-bottom:34px}.fld:last-child{margin-bottom:0}
.frow{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:13px;gap:14px}
.frow span:first-child{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:1.1px;text-transform:uppercase;color:var(--body)}
.calc-val{font-family:"Bebas Neue",sans-serif;font-size:30px;color:var(--green)}
input[type=range]{width:100%;height:4px;background:var(--surface-3);outline:none;-webkit-appearance:none;appearance:none;cursor:pointer;border-radius:4px}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;background:var(--green);cursor:pointer;border-radius:50%;box-shadow:0 0 14px rgba(140,255,26,.6)}
input[type=range]::-moz-range-thumb{width:18px;height:18px;background:var(--green);cursor:pointer;border:none;border-radius:50%;box-shadow:0 0 14px rgba(140,255,26,.6)}
.hint{font-family:"JetBrains Mono",monospace;font-size:11.5px;color:var(--mute);margin-top:10px;line-height:1.6}
.out{margin-bottom:26px}
.out-l{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:2.2px;text-transform:uppercase;color:var(--mute);margin-bottom:6px}
.calc-big{font-family:"Bebas Neue",sans-serif;font-size:62px}
.calc-big.bad{color:var(--red)}
.calc-big.good{color:var(--green);text-shadow:0 0 26px var(--glow)}
.bar{height:9px;background:var(--surface-3);margin-top:11px;overflow:hidden;border-radius:2px}
.bar i{display:block;height:100%;transition:width .55s cubic-bezier(.4,0,.2,1)}
.verdict{border-top:1px solid var(--line-strong);padding-top:22px}
.verdict p{font-size:16px;color:var(--body);line-height:1.72}

/* CASE */
.case{background:var(--surface);border:1px solid var(--line-strong);border-radius:4px;padding:48px;
  margin-top:54px;box-shadow:var(--shadow-lg);transition:border-color .3s}
.case:hover{border-color:var(--line-hot)}
.chead{display:grid;grid-template-columns:.85fr 1.15fr;gap:52px;align-items:start}
.cblocks{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.blk{margin-bottom:24px}.blk:last-child{margin-bottom:0}
.blk p{font-size:15.5px;color:var(--body);line-height:1.74;max-width:60ch}
.tag{display:inline-block;font-family:"JetBrains Mono",monospace;font-size:9.5px;letter-spacing:2.2px;
  text-transform:uppercase;padding:6px 12px;margin-bottom:18px;border:1px solid;border-radius:3px}
.t-live{color:var(--green);border-color:rgba(140,255,26,.45);background:rgba(140,255,26,.09)}
.t-dev{color:var(--amber);border-color:rgba(255,194,77,.4);background:rgba(255,194,77,.08)}
.client{font-family:"JetBrains Mono",monospace;font-size:12px;letter-spacing:1.8px;color:var(--mute);text-transform:uppercase;margin-bottom:10px}
.feats{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.feat{font-family:"JetBrains Mono",monospace;font-size:10.5px;padding:7px 12px;border:1px solid var(--line-strong);
  border-radius:3px;color:var(--body);background:var(--bg-alt)}
.receipt{margin-top:26px;border:1px solid rgba(140,255,26,.3);background:rgba(140,255,26,.06);padding:18px 20px;border-radius:4px}
.rrow{display:flex;justify-content:space-between;gap:16px;font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--body);padding:8px 0}
.rrow.hi{color:var(--green);font-weight:500}
.rrow.tot{border-top:1px solid rgba(140,255,26,.28);margin-top:7px;padding-top:13px;color:var(--text);font-size:15px}
.shots{display:grid;gap:22px;margin-top:44px}
.s2{grid-template-columns:1fr 1fr}
.s3{grid-template-columns:repeat(3,1fr)}
.frame{border:1px solid var(--line-strong);border-radius:4px;background:var(--bg-alt);overflow:hidden;
  cursor:zoom-in;box-shadow:var(--shadow);transition:all .25s}
.frame:hover{border-color:var(--green);transform:translateY(-4px);box-shadow:0 2px 6px rgba(0,0,0,.5),0 22px 54px rgba(0,0,0,.44)}
.fbar{display:flex;align-items:center;gap:6px;padding:10px 13px;background:var(--surface-2);border-bottom:1px solid var(--line)}
.dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}
.furl{margin-left:9px;font-family:"JetBrains Mono",monospace;font-size:9.5px;color:var(--mute);background:var(--bg);
  padding:4px 12px;border-radius:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cap{font-family:"JetBrains Mono",monospace;font-size:11.5px;color:var(--body);margin-top:14px;line-height:1.66}
.cap b{color:var(--green);font-weight:500}

/* CONSOLE */
.console{margin-top:54px;background:#06060A;border:1px solid var(--line-strong);border-radius:4px;overflow:hidden;box-shadow:var(--shadow-lg)}
.cbar{display:flex;align-items:center;gap:12px;padding:12px 18px;background:var(--surface-2);border-bottom:1px solid var(--line)}
.cbar .live{display:flex;align-items:center;gap:8px;font-family:"JetBrains Mono",monospace;font-size:10px;
  letter-spacing:2px;text-transform:uppercase;color:var(--green)}
.cbar .live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 9px var(--green);animation:bp 1.6s infinite}
.cbar .ttl{font-family:"JetBrains Mono",monospace;font-size:10.5px;color:var(--mute);letter-spacing:1.4px;margin-left:auto}
.clog{padding:22px 20px;height:300px;overflow:hidden;font-family:"JetBrains Mono",monospace;font-size:13.5px;line-height:2.05}
.ln{display:flex;gap:14px;animation:slideIn .4s ease both;white-space:nowrap}
@keyframes slideIn{from{opacity:0;transform:translateX(-10px)}to{opacity:1;transform:none}}
.ts{color:var(--faint);flex-shrink:0}
.ag{color:var(--green);flex-shrink:0;width:132px}
.ms{color:var(--body);overflow:hidden;text-overflow:ellipsis}
.ms em{color:#fff;font-style:normal}

/* OWNERSHIP TERMS */
.terms{margin-top:44px;background:var(--surface);border:1px solid var(--line-strong);border-radius:4px;
  box-shadow:var(--shadow-lg);overflow:hidden;position:relative}
.terms::before{content:"";position:absolute;top:0;left:1px;right:1px;height:1px;background:var(--edge)}
.terms-h{padding:30px 34px 0}
.terms-h h3{font-family:"Bebas Neue",sans-serif;font-size:clamp(26px,2.4vw,34px);letter-spacing:.8px;
  color:var(--text);line-height:1.14;padding-bottom:3px;margin-top:4px}
.terms-grid{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid var(--line);margin-top:24px}
.term{padding:28px 24px;border-right:1px solid var(--line)}
.term:last-child{border-right:none}
.term b{display:flex;align-items:center;gap:10px;font-size:15.5px;font-weight:600;color:var(--text);margin-bottom:9px}
.term b::before{content:"";width:7px;height:7px;background:var(--green);border-radius:50%;
  box-shadow:0 0 9px var(--green);flex-shrink:0}
.term p{font-size:14.5px;color:var(--body);line-height:1.62}

/* ═══ MOTION SYSTEM ═══════════════════════════════ */

/* CURTAIN PAGE TRANSITION */
#curtain{position:fixed;inset:0;background:var(--green);z-index:600;pointer-events:none;
  transform:scaleY(1);transform-origin:top;will-change:transform}
#curtain.open{transform:scaleY(0);transform-origin:top;transition:transform .62s cubic-bezier(.76,0,.24,1)}
#curtain.close{transform:scaleY(1);transform-origin:bottom;transition:transform .5s cubic-bezier(.76,0,.24,1)}
#curtain span{position:absolute;bottom:38px;left:44px;font-family:"Bebas Neue",sans-serif;
  font-size:70px;letter-spacing:3px;color:#09090E;opacity:.22;line-height:1}

/* CUSTOM CURSOR */
#cdot{position:fixed;top:0;left:0;width:7px;height:7px;background:var(--green);border-radius:50%;
  pointer-events:none;z-index:590;transform:translate(-50%,-50%);will-change:transform;
  transition:width .2s,height .2s,opacity .2s}
#cring{position:fixed;top:0;left:0;width:34px;height:34px;border:1px solid var(--green);border-radius:50%;
  pointer-events:none;z-index:589;transform:translate(-50%,-50%);opacity:.5;will-change:transform;
  transition:width .26s cubic-bezier(.16,1,.3,1),height .26s cubic-bezier(.16,1,.3,1),opacity .26s,border-color .26s}
body.cur-hot #cring{width:62px;height:62px;opacity:.9;border-color:var(--green)}
body.cur-hot #cdot{width:4px;height:4px}
@media(hover:none){#cdot,#cring{display:none}}

/* TEXT REVEAL — gated on html.js so it can never strand content invisible */
html.js .tr{opacity:0;transform:translateY(26px);
  transition:opacity .95s cubic-bezier(.16,1,.3,1),transform .95s cubic-bezier(.16,1,.3,1)}
html.js .tr.in{opacity:1;transform:none}

/* DEPTH CARDS */
.card,a.seg{transform-style:preserve-3d;will-change:transform}
.card > *,a.seg > *{transform:translateZ(22px)}
.card .big-n,a.seg h3{transform:translateZ(42px)}
.glare{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .3s;
  background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),rgba(140,255,26,.09),transparent 42%)}
.card:hover .glare,a.seg:hover .glare{opacity:1}

/* MAGNETIC */
.mag{will-change:transform}

/* MARQUEE */
.marq{overflow:hidden;white-space:nowrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  background:var(--bg-alt);padding:20px 0;position:relative}
.marq::before,.marq::after{content:"";position:absolute;top:0;bottom:0;width:140px;z-index:2;pointer-events:none}
.marq::before{left:0;background:linear-gradient(90deg,var(--bg-alt),transparent)}
.marq::after{right:0;background:linear-gradient(270deg,var(--bg-alt),transparent)}
.marq-in{display:inline-block;animation:mscroll 46s linear infinite}
.marq:hover .marq-in{animation-play-state:paused}
@keyframes mscroll{to{transform:translateX(-50%)}}
.marq b{font-family:"Bebas Neue",sans-serif;font-size:26px;letter-spacing:1.6px;color:var(--text);
  font-weight:400;padding:0 26px;line-height:1.2}
.marq i{color:var(--green);font-style:normal;font-size:15px;vertical-align:middle}

/* SCROLL HINT */
.shint{position:absolute;bottom:34px;left:44px;display:flex;align-items:center;gap:12px;
  font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:2.4px;text-transform:uppercase;
  color:var(--mute);z-index:5}
.shint i{display:block;width:1px;height:40px;background:linear-gradient(180deg,var(--green),transparent);
  animation:sdrop 2s ease-in-out infinite}
@keyframes sdrop{0%{transform:scaleY(0);transform-origin:top}
  50%{transform:scaleY(1);transform-origin:top}
  51%{transform:scaleY(1);transform-origin:bottom}
  100%{transform:scaleY(0);transform-origin:bottom}}

@media(prefers-reduced-motion:reduce){
  *{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
  html.js .tr,html.js .rv{opacity:1;transform:none}
  #curtain{display:none}
}
@media(max-width:800px){
  #curtain span{font-size:40px;left:18px;bottom:24px}
  .shint{display:none}
  .marq b{font-size:20px;padding:0 18px}
  .card > *,a.seg > *,.card .big-n,a.seg h3{transform:none}
}

/* STACK STRIP */
.stack{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:44px;padding:30px 34px;
  background:var(--surface);border:1px solid var(--line-strong);border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.45)}
.stack b{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:2.4px;text-transform:uppercase;
  color:var(--mute);flex-shrink:0;font-weight:400;margin-right:8px}
.tool{font-family:"JetBrains Mono",monospace;font-size:12.5px;color:var(--text);padding:9px 16px;
  border:1px solid var(--line-strong);border-radius:3px;background:var(--bg-alt)}
.stack p{flex-basis:100%;font-size:15.5px;color:var(--body);margin-top:10px;line-height:1.74;max-width:92ch}

/* TABLE */
.cmp{width:100%;border-collapse:separate;border-spacing:0;margin-top:54px;border:1px solid var(--line-strong);
  border-radius:4px;overflow:hidden;box-shadow:0 2px 4px rgba(0,0,0,.45)}
.cmp th{padding:18px 20px;text-align:left;font-family:"JetBrains Mono",monospace;font-size:10.5px;
  letter-spacing:2.2px;text-transform:uppercase;font-weight:500}
.cmp th:nth-child(1){background:var(--surface-2);color:var(--mute);width:26%}
.cmp th:nth-child(2){background:var(--surface-2);color:var(--red);width:37%}
.cmp th:nth-child(3){background:var(--green);color:#09090E;width:37%}
.cmp td{padding:18px 20px;font-size:15.5px;border-top:1px solid var(--line);vertical-align:top;line-height:1.62}
.cmp td:nth-child(1){color:var(--text);font-weight:600;background:var(--surface)}
.cmp td:nth-child(2){color:var(--mute);background:var(--bg-alt)}
.cmp td:nth-child(3){color:var(--body);background:rgba(140,255,26,.05)}

/* FIT */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:54px}
.fitbox{border:1px solid var(--line-strong);border-radius:4px;background:var(--surface);padding:38px 34px;box-shadow:var(--shadow)}
.fitbox.yes{border-color:rgba(140,255,26,.4);background:rgba(140,255,26,.04)}
.fith{font-family:"Bebas Neue",sans-serif;font-size:26px;letter-spacing:.8px;margin-bottom:20px;
  padding-bottom:16px;border-bottom:1px solid var(--line)}
.fitbox.yes .fith{color:var(--green);border-color:rgba(140,255,26,.28)}
.fitbox.no .fith{color:var(--mute)}
.fitli{display:flex;gap:14px;padding:13px 0;font-size:16px;color:var(--body);align-items:flex-start;
  line-height:1.6;border-bottom:1px solid rgba(255,255,255,.045)}
.fitli:last-child{border-bottom:none}
.mk{flex-shrink:0;font-family:"JetBrains Mono",monospace;font-size:14px;line-height:1.5}
.yes .mk{color:var(--green)} .no .mk{color:var(--red)}

/* PROCESS */
.steps{margin-top:54px}
.step{display:grid;grid-template-columns:74px 1fr;gap:28px;padding:32px 0;border-bottom:1px solid var(--line)}
.step:last-child{border-bottom:none}
.step-n{font-family:"Bebas Neue",sans-serif;font-size:50px;color:var(--green);text-shadow:0 0 18px var(--glow)}
.step h3{font-size:19px;font-weight:600;color:var(--text);margin-bottom:9px;letter-spacing:-.01em}
.step p{font-size:16px;color:var(--body);line-height:1.74;max-width:72ch}

/* FAQ */
.faq{margin-top:54px;border-top:1px solid var(--line)}
.qa{border-bottom:1px solid var(--line)}
.qa.open{background:linear-gradient(180deg,rgba(140,255,26,.035),transparent)}
.q{width:100%;display:flex;align-items:center;gap:20px;padding:27px 4px;background:none;border:none;
  cursor:pointer;text-align:left;font-family:"Inter",sans-serif;font-size:18px;font-weight:600;
  letter-spacing:-.01em;color:var(--text);transition:color .2s}
.q:hover{color:var(--green)}
.faq-n{font-family:"Bebas Neue",sans-serif;font-size:22px;color:var(--green);flex-shrink:0;width:34px}
.q .ind{margin-left:auto;font-family:"JetBrains Mono",monospace;font-size:20px;color:var(--green);
  transition:transform .3s;flex-shrink:0;line-height:1}
.qa.open .ind{transform:rotate(45deg)}
.a{max-height:0;overflow:hidden;transition:max-height .38s cubic-bezier(.4,0,.2,1)}
.a p{padding:0 4px 30px 54px;font-size:16.5px;color:var(--body);max-width:80ch;line-height:1.76}

/* ORIGIN */
.origin{background:var(--bg-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 44px;position:relative}
.origin::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--green);box-shadow:0 0 16px var(--green)}
.origin-in{max-width:1300px;margin:0 auto;display:flex;align-items:center;gap:30px}
.otime{font-family:"Bebas Neue",sans-serif;font-size:58px;color:var(--green);flex-shrink:0;text-shadow:0 0 28px var(--glow)}
.odiv{width:1px;height:58px;background:var(--line-strong);flex-shrink:0}
.origin p{font-size:16px;color:var(--body);max-width:86ch;line-height:1.74}
.origin strong{color:var(--text);font-weight:600}

/* CONTACT */
.cgrid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.cdet{display:flex;flex-direction:column;gap:16px;margin-top:36px}
.crow{display:flex;gap:16px;align-items:flex-start}
.crow b{font-family:"JetBrains Mono",monospace;font-size:10.5px;letter-spacing:2px;text-transform:uppercase;
  color:var(--green);width:84px;flex-shrink:0;padding-top:3px;font-weight:500}
.crow span{font-family:"JetBrains Mono",monospace;font-size:13.5px;color:var(--body);line-height:1.62}
.tally{width:100%;min-height:720px;border:1px solid var(--line-strong);border-radius:4px;background:var(--surface);box-shadow:var(--shadow-lg)}
.tally iframe{display:block;border:none;background:transparent;width:100%;min-height:720px}

footer{background:var(--bg-alt);border-top:1px solid var(--line);padding:44px}
.fin{max-width:1300px;margin:0 auto;display:flex;justify-content:space-between;gap:40px;flex-wrap:wrap}
.fbrand{font-family:"Bebas Neue",sans-serif;font-size:21px;letter-spacing:3px;color:var(--text)}
.fbrand span{color:var(--green)}
.fcol h5{font-family:"JetBrains Mono",monospace;font-size:10px;letter-spacing:2.2px;text-transform:uppercase;
  color:var(--green);margin-bottom:14px;font-weight:500}
.fcol a{display:block;font-size:14.5px;color:var(--body);text-decoration:none;padding:5px 0;transition:color .18s}
.fcol a:hover{color:var(--green)}
.fbot{max-width:1300px;margin:34px auto 0;padding-top:24px;border-top:1px solid var(--line);
  font-family:"JetBrains Mono",monospace;font-size:11.5px;color:var(--mute)}

/* LIGHTBOX */
#lb{position:fixed;inset:0;background:rgba(5,5,9,.96);z-index:500;display:none;align-items:center;
  justify-content:center;padding:40px;cursor:zoom-out;backdrop-filter:blur(6px)}
#lb.on{display:flex;animation:fade .25s ease}
@keyframes fade{from{opacity:0}to{opacity:1}}
#lb img{max-width:96%;max-height:92%;border:1px solid var(--line-strong);border-radius:4px;box-shadow:0 30px 90px rgba(0,0,0,.7)}
#lbx{position:absolute;top:26px;right:32px;font-family:"JetBrains Mono",monospace;font-size:12px;
  color:var(--body);letter-spacing:2px;border:1px solid var(--line-strong);padding:9px 16px;
  background:var(--surface);border-radius:3px}

/* REVEAL */
html.js .rv{opacity:0;transform:translateY(26px);
  transition:opacity .7s cubic-bezier(.4,0,.2,1),transform .7s cubic-bezier(.4,0,.2,1)}
html.js .rv.in{opacity:1;transform:none}

@media(max-width:1180px){
  .grid-4{grid-template-columns:repeat(2,1fr)}
  .chead{grid-template-columns:1fr;gap:32px}
  .s3{grid-template-columns:1fr 1fr}
}
@media(max-width:1024px){
  #cv{width:58%;height:46%;opacity:.55}
  .nlinks{position:fixed;top:61px;left:0;right:0;flex-direction:column;gap:0;background:var(--bg-alt);
    border-bottom:1px solid var(--line-strong);padding:8px 16px 16px;display:none}
  .nlinks.open{display:flex}
  .nlinks a{padding:13px 8px;border-bottom:1px solid var(--line);font-size:12.5px}
  #burger{display:block;margin-left:auto}
  .ncta{display:none}
  .calc{grid-template-columns:1fr}
  .calc-l{border-right:none;border-bottom:1px solid var(--line)}
  .grid-3{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:800px){
  #cv{display:none}
  nav{padding:11px 16px;gap:12px}
  .logo img{width:30px;height:30px}
  .logo b{font-size:14px;letter-spacing:2px}
  .hero,.hero.short{padding:118px 16px 58px;min-height:auto}
  section{padding:64px 16px}
  body{font-size:15.5px}
  .lead{font-size:17px}
  .cta-row{flex-direction:column;gap:11px}
  .btn{width:100%;text-align:center}
  .stat{border-right:none;border-bottom:1px solid var(--line);width:100%;margin-right:0;padding:22px 0}
  .stat:last-child{border-bottom:none}
  .stat-n{font-size:42px}
  .grid-4,.grid-3,.grid-2,.fit{grid-template-columns:1fr}
  .cgrid{grid-template-columns:1fr;gap:38px}
  .case{padding:28px 20px}
  .cblocks{grid-template-columns:1fr;gap:20px}
  .shots,.s2,.s3{grid-template-columns:1fr;gap:28px}
  .calc-l,.calc-r{padding:28px 20px}
  .calc-big{font-size:46px}
  .origin{padding:26px 16px}
  .origin-in{flex-direction:column;align-items:flex-start;gap:14px}
  .odiv{display:none}
  .proof{padding:16px}
  .step{grid-template-columns:54px 1fr;gap:18px}
  .step-n{font-size:40px}
  .cmp{display:block;overflow-x:auto}
  .cmp td,.cmp th{min-width:170px}
  .clog{height:250px;font-size:11.5px}
  .ag{width:104px}
  .a p{padding-left:4px}
  .q{font-size:16px;gap:14px;padding:22px 4px}
  footer{padding:30px 16px}
  .fin{flex-direction:column;gap:26px}
}

/* ── ADDITIONS ─────────────────────────────────────────────────────────────
   1. .hr-soft  quieter mid page rule, used where two sections share a
      background and would otherwise read as one undivided slab.
   2. .crow a   the contact rows were static text, so LinkedIn was not
      clickable. Matches .crow span exactly, adds an underline on hover.
   3. .big-n    the Leak cards now carry short phrases rather than invented
      percentages, so the figure needs to wrap gracefully at narrow widths. */

.hr-soft{opacity:.42;box-shadow:0 0 12px rgba(140,255,26,.18)}

.crow a{font-family:"JetBrains Mono",monospace;font-size:13.5px;color:var(--body);
  line-height:1.62;text-decoration:none;border-bottom:1px solid var(--line-strong);
  transition:color .2s,border-color .2s}
.crow a:hover,.crow a:focus-visible{color:var(--green);border-color:var(--green)}

.big-n{overflow-wrap:break-word;hyphens:none}
@media(max-width:1180px){.big-n{font-size:36px}}
