*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Arial, Helvetica, sans-serif; line-height: 1.5; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
a { color: inherit; text-decoration: none; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: Georgia, 'Times New Roman', serif; line-height: 1.08; font-weight: 400; }
h1 { font-size: clamp(3.8rem, 7.5vw, 7.3rem); letter-spacing: -.05em; }
h2 { font-size: clamp(2.5rem, 4.5vw, 4.5rem); letter-spacing: -.045em; }
h3 { font-size: clamp(1.5rem, 2.2vw, 2rem); letter-spacing: -.035em; }
em { font-weight: 400; }
p { color: var(--muted); }
.container { width: min(var(--container), calc(100% - 48px)); margin-inline: auto; }
.section { padding-block: 100px; }
.eyebrow { font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.skip-link { position: absolute; top: -100px; left: 12px; z-index: 30; padding: 10px 14px; background: white; }
.skip-link:focus { top: 12px; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
::selection { background: var(--lime); color: var(--ink); }
@media (max-width: 700px) { .container { width: min(var(--container), calc(100% - 32px)); } .section { padding-block: 70px; } }
