:root{--bg:#0d0d0d;--fg:#ededed;--fg-muted:#8b8b8b;--fg-faint:#6a6a6a;--rule:#242424;--rule-strong:#333;--accent:#4ade80;--glow-near:#ffb05c24;--glow-far:#de7e401a;--glow-noise:.5;--glass-bg:#ffffff0d;--glass-border:#ffffff1f;--glass-sheen:#ffffff29;--font:-apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;--measure:620px;--text:.9375rem;--text-sm:.875rem;--gap-section:6.5rem;--dur:.16s;--ease:cubic-bezier(.4, 0, .2, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}:target,[id]{scroll-margin-top:4rem}body{background:var(--bg);color:var(--fg);font-family:var(--font);font-size:var(--text);-webkit-font-smoothing:antialiased;transition:background var(--dur) var(--ease), color var(--dur) var(--ease);margin:0;line-height:1.6}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}h1,h2,h3,p,figure,dl,dd{margin:0}h1,h2,h3{font-size:inherit;font-weight:400}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0}::selection{background:var(--fg);color:var(--bg)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.page{z-index:1;width:100%;max-width:var(--measure);margin-inline:auto;padding-block:2.5rem 5rem;padding-inline:1.5rem;position:relative}.glow{inset-inline:0;z-index:0;pointer-events:none;height:78vh;opacity:var(--glow-opacity,0);transform:scaleY(var(--glow-scale,.52));transform-origin:bottom;position:fixed;bottom:0}.glow__breathe{transform-origin:bottom;animation:12s ease-in-out infinite breathe;position:absolute;inset:0}@keyframes breathe{0%,to{opacity:.6;transform:scaleY(.78)}50%{opacity:1;transform:scaleY(1.2)}}@media (prefers-reduced-motion:reduce){.glow__breathe{animation:none}}.glow__breathe:before,.glow__breathe:after{content:"";position:absolute;inset:0}.glow__breathe:before{background:radial-gradient(90% 78% at 50% 116%, var(--glow-near), transparent 62%), radial-gradient(140% 96% at 50% 128%, var(--glow-far), transparent 66%)}.glow__breathe:after{opacity:var(--glow-noise);mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n)'/%3E%3C/svg%3E");-webkit-mask-image:radial-gradient(90% 80% at 50% 116%,#000 8%,#0000 62%);mask-image:radial-gradient(90% 80% at 50% 116%,#000 8%,#0000 62%)}@media (prefers-reduced-motion:reduce){.glow{opacity:.85}}.section{margin-top:var(--gap-section)}.section__label{color:var(--fg-muted);margin-bottom:1.5rem}.header{justify-content:space-between;align-items:center;gap:1.5rem;display:flex}.header__nav{align-items:center;gap:1.125rem;display:flex}.header__nav a{color:var(--fg);transition:color var(--dur) var(--ease)}.header__nav a:hover{color:var(--fg-muted)}.intro{margin-top:7.5rem}.intro h1{margin-bottom:2.25rem}.intro p+p{margin-top:1.25rem}.intro__body{color:var(--fg)}.inline-link{color:var(--fg);text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:3px;transition:text-decoration-color var(--dur) var(--ease)}.inline-link:hover{-webkit-text-decoration-color:var(--fg);text-decoration-color:var(--fg)}.rows{border-top:1px solid var(--rule)}.row{border-bottom:1px solid var(--rule);transition:background var(--dur) var(--ease);align-items:baseline;gap:1.5rem;padding-block:.875rem;display:grid}.row--work,.row--link{grid-template-columns:9.5rem minmax(0,1fr) auto}.row__name{color:var(--fg)}.row__blurb{color:var(--fg-muted);transition:color var(--dur) var(--ease)}.row__arrow{color:var(--fg-faint);font-size:var(--text-sm);transition:color var(--dur) var(--ease), transform var(--dur) var(--ease)}.row--work:hover .row__blurb,.row--link:hover .row__blurb{color:var(--fg)}.row--work:hover .row__arrow,.row--link:hover .row__arrow{color:var(--fg);transform:translate(2px,-2px)}.journey{padding-left:1.75rem;position:relative}.journey:before{content:"";top:.6rem;left:4px;bottom:var(--spine-tail,0);background:var(--rule-strong);width:1px;position:absolute}.milestone+.milestone{margin-top:2rem}.milestone__when{color:var(--fg);position:relative}.milestone__when:before{content:"";border:1px solid var(--fg-faint);background:var(--bg);border-radius:50%;width:9px;height:9px;position:absolute;top:.55em;left:-1.75rem}.milestone__text{color:var(--fg-muted);margin-top:.5rem}.now{color:var(--fg-muted);margin:0;padding:0;list-style:none}.now li+li{margin-top:.75rem}.footer{margin-top:var(--gap-section);color:var(--fg-muted);justify-content:space-between;gap:1.5rem;display:flex}.status{border:1px solid var(--glass-border);background:var(--glass-bg);-webkit-backdrop-filter:blur(14px)saturate(1.7);box-shadow:inset 0 1px 0 0 var(--glass-sheen), 0 8px 24px -12px #000000b3;color:var(--fg-muted);font-size:var(--text-sm);pointer-events:none;border-radius:9px;align-items:center;gap:.5rem;padding:.5rem .8rem;display:flex;position:fixed;bottom:1.25rem;right:1.25rem}.status.is-lensing{-webkit-backdrop-filter:none;backdrop-filter:none;background:#ffffff06}.status-defs{pointer-events:none;width:0;height:0;position:absolute}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.status{background:var(--bg);border-color:var(--rule)}}.status__label{color:var(--fg)}@media (width<=640px){.page{padding-block:2rem 6rem}.intro,.section{margin-top:4.5rem}.header{flex-wrap:wrap;row-gap:.75rem}.header__nav{gap:.875rem}.row--work,.row--link{grid-template-columns:minmax(0,1fr) auto;row-gap:.25rem}.row--work .row__blurb,.row--link .row__blurb{grid-column:1}.row--work .row__arrow,.row--link .row__arrow{grid-area:1/2}.status{bottom:1rem;right:1rem}}
