@font-face{font-family:Mona Sans;src:url(/assets/fonts/mona-sans.749bb53db0.woff2)format("woff2");font-weight:400 700;font-stretch:100% 112%;font-style:normal;font-display:swap}@font-face{font-family:Plex Mono;src:url(/assets/fonts/plex-mono.a181cd0864.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Mona Sans Fallback;src:local(Arial),local(Helvetica Neue),local(Helvetica),local(Liberation Sans);size-adjust:104.7%;ascent-override:104.1%;descent-override:30.6%;line-gap-override:0%}:root{color-scheme:light dark;--bg:light-dark(#f6f5f2,#0c0d10);--bg-alt:light-dark(#efede8,#111216);--surface:light-dark(#fff,#15171b);--surface-2:light-dark(#faf9f7,#1b1d22);--line:light-dark(#14161c1a,#ffffff14);--line-strong:light-dark(#14161c2e,#ffffff26);--fg:light-dark(#14161b,#eef0f3);--fg-2:light-dark(#454952,#b4b8c0);--fg-3:light-dark(#5f646e,#8c919b);--accent:light-dark(#b0440c,#ff8f52);--accent-soft:light-dark(#b0440c1a,#ff8f5221);--accent-line:light-dark(#b0440c59,#ff8f5266);--strike:light-dark(#b23a3a,#f0877a);--btn-bg:light-dark(#14161b,#eef0f3);--btn-fg:light-dark(#f6f5f2,#0c0d10);--shadow:light-dark(0 1px 2px #14161c0f,0 1px 2px #0006);--shadow-lg:light-dark(0 30px 80px -30px #14161c59,0 40px 100px -30px #000000bf);--sans:"Mona Sans", "Mona Sans Fallback", system-ui, sans-serif;--mono:"Plex Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--wrap:76rem;--gutter:clamp(1.25rem, 4vw, 2.5rem);--radius:14px;--ease:cubic-bezier(.22, 1, .36, 1)}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,:before,:after{box-sizing:border-box}*{margin:0}html{text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:5rem}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--fg);font-family:var(--sans);font-kerning:normal;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:1.0625rem;line-height:1.6}img,svg{max-width:100%;display:block}img{height:auto}ul,ol{padding:0;list-style:none}a{color:inherit}button{font:inherit;color:inherit}h1,h2,h3,h4{text-wrap:balance;font-weight:600;line-height:1.15}p{text-wrap:pretty}del{text-decoration-color:color-mix(in oklab, var(--strike) 80%, transparent);text-decoration-thickness:1px}ins{text-decoration:none}:focus-visible{outline:2px solid var(--fg);outline-offset:3px;border-radius:4px}.wrap{width:100%;max-width:calc(var(--wrap) + 2 * var(--gutter));padding-inline:var(--gutter);margin-inline:auto}.nw{white-space:nowrap}.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}.skip{z-index:100;background:var(--btn-bg);color:var(--btn-fg);border-radius:8px;padding:.6rem 1rem;font-weight:600;text-decoration:none;position:absolute;top:-4rem;left:1rem}.skip:focus{top:1rem}.btn{white-space:nowrap;cursor:pointer;min-height:2.75rem;transition:background-color .16s var(--ease), border-color .16s var(--ease), color .16s var(--ease);border:1px solid #0000;border-radius:10px;align-items:center;gap:.5rem;padding:.6rem 1.1rem;font-size:.9375rem;font-weight:560;line-height:1.2;text-decoration:none;display:inline-flex}.btn--primary{background:var(--btn-bg);color:var(--btn-fg)}.btn--primary:hover{background:color-mix(in oklab, var(--btn-bg) 86%, var(--accent))}.btn--ghost{border-color:var(--line-strong);background:0 0}.btn--ghost:hover{border-color:var(--fg-3);background:var(--surface)}.btn--text{color:var(--fg-2);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:.25em;padding-inline:.25rem}.btn--text:hover{color:var(--fg);text-decoration-color:var(--accent)}.btn--sm{border-radius:8px;min-height:2.25rem;padding:.4rem .8rem;font-size:.875rem}.i-ext{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;opacity:.8;flex:none;width:.7em;height:.7em}.btn__meta{font-family:var(--mono);letter-spacing:.02em;opacity:.72;font-size:.75em}.masthead{z-index:50;background:color-mix(in oklab, var(--bg) 82%, transparent);backdrop-filter:saturate(1.4)blur(14px);border-bottom:1px solid var(--line);position:sticky;top:0}.masthead__row{align-items:center;gap:1.5rem;min-height:4rem;display:flex}.mark{letter-spacing:-.01em;align-items:center;gap:.6rem;font-weight:600;text-decoration:none;display:inline-flex}.mark__glyph{width:1.75rem;height:1.75rem}.mark__ink{fill:var(--fg)}.mark__hl{fill:var(--accent)}.mark__name{font-size:.98rem}.nav{margin-left:auto}.nav ul{gap:.25rem;display:flex}.nav a{color:var(--fg-2);transition:color .16s var(--ease), background-color .16s var(--ease);border-radius:8px;padding:.4rem .7rem;font-size:.9rem;text-decoration:none;display:block}.nav a:hover{color:var(--fg);background:var(--surface)}.nav a[aria-current=true]{color:var(--fg)}.masthead__actions{align-items:center;gap:.5rem;display:flex}.theme-toggle{border:1px solid var(--line-strong);cursor:pointer;background:0 0;border-radius:8px;place-items:center;width:2.25rem;height:2.25rem;display:grid}.theme-toggle[hidden]{display:none}.theme-toggle:hover{background:var(--surface)}.theme-toggle svg{width:1.1rem;height:1.1rem}.theme-toggle__disc{fill:none;stroke:var(--fg);stroke-width:1.5px}.theme-toggle__half{fill:var(--fg)}@media (width<=56rem){.nav{display:none}.masthead__actions{margin-left:auto}}.eyebrow,.kicker{font-family:var(--mono);letter-spacing:.04em;color:var(--fg-3);font-size:.78rem;line-height:1.5}.eyebrow{align-items:baseline;display:flex}.eyebrow__dot{background:var(--accent);width:.5rem;height:.5rem;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%;flex:none;margin-right:.7rem;display:inline-block}.eyebrow__part{white-space:nowrap}@media (width<=30rem){.eyebrow__name,.eyebrow__sep,.kicker__sep{display:none}.eyebrow__part,.kicker__part{display:block}}.section{padding-block:clamp(4.5rem,9vw,8rem)}.section--alt{background:var(--bg-alt);border-block:1px solid var(--line)}.section--tight{padding-block:clamp(3.5rem,7vw,6rem)}.section__head{max-width:46rem;margin-bottom:clamp(2.5rem,5vw,3.75rem)}.section__title{letter-spacing:-.03em;margin-top:.75rem;font-size:clamp(2rem,1.4rem + 2.4vw,3.25rem);font-weight:620;font-stretch:104%;line-height:1.05}.section__title--sm{font-size:clamp(1.75rem,1.3rem + 1.6vw,2.5rem)}.section__lede{color:var(--fg-2);margin-top:1.25rem;font-size:clamp(1.0625rem,1rem + .35vw,1.25rem);line-height:1.55}.hero{padding-top:clamp(3.5rem,8vw,6.5rem);padding-bottom:clamp(3rem,6vw,5rem);overflow:clip}.hero__copy{max-width:56rem}.hero__title{letter-spacing:-.038em;margin-top:1.25rem;font-size:clamp(2.35rem,1.35rem + 4vw,4.75rem);font-weight:620;font-stretch:104%;line-height:1.02}.hero__title a{text-decoration:underline;text-decoration-color:var(--accent-line);text-underline-offset:.12em;transition:text-decoration-color .16s var(--ease);text-decoration-thickness:.06em}.hero__title a:hover{text-decoration-color:var(--accent)}.hero__lede{max-width:40rem;color:var(--fg-2);margin-top:1.5rem;font-size:clamp(1.0625rem,1rem + .45vw,1.3rem);line-height:1.55}.hero__actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:2rem;display:flex}.hero__note{color:var(--fg-3);margin-top:1.25rem;font-size:.9375rem}.hero__note a{color:var(--fg-2);text-underline-offset:.2em;text-decoration-color:var(--line-strong)}.hero__note a:hover{color:var(--fg);text-decoration-color:var(--accent)}.stage{margin-top:clamp(3rem,6vw,4.5rem);position:relative}.stage__media{padding-bottom:clamp(2.5rem,5vw,3.5rem);padding-right:clamp(2.5rem,9vw,7rem);position:relative}.stage:before{content:"";z-index:-1;background:radial-gradient(60% 60% at 50% 40%, var(--accent-soft), transparent 70%);filter:blur(40px);position:absolute;inset:8% 4% -4%}.stage__screen{border-radius:var(--radius);border:1px solid var(--line-strong);box-shadow:var(--shadow-lg);background:#0b0c0e;overflow:hidden}.stage__screen img{width:100%}.stage__phone{outline:1px solid var(--line-strong);width:clamp(7.5rem,19vw,15.5rem);box-shadow:var(--shadow-lg);background:#0b0c0e;border:clamp(4px,.6vw,7px) solid #0a0a0b;border-radius:clamp(1rem,2.4vw,1.9rem);position:absolute;bottom:0;right:0;overflow:hidden}.stage__phone img{aspect-ratio:600/1060;object-fit:cover;object-position:top;width:100%}.stage__cap{max-width:40rem;color:var(--fg-3);margin-top:.5rem;font-size:.875rem}.project a,.points a{text-underline-offset:.2em;text-decoration-color:var(--line-strong)}.caps{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(3,1fr);gap:1px;display:grid;overflow:hidden}.cap{background:var(--bg);padding:1.6rem 1.6rem 1.75rem}.cap h3{letter-spacing:-.01em;font-size:1.0625rem}.cap p{color:var(--fg-2);margin-top:.6rem;font-size:.9625rem;line-height:1.55}@media (width<=60rem){.caps{grid-template-columns:repeat(2,1fr)}}@media (width<=38rem){.caps{grid-template-columns:1fr}}.hard{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:start;gap:clamp(2rem,5vw,4.5rem);margin-top:clamp(3.5rem,7vw,5.5rem);display:grid}.hard__media{position:sticky;top:6rem}.hard__media img{border-radius:var(--radius);border:1px solid var(--line-strong);box-shadow:var(--shadow-lg);background:#0b0c0e}.hard__media figcaption{color:var(--fg-3);margin-top:.85rem;font-size:.875rem}.hard__title{letter-spacing:-.025em;font-size:clamp(1.5rem,1.2rem + 1vw,2rem)}.hard__list{counter-reset:hard;margin-top:1.5rem}.hard__list li{border-top:1px solid var(--line);color:var(--fg-2);counter-increment:hard;padding:1.25rem 0 1.25rem 2.75rem;font-size:1rem;line-height:1.6;position:relative}.hard__list li:before{content:counter(hard, decimal-leading-zero);font-family:var(--mono);color:var(--accent);font-size:.75rem;position:absolute;top:1.45rem;left:0}.hard__list strong{color:var(--fg);font-weight:600}@media (width<=60rem){.hard{grid-template-columns:1fr}.hard__media{position:static}}.status{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem 2.5rem;margin-top:clamp(3.5rem,7vw,5rem);padding:clamp(1.5rem,3vw,2.25rem);display:flex}.status>div:first-child{flex:26rem}.status__title{letter-spacing:-.01em;align-items:center;gap:.6rem;font-size:1.125rem;display:flex}.status__title:before{content:"";background:var(--accent);width:.5rem;height:.5rem;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%}.status p{color:var(--fg-2);margin-top:.5rem}.status__actions{flex-wrap:wrap;gap:.75rem;display:flex}.flow{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:clamp(1.25rem,3vw,2rem)}.flow__cap{font-family:var(--mono);color:var(--fg-3);letter-spacing:.02em;text-wrap:balance;font-size:.78rem}.flow__steps{counter-reset:flow;grid-template-columns:repeat(5,1fr);gap:.75rem;margin-top:1.25rem;display:grid}.flow__step{border:1px solid var(--line);background:var(--bg);border-radius:10px;flex-direction:column;gap:.35rem;padding:1rem;display:flex;position:relative}.flow__step:not(:last-child):after{content:"";z-index:1;border-top:1.5px solid var(--fg-3);border-right:1.5px solid var(--fg-3);width:.4rem;height:.4rem;position:absolute;top:50%;right:-.52rem;translate:0 -50%;rotate:45deg}.flow__kind{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--fg-3);align-self:flex-start;font-size:.6875rem}.flow__step--agent .flow__kind{color:var(--accent)}.flow__step--gate{border-color:var(--accent-line);box-shadow:inset 0 0 0 1px var(--accent-soft)}.flow__step--gate .flow__kind{color:var(--accent)}.flow__who{font-size:.975rem;font-weight:600}.flow__what{color:var(--fg-2);text-wrap:pretty;font-size:.875rem;line-height:1.45}@media (width<=60rem){.flow__steps{grid-template-columns:1fr;gap:.6rem}.flow__step{grid-template-columns:5.5rem 1fr;column-gap:1rem;display:grid}.flow__kind{grid-row:span 2;padding-top:.2rem}.flow__step:not(:last-child):after{inset:auto auto -.5rem 2.4rem;translate:none;rotate:135deg}}.points{margin-top:clamp(2.5rem,5vw,3.5rem)}.points>div{border-top:1px solid var(--line);grid-template-columns:12rem 1fr;gap:1.5rem;padding-block:1.35rem;display:grid}.points>div:last-child{border-bottom:1px solid var(--line)}.points dt{font-weight:600}.points dd{color:var(--fg-2);max-width:46rem}@media (width<=44rem){.points>div{grid-template-columns:1fr;gap:.4rem}}.project{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(1.5rem,5vw,4.5rem);display:grid}.project__body p{color:var(--fg-2);font-size:1.0625rem}.chips{flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;display:flex}.chips a,.chips>li>span{border:1px solid var(--line-strong);min-height:2.5rem;color:var(--fg);transition:border-color .16s var(--ease), background-color .16s var(--ease);border-radius:999px;align-items:center;gap:.35rem;padding:.45rem .85rem;font-size:.875rem;text-decoration:none;display:inline-flex}.chips a:hover{border-color:var(--fg-3);background:var(--surface)}.chips>li>span{color:var(--fg-2)}@media (width<=52rem){.project{grid-template-columns:1fr}}.exp{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);display:grid}.timeline li{border-top:1px solid var(--line);grid-template-columns:8.5rem 1fr;column-gap:1.25rem;padding-block:1rem;display:grid}.timeline li:last-child{border-bottom:1px solid var(--line)}.timeline__when{font-family:var(--mono);color:var(--fg-3);grid-row:span 2;padding-top:.15rem;font-size:.8125rem}.timeline__what{font-size:1rem}.timeline__what strong{font-weight:600}.timeline__note{color:var(--fg-2);text-wrap:pretty;font-size:.9rem;line-height:1.5}.toolbox>div{border-top:1px solid var(--line);padding-block:1rem}.toolbox>div:last-child{border-bottom:1px solid var(--line)}.toolbox dt{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--fg-3);font-size:.75rem}.toolbox dd{color:var(--fg-2);margin-top:.4rem;font-size:.9375rem;line-height:1.6}@media (width<=56rem){.exp{grid-template-columns:1fr;gap:3.5rem}}@media (width<=30rem){.timeline li{grid-template-columns:1fr}.timeline__when{grid-row:auto}}.contact__lede{color:var(--fg-2);font-size:1.125rem}.contact__email{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:.75rem;display:flex}.contact__addr{letter-spacing:-.035em;text-decoration:underline;text-decoration-color:var(--accent-line);text-underline-offset:.14em;overflow-wrap:anywhere;font-size:clamp(1.6rem,1rem + 3.2vw,3.25rem);font-weight:600;font-stretch:104%;line-height:1.1;text-decoration-thickness:.05em}.contact__addr:hover{text-decoration-color:var(--accent)}.contact__status{color:var(--fg-3);min-height:1.4em;font-size:.875rem}.contact__company{color:var(--fg-2);margin-top:1.5rem}.contact__company a{color:var(--fg);text-underline-offset:.2em;text-decoration-color:var(--line-strong)}.contact__company a:hover{text-decoration-color:var(--accent)}.contact__links{flex-wrap:wrap;gap:.5rem;margin-top:2rem;display:flex}.contact__links a{border:1px solid var(--line-strong);min-height:2.75rem;transition:border-color .16s var(--ease), background-color .16s var(--ease);border-radius:10px;align-items:center;gap:.4rem;padding:.55rem 1rem;font-size:.9375rem;text-decoration:none;display:inline-flex}.contact__links a:hover{border-color:var(--fg-3);background:var(--surface)}.colophon{border-top:1px solid var(--line);padding-block:2rem 2.5rem}.colophon__row{color:var(--fg-3);flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;font-size:.8125rem;display:flex}.lost{align-items:center;min-height:100svh;padding-block:4rem;display:grid}.lost__title{letter-spacing:-.035em;max-width:40rem;margin-top:1rem;font-size:clamp(2rem,1.4rem + 3vw,3.5rem);line-height:1.08}.lost__title del{color:var(--fg-3)}.lost__links{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}@media (forced-colors:active){.eyebrow__dot,.status__title:before{forced-color-adjust:none;box-shadow:none;background:canvastext}.btn--primary{border-color:buttontext}}