:root { color-scheme:light; --bg:#f5f3ed; --ink:#202622; --muted:#6c746d; --line:rgba(32,38,34,.14); --accent:#476b50; --amber:#bd8750; }
body { min-height:100svh; background:var(--bg); }
.site-header { align-items:center; padding-top:24px; }
.site-header nav { padding-top:0; }
.site-header nav a { padding:7px 0; color:var(--muted); }
.site-header nav a:hover,.site-header nav a[aria-current=page] { color:var(--ink); border-color:var(--accent); }
.site-footer { border-top:1px solid var(--line); }
.writing-page { width:min(620px,calc(100% - 40px)); min-height:calc(100svh - 130px); margin:0 auto; padding:70px 0 90px; }
.writing-hero { padding-bottom:24px; border-bottom:1px solid var(--line); }
.writing-home { display:inline-block; margin-bottom:26px; color:var(--muted); font-size:.88rem; }
.writing-home:hover { color:var(--accent); }
.writing-hero h1 { font-size:clamp(2.5rem,8vw,3.5rem); letter-spacing:-.045em; line-height:1; }
.writing-hero p { margin-top:10px; color:var(--muted); font-size:1rem; line-height:1.5; }
.post-list { border-top:0; }
.post-list article { display:block; padding:19px 0; border-bottom:1px solid var(--line); }
.post-list time { color:var(--muted); font-size:.8rem; }
.post-list h2 { margin-top:6px; font-size:1.22rem; line-height:1.3; }
.post-list h2 a:hover { color:var(--accent); border-color:var(--accent); }
.post-list p { margin-top:7px; color:var(--muted); font-size:.91rem; line-height:1.5; }
.article-page { width:min(620px,calc(100% - 40px)); min-height:calc(100svh - 130px); margin:0 auto; padding:42px 0 80px; }
.article-shell { width:100%; }
.back-link { margin-bottom:25px; color:var(--muted); border-color:var(--line); }
.back-link:hover { color:var(--accent); }
.article-header { padding-bottom:25px; border-color:var(--line); }
.article-header h1 { font-size:clamp(2.1rem,7vw,3.3rem); letter-spacing:-.04em; line-height:1.05; }
.article-header p { color:#48514a; }
.article-content { color:#343c36; }
.article-content a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.article-nav { border-color:var(--line); }
