
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--paper:#f6f3eb;--ink:#302e2a;--dim:#827d73;--soft:#bbb5a9;--rust:#a34836;--line:#d7d0c3;--panel:#f1ebe0}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);margin:0;-webkit-font-smoothing:antialiased}
a{color:inherit}
.site-menu{display:flex;gap:clamp(14px,3.1vw,46px);align-items:center;justify-content:center;flex-wrap:wrap;padding:35px 16px 32px;border-bottom:1px solid var(--line);font:600 clamp(12px,1.4vw,17px)/1.2 'DM Sans','Avenir Next',sans-serif;letter-spacing:.115em}
.site-menu span{white-space:nowrap;cursor:default}
.site-menu .active{color:var(--rust);position:relative}
.site-menu .active:after{content:"";position:absolute;bottom:-11px;left:0;right:0;border-bottom:1px solid var(--rust)}
main{max-width:1150px;margin:auto;padding:0 34px 108px}
.intro{padding:clamp(76px,10vw,142px) 0 90px;text-align:center}
.eyebrow{font:600 11px/1.2 'DM Sans',sans-serif;letter-spacing:.31em;color:var(--rust);text-transform:uppercase}
.intro h1{font:400 clamp(72px,11vw,148px)/.91 'Cormorant Garamond',Georgia,serif;letter-spacing:-.043em;margin:28px 0 27px;font-weight:400}
.intro p{font:400 clamp(17px,2vw,22px)/1.45 'Cormorant Garamond',Georgia,serif;letter-spacing:.012em;margin:0;color:#655e56}
.archive-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;border-bottom:1px solid #5e5950;padding-bottom:17px}
.archive-top h2{font:600 11px/1.4 'DM Sans',sans-serif;letter-spacing:.23em;margin:0}
.archive-top .count{font:500 11px 'DM Sans',sans-serif;letter-spacing:.15em;color:var(--dim)}
.entry{border-bottom:1px solid var(--line);display:grid;grid-template-columns:110px 1fr 190px;gap:20px;align-items:center;padding:35px 2px;min-height:149px;cursor:pointer;transition:background .2s ease,padding .2s ease}
.entry:hover,.entry:focus-visible{background:rgba(167,78,47,.035);padding-left:13px;outline:0}
.entry-number{font:500 14px/1 'DM Sans',sans-serif;color:var(--rust);letter-spacing:.1em;align-self:start;padding-top:13px}
.entry-dot{margin-left:8px;color:var(--soft)}
.entry-main h2{font:400 clamp(31px,4.35vw,56px)/1 'Cormorant Garamond',Georgia,serif;letter-spacing:-.022em;margin:0 0 13px;max-width:700px}
.entry-underline{font:600 10px/1.1 'DM Sans',sans-serif;letter-spacing:.19em;color:var(--rust)}
.entry-underline span{font-size:14px;vertical-align:middle;margin-left:5px}
.entry-date{font:500 10px/1.5 'DM Sans',sans-serif;color:var(--dim);letter-spacing:.125em;text-align:right;align-self:start;padding-top:15px}
.footnote{font:400 15px/1.5 'Cormorant Garamond',Georgia,serif;color:var(--dim);text-align:center;padding-top:44px}
.footer{border-top:1px solid var(--line);padding:30px 20px;text-align:center;color:var(--dim);font:500 10px/1.5 'DM Sans',sans-serif;letter-spacing:.18em}
.shade{position:fixed;inset:0;z-index:10;background:rgba(42,37,32,.55);opacity:0;pointer-events:none;transition:opacity .25s}
.shade.open{opacity:1;pointer-events:auto}
.reader{position:fixed;z-index:11;top:0;right:0;bottom:0;max-width:760px;width:min(100%,760px);padding:30px clamp(28px,6vw,75px);background:#fbf8f1;box-shadow:-30px 0 90px rgba(0,0,0,.12);transform:translateX(102%);transition:transform .28s ease;overflow:auto}
.reader.open{transform:translateX(0)}
.reader-back{appearance:none;border:0;background:transparent;color:var(--rust);font:600 11px 'DM Sans',sans-serif;letter-spacing:.18em;cursor:pointer;padding:0}
.reader-content{margin:clamp(65px,10vh,110px) auto 80px}
.reader-meta{font:600 11px 'DM Sans',sans-serif;color:var(--rust);letter-spacing:.18em}
.reader h2{font:400 clamp(55px,7vw,91px)/.93 'Cormorant Garamond',Georgia,serif;letter-spacing:-.02em;margin:20px 0 35px}
.reader-rule{height:1px;background:var(--line);width:100%;margin-bottom:45px}
.reader-placeholder{max-width:460px;font:400 22px/1.45 'Cormorant Garamond',serif;color:var(--dim)}
@media(max-width:700px){
.site-menu{padding:24px 12px;gap:12px 23px;font-size:12px;line-height:1.5}
main{padding:0 22px 70px}
.intro{padding:68px 0 60px}
.intro h1{font-size:clamp(66px,15vw,100px)}
.entry{grid-template-columns:58px 1fr;gap:8px 13px;padding:27px 0;min-height:0}
.entry-number{font-size:12px;padding-top:10px}
.entry-date{grid-column:2;grid-row:2;text-align:left;padding:0;font-size:9px}
.entry-main h2{font-size:clamp(33px,8vw,48px)}
.archive-top .count{font-size:10px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
