:root {
  color-scheme: dark;
  --ink: #f6f7f2;
  --muted: #cbd2c5;
  --forest: #10241a;
  --panel: #193426;
  --accent: #d4e46e;
  --focus: #f6c453;
  font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { background: var(--forest); color: var(--ink); font-size: 100%; }
body { margin: 0; min-height: 100vh; line-height: 1.65; }
a { color: var(--accent); text-underline-offset: .2em; }
a:hover { text-decoration-thickness: .16em; }
a:focus-visible { outline: .2rem solid var(--focus); outline-offset: .25rem; }
.skip-link { position: absolute; left: 1rem; top: -5rem; background: #fff; color: #111; padding: .75rem 1rem; z-index: 10; }
.skip-link:focus { top: 1rem; }
.site-header, main, footer { width: min(68rem, calc(100% - 2rem)); margin-inline: auto; }
.site-header { padding-block: 1.5rem; }
.brand img { display: block; width: min(18rem, 70vw); height: auto; }
.text-brand { font-weight: 800; letter-spacing: .08em; }
main { padding-block: clamp(2rem, 8vw, 6rem); }
section { max-width: 48rem; margin-bottom: 4rem; }
.hero { padding: clamp(1.5rem, 6vw, 4rem); background: var(--panel); border-radius: 1rem; }
.eyebrow { color: var(--accent); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
h1 { font-size: clamp(2.4rem, 8vw, 5.5rem); line-height: 1; margin: .3em 0; }
h2 { font-size: clamp(1.5rem, 4vw, 2.4rem); line-height: 1.2; }
.lede { font-size: clamp(1.15rem, 2.6vw, 1.5rem); color: var(--muted); }
footer { border-top: 1px solid #486451; padding-block: 2rem 4rem; color: var(--muted); }
@media (max-width: 36rem) { .hero { border-radius: .5rem; } }
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
@media print { :root { color-scheme: light; } html { background: #fff; color: #000; } .hero { background: transparent; padding: 0; } a { color: #000; } }
