:root{--bg:#1E3A2F;--ink:#F1EBDD;--text:#DED8C8;--muted:#B9B39F;--faint:#8E8A78;--line:rgba(241,235,221,.22);--strong:rgba(241,235,221,.75)}
*{box-sizing:border-box}html{background:var(--bg);scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:"Libre Caslon Text",Georgia,serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
::selection{background:#F1EBDD;color:#1E3A2F}
.grid{display:grid;grid-template-columns:minmax(280px,38%) 1fr;min-height:100svh;max-width:1200px;margin:0 auto}
aside{position:sticky;top:0;height:100svh;padding:64px max(40px,env(safe-area-inset-left)) 64px 40px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line)}
aside h1{font-family:"Libre Caslon Display",Georgia,serif;font-weight:400;font-size:50px;line-height:1.05;margin:0;letter-spacing:-.01em;color:var(--ink)}
aside h1 a{color:inherit;text-decoration:none}
.sub{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:22px 0 0}
aside nav{margin-top:48px;display:flex;flex-direction:column;gap:8px}
aside nav a{color:var(--muted);text-decoration:none;font-style:italic;font-size:17px;transition:color .2s;width:fit-content}
aside nav a:hover,aside nav a[aria-current="page"]{color:var(--ink)}
aside nav a[aria-current="page"]::before{content:"— ";color:var(--faint)}
.aside-foot{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--faint);line-height:2}
.aside-foot a{color:inherit;text-decoration:none;transition:color .2s}.aside-foot a:hover{color:var(--ink)}
main{padding:64px max(48px,env(safe-area-inset-right)) 96px 64px}
main>section{max-width:560px}
.intro p{margin:0 0 1.1em;font-size:18px}.intro p:last-child{margin-bottom:0}
h2.title{font-family:"Libre Caslon Display",Georgia,serif;font-weight:400;font-size:44px;line-height:1.05;margin:0 0 12px;letter-spacing:-.01em;color:var(--ink)}
.lede{font-style:italic;color:var(--muted);font-size:18px;margin:0}
.label{font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin:80px 0 28px;padding-bottom:12px;border-bottom:1px solid var(--strong)}
.label.first{margin-top:44px}
.entry{padding:26px 0;border-bottom:1px solid var(--line)}.entry:last-of-type{border-bottom:0}
.entry h3{font-family:"Libre Caslon Display",Georgia,serif;font-weight:400;font-size:32px;line-height:1.05;margin:0 0 8px;color:var(--ink)}
.entry h3 a{color:inherit;text-decoration:none;transition:opacity .2s}.entry h3 a:hover{opacity:.6}
.entry .role{font-style:italic;color:var(--muted);font-size:15px;margin:0 0 10px}
.entry p{margin:0;font-size:16px;color:var(--text)}
.entry h3+p:not(.role){margin-top:12px}
.entry .c{margin-top:10px;font-size:13px;letter-spacing:.06em;color:var(--faint)}.entry .c a{color:inherit;text-decoration:none;transition:color .2s}.entry .c a:hover{color:var(--ink)}
.rows{list-style:none;margin:0;padding:0}
.rows li{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:18px 0;border-bottom:1px solid var(--line);align-items:baseline}
.rows li:last-child{border-bottom:0}
.rows .k{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.rows .v{font-family:"Libre Caslon Display",Georgia,serif;font-size:22px;color:var(--ink)}
.rows .v a{color:inherit;text-decoration:none;border-bottom:1px solid var(--line);transition:border-color .2s}.rows .v a:hover{border-color:var(--ink)}
.rows .v small{display:block;font-family:"Libre Caslon Text";font-size:14px;font-style:italic;color:var(--muted);margin-top:2px}
.vcard{margin-top:36px}.vcard a{display:inline-block;font-family:"Libre Caslon Display";font-size:19px;color:var(--ink);text-decoration:none;padding:12px 22px;border:1px solid var(--strong);transition:background .2s,color .2s}.vcard a:hover{background:var(--ink);color:var(--bg)}
.note{margin-top:20px;font-size:15px;font-style:italic;color:var(--muted)}
.more{margin-top:48px}.more a{font-family:"Libre Caslon Display";font-size:26px;color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);transition:border-color .2s}.more a:hover{border-color:var(--ink)}
a:focus-visible{outline:1px solid var(--ink);outline-offset:4px}
.f{opacity:0;transform:translateY(8px);animation:f 1s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--i)*130ms)}@keyframes f{to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.f{opacity:1;transform:none;animation:none}}
@media(max-width:820px){.grid{grid-template-columns:1fr}aside{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line);padding:56px 24px 32px;gap:32px}aside h1{font-size:38px}aside nav{margin-top:28px;flex-direction:row;flex-wrap:wrap;gap:6px 22px}.aside-foot{display:none}main{padding:36px 24px 64px}h2.title{font-size:36px}.label{margin-top:56px}.rows li{grid-template-columns:1fr;gap:4px;padding:16px 0}.mobile-foot{display:block;margin-top:64px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--faint);line-height:2}.mobile-foot a{color:inherit;text-decoration:none}}
@media(min-width:821px){.mobile-foot{display:none}}
