:root { color-scheme: dark; --ink: #f1eee8; --muted: #b8b2a8; --paper: #121212; --line: #31302d; --accent: #f6d365; }
* { box-sizing: border-box; }
html { background: var(--paper); }
body { margin: 0; min-width: 320px; color: var(--ink); background: radial-gradient(circle at 88% 12%, #413923 0, transparent 26rem), var(--paper); font: 16px/1.65 Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
a { color: inherit; text-decoration-color: var(--accent); text-underline-offset: .22em; }
.shell { width: min(1120px, calc(100% - 48px)); margin: 0 auto; }
.masthead { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 32px 0; border-bottom: 1px solid var(--line); }
.brand { font-weight: 800; letter-spacing: .08em; text-decoration: none; }
nav { display: flex; gap: 20px; color: var(--muted); font-size: .9rem; }
.hero { padding: clamp(80px, 16vw, 180px) 0 88px; max-width: 850px; }
.eyebrow { color: var(--accent); letter-spacing: .12em; font-size: .75rem; font-weight: 700; }
h1 { max-width: 15ch; margin: 12px 0 24px; font-size: clamp(2.6rem, 7vw, 5.8rem); line-height: 1.02; letter-spacing: -.055em; }
h2 { margin: 16px 0 8px; font-size: 1.25rem; }
.lead { max-width: 620px; color: var(--muted); font-size: 1.15rem; }
.grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; margin-bottom: 88px; border: 1px solid var(--line); background: var(--line); }
.grid article { min-height: 235px; padding: 28px; background: #181817; }
.grid span { color: var(--accent); font-variant-numeric: tabular-nums; }
.grid p, .prose > p { color: var(--muted); }
.prose { max-width: 800px; min-height: calc(100vh - 112px); }
.prose h1 { margin-top: 8px; }
footer { width: min(1120px, calc(100% - 48px)); margin: 0 auto; padding: 28px 0 42px; border-top: 1px solid var(--line); color: var(--muted); font-size: .85rem; }
@media (max-width: 700px) { .shell, footer { width: min(100% - 32px, 1120px); } .masthead { align-items: flex-start; flex-direction: column; } .grid { grid-template-columns: 1fr; } .hero { padding: 72px 0 56px; } }
