  /* One committed visual world: the night city. Every color painted
     explicitly — this page renders identically on any host theme. */
  :root {
    --ink: #0c1210;
    --ink-raised: #131b18;
    --line: #24312c;
    --text: #e8e5da;
    --text-soft: #a8b2aa;
    --text-faint: #6f7b73;
    --brass: #cfa64a;
    --brass-deep: #8a6d1f;
    --green: #5cc2a5;
    --danger: #e08a6d;
  }
  * { box-sizing: border-box; }
  html, body { margin: 0; padding: 0; }
  body {
    background: var(--ink);
    color: var(--text);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;
    line-height: 1.6;
  }
  a { color: var(--brass); }
  a:focus-visible, button:focus-visible, input:focus-visible {
    outline: 2px solid var(--brass); outline-offset: 2px;
  }

  .hero {
    position: relative;
    min-height: 88vh;
    display: flex; flex-direction: column; justify-content: flex-end;
    background: var(--ink) url(/hero_map.png) center 30% / cover no-repeat;
  }
  .hero::after {
    content: ""; position: absolute; inset: 0;
    background: linear-gradient(180deg, rgba(12,18,16,.25) 0%, rgba(12,18,16,.1) 45%, rgba(12,18,16,.92) 82%, var(--ink) 100%);
  }
  .hero-inner {
    position: relative; z-index: 1;
    max-width: 62rem; margin: 0 auto; width: 100%;
    padding: 0 24px 9vh;
  }
  .eyebrow {
    font-size: .74rem; letter-spacing: .22em; text-transform: uppercase;
    color: var(--brass); font-weight: 650;
  }
  h1 {
    font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
    font-size: clamp(2.6rem, 7vw, 4.6rem);
    font-weight: 600; line-height: 1.04; margin: .35rem 0 .7rem;
    text-wrap: balance;
  }
  .dek {
    font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
    font-size: clamp(1.05rem, 2.2vw, 1.35rem);
    color: var(--text-soft); max-width: 44ch; margin: 0 0 1.6rem;
  }
  .cta-row { display: flex; gap: .9rem; flex-wrap: wrap; }
  .btn {
    display: inline-block; padding: .72rem 1.5rem; border-radius: 4px;
    font-weight: 650; font-size: .98rem; text-decoration: none;
    border: 1.5px solid var(--brass); cursor: pointer;
    font-family: inherit;
  }
  .btn.primary { background: var(--brass); color: #14100a; }
  .btn.ghost { background: transparent; color: var(--brass); }
  .btn.ghost[hidden] { display: none; }
  .btn.soon { cursor: default; opacity: .72; border-style: dashed; }
  .soon-tag {
    margin-left: .5rem; padding: .1rem .45rem; border-radius: 3px;
    font-size: .72rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase;
    background: var(--brass); color: #14100a; vertical-align: .1em;
  }

  main { max-width: 62rem; margin: 0 auto; padding: 0 24px 88px; }
  section { margin-top: 72px; }
  h2 {
    font-family: "Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;
    font-size: 1.7rem; font-weight: 600; margin: 0 0 1rem;
  }
  p { max-width: 62ch; }
  .muted { color: var(--text-soft); }

  .ticker {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
    gap: 12px; margin-top: 1.2rem;
  }
  .stat {
    background: var(--ink-raised); border: 1px solid var(--line);
    border-radius: 6px; padding: 1rem 1.2rem;
  }
  .stat b {
    display: block; font-size: 1.7rem; color: var(--brass);
    font-variant-numeric: tabular-nums; line-height: 1.15;
    font-family: "Iowan Old Style", Palatino, Georgia, serif;
  }
  .stat span { font-size: .8rem; color: var(--text-soft); letter-spacing: .04em; text-transform: uppercase; }

  .teaser { width: 100%; max-width: 62rem; border: 1px solid var(--line); border-radius: 6px; background: var(--ink); display: block; }

  .teases { display: grid; grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); gap: 14px; }
  .tease {
    background: var(--ink-raised); border: 1px solid var(--line);
    border-radius: 6px; padding: 1.2rem 1.3rem;
  }
  .tease h3 {
    font-family: "Iowan Old Style", Palatino, Georgia, serif;
    margin: 0 0 .4rem; font-size: 1.12rem; color: var(--text);
  }
  .tease p { margin: 0; font-size: .93rem; color: var(--text-soft); }

  form { max-width: 34rem; }
  label { display: block; font-size: .82rem; color: var(--text-soft); margin: 1rem 0 .3rem; letter-spacing: .04em; }
  input[type="email"], input[type="text"] {
    width: 100%; padding: .7rem .9rem; border-radius: 4px;
    border: 1.5px solid var(--line); background: var(--ink-raised);
    color: var(--text); font-size: 1rem; font-family: inherit;
  }
  input::placeholder { color: var(--text-faint); }
  .opt { text-transform: none; letter-spacing: 0; }
  .or-email { align-self: center; font-size: .9rem; }
  .hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
  form .btn { margin-top: 1.2rem; }
  .form-msg { margin-top: .9rem; font-size: .95rem; min-height: 1.4em; }
  .form-msg.ok { color: var(--green); }
  .form-msg.err { color: var(--danger); }

  footer {
    border-top: 1px solid var(--line);
    padding: 28px 24px 48px; margin-top: 40px;
    font-size: .82rem; color: var(--text-faint);
    text-align: center;
  }
  @media (prefers-reduced-motion: no-preference) {
    .hero-inner { animation: rise .7s ease-out; }
    @keyframes rise { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
  }
