:root {
  --ink: #0a0e14;
  --asphalt: #0d1219;

  --paper: #e9edf2;
  --paper-dim: #b7c0cc;
  --muted: #8590a0;
  --faint: #75808f;

  --blue: #d4af37;

  --blue-pale: #e5c65c;
  --red: #e23b4d;
  --red-pale: #ff8b96;

  --rule: rgba(233, 237, 242, .13);
  --rule-soft: rgba(233, 237, 242, .06);
  --rule-hard: rgba(233, 237, 242, .28);

  --font-display: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-ui: var(--font-display);
  --font-mono: ui-monospace, "SF Mono", "Cascadia Mono", Consolas, "Roboto Mono", Menlo, monospace;
  --font-wordmark: "Bodoni 72", Didot, "Times New Roman", serif;
  --cream: #f0e6cd;

  --t-h2: clamp(29px, 4.2vw, 56px);

  --label: 700 11px/1 var(--font-mono);
  --track-label: .2em;

  --maxw: 1280px;
  --gutter: clamp(20px, 5vw, 68px);
  --block: clamp(64px, 8.5vw, 132px);

  --ease: cubic-bezier(.22, .7, .2, 1);
  --ease-out: cubic-bezier(.16, 1, .3, 1);

  --z-nav: 100;

  /* Landing v2 (usavionix-style film). Additive only: 404.html uses the tokens above. */
  --sh-ink-0: #07080a;
  --sh-ink-1: #0d0f13;
  --sh-ink-2: #14171c;
  --sh-ink-3: #1d2127;
  --sh-grid: rgba(255, 255, 255, .06);
  --sh-line: rgba(255, 255, 255, .10);
  --sh-line-2: rgba(255, 255, 255, .18);
  --sh-line-strong: rgba(255, 255, 255, .72);
  --sh-fg: #f3f2ee;
  --sh-fg-2: rgba(243, 242, 238, .70);
  --sh-fg-3: rgba(243, 242, 238, .54);
  --sh-gold: #d4af37;
  --sh-gold-hi: #e5c65c;
  --sh-gold-glow: rgba(212, 175, 55, .32);
  --sh-teal: #5fd4c4;
  --sh-teal-glow: rgba(95, 212, 196, .24);
  --sh-red: #e23b4d;
  --sh-red-glow: rgba(226, 59, 77, .26);
  --sh-glass: rgba(255, 255, 255, .08);
  --sh-glass-line: rgba(255, 255, 255, .16);
  --sh-watermark: #23262c;
  --sh-font-sans: var(--font-display);
  --sh-font-num: "Bodoni Moda", "Playfair Display", serif;
  --sh-font-mono: var(--font-mono);
  --sh-gutter: clamp(16px, 2.4vw, 32px);
  --sh-maxw: 1376px;
  --sh-ease-out: cubic-bezier(.16, 1, .3, 1);
  --sh-ease-snap: cubic-bezier(.3, 1.4, .5, 1);
  --sh-dur-1: 160ms;
  --sh-dur-2: 320ms;
  --sh-dur-3: 640ms;
  --sh-dur-count: 1200ms;

  /* R3 (landing-v2-spec-r3.md 11): the persistent stage. The z-index values
     keep the existing chrome order (dock 55 < nav 60 < menu 90 < loader 200
     < theatre 400) instead of the spec's 10 to 40 numbers; the order is the
     same: stage < scrim < content < HUD < dock < nav < menu < loader. */
  --sh-sky-0: #0b0f16;
  --sh-sky-1: #121a28;
  --sh-mood-dusk: #3a2a3f;
  --sh-mood-dawn: #3b2f2a;
  --sh-sodium: #f2a93b;
  --sh-sodium-glow: rgba(242, 169, 59, .28);
  --sh-neon-teal: #7ff0e0;
  --sh-neon-red: #ff5a6a;
  --sh-police-blue: #3d7bff;
  --sh-scrim: rgba(7, 8, 10, .72);
  --sh-scrim-soft: rgba(7, 8, 10, .45);
  --sh-t-num-xxl: 400 clamp(72px, 15vw, 260px)/.88 var(--sh-font-num);
  --sh-t-orbit: 600 12px/1 var(--sh-font-mono);
  --sh-z-stage: 0;
  --sh-z-scrim: 1;
  --sh-z-content: 2;
  --sh-z-hud: 50;
  --sh-z-dock: 55;
  --sh-z-nav: 60;
  --sh-z-menu: 90;
  --sh-z-loader: 200;
  --sh-z-theatre: 400;
  --sh-nav-h: 64px;
  --sh-dur-scene: 700ms;
  --sh-ease-scene: cubic-bezier(.65, 0, .35, 1);
  --sh-dur-pulse: 600ms;
  --sh-dur-flip: 360ms;
}
@media (max-width: 767px) and (orientation: portrait) { :root { --sh-nav-h: 56px; } }
@media (max-height: 500px) and (orientation: landscape) { :root { --sh-nav-h: 48px; } }
