:root{
  --bg:#fbfbf8; --ink:#1d2430; --muted:#5d6676; --line:#e2e5eb; --accent:#2f5d8a; --card:#ffffff;
  --f-display:"Fraunces", Georgia, serif; --f-body:"Literata", Georgia, serif; --f-ui:"IBM Plex Sans", system-ui, sans-serif;
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root{--bg:#14171c;--ink:#e3e7ee;--muted:#9aa3b2;--line:#2c3340;--accent:#8fb6dd;--card:#1c212a;color-scheme:dark}}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-ui);font-size:15px;line-height:1.5}
.wrap{max-width:720px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
a{color:var(--accent)}
.site-bar{border-bottom:1px solid var(--line);padding-top:env(safe-area-inset-top,0px)}
.site-bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;flex-wrap:wrap}
.site-brand{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:700;font-size:18px;color:var(--ink);text-decoration:none}
.site-brand img{border-radius:7px}
nav{display:flex;gap:16px;align-items:center;font-size:14px}
nav a{text-decoration:none;color:var(--muted)}
nav a.open{color:#fff;background:#2f5d8a;padding:7px 14px;border-radius:999px;font-weight:500}
.doc{padding-block:40px 64px}
.eyebrow{font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--accent);font-weight:600;margin:0 0 8px}
h1{font-family:var(--f-display);font-weight:700;font-size:clamp(28px,6vw,40px);line-height:1.15;margin:0 0 14px;text-wrap:balance}
h2{font-family:var(--f-display);font-weight:500;font-size:21px;margin:36px 0 10px}
.lede{font-family:var(--f-body);font-size:18px;line-height:1.6;margin:0 0 10px}
.meta{color:var(--muted);font-size:13px;margin:0}
p,li{font-family:var(--f-body);font-size:16px;line-height:1.7;max-width:65ch}
ul{padding-left:1.2em}
.email{font-family:var(--f-ui);font-weight:600;user-select:all;white-space:nowrap}
details{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:0 16px;margin:10px 0}
summary{cursor:pointer;font-weight:600;padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:12px}
summary::-webkit-details-marker{display:none}
summary::after{content:"+";color:var(--muted);font-weight:400;font-size:20px;line-height:1}
details[open] summary::after{content:"–"}
details p{margin:0 0 14px}
.site-foot{border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px)}
.site-foot .wrap{display:flex;gap:18px;min-height:56px;align-items:center;font-size:13px;color:var(--muted);flex-wrap:wrap}
.site-foot a{color:var(--muted)}
