/* Matrix theme (black and gold): loaded after style.css and overrides its tokens.
   Remove this file's <link> to go back to the navy and gold look. */
:root {
  --ink: #000000;
  --navy: #070604;
  --panel: #0e0b06;
  --panel-2: #16110a;
  --line: #2a2214;
  --line-2: #46381d;
  --gold: #e8b84a;
  --gold-2: #ffd77a;
  --gold-ink: #1a1203;
  --text: #f5ecd8;
  --muted: #c9bb9a;
  --dim: #908367;
  --long: #4fd68e;
  --short: #ff6b6b;
  --display: "Orbitron", "Archivo", system-ui, sans-serif;
}

/* CRT scanlines over everything, very faint */
body::after {
  content: ""; position: fixed; inset: 0; pointer-events: none; z-index: 100;
  background: repeating-linear-gradient(180deg, rgba(0,0,0,0) 0 2px, rgba(0,0,0,.18) 2px 3px);
  mix-blend-mode: multiply;
}

h1, h2, .brand, .offer .price b, .facts b, .golden b { letter-spacing: 0.02em; font-stretch: normal; }
.h-xl { font-weight: 900; font-size: clamp(38px, 6.6vw, 82px); line-height: 1.04; letter-spacing: 0.01em; }
.h-lg { font-weight: 800; font-size: clamp(28px, 4vw, 46px); }
.h-md { font-size: clamp(22px, 2.6vw, 28px); }
.hero h1 .gold, .golden b, .cta-band .gold { text-shadow: 0 0 18px rgba(232,184,74,.55), 0 0 2px rgba(232,184,74,.9); }
.eyebrow { text-shadow: 0 0 10px rgba(232,184,74,.5); }

/* Digital rain behind the hero */
.hero { isolation: isolate; }
#rain { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; opacity: .5; }
.hero::before { background: radial-gradient(closest-side, rgba(232,184,74,.12), transparent 70%); }
.hero::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, rgba(0,0,0,.92) 0%, rgba(0,0,0,.55) 55%, rgba(0,0,0,.25) 100%); pointer-events: none; }
@media (max-width: 960px) { .hero::after { background: linear-gradient(180deg, rgba(0,0,0,.88), rgba(0,0,0,.55)); } }

/* Glow instead of gold shine */
.btn-gold { box-shadow: 0 0 0 1px rgba(232,184,74,.4), 0 0 26px -4px rgba(232,184,74,.6); }
.btn-gold:hover { box-shadow: 0 0 0 1px rgba(232,184,74,.6), 0 0 36px -2px rgba(232,184,74,.8); }
.btn-line:hover { box-shadow: 0 0 20px -6px rgba(232,184,74,.6); }
.brand-mark { box-shadow: 0 0 16px rgba(232,184,74,.55); }
.terminal { box-shadow: 0 0 0 1px rgba(232,184,74,.12) inset, 0 0 60px -20px rgba(232,184,74,.35), 0 40px 80px -40px rgba(0,0,0,.9); }
.chip.gold { border-color: rgba(232,184,74,.45); box-shadow: 0 0 12px -4px rgba(232,184,74,.6); }
.offer.featured { background: linear-gradient(180deg, #1d160a, var(--panel-2)); border-color: rgba(232,184,74,.55); box-shadow: 0 0 60px -24px rgba(232,184,74,.5); }
.golden { background: linear-gradient(135deg, rgba(232,184,74,.14), rgba(232,184,74,.03)); border-color: rgba(232,184,74,.45); }
.locked { background: linear-gradient(180deg, #1d160a, var(--panel)); border-color: rgba(232,184,74,.5); }
.cta-band::before { background: radial-gradient(closest-side, rgba(232,184,74,.14), transparent 70%); }
.card.hover:hover, .shot:hover { box-shadow: 0 0 30px -12px rgba(232,184,74,.5); border-color: var(--line-2); }
.check-list li::before { background: rgba(232,184,74,.12) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23e8b84a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 11px no-repeat; }
.check input:checked + span { text-decoration-color: rgba(232,184,74,.6); }
.ladder div.on { background: rgba(232,184,74,.1); box-shadow: 0 0 18px -6px rgba(232,184,74,.6); }
.module .num { -webkit-text-stroke-color: #4a3b1c; }
.flow-dot { box-shadow: 0 0 0 4px var(--ink); }
.flow-step:hover .flow-dot { box-shadow: 0 0 0 4px var(--ink), 0 0 22px rgba(232,184,74,.6); }
.toc a.active { text-shadow: 0 0 10px rgba(232,184,74,.5); }
.nav { background: rgba(0,0,0,.82); }
.toc-mobile { background: rgba(0,0,0,.92); }

/* Blinking cursor after the hero headline */
.hero h1::after { content: "_"; color: var(--gold); margin-left: 4px; animation: blink 1.1s steps(1) infinite; text-shadow: 0 0 14px rgba(232,184,74,.7); }
@keyframes blink { 50% { opacity: 0; } }

@media (prefers-reduced-motion: reduce) { #rain { display: none; } }
