
    :root {
      --black: #050505;
      --ink: #0b0b0b;
      --charcoal: #151515;
      --paper: #efe7d8;
      --paper-deep: #ded2bd;
      --white: #f9f7ef;
      --muted: #a9a9a9;
      --yellow: #ffe600;
      --yellow-dark: #ffcc00;
      --pink: #ff1f8f;
      --pink-dark: #ab005d;
      --line: rgba(255, 255, 255, 0.16);
      --max: 1260px;
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      background: var(--black);
      color: var(--white);
      font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
      line-height: 1.45;
      overflow-x: hidden;
    }
    body::before {
      content: "";
      position: fixed;
      inset: 0;
      pointer-events: none;
      z-index: 20;
      opacity: 0.18;
      background:
        radial-gradient(circle at 15% 12%, rgba(255,255,255,0.18) 0 1px, transparent 1.5px),
        radial-gradient(circle at 85% 42%, rgba(255,255,255,0.12) 0 1px, transparent 1.5px),
        repeating-linear-gradient(90deg, rgba(255,255,255,0.03) 0 1px, transparent 1px 4px);
      background-size: 46px 46px, 68px 68px, 100% 100%;
      mix-blend-mode: screen;
    }
    a { color: inherit; text-decoration: none; }
    .page {
      position: relative;
      min-height: 100vh;
      background:
        radial-gradient(circle at 78% 14%, rgba(255,31,143,0.14), transparent 23%),
        radial-gradient(circle at 8% 24%, rgba(255,230,0,0.12), transparent 19%),
        linear-gradient(180deg, #040404 0%, #101010 42%, #050505 100%);
    }
    /* NAV -- no sticky, scrolls normally */
    .nav {
      position: relative;
      z-index: 10;
      background: rgba(2,2,2,0.94);
      border-bottom: 1px solid rgba(255,255,255,0.14);
      backdrop-filter: blur(10px);
    }
    .nav-inner {
      max-width: var(--max);
      margin: 0 auto;
      min-height: 76px;
      padding: 0 28px;
      display: grid;
      grid-template-columns: auto 1fr auto;
      align-items: center;
      gap: 28px;
    }
    .logo {
      position: relative;
      display: inline-flex;
      align-items: center;
      font-family: Impact, "Arial Black", sans-serif;
      font-size: 25px;
      line-height: 1;
      text-transform: uppercase;
      color: var(--white);
      isolation: isolate;
      white-space: nowrap;
    }
    .logo::after {
      content: "";
      position: absolute;
      left: -7px; right: -9px; bottom: -7px;
      height: 12px;
      z-index: -1;
      background: var(--pink);
      transform: rotate(-2deg);
      clip-path: polygon(0 25%, 8% 5%, 22% 29%, 46% 10%, 74% 24%, 100% 3%, 96% 72%, 75% 61%, 54% 82%, 27% 67%, 5% 91%);
    }
    .nav-links {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 20px;
      color: #d8d8d8;
      font-weight: 900;
      font-size: 12px;
      text-transform: uppercase;
    }
    .nav-links a { position: relative; padding-top: 4px; }
    .nav-links a::after {
      content: "";
      position: absolute;
      left: 0; right: 0; bottom: -7px;
      height: 3px;
      background: var(--yellow);
      transform: scaleX(0);
      transform-origin: left;
      transition: transform 160ms ease;
    }
    .nav-links a:hover::after { transform: scaleX(1); }
    .button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      min-height: 48px;
      padding: 13px 20px 12px;
      border: 0;
      color: #050505;
      background: var(--yellow);
      font-weight: 1000;
      text-transform: uppercase;
      font-size: 13px;
      line-height: 1;
      box-shadow: 5px 5px 0 #000, 0 0 0 1px rgba(0,0,0,0.5);
      cursor: pointer;
      white-space: nowrap;
      transition: box-shadow 0.25s ease;
    }
    .button span { font-size: 17px; transform: translateY(-1px); }
    .button:hover {
      box-shadow: 5px 5px 0 #000, 0 0 0 1px rgba(0,0,0,0.5), 0 0 20px rgba(255,31,143,0.5), 0 0 40px rgba(255,31,143,0.25);
    }
    /* HAMBURGER */
    .hamburger {
      display: none;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 5px;
      width: 44px; height: 44px;
      background: none;
      border: none;
      cursor: pointer;
      padding: 8px;
      order: 2;
    }
    .hamburger span {
      display: block;
      width: 24px; height: 3px;
      background: var(--yellow);
      border-radius: 1px;
      transition: all 180ms ease;
      transform-origin: center;
    }
    .hamburger.open span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
    .hamburger.open span:nth-child(2) { opacity: 0; transform: scaleX(0); }
    .hamburger.open span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
    .mobile-menu {
      display: none;
      position: absolute;
      top: 100%;
      left: 0; right: 0;
      z-index: 9;
      background: rgba(5,5,5,0.98);
      border-bottom: 2px solid var(--yellow);
      flex-direction: column;
    }
    .mobile-menu.open { display: flex; }
    .mobile-menu a {
      display: block;
      padding: 18px 28px;
      color: var(--white);
      font-weight: 900;
      font-size: 15px;
      text-transform: uppercase;
      letter-spacing: 0.04em;
      border-bottom: 1px solid rgba(255,255,255,0.1);
      transition: color 120ms ease, background 120ms ease;
    }
    .mobile-menu a:hover { color: var(--yellow); background: rgba(255,230,0,0.06); }
    .footer-strip {
      min-height: 72px;
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 12px;
      padding: 22px 28px;
      border-top: 1px solid rgba(255, 255, 255, 0.14);
      color: var(--muted);
      background: #030303;
      font-size: 13px;
      font-weight: 900;
      text-transform: uppercase;
      text-align: center;
    }
    .footer-strip p { margin: 0; max-width: 760px; }
    .footer-tag { line-height: 1.65; }
    /* The email is one unbreakable 240px string. As a flex item it refused to shrink
       below its min-content width, pushing every page 9px wide at 320px. Keep
       min-width and overflow-wrap here or that overflow comes back. */
    .legal-links {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: .4rem 1.4rem;
      min-width: 0;
    }
    .legal-links a { color: var(--white); overflow-wrap: anywhere; }
    .legal-links a:hover,
    .legal-links a:focus-visible { color: var(--yellow); text-decoration: underline; }
    @media (max-width: 1040px) {
      .nav-inner { grid-template-columns: 1fr auto; }
      .nav-links { display: none; }
      .hamburger { display: flex; }
    }
    @media (max-width: 700px) {
      .nav-inner { padding: 0 16px; }
      .button { min-height: 44px; padding: 12px 14px; font-size: 12px; }
    }
    /* === 320PX HEADER CTA FIX: shrink header CTA further so it fits a 320px viewport === */
    @media (max-width: 480px) {
      .nav-inner .button {
        padding: 8px 8px;
        font-size: 10px;
        letter-spacing: 0.02em;
        gap: 0;
        min-height: 36px;
        white-space: normal;
        text-align: center;
      }
      .nav-inner .button span {
        display: none;
      }
    }

    /* ---- ARTICLE PAGE ---- */
    .article-body { background: #050505; padding: 0; }
    .article-container {
      margin: 0 auto;
      padding: 64px 28px 100px;
    }
    .back-link {
      display: inline-block;
      color: #ffe600;
      text-decoration: none;
      font-family: 'Oswald', Impact, sans-serif;
      font-size: 14px;
      letter-spacing: 0.08em;
      margin-bottom: 40px;
    }
    .back-link:hover { text-decoration: underline; }
    .article-container h1 {
      font-family: 'Oswald', Impact, sans-serif;
      font-weight: 700;
      color: #ffe600;
      font-size: clamp(36px, 6vw, 72px);
      line-height: 1.05;
      margin-bottom: 32px;
      margin-top: 0;
    }
    .article-container h2 {
      font-family: 'Oswald', Impact, sans-serif;
      font-weight: 700;
      color: #ffffff;
      font-size: clamp(24px, 4vw, 40px);
      margin: 56px 0 20px;
    }
    .article-container h3 {
      font-family: 'Oswald', Impact, sans-serif;
      font-weight: 700;
      color: #ffe600;
      font-size: 22px;
      margin: 40px 0 16px;
    }
    .article-container h4 {
      font-family: 'Oswald', Impact, sans-serif;
      font-weight: 700;
      color: #ffffff;
      font-size: 18px;
      margin: 32px 0 12px;
    }
    .article-container p {
      font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
      font-size: 20px;
      line-height: 1.7;
      color: #d4cfc6;
      margin-bottom: 24px;
      overflow-wrap: anywhere;
    }
    .article-container a { color: #ff1f8f; text-decoration: none; }
    .article-container a:hover { text-decoration: underline; }
    .article-container img {
      width: 100%;
      max-width: 380px;
      margin: 32px auto;
      display: block;
      border-radius: 4px;
    }
    .article-container blockquote {
      border-left: 4px solid #ff1f8f;
      padding-left: 20px;
      margin: 32px 0;
      color: #a8a39b;
      font-style: italic;
    }
    .article-container ul,
    .article-container ol {
      font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
      font-size: 20px;
      line-height: 1.7;
      color: #d4cfc6;
      padding-left: 28px;
      margin-bottom: 24px;
    }
    .article-container li { margin-bottom: 8px; }
    .article-container strong { color: #ffffff; }
    .article-container hr {
      border: none;
      border-top: 1px solid rgba(255,255,255,0.12);
      margin: 48px 0;
    }
    .article-container .footnotes {
      font-size: 14px;
      color: #6b6560;
      border-top: 1px solid #222;
      padding-top: 32px;
      margin-top: 64px;
    }
    .article-container sup a { color: #ff1f8f; font-size: 12px; }
    .article-container code {
      background: #1a1a1a;
      color: #ffe600;
      padding: 2px 6px;
      border-radius: 3px;
      font-size: 15px;
    }
    .article-container pre {
      background: #111;
      border: 1px solid #222;
      padding: 20px;
      overflow-x: auto;
      border-radius: 4px;
      margin-bottom: 24px;
    }
    .article-container pre code { background: none; padding: 0; }
    @media (max-width: 700px) {
      .article-container { padding: 40px 18px 72px; }
      .article-container h1 { font-size: clamp(28px, 8vw, 48px); }
    }
  