:root{color-scheme:light;--paper:#f3efe5;--ink:#1b1512;--wine:#4a1715;--line:#d8d1c7;font-family:"Avenir Next",Avenir,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}a{color:var(--wine);text-underline-offset:.2em}a:focus-visible{outline:3px solid #bd2c21;outline-offset:5px;border-radius:2px}header,main,footer{max-width:1160px;margin:auto;padding:32px 40px}header{display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--line)}.brand{font-size:28px;font-weight:800;letter-spacing:-1px;text-decoration:none}.brand span{color:#bd2c21}nav{display:flex;flex-wrap:wrap;gap:8px 16px;font-size:15px}nav a{padding:6px 0}nav a[aria-current]{font-weight:800;text-decoration-thickness:2px}.intro{max-width:800px;padding:40px 0 32px}.date{color:#625b55;font-size:15px;margin:0 0 16px}h1{overflow-wrap:anywhere;hyphens:auto;font-family:"Iowan Old Style",Palatino,Georgia,serif;font-size:clamp(36px,5vw,58px);line-height:1.12;margin:0 0 24px;font-weight:600;letter-spacing:-.02em}.summary{font-size:20px;line-height:1.6;margin:0}.reading-layout{display:grid;grid-template-columns:225px minmax(0,1fr);gap:64px;align-items:start}aside{position:sticky;top:24px;border-top:2px solid var(--wine);padding-top:18px}aside h2{font-size:16px;margin:0 0 14px}aside ol{list-style:none;padding:0;margin:0}aside li{margin:0 0 12px;font-size:15px;line-height:1.45}aside a{text-decoration:none}aside a:hover{text-decoration:underline}article{max-width:730px}section{scroll-margin-top:28px;border-top:1px solid var(--line);padding:24px 0 10px}section h2{font-size:25px;line-height:1.3;margin:0 0 22px;letter-spacing:-.025em}section p{font-size:17px;line-height:1.75;margin:0 0 21px;overflow-wrap:anywhere}footer{border-top:1px solid var(--line);font-size:15px;line-height:1.6;padding-bottom:48px}footer p{font-weight:700}@media(max-width:850px){.reading-layout{grid-template-columns:1fr;gap:32px}aside{position:static}aside ol{columns:2;column-gap:28px}aside li{break-inside:avoid}.intro{padding-top:24px}}@media(max-width:560px){header,main,footer{padding:24px}header{align-items:flex-start;flex-direction:column;gap:14px}.summary{font-size:18px}.intro{padding:16px 0 28px}aside ol{columns:1}section h2{font-size:23px}section p{font-size:17px;line-height:1.7}nav{gap:5px 15px}footer a{overflow-wrap:anywhere}}
