:root { color-scheme:light; --ink:#1b1720; --paper:#f4efe7; --plum:#7d273f; --line:rgba(27,23,32,.17); --serif:"Iowan Old Style","Baskerville","Times New Roman",serif; --sans:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
* { box-sizing:border-box; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--sans); line-height:1.7; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-underline-offset:.2em; }
header { min-height:20rem; padding:3rem max(1.4rem,7vw); display:flex; flex-direction:column; justify-content:space-between; background:var(--ink); color:#fff; }
.brand { display:inline-flex; align-items:center; gap:.75rem; width:max-content; text-decoration:none; font-weight:650; }
.mark { width:2rem; height:2rem; display:grid; place-items:center; border:1px solid currentColor; border-radius:50%; font-family:var(--serif); font-style:italic; }
.eyebrow { margin:4rem 0 1rem; color:#d4a8b5; font-size:.7rem; letter-spacing:.18em; text-transform:uppercase; }
h1 { max-width:11ch; margin:0; font-family:var(--serif); font-size:clamp(3.5rem,8vw,7rem); font-weight:400; letter-spacing:-.055em; line-height:.9; }
main { width:min(48rem,calc(100% - 2.8rem)); margin:0 auto; padding:5rem 0 7rem; }
.updated { margin:0 0 3rem; color:rgba(27,23,32,.55); font-size:.78rem; }
h2 { margin:3rem 0 .65rem; padding-top:1.2rem; border-top:1px solid var(--line); font-family:var(--serif); font-size:2rem; font-weight:400; letter-spacing:-.03em; }
p, li { color:rgba(27,23,32,.73); }
li + li { margin-top:.65rem; }
.callout { margin:2.5rem 0; padding:1.35rem; border-left:3px solid var(--plum); background:#fffaf3; }
footer { padding:2rem max(1.4rem,7vw); border-top:1px solid var(--line); font-size:.75rem; }
@media (max-width:600px) { header { min-height:17rem; padding-top:1.5rem; } main { padding-top:3.5rem; } }
