:root{--ink:#1d2b36;--muted:#53626e;--bg:#fbfbf9;--line:#d9dde0;--accent:#e8a600;--band:#1d2b36;--link:#0b5a8a}
@media (prefers-color-scheme:dark){:root{--ink:#e8ecef;--muted:#a3b0ba;--bg:#141c23;--line:#2e3b46;--link:#7ec3ee}}
*{box-sizing:border-box}
html{font-family:Georgia,"Times New Roman",serif;line-height:1.65;color:var(--ink);background:var(--bg)}
body{margin:0}
a{color:var(--link)}
a:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
header{background:var(--bg);border-bottom:6px solid var(--accent)}
.wrap{max-width:62rem;margin:0 auto;padding:0 1.25rem}
.top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 2rem;padding:1.25rem 0 .75rem;align-items:center}
.brand{display:flex;align-items:center;gap:1rem;text-decoration:none;color:var(--ink)}
.brand img{height:4rem;width:auto;display:block;flex:none}
.brand .name{font:700 1.6rem/1.2 "Trebuchet MS",Verdana,sans-serif}
.brand small{display:block;font:400 .95rem/1.4 Georgia,serif;color:var(--muted)}
address{font-style:normal;font-size:.9rem;color:var(--muted);text-align:right}
nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
nav a{display:block;padding:.7rem 1rem;color:var(--ink);text-decoration:none;font:600 .95rem "Trebuchet MS",Verdana,sans-serif}
nav a:hover{background:var(--line)}
nav a[aria-current=page]{box-shadow:inset 0 -4px var(--accent)}
main{padding:2rem 0 3rem}
.hero{display:block;width:100%;height:auto;margin-bottom:2rem;border-radius:2px}
.cols{display:grid;grid-template-columns:minmax(0,16rem) minmax(0,1fr);gap:2rem;align-items:start}
.cols img{max-width:100%;height:auto}
h1,h2,h3{font-family:"Trebuchet MS",Verdana,sans-serif;line-height:1.25}
h2{margin-top:0;font-size:1.6rem}
h3{font-size:1.25rem;margin:1.75rem 0 .5rem}
.prose{max-width:42rem}
.phase{border-left:4px solid var(--accent);padding-left:1rem;margin:1.25rem 0}
.phase strong:first-child{font-family:"Trebuchet MS",Verdana,sans-serif}
.more{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--line)}
.more ul{margin:.25rem 0;padding-left:1.1rem}
footer{border-top:1px solid var(--line);color:var(--muted);font-size:.9rem;padding:1.25rem 0 2rem}
footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
@media(max-width:44rem){.cols{grid-template-columns:1fr}address{text-align:left}}
@media (prefers-color-scheme:dark){.brand img{background:#fff;padding:.4rem .7rem;border-radius:3px}}
