:root{--paper:#FBFAF6;--paper-deep:#F4F1E8;--ink:#1B1814;--ink-soft:#5C554A;--line:#E5DFD2;--accent:#9A3B26;--card:#fff;--font-display:"Fraunces",Georgia,serif;--font-body:"Inter",-apple-system,"Segoe UI",sans-serif;--font-mono:ui-monospace,"SF Mono",Menlo,monospace}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--font-body);line-height:1.65}body{margin:0}.wrap{width:min(820px,calc(100% - 32px));margin:auto}.masthead{padding:54px 0 26px;border-bottom:1px solid var(--line)}.eyebrow,.stamp,.tag,nav{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.eyebrow{font-size:.76rem;color:var(--accent);font-weight:600}.masthead h1,.entry-head h1,.entry-card h2,.event h2{font-family:var(--font-display)}.masthead h1{font-size:clamp(2.4rem,8vw,4.8rem);line-height:1;margin:.2em 0;font-weight:500}.dek{font-size:1.16rem;color:var(--ink-soft);max-width:650px}nav{font-size:.72rem;display:flex;gap:18px;flex-wrap:wrap;margin-top:24px}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px}.entries{padding:36px 0 80px}.entry-card{display:block;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px 28px;margin:0 0 18px;color:inherit;text-decoration:none;box-shadow:0 12px 32px rgba(27,24,20,.04)}.entry-card:hover{border-color:var(--accent)}.entry-card h2{margin:.2em 0;font-size:1.55rem}.entry-card p{margin:.5em 0;color:var(--ink-soft)}.stamp{font-size:.7rem;color:var(--accent);font-weight:600}.entry-head{padding:48px 0 30px;border-bottom:1px solid var(--line)}.entry-head h1{font-size:clamp(2.2rem,7vw,4rem);line-height:1.08;margin:.25em 0;font-weight:500}.prologue,.note{background:var(--card);border-left:3px solid var(--accent);padding:18px 22px;margin:28px 0;color:#3e453e}.timeline{position:relative;margin:42px 0 80px}.event{display:grid;grid-template-columns:92px 1fr;gap:22px;padding:0 0 34px;position:relative}.event:before{content:"";position:absolute;left:103px;top:6px;bottom:-3px;border-left:1px solid var(--line)}.time{font-family:var(--font-mono);color:var(--accent);font-size:.82rem;padding-top:4px}.event-body{padding-left:14px}.event-body:before{content:"";position:absolute;margin-left:-20px;margin-top:5px;width:9px;height:9px;border:2px solid var(--paper);background:var(--accent);border-radius:50%}.event h2{font-size:1.35rem;line-height:1.25;margin:0 0 7px}.event p{margin:.4em 0}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.tag{font-size:.62rem;background:var(--paper-deep);padding:3px 7px;border-radius:2px;color:var(--ink-soft)}footer{border-top:1px solid var(--line);padding:24px 0 45px;color:var(--ink-soft);font-size:.9rem}@media(max-width:600px){.masthead{padding-top:34px}.entry-card{padding:21px}.event{grid-template-columns:1fr;gap:5px;padding-left:21px}.event:before{left:4px}.time{padding:0}.event-body{padding-left:0}.event-body:before{margin-left:-23px}.timeline{margin-top:30px}.entry-head{padding-top:32px}}
.diary-figure{width:min(100%,420px);margin:28px auto 8px}.diary-figure img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 32px rgba(27,24,20,.08)}.diary-figure figcaption{margin-top:10px;color:var(--ink-soft);font-size:.82rem;line-height:1.5;text-align:left}
.entries-head{font-family:var(--font-display);font-size:1.4rem;margin:32px 0 4px}.entries-hint{margin:0 0 18px;color:var(--ink-soft)}.entry-card .read-more{display:inline-block;margin-top:10px;font-weight:600;color:var(--accent)}.entry-card{border-color:#d8cfbd;box-shadow:0 2px 0 #e5dfd2,0 12px 32px rgba(27,24,20,.06)}
.start{margin:18px 0 0}.start-btn{display:inline-block;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;padding:10px 16px;border-radius:10px}.start-alt{margin-left:10px;color:var(--accent)}
/* polish 2026-09-24: quieter callouts and breadcrumb, clear tap states, themed browser surfaces */
:root{--accent-deep:#7E2F1D;--ease-out:cubic-bezier(.16,1,.3,1)}
::selection{background:#EBD3C9;color:var(--ink)}
a:focus-visible,.entry-card:focus-visible,.start-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}
.eyebrow{font-family:var(--font-body);text-transform:none;letter-spacing:0;font-size:.86rem;font-weight:500;color:var(--ink-soft)}
.eyebrow a{color:var(--ink-soft);text-decoration-color:var(--line)}
.eyebrow a:hover{color:var(--accent)}
.prologue,.note{border:1px solid var(--line);border-left:1px solid var(--line);border-radius:14px;background:var(--card);color:var(--ink);padding:20px 22px}
.prologue strong,.note strong{color:var(--accent-deep)}
.event p,.prologue,.note,.dek,.entry-card p{max-width:68ch}
.entry-card{position:relative;transition:transform .35s var(--ease-out),box-shadow .35s var(--ease-out),border-color .2s}
.entry-card:hover{transform:translateY(-2px);border-color:var(--accent);box-shadow:0 2px 0 #e5dfd2,0 18px 40px rgba(27,24,20,.10)}
.entry-card:active{transform:translateY(0);box-shadow:0 1px 0 #e5dfd2,0 6px 16px rgba(27,24,20,.08);background:#FFFDF9}
.entry-card .read-more{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-weight:600;color:var(--accent)}
.arrow{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--accent);color:#fff;flex:none;transition:transform .35s var(--ease-out)}
.arrow svg{width:16px;height:16px}
.entry-card:hover .arrow{transform:translateX(3px)}
.start-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 18px;transition:background .2s,transform .2s var(--ease-out)}
.start-btn svg{width:16px;height:16px}
.start-btn:hover{background:var(--accent-deep)}
.start-btn:active{transform:translateY(1px)}
footer a{display:inline-flex;align-items:center;gap:6px;padding:6px 0}
footer svg{width:14px;height:14px}
@media (prefers-reduced-motion:reduce){.entry-card,.arrow,.start-btn{transition:none}.entry-card:hover,.entry-card:hover .arrow{transform:none}}
h1,h2{text-wrap:balance}
/* standfirst 2026-09-24: first thing the eye lands on, under the title */
.masthead h1{margin-bottom:.28em}
.standfirst{font-family:var(--font-display);font-optical-sizing:auto;font-size:clamp(1.3rem,4.4vw,1.75rem);line-height:1.28;font-weight:400;letter-spacing:-.005em;color:var(--ink);max-width:30ch;margin:0;text-wrap:balance}
.standfirst+.dek{margin-top:1.15em;font-size:1.05rem;line-height:1.6}
