
:root{--paper:#f4f0e8;--ink:#1b1815;--muted:#6f675d;--rule:#d9d1c4;--accent:#9a4320;--maxw:1180px}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body.doc{display:block;font-size:14px}
body.doc main{max-width:var(--maxw);margin:0 auto;padding:0 24px}
body.doc .foot{margin-top:100px}
.zhead h1,.prose h1,.endnote h2,.feature h2{font-family:"Newsreader",Georgia,serif}
.zhead p,.prose p{font-family:"Newsreader",Georgia,serif;font-size:19px}
a{color:inherit}
img{display:block;max-width:100%;height:auto}
.mono{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
header.site{display:flex;align-items:center;justify-content:space-between;padding:22px 0;border-bottom:1px solid var(--rule)}
header.site .logo img{height:30px;width:auto}
nav a{text-decoration:none;margin-left:28px;color:var(--muted)}
nav a:hover,nav a[aria-current]{color:var(--ink)}
footer.site{border-top:1px solid var(--rule);margin-top:110px;padding:30px 0 40px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--muted)}
.intro{padding:96px 0 72px;max-width:760px}
.intro h1{font-weight:400;font-size:clamp(40px,6vw,72px);line-height:1.04;letter-spacing:-.01em}
.intro h1 em{color:var(--accent)}
.intro p{margin-top:24px;color:var(--muted);max-width:560px}
.feature{display:grid;grid-template-columns:1.25fr 1fr;gap:56px;align-items:center;padding:24px 0 40px}
.feature img{box-shadow:0 1px 0 var(--rule),0 18px 40px -24px rgba(40,30,20,.45)}
.feature h2{font-weight:400;font-size:44px;line-height:1.1;margin:12px 0 16px}
.feature p{color:var(--muted)}
.btns{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-block;text-decoration:none;padding:13px 20px;border:1px solid var(--ink)}
.btn.solid{background:var(--ink);color:var(--paper)}
.btn:hover{background:var(--accent);border-color:var(--accent);color:var(--paper)}
.sect{margin-top:96px;padding-top:22px;border-top:1px solid var(--rule);display:flex;justify-content:space-between}
.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;margin-top:32px}
.card{text-decoration:none}
.card img{transition:opacity .2s}
.card:hover img{opacity:.88}
.card h3{font-weight:400;font-size:26px;margin-top:16px}
.card p{color:var(--muted);font-size:16px}
.zhead{padding:84px 0 56px;display:grid;grid-template-columns:1fr auto;gap:32px;align-items:end}
.zhead h1{font-weight:400;font-size:clamp(44px,7vw,84px);line-height:1}
.zhead p{color:var(--muted);margin-top:18px;max-width:600px}
.facts{display:flex;gap:10px 32px;flex-wrap:wrap;color:var(--muted);margin-top:26px}
.plates{display:flex;flex-direction:column;gap:110px;margin-top:40px}
figure.plate{margin:0 auto;text-align:center}
figure.plate button{border:0;background:none;padding:0;cursor:zoom-in;display:block;margin:0 auto}
figure.plate img{max-height:86vh;width:auto;margin:0 auto}
figure.plate figcaption{margin-top:16px;display:flex;justify-content:space-between;gap:16px;color:var(--muted);text-align:left}
figure.plate figcaption b{font-weight:400;color:var(--ink);font-family:"Newsreader",serif;font-size:18px;letter-spacing:0;text-transform:none}
.endnote{margin-top:120px;text-align:center}
.endnote h2{font-weight:400;font-size:34px}
.endnote .btns{justify-content:center}
.prose{max-width:680px;padding:84px 0 0}
.prose h1{font-weight:400;font-size:clamp(26px,3vw,32px);line-height:1.15;margin:6px 0 22px}
.prose.about{max-width:1000px;display:grid;grid-template-columns:360px 1fr;gap:56px;align-items:start}
.portrait{margin:0}
.portrait img{width:100%;height:auto;display:block}
@media (max-width:820px){.prose.about{grid-template-columns:1fr;gap:28px;padding-top:40px}.portrait{max-width:420px}}
.prose p{margin-bottom:20px}
.prose .mono{color:var(--muted)}
.lb{position:fixed;inset:0;background:rgba(14,12,10,.96);display:none;align-items:center;justify-content:center;z-index:50}
.lb.open{display:flex}
.lb img{max-width:94vw;max-height:88vh;width:auto;height:auto}
.lb .cap{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:#cfc7bb}
.lb button{position:absolute;background:none;border:0;color:#efe9df;font-size:30px;cursor:pointer;padding:14px 18px;font-family:inherit}
.lb .x{top:8px;right:8px}.lb .prev{left:4px;top:50%;transform:translateY(-50%)}.lb .next{right:4px;top:50%;transform:translateY(-50%)}
@media (max-width:820px){
 body{font-size:17px}
 body.doc main{padding:0 16px}
 nav a{margin-left:18px}
 .feature,.grid,.zhead{grid-template-columns:1fr}
 .feature{gap:28px}
 .intro{padding:60px 0 44px}
 .plates{gap:72px}
 figure.plate{max-width:100%!important}
 figure.plate img{max-height:none;width:100%}
 figure.plate figcaption{flex-direction:column;gap:4px}
}
/* doc pages: keep archive header tabs and mono labels consistent */
body.doc .tabs a{margin-left:0}
body.doc .prose p.mono{font-family:"IBM Plex Mono",ui-monospace,monospace;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
body.doc main.prose.about{padding-top:64px;padding-bottom:20px}
@media (max-width:820px){body.doc main.prose.about{padding-top:28px}}
