:root{--bg: #faf7f1;--bg-raised: #ffffff;--ink: #1c1917;--ink-soft: #59524b;--line: #e7e0d4;--accent: #b4530a;--accent-soft: #f3e3d3;--font-display: "Fraunces", "Iowan Old Style", Georgia, serif;--font-body: "Newsreader", Georgia, "Times New Roman", serif;--font-ui: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--wrap: 68rem;--prose: 44rem;--pad: clamp(1.25rem, 4vw, 2.5rem)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #14110e;--bg-raised: #1d1915;--ink: #ece7de;--ink-soft: #a69e93;--line: #2f2a24;--accent: #e8873f;--accent-soft: #3a2817}}:root[data-theme=dark]{--bg: #14110e;--bg-raised: #1d1915;--ink: #ece7de;--ink-soft: #a69e93;--line: #2f2a24;--accent: #e8873f;--accent-soft: #3a2817}*{box-sizing:border-box;margin:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:clamp(1.05rem,.4vw + 1rem,1.15rem);line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg,video{max-width:100%;height:auto}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:.18em}a:hover{text-decoration-thickness:2px}::selection{background:var(--accent-soft)}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.15;letter-spacing:-.01em;text-wrap:balance}.wrap{max-width:var(--wrap);margin-inline:auto;padding-inline:var(--pad)}.site-header{border-bottom:1px solid var(--line);background:var(--bg)}.site-header .wrap{display:flex;flex-wrap:wrap;align-items:baseline;gap:.75rem 1.75rem;padding-block:1.1rem}.brand{font-family:var(--font-display);font-weight:700;font-size:1.2rem;color:var(--ink);text-decoration:none;margin-right:auto;white-space:nowrap}.site-nav{display:flex;flex-wrap:wrap;gap:.2rem 1.35rem;align-items:baseline;font-family:var(--font-ui);font-size:.92rem}.site-nav a{color:var(--ink-soft);text-decoration:none;padding-block:.15rem}.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--ink)}.site-nav a[aria-current=page]{border-bottom:2px solid var(--accent)}@media(max-width:40rem){.site-nav{flex-basis:100%;order:3}.theme-toggle{margin-left:auto}}.theme-toggle{border:1px solid var(--line);background:var(--bg-raised);color:var(--ink-soft);border-radius:999px;width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;font-size:.95rem;align-self:center}.theme-toggle:hover{color:var(--ink)}.site-footer{border-top:1px solid var(--line);margin-top:clamp(3rem,8vw,6rem);padding-block:2.25rem 3rem;font-family:var(--font-ui);font-size:.88rem;color:var(--ink-soft)}.site-footer .wrap{display:grid;gap:1rem}.site-footer nav{display:flex;flex-wrap:wrap;gap:.3rem 1.4rem}.site-footer a{color:var(--ink-soft)}.site-footer a:hover{color:var(--ink)}.footer-disclaimer{max-width:52rem;line-height:1.55}.hero{padding-block:clamp(3rem,9vw,6.5rem) clamp(2.5rem,7vw,5rem);display:grid;gap:2.5rem;align-items:center}@media(min-width:56rem){.hero{grid-template-columns:1fr auto;gap:4rem}}.portrait{width:min(60vw,15rem);aspect-ratio:1;object-fit:cover;object-position:center 22%;border-radius:1.25rem;border:1px solid var(--line);box-shadow:0 1rem 2.5rem #0000001f;justify-self:start}@media(min-width:56rem){.hero .portrait{width:17rem;justify-self:end}}.portrait-side{width:100%;max-width:11rem;margin-bottom:1.1rem}.photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr));gap:1.2rem}.photo-grid figure{margin:0}.photo-grid img{width:100%;aspect-ratio:4 / 3;object-fit:cover;border-radius:.75rem;border:1px solid var(--line)}.photo-grid figcaption{font-family:var(--font-ui);font-size:.82rem;color:var(--ink-soft);margin-top:.5rem;line-height:1.4}.write-form{max-width:var(--prose);display:grid;gap:1.1rem;font-family:var(--font-ui)}.write-form label{display:grid;gap:.4rem;font-size:.9rem;color:var(--ink-soft)}.write-form input,.write-form textarea{font:inherit;font-size:1rem;color:var(--ink);background:var(--bg-raised);border:1px solid var(--line);border-radius:.55rem;padding:.7rem .9rem}.write-form input:focus,.write-form textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}.write-form button{justify-self:start;font:inherit;font-weight:600;color:var(--bg);background:var(--accent);border:0;border-radius:999px;padding:.7rem 1.8rem;cursor:pointer}.write-form button:hover{filter:brightness(1.08)}.form-note{font-size:.85rem;color:var(--ink-soft)}.hero .eyebrow{font-family:var(--font-ui);font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem}.hero h1{font-size:clamp(2.4rem,6.5vw,4.2rem);font-weight:700;max-width:22ch}.hero .lede{margin-top:1.4rem;font-size:clamp(1.15rem,1vw + 1rem,1.45rem);line-height:1.55;color:var(--ink-soft);max-width:34em}.hero .lede strong{color:var(--ink);font-weight:500}.section{padding-block:clamp(2rem,5vw,3.5rem)}.section+.section{border-top:1px solid var(--line)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:clamp(1.4rem,3vw,2.2rem)}.section-head h2{font-size:clamp(1.5rem,2.5vw,2rem)}.section-head .more{font-family:var(--font-ui);font-size:.9rem;white-space:nowrap}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(17rem,100%),1fr));gap:1.1rem}.card{background:var(--bg-raised);border:1px solid var(--line);border-radius:.75rem;padding:1.4rem 1.5rem 1.5rem;display:flex;flex-direction:column;gap:.6rem}.card h3{font-size:1.25rem}.card .card-status{font-family:var(--font-ui);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.card p{color:var(--ink-soft);font-size:.98rem;line-height:1.55}.card .card-cta{margin-top:auto;padding-top:.5rem;font-family:var(--font-ui);font-size:.9rem;font-weight:600;text-decoration:none}.card .card-cta:hover{text-decoration:underline}.post-list{list-style:none;padding:0;display:grid;gap:0}.post-list li{border-bottom:1px solid var(--line)}.post-list li:first-child{border-top:1px solid var(--line)}.post-link{display:flex;flex-wrap:wrap;align-items:baseline;gap:.25rem 1.5rem;padding-block:1.05rem;text-decoration:none;color:var(--ink)}.post-link:hover .post-title{color:var(--accent)}.post-title{font-family:var(--font-display);font-weight:600;font-size:1.15rem;flex:1 1 22rem}.post-meta{font-family:var(--font-ui);font-size:.82rem;color:var(--ink-soft);white-space:nowrap}.post-desc{flex-basis:100%;color:var(--ink-soft);font-size:.95rem;margin-top:.1rem}.badge{font-family:var(--font-ui);font-size:.7rem;letter-spacing:.07em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:.1rem .55rem;align-self:center}.prose{max-width:var(--prose)}.prose>*+*{margin-top:1.1em}.prose h2{font-size:1.6rem;margin-top:2em}.prose h3{font-size:1.25rem;margin-top:1.6em}.prose blockquote{border-left:3px solid var(--accent);padding-left:1.1rem;color:var(--ink-soft);font-style:italic}.prose ul,.prose ol{padding-left:1.4rem}.prose li+li{margin-top:.35em}.prose hr{border:0;border-top:1px solid var(--line);margin-block:2.2em}.prose code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.88em;background:var(--bg-raised);border:1px solid var(--line);border-radius:.3rem;padding:.08em .35em}.prose pre{background:var(--bg-raised);border:1px solid var(--line);border-radius:.6rem;padding:1rem 1.2rem;overflow-x:auto}.prose pre code{border:0;background:none;padding:0}.article-header{padding-block:clamp(2.5rem,6vw,4.5rem) 0;max-width:var(--prose)}.article-header h1{font-size:clamp(1.9rem,4.5vw,2.9rem)}.article-header .post-meta{display:block;margin-bottom:.9rem}.article-header .description{margin-top:1rem;color:var(--ink-soft);font-size:1.12rem}.article-body{padding-block:clamp(1.8rem,4vw,2.8rem)}.stub-notice{font-family:var(--font-ui);font-size:.9rem;background:var(--accent-soft);border-radius:.6rem;padding:.8rem 1.1rem;margin-bottom:1.6rem}.note{border:1px solid var(--line);background:var(--bg-raised);border-radius:.75rem;padding:1.3rem 1.5rem}.note+.note{margin-top:1.1rem}.note .post-meta{display:block;margin-bottom:.55rem}.note-stream{max-width:var(--prose)}.page-header{padding-block:clamp(2.5rem,6vw,4.5rem) clamp(1.5rem,4vw,2.5rem)}.page-header h1{font-size:clamp(2rem,5vw,3.1rem)}.page-header .lede{margin-top:1rem;color:var(--ink-soft);font-size:1.15rem;max-width:38em}.timeline{list-style:none;padding:0;border-left:2px solid var(--line);margin-left:.4rem;display:grid;gap:1.6rem}.timeline li{padding-left:1.5rem;position:relative}.timeline li:before{content:"";position:absolute;left:-.38rem;top:.5rem;width:.6rem;height:.6rem;border-radius:50%;background:var(--accent)}.timeline .when{font-family:var(--font-ui);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft)}.timeline h3{font-size:1.15rem;margin-top:.15rem}.timeline p{color:var(--ink-soft);font-size:.97rem;margin-top:.3rem;max-width:44em}.split{display:grid;gap:2.5rem;grid-template-columns:1fr}@media(min-width:56rem){.split{grid-template-columns:1.2fr .8fr;gap:4rem}}.aside-card{background:var(--bg-raised);border:1px solid var(--line);border-radius:.75rem;padding:1.5rem 1.6rem;font-family:var(--font-ui);font-size:.95rem;align-self:start}.aside-card h3{font-size:1.05rem;margin-bottom:.8rem}.aside-card ul{list-style:none;padding:0;display:grid;gap:.55rem;color:var(--ink-soft)}.photo-grid figure button{display:block;width:100%;padding:0;border:0;background:none;cursor:zoom-in;border-radius:.75rem}.lightbox{position:fixed;inset:0;z-index:50;display:none;place-items:center;width:100vw;height:100vh;max-width:100vw;max-height:100vh;padding:clamp(1rem,4vw,3rem);background:#0a0806f0;border:0;overflow:hidden}.lightbox::backdrop{background:#0a0806f0}.lightbox[open]{display:grid}.lightbox img{max-width:100%;max-height:78vh;border-radius:.5rem;object-fit:contain}.lightbox figcaption{color:#ece7de;font-family:var(--font-ui);font-size:.92rem;text-align:center;margin-top:1rem;max-width:46rem;margin-inline:auto}.lightbox-close{position:absolute;top:1rem;right:1.25rem;width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid rgba(236,231,222,.35);background:transparent;color:#ece7de;font-size:1.3rem;line-height:1;cursor:pointer}.lightbox-close:hover{background:#ece7de1f}@media(prefers-reduced-motion:no-preference){.lightbox[open] img{animation:lb-in .18s ease-out}@keyframes lb-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:none}}}
