@font-face { font-family: 'Fraunces'; src: url('/fonts/fraunces.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
@font-face { font-family: 'Inter'; src: url('/fonts/inter.woff2') format('woff2'); font-weight: 100 900; font-display: swap; }
:root { --bg: #f6f2e9; --card: #fffdf8; --ink: #15110a; --ink-soft: #5c5242; --mute: #8f8572; --gold: #c39a27; --line: rgba(21,17,10,.12); }
* { box-sizing: border-box; margin: 0; }
body { background: var(--bg); color: var(--ink); font: 400 1rem/1.65 'Inter', system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
.wrap { width: min(760px, 100% - 32px); margin-inline: auto; }
header { padding-block: 1.6rem; border-bottom: 1px solid var(--line); }
header a { font-family: 'Fraunces', Georgia, serif; font-size: 1.25rem; color: var(--ink); text-decoration: none; }
main { padding-block: clamp(3rem, 8vw, 6rem); }
h1 { font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: clamp(2.2rem, 6vw, 3.6rem); line-height: 1.05; letter-spacing: -.02em; margin-bottom: 1.2rem; }
h2 { font-family: 'Fraunces', Georgia, serif; font-weight: 400; font-size: 1.45rem; margin: 2.4rem 0 .6rem; }
p, li { color: var(--ink-soft); } p + p { margin-top: .8rem; } ul { padding-left: 1.2rem; margin-top: .6rem; } li + li { margin-top: .3rem; }
a { color: var(--ink); text-decoration-color: var(--gold); text-underline-offset: 3px; }
.meta { font-size: .85rem; color: var(--mute); }
.btn { display: inline-block; margin-top: 2rem; background: var(--ink); color: var(--bg); padding: .9rem 1.5rem; border-radius: 999px; text-decoration: none; font-weight: 500; }
footer { border-top: 1px solid var(--line); padding-block: 2rem; font-size: .82rem; color: var(--mute); }
