:root { color-scheme: light; --ink: #17221c; --muted: #52635a; --paper: #f5f7f1; --card: #ffffff; --line: #d7ded3; --accent: #176b4d; --accent-soft: #dceee3; }
* { box-sizing: border-box; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 1rem/1.65 system-ui, sans-serif; }
.site-header, main, footer { width: min(100% - 2rem, 52rem); margin-inline: auto; }
.site-header { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1.25rem 0; border-bottom: 1px solid var(--line); }
.brand { color: var(--ink); font-weight: 750; text-decoration: none; } nav { display: flex; gap: 1rem; } a { color: var(--accent); } nav a { font-weight: 650; }
main { padding: 4.5rem 0 3rem; } h1 { max-width: 14ch; margin: .2rem 0 1rem; font-size: clamp(2.3rem, 8vw, 4.5rem); line-height: 1.02; letter-spacing: -.045em; } h2 { margin-top: 2.25rem; line-height: 1.2; }
.eyebrow { color: var(--accent); font-size: .8rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; } .lead { max-width: 42rem; color: var(--muted); font-size: 1.2rem; }
.card { margin: 2.5rem 0; padding: 1.25rem 1.5rem; background: var(--card); border: 1px solid var(--line); border-radius: 1rem; box-shadow: 0 .75rem 2rem #1a392314; } li + li { margin-top: .45rem; }
code { overflow-wrap: anywhere; } footer { padding: 1rem 0 2.5rem; color: var(--muted); border-top: 1px solid var(--line); } :focus-visible { outline: .2rem solid #c55a19; outline-offset: .2rem; }
@media (max-width: 22rem) { .site-header { align-items: flex-start; flex-direction: column; } main { padding-top: 3rem; } }
