@import url('https://fonts.googleapis.com/css2?family=Unbounded:wght@600;700;800&family=IBM+Plex+Sans:wght@400;500;600&family=IBM+Plex+Mono:wght@400;500&display=swap');
/* NexusCore design system v2 — stealth browser platform */
:root{
  --bg:#0a0f16; --sf1:#0f1620; --sf2:#141c28; --sf3:#1a2332;
  --line:#212d3d; --line-hi:#2e3c50;
  --tx0:#eef3f9; --tx1:#b9c5d4; --tx2:#7f8ea3; --tx3:#506076;
  --grn:#35e0a2; --amb:#ffb454; --cyn:#5bc0f8;
  --grn-soft:rgba(53,224,162,.12); --amb-soft:rgba(255,180,84,.12); --cyn-soft:rgba(91,192,248,.12);
  --display:'Unbounded',sans-serif; --body:'IBM Plex Sans',sans-serif; --mono:'IBM Plex Mono',monospace;
  --maxw:1140px; --r:10px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:var(--body);color:var(--tx1);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased;
  background-image:
    radial-gradient(1000px 520px at 88% -8%, rgba(53,224,162,.08), transparent 62%),
    radial-gradient(800px 460px at -8% 26%, rgba(91,192,248,.07), transparent 60%),
    radial-gradient(700px 420px at 55% 110%, rgba(255,180,84,.05), transparent 60%),
    linear-gradient(rgba(255,255,255,.022) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.022) 1px, transparent 1px);
  background-size:auto,auto,auto,46px 46px,46px 46px;
}
h1,h2,h3,.display{font-family:var(--display);color:var(--tx0);line-height:1.12;letter-spacing:-.01em;font-weight:700}
h1{font-size:clamp(2.1rem,4.6vw,3.6rem)}
h2{font-size:clamp(1.5rem,3vw,2.2rem)}
.mono{font-family:var(--mono);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tx2)}
.lead{font-size:1.1rem;color:var(--tx2);max-width:58ch}
.accent{color:var(--grn)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 1.5rem}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:3.2rem;align-items:center}
@media(max-width:880px){.split{grid-template-columns:1fr}}
section{padding:5.2rem 0}
/* overline label with rule */
.overline{display:flex;align-items:center;gap:.9rem;font-family:var(--mono);font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--grn);margin-bottom:1.1rem}
.overline::after{content:"";height:1px;width:56px;background:linear-gradient(90deg,var(--grn),transparent)}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;font-family:var(--display);font-weight:600;font-size:.92rem;
  padding:.9rem 1.8rem;border-radius:var(--r);border:1px solid transparent;cursor:pointer;text-decoration:none;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, color .18s ease, background .18s ease}
.btn-primary{background:var(--grn);color:#05261a}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(53,224,162,.32)}
.btn-ghost{background:transparent;color:var(--tx0);border-color:var(--line-hi)}
.btn-ghost:hover{border-color:var(--grn);color:var(--grn);transform:translateY(-2px)}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}
.btn.loading::after{content:"";width:14px;height:14px;border:2px solid rgba(5,38,26,.35);border-top-color:#05261a;border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
/* cards */
.card{background:var(--sf1);border:1px solid var(--line);border-radius:var(--r);
  transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease}
.card:hover{transform:translateY(-4px);border-color:var(--line-hi);box-shadow:0 16px 36px rgba(0,0,0,.38)}
.card-featured{border-color:rgba(53,224,162,.45);box-shadow:0 0 0 1px rgba(53,224,162,.18), 0 20px 50px rgba(0,0,0,.4)}
.card-featured:hover{border-color:var(--grn)}
/* badges */
.badge{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;
  padding:.32rem .7rem;border-radius:99px;border:1px solid var(--line-hi);color:var(--tx2)}
.badge-grn{background:var(--grn-soft);border-color:rgba(53,224,162,.4);color:var(--grn)}
.badge-amb{background:var(--amb-soft);border-color:rgba(255,180,84,.4);color:var(--amb)}
.badge-cyn{background:var(--cyn-soft);border-color:rgba(91,192,248,.4);color:var(--cyn)}
/* living dot */
.dot{width:8px;height:8px;border-radius:50%;background:var(--grn);display:inline-block;animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(53,224,162,.45)}70%{box-shadow:0 0 0 10px rgba(53,224,162,0)}100%{box-shadow:0 0 0 0 rgba(53,224,162,0)}}
/* forms (for auth) */
.field{margin-bottom:1.15rem}
.label{display:block;font-family:var(--mono);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tx2);margin-bottom:.45rem}
.input{width:100%;background:var(--sf2);border:1px solid var(--line);border-radius:var(--r);color:var(--tx0);
  font-family:var(--body);font-size:1rem;padding:.85rem 1rem;transition:border-color .18s, box-shadow .18s}
.input:focus{outline:none;border-color:var(--grn);box-shadow:0 0 0 3px var(--grn-soft)}
/* pricing */
.price{font-family:var(--display);font-weight:800;color:var(--tx0);font-size:clamp(2.6rem,5vw,3.6rem);line-height:1}
.price .per{font-family:var(--mono);font-size:.85rem;font-weight:400;color:var(--tx2);letter-spacing:.08em}
.checklist{list-style:none;display:flex;flex-direction:column;gap:.85rem}
.checklist li{display:flex;gap:.8rem;align-items:flex-start;color:var(--tx1)}
.checklist li::before{content:"▸";color:var(--grn);font-weight:700;flex:none}
/* terminal */
.terminal{overflow:hidden}
.terminal-head{display:flex;align-items:center;gap:.6rem;padding:.8rem 1.1rem;border-bottom:1px solid var(--line);background:var(--sf2)}
.terminal-head .lights{display:flex;gap:.4rem}
.terminal-head .lights i{width:9px;height:9px;border-radius:50%;background:var(--line-hi)}
.scan-row{display:flex;justify-content:space-between;gap:1rem;padding:.85rem 1.15rem;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:.8rem;color:var(--tx2)}
.scan-row:last-child{border-bottom:none}
.scan-row .val{color:var(--grn)}
.scanline{position:relative;overflow:hidden}
.scanline::after{content:"";position:absolute;left:0;right:0;height:44px;top:-44px;
  background:linear-gradient(180deg,transparent,rgba(53,224,162,.07),transparent);animation:scan 3.4s linear infinite}
@keyframes scan{to{top:100%}}
/* timeline */
.timeline{display:flex;flex-direction:column;gap:2.2rem}
.timeline .step{display:flex;gap:1.6rem;align-items:flex-start}
.timeline .num{font-family:var(--display);font-size:2.2rem;font-weight:800;color:var(--grn);line-height:1;min-width:64px}
/* stats */
.stat{display:flex;flex-direction:column;gap:.2rem}
.stat b{font-family:var(--display);font-size:1.9rem;font-weight:800;color:var(--tx0)}
/* nav + footer */
nav{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 0}
.brand{font-family:var(--display);font-weight:700;letter-spacing:.02em;color:var(--tx0);text-decoration:none;display:inline-flex;align-items:center;gap:.6rem;font-size:1rem}
.nav-links{display:flex;gap:2rem;align-items:center}
.nav-links a{color:var(--tx2);text-decoration:none;font-size:.95rem;transition:color .18s}
.nav-links a:hover{color:var(--grn)}
.band{background:var(--sf2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
footer{border-top:1px solid var(--line);padding:2.4rem 0;color:var(--tx3)}
/* motion */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease, transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}