/* ═══════════════════════════════════════════════════════════════════
   AETHER — Synthetic Perception Engine
   A hand-written visual system. No frameworks, no images, no shortcuts.
   ═══════════════════════════════════════════════════════════════════ */

/* ───────────────────────────── TOKENS ───────────────────────────── */
:root{
  --bg:          #05060a;
  --bg-2:        #080a10;
  --ink:         #f2f1ea;
  --ink-soft:    #c9c9c4;
  --muted:       #8b8e99;
  --dim:         #5b5f6b;
  --line:        rgba(255,255,255,.10);
  --line-soft:   rgba(255,255,255,.055);
  --accent:      #d6ff6b;
  --accent-rgb:  214,255,107;
  --accent-2:    #8a7cff;
  --accent-2-rgb:138,124,255;
  --accent-soft: rgba(214,255,107,.10);

  --font-display: "Bahnschrift", "Segoe UI Variable Display", "Arial Narrow", Impact, sans-serif;
  --font-body:    "Segoe UI Variable Text", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-mono:    "Cascadia Code", "Consolas", "SFMono-Regular", monospace;
  --font-serif:   Georgia, "Times New Roman", serif;

  --pad:   clamp(20px, 4.2vw, 72px);
  --navh:  82px;
  --ease:  cubic-bezier(.16,1,.3,1);
  --ease2: cubic-bezier(.76,0,.24,1);
  --ease3: cubic-bezier(.34,1.56,.64,1);
}

/* ───────────────────────────── RESET ───────────────────────────── */
*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0; }

html{
  scroll-behavior:auto;
  -webkit-text-size-adjust:100%;
  scrollbar-color: rgba(var(--accent-rgb),.55) #08090e;
  scrollbar-width: thin;
}

body{
  background:var(--bg);
  color:var(--ink);
  font-family:var(--font-body);
  font-size:16px;
  line-height:1.5;
  overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  color-scheme:dark;
}

body.is-locked{ overflow:hidden; }

body.no-webgl{
  background:
    radial-gradient(ellipse 80% 60% at 75% 20%, rgba(var(--accent-2-rgb),.10), transparent 60%),
    radial-gradient(ellipse 60% 50% at 20% 80%, rgba(var(--accent-rgb),.07), transparent 60%),
    #05060a;
}

a{ color:inherit; text-decoration:none; }
button{ font:inherit; color:inherit; background:none; border:none; cursor:pointer; }
ul{ list-style:none; }
img,svg,canvas{ display:block; }
::selection{ background:var(--accent); color:#080a08; }

:focus-visible{
  outline:1px solid var(--accent);
  outline-offset:4px;
}

/* Custom scrollbar */
::-webkit-scrollbar{ width:8px; height:8px; }
::-webkit-scrollbar-track{ background:#07080d; }
::-webkit-scrollbar-thumb{
  background:linear-gradient(var(--accent), var(--accent-2));
  border-radius:99px;
  border:2px solid #07080d;
}

/* ─────────────────────────── ATMOSPHERE ─────────────────────────── */
.veil{
  position:fixed;
  inset:0;
  width:100%;
  height:100%;
  z-index:0;
  pointer-events:none;
  opacity:0;
  transition:opacity 2.4s var(--ease);
}
html.is-loaded .veil{ opacity:1; }
body.no-webgl .veil{ display:none; }

.noise{
  position:fixed;
  inset:-50%;
  z-index:5000;
  pointer-events:none;
  opacity:.032;
  mix-blend-mode:overlay;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 240 240' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.76'/%3E%3C/svg%3E");
  animation:grain 6s steps(6) infinite;
}
@keyframes grain{
  0%,100%{ transform:translate(0,0) }
  16%{ transform:translate(-2%,1%) }
  32%{ transform:translate(1%,-2%) }
  48%{ transform:translate(-1%,-1%) }
  64%{ transform:translate(2%,1%) }
  80%{ transform:translate(-2%,-1%) }
}

.frame{
  position:fixed;
  inset:14px;
  z-index:60;
  pointer-events:none;
  border:1px solid rgba(255,255,255,.045);
}
.frame i{
  position:absolute;
  width:14px; height:14px;
  border-color:rgba(var(--accent-rgb),.5);
  border-style:solid;
  border-width:0;
}
.frame i:nth-child(1){ top:-1px; left:-1px; border-top-width:1px; border-left-width:1px; }
.frame i:nth-child(2){ top:-1px; right:-1px; border-top-width:1px; border-right-width:1px; }
.frame i:nth-child(3){ bottom:-1px; left:-1px; border-bottom-width:1px; border-left-width:1px; }
.frame i:nth-child(4){ bottom:-1px; right:-1px; border-bottom-width:1px; border-right-width:1px; }

/* ───────────────────────────── CURSOR ───────────────────────────── */
.cursor{
  position:fixed;
  top:0; left:0;
  width:0; height:0;
  z-index:12000;
  pointer-events:none;
  opacity:0;
  transition:opacity .3s;
}
body.has-cursor .cursor{ opacity:1; }
body.has-cursor .cursor.is-hidden{ opacity:0; }
.cursor__dot,
.cursor__ring{
  position:absolute;
  top:0; left:0;
  border-radius:50%;
  transform:translate(-50%,-50%);
}
.cursor__dot{
  width:5px; height:5px;
  background:var(--accent);
  box-shadow:0 0 12px rgba(var(--accent-rgb),.8);
}
.cursor__ring{
  width:34px; height:34px;
  border:1px solid rgba(255,255,255,.35);
  transition:width .35s var(--ease), height .35s var(--ease),
             border-color .35s, background .35s, opacity .35s;
}
.cursor.is-hover .cursor__ring{
  width:58px; height:58px;
  border-color:rgba(var(--accent-rgb),.8);
  background:rgba(var(--accent-rgb),.06);
}
.cursor.is-down .cursor__ring{ width:24px; height:24px; }
.cursor.is-hidden{ opacity:0; }

.palette-toast{
  position:fixed;
  left:50%;
  bottom:30px;
  z-index:10050;
  transform:translate(-50%,16px);
  opacity:0;
  pointer-events:none;
  padding:10px 17px;
  border:1px solid rgba(var(--accent-rgb),.28);
  border-radius:99px;
  background:rgba(5,6,10,.86);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.2em;
  color:var(--accent);
  transition:opacity .35s, transform .45s var(--ease);
  white-space:nowrap;
}
.palette-toast.is-show{ opacity:1; transform:translate(-50%,0); }

@media (hover:hover) and (pointer:fine){
  body.has-cursor,
  body.has-cursor a,
  body.has-cursor button,
  body.has-cursor .magnetic{ cursor:none; }
}

/* scroll progress */
.scroll-progress{
  position:fixed;
  top:0; left:0; right:0;
  height:2px;
  z-index:1200;
  pointer-events:none;
  background:rgba(255,255,255,.04);
}
.scroll-progress span{
  display:block;
  width:100%; height:100%;
  background:linear-gradient(90deg, var(--accent), var(--accent-2));
  transform:scaleX(0);
  transform-origin:0 50%;
  box-shadow:0 0 18px rgba(var(--accent-rgb),.7);
}

/* ──────────────────────────── PRELOADER ─────────────────────────── */
.preloader{
  position:fixed;
  inset:0;
  z-index:11000;
  background:#05060a;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:clamp(20px,3.2vw,42px);
  overflow:hidden;
  transition:transform 1.15s var(--ease2) .12s;
}
.preloader.is-done{ transform:translateY(-101%); }
.preloader::before{
  content:"";
  position:absolute;
  inset:-20%;
  background:
    radial-gradient(circle at 50% 54%, rgba(var(--accent-rgb),.06), transparent 42%),
    radial-gradient(circle at 70% 30%, rgba(var(--accent-2-rgb),.05), transparent 40%);
  pointer-events:none;
}
.preloader__grid{
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size:80px 80px;
  mask-image:radial-gradient(ellipse at 50% 50%, #000 0%, transparent 72%);
  opacity:.7;
}
.preloader__top{
  display:flex;
  justify-content:space-between;
  gap:20px;
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.2em;
  color:var(--dim);
  position:relative;
  z-index:2;
}
.preloader__center{
  position:relative;
  z-index:2;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:18px;
  transition:opacity .5s, transform .7s var(--ease);
}
.preloader.is-done .preloader__center{ opacity:0; transform:translateY(-24px) scale(.97); }
.preloader__mark{
  width:74px; height:74px;
  border:1px solid rgba(var(--accent-rgb),.35);
  border-radius:50%;
  display:grid;
  place-items:center;
  position:relative;
  color:var(--accent);
  font-family:var(--font-display);
  font-size:30px;
  box-shadow:inset 0 0 30px rgba(var(--accent-rgb),.06), 0 0 50px rgba(var(--accent-rgb),.05);
}
.preloader__orbit{
  position:absolute;
  inset:-7px;
  border:1px dashed rgba(255,255,255,.13);
  border-radius:50%;
  animation:spin 9s linear infinite;
}
.preloader__orbit::after{
  content:"";
  position:absolute;
  top:-2px; left:50%;
  width:4px; height:4px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 10px var(--accent);
}
.preloader__word{
  font-family:var(--font-display);
  font-size:clamp(2rem,7vw,5.2rem);
  font-weight:600;
  letter-spacing:.42em;
  padding-left:.42em;
  line-height:1;
}
.preloader__sub{
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.32em;
  color:var(--muted);
  text-transform:uppercase;
}
.preloader__bottom{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:20px;
}
.preloader__status{
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.18em;
  color:var(--muted);
}
.preloader__status::before{
  content:"";
  display:inline-block;
  width:5px; height:5px;
  border-radius:50%;
  background:var(--accent);
  margin-right:8px;
  vertical-align:1px;
  animation:blink 1s steps(2) infinite;
}
.preloader__count{
  display:flex;
  align-items:baseline;
  font-family:var(--font-mono);
  color:var(--ink);
}
.preloader__count b{
  font-weight:400;
  font-size:clamp(2.2rem,5vw,4.6rem);
  line-height:.8;
  letter-spacing:-.04em;
  font-variant-numeric:tabular-nums;
}
.preloader__count i{
  font-style:normal;
  font-size:10px;
  color:var(--accent);
  margin-left:6px;
}
.preloader__track{
  position:absolute;
  left:clamp(20px,3.2vw,42px);
  right:clamp(20px,3.2vw,42px);
  bottom:20px;
  height:1px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
  z-index:3;
}
.preloader__track span{
  display:block;
  width:100%; height:100%;
  background:linear-gradient(90deg, var(--accent), #fff);
  transform:scaleX(0);
  transform-origin:0 50%;
}
.preloader__skip{
  position:absolute;
  right:clamp(20px,3.2vw,42px);
  bottom:38px;
  z-index:4;
  font-family:var(--font-mono);
  font-size:7px;
  letter-spacing:.2em;
  color:var(--dim);
  padding:6px;
  transition:color .3s;
}
.preloader__skip:hover{ color:var(--accent); }

@keyframes blink{ 0%,49%{opacity:1} 50%,100%{opacity:.15} }

/* ────────────────────────────── NAV ────────────────────────────── */
.nav{
  position:fixed;
  top:0; left:0; right:0;
  height:var(--navh);
  z-index:1000;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:0 var(--pad);
  border-bottom:1px solid transparent;
  transition:background .45s, border-color .45s, backdrop-filter .45s, transform .55s var(--ease);
  opacity:0;
  transform:translateY(-14px);
}
html.is-loaded .nav{ opacity:1; transform:none; transition-delay:1.05s; }
.nav.is-scrolled{
  background:rgba(5,6,10,.62);
  border-color:var(--line-soft);
  backdrop-filter:blur(18px) saturate(1.2);
  -webkit-backdrop-filter:blur(18px) saturate(1.2);
}
.nav.is-hidden{ transform:translateY(-100%); }

.brand{ display:flex; align-items:center; gap:12px; flex:none; }
.brand__mark{
  width:37px; height:37px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.18);
  display:grid;
  place-items:center;
  font-family:var(--font-display);
  font-size:15px;
  color:var(--accent);
  position:relative;
  overflow:hidden;
  background:rgba(255,255,255,.02);
  transition:border-color .4s, background .4s;
}
.brand:hover .brand__mark{ border-color:var(--accent); background:var(--accent-soft); }
.brand__txt{ display:flex; flex-direction:column; gap:3px; }
.brand__txt b{
  font-family:var(--font-display);
  font-size:13px;
  font-weight:600;
  letter-spacing:.16em;
  line-height:1;
}
.brand__txt i{
  font-family:var(--font-mono);
  font-style:normal;
  font-size:6.5px;
  letter-spacing:.18em;
  color:var(--dim);
  line-height:1;
}

.nav__links{ display:flex; align-items:center; gap:clamp(18px,2.2vw,34px); }
.nav__links a{
  font-family:var(--font-mono);
  font-size:9px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  display:flex;
  align-items:baseline;
  gap:6px;
  position:relative;
  transition:color .3s;
}
.nav__links a span{
  font-size:6.5px;
  color:var(--dim);
  transition:color .3s;
}
.nav__links a::after{
  content:"";
  position:absolute;
  left:0; bottom:-6px;
  width:100%; height:1px;
  background:var(--accent);
  transform:scaleX(0);
  transform-origin:100% 50%;
  transition:transform .45s var(--ease);
}
.nav__links a:hover{ color:var(--ink); }
.nav__links a:hover span{ color:var(--accent); }
.nav__links a:hover::after{ transform:scaleX(1); transform-origin:0 50%; }

.nav__right{ display:flex; align-items:center; gap:clamp(12px,1.6vw,24px); }
.palette{ display:flex; align-items:center; gap:7px; }
.swatch{
  width:14px; height:14px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
  padding:2px;
  transition:transform .3s var(--ease3), border-color .3s;
  position:relative;
}
.swatch span{ display:block; width:100%; height:100%; border-radius:50%; background:var(--sw); }
.swatch[data-accent="lime"]{ --sw:#d6ff6b; }
.swatch[data-accent="ion"]{ --sw:#7df9ff; }
.swatch[data-accent="flux"]{ --sw:#ff5ed2; }
.swatch[data-accent="ember"]{ --sw:#ffb35c; }
.swatch:hover{ transform:scale(1.25); }
.swatch.is-active{ border-color:var(--sw); box-shadow:0 0 0 3px rgba(255,255,255,.04), 0 0 14px -2px var(--sw); }

.nav__status{
  display:flex;
  align-items:center;
  gap:7px;
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.12em;
  color:var(--muted);
  white-space:nowrap;
}
.nav__status i{
  width:5px; height:5px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 8px var(--accent);
  animation:pulse 2.4s ease-in-out infinite;
}
.nav__status b{ font-weight:400; color:var(--accent); margin-left:5px; font-variant-numeric:tabular-nums; }
.nav__status em{ font-style:normal; color:var(--dim); font-size:7px; }

.menu-btn{
  display:none;
  width:42px; height:42px;
  border:1px solid var(--line);
  border-radius:50%;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  transition:border-color .3s, background .3s;
}
.menu-btn span{
  display:block;
  width:15px; height:1px;
  background:var(--ink);
  transition:transform .4s var(--ease), width .4s;
}
.menu-btn:hover{ border-color:var(--accent); }
.menu-btn:hover span:last-child{ width:10px; }

@keyframes pulse{
  0%,100%{ opacity:1; transform:scale(1) }
  50%{ opacity:.35; transform:scale(.7) }
}

/* ─────────────────────────── MOBILE MENU ────────────────────────── */
.menu{
  position:fixed;
  inset:0;
  z-index:1090;
  background:#05060a;
  display:flex;
  flex-direction:column;
  padding:20px var(--pad) 34px;
  clip-path:inset(0 0 100% 0);
  transition:clip-path .8s var(--ease2);
  visibility:hidden;
}
.menu.is-open{ clip-path:inset(0 0 0% 0); visibility:visible; }
.menu__head{ display:flex; justify-content:space-between; align-items:center; height:42px; }
.menu__close{
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.2em;
  color:var(--muted);
  padding:12px;
  border:1px solid var(--line);
  border-radius:99px;
  transition:color .3s, border-color .3s;
}
.menu__close:hover{ color:var(--accent); border-color:var(--accent); }
.menu__nav{ display:flex; flex-direction:column; margin:auto 0; }
.menu__nav a{
  display:flex;
  align-items:baseline;
  gap:18px;
  font-family:var(--font-display);
  font-size:clamp(2.6rem,10vw,5rem);
  font-weight:500;
  line-height:1.08;
  letter-spacing:-.03em;
  border-bottom:1px solid var(--line-soft);
  padding:12px 0;
  transform:translateY(20px);
  opacity:0;
  transition:transform .7s var(--ease), opacity .5s, color .3s;
}
.menu.is-open .menu__nav a{ transform:none; opacity:1; }
.menu.is-open .menu__nav a:nth-child(1){ transition-delay:.18s }
.menu.is-open .menu__nav a:nth-child(2){ transition-delay:.24s }
.menu.is-open .menu__nav a:nth-child(3){ transition-delay:.30s }
.menu.is-open .menu__nav a:nth-child(4){ transition-delay:.36s }
.menu.is-open .menu__nav a:nth-child(5){ transition-delay:.42s }
.menu__nav a span{
  font-family:var(--font-mono);
  font-size:9px;
  color:var(--accent);
  letter-spacing:.1em;
}
.menu__nav a:hover{ color:var(--accent); }
.menu__foot{
  display:flex;
  justify-content:space-between;
  gap:20px;
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.12em;
  color:var(--dim);
  border-top:1px solid var(--line-soft);
  padding-top:18px;
}
.menu__foot a{ color:var(--muted); }

/* ─────────────────────────── SIDE NAV ──────────────────────────── */
.side-nav{
  position:fixed;
  right:24px;
  top:50%;
  transform:translateY(-50%);
  z-index:900;
  display:flex;
  flex-direction:column;
  gap:14px;
}
.side-nav a{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  height:10px;
}
.side-nav a i{
  width:5px; height:5px;
  border-radius:50%;
  background:rgba(255,255,255,.22);
  transition:background .35s, transform .35s var(--ease3), box-shadow .35s;
}
.side-nav a span{
  font-family:var(--font-mono);
  font-size:7px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  opacity:0;
  transform:translateX(6px);
  transition:opacity .35s, transform .35s;
}
.side-nav a:hover span,.side-nav a.is-active span{ opacity:1; transform:none; }
.side-nav a.is-active i{
  background:var(--accent);
  transform:scale(1.7);
  box-shadow:0 0 10px var(--accent);
}

/* ─────────────────────────── TYPOGRAPHY ────────────────────────── */
.display{
  font-family:var(--font-display);
  font-weight:550;
  font-size:clamp(2.7rem, 5.6vw, 6.2rem);
  line-height:.94;
  letter-spacing:-.042em;
  text-wrap:balance;
}
.display em{
  font-family:var(--font-serif);
  font-style:italic;
  font-weight:400;
  letter-spacing:-.035em;
  color:var(--accent);
}
.mini-label{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:var(--muted);
}
.mini-label .pulse-dot{ margin:0; }
.pulse-dot{
  width:5px; height:5px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 10px rgba(var(--accent-rgb),.9);
  animation:pulse 2.4s ease-in-out infinite;
  flex:none;
}
.mini-rule{
  display:inline-block;
  width:clamp(24px,3vw,50px);
  height:1px;
  background:var(--accent);
  flex:none;
}
.accent{ color:var(--accent); }
.slash{ color:var(--dim); opacity:.6; }

.section{
  position:relative;
  padding:clamp(90px,12vh,150px) var(--pad);
}
.section-head{
  display:grid;
  grid-template-columns:auto auto 1fr auto;
  align-items:center;
  gap:clamp(12px,2vw,26px);
  padding-top:15px;
  border-top:1px solid var(--line);
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--muted);
  position:relative;
  z-index:5;
}
.section-head__index{ color:var(--accent); }
.section-head__label{ color:var(--ink-soft); }
.section-head__rule{
  height:1px;
  background:linear-gradient(90deg, rgba(255,255,255,.12), transparent 78%);
}
.section-head__meta{ color:var(--dim); font-size:7px; text-align:right; }

/* ───────────────────────────── BUTTONS ─────────────────────────── */
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  min-height:50px;
  padding:0 10px 0 22px;
  border-radius:999px;
  border:1px solid var(--line);
  font-family:var(--font-mono);
  font-size:9px;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--ink);
  position:relative;
  overflow:hidden;
  transform:translate3d(var(--mx,0),var(--my,0),0);
  transition:transform .28s var(--ease), border-color .35s, background .35s, color .35s, box-shadow .35s;
  z-index:1;
}
.btn__ico{
  width:31px; height:31px;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:13px;
  transition:transform .45s var(--ease3), background .35s, color .35s;
  flex:none;
}
.btn--primary{
  background:var(--accent);
  border-color:var(--accent);
  color:#090b07;
  box-shadow:0 0 0 0 rgba(var(--accent-rgb),0);
}
.btn--primary .btn__ico{ background:rgba(0,0,0,.12); }
.btn--primary:hover{
  box-shadow:0 14px 40px -14px rgba(var(--accent-rgb),.8);
}
.btn--primary:hover .btn__ico{ transform:rotate(-45deg); background:rgba(0,0,0,.2); }
.btn--ghost{ background:rgba(255,255,255,.025); }
.btn--ghost .btn__ico{ border:1px solid var(--line); }
.btn--ghost:hover{ border-color:rgba(var(--accent-rgb),.45); background:rgba(var(--accent-rgb),.05); }
.btn--ghost:hover .btn__ico{ transform:rotate(45deg); background:var(--accent); color:#080a08; border-color:var(--accent); }

.text-link{
  display:inline-flex;
  align-items:center;
  gap:14px;
  font-family:var(--font-mono);
  font-size:9px;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ink-soft);
  margin-top:28px;
  padding-bottom:6px;
  border-bottom:1px solid var(--line);
  transition:color .3s, border-color .3s;
}
.text-link span{ color:var(--accent); transition:transform .35s var(--ease); }
.text-link:hover{ color:var(--accent); border-color:var(--accent); }
.text-link:hover span{ transform:translate(3px,3px); }

/* ═════════════════════════════ HERO ═════════════════════════════ */
.hero{
  position:relative;
  min-height:100svh;
  padding:calc(var(--navh) + 26px) var(--pad) 0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  isolation:isolate;
}
.hero__grid{
  position:absolute;
  inset:0;
  background-image:radial-gradient(circle at 1px 1px, rgba(255,255,255,.18) 1px, transparent 0);
  background-size:34px 34px;
  mask-image:radial-gradient(ellipse 80% 65% at 62% 42%, #000 0%, transparent 72%);
  -webkit-mask-image:radial-gradient(ellipse 80% 65% at 62% 42%, #000 0%, transparent 72%);
  opacity:.22;
  z-index:0;
}
.hero__meta{
  position:relative;
  z-index:4;
  display:flex;
  justify-content:space-between;
  gap:24px;
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--muted);
  opacity:0;
  transform:translateY(10px);
  transition:opacity 1s var(--ease) 1.15s, transform 1s var(--ease) 1.15s;
}
html.is-loaded .hero__meta{ opacity:1; transform:none; }
.hero__meta-l,.hero__meta-r{ display:flex; align-items:center; gap:12px; flex-wrap:wrap; }
.hero__meta .pulse-dot{ animation-duration:2s; }
.hero__meta .fps b{ color:var(--accent); font-weight:400; font-variant-numeric:tabular-nums; }

/* ── orb ── */
.orb{
  position:absolute;
  top:43%;
  right:-3vw;
  width:min(58vw, 920px);
  aspect-ratio:1;
  transform:translateY(-50%) scale(.94);
  z-index:1;
  opacity:0;
  transition:opacity 2.2s var(--ease) .75s, transform 2.6s var(--ease) .75s;
  pointer-events:none;
}
html.is-loaded .orb{ opacity:1; transform:translateY(-50%) scale(1); }
.orb__glow{
  position:absolute;
  inset:21%;
  border-radius:50%;
  background:
    radial-gradient(circle at 45% 42%, rgba(var(--accent-rgb),.18) 0%, rgba(var(--accent-2-rgb),.10) 42%, transparent 68%);
  filter:blur(56px);
  animation:breathe 9s ease-in-out infinite;
}
.orb__body{
  position:absolute;
  inset:26%;
  border-radius:50%;
  z-index:1;
  overflow:hidden;
  background:
    radial-gradient(circle at 31% 25%, #ffffff 0%, #f2ffd2 5%, var(--accent) 12%, #c4c9ff 27%, var(--accent-2) 41%, #20243a 66%, #080a10 86%);
  box-shadow:
    inset -50px -60px 110px rgba(0,0,0,.9),
    inset 24px 30px 80px rgba(255,255,255,.22),
    0 0 100px rgba(var(--accent-rgb),.18);
}
.orb__body::before{
  content:"";
  position:absolute;
  inset:-25%;
  background:conic-gradient(from 20deg, transparent 0%, rgba(255,255,255,.38) 7%, transparent 18%, rgba(var(--accent-2-rgb),.42) 35%, transparent 50%, rgba(var(--accent-rgb),.38) 68%, transparent 82%, rgba(255,255,255,.2) 92%, transparent 100%);
  mix-blend-mode:screen;
  filter:blur(2px);
  animation:spin 24s linear infinite;
}
.orb__body::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:
    radial-gradient(ellipse at 30% 22%, rgba(255,255,255,.7) 0%, rgba(255,255,255,.08) 22%, transparent 38%),
    radial-gradient(ellipse at 68% 82%, rgba(0,0,0,.55) 0%, transparent 46%);
  mix-blend-mode:screen;
}
.orb__sheen{
  position:absolute;
  inset:0;
  border-radius:50%;
  background:radial-gradient(ellipse at 66% 72%, rgba(3,4,8,.5), transparent 48%);
  z-index:2;
}
.orb__wire{
  position:absolute;
  inset:0;
  width:100%; height:100%;
  z-index:3;
  mix-blend-mode:screen;
  opacity:.24;
  transform:rotate(-9deg) scale(1.02);
}
.orb__rim{
  position:absolute;
  inset:0;
  border-radius:50%;
  z-index:4;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.18),
    inset -20px -26px 60px rgba(0,0,0,.6);
  background:radial-gradient(circle at 50% 50%, transparent 78%, rgba(255,255,255,.12) 94%, transparent 100%);
}
@keyframes breathe{
  0%,100%{ transform:scale(.94); opacity:.7 }
  50%{ transform:scale(1.06); opacity:1 }
}
.orb canvas{ width:100%; height:100%; position:relative; z-index:2; opacity:.9; }
.orb__ellipse{
  position:absolute;
  top:50%; left:-7%;
  width:114%; height:38%;
  border:1px solid rgba(var(--accent-rgb),.16);
  border-radius:50%;
  transform:translateY(-50%) rotate(-17deg);
  pointer-events:none;
  z-index:3;
}
.orb__ellipse--b{
  width:130%; height:50%;
  left:-15%;
  border-color:rgba(var(--accent-2-rgb),.14);
  transform:translateY(-50%) rotate(28deg);
}
.orb__tag{
  position:absolute;
  font-family:var(--font-mono);
  font-size:7px;
  letter-spacing:.15em;
  color:rgba(255,255,255,.42);
  white-space:nowrap;
  display:flex;
  align-items:center;
  gap:7px;
  text-transform:uppercase;
  z-index:4;
}
.orb__tag i{
  width:4px; height:4px;
  border-radius:50%;
  background:var(--accent);
  box-shadow:0 0 8px var(--accent);
}
.orb__tag--a{ top:13%; left:6%; }
.orb__tag--b{ bottom:20%; right:14%; }
.orb__tag--c{ display:none; }
.orb__tag--a::before,.orb__tag--b::before,.orb__tag--c::before{
  content:"";
  display:block;
  width:34px; height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.22));
}
.orb__tag--a::before{ order:-1; }
.orb__tag--c::before{ order:-1; }

.orb--fallback canvas{ display:none; }
.orb--fallback::before{
  content:"";
  position:absolute;
  inset:15%;
  border-radius:50%;
  background:
    radial-gradient(circle at 33% 27%, #fff 0%, var(--accent) 10%, #c9c6ff 27%, var(--accent-2) 43%, #171a29 69%, #06070c 88%);
  box-shadow:
    inset -50px -60px 100px rgba(0,0,0,.9),
    inset 20px 24px 60px rgba(255,255,255,.18),
    0 0 110px rgba(var(--accent-rgb),.22);
}
.orb--fallback::after{
  content:"";
  position:absolute;
  inset:8% 4%;
  border:1px solid rgba(var(--accent-rgb),.18);
  border-radius:50%;
  transform:rotate(-17deg) scaleY(.42);
}

/* ── hero content ── */
.hero__content{
  position:relative;
  z-index:3;
  margin-top:auto;
  padding-top:clamp(60px, 12vh, 140px);
}
.hero__kicker{
  display:flex;
  align-items:center;
  gap:14px;
  font-family:var(--font-mono);
  font-size:clamp(7px,.62vw,9px);
  letter-spacing:.22em;
  color:rgba(242,241,234,.56);
  text-transform:uppercase;
  opacity:0;
  transform:translateY(16px);
  transition:opacity 1s var(--ease) 1.35s, transform 1s var(--ease) 1.35s;
}
html.is-loaded .hero__kicker{ opacity:1; transform:none; }

.hero__title{
  display:flex;
  align-items:flex-end;
  margin-top:clamp(14px,2.4vh,30px);
  margin-left:-.035em;
  font-family:var(--font-display);
  font-size:clamp(4.8rem, 19.2vw, 21rem);
  line-height:.76;
  font-weight:600;
  letter-spacing:-.065em;
  white-space:nowrap;
  user-select:none;
}
.hero__title .ch{
  display:inline-block;
  transform:translateY(118%) rotate(5deg);
  opacity:0;
  transition:transform 1.5s var(--ease), opacity .7s ease;
  transition-delay:calc(.72s + var(--i)*.055s);
  will-change:transform;
}
html.is-loaded .hero__title .ch{ transform:none; opacity:1; }
.ch--fill{
  background:linear-gradient(180deg, #ffffff 4%, #e9e8df 39%, #9b9e96 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.ch--stroke{
  color:transparent;
  -webkit-text-stroke:clamp(1.2px, .12vw, 2px) rgba(242,241,234,.5);
  text-shadow:0 0 60px rgba(255,255,255,.045);
}

.hero__row{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:clamp(24px,5vw,90px);
  margin-top:clamp(22px,3.4vh,42px);
  opacity:0;
  transform:translateY(22px);
  transition:opacity 1.1s var(--ease) 1.55s, transform 1.1s var(--ease) 1.55s;
}
html.is-loaded .hero__row{ opacity:1; transform:none; }
.hero__lede{
  max-width:500px;
  font-size:clamp(13px, 1.05vw, 15.5px);
  line-height:1.62;
  color:#a9abb5;
  letter-spacing:-.005em;
}
.hero__lede em{
  font-family:var(--font-serif);
  font-style:italic;
  font-size:1.22em;
  color:var(--accent);
  letter-spacing:-.01em;
}
.hero__lede .accent{ color:var(--ink); border-bottom:1px solid rgba(var(--accent-rgb),.55); }
.hero__actions{ display:flex; gap:10px; flex-wrap:wrap; padding-bottom:2px; }

.hero__bar{
  position:relative;
  z-index:4;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:clamp(26px,4.5vh,56px);
  padding:17px 0 22px;
  border-top:1px solid var(--line);
  font-family:var(--font-mono);
  font-size:7.5px;
  letter-spacing:.17em;
  color:var(--dim);
  text-transform:uppercase;
  opacity:0;
  transition:opacity 1.2s var(--ease) 1.8s;
}
html.is-loaded .hero__bar{ opacity:1; }
.hero__bar-item{ display:flex; align-items:center; gap:12px; }
.hero__bar-item--right{ text-align:right; }
.scroll-cue{
  display:inline-block;
  width:34px; height:1px;
  background:rgba(255,255,255,.15);
  position:relative;
  overflow:hidden;
}
.scroll-cue i{
  position:absolute;
  top:0; left:0;
  width:12px; height:1px;
  background:var(--accent);
  animation:scrollcue 2.4s var(--ease) infinite;
  box-shadow:0 0 8px var(--accent);
}
@keyframes scrollcue{
  0%{ transform:translateX(-14px) }
  60%,100%{ transform:translateX(38px) }
}
.hero__stats{ display:flex; align-items:center; gap:clamp(18px,2.5vw,38px); }
.hero__stats span{ color:var(--dim); }
.hero__stats b{ color:var(--ink-soft); font-weight:400; margin-right:4px; }

/* ═════════════════════════════ TICKER ═══════════════════════════ */
.ticker{
  position:relative;
  z-index:3;
  background:#07080d;
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  padding:20px 0 16px;
  overflow:hidden;
}
.ticker__row{ overflow:hidden; white-space:nowrap; }
.ticker__row--big{ font-family:var(--font-display); }
.ticker__row--small{
  margin-top:10px;
  padding-top:12px;
  border-top:1px solid var(--line-soft);
  font-family:var(--font-mono);
}
.ticker__track{
  display:inline-flex;
  align-items:center;
  gap:clamp(24px,3.4vw,60px);
  width:max-content;
  padding-right:clamp(24px,3.4vw,60px);
  animation:marquee var(--dur,46s) linear infinite;
  will-change:transform;
}
.ticker__track--reverse{ animation-direction:reverse; }
.ticker:hover .ticker__track{ animation-play-state:paused; }
@keyframes marquee{
  from{ transform:translate3d(0,0,0) }
  to{ transform:translate3d(-50%,0,0) }
}
.ticker__row--big span{
  font-size:clamp(2.6rem,6.6vw,7.4rem);
  line-height:.9;
  letter-spacing:-.045em;
  font-weight:550;
  color:var(--ink);
}
.ticker__row--big span:nth-child(4n+3){
  color:transparent;
  -webkit-text-stroke:1px rgba(255,255,255,.3);
}
.ticker__row--big i{
  font-style:normal;
  color:var(--accent);
  font-size:clamp(1.2rem,2.4vw,2.6rem);
  transform:translateY(-.15em);
}
.ticker__row--small span{
  font-size:clamp(.75rem,1.55vw,1.5rem);
  letter-spacing:.22em;
  color:var(--muted);
}
.ticker__row--small i{ color:var(--accent); font-style:normal; }

/* ═══════════════════════════ MANIFESTO ══════════════════════════ */
.manifesto{ background:linear-gradient(180deg, rgba(8,10,16,.55), transparent 30%, transparent 75%, rgba(8,10,16,.5)); }
.manifesto__statement{
  position:relative;
  z-index:2;
  margin-top:clamp(56px,10vh,120px);
  max-width:1500px;
  font-family:var(--font-display);
  font-weight:500;
  font-size:clamp(2.15rem, 5.15vw, 5.7rem);
  line-height:1.03;
  letter-spacing:-.038em;
  color:var(--ink);
}
.manifesto__statement .w{
  display:inline-block;
  opacity:.13;
  transition:opacity .35s linear, text-shadow .6s;
}
.manifesto__statement .w.is-lit{ opacity:1; }
.manifesto__statement em{
  font-family:var(--font-serif);
  font-style:italic;
  font-weight:400;
  letter-spacing:-.025em;
  color:#fff;
}
.manifesto__statement em.accent{
  color:var(--accent);
  text-shadow:0 0 44px rgba(var(--accent-rgb),.33);
}
.manifesto__foot{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);
  gap:clamp(40px,8vw,140px);
  margin-top:clamp(60px,10vh,130px);
  padding-top:26px;
  border-top:1px solid var(--line);
  position:relative;
  z-index:2;
}
.manifesto__body{ max-width:430px; }
.manifesto__body > p{
  margin-top:22px;
  color:var(--muted);
  font-size:clamp(13px,.95vw,14.5px);
  line-height:1.7;
}
.principles{ display:flex; flex-direction:column; justify-content:flex-end; }
.principle{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:22px;
  padding:16px 0;
  border-bottom:1px solid var(--line-soft);
  transition:padding .4s var(--ease), color .3s;
}
.principle:first-child{ border-top:1px solid var(--line-soft); }
.principle__num{
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.12em;
  color:var(--dim);
}
.principle p{
  font-family:var(--font-display);
  font-size:clamp(1rem,1.35vw,1.32rem);
  letter-spacing:-.01em;
  color:var(--ink-soft);
  transition:color .3s;
}
.principle__ico{ color:var(--dim); font-size:11px; transition:color .3s, transform .5s var(--ease); }
.principle:hover{ padding-left:10px; }
.principle:hover p{ color:var(--ink); }
.principle:hover .principle__ico{ color:var(--accent); transform:rotate(90deg); }
.manifesto__glyph{
  position:absolute;
  right:4%;
  top:18%;
  z-index:0;
  font-size:clamp(12rem,26vw,30rem);
  line-height:1;
  color:var(--accent);
  opacity:.028;
  animation:spin 80s linear infinite;
  pointer-events:none;
  user-select:none;
}

/* ══════════════════════════ CAPABILITIES ════════════════════════ */
.capabilities{ background:linear-gradient(180deg, transparent, rgba(9,11,18,.45) 40%, transparent); }
.capabilities__intro{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:40px;
  margin-top:clamp(48px,8vh,96px);
  margin-bottom:clamp(40px,6vh,72px);
}
.capabilities__lede{
  max-width:360px;
  font-size:clamp(12.5px,.95vw,14px);
  line-height:1.7;
  color:var(--muted);
  padding-bottom:8px;
}
.bento{
  display:grid;
  grid-template-columns:repeat(12,1fr);
  grid-auto-rows:238px;
  gap:14px;
}
.card{
  position:relative;
  border:1px solid var(--line);
  border-radius:20px;
  background:linear-gradient(155deg, rgba(255,255,255,.05), rgba(255,255,255,.012) 52%, rgba(255,255,255,.025));
  overflow:hidden;
  isolation:isolate;
  transform:translateY(34px);
  opacity:0;
  transition:opacity .9s var(--ease), transform .9s var(--ease), border-color .4s;
  transition-delay:var(--delay,0s);
}
.card.is-in{ transform:none; opacity:1; }
.card:hover{ border-color:rgba(var(--accent-rgb),.3); }
.card::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  z-index:4;
}
.card__surface{
  position:relative;
  height:100%;
  display:flex;
  flex-direction:column;
  padding:22px 22px 20px;
  transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));
  transform-style:preserve-3d;
  transition:transform .4s var(--ease);
  z-index:2;
}
.card__surface::before{
  content:"";
  position:absolute;
  inset:-1px;
  border-radius:20px;
  background:radial-gradient(460px circle at var(--mx,50%) var(--my,50%), rgba(var(--accent-rgb),.13), transparent 46%);
  opacity:0;
  transition:opacity .45s;
  pointer-events:none;
  z-index:-1;
}
.card:hover .card__surface::before{ opacity:1; }
.card--a{ grid-column:span 7; grid-row:span 2; }
.card--b{ grid-column:span 5; grid-row:span 2; }
.card--c,.card--d,.card--e{ grid-column:span 4; grid-row:span 2; }

.card__top{
  display:flex;
  align-items:center;
  gap:12px;
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.16em;
  color:var(--dim);
  text-transform:uppercase;
  z-index:3;
}
.card__idx{ color:var(--accent); }
.card__cat{ color:var(--muted); }
.card__arrow{
  margin-left:auto;
  width:28px; height:28px;
  border:1px solid var(--line);
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:11px;
  color:var(--muted);
  transition:background .35s, color .35s, border-color .35s, transform .45s var(--ease);
}
.card:hover .card__arrow{
  background:var(--accent);
  color:#080a08;
  border-color:var(--accent);
  transform:rotate(45deg);
}
.card__visual{
  position:relative;
  flex:1;
  min-height:90px;
  z-index:1;
}
.card__bottom{ position:relative; z-index:3; }
.card__bottom h3{
  font-family:var(--font-display);
  font-weight:550;
  font-size:clamp(1.55rem,2.05vw,2.15rem);
  line-height:1;
  letter-spacing:-.03em;
}
.card__bottom h3 em{
  font-family:var(--font-serif);
  font-style:italic;
  font-weight:400;
  color:var(--accent);
  letter-spacing:-.025em;
}
.card__bottom p{
  margin-top:9px;
  font-size:11.5px;
  line-height:1.55;
  color:var(--muted);
  max-width:92%;
}
.tags{ display:flex; flex-wrap:wrap; gap:6px; margin-top:13px; }
.tags li{
  font-family:var(--font-mono);
  font-size:6.5px;
  letter-spacing:.14em;
  padding:4px 8px;
  border:1px solid var(--line);
  border-radius:99px;
  color:var(--dim);
  text-transform:uppercase;
}

/* card visuals */
.art-orb{
  position:absolute;
  right:-8%;
  top:50%;
  width:min(78%, 350px);
  aspect-ratio:1;
  transform:translateY(calc(-50% + var(--py, 0px)));
}
.art-orb__sphere{
  position:absolute;
  inset:0;
  border-radius:50%;
  background:
    radial-gradient(circle at 32% 26%, #fff 0%, var(--accent) 11%, #c8c5ff 29%, var(--accent-2) 43%, #1a1d2e 68%, #06070c 86%);
  box-shadow:
    inset -34px -40px 70px rgba(0,0,0,.85),
    inset 12px 14px 40px rgba(255,255,255,.16),
    0 0 90px rgba(var(--accent-rgb),.18);
  animation:orbfloat 9s ease-in-out infinite;
  overflow:hidden;
}
.art-orb__sphere::before{
  content:"";
  position:absolute;
  inset:-20%;
  background:conic-gradient(from 0deg, transparent 0%, rgba(255,255,255,.42) 8%, transparent 20%, rgba(var(--accent-2-rgb),.5) 38%, transparent 54%, rgba(var(--accent-rgb),.45) 74%, transparent 88%);
  mix-blend-mode:screen;
  animation:spin 16s linear infinite;
  filter:blur(3px);
}
.art-orb__sphere::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:radial-gradient(circle at 65% 75%, transparent 30%, rgba(0,0,0,.55) 72%);
}
.art-orb__ring{
  position:absolute;
  top:50%; left:-18%;
  width:136%; height:36%;
  border:1px solid rgba(var(--accent-rgb),.24);
  border-radius:50%;
  transform:translateY(-50%) rotate(-19deg);
  animation:orbring 14s ease-in-out infinite alternate;
}
.art-orb__ring--b{
  width:154%; height:46%;
  left:-27%;
  border-color:rgba(var(--accent-2-rgb),.18);
  transform:translateY(-50%) rotate(24deg);
  animation-duration:19s;
  animation-direction:alternate-reverse;
}
@keyframes orbfloat{
  0%,100%{ transform:translateY(-4px) rotate(-1deg) }
  50%{ transform:translateY(8px) rotate(1.5deg) }
}
@keyframes orbring{
  from{ transform:translateY(-50%) rotate(-26deg) scale(.98) }
  to{ transform:translateY(-50%) rotate(-10deg) scale(1.02) }
}
.art-wave{ position:absolute; inset:0; display:flex; align-items:center; opacity:.92; }
.art-wave svg{ width:100%; height:100%; overflow:visible; }
.wave-path{
  stroke-dasharray:3 6;
  animation:dashmove 11s linear infinite;
  filter:drop-shadow(0 0 6px rgba(var(--accent-rgb),.35));
  vector-effect:non-scaling-stroke;
}
.wave-path--2{ animation-duration:17s; animation-direction:reverse; opacity:.5; }
.wave-path--3{ animation-duration:8s; opacity:.9; filter:blur(2px); }
@keyframes dashmove{ to{ stroke-dashoffset:-900 } }
.art-wave__readout{
  position:absolute;
  left:2px; bottom:8px;
  font-family:var(--font-mono);
  font-size:6.5px;
  letter-spacing:.16em;
  color:var(--dim);
}
.art-foil{
  position:absolute;
  inset:6% 0 2%;
  border-radius:12px;
  overflow:hidden;
  background:#080a10;
  transform:translateY(var(--py, 0px));
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.14),
    inset 0 -40px 70px rgba(0,0,0,.55);
}
.art-foil::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(118deg, rgba(0,0,0,.62) 0%, transparent 28%, rgba(255,255,255,.26) 42%, transparent 52%, rgba(0,0,0,.55) 100%),
    repeating-linear-gradient(112deg, rgba(255,255,255,.065) 0 1px, transparent 1px 5px);
  mix-blend-mode:overlay;
  opacity:.85;
  pointer-events:none;
}
.art-foil__sheet{
  position:absolute;
  inset:-38%;
  background:
    radial-gradient(ellipse at 24% 16%, rgba(255,255,255,.78) 0%, rgba(255,255,255,.12) 20%, transparent 36%),
    linear-gradient(118deg,
      #07090e 0%,
      #17253d 13%,
      #a9c4ff 22%,
      var(--accent) 29%,
      #2b1c48 39%,
      var(--accent-2) 47%,
      #ff5ed2 55%,
      #0b0e15 64%,
      #9dfcf0 73%,
      #1d2d35 81%,
      var(--accent) 90%,
      #07090e 100%);
  filter:blur(4px) saturate(1.22) contrast(1.05);
  transform:rotate(-7deg) scale(1.22);
  animation:foilturn 26s ease-in-out infinite alternate;
  opacity:.96;
}
@keyframes foilturn{
  from{ transform:rotate(-9deg) scale(1.2) translate3d(-1%,1%,0) }
  to{ transform:rotate(2deg) scale(1.27) translate3d(1%,-1%,0) }
}
.art-foil__shine{
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse at 26% 22%, rgba(255,255,255,.55), transparent 28%),
    linear-gradient(120deg, rgba(255,255,255,.12) 0%, transparent 30%, transparent 62%, rgba(255,255,255,.18) 100%);
  mix-blend-mode:screen;
  opacity:.5;
  animation:foilshine 9s ease-in-out infinite alternate;
}
@keyframes foilshine{
  from{ transform:translate3d(-4%, -3%, 0) rotate(-2deg) }
  to{ transform:translate3d(5%, 4%, 0) rotate(2deg) }
}
.art-foil__label{
  position:absolute;
  left:10px; bottom:9px;
  font-family:var(--font-mono);
  font-size:6.5px;
  letter-spacing:.16em;
  color:rgba(0,0,0,.55);
  mix-blend-mode:difference;
  color:#fff;
}
.art-bars{
  position:absolute;
  inset:12% 0 4%;
  display:flex;
  align-items:flex-end;
  gap:3px;
  padding:0 2px;
  border-bottom:1px solid var(--line-soft);
  mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}
.art-bars span{
  flex:1;
  height:var(--h);
  min-height:2px;
  border-radius:1px 1px 0 0;
  background:linear-gradient(180deg, var(--accent), rgba(var(--accent-rgb),.12));
  opacity:.65;
  transform-origin:bottom;
  animation:barpulse 1.5s ease-in-out infinite alternate;
  animation-delay:var(--d);
}
@keyframes barpulse{
  from{ transform:scaleY(.35); opacity:.28 }
  to{ transform:scaleY(1); opacity:.9 }
}
.art-mesh{ position:absolute; inset:0; overflow:hidden; }
.art-mesh__web{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:2;
  overflow:visible;
}
.mesh-line{
  stroke:rgba(var(--accent-rgb),.28);
  stroke-width:.7;
  vector-effect:non-scaling-stroke;
}
.mesh-node{
  fill:var(--accent);
  opacity:.85;
}
.mesh-node--soft{
  fill:var(--accent-2);
  opacity:.6;
}
.mesh-ring{
  fill:none;
  stroke:rgba(var(--accent-rgb),.32);
  stroke-width:.6;
  animation:meshring 4.5s ease-in-out infinite;
  transform-box:fill-box;
  transform-origin:center;
}
@keyframes meshring{
  0%,100%{ opacity:.15; transform:scale(.65) }
  45%{ opacity:.55; transform:scale(1.5) }
}
.art-mesh__dots{
  position:absolute;
  inset:2% 0 6%;
  background-image:radial-gradient(circle, rgba(var(--accent-rgb),.5) 1px, transparent 1.4px);
  background-size:12px 12px;
  mask-image:radial-gradient(ellipse at 50% 50%, #000 10%, transparent 72%);
  -webkit-mask-image:radial-gradient(ellipse at 50% 50%, #000 10%, transparent 72%);
  opacity:.45;
}
.art-mesh__sweep{
  position:absolute;
  left:50%; top:50%;
  width:150%; aspect-ratio:1;
  transform:translate(-50%,-50%);
  background:conic-gradient(from 0deg, transparent 0 90%, rgba(var(--accent-rgb),.25) 95%, rgba(var(--accent-rgb),.75) 97.4%, transparent 98.6%);
  border-radius:50%;
  animation:spin 11s linear infinite;
  opacity:.6;
  mask-image:radial-gradient(circle, transparent 16%, #000 28%, #000 53%, transparent 68%);
  -webkit-mask-image:radial-gradient(circle, transparent 16%, #000 28%, #000 53%, transparent 68%);
}
.art-mesh__core{
  position:absolute;
  left:50%; top:50%;
  width:8px; height:8px;
  border-radius:50%;
  background:var(--accent);
  transform:translate(-50%,-50%);
  box-shadow:0 0 22px 5px rgba(var(--accent-rgb),.45);
  animation:pulse 2s ease-in-out infinite;
}
.art-mesh::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(90deg, transparent 49.8%, rgba(var(--accent-rgb),.18) 50%, transparent 50.2%),
    linear-gradient(0deg, transparent 49.8%, rgba(var(--accent-rgb),.12) 50%, transparent 50.2%);
}

.stack-strip{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  margin-top:14px;
  padding:16px 20px;
  border:1px solid var(--line);
  border-radius:12px;
  font-family:var(--font-mono);
  font-size:7px;
  letter-spacing:.15em;
  color:var(--dim);
  text-transform:uppercase;
  flex-wrap:wrap;
}
.stack-strip__label{ color:var(--accent); }
.stack-strip__items{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.stack-strip__items i{ color:var(--accent); font-style:normal; opacity:.5; }
.stack-strip__note{ color:rgba(255,255,255,.28); }

/* ═════════════════════════════ CORE ═════════════════════════════ */
.core{
  position:relative;
  height:320vh;
  background:linear-gradient(180deg, #05060a 0%, #070911 18%, #06070d 82%, #05060a 100%);
}
.core__sticky{
  position:sticky;
  top:0;
  height:100svh;
  overflow:hidden;
  padding:calc(var(--navh) + 26px) var(--pad) 0;
  isolation:isolate;
}
.core__bg{
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse 55% 65% at 68% 50%, rgba(var(--accent-rgb),.09), transparent 62%),
    radial-gradient(ellipse 45% 55% at 30% 70%, rgba(var(--accent-2-rgb),.07), transparent 65%);
  z-index:0;
}
.core__bigindex{
  position:absolute;
  right:-2vw;
  bottom:-12vh;
  z-index:0;
  font-family:var(--font-display);
  font-weight:600;
  font-size:clamp(20rem,42vw,50rem);
  line-height:.7;
  letter-spacing:-.08em;
  color:transparent;
  -webkit-text-stroke:1px rgba(255,255,255,.035);
  user-select:none;
  pointer-events:none;
}
.section-head--core{ position:relative; z-index:6; }

.core__copy{
  position:absolute;
  left:var(--pad);
  bottom:clamp(150px,22vh,230px);
  z-index:7;
  max-width:430px;
}
.core__copy h2{
  margin-top:20px;
  font-size:clamp(2.4rem,4vw,4.4rem);
}
.core__copy > p{
  margin-top:20px;
  max-width:350px;
  color:var(--muted);
  font-size:clamp(12px,.92vw,13.5px);
  line-height:1.7;
}
.core__meter{ margin-top:30px; max-width:310px; }
.core__meter > span{
  font-family:var(--font-mono);
  font-size:7px;
  letter-spacing:.18em;
  color:var(--dim);
}
.core__meter b{
  display:block;
  margin-top:6px;
  font-family:var(--font-mono);
  font-weight:400;
  font-size:clamp(1.9rem,3vw,2.8rem);
  letter-spacing:-.04em;
  color:var(--ink);
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.core__meter b i{ font-style:normal; font-size:.4em; color:var(--accent); margin-left:2px; }
.core__meterbar{
  margin-top:12px;
  height:2px;
  background:rgba(255,255,255,.08);
  position:relative;
  overflow:hidden;
}
.core__meterbar span{
  display:block;
  width:99.7%;
  height:100%;
  background:linear-gradient(90deg, var(--accent-2), var(--accent));
  box-shadow:0 0 12px rgba(var(--accent-rgb),.6);
  transition:width .2s linear;
}

.reactor{
  position:absolute;
  top:47%;
  right:-2vw;
  width:min(66vw, 940px);
  aspect-ratio:1;
  transform:translateY(-50%) rotate(calc(var(--p,0) * 10deg)) scale(calc(.9 + var(--p,0) * .1));
  z-index:3;
  pointer-events:none;
  transition:transform .15s linear;
}
.reactor__halo{
  position:absolute;
  inset:5%;
  border-radius:50%;
  background:radial-gradient(circle, rgba(var(--accent-rgb),.16), rgba(var(--accent-2-rgb),.07) 42%, transparent 68%);
  filter:blur(50px);
  animation:breathe 7s ease-in-out infinite;
}
.reactor__svg{ width:100%; height:100%; overflow:visible; }
.reactor__svg .ring{
  transform-box:fill-box;
  transform-origin:center;
}
.ring--a{ animation:spin 70s linear infinite; }
.ring--b{ animation:spin 44s linear infinite reverse; }
.ring--c{ animation:spin 28s linear infinite; }
.ring--d{ animation:spin 18s linear infinite reverse; }
.reactor__ticks line{ stroke:rgba(255,255,255,.16); }
.reactor__ticks line.major{ stroke:rgba(var(--accent-rgb),.55); }
.reactor__cross{ animation:tickfade 6s ease-in-out infinite; }
@keyframes tickfade{ 0%,100%{ opacity:.55 } 50%{ opacity:1 } }
.reactor__pulse{
  transform-box:fill-box;
  transform-origin:center;
  animation:reactorpulse 3.4s ease-out infinite;
}
@keyframes reactorpulse{
  0%{ transform:scale(.6); opacity:.8 }
  80%,100%{ transform:scale(1.55); opacity:0 }
}
.reactor__readout{
  position:absolute;
  left:50%; top:50%;
  transform:translate(-50%,-50%);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:5px;
  text-align:center;
  z-index:2;
}
.reactor__readout::before{
  content:"";
  position:absolute;
  left:50%; top:50%;
  width:170px; height:170px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:radial-gradient(circle, rgba(255,255,255,.16), rgba(var(--accent-rgb),.12) 34%, transparent 68%);
  filter:blur(16px);
  z-index:-1;
  pointer-events:none;
}
.reactor__readout b{
  font-family:var(--font-mono);
  font-weight:400;
  font-size:clamp(1.4rem,2.1vw,2.2rem);
  line-height:1;
  color:var(--ink);
  letter-spacing:-.04em;
  font-variant-numeric:tabular-nums;
  text-shadow:0 0 30px rgba(var(--accent-rgb),.6);
}
.reactor__readout span{
  font-family:var(--font-mono);
  font-size:6.5px;
  letter-spacing:.16em;
  color:var(--accent);
}
.reactor__label{
  position:absolute;
  font-family:var(--font-mono);
  font-size:6.5px;
  letter-spacing:.15em;
  color:rgba(255,255,255,.34);
  display:flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
}
.reactor__label i{
  width:3px; height:3px;
  border-radius:50%;
  background:var(--accent);
}
.reactor__label--1{ top:16%; left:13%; }
.reactor__label--2{ top:24%; right:5%; }
.reactor__label--3{ bottom:17%; right:10%; }
.reactor__label--4{ bottom:27%; left:5%; }

.core__steps{
  position:absolute;
  left:var(--pad); right:var(--pad);
  bottom:clamp(24px,4vh,44px);
  z-index:7;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:clamp(18px,3vw,46px);
  border-top:1px solid var(--line);
  padding-top:18px;
}
.core-step{
  display:flex;
  gap:14px;
  opacity:.28;
  filter:blur(.2px);
  transition:opacity .6s var(--ease), filter .6s;
}
.core-step.is-active{ opacity:1; filter:none; }
.core-step__num{
  font-family:var(--font-mono);
  font-size:8px;
  color:var(--accent);
  padding-top:2px;
}
.core-step h4{
  font-family:var(--font-display);
  font-size:clamp(.95rem,1.15vw,1.18rem);
  font-weight:500;
  letter-spacing:-.01em;
  line-height:1.15;
  color:var(--ink);
}
.core-step p{
  margin-top:7px;
  font-size:10.5px;
  line-height:1.55;
  color:var(--muted);
  max-width:270px;
}
.core__stepbar{
  position:absolute;
  left:0; right:0; bottom:-1px;
  height:1px;
  background:transparent;
}
.core__stepbar span{
  display:block;
  height:1px;
  width:100%;
  background:linear-gradient(90deg, var(--accent), transparent);
  transform:scaleX(.333);
  transform-origin:0 50%;
  transition:transform .2s linear;
}
.core__telemetry{
  position:absolute;
  right:var(--pad);
  bottom:clamp(150px,22vh,230px);
  z-index:7;
  display:flex;
  gap:clamp(14px,1.8vw,28px);
}
.core__telemetry div{
  display:flex;
  flex-direction:column;
  gap:5px;
  padding-left:12px;
  border-left:1px solid var(--line);
}
.core__telemetry span{
  font-family:var(--font-mono);
  font-size:6.5px;
  letter-spacing:.15em;
  color:var(--dim);
}
.core__telemetry b{
  font-family:var(--font-mono);
  font-weight:400;
  font-size:11px;
  color:var(--ink-soft);
  font-variant-numeric:tabular-nums;
}

/* ═══════════════════════════ SIGNALS RAIL ═══════════════════════ */
.rail{
  position:relative;
  height:420vh;
  background:linear-gradient(180deg, #05060a, #080a11 20%, #080a11 80%, #05060a);
}
.rail__sticky{
  position:sticky;
  top:0;
  height:100svh;
  overflow:hidden;
  padding-top:calc(var(--navh) + 20px);
}
.section-head--rail{
  position:absolute;
  left:var(--pad); right:var(--pad);
  top:calc(var(--navh) + 8px);
  z-index:10;
}
.rail__intro{
  position:absolute;
  left:var(--pad);
  top:50%;
  transform:translateY(-56%);
  z-index:8;
  max-width:330px;
  pointer-events:none;
}
.rail__intro h2{ font-size:clamp(2.4rem,4.3vw,4.6rem); }
.rail__intro p{
  margin-top:20px;
  max-width:280px;
  color:var(--muted);
  font-size:12px;
  line-height:1.65;
}
.rail__viewport{ position:absolute; inset:0; display:flex; align-items:center; z-index:4; }
.rail__track{
  display:flex;
  align-items:center;
  gap:clamp(14px,1.4vw,22px);
  padding-left:clamp(340px, 37vw, 620px);
  padding-right:var(--pad);
  will-change:transform;
  transform:translate3d(0,0,0);
}
.panel{
  position:relative;
  flex:none;
  width:clamp(330px, 55vw, 800px);
  height:min(62vh, 610px);
  border:1px solid var(--line);
  border-radius:22px;
  overflow:hidden;
  background:#090b11;
  isolation:isolate;
  transition:border-color .5s, transform .6s var(--ease);
}
.panel:hover{ border-color:rgba(var(--accent-rgb),.32); }
.panel:hover .panel__art{ transform:scale(1.025); }
.panel__art{
  position:absolute;
  inset:0;
  z-index:0;
  transition:transform 1.2s var(--ease);
}
.panel__scrim{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(to top, rgba(4,5,9,.96) 0%, rgba(4,5,9,.55) 32%, rgba(4,5,9,.05) 70%, rgba(4,5,9,.25) 100%);
}
.panel__top{
  position:absolute;
  top:20px; left:24px; right:24px;
  z-index:2;
  display:flex;
  justify-content:space-between;
  font-family:var(--font-mono);
  font-size:7px;
  letter-spacing:.16em;
  color:rgba(255,255,255,.5);
  text-transform:uppercase;
}
.panel__top span:first-child{ color:var(--accent); }
.panel__bottom{
  position:absolute;
  left:0; right:0; bottom:0;
  z-index:2;
  padding:26px;
}
.panel__bottom h3{
  font-family:var(--font-display);
  font-weight:550;
  font-size:clamp(1.9rem,3.2vw,3.2rem);
  line-height:.98;
  letter-spacing:-.035em;
}
.panel__bottom h3 em{
  font-family:var(--font-serif);
  font-style:italic;
  font-weight:400;
  color:var(--accent);
}
.panel__bottom p{
  margin-top:10px;
  max-width:400px;
  font-size:11.5px;
  line-height:1.55;
  color:rgba(255,255,255,.56);
}
.panel__tags{ display:flex; gap:6px; flex-wrap:wrap; margin-top:15px; }
.panel__tags span{
  font-family:var(--font-mono);
  font-size:6.5px;
  letter-spacing:.14em;
  color:rgba(255,255,255,.55);
  border:1px solid rgba(255,255,255,.16);
  border-radius:99px;
  padding:4px 8px;
}
.panel__corner{
  position:absolute;
  right:24px; bottom:26px;
  z-index:2;
  width:38px; height:38px;
  border:1px solid rgba(255,255,255,.2);
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  font-size:13px;
  transition:background .35s, color .35s, border-color .35s, transform .45s var(--ease);
}
.panel:hover .panel__corner{ background:var(--accent); color:#080a08; border-color:var(--accent); transform:rotate(45deg); }

/* bloom */
.bloom{ position:absolute; inset:0; background:radial-gradient(circle at 60% 40%, #161029, #07080d 70%); overflow:hidden; }
.bloom__blob{
  position:absolute;
  border-radius:50%;
  filter:blur(52px);
  mix-blend-mode:screen;
  animation:blobfloat 14s ease-in-out infinite alternate;
}
.bloom__blob--1{
  width:62%; aspect-ratio:1;
  left:12%; top:4%;
  background:radial-gradient(circle at 40% 40%, var(--accent), transparent 68%);
  opacity:.85;
}
.bloom__blob--2{
  width:66%; aspect-ratio:1;
  right:-6%; top:22%;
  background:radial-gradient(circle at 50% 50%, #ff5ed2, transparent 66%);
  opacity:.7;
  animation-duration:18s;
  animation-direction:alternate-reverse;
}
.bloom__blob--3{
  width:52%; aspect-ratio:1;
  left:20%; bottom:-14%;
  background:radial-gradient(circle at 50% 50%, #7b61ff, transparent 68%);
  opacity:.85;
  animation-duration:11s;
}
.bloom__ring{
  position:absolute;
  left:50%; top:44%;
  width:44%; aspect-ratio:1;
  border:1px solid rgba(255,255,255,.35);
  border-radius:50%;
  transform:translate(-50%,-50%) rotateX(68deg) rotateZ(-12deg);
  box-shadow:0 0 40px rgba(var(--accent-rgb),.35), inset 0 0 40px rgba(var(--accent-rgb),.2);
  animation:spin 24s linear infinite;
}
.bloom__streak{
  position:absolute;
  left:8%; right:8%; top:38%;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.8), transparent);
  box-shadow:0 0 18px rgba(255,255,255,.5);
  transform:rotate(-18deg);
}
@keyframes blobfloat{
  from{ transform:translate3d(-3%, 2%, 0) scale(.96) }
  to{ transform:translate3d(4%, -4%, 0) scale(1.06) }
}

/* spectral */
.spectral{
  position:absolute;
  inset:0;
  background:
    radial-gradient(ellipse at 50% 52%, rgba(var(--accent-2-rgb),.16), transparent 48%),
    radial-gradient(ellipse at 26% 24%, rgba(var(--accent-rgb),.12), transparent 44%),
    radial-gradient(ellipse at 50% 55%, #0b1320, #06070c 72%);
}
.spectral::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(ellipse at 52% 52%, rgba(var(--accent-rgb),.10), transparent 38%);
  animation:breathe 8s ease-in-out infinite;
}
.spectral svg{ width:100%; height:100%; position:relative; z-index:1; }
.spectral__meta{
  position:absolute;
  left:26px; bottom:150px;
  font-family:var(--font-mono);
  font-size:6.5px;
  line-height:1.8;
  letter-spacing:.16em;
  color:rgba(255,255,255,.35);
  z-index:2;
}
.spectral__lines path{
  stroke-dasharray:6 10;
  animation:dashmove 16s linear infinite;
  opacity:.55;
}
.spectral__glow path{
  stroke-width:14;
  opacity:.075;
  filter:blur(10px);
}

/* lattice */
.lattice{ position:absolute; inset:0; background:radial-gradient(ellipse at 50% 34%, #0b1624, #05060a 72%); overflow:hidden; }
.lattice::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(circle at 1px 1px, rgba(255,255,255,.5) 1px, transparent 0);
  background-size:33px 33px;
  mask-image:radial-gradient(ellipse at 50% 32%, #000 0%, transparent 64%);
  -webkit-mask-image:radial-gradient(ellipse at 50% 32%, #000 0%, transparent 64%);
  opacity:.25;
  z-index:0;
}
.lattice__floor{
  position:absolute;
  left:-60%; right:-60%; top:48%; bottom:-55%;
  background-image:
    linear-gradient(rgba(var(--accent-rgb),.42) 1px, transparent 1px),
    linear-gradient(90deg, rgba(var(--accent-rgb),.32) 1px, transparent 1px);
  background-size:64px 64px;
  transform:perspective(500px) rotateX(64deg);
  transform-origin:50% 0;
  mask-image:linear-gradient(#000 0%, transparent 78%);
  -webkit-mask-image:linear-gradient(#000 0%, transparent 78%);
  animation:gridmove 12s linear infinite;
  z-index:1;
}
.lattice__horizon{
  position:absolute;
  left:0; right:0; top:48%;
  height:1px;
  background:var(--accent);
  box-shadow:0 0 30px 5px rgba(var(--accent-rgb),.5);
  z-index:2;
}
.lattice__sun{
  position:absolute;
  left:50%; top:48%;
  width:280px; height:280px;
  border-radius:50%;
  transform:translate(-50%,-72%);
  background:radial-gradient(circle at 50% 50%, rgba(var(--accent-rgb),.9), rgba(var(--accent-rgb),.22) 34%, transparent 66%);
  filter:blur(6px);
  animation:breathe 6s ease-in-out infinite;
  z-index:1;
}
.lattice__globe{
  position:absolute;
  left:50%; top:31%;
  width:clamp(150px, 27%, 225px);
  aspect-ratio:1;
  transform:translate(-50%,-50%);
  border-radius:50%;
  z-index:3;
  background:
    radial-gradient(circle at 34% 28%, rgba(255,255,255,.35), rgba(var(--accent-rgb),.16) 18%, rgba(var(--accent-2-rgb),.22) 42%, rgba(4,6,10,.92) 72%);
  border:1px solid rgba(var(--accent-rgb),.4);
  box-shadow:
    0 0 55px rgba(var(--accent-rgb),.14),
    inset -18px -24px 50px rgba(0,0,0,.8),
    inset 10px 12px 30px rgba(255,255,255,.08);
  animation:globefloat 8s ease-in-out infinite;
}
.lattice__globe::before{
  content:"";
  position:absolute;
  inset:3%;
  border-radius:50%;
  background:
    repeating-linear-gradient(0deg, transparent 0 12px, rgba(var(--accent-rgb),.22) 12px 13px),
    repeating-linear-gradient(90deg, transparent 0 15px, rgba(var(--accent-rgb),.14) 15px 16px);
  mask-image:radial-gradient(circle at 50% 50%, #000 52%, transparent 72%);
  -webkit-mask-image:radial-gradient(circle at 50% 50%, #000 52%, transparent 72%);
  transform:rotate(-12deg) scaleY(.95);
  animation:globegrid 24s linear infinite;
}
.lattice__globe::after{
  content:"";
  position:absolute;
  left:-14%; right:-14%; top:50%;
  height:34%;
  border:1px solid rgba(var(--accent-rgb),.38);
  border-radius:50%;
  transform:translateY(-50%) rotate(-14deg);
  box-shadow:0 0 16px rgba(var(--accent-rgb),.16);
}
.lattice__globe i{
  position:absolute;
  left:23%; top:20%;
  width:6px; height:6px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 18px 4px rgba(var(--accent-rgb),.75);
  animation:pulse 3s ease-in-out infinite;
}
.lattice__beam{
  position:absolute;
  left:50%; top:36%;
  width:1px; height:13%;
  transform:translateX(-50%);
  background:linear-gradient(to bottom, rgba(var(--accent-rgb),.55), transparent);
  box-shadow:0 0 14px rgba(var(--accent-rgb),.45);
  z-index:2;
}
.lattice__scan{
  position:absolute;
  inset:0;
  background:repeating-linear-gradient(0deg, transparent 0 3px, rgba(255,255,255,.035) 3px 4px);
  mix-blend-mode:overlay;
  z-index:4;
}
@keyframes gridmove{ to{ background-position:0 64px, 64px 0 } }
@keyframes globefloat{
  0%,100%{ transform:translate(-50%,-50%) translateY(-4px) }
  50%{ transform:translate(-50%,-50%) translateY(7px) }
}
@keyframes globegrid{ to{ background-position:0 13px, 16px 0 } }

/* horizon */
.horizon{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 50% 46%, #100a1a, #05060a 68%);
  overflow:hidden;
}
.horizon::before{
  content:"";
  position:absolute;
  inset:0;
  background-image:radial-gradient(circle at 1px 1px, rgba(255,255,255,.55) 1px, transparent 0);
  background-size:47px 47px;
  mask-image:radial-gradient(ellipse at 50% 46%, #000 0%, transparent 70%);
  -webkit-mask-image:radial-gradient(ellipse at 50% 46%, #000 0%, transparent 70%);
  opacity:.3;
}
.horizon__nebula{
  position:absolute;
  inset:-10%;
  background:
    radial-gradient(ellipse at 50% 36%, rgba(var(--accent-2-rgb),.20), transparent 48%),
    radial-gradient(ellipse at 72% 30%, rgba(var(--accent-rgb),.08), transparent 38%);
  z-index:0;
}
.horizon__void{
  position:absolute;
  left:50%; top:46%;
  width:210px; height:210px;
  border-radius:50%;
  transform:translate(-50%,-50%);
  background:#000;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.28),
    0 0 60px 10px rgba(var(--accent-2-rgb),.35),
    inset 0 0 60px 10px rgba(0,0,0,1);
  z-index:4;
}
.horizon__disk{
  position:absolute;
  left:50%; top:46%;
  width:640px; height:220px;
  transform:translate(-50%,-50%) rotate(-13deg);
  border-radius:50%;
  background:conic-gradient(from 180deg,
    transparent 0deg 8deg,
    rgba(var(--accent-2-rgb),.7) 22deg,
    rgba(var(--accent-rgb),.55) 34deg,
    transparent 48deg 152deg,
    rgba(var(--accent-rgb),.35) 166deg,
    rgba(var(--accent-2-rgb),.55) 178deg,
    transparent 194deg 360deg);
  filter:blur(14px);
  mask-image:radial-gradient(ellipse at 50% 50%, transparent 42%, #000 48%, #000 64%, transparent 74%);
  -webkit-mask-image:radial-gradient(ellipse at 50% 50%, transparent 42%, #000 48%, #000 64%, transparent 74%);
  opacity:.85;
  z-index:1;
  animation:diskshift 12s ease-in-out infinite alternate;
}
.horizon__photon{
  position:absolute;
  left:50%; top:46%;
  width:292px; height:96px;
  transform:translate(-50%,-50%) rotate(-12deg);
  border-radius:50%;
  border:1px solid rgba(var(--accent-rgb),.8);
  box-shadow:
    0 0 24px rgba(var(--accent-rgb),.55),
    inset 0 0 18px rgba(var(--accent-rgb),.35);
  z-index:5;
  opacity:.8;
  animation:breathe 6s ease-in-out infinite;
}
.horizon__ring{
  position:absolute;
  left:50%; top:46%;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.13);
  transform:translate(-50%,-50%);
  z-index:3;
}
.horizon__ring--1{ width:330px; height:330px; animation:breathe 7s ease-in-out infinite; }
.horizon__ring--2{ width:470px; height:470px; border-color:rgba(var(--accent-rgb),.16); animation:breathe 9s ease-in-out infinite reverse; }
.horizon__ring--3{ width:640px; height:640px; border-style:dashed; opacity:.5; animation:spin 60s linear infinite; }
.horizon__rays{
  position:absolute;
  left:50%; top:46%;
  width:900px; height:900px;
  transform:translate(-50%,-50%);
  background:conic-gradient(from 0deg, transparent 0 8%, rgba(var(--accent-rgb),.16) 9%, transparent 10%, transparent 22%, rgba(255,255,255,.1) 23%, transparent 24%, transparent 41%, rgba(var(--accent-2-rgb),.18) 42%, transparent 43%);
  mask-image:radial-gradient(circle, transparent 12%, #000 22%, transparent 58%);
  -webkit-mask-image:radial-gradient(circle, transparent 12%, #000 22%, transparent 58%);
  animation:spin 40s linear infinite;
  z-index:2;
}
.horizon__sweep{
  display:none;
  position:absolute;
  left:50%; top:46%;
  width:760px; height:760px;
  transform:translate(-50%,-50%);
  background:conic-gradient(from 90deg, transparent 0 84%, rgba(var(--accent-rgb),.6) 92%, transparent 96%);
  border-radius:50%;
  mask-image:radial-gradient(circle, transparent 15%, #000 18%, #000 55%, transparent 57%);
  -webkit-mask-image:radial-gradient(circle, transparent 15%, #000 18%, #000 55%, transparent 57%);
  animation:spin 7s linear infinite;
  z-index:6;
}
@keyframes diskshift{
  from{ transform:translate(-50%,-50%) rotate(-16deg) scale(.98) }
  to{ transform:translate(-50%,-50%) rotate(-9deg) scale(1.04) }
}

/* rail HUD */
.rail__hud{
  position:absolute;
  left:var(--pad); right:var(--pad);
  bottom:clamp(18px,3vh,32px);
  z-index:10;
  display:flex;
  align-items:center;
  gap:24px;
  border-top:1px solid var(--line);
  padding-top:14px;
}
.rail__count{ display:flex; align-items:baseline; gap:4px; font-family:var(--font-mono); }
.rail__count b{ font-weight:400; font-size:22px; color:var(--accent); letter-spacing:-.04em; font-variant-numeric:tabular-nums; }
.rail__count span{ font-size:8px; color:var(--dim); }
.rail__bars{ display:flex; gap:6px; flex:1; max-width:380px; }
.rail__bars span{
  height:2px;
  flex:1;
  background:rgba(255,255,255,.12);
  position:relative;
  overflow:hidden;
}
.rail__bars span.is-active{ background:rgba(var(--accent-rgb),.25); }
.rail__bars span.is-active::after{
  content:"";
  position:absolute;
  inset:0;
  background:var(--accent);
  transform-origin:0 50%;
  animation:barfill .6s var(--ease) forwards;
}
@keyframes barfill{ from{ transform:scaleX(0) } to{ transform:scaleX(1) } }
.rail__hint{
  display:flex;
  align-items:center;
  gap:10px;
  font-family:var(--font-mono);
  font-size:7px;
  letter-spacing:.16em;
  color:var(--dim);
}
.rail__hintline{
  display:block;
  width:40px; height:1px;
  background:rgba(255,255,255,.18);
  position:relative;
  overflow:hidden;
}
.rail__hintline::after{
  content:"";
  position:absolute;
  inset:0;
  background:var(--accent);
  transform:translateX(-100%);
  animation:hintslide 2.6s var(--ease) infinite;
}
@keyframes hintslide{ 0%{transform:translateX(-100%)} 55%,100%{transform:translateX(100%)} }

/* ═══════════════════════════ NUMBERS ════════════════════════════ */
.numbers{
  position:relative;
  padding:clamp(90px,13vh,160px) var(--pad);
  background:linear-gradient(180deg, #05060a, #07080e 40%, #05060a);
}
.numbers__grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
  margin-top:clamp(46px,8vh,90px);
}
.number-cell{
  padding:clamp(24px,3.4vw,46px) clamp(16px,2.2vw,30px);
  border-left:1px solid var(--line);
  position:relative;
  transition:background .45s;
}
.number-cell:first-child{ border-left:0; }
.number-cell:hover{ background:rgba(var(--accent-rgb),.02); }
.number-cell__value{
  display:flex;
  align-items:flex-end;
  gap:5px;
  font-family:var(--font-display);
  font-weight:550;
  font-size:clamp(2.5rem,5.1vw,5.5rem);
  line-height:.82;
  letter-spacing:-.055em;
  font-variant-numeric:tabular-nums;
}
.number-cell__value span{ display:inline-block; }
.number-cell__value i{
  font-family:var(--font-mono);
  font-style:normal;
  font-size:clamp(8px,.75vw,10px);
  letter-spacing:.06em;
  color:var(--accent);
  padding-bottom:.6em;
}
.number-cell__label{
  display:block;
  margin-top:22px;
  font-family:var(--font-mono);
  font-size:7.5px;
  letter-spacing:.16em;
  color:var(--ink-soft);
}
.number-cell p{
  margin-top:8px;
  font-size:10.5px;
  color:var(--dim);
}
.numbers__quote{
  margin:clamp(80px,12vh,150px) auto 10px;
  max-width:1100px;
  text-align:center;
  position:relative;
}
.quote-mark{
  display:block;
  font-family:var(--font-serif);
  font-size:clamp(4rem,8vw,8rem);
  line-height:.4;
  color:var(--accent);
  opacity:.5;
  margin-bottom:26px;
}
.numbers__quote blockquote{
  font-family:var(--font-display);
  font-weight:500;
  font-size:clamp(1.8rem,4.2vw,4.3rem);
  line-height:1.06;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.numbers__quote blockquote em{
  font-family:var(--font-serif);
  font-style:italic;
  font-weight:400;
  color:var(--accent);
}
.quote-cite{
  display:block;
  margin-top:30px;
  font-family:var(--font-mono);
  font-size:7px;
  letter-spacing:.2em;
  color:var(--dim);
}

/* ═════════════════════════════ FOOTER ═══════════════════════════ */
.footer{
  position:relative;
  padding:clamp(90px,13vh,160px) var(--pad) 0;
  overflow:hidden;
  background:#04050a;
  border-top:1px solid var(--line);
}
.footer__glow{
  position:absolute;
  left:50%; bottom:-30%;
  width:120vw; height:80vh;
  transform:translateX(-50%);
  background:radial-gradient(ellipse at 50% 100%, rgba(var(--accent-rgb),.18), rgba(var(--accent-2-rgb),.08) 38%, transparent 68%);
  filter:blur(30px);
  pointer-events:none;
}
.section-head--footer{ position:relative; z-index:2; }
.footer__cta{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:clamp(30px,6vw,100px);
  margin-top:clamp(50px,9vh,110px);
}
.footer__eyebrow{
  font-family:var(--font-mono);
  font-size:8px;
  letter-spacing:.2em;
  color:var(--muted);
  text-transform:uppercase;
}
.footer__headline h2{
  margin-top:22px;
  font-size:clamp(3rem,9.2vw,10.5rem);
  line-height:.82;
  letter-spacing:-.055em;
}
.footer__mail{
  display:inline-flex;
  align-items:center;
  gap:14px;
  margin-top:clamp(30px,5vh,52px);
  font-family:var(--font-mono);
  font-size:clamp(10px,1vw,13px);
  letter-spacing:.06em;
  color:var(--ink-soft);
  border-bottom:1px solid var(--line);
  padding-bottom:8px;
  transition:color .3s, border-color .3s;
}
.footer__mail span{ color:var(--accent); font-size:15px; }
.footer__mail:hover{ color:var(--accent); border-color:var(--accent); }

.orb-cta{
  position:relative;
  flex:none;
  width:clamp(150px,15vw,205px);
  aspect-ratio:1;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.16);
  display:grid;
  place-items:center;
  background:rgba(var(--accent-rgb),.035);
  transition:background .5s, border-color .5s, color .5s;
  margin-bottom:6px;
  overflow:hidden;
}
.orb-cta::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:50%;
  background:radial-gradient(circle at 50% 50%, rgba(var(--accent-rgb),.18), transparent 66%);
  opacity:.5;
  transition:opacity .5s;
}
.orb-cta:hover{ background:var(--accent); border-color:var(--accent); color:#080a08; }
.orb-cta:hover::before{ opacity:0; }
.orb-cta__text{
  position:absolute;
  inset:6%;
  width:88%; height:88%;
  animation:spin 26s linear infinite;
}
.orb-cta__text text{
  font-family:var(--font-mono);
  font-size:8.2px;
  letter-spacing:2.2px;
  fill:var(--accent);
  transition:fill .4s;
}
.orb-cta:hover .orb-cta__text text{ fill:#080a08; }
.orb-cta__center{
  position:relative;
  z-index:2;
  font-family:var(--font-mono);
  font-size:clamp(7px,.7vw,9px);
  line-height:1.55;
  letter-spacing:.18em;
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
}
.orb-cta__center span{ font-size:16px; color:var(--accent); transition:color .4s, transform .4s var(--ease); }
.orb-cta:hover .orb-cta__center span{ color:#080a08; transform:rotate(45deg); }

.footer__info{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr 1fr;
  gap:clamp(20px,4vw,60px);
  border-top:1px solid var(--line);
  margin-top:clamp(70px,10vh,120px);
  padding:clamp(28px,4vh,44px) 0;
}
.footer__col p{
  margin-top:16px;
  font-size:11.5px;
  line-height:1.75;
  color:var(--muted);
}
.footer__links{ display:flex; flex-direction:column; margin-top:14px; }
.footer__links a{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  color:var(--muted);
  line-height:1.9;
  transition:color .3s, transform .3s var(--ease);
  width:fit-content;
}
.footer__links a span{ color:var(--dim); font-size:10px; transition:color .3s; }
.footer__links a:hover{ color:var(--ink); transform:translateX(3px); }
.footer__links a:hover span{ color:var(--accent); }
.footer__clock{
  font-family:var(--font-display) !important;
  font-size:clamp(1.6rem,2.4vw,2.4rem) !important;
  letter-spacing:-.02em;
  color:var(--ink) !important;
  line-height:1 !important;
  font-variant-numeric:tabular-nums;
  margin-top:16px !important;
}
.footer__status{
  display:flex;
  align-items:center;
  gap:8px;
  font-family:var(--font-mono);
  font-size:7px !important;
  letter-spacing:.14em;
  color:var(--dim) !important;
  margin-top:12px !important;
}
.footer__status .pulse-dot{ width:4px; height:4px; }
.footer__col--mark{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
}
.footer__bigmark{
  font-family:var(--font-display);
  font-size:clamp(4rem,7vw,7rem);
  line-height:.7;
  color:transparent;
  -webkit-text-stroke:1px rgba(var(--accent-rgb),.3);
}
.footer__col--mark > span:last-child{
  font-family:var(--font-mono);
  font-size:7px;
  letter-spacing:.18em;
  color:var(--dim);
}
.footer__bar{
  position:relative;
  z-index:2;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid var(--line-soft);
  padding:18px 0 26px;
  font-family:var(--font-mono);
  font-size:7px;
  letter-spacing:.14em;
  color:var(--dim);
  flex-wrap:wrap;
}
.footer__palettehint b{ color:var(--accent); font-weight:400; }
.footer__top{ display:inline-flex; align-items:center; gap:8px; color:var(--muted); transition:color .3s; }
.footer__top span{ color:var(--accent); }
.footer__top:hover{ color:var(--accent); }

/* ───────────────────────── REVEAL STATES ─────────────────────── */
[data-reveal]{
  opacity:0;
  transform:translateY(30px);
  transition:opacity 1s var(--ease), transform 1s var(--ease);
  transition-delay:var(--delay,0s);
}
[data-reveal].is-in{ opacity:1; transform:none; }
.section-head[data-reveal]{ transform:translateY(14px); }

/* ─────────────────────────── ANIMATIONS ───────────────────────── */
@keyframes spin{ to{ transform:rotate(360deg) } }

/* ═════════════════════════════ RESPONSIVE ═══════════════════════ */
@media (max-width: 1280px){
  .side-nav{ display:none; }
  .core__telemetry{ display:none; }
  .rail__intro{ max-width:290px; }
  .rail__track{ padding-left:clamp(300px,34vw,470px); }
}

@media (max-width: 1100px){
  .nav__links{ display:none; }
  .menu-btn{ display:flex; }
  .nav__status span{ display:none; }
  .bento{ grid-template-columns:repeat(6,1fr); grid-auto-rows:224px; }
  .card--a,.card--b{ grid-column:span 6; grid-row:span 2; }
  .card--c,.card--d,.card--e{ grid-column:span 2; grid-row:span 2; }
  .card__bottom h3{ font-size:1.55rem; }
  .card__bottom p{ font-size:10.5px; }
  .card--c .card__bottom p,.card--d .card__bottom p,.card--e .card__bottom p{ display:none; }
  .core__copy{ bottom:auto; top:24vh; }
  .reactor{ width:min(78vw,760px); right:-14vw; opacity:.85; }
  .rail__intro{ display:none; }
  .rail__track{ padding-left:var(--pad); }
  .panel{ width:70vw; }
  .footer__info{ grid-template-columns:1fr 1fr; }
  .footer__col--mark{ align-items:flex-start; }
}

@media (max-width: 900px){
  :root{ --navh:70px; }
  .frame{ display:none; }
  .hero{ min-height:100svh; padding-top:calc(var(--navh) + 18px); }
  .hero__meta-r span:nth-child(3),.hero__meta-r span:nth-child(4){ display:none; }
  .hero__meta{ font-size:7px; letter-spacing:.12em; }
  .hero__meta-l span:nth-child(3),.hero__meta-l span:nth-child(4){ display:none; }
  .orb{ width:min(96vw, 680px); right:-30vw; top:39%; opacity:.62; }
  html.is-loaded .orb{ opacity:.62; }
  .hero__content{ padding-top:clamp(80px,18vh,200px); }
  .hero__title{ font-size:clamp(4.6rem,23vw,14rem); letter-spacing:-.07em; }
  .hero__row{ flex-direction:column; align-items:flex-start; gap:26px; }
  .hero__lede{ max-width:440px; }
  .hero__bar{ flex-wrap:wrap; gap:14px; row-gap:10px; }
  .hero__bar-item--right{ display:none; }
  .hero__stats{ order:3; width:100%; }
  .orb__tag--c{ display:none; }
  .orb__tag{ display:none; }
  .ticker{ padding:15px 0 12px; }
  .section{ padding:clamp(70px,10vh,110px) var(--pad); }
  .section-head{ grid-template-columns:auto auto 1fr; }
  .section-head__meta{ display:none; }
  .manifesto__foot{ grid-template-columns:1fr; gap:46px; }
  .manifesto__statement{ font-size:clamp(1.85rem,6.5vw,3.2rem); }
  .capabilities__intro{ flex-direction:column; align-items:flex-start; gap:24px; }
  .bento{ display:flex; flex-direction:column; }
  .card{ min-height:440px; }
  .card--c,.card--d,.card--e{ min-height:390px; }
  .card__bottom h3{ font-size:clamp(1.7rem,6vw,2.2rem); }
  .card__bottom p{ display:block !important; font-size:11.5px; }
  .stack-strip{ align-items:flex-start; flex-direction:column; gap:12px; }
  .core{ height:280vh; }
  .core__copy{ top:18vh; right:var(--pad); max-width:none; }
  .core__copy > p{ max-width:300px; }
  .core__copy h2{ font-size:clamp(2.3rem,8vw,3.2rem); }
  .reactor{ width:135vw; right:-45vw; top:48%; opacity:.55; }
  .core__steps{ grid-template-columns:1fr; gap:10px; }
  .core-step{ display:none; }
  .core-step.is-active{ display:flex; }
  .core-step p{ max-width:none; }
  .rail{ height:auto; }
  .rail__sticky{ position:static; height:auto; padding:0 0 80px; overflow:visible; }
  .section-head--rail{ position:static; margin:0 var(--pad); }
  .rail__viewport{ position:static; display:block; margin-top:70px; }
  .rail__track{
    transform:none !important;
    overflow-x:auto;
    overflow-y:hidden;
    padding:0 var(--pad) 10px;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    gap:14px;
  }
  .rail__track::-webkit-scrollbar{ display:none; }
  .panel{ width:82vw; height:min(66vh,540px); scroll-snap-align:center; }
  .panel__bottom p{ max-width:80%; }
  .rail__hud{ position:static; margin:24px var(--pad) 0; }
  .rail__hint{ display:none; }
  .numbers__grid{ grid-template-columns:1fr 1fr; }
  .number-cell:nth-child(3){ border-left:0; }
  .number-cell{ border-top:1px solid var(--line); }
  .number-cell:nth-child(1),.number-cell:nth-child(2){ border-top:0; }
  .footer__cta{ flex-direction:column; align-items:flex-start; gap:50px; }
  .orb-cta{ align-self:flex-end; margin-top:-20px; }
  .footer__headline h2{ font-size:clamp(2.8rem,11vw,6rem); }
  .footer__bar{ justify-content:flex-start; gap:12px 22px; }
  .footer__palettehint{ display:none; }
  .preloader__word{ letter-spacing:.28em; padding-left:.28em; }
}

@media (max-width: 620px){
  .nav__status{ display:none; }
  .nav__right{ gap:12px; }
  .brand__txt i{ display:none; }
  .hero__title{ font-size:24vw; }
  .hero__actions{ width:100%; }
  .btn{ flex:1; min-width:0; padding-left:16px; font-size:8px; gap:8px; }
  .btn__ico{ width:27px; height:27px; }
  .hero__bar{ font-size:6.5px; }
  .hero__stats{ gap:20px; font-size:6.5px; }
  .hero__meta-r{ display:none; }
  .orb{ width:min(140vw, 640px); right:-52vw; top:36%; }
  .manifesto__statement{ margin-top:44px; }
  .manifesto__glyph{ display:none; }
  .principle{ gap:14px; }
  .principle p{ font-size:.95rem; }
  .card{ min-height:420px; }
  .card__surface{ padding:19px 18px 18px; }
  .art-orb{ width:88%; right:-14%; }
  .core__copy{ top:15vh; }
  .core__copy > p{ display:none; }
  .core__meter{ margin-top:20px; max-width:240px; }
  .reactor{ width:160vw; right:-62vw; }
  .core__steps{ left:var(--pad); right:var(--pad); }
  .core-step p{ font-size:10px; }
  .panel{ width:88vw; height:min(68vh,540px); }
  .panel__bottom{ padding:20px; }
  .panel__bottom p{ display:none; }
  .panel__corner{ display:none; }
  .numbers__grid{ grid-template-columns:1fr 1fr; }
  .number-cell{ padding:22px 14px; }
  .number-cell__value{ font-size:2.2rem; }
  .number-cell p{ display:none; }
  .number-cell__label{ margin-top:14px; font-size:6.5px; }
  .number-cell__value i{ font-size:7px; }
  .footer__info{ grid-template-columns:1fr 1fr; gap:30px 20px; }
  .footer__col--mark{ display:none; }
  .footer__bar span:first-child{ width:100%; }
  .menu__foot{ flex-direction:column; gap:8px; }
  .preloader__top span:last-child{ display:none; }
  .preloader__mark{ width:62px; height:62px; font-size:24px; }
}

/* ═════════════════════════ REDUCED MOTION ═══════════════════════ */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
    scroll-behavior:auto !important;
  }
  .veil,.orb{ opacity:1; }
  [data-reveal],.card{ opacity:1 !important; transform:none !important; }
  .hero__title .ch{ transform:none !important; opacity:1 !important; }
  .hero__meta,.hero__kicker,.hero__row,.hero__bar,.nav{ opacity:1 !important; transform:none !important; }
  .manifesto__statement .w{ opacity:1 !important; }
  .noise{ display:none; }
}
