:root{--bg:#f7f7f8;--ink:#17171c;--muted:#6a6a75;--line:#d9d9df;--accent:#2f3fb8;--gap:12px}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 system-ui,-apple-system,"Segoe UI",sans-serif;text-transform:lowercase}
a{color:inherit}
a:hover,a:focus-visible{color:var(--accent)}
h1,h2,h3{font-family:Georgia,"Iowan Old Style",serif;font-weight:400;line-height:1.15;margin:0 0 .5em}
h1{font-size:clamp(2.4rem,7vw,4.5rem)}
h2{font-size:1.6rem}
header.site{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:1.25rem 5vw;border-bottom:1px solid var(--line)}
.logo{font-family:Georgia,serif;font-size:1.5rem;text-decoration:none}
nav ul{list-style:none;margin:0;padding:0;display:flex;gap:1.5rem;flex-wrap:wrap}
nav a{text-decoration:none}
nav a[aria-current]{border-bottom:1px solid var(--ink)}
main{max-width:1200px;margin:0 auto;padding:3rem 5vw 4rem}
.lead{font-size:1.2rem;color:var(--muted);max-width:34rem}
.sections{margin-top:3rem}
.sections a{display:flex;justify-content:space-between;gap:1rem;padding:1.1rem 0;border-top:1px solid var(--line);text-decoration:none}
.sections a:last-child{border-bottom:1px solid var(--line)}
.sections strong{font-family:Georgia,serif;font-size:1.5rem;font-weight:400}
.sections span{color:var(--muted);text-align:right}
.justified{display:flex;flex-wrap:wrap;gap:var(--gap)}
.justified::after{content:"";flex-grow:999}
.justified a{display:block}
.justified img{display:block;width:100%;height:auto}
/*.slider{position:relative;overflow:hidden;margin:2rem 0 3rem;background:#e9e9ec}
.track{display:flex;transition:transform .7s ease}
.slide{flex:none;width:100%;height:min(70vh,560px);display:flex;justify-content:center;align-items:center}
.slide img{max-width:100%;max-height:100%;object-fit:contain}
.slider button{position:absolute;top:50%;transform:translateY(-50%);width:2.75rem;height:2.75rem;border:0;border-radius:50%;background:rgba(247,247,248,.85);color:var(--ink);font-size:1.6rem;line-height:1;cursor:pointer}
.slider .prev{left:.75rem}.slider .next{right:.75rem}
.rowhead{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.strip{display:flex;gap:var(--gap);overflow-x:auto;padding-bottom:.5rem}
.strip a{flex:none}
.strip img{display:block;height:200px;width:auto}*/
.row{margin-bottom:2.5rem}
.controls{display:flex;flex-wrap:wrap;gap:1rem;margin:1.5rem 0 2rem}
select{font:inherit;text-transform:lowercase;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:.35rem .6rem}
.big{display:block;max-width:100%;max-height:80vh;width:auto;height:auto;margin:1.5rem 0}
dl{display:grid;grid-template-columns:max-content 1fr;gap:.25rem 1.5rem;margin:1rem 0;color:var(--muted)}
dt{color:var(--ink)}dd{margin:0}
.desc{max-width:40rem;white-space:pre-line}
[hidden]{display:none!important}
.entry{padding:1.5rem 0;border-top:1px solid var(--line)}
.entry p{margin:.25rem 0;color:var(--muted)}
footer.site{padding:2rem 5vw;border-top:1px solid var(--line);color:var(--muted);font-size:.9rem}
@media (prefers-reduced-motion:reduce){.track{transition:none}}
.has-sub{position:relative}
.has-sub ul{display:none;position:absolute;top:100%;left:-.75rem;flex-direction:column;gap:.25rem;background:var(--bg);border:1px solid var(--line);padding:.75rem;min-width:12rem;z-index:5}
.has-sub:hover ul,.has-sub:focus-within ul{display:flex}

.slider{--h:min(70vh,520px);position:relative;overflow:hidden;margin:2rem 0 3rem}
.track{position:relative;display:flex;gap:var(--gap);transition:transform .7s ease}
.slide{flex:none;max-width:100%;height:var(--h)}
.slide img{display:block;height:100%;width:auto;max-width:100%;object-fit:contain}
.slider button{position:absolute;top:50%;transform:translateY(-50%);z-index:2;background:none;border:0;padding:.25rem .75rem;color:#fff;font-size:3.5rem;line-height:1;cursor:pointer;text-shadow:0 0 8px rgba(0,0,0,.55)}
.slider .prev{left:.25rem}
.slider .next{right:.25rem}
.row h2{margin-bottom:.5rem}
.strip{display:flex;gap:var(--gap);overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none;-ms-overflow-style:none}
.strip::-webkit-scrollbar{display:none}
.strip a{flex:none}
.strip img{display:block;height:200px;width:auto}
.strip .more{display:flex;align-items:center;justify-content:center;width:120px;height:200px;font-size:2.5rem;text-decoration:none;color:var(--muted)}
.strip .more:hover{color:var(--accent)}
site-header,site-footer{display:block}