:root{color-scheme:light dark;--bg:#e3ebe5;--surface:#f3f7f4;--text:#14231b;--muted:#4a5c52;--border:#b7c8bc;--accent:#1f6b45;--accent-soft:#d0e0d5;--focus:#1f6b45;--available:#1f8a55;--available-soft:#1f8a5533;--shadow:0 1px 2px #14231b0f, 0 10px 28px #14231b12;--hero-stage:#1a3326;--hero-stage-ink:#e8efe4;--tree-far:#a9c3b3;--tree-mid:#7b9f89;--tree-near:#2f5a43;--tree-snow-far:#f7fbf99e;--tree-snow-mid:#f7fbf9d9;--tree-snow-near:#f8fbfa;--tree-snow-ground:#f2f7f4;--forest-glow:#6ea5c314;--sky:#c9e0e8;--sky-low:#dceae8;--font-display:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--radius:12px;--measure:44rem;--measure-wide:68rem}@media (prefers-color-scheme:dark){:root{--bg:#0e1813;--surface:#15211a;--text:#e8efe4;--muted:#9fb0a5;--border:#26362d;--accent:#86c79a;--accent-soft:#1a2e22;--focus:#86c79a;--available:#5cc98a;--available-soft:#5cc98a33;--shadow:0 1px 2px #0000004d, 0 10px 28px #00000047;--hero-stage:#08140f;--hero-stage-ink:#e8efe4;--tree-far:#1d3b2d;--tree-mid:#142a20;--tree-near:#050b08;--tree-snow-far:#809e906b;--tree-snow-mid:#84a29494;--tree-snow-near:#8caa9ce0;--tree-snow-ground:#1d2c25;--forest-glow:#56aa821f;--sky:#0b1511;--sky-low:#12211a}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.6;position:relative}body:before{content:"";z-index:-2;pointer-events:none;background:radial-gradient(ellipse 90% 55% at 0% 12%, #1f6b4524, transparent 55%), radial-gradient(ellipse 70% 45% at 100% 18%, #4a785a1a, transparent 50%), radial-gradient(ellipse 50% 35% at 70% 100%, #1f6b451a, transparent 55%), var(--bg);position:fixed;inset:0}body:after{content:"";z-index:-1;pointer-events:none;opacity:.22;background-image:url(/bg-net.svg);background-position:110% -8%;background-repeat:no-repeat;background-size:min(720px,90vw);position:fixed;inset:0}@media (prefers-color-scheme:dark){body:before{background:radial-gradient(ellipse 90% 55% at 0% 12%, #56c79a14, transparent 55%), radial-gradient(ellipse 70% 45% at 100% 18%, #4f7d5f1a, transparent 50%), radial-gradient(ellipse 50% 35% at 70% 100%, #56c79a0f, transparent 55%), var(--bg)}body:after{opacity:.14}}h1,h2,h3{font-family:var(--font-display);text-wrap:balance;line-height:1.15}p{text-wrap:pretty}a{color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:4px}.skip-link{z-index:10;background:var(--text);color:var(--bg);border-radius:8px;padding:.5rem .9rem;font-weight:600;text-decoration:none;position:absolute;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ask-mark{border:1.5px solid;border-radius:50%;flex:none;width:.6rem;height:.6rem;display:inline-block}.ask-mark[data-ask=optional]{background:linear-gradient(90deg,currentColor 50%,#0000 50%)}.ask-mark[data-ask=required]{background:currentColor}.container{width:100%;max-width:var(--measure);margin-inline:auto;padding-inline:1.25rem}.container-wide{width:100%;max-width:var(--measure-wide);margin-inline:auto;padding-inline:1.25rem}@keyframes rise{0%{opacity:0;transform:translateY(.85rem)}to{opacity:1;transform:none}}@keyframes pulse-dot{0%,to{box-shadow:0 0 0 3px var(--available-soft)}50%{box-shadow:0 0 0 6px var(--available-soft)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}@media print{:root{--text:#000;--muted:#333;--border:#999;--accent:#000;--accent-soft:#eee;--surface:#fff}.skip-link{display:none!important}body{color:#000!important;background:#fff!important}body:before,body:after{display:none!important}a{text-decoration:underline;color:#000!important}.container,.container-wide{max-width:100%!important;padding-inline:0!important}.card,.timeline li,.project{break-inside:avoid}}
