
@font-face{font-family:"Figtree";src:url("/assets/fonts/figtree-latin-wght-normal.woff2") format("woff2-variations");font-weight:300 900;font-display:swap}
:root{
  --bg:#05070A; --fg:#F4F2EE; --muted:rgba(244,242,238,.56); --faint:rgba(244,242,238,.32);
  --line:rgba(244,242,238,.14); --accent:#8FA6D6;
}
*{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{background:var(--bg);color:var(--fg);font-family:"Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh}
a{color:inherit;-webkit-tap-highlight-color:transparent}
:focus-visible{outline:1px solid var(--accent);outline-offset:4px}
body::before{content:"";position:fixed;inset:0;z-index:1;pointer-events:none;
  background:radial-gradient(120% 80% at 50% 42%,rgba(255,255,255,.03),transparent 60%),
             radial-gradient(140% 120% at 50% 120%,rgba(0,0,0,.85),transparent 55%)}
#field{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}
#field.in-stage{position:absolute;inset:0;z-index:0}

/* ---- home ---- */
.stage{position:relative;z-index:2;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:72px 20px 96px;overflow:hidden}
.stage>:not(canvas){position:relative;z-index:1}
.eyebrow{font-size:.66rem;font-weight:400;letter-spacing:.5em;text-transform:uppercase;color:var(--faint);margin-bottom:44px;padding-left:.5em}
.mark{width:min(620px,84vw);display:block}
.mark .wm{width:100%;height:auto;fill:var(--fg);display:block}
.rule{width:46px;height:1px;background:var(--accent);margin:46px auto 38px;opacity:.85}
.statement{max-width:440px;font-weight:300;font-size:1.06rem;line-height:1.72;color:var(--muted)}
.statement strong{display:block;font-weight:400;color:var(--fg);font-size:1.18rem;letter-spacing:.01em;margin-bottom:.55em}
.ctas{margin-top:50px;display:flex;gap:40px;flex-wrap:wrap;justify-content:center}
.cta{font-size:.72rem;font-weight:500;letter-spacing:.22em;text-transform:uppercase;color:var(--fg);text-decoration:none;padding:14px 4px 10px;border-bottom:1px solid var(--line);transition:color .35s ease,border-color .35s ease,letter-spacing .35s ease}
.cta .arrow{display:inline-block;margin-left:.5em;transition:transform .35s ease}
.cta:hover{color:var(--accent);border-color:var(--accent);letter-spacing:.26em}
.cta:hover .arrow{transform:translateX(5px)}
.cta.quiet{color:var(--muted)}
.stage>.foot{position:absolute;left:0;right:0;bottom:24px;z-index:1;text-align:center;font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:var(--faint)}
.foot a{text-decoration:none;transition:color .3s}
.foot a:hover{color:var(--fg)}
.foot .dot{margin:0 .8em;opacity:.5}
.fade{opacity:0;transform:translateY(14px);animation:rise 1.2s cubic-bezier(.2,.7,.2,1) forwards}
.d1{animation-delay:.15s}.d2{animation-delay:.45s}.d3{animation-delay:1.1s}.d4{animation-delay:1.3s}.d5{animation-delay:1.55s}
@keyframes rise{to{opacity:1;transform:none}}

/* ---- inner pages ---- */
.top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:28px clamp(20px,5vw,56px)}
.top a.home{display:block;width:220px}
.top a.home .wm{width:100%;height:auto;fill:var(--fg)}
.top nav{display:flex;gap:28px;font-size:.62rem;letter-spacing:.26em;text-transform:uppercase}
.top nav a{text-decoration:none;color:var(--muted);transition:color .3s}
.top nav a:hover,.top nav a[aria-current]{color:var(--fg)}
.page{position:relative;z-index:2;max-width:640px;margin:0 auto;padding:9vh 24px 18vh}
.page .eyebrow{text-align:left;margin-bottom:22px;padding-left:0}
.page h1{font-weight:300;font-size:clamp(1.9rem,4.4vw,2.6rem);line-height:1.15;letter-spacing:-.01em}
.page .lead{margin-top:22px;font-weight:300;font-size:1.06rem;line-height:1.72;color:var(--muted)}
.page .rule{margin:44px 0 8px}
.page h2{font-weight:400;font-size:1.02rem;letter-spacing:.01em;margin:44px 0 12px;color:var(--fg)}
.page p,.page li{font-weight:300;font-size:.98rem;line-height:1.75;color:var(--muted)}
.page p+p{margin-top:12px}
.page ul{list-style:none;margin-top:6px}
.page li{padding:12px 0;border-top:1px solid var(--line)}
.page li:last-child{border-bottom:1px solid var(--line)}
.page a{color:var(--fg);text-decoration:none;border-bottom:1px solid var(--line);transition:border-color .3s,color .3s}
.page a:hover{color:var(--accent);border-color:var(--accent)}
.page .updated{margin-top:14px;font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;color:var(--faint)}
.pfoot{position:relative;z-index:2;text-align:center;padding:0 20px 36px;font-size:.6rem;letter-spacing:.26em;text-transform:uppercase;color:var(--faint)}
.pfoot a{text-decoration:none}.pfoot a:hover{color:var(--fg)}
.pfoot .dot{margin:0 .8em;opacity:.5}

@media (max-width:560px){
  .eyebrow{letter-spacing:.38em;margin-bottom:34px}
  .statement{font-size:1rem}
  .ctas{gap:22px;flex-direction:column;align-items:center}
  .foot{font-size:.54rem;letter-spacing:.18em;bottom:18px}
  .foot .ent{display:block;margin-bottom:8px}
  .foot .ent+.dot{display:none}
  .top{flex-direction:column;gap:18px}
  .top nav{gap:20px}
}
@media (max-height:700px){.eyebrow{margin-bottom:30px}.rule{margin:30px auto 26px}.ctas{margin-top:34px}.stage{padding:48px 20px 84px}}
@media (prefers-reduced-motion:reduce){.fade{animation:none;opacity:1;transform:none}}
