@font-face{font-family:Geist;src:url(/fonts/geist.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/geist-mono.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f5f4f0;--bg-raised:#fbfaf7;--bg-sunken:#eceae4;--ink:#121211;--ink-2:#4a4945;--ink-3:#686761;--rule:#dddbd4;--rule-strong:#c4c2ba;--accent:#c2410c;--accent-text:#b93a0a;--accent-soft:#c2410c1a;--on-accent:#fff;--dot:#12121121;--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Geist Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1.0625rem;--text-lg:clamp(1.125rem, 1.05rem + .35vw, 1.3125rem);--text-xl:clamp(1.375rem, 1.2rem + .8vw, 1.875rem);--text-2xl:clamp(1.75rem, 1.3rem + 1.9vw, 2.875rem);--text-display:clamp(2.5rem, 1.35rem + 4.6vw, 5.5rem);--page-max:1360px;--page-pad:clamp(1.25rem, 4vw, 3rem);--gutter:clamp(1rem, 2vw, 2rem);--section-gap:clamp(5rem, 3.5rem + 7vw, 10rem);--header-h:3.75rem;--radius:3px;--ease:cubic-bezier(.2, .7, .2, 1);--dur:.22s}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#0f0f0e;--bg-raised:#171716;--bg-sunken:#0a0a09;--ink:#edebe6;--ink-2:#b3b1aa;--ink-3:#8f8d87;--rule:#262624;--rule-strong:#3a3a37;--accent:#ff7a45;--accent-text:#ff7a45;--accent-soft:#ff7a451f;--on-accent:#0f0f0e;--dot:#edebe61a}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 1rem)}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:var(--text-base);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;line-height:1.6}h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}h1,h2,h3,h4{text-wrap:balance;font-weight:500}p,li,dd{text-wrap:pretty}ul,ol{padding:0;list-style:none}a{color:inherit;text-decoration:none}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:1px}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;background:var(--ink);color:var(--bg);font-size:var(--text-sm);border-radius:var(--radius);padding:.6rem .9rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-200%)}.skip-link:focus{transform:none}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}.rise{animation:rise .7s var(--ease) both;animation-delay:calc(var(--i,0) * 70ms)}.reveal-pending{opacity:0;transform:translateY(14px)}.reveal-in{transition:opacity .7s var(--ease), transform .7s var(--ease)}.page-enter{animation:rise .42s var(--ease) both}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-delay:0s!important}.reveal-pending{opacity:1;transform:none}}.container{width:100%;max-width:calc(var(--page-max) + 2 * var(--page-pad));padding-inline:var(--page-pad);margin-inline:auto}@media (min-width:900px){.g12{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));display:grid}}main{outline:none}.label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);font-weight:450;line-height:1.4}.site-header{z-index:50;height:var(--header-h);transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease);background:0 0;border-bottom:1px solid #0000;position:sticky;top:0}.site-header[data-scrolled],.site-header[data-open]{background:color-mix(in srgb, var(--bg) 94%, transparent);border-bottom-color:var(--rule)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-header[data-scrolled]{-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px)}}.site-header__inner{align-items:center;gap:2rem;height:100%;display:flex}.site-header__brand{margin-right:auto;padding-block:.5rem;display:inline-flex}.site-nav{display:none}.site-nav ul{gap:1.75rem;display:flex}.nav-link{color:var(--ink-2);transition:color var(--dur) var(--ease);padding-block:.4rem;font-size:.9375rem;position:relative}.nav-link:after{content:"";transform-origin:100%;height:1px;transition:transform .32s var(--ease);background:currentColor;position:absolute;bottom:.1rem;left:0;right:0;transform:scaleX(0)}.nav-link:hover,.nav-link[data-active]{color:var(--ink)}.nav-link:hover:after,.nav-link[data-active]:after{transform-origin:0;transform:scaleX(1)}.site-header__end{align-items:center;gap:1.25rem;display:flex}.site-header__end>.lang,.site-header .site-header__contact{display:none}@media (min-width:400px){.site-header .site-header__contact{display:inline-flex}}@media (min-width:600px){.site-header__end>.lang{display:flex}}@media (min-width:900px){.site-header__brand{margin-right:0}.site-nav{margin-right:auto;padding-left:1.5rem;display:block}.menu-toggle{display:none!important}}.mobile-menu{inset:var(--header-h) 0 0;z-index:49;background:var(--bg);animation:rise .32s var(--ease) both;padding-block:1.5rem 2.5rem;position:fixed;overflow-y:auto}.mobile-menu[hidden]{display:none}.mobile-menu__list li{border-bottom:1px solid var(--rule)}.mobile-menu__list a{letter-spacing:-.03em;align-items:baseline;gap:1rem;padding-block:1.1rem;font-size:clamp(1.875rem,8vw,2.75rem);font-weight:500;line-height:1.1;display:flex}.mobile-menu__list a[aria-current=page]{color:var(--accent-text)}.mobile-menu__index{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--ink-3);min-width:2ch;font-weight:400}.mobile-menu__foot{margin-top:2rem}html.menu-open,html.menu-open body{overflow:hidden}@media (min-width:900px){.mobile-menu{display:none!important}}.section{padding-top:var(--section-gap)}.section-head{border-top:1px solid var(--ink);gap:1.5rem;margin-bottom:clamp(2.5rem,5vw,4.5rem);padding-top:1rem;display:grid}.section-head__label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);gap:1.25rem;font-weight:450;display:flex}.section-head__index{color:var(--ink-3)}.section-head__intro{font-size:var(--text-xl);letter-spacing:-.018em;max-width:30ch;line-height:1.3}.section-head__aside{align-self:end}@media (min-width:900px){.section-head{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr))}.section-head__label{grid-column:1/5}.section-head__intro{grid-column:5/11}.section-head__aside{grid-area:1/11/auto/13;justify-self:end}}.page-head{padding-top:clamp(3.5rem,2rem + 6vw,7.5rem);padding-bottom:clamp(3rem,2rem + 4vw,5.5rem)}.page-head .label{margin-bottom:1.5rem}.page-head__title{letter-spacing:-.042em;max-width:22ch;font-size:clamp(2.375rem,1.3rem + 3.9vw,5rem);line-height:1.02}.page-head__lede{font-size:var(--text-lg);color:var(--ink-2);max-width:50ch;margin-top:clamp(1.5rem,3vw,2.5rem);line-height:1.5}@media (min-width:900px){.page-head__lede{margin-left:calc((100% + var(--gutter)) / 12 * 4)}}.band{margin-top:var(--section-gap);background:var(--ink);color:var(--bg)}.band__inner{gap:2rem;padding-block:clamp(3.5rem,2rem + 6vw,7rem);display:grid}.band__title{font-size:var(--text-2xl);letter-spacing:-.03em;max-width:20ch;line-height:1.1}.band__end{align-content:end;justify-items:start;gap:1.5rem;display:grid}.band__end p{color:color-mix(in srgb, var(--bg) 72%, var(--ink));max-width:44ch}.band .btn--primary{background:var(--bg);border-color:var(--bg);color:var(--ink)}.band .btn--primary:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.band :focus-visible{outline-color:var(--bg)}@media (min-width:900px){.band__inner{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr))}.band__title{grid-column:1/8}.band__end{grid-column:9/13}}.site-footer{font-size:var(--text-sm);padding-block:clamp(3.5rem,6vw,5.5rem) 1.5rem}.band+.site-footer{border-top:0}main:has(>.band:last-child)+.site-footer{border-top:0}main:not(:has(>.band:last-child))+.site-footer{margin-top:var(--section-gap);border-top:1px solid var(--rule)}.site-footer__top{gap:2.5rem var(--gutter);grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:clamp(3rem,6vw,5rem);display:grid}.site-footer__brand{grid-column:1/-1;align-content:start;gap:.75rem;display:grid}.site-footer__brand p{color:var(--ink-2)}.site-footer__col .label{margin-bottom:1rem}.site-footer__col ul{gap:.5rem;display:grid}.site-footer__col a{color:var(--ink-2);transition:color var(--dur) var(--ease)}.site-footer__col a:hover{color:var(--ink)}.site-footer__bottom{border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.02em;color:var(--ink-3);flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding-top:1.25rem;display:flex}.site-footer__top-link{transition:color var(--dur) var(--ease)}.site-footer__top-link:hover{color:var(--ink)}@media (min-width:900px){.site-footer__top{grid-template-columns:repeat(12,minmax(0,1fr))}.site-footer__brand{grid-column:1/6}.site-footer__col{grid-column:span 2}.site-footer__col:first-of-type{grid-column:7/9}}.wordmark{color:var(--ink);align-items:center;gap:.6rem;display:inline-flex}.wordmark__text{letter-spacing:-.025em;font-size:1.0625rem;font-weight:600;line-height:1}.btn{border-radius:var(--radius);cursor:pointer;transition:background-color var(--dur) var(--ease), border-color var(--dur) var(--ease), color var(--dur) var(--ease);border:1px solid #0000;align-items:center;gap:.65rem;padding:.8rem 1.15rem;font-size:.9375rem;font-weight:500;line-height:1.2;display:inline-flex}.btn--primary{background:var(--ink);border-color:var(--ink);color:var(--bg)}.btn--primary:hover{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn--secondary{border-color:var(--rule-strong);color:var(--ink);background:0 0}.btn--secondary:hover{border-color:var(--ink)}.btn--small{font-size:var(--text-sm);padding:.45rem .8rem}.btn:disabled{opacity:.6;cursor:progress}.arrow-link{color:var(--ink);cursor:pointer;background:0 0;border:0;align-items:baseline;gap:.45rem;padding:0;font-weight:500;display:inline-flex}.arrow-link .arrow-link__label{background:linear-gradient(var(--ink), var(--ink)) 0 100% / 0 1px no-repeat, linear-gradient(var(--rule-strong), var(--rule-strong)) 0 100% / 100% 1px no-repeat;transition:background-size .38s var(--ease);padding-bottom:.1em}.arrow-link:hover .arrow-link__label{background-size:100% 1px,100% 1px}.arrow-link__arrow{font-family:var(--font-mono);transition:transform var(--dur) var(--ease), color var(--dur) var(--ease);font-weight:400;display:inline-block}.arrow-link:hover .arrow-link__arrow,.btn:hover .arrow-link__arrow{transform:translate(3px)}.arrow-link:hover .arrow-link__arrow{color:var(--accent-text)}a[target=_blank]:hover .arrow-link__arrow{transform:translate(2px,-2px)}.text-link{text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);transition:text-decoration-color var(--dur) var(--ease)}.text-link:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.back-link{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);transition:color var(--dur) var(--ease);gap:.5rem;display:inline-flex}.back-link:hover{color:var(--ink)}.status{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);white-space:nowrap;align-items:center;gap:.45rem;display:inline-flex}.status__dot{border:1px solid var(--ink-3);border-radius:50%;flex:none;width:7px;height:7px}.status--live .status__dot{background:var(--accent);border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.status--lab .status__dot{border-style:dashed}.tags{flex-wrap:wrap;gap:.375rem;display:flex}.tags li{font-family:var(--font-mono);border:1px solid var(--rule);color:var(--ink-2);border-radius:2px;padding:.35rem .5rem;font-size:.75rem;line-height:1}.local-time{font-variant-numeric:tabular-nums;white-space:nowrap}.lang{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;gap:.15rem;display:flex}.lang a,.lang__current{padding:.3rem .35rem;display:inline-block}.lang a{color:var(--ink-3);transition:color var(--dur) var(--ease)}.lang a:hover,.lang__current{color:var(--ink)}.lang li+li:before{content:"/";color:var(--rule-strong)}.lang li{align-items:center;display:flex}.menu-toggle{cursor:pointer;font-size:var(--text-sm);background:0 0;border:0;align-items:center;gap:.6rem;padding:.5rem 0;font-weight:500;display:inline-flex}.menu-toggle__icon{width:16px;height:8px;position:relative}.menu-toggle__icon:before,.menu-toggle__icon:after{content:"";width:100%;height:1.5px;transition:transform var(--dur) var(--ease);background:currentColor;position:absolute;left:0}.menu-toggle__icon:before{top:0}.menu-toggle__icon:after{bottom:0}.menu-toggle[aria-expanded=true] .menu-toggle__icon:before{transform:translateY(3.25px)rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-toggle__icon:after{transform:translateY(-3.25px)rotate(-45deg)}.dash-list{gap:.5rem;display:grid}.dash-list li{padding-left:1.4rem;position:relative}.dash-list li:before{content:"—";color:var(--ink-3);position:absolute;left:0}.sheet{background:var(--bg-raised);border:1px solid var(--rule-strong);padding:1rem 1.1rem .9rem;position:relative}.sheet__mark{width:13px;height:13px;position:absolute}.sheet__mark:before,.sheet__mark:after{content:"";background:var(--ink-3);position:absolute}.sheet__mark:before{width:1px;height:13px;top:0;left:6px}.sheet__mark:after{width:13px;height:1px;top:6px;left:0}.sheet__mark--tl{top:-7px;left:-7px}.sheet__mark--tr{top:-7px;right:-7px}.sheet__mark--bl{bottom:-7px;left:-7px}.sheet__mark--br{bottom:-7px;right:-7px}.sheet__head,.sheet__foot{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);justify-content:space-between;gap:1rem;font-size:.6875rem;display:flex}.sheet__ruler{background:repeating-linear-gradient(90deg, var(--ink-3) 0 1px, transparent 1px 48px) 0 0 / 100% 9px no-repeat, repeating-linear-gradient(90deg, var(--rule-strong) 0 1px, transparent 1px 8px) 0 100% / 100% 4px no-repeat;height:9px;margin:.7rem 0 1.1rem}.sheet__command{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink-2);margin-bottom:.9rem}.sheet__command span{color:var(--accent-text)}.sheet__row{border-top:1px solid var(--rule)}.sheet__link{transition:background-color var(--dur) var(--ease);grid-template-columns:2.25rem minmax(0,1fr);align-items:center;gap:.2rem .75rem;padding:.8rem .25rem;display:grid}a.sheet__link:hover{background:var(--bg-sunken)}.sheet__num{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3)}.sheet__name{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.sheet__kind{font-size:var(--text-sm);color:var(--ink-3);display:none}.sheet__link .status{grid-column:2}.sheet__foot{border-top:1px solid var(--rule);padding-top:.8rem}@media (min-width:480px){.sheet{padding:1.25rem 1.5rem 1.1rem}.sheet__link{grid-template-columns:2.25rem minmax(0,1fr) minmax(0,.9fr) 9.5rem}.sheet__link .status{grid-column:auto}.sheet__kind{display:block}}.plate{min-width:0;container-type:inline-size}.plate__frame{aspect-ratio:4/3;background:var(--bg-raised);border:1px solid var(--rule-strong);border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}.plate--lg .plate__frame{aspect-ratio:16/9}@media (max-width:599px){.plate__frame,.plate--lg .plate__frame{aspect-ratio:4/3.4}}.plate__bar{border-bottom:1px solid var(--rule);font-family:var(--font-mono);letter-spacing:.03em;color:var(--ink-3);justify-content:space-between;gap:1rem;padding:.6rem .9rem;font-size:clamp(10px,2.1cqi,12px);display:flex}.plate__body{background-image:radial-gradient(var(--dot) 1px, transparent 1px);background-position:7px 7px;background-size:14px 14px;flex:1;min-height:0;padding:clamp(1rem,5.5cqi,3.5rem);font-size:clamp(10.5px,2.3cqi,16px);position:relative}.plate__code{font-family:var(--font-mono);color:var(--ink-2);white-space:pre;margin:0;font-size:1em;line-height:1.75;overflow:hidden}.plate__code b{color:var(--ink);font-weight:500}.plate__prompt{color:var(--accent-text)}.plate__caret{vertical-align:-.2em;background:var(--accent);width:.55em;height:1.15em;display:inline-block}.plate-os{grid-template-columns:minmax(0,.8fr) minmax(0,1fr);align-items:center;gap:7cqi;display:grid}.plate-os__stack{font-family:var(--font-mono);flex-direction:column;align-items:center;gap:.55em;display:flex}.plate-os__layer{border:1px solid var(--rule-strong);background:var(--bg);width:100%;color:var(--ink-2);padding:.85em 1em}.plate-os__layer:first-child{width:70%}.plate-os__layer:nth-child(2){width:85%}.plate-os__layer--top{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-text)}.plate-vps{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:6cqi;display:grid}@container (width<=560px){.plate-vps{grid-template-columns:minmax(0,1fr)}.plate-vps__node{display:none}}.plate-vps__node{border:1px dashed var(--rule-strong);background:var(--bg);padding:1.1em}.plate-vps__label{font-family:var(--font-mono);color:var(--ink-3);margin-bottom:.9em;font-size:.85em;display:block}.plate-vps__vms{grid-template-columns:repeat(2,1fr);gap:.6em;display:grid}.plate-vps__vms span{aspect-ratio:1.4;border:1px solid var(--rule-strong);background:var(--bg-raised)}.plate-vps__vms .is-new{border-color:var(--accent);background:var(--accent-soft)}.plate-rutrack{flex-direction:column;justify-content:center;gap:1.5em;display:flex}.plate-rutrack__line{gap:.6em;margin-bottom:1.15em;display:flex}.plate-rutrack__line span{background:var(--rule);border-radius:1px;height:.95em}.plate-rutrack__line .is-revealed{background:var(--accent)}.plate-rutrack__input{border-bottom:1px solid var(--ink);font-family:var(--font-mono);color:var(--ink-3);align-items:center;gap:.4em;padding-bottom:.6em;display:flex}.plate-music{font-family:var(--font-mono);grid-template-columns:minmax(0,.85fr) minmax(0,1fr);align-items:center;gap:6cqi;display:grid}.plate-music__cover{aspect-ratio:1;border:1px solid var(--rule-strong);background:linear-gradient(135deg, transparent 0 86%, var(--accent) 86% 100%), repeating-linear-gradient(135deg, var(--rule) 0 1px, transparent 1px 9px), var(--bg)}.plate-music__input{border-bottom:1px solid var(--ink);color:var(--ink);margin-bottom:.4em;padding-bottom:.6em}.plate-music__resolve li{border-bottom:1px solid var(--rule);color:var(--ink-2);justify-content:space-between;gap:1em;padding:.55em 0;display:flex}.plate-music__ok{color:var(--accent-text)}.plate-music__source{color:var(--ink-3);margin-top:.8em;font-size:.85em}@container (width<=380px){.plate-music{grid-template-columns:minmax(0,.6fr) minmax(0,1fr)}}.plate-alterbot{font-family:var(--font-mono);flex-direction:column;justify-content:center;display:flex}.plate-alterbot__row{border-bottom:1px solid var(--rule);color:var(--ink-3);grid-template-columns:5.5ch 9ch 1fr;gap:1em;padding:.85em 0;display:grid}.plate-alterbot__row.is-new{color:var(--ink)}.plate-alterbot__row.is-new span:first-child{color:var(--accent-text)}.plate-pdf{place-items:center;display:grid}.plate-pdf__page{aspect-ratio:1/1.25;background:var(--bg);border:1px solid var(--rule-strong);flex-direction:column;gap:5%;max-width:100%;height:100%;padding:9% 10%;display:flex}.plate-pdf__page span{background:var(--rule);height:3.5%;min-height:4px}.plate-pdf__page .plate-pdf__gap{background:0 0}.plate-pdf__page .is-hit{background:var(--accent-soft);outline:1px solid var(--accent);outline-offset:2px}.process{counter-reset:step;display:grid}.process__step{border-top:1px solid var(--rule-strong);grid-template-columns:3rem minmax(0,1fr);align-content:start;column-gap:.5rem;padding:1.25rem 0 1.75rem;display:grid;position:relative}.process__step:before{content:"";background:var(--ink);width:7px;height:7px;position:absolute;top:-4px;left:0}.process__index{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3);grid-row:span 2;padding-top:.35rem}.process__title{font-size:var(--text-lg);letter-spacing:-.015em;margin-bottom:.4rem}.process__text{color:var(--ink-2);max-width:40ch;font-size:.975rem}@media (min-width:900px){.process{column-gap:var(--gutter);grid-template-columns:repeat(5,minmax(0,1fr))}.process__step{grid-template-columns:1fr;padding-top:1.5rem}.process__index{grid-row:auto;padding:0 0 2.5rem}}.form{gap:1.5rem var(--gutter);grid-template-columns:minmax(0,1fr);display:grid;position:relative}@media (min-width:600px){.form{grid-template-columns:repeat(2,minmax(0,1fr))}.field:not(.field--half),.form__foot,.form__status{grid-column:1/-1}}.field label{font-size:var(--text-sm);margin-bottom:.5rem;font-weight:500;display:block}.field__optional{color:var(--ink-3);font-weight:400}.field__hint{font-size:var(--text-sm);color:var(--ink-3);margin:-.25rem 0 .6rem}.field input,.field select,.field textarea{background:var(--bg-raised);border:1px solid var(--rule-strong);border-radius:var(--radius);width:100%;transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);padding:.75rem .85rem;font-size:1rem;line-height:1.4;display:block}.field textarea{resize:vertical;min-height:10rem}.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--ink-3)}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{border-color:var(--ink);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.field [aria-invalid=true]{border-color:var(--accent)}.field__error{font-size:var(--text-sm);color:var(--accent-text);margin-top:.45rem}.select{position:relative}.select select{appearance:none;cursor:pointer;padding-right:2.5rem}.select:after{content:"";border-right:1.5px solid var(--ink-2);border-bottom:1.5px solid var(--ink-2);pointer-events:none;width:7px;height:7px;position:absolute;top:50%;right:1rem;transform:translateY(-70%)rotate(45deg)}.form__trap{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form__foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem 2rem;padding-top:.5rem;display:flex}.form__privacy{font-size:var(--text-sm);color:var(--ink-3);max-width:38ch}.form__status{color:var(--accent-text);font-size:var(--text-sm);outline:none}.form__status:empty{display:none}.form-done{background:var(--bg-raised);border:1px solid var(--rule-strong);border-radius:var(--radius);outline:none;justify-items:start;gap:.75rem;padding:clamp(1.5rem,4vw,2.5rem);display:grid}.form-done__title{font-size:var(--text-xl);letter-spacing:-.02em}.form-done p:not(.form-done__title){color:var(--ink-2);margin-bottom:.75rem}.screens{min-width:0;margin:0;position:relative;container-type:inline-size}.screens__browser{background:var(--bg-raised);border:1px solid var(--rule-strong);border-radius:var(--radius);overflow:hidden}.screens img{background:var(--bg-sunken);width:100%;height:auto;display:block}.screens__phone{display:none}.screens__stage{position:relative}@container (width>=620px){.screens__stage{padding-bottom:6%;padding-right:7%}.screens__phone{background:var(--ink);border-radius:14px;width:22%;padding:5px;display:block;position:absolute;bottom:0;right:0;box-shadow:0 18px 40px -18px #00000073}.screens__phone img{border-radius:9px}}.hero{gap:2.5rem;padding-top:clamp(3rem,1.5rem + 6vw,7rem);display:grid}.hero__head .label{margin-bottom:clamp(1.25rem,2.5vw,2rem)}.hero__title{letter-spacing:-.045em;max-width:21ch;font-size:clamp(2.5rem,1.15rem + 4.5vw,5.75rem);font-weight:500;line-height:1}.hero__lede{font-size:var(--text-lg);color:var(--ink-2);max-width:44ch;line-height:1.5}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.hero__facts{border-top:1px solid var(--rule);margin-top:clamp(2.5rem,5vw,4rem);display:grid}.hero__facts div{border-bottom:1px solid var(--rule);font-size:var(--text-sm);grid-template-columns:7.5rem minmax(0,1fr);gap:1rem;padding:.7rem 0;display:grid}.hero__facts dt{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding-top:.15rem}.hero__visual{margin-inline:calc(-1*clamp(1.25rem,3vw,2.25rem));padding:clamp(1.25rem,3vw,2.25rem);position:relative}.hero__visual:before{content:"";z-index:-1;background-image:radial-gradient(var(--dot) 1px, transparent 1px);background-size:16px 16px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 60%,#000 35%,#0000 75%);mask-image:radial-gradient(at 60%,#000 35%,#0000 75%)}@media (min-width:1024px){.hero{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));row-gap:clamp(3rem,5vw,4.5rem)}.hero__head{grid-column:1/12}.hero__copy{grid-column:1/6;align-self:start}.hero__visual{margin:calc(-1*clamp(1.25rem,3vw,2.25rem));grid-column:7/13;margin-top:-1rem}}.work{gap:1.75rem;min-width:0;display:grid}.work__meta{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:.4rem 1.25rem;display:flex}.work__name{font-size:var(--text-2xl);letter-spacing:-.035em;margin:.9rem 0 .8rem;line-height:1.05}.work__title-link{transition:background-size .38s var(--ease);background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat}.work__title-link:hover{background-size:100% 2px}.work__summary{color:var(--ink-2);max-width:46ch;margin-bottom:1.25rem}.work__links{flex-wrap:wrap;gap:.75rem 1.75rem;margin-top:1.75rem;display:flex}.work--primary :is(.plate,.screens){order:-1}@media (min-width:900px){.work--primary{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-items:end}.work--primary .work__text{grid-column:1/5;padding-bottom:.25rem}.work--primary :is(.plate,.screens){order:0;grid-column:5/13}}.work-pair{gap:clamp(4rem,8vw,6rem);margin-top:clamp(4rem,8vw,7rem);display:grid}@media (min-width:900px){.work-pair{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start}.work-pair>:first-child{grid-column:1/8}.work-pair>:nth-child(2){grid-column:9/13;margin-top:clamp(6rem,12vw,11rem)}.work-pair>:first-child .plate__frame{aspect-ratio:3/2}.work-pair>:nth-child(2) .plate__frame{aspect-ratio:1}}.work-index{margin-top:clamp(4.5rem,9vw,8rem)}.work-index__title{margin-bottom:1rem}.work-index ul{border-bottom:1px solid var(--rule)}.row{border-top:1px solid var(--rule);transition:background-color var(--dur) var(--ease);grid-template-columns:2.5rem minmax(0,1fr) 1.5rem;align-items:baseline;gap:.35rem 1rem;padding:1.15rem 0;display:grid}.row__num{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3)}.row__name{font-size:var(--text-lg);letter-spacing:-.015em;font-weight:500}.row__summary{color:var(--ink-2);grid-area:2/2/auto/3;font-size:.975rem}.row__kind{font-size:var(--text-sm);color:var(--ink-3);display:none}.row .status{grid-area:3/2/auto/3;margin-top:.35rem}.row__arrow{font-family:var(--font-mono);color:var(--ink-3);transition:transform var(--dur) var(--ease), color var(--dur) var(--ease);grid-area:1/3;justify-self:end}a.row:hover .row__arrow{color:var(--accent-text);transform:translate(4px)}a.row:hover .row__name{color:var(--ink)}@media (min-width:1024px){.row{grid-template-columns:2.5rem 11rem minmax(0,1fr) 11rem 10rem 1.5rem;gap:1.5rem}.row>*{grid-row:1;margin:0}.row__num{grid-column:1}.row__name{grid-column:2}.row__summary{grid-column:3}.row__kind{grid-column:4;display:block}.row .status{grid-area:1/5;margin:0}.row__arrow{grid-column:6}}.capabilities{gap:0 var(--gutter);display:grid}@media (min-width:640px){.capabilities{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1100px){.capabilities{grid-template-columns:repeat(4,minmax(0,1fr))}}.capability{border-top:1px solid var(--rule-strong)}.capability__link{grid-template-rows:auto auto 1fr auto;height:100%;padding:1.25rem 0 2.25rem;display:grid}.capability__index{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3);margin-bottom:1.25rem}@media (min-width:1100px){.capability__index{margin-bottom:2.5rem}}.capability__title{font-size:var(--text-xl);letter-spacing:-.025em;margin-bottom:.6rem;line-height:1.15}.capability__text{color:var(--ink-2);max-width:30ch}.capability__arrow{font-family:var(--font-mono);color:var(--ink-3);transition:transform var(--dur) var(--ease), color var(--dur) var(--ease);margin-top:1.75rem}.capability__link:hover .capability__arrow{color:var(--accent-text);transform:translate(4px)}.studio{justify-items:start;gap:2rem;display:grid}.studio__text{font-size:var(--text-xl);letter-spacing:-.018em;max-width:38ch;line-height:1.38}@media (min-width:900px){.studio{margin-left:calc((100% + var(--gutter)) / 12 * 4)}}.index-table{border-collapse:collapse;width:100%;font-size:var(--text-sm)}.index-table thead th{border-bottom:1px solid var(--ink);text-align:left;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:0 1rem .75rem 0;font-weight:450}.index-table td,.index-table tbody th{border-bottom:1px solid var(--rule);text-align:left;vertical-align:baseline;color:var(--ink-2);padding:.9rem 1rem .9rem 0}.index-table tbody th{color:var(--ink);font-weight:500}.index-table tbody th a:hover{color:var(--accent-text)}.index-table__num{font-family:var(--font-mono);font-size:var(--text-xs);width:3rem;color:var(--ink-3)!important}.index-table tr>:last-child{text-align:right;padding-right:0}@media (max-width:767px){.index-table__stack,.index-table tr>:nth-child(3){display:none}}.project-list{margin-top:clamp(4rem,8vw,7rem)}.entry{border-top:1px solid var(--rule-strong);scroll-margin-top:calc(var(--header-h) + 1rem);gap:1.75rem;padding-block:clamp(2rem,4vw,3rem) clamp(3.5rem,7vw,6rem);display:grid}.entry__name{font-size:var(--text-2xl);letter-spacing:-.035em;margin:.9rem 0 .8rem;line-height:1.05}.entry__summary{color:var(--ink-2);max-width:44ch;margin-bottom:1.25rem}@media (min-width:900px){.entry{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center}.entry :is(.plate,.screens){grid-column:1/8}.entry__text{grid-column:9/13}.entry--flip :is(.plate,.screens){grid-area:1/6/auto/13}.entry--flip .entry__text{grid-area:1/1/auto/5}}.case-head{padding-top:clamp(2rem,4vw,3rem)}.case-head .back-link{margin-bottom:clamp(3rem,7vw,5.5rem)}.case-head__title{letter-spacing:-.05em;margin-top:1.25rem;font-size:clamp(3rem,1.4rem + 6.5vw,7.5rem);line-height:.95}.case-head__lede{font-size:var(--text-xl);letter-spacing:-.015em;color:var(--ink-2);max-width:38ch;margin-top:1.75rem;line-height:1.35}.case-meta{gap:1.5rem var(--gutter);border-top:1px solid var(--ink);grid-template-columns:repeat(2,minmax(0,1fr));margin-top:clamp(2.5rem,5vw,4rem);padding-top:1rem;display:grid}.case-meta dt{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:.4rem}.case-meta dd{font-size:var(--text-sm)}@media (min-width:900px){.case-meta{grid-template-columns:repeat(4,minmax(0,1fr))}}.case-plate{margin-top:clamp(2.5rem,5vw,4rem)}.case-body{margin-top:clamp(4rem,8vw,7rem)}.case-row{border-top:1px solid var(--rule-strong);gap:1.25rem;padding-block:1.25rem clamp(2.5rem,5vw,4rem);display:grid}.case-row>.label{color:var(--ink)}@media (min-width:900px){.case-row{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr))}.case-row>.label{grid-column:1/4}.case-row>:not(.label){grid-column:4/11}}.case-row__lead{font-size:var(--text-xl);letter-spacing:-.015em;line-height:1.4}.case-list li{border-bottom:1px solid var(--rule);grid-template-columns:2.75rem minmax(0,1fr);padding:.95rem 0;display:grid}.case-list li:first-child{padding-top:0}.case-list__num{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3);padding-top:.3rem}.facts>div{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:1rem;padding:.8rem 0;display:grid}.facts>div:first-child{padding-top:0}.facts dt{color:var(--ink-3)}.stack-list{flex-wrap:wrap;gap:.5rem;display:flex}.stack-list li{font-family:var(--font-mono);font-size:var(--text-sm);border:1px solid var(--rule-strong);border-radius:2px;padding:.45rem .7rem}.next-project{margin-top:clamp(3rem,6vw,5rem)}.next-project__link{border-top:1px solid var(--ink);gap:.6rem;padding-top:1.25rem;display:grid}.next-project__name{letter-spacing:-.045em;font-size:clamp(2.25rem,1.3rem + 4vw,5rem);font-weight:500;line-height:1}.next-project__name span{font-family:var(--font-mono);transition:transform var(--dur) var(--ease), color var(--dur) var(--ease);font-weight:300;display:inline-block}.next-project__link:hover .next-project__name span{color:var(--accent-text);transform:translate(8px)}.next-project__kind{color:var(--ink-3)}.service-toc ol{border-top:1px solid var(--rule);flex-wrap:wrap;gap:.5rem 2rem;margin-bottom:clamp(3.5rem,7vw,6rem);padding-top:1rem;display:flex}.service-toc a{color:var(--ink-2);transition:color var(--dur) var(--ease);gap:.6rem;display:inline-flex}.service-toc a span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3);padding-top:.2rem}.service-toc a:hover{color:var(--ink)}.service{border-top:1px solid var(--ink);scroll-margin-top:calc(var(--header-h) + 1rem);gap:2rem;padding-block:1.25rem clamp(3.5rem,7vw,6rem);display:grid}.service__index{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3);margin-bottom:1.5rem;display:block}.service__title{font-size:var(--text-2xl);letter-spacing:-.035em;margin-bottom:2rem;line-height:1.05}.service__includes-label{margin-bottom:.6rem}.service__includes li{border-bottom:1px solid var(--rule);font-size:var(--text-sm);color:var(--ink-2);padding:.45rem 0}.service__body{gap:2rem;display:grid}.service__body>div{gap:.6rem;display:grid}.service__body dd{font-size:var(--text-lg);color:var(--ink-2);max-width:52ch;line-height:1.5}.service__outcome dt{color:var(--accent-text)}.service__outcome dd{color:var(--ink)}@media (min-width:900px){.service{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr))}.service__head{grid-column:1/5}.service__body{grid-column:6/13;gap:2.25rem;padding-top:2.6rem}}.fit{gap:2.5rem var(--gutter);display:grid}.fit li{border-top:1px solid var(--rule-strong);padding-top:1.25rem}.fit h3{font-size:var(--text-lg);letter-spacing:-.015em;margin-bottom:.6rem}.fit p{color:var(--ink-2);max-width:40ch}@media (min-width:900px){.fit{grid-template-columns:repeat(3,minmax(0,1fr))}}.prose-block{gap:1.5rem;display:grid}.prose-block p{font-size:var(--text-lg);color:var(--ink-2);max-width:56ch;line-height:1.55}.prose-block .prose-block__lead{font-size:var(--text-xl);letter-spacing:-.018em;color:var(--ink);max-width:40ch;line-height:1.38}@media (min-width:900px){.prose-block>p{margin-left:calc((100% + var(--gutter)) / 12 * 4)}}.principles li{border-top:1px solid var(--rule-strong);grid-template-columns:2.75rem minmax(0,1fr);gap:.5rem;padding:1.25rem 0 1.75rem;display:grid}.principles li:last-child{border-bottom:1px solid var(--rule-strong)}.principles__num{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3);grid-row:span 2;padding-top:.35rem}.principles h3{font-size:var(--text-lg);letter-spacing:-.015em}.principles p{color:var(--ink-2);max-width:54ch}@media (min-width:900px){.principles li{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr))}.principles__num{grid-area:auto/1/auto/2}.principles h3{grid-column:2/5}.principles p{grid-column:5/12}}.statement{font-size:var(--text-2xl);letter-spacing:-.03em;max-width:28ch;line-height:1.2}@media (min-width:900px){.statement{margin-left:calc((100% + var(--gutter)) / 12 * 4)}}.toolbox{gap:2.5rem var(--gutter);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.toolbox .label{border-bottom:1px solid var(--ink);padding-bottom:.75rem}.toolbox dd{border-bottom:1px solid var(--rule);font-size:var(--text-sm);padding:.55rem 0}@media (min-width:900px){.toolbox{grid-template-columns:repeat(4,minmax(0,1fr))}}.contact{gap:3.5rem;padding-top:clamp(3.5rem,2rem + 6vw,7.5rem);display:grid}.contact__intro .label{margin-bottom:1.5rem}.contact__intro .page-head__lede{margin-left:0}.contact__notes{border-top:1px solid var(--rule);color:var(--ink-2);gap:2rem;max-width:44ch;margin-top:clamp(2.5rem,5vw,4rem);padding-top:1.5rem;display:grid}.contact__notes .label{color:var(--ink);margin-bottom:.75rem}@media (min-width:1024px){.contact{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr))}.contact__intro{grid-column:1/6}.contact__form-wrap{grid-column:7/13;padding-top:2.6rem}}.legal{gap:clamp(2.5rem,5vw,3.5rem);display:grid}.legal section{border-top:1px solid var(--rule-strong);scroll-margin-top:calc(var(--header-h) + 1rem);gap:1rem;padding-top:1rem;display:grid}.legal section>.label{color:var(--ink)}.legal p{color:var(--ink-2);max-width:64ch}.legal a{text-decoration:underline;-webkit-text-decoration-color:var(--rule-strong);text-decoration-color:var(--rule-strong);text-underline-offset:.2em}@media (min-width:900px){.legal section{column-gap:var(--gutter);grid-template-columns:repeat(12,minmax(0,1fr))}.legal section>.label{grid-column:1/4}.legal section>:not(.label){grid-column:4/11}}.missing{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;border:1px dashed var(--accent);color:var(--accent-text);padding:.15rem .45rem}.not-found{justify-items:start;gap:1.25rem;padding-block:clamp(4rem,10vw,8rem) clamp(2rem,6vw,4rem);display:grid}.not-found__code{font-family:var(--font-mono);letter-spacing:-.06em;color:var(--rule-strong);font-size:clamp(5rem,22vw,13rem);font-weight:300;line-height:.85}.not-found__title{font-size:var(--text-2xl);letter-spacing:-.035em}.not-found__text{color:var(--ink-2);margin-bottom:1rem}
/*$vite$:1*/