:root { --paper:#f8f4ec; --ink:#26231f; --muted:#847d73; --line:#dcd3c5; --accent:#9e493f; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:"Noto Serif SC","Songti SC",Georgia,serif; }
a { color:inherit; text-decoration:none; }
.shell { width:min(760px, calc(100% - 40px)); margin-inline:auto; }
.site-header { height:82px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }
.brand { font-size:18px; font-weight:700; letter-spacing:.08em; }
.diary-link { color:var(--muted); font-size:14px; }
.hero { padding:112px 0 96px; }
.kicker { color:var(--accent)!important; font:600 12px/1.2 Arial,sans-serif; letter-spacing:.2em; }
.hero h1 { margin:16px 0 20px; font-size:clamp(42px,8vw,72px); line-height:1.12; letter-spacing:.04em; }
.hero>p:last-child { margin:0; color:var(--muted); font-size:18px; }
.diary { padding:0 0 112px; }
.section-title { display:flex; align-items:baseline; justify-content:space-between; padding-bottom:18px; border-bottom:1px solid var(--ink); }
.section-title h2 { margin:0; font-size:22px; }
.section-title span { color:var(--muted); font-size:13px; }
.entry,.empty-entry { padding:38px 0 42px; border-bottom:1px solid var(--line); }
.entry time,.empty-entry time { color:var(--accent); font:600 12px/1.4 Arial,sans-serif; letter-spacing:.1em; }
.entry h3,.empty-entry h3 { margin:13px 0 14px; font-size:26px; line-height:1.45; }
.entry p,.empty-entry p { margin:0; color:#5f5951; font-size:16px; line-height:2; white-space:pre-wrap; }
footer { padding:30px 0 44px; border-top:1px solid var(--line); color:var(--muted); font:12px/1.5 Arial,sans-serif; }
@media (max-width:600px) { .shell{width:calc(100% - 32px)} .site-header{height:68px} .hero{padding:76px 0 70px} .hero h1{font-size:42px} .diary{padding-bottom:76px} .entry h3,.empty-entry h3{font-size:22px} }
