:root { color: #202523; background: #f6f4ed; font: 1rem/1.6 system-ui, sans-serif; }
body { margin: 0; }
header { padding: 1rem max(6vw, 1rem); border-bottom: 1px solid #d1ccc2; }
header a { font-size: 1.5rem; font-weight: 750; text-decoration: none; }
main { max-width: 43rem; margin: auto; padding: 2.5rem max(6vw, 1rem) 4rem; }
h1, h2 { line-height: 1.2; }
h1 { margin: 0; font-size: clamp(2.5rem, 7vw, 4rem); }
h2 { margin-top: 2.25rem; }
a { color: #143c82; text-underline-offset: .18em; }
a:focus-visible { outline: 3px solid #2449a5; outline-offset: 4px; }
.skip { position: absolute; top: -5rem; left: 1rem; background: #f6f4ed; padding: .5rem 1rem; }
.skip:focus { top: 1rem; }
