
:root { color-scheme: light; --ink:#14201c; --mute:#5b6b64; --paper:#f3efe6; --line:#d7d0c2; --accent:#2f6f5e; }
* { box-sizing: border-box; }
body { margin:0; font:16px/1.55 Georgia, "Times New Roman", serif; color:var(--ink); background:linear-gradient(180deg,#efe9db,#f7f4ec 40%,#f3efe6); min-height:100vh; }
header, main, footer { width:min(720px, 92vw); margin:0 auto; }
header { display:flex; justify-content:space-between; align-items:center; padding:1.4rem 0; border-bottom:1px solid var(--line); }
.mark { font-weight:700; letter-spacing:.04em; margin:0; font-family:ui-sans-serif,system-ui,sans-serif; }
nav a { margin-left:1rem; color:var(--mute); text-decoration:none; font-family:ui-sans-serif,system-ui,sans-serif; font-size:.92rem; }
nav a:hover { color:var(--accent); }
main { padding:2.4rem 0 3rem; }
h1,h2 { font-weight:600; letter-spacing:-.02em; }
p { color:var(--mute); }
footer { padding:1.2rem 0 2rem; border-top:1px solid var(--line); color:var(--mute); font-size:.9rem; }
