  :root { --bg:#050805; --panel:#0a120a; --green:#39ff6a; --dim:#1f8a3a; --text:#c8f5d2; --red:#ff5a5a; }
  * { box-sizing:border-box; margin:0; padding:0; }
  html { background:var(--bg); scroll-behavior:smooth; }
  body { background:var(--bg); color:var(--text); font:16px/1.7 "IBM Plex Mono", ui-monospace, monospace; }
  body::before { content:""; position:fixed; inset:0; pointer-events:none; z-index:10;
    background:repeating-linear-gradient(to bottom, rgba(0,0,0,.28) 0 1px, transparent 1px 3px); }
  .px { font-family:"Press Start 2P", ui-monospace, monospace; color:var(--green);
    text-shadow:0 0 6px rgba(57,255,106,.7), 0 0 18px rgba(57,255,106,.3); }
  section, header, footer { max-width:760px; margin:0 auto; padding:56px 16px; }
  header { padding-top:72px; text-align:center; }
  .tag { font-size:10px; color:var(--dim); letter-spacing:.1em; }
  h1 { margin-top:22px; font-size:clamp(22px, 6.4vw, 46px); line-height:1.35; }
  .sub { margin:22px auto 0; max-width:560px; font-size:clamp(15px, 3.6vw, 19px); }
  .sub strong { color:var(--green); }
  .reel { margin:36px auto 0; width:min(300px, 80vw); aspect-ratio:9/16; border:2px solid var(--green);
    display:grid; place-items:center; background:var(--panel); box-shadow:0 0 24px rgba(57,255,106,.2); }
  .reel span { font-size:10px; }
  .cta { display:inline-block; margin-top:34px; padding:16px 22px; background:var(--green); color:var(--bg);
    font:12px "Press Start 2P", monospace; text-decoration:none; box-shadow:0 0 18px rgba(57,255,106,.5); }
  .cta:focus-visible, button:focus-visible { outline:3px solid #fff; outline-offset:3px; }
  h2 { font-size:clamp(14px, 3.6vw, 20px); line-height:1.6; margin-bottom:24px; }
  .grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(220px, 1fr)); gap:14px; }
  .card { border:1px solid var(--dim); background:var(--panel); padding:18px; }
  .card b { display:block; color:var(--green); margin-bottom:6px; }
  ol.mods { list-style:none; counter-reset:m -1; border-top:1px solid var(--dim); }
  ol.mods li { counter-increment:m; display:grid; grid-template-columns:3.2em 1fr; gap:8px; padding:14px 0; border-bottom:1px solid var(--dim); }
  ol.mods li::before { content:counter(m, decimal-leading-zero); font:11px "Press Start 2P", monospace; color:var(--green); padding-top:5px; }
  ol.mods li.bonus::before { content:"++"; }
  ol.mods b { color:var(--green); }
  .offer { display:none; border:2px solid var(--green); background:var(--panel); padding:26px 20px; text-align:center;
    box-shadow:0 0 30px rgba(57,255,106,.18); }
  body[data-offer="A"] .offer-A, body[data-offer="B"] .offer-B, body[data-offer="C"] .offer-C { display:block; }
  body:not([data-offer]) .offer-A { display:block; }
  .price { font:clamp(26px, 8vw, 44px) "Press Start 2P", monospace; color:var(--green); margin:14px 0 6px;
    text-shadow:0 0 10px rgba(57,255,106,.6); }
  .was { text-decoration:line-through; color:var(--dim); }
  .offer ul { list-style:none; text-align:left; margin:20px auto 0; max-width:420px; }
  .offer li { padding:6px 0 6px 1.6em; position:relative; }
  .offer li::before { content:">"; position:absolute; left:0; color:var(--green); }
  form { margin:26px auto 0; max-width:420px; display:flex; flex-direction:column; gap:12px; }
  input[type=email] { padding:15px 14px; font:inherit; color:var(--green); background:#050805; border:2px solid var(--green);
    border-radius:0; outline:none; }
  input[type=email]::placeholder { color:var(--dim); }
  input[type=email]:focus { box-shadow:0 0 0 3px rgba(57,255,106,.35); }
  button { padding:16px; font:12px "Press Start 2P", monospace; color:var(--bg); background:var(--green); border:0; cursor:pointer;
    box-shadow:0 0 18px rgba(57,255,106,.5); }
  button[disabled] { opacity:.6; cursor:wait; }
  .hp { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
  .note { margin-top:14px; font-size:13px; color:var(--dim); }
  .msg { min-height:1.7em; margin-top:12px; font-size:14px; color:var(--green); }
  .msg.err { color:var(--red); }
  details { border-bottom:1px solid var(--dim); padding:14px 0; }
  summary { cursor:pointer; color:var(--green); list-style:none; }
  summary::before { content:"+ "; }
  details[open] summary::before { content:"- "; }
  details p { margin-top:8px; }
  footer { text-align:center; font-size:10px; padding-bottom:48px; }
  footer p { margin-top:10px; color:var(--dim); font:12px "IBM Plex Mono", monospace; }
  .cursor { display:inline-block; width:.6em; height:1em; background:var(--green); vertical-align:-.15em; margin-left:.2em; animation:blink 1s steps(1) infinite; }
  @keyframes blink { 50% { opacity:0; } }
  @media (prefers-reduced-motion: reduce) { .cursor { animation:none; } html { scroll-behavior:auto; } }
  /* /learn/<slug> pages (one per Atlas discipline): long names must wrap at 375px. */
  .learn h1 { font-size:clamp(17px, 5.2vw, 38px); overflow-wrap:break-word; hyphens:auto; }
  .learn .tag { line-height:2; }
  .learn .back { font-size:13px; margin-bottom:22px; }
  .learn footer .back { margin-top:18px; }
  .learn .back a { color:var(--green); text-decoration:none; }
  .learn .back a:hover, .learn .back a:focus-visible { text-decoration:underline; }
