:root {
  color-scheme: dark;
  --bg: #0f1114;
  --surface: #14171c;
  --surface-2: #14213d;
  --text: #ffffff;
  --muted: #d8e8f0;
  --blue: #508fe0;
  --amber: #c49a49;
  --border: #29435b;
  --danger: #ffb4ab;
  --max: 72rem;
}
* { box-sizing: border-box; }
html { background: var(--bg); }
body {
  margin: 0; background: var(--bg); color: var(--text);
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
}
a { color: #9fc5ff; }
a:focus-visible, button:focus-visible { outline: 3px solid var(--amber); outline-offset: 4px; }
.skip-link { position: absolute; left: -9999px; top: 0; }
.skip-link:focus { left: 1rem; top: 1rem; z-index: 10; background: var(--amber); color: #111; padding: .75rem 1rem; }
header, main, footer { width: min(var(--max), calc(100% - 2rem)); margin-inline: auto; }
header { padding: 1.25rem 0; border-bottom: 1px solid var(--border); }
nav { display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; }
nav .brand { font-weight: 800; letter-spacing: .08em; margin-right: auto; color: var(--text); text-decoration: none; }
main { padding: 3rem 0 4rem; }
.eyebrow { color: var(--amber); font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
h1 { font-size: clamp(2.4rem, 8vw, 5.5rem); line-height: .98; max-width: 13ch; margin: .4rem 0 1.25rem; }
h2 { line-height: 1.15; }
.lead { color: var(--muted); max-width: 66ch; font-size: 1.15rem; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(17rem, 1fr)); gap: 1rem; margin-top: 2rem; }
.card { background: var(--surface); border: 1px solid var(--border); border-radius: 1rem; padding: 1.25rem; }
.card .state, .state { display: inline-block; border: 1px solid var(--amber); color: #ffd88a; border-radius: 999px; padding: .2rem .65rem; font-size: .8rem; font-weight: 800; }
.card h2 { margin-bottom: .4rem; }
.card p { color: var(--muted); }
.meta { display: grid; gap: .75rem; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); margin: 2rem 0; }
.meta div { background: var(--surface); border-left: .25rem solid var(--blue); padding: 1rem; }
.warning { background: #2b2020; border: 1px solid #6d3f3f; color: var(--danger); padding: 1rem; border-radius: .75rem; }
footer { border-top: 1px solid var(--border); padding: 1.5rem 0 2.5rem; color: var(--muted); }
.small { font-size: .9rem; }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; } }
