:root { color-scheme: dark; font-family: Arial, sans-serif; color: #f0e9e5; background: #262323; }
* { box-sizing: border-box; }
body { margin: 0; font-size: 17px; line-height: 1.75; }
a { color: #f2b3ae; text-underline-offset: .25em; overflow-wrap: anywhere; }
a:hover { color: #fff; }
a:focus-visible { outline: 3px solid #eed1b7; outline-offset: 5px; border-radius: 2px; }
header, main, footer { width: min(100% - 48px, 780px); margin: auto; }
header { padding: 30px 0; border-bottom: 1px solid #8d817b; display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.wordmark { font-family: Georgia, serif; font-size: 25px; letter-spacing: .03em; color: #f0e9e5; text-decoration: none; }
header a, nav a, footer > a { min-height: 44px; display: inline-flex; align-items: center; }
main { padding: 48px 0 64px; }
h1, h2 { font-family: Georgia, serif; font-weight: 400; line-height: 1.2; text-wrap: balance; }
h1 { font-size: clamp(38px, 7vw, 66px); margin: 0 0 20px; }
h2 { font-size: 27px; margin-top: 38px; }
p, li { max-width: 70ch; }
.eyebrow { color: #eed1b7; font-size: 12px; text-transform: uppercase; letter-spacing: .15em; }
.draft { padding: 20px 24px; border: 1px solid #c8a6a0; background: #322e2d; border-radius: 12px; margin: 28px 0; }
.draft strong { display: block; color: #ffb1a8; }
.draft p { margin: 8px 0 0; }
.meta { font-size: 14px; color: #d3cbc7; }
footer { border-top: 1px solid #8d817b; padding: 24px 0 48px; }
nav { display: flex; flex-wrap: wrap; gap: 8px 24px; }
.skip { position: absolute; top: -100px; left: 24px; background: #262323; padding: 12px; }
.skip:focus { top: 10px; }
@media (max-width: 400px) { header, main, footer { width: calc(100% - 36px); } header { flex-wrap: wrap; } .draft { padding: 16px; } }
@media print { :root { color: #111; background: white; } a { color: #111; } .draft { background: white; } .draft strong { color: #111; } }
