:root{--navy:#0f2a4a;--navy-2:#163a66;--ink:#1c2430;--muted:#5b6673;--line:#e3e8ee;--bg:#fbfcfd;--card:#fff;--accent:#2f7de1;--green:#1f8a4c;--max:900px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--bg);margin:0;font-family:Avenir Next,Avenir,-apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,sans-serif;font-size:17px;line-height:1.6}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{color:var(--navy);margin:0 0 .5rem;line-height:1.2}h1{font-size:clamp(2.2rem,5vw,3.2rem);font-weight:700}h2{border-bottom:2px solid var(--line);margin-bottom:1rem;padding-bottom:.4rem;font-size:1.5rem;font-weight:600}h3{font-size:1.1rem;font-weight:600}p{margin:0 0 1rem}.muted{color:var(--muted)}.topbar{z-index:10;backdrop-filter:blur(8px);border-bottom:1px solid var(--line);background:#fbfcfdeb;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem 1.25rem;display:flex;position:sticky;top:0}.brand{color:var(--navy);font-weight:700}.topbar nav{flex-wrap:wrap;align-items:center;gap:1.1rem;display:flex}.topbar nav a{color:var(--ink);font-size:.95rem}.topbar nav a.btn{color:#fff}.brand{white-space:nowrap}main{max-width:var(--max);margin:0 auto;padding:1rem 1.25rem 3rem}section{padding:2.5rem 0}.hero{grid-template-columns:auto 1fr;align-items:center;gap:2rem;padding-top:3rem;display:grid}.headshot{object-fit:cover;border:4px solid #fff;border-radius:50%;width:200px;height:200px;box-shadow:0 6px 24px #0f2a4a2e}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.4rem;font-size:.8rem;font-weight:600}.lede{color:#2e3947;max-width:40rem;font-size:1.15rem}.actions{flex-wrap:wrap;gap:.6rem;margin-top:1rem;display:flex}.btn{background:var(--navy);color:#fff;border:2px solid var(--navy);border-radius:8px;padding:.6rem 1.1rem;font-size:.95rem;font-weight:600;display:inline-block}.btn:hover{background:var(--navy-2);text-decoration:none}.btn.ghost{color:var(--navy);background:0 0}.btn.ghost:hover{background:#0f2a4a0f}.btn.small{padding:.35rem .8rem;font-size:.85rem}.pills{flex-wrap:wrap;gap:.5rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.pills li{color:var(--navy);background:#e9f0f9;border:1px solid #d4e1f2;border-radius:999px;padding:.3rem .7rem;font-size:.85rem}.timeline{margin:0;padding:0;list-style:none}.timeline li{border-bottom:1px solid var(--line);grid-template-columns:160px 1fr;gap:1.25rem;padding:1rem 0;display:grid}.timeline li:last-child{border-bottom:0}.timeline .when{color:var(--muted);padding-top:.2rem;font-size:.9rem}.timeline p{color:#2e3947;margin:.2rem 0 0}.cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;flex-direction:column;padding:1.25rem;display:flex;box-shadow:0 1px 2px #0f2a4a0a}.card h3{margin-top:.5rem}.card p{color:#2e3947;font-size:.95rem}.card .stack{color:var(--muted);margin-top:auto;margin-bottom:0;font-size:.8rem}.tag{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);background:#eef1f5;border-radius:6px;align-self:flex-start;padding:.2rem .55rem;font-size:.72rem;font-weight:700}.tag.building{color:var(--green);background:#e4f4ea}.links{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}footer{border-top:1px solid var(--line);text-align:center;color:var(--muted);padding:1.5rem 1.25rem;font-size:.85rem}@media (width<=640px){.hero{text-align:center;grid-template-columns:1fr;justify-items:center}.actions{justify-content:center}.timeline li{grid-template-columns:1fr;gap:.2rem}.topbar{padding:.6rem .9rem}.topbar nav{gap:.7rem}.topbar nav a{font-size:.85rem}.lede{font-size:1.05rem}}.topbar nav a[aria-current=page]{color:var(--navy);font-weight:600}.essay-list{margin:0;padding:0;list-style:none}.essay-list li{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr;gap:1.25rem;padding:.9rem 0;display:grid}.essay-list li:last-child{border-bottom:0}.essay-list .when{color:var(--muted);padding-top:.15rem;font-size:.9rem}.essay-list p{color:#2e3947;margin:.2rem 0 0;font-size:.95rem}.pill-inline{color:var(--navy);vertical-align:middle;background:#e9f0f9;border:1px solid #d4e1f2;border-radius:999px;margin-left:.5rem;padding:.15rem .55rem;font-size:.75rem}.prose{max-width:44rem;padding-top:2.5rem}.prose h1{margin-bottom:1rem;font-size:clamp(1.9rem,4vw,2.6rem)}.prose h2{border-bottom:0;margin-top:2rem}.prose h3{margin-top:1.5rem}.prose p,.prose li{font-size:1.05rem}.prose blockquote{border-left:3px solid var(--accent);color:var(--muted);margin:1rem 0;padding:.5rem 1rem}.prose pre{color:#e6edf5;background:#0f2a4a;border-radius:8px;padding:1rem;font-size:.9rem;overflow-x:auto}.prose code{font-size:.92em}.prose :not(pre)>code{background:#eef1f5;border-radius:4px;padding:.1em .35em}.prose img{border-radius:8px;max-width:100%;height:auto}.callout{background:#e9f0f9;border:1px solid #d4e1f2;border-radius:10px;margin:0 0 1.5rem;padding:.8rem 1rem;font-size:.95rem}.back{margin-top:2.5rem}.tag.done{color:var(--green);background:#e4f4ea}.card h3 a{color:var(--navy)}@media (width<=640px){.essay-list li{grid-template-columns:1fr;gap:.2rem}}
