:root{color-scheme:light dark;--paper:#f3f5f2;--paper-raised:#fbfcfa;--ink:#1d2422;--muted:#5b6a66;--rule:#d2d9d5;--accent:#245a7a;--serif:Charter, "Iowan Old Style", "Source Serif Pro", Georgia, serif;--sans:system-ui, -apple-system, "Segoe UI", sans-serif;--measure:38rem}@media (prefers-color-scheme:dark){:root{--paper:#161b1a;--paper-raised:#1d2423;--ink:#e4ebe8;--muted:#9aaba6;--rule:#33403d;--accent:#8cc1e0}}*,:before,:after{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--serif);-webkit-text-size-adjust:100%;font-size:112.5%;line-height:1.6}body{margin:0}a{color:var(--accent);text-underline-offset:.15em}.skip{position:absolute;left:-999px}.skip:focus{background:var(--paper-raised);padding:.5rem 1rem;top:1rem;left:1rem}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.masthead{border-bottom:1px solid var(--rule);font-family:var(--sans);gap:.75rem;padding:1.25rem clamp(1rem,4vw,3rem);display:grid}.site-title{color:var(--ink);font-size:1.05rem;font-weight:700;text-decoration:none}.masthead ul{flex-wrap:wrap;gap:.25rem 1.25rem;margin:0;padding:0;font-size:.9rem;list-style:none;display:flex}.masthead [aria-current=page]{color:var(--ink);text-decoration-thickness:2px}main{max-width:calc(var(--measure) + 2 * clamp(1rem, 4vw, 3rem));margin:0 auto;padding:2.5rem clamp(1rem,4vw,3rem) 4rem}h1,h2,h3{font-family:var(--sans);letter-spacing:-.01em;line-height:1.2}h1{margin:0 0 1.5rem;font-size:clamp(2rem,6vw,3rem)}h2{margin:2.5rem 0 1rem;font-size:1.5rem}h3{margin:1.75rem 0 .5rem;font-size:1.1rem}p{margin:0 0 1rem}.intro p{font-size:1.15rem}.cite{font-family:var(--sans);margin-left:.1em;font-size:.7em}.cite a{text-decoration:none}.figure{margin:1.5rem 0}.figure img{border-radius:2px;width:100%;height:auto;display:block}figcaption{font-family:var(--sans);color:var(--muted);gap:.2rem;margin-top:.5rem;font-size:.8rem;display:grid}.biography-head{gap:1rem;display:grid}.biography-head .figure{max-width:14rem;margin:0}@media (width>=40rem){.biography-head{grid-template-columns:12rem 1fr;align-items:end}}.lifespan{font-family:var(--sans);color:var(--muted)}.timeline{border-left:2px solid var(--rule);margin:0;padding:0;list-style:none}.timeline li{gap:.25rem;padding:0 0 1.5rem 1.25rem;display:grid;position:relative}.timeline li:before{content:"";background:var(--accent);border-radius:50%;width:.7rem;height:.7rem;position:absolute;top:.45rem;left:-.45rem}.timeline time,.chapter-number{font-family:var(--sans);color:var(--muted);margin:0;font-size:.85rem}.timeline h2{margin:0}.gallery{grid-template-columns:repeat(auto-fill,minmax(14rem,1fr));gap:1rem;display:grid}.chapter{border-top:1px solid var(--rule);padding:2rem 0}.chapters.has-map .terrain-map{z-index:1;border-bottom:1px solid var(--rule);background:var(--paper-raised);height:45vh;margin:0 calc(-1*clamp(1rem,4vw,3rem)) 1rem;position:sticky;top:0}.chapters.has-map .chapter{min-height:60vh}.chapters.has-map .chapter.active h3{color:var(--accent)}@media (width>=64rem){.chapters.has-map{--wide:min(90rem, 100vw - 4rem);width:var(--wide);margin-left:calc((100% - var(--wide)) / 2);grid-template-columns:minmax(0,1.5fr) minmax(0,32rem);column-gap:clamp(1.5rem,4vw,3rem);display:grid}.chapters.has-map>h2{grid-column:1/-1}.chapters.has-map .terrain-map{border:1px solid var(--rule);grid-area:2/1/span 100;height:calc(100vh - 2rem);margin:0;top:1rem}.chapters.has-map .chapter{grid-column:2}}.terrain-marker{background:var(--paper-raised);color:var(--ink);font-family:var(--sans);white-space:nowrap;box-shadow:0 1px 0 var(--rule);border-radius:2px;padding:.15rem .5rem;font-size:.75rem;font-weight:600}.chapter h3{margin-top:.25rem;font-size:1.4rem}.books,.sources{padding-left:1.25rem}.books li,.sources li{margin-bottom:.75rem}.books .by,.sources .from{font-family:var(--sans);color:var(--muted);font-size:.85rem;display:block}.sources li:target{background:var(--paper-raised);outline:2px solid var(--accent)}.colophon{border-top:1px solid var(--rule);font-family:var(--sans);color:var(--muted);padding:2rem clamp(1rem,4vw,3rem);font-size:.8rem}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
