@font-face{font-family:Inter;src:url(/fonts/inter-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/inter-600.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Space Grotesk;src:url(/fonts/space-grotesk-700.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/jetbrains-mono-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{color-scheme:light dark;--bg:#fff;--ink:#111;--text:#1f1f1f;--grey:#6b6b6b;--line:#ddd;--accent:#ff4d1a;--on-ink:#fff;--font-head:"Space Grotesk", ui-sans-serif, system-ui, sans-serif;--font-body:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Consolas, monospace;--wrap:72rem;--gutter:clamp(1.25rem, 4vw, 2.5rem);--space-section:clamp(4.5rem, 10vw, 8rem);--ease:cubic-bezier(.2, .7, .2, 1);--callbar-h:3.5rem}@media (prefers-color-scheme:dark){:root{--bg:#111;--ink:#f2f2f2;--text:#e4e4e4;--grey:#a0a0a0;--line:#2e2e2e;--on-ink:#111}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:2rem}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;padding-bottom:calc(var(--callbar-h) + env(safe-area-inset-bottom));margin:0;font-size:1.0625rem;line-height:1.65}@media (width>=56rem){body{padding-bottom:0}}img,svg{max-width:100%;height:auto;display:block}h1,h2,h3{color:var(--ink);font-family:var(--font-head);letter-spacing:-.02em;text-wrap:balance;margin:0;font-weight:700;line-height:1.08}h1{font-size:clamp(2.6rem,1.5rem + 4.6vw,5rem)}h2{font-size:clamp(2rem,1.35rem + 2.6vw,3rem)}h3{letter-spacing:-.01em;font-size:1.375rem;line-height:1.2}p{margin:0 0 1em}p:last-child{margin-bottom:0}strong{color:var(--ink);font-weight:600}a{color:inherit;text-underline-offset:.22em;text-decoration-line:underline;text-decoration-thickness:1px;text-decoration-color:var(--grey);transition:text-decoration-color .2s var(--ease)}a:hover{text-decoration-color:var(--accent)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:1px}::selection{background:var(--ink);color:var(--bg)}.dot{color:var(--accent)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wrap{width:100%;max-width:calc(var(--wrap) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:var(--space-section)}.section+.section{border-top:1px solid var(--line)}.section-head{max-width:46rem;margin-bottom:clamp(2.5rem,6vw,4rem)}.section-head>p{margin-top:1.25rem;font-size:1.125rem}.skip{left:var(--gutter);z-index:50;background:var(--ink);color:var(--on-ink);padding:.75rem 1rem;text-decoration:none;position:absolute;top:-5rem}.skip:focus{top:1rem}.edge{background:var(--ink);height:6px}.edge .wrap{height:100%}.edge span{background:var(--accent);width:4.5rem;height:100%;display:block}.label{color:var(--grey);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:.65rem;margin:0 0 1.5rem;font-size:.75rem;line-height:1.4;display:flex}.label:before{content:"";background:var(--accent);flex:none;width:.5rem;height:.5rem}.cursor{background:var(--accent);flex:none;align-self:flex-end;width:.7em;height:.16em;margin-bottom:.2em;margin-left:.15em;animation:1.1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.site-header .wrap{justify-content:space-between;align-items:center;gap:2rem;padding-block:1.5rem;display:flex}.logo{flex:none;display:block}.logo img{width:auto;height:2.75rem}@media (width>=56rem){.logo img{height:3.25rem}}.nav{display:none}.nav ul,.menu ul{margin:0;padding:0;list-style:none}.nav ul a{color:var(--text);padding-block:.35rem;font-size:.975rem;text-decoration:none;display:inline-block;position:relative}.nav ul a:after{content:"";background:var(--accent);height:2px;transition:right .25s var(--ease);position:absolute;bottom:0;left:0;right:100%}.nav ul a:hover:after,.nav ul a[aria-current=page]:after{right:0}.nav ul a[aria-current=page]:after{background:var(--ink)}.nav .btn{min-height:2.75rem;padding-block:.6rem;font-size:.95rem}@media (width>=56rem){.nav{align-items:center;gap:2.5rem;display:flex}.nav ul{gap:2rem;display:flex}}.menu{position:relative}@media (width>=56rem){.menu{display:none}}.menu summary{border:1px solid var(--ink);min-height:2.75rem;color:var(--ink);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;user-select:none;align-items:center;padding:0 1rem;font-size:.75rem;list-style:none;display:flex}.menu summary::-webkit-details-marker{display:none}.menu[open] summary{background:var(--ink);color:var(--on-ink)}.menu nav{z-index:30;background:var(--bg);border:1px solid var(--ink);min-width:16rem;position:absolute;top:calc(100% + .5rem);right:0}.menu nav a{border-bottom:1px solid var(--line);padding:.95rem 1.25rem;font-weight:600;text-decoration:none;display:block}.menu nav li:last-child a{border-bottom:0}.menu nav a[aria-current=page]{box-shadow:inset 2px 0 0 var(--accent)}.actions{flex-wrap:wrap;gap:.875rem;margin-top:2.5rem;display:flex}.btn{border:1px solid var(--ink);background:var(--ink);min-height:3.25rem;color:var(--on-ink);font-family:var(--font-body);transition:background-color .2s var(--ease), color .2s var(--ease);align-items:center;gap:.75rem;padding:.9rem 1.5rem;font-size:1rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}@media (width<=30rem){.actions .btn{justify-content:center;width:100%}}.btn--ghost{color:var(--ink);background:0 0}.btn--ghost:hover{background:var(--ink);color:var(--on-ink)}.arrow{transition:transform .25s var(--ease);display:inline-block}a:hover .arrow{transform:translate(4px)}.hero{padding-block:clamp(3rem,8vw,6.5rem) clamp(4.5rem,10vw,8rem)}.hero h1{max-width:15ch}.hero .lead{max-width:40rem;margin-top:2rem;font-size:clamp(1.125rem,1rem + .5vw,1.3rem);line-height:1.6}.hero .label{margin-bottom:2rem}.hero-grid{gap:3.5rem;display:grid}@media (width>=64rem){.hero-grid{grid-template-columns:8fr 4fr;align-items:end;gap:4rem}}.hero-facts{border-top:2px solid var(--ink);margin:0}.hero-facts div{border-bottom:1px solid var(--line);padding-block:1rem}.hero-facts dt{color:var(--grey);font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;margin-bottom:.2rem;font-size:.72rem}.hero-facts dd{color:var(--ink);margin:0;font-weight:600}.page-head{border-bottom:1px solid var(--line);padding-block:clamp(3rem,8vw,6rem) clamp(2.5rem,6vw,4rem)}.page-head .lead{max-width:42rem;margin-top:1.75rem;font-size:clamp(1.125rem,1rem + .4vw,1.25rem)}.grid-3,.grid-2{grid-template-columns:1fr;gap:3rem 2rem;display:grid}@media (width>=48rem){.grid-2{grid-template-columns:repeat(2,1fr);gap:3rem}}@media (width>=60rem){.grid-3{grid-template-columns:repeat(3,1fr)}}.card{border-top:2px solid var(--ink);flex-direction:column;padding-top:1.5rem;display:flex;position:relative}.card:before{content:"";background:var(--accent);width:0;height:2px;transition:width .35s var(--ease);position:absolute;top:-2px;left:0}.card:hover:before,.card:focus-within:before{width:3rem}.card h3{margin-bottom:.85rem}.num{color:var(--grey);font-family:var(--font-mono);letter-spacing:.1em;font-variant-numeric:tabular-nums;margin-bottom:1.25rem;font-size:.8rem;display:block}.more{color:var(--ink);align-items:center;gap:.5rem;margin-top:auto;padding-top:1.25rem;font-weight:600;text-decoration:none;display:inline-flex}.item{border-top:1px solid var(--line);padding-top:1.5rem}.item h3{margin-bottom:.6rem;font-size:1.25rem}.steps{grid-template-columns:1fr;margin:0;padding:0;list-style:none;display:grid}.steps li{border-top:1px solid var(--line);grid-template-columns:3.25rem 1fr;gap:.5rem 1rem;padding-block:1.75rem;display:grid}.steps li:first-child{border-top:2px solid var(--ink)}.steps .num{margin:.35rem 0 0}.steps h3{margin-bottom:.5rem;font-size:1.25rem}@media (width>=60rem){.steps{grid-template-columns:repeat(4,1fr);gap:2rem}.steps li,.steps li:first-child{border-top:2px solid var(--ink);padding-block:1.5rem 0;display:block}.steps .num{margin-bottom:1.25rem}}.split{gap:2rem;display:grid}@media (width>=56rem){.split{grid-template-columns:5fr 7fr;gap:4rem}}.h-sub{margin-bottom:1.25rem;font-size:clamp(1.6rem,1.2rem + 1.4vw,2.25rem)}.ticks{margin:1.75rem 0 0;padding:0;list-style:none}.ticks li{border-top:1px solid var(--line);padding:.85rem 0 .85rem 1.75rem;position:relative}.ticks li:last-child{border-bottom:1px solid var(--line)}.ticks li:before{content:"";background:var(--ink);width:.75rem;height:1px;position:absolute;top:calc(.85rem + .82em);left:0}.person{align-items:center;gap:2.5rem;display:grid}@media (width>=48rem){.person{grid-template-columns:minmax(14rem,4fr) 8fr;gap:4rem}}.person .lead{max-width:38rem;margin-top:1.5rem;font-size:1.125rem}.portrait{aspect-ratio:4/5;color:#fff;background:#111;border-radius:14px;align-items:flex-end;max-width:22rem;padding:2rem;display:flex;position:relative}@media (prefers-color-scheme:dark){.portrait{background:#2a2a2a}}.portrait span{font-family:var(--font-head);letter-spacing:-.03em;font-size:5rem;font-weight:700;line-height:.8}.portrait .cursor{width:2.75rem;height:.9rem;margin:0 0 0 .75rem}.facts{gap:0;margin:2rem 0 0;display:grid}.facts div{border-top:1px solid var(--line);grid-template-columns:7rem 1fr;gap:1rem;padding-block:.75rem;display:grid}.facts dt{color:var(--grey);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;padding-top:.2rem;font-size:.75rem}.facts dd{margin:0}.cta h2{max-width:22ch}.cta .lead{max-width:38rem;margin-top:1.5rem;font-size:1.125rem}.cta-meta{color:var(--grey);font-family:var(--font-mono);letter-spacing:.06em;margin-top:2rem;font-size:.8rem}.contact-list{border-top:2px solid var(--ink);margin:0;padding:0;list-style:none}.contact-list li{border-bottom:1px solid var(--line);gap:.35rem;padding-block:1.5rem;display:grid}.contact-list .label{margin:0}.contact-list .big{color:var(--ink);font-family:var(--font-head);letter-spacing:-.01em;overflow-wrap:anywhere;font-size:clamp(1.4rem,1.1rem + 1.3vw,1.875rem);font-weight:700;line-height:1.2;text-decoration:none}a.big:hover{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px}.contact-list--row{border-top:2px solid var(--ink);grid-template-columns:1fr;display:grid}@media (width>=56rem){.contact-list--row{grid-template-columns:repeat(3,1fr);column-gap:2rem}}.contact-list--row li{align-content:start}.nowrap{white-space:nowrap}.form{border-top:2px solid var(--ink);gap:1.5rem;padding-top:1.5rem;display:grid}.field{gap:.4rem;display:grid}.field label{color:var(--grey);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:.75rem}.field .optional{text-transform:none;letter-spacing:.04em}.field input,.field textarea{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--ink);font:inherit;transition:border-color .2s var(--ease);background:0 0;border-radius:0;padding:.7rem 0;font-size:1.0625rem;line-height:1.5}.field textarea{resize:vertical;min-height:9rem}.field input:hover,.field textarea:hover{border-bottom-color:var(--grey)}.field input:focus,.field textarea:focus{border-bottom:2px solid var(--accent);outline:none;padding-bottom:calc(.7rem - 1px)}.field input:focus-visible,.field textarea:focus-visible{outline:none}.form-note{color:var(--grey);margin:0;font-size:.875rem}.form .actions{margin-top:0}.hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}button.btn{cursor:pointer}.narrow{max-width:calc(46rem + 2 * var(--gutter))}.back-link{margin-top:1.5rem;font-size:.9375rem}.back-link a,.week-nav a{color:var(--ink)}.week-nav{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;grid-template-columns:1fr auto 1fr;align-items:center;gap:1rem;margin-bottom:1.5rem;font-size:.75rem;display:grid}.week-nav>:last-child{text-align:right}.week-nav .is-off{color:var(--grey);opacity:.6}.week-title{font-family:var(--font-head);letter-spacing:-.01em;text-transform:none;text-align:center;font-size:clamp(1.25rem,1rem + 1vw,1.75rem)}.days{border-top:2px solid var(--ink)}.day{border-bottom:1px solid var(--line);gap:.75rem;padding-block:1.25rem;display:grid}@media (width>=48rem){.day{grid-template-columns:11rem 1fr;align-items:start}}.day-name{color:var(--ink);margin:0;font-weight:600;line-height:1.3}.day-name span{color:var(--grey);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:400;display:block}.slots{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.slot{border:1px solid var(--ink);min-width:5rem;color:var(--ink);font-family:var(--font-mono);text-align:center;transition:background-color .2s var(--ease), color .2s var(--ease);padding:.55rem .9rem;font-size:.9375rem;text-decoration:none;display:inline-block}.slot:hover,.slot:focus-visible{background:var(--ink);color:var(--on-ink)}.day-empty{color:var(--grey);margin:0;font-size:.9375rem}.week-foot{margin-top:1.5rem}.choice{border:0;flex-wrap:wrap;gap:.5rem 1.75rem;margin:0;padding:0;display:flex}.choice legend{width:100%;color:var(--grey);font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin-bottom:.4rem;padding:0;font-size:.75rem}.choice label{color:var(--ink);cursor:pointer;align-items:center;gap:.5rem;display:inline-flex}.choice input{width:1.1rem;height:1.1rem;accent-color:var(--accent);margin:0}.prose{max-width:46rem}.prose h2{letter-spacing:-.01em;margin:3rem 0 1rem;font-size:1.5rem}.prose h3{margin:2rem 0 .75rem;font-size:1.125rem}.prose h2:first-child{margin-top:0}.prose ul{padding-left:1.25rem}.prose li+li{margin-top:.4rem}.prose address{font-style:normal}.note{border-left:2px solid var(--accent);margin-bottom:2.5rem;padding:.25rem 0 .25rem 1.25rem}.note .label{margin-bottom:.5rem}.terminal{color:var(--ink);font-family:var(--font-mono);flex-wrap:wrap;align-items:flex-end;margin:0;font-size:clamp(1.5rem,1rem + 3vw,3rem);line-height:1.2;display:flex}.terminal .prompt{color:var(--grey);margin-right:.6em}.site-footer{border-top:1px solid var(--ink);padding-block:3.5rem 2rem;font-size:.9375rem}.footer-cols{grid-template-columns:1fr;gap:2rem;display:grid}@media (width>=40rem){.footer-cols{grid-template-columns:repeat(2,1fr)}}@media (width>=60rem){.footer-cols{grid-template-columns:1.3fr 1fr 1fr 1fr}}.footer-cols .label{margin-bottom:.85rem;font-size:.7rem}.footer-cols ul{margin:0;padding:0;list-style:none}.footer-cols address{font-style:normal}.footer-cols a{text-decoration:none}.footer-cols a:hover{text-decoration:underline;text-decoration-color:var(--accent)}.footer-brand img{width:2.75rem;height:2.75rem;margin-bottom:1rem}.footer-brand p{color:var(--grey);font-family:var(--font-mono);letter-spacing:.08em;font-size:.75rem}.footer-meta{border-top:1px solid var(--line);color:var(--grey);font-family:var(--font-mono);letter-spacing:.06em;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;margin-top:3rem;padding-top:1.5rem;font-size:.75rem;display:flex}.callbar{z-index:40;padding-bottom:env(safe-area-inset-bottom);background:var(--bg);border-top:1px solid var(--ink);grid-template-columns:1fr 1fr;display:grid;position:fixed;bottom:0;left:0;right:0}.callbar a{min-height:var(--callbar-h);color:var(--ink);justify-content:center;align-items:center;gap:.6rem;font-weight:600;text-decoration:none;display:flex}.callbar a+a{border-left:1px solid var(--line)}.callbar .label{margin:0}@media (width>=56rem){.callbar{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
