/*! tailwindcss v4.3.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:"Bricolage Grotesque Variable", ui-sans-serif, system-ui, sans-serif;--font-mono:"Martian Mono Variable", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--spacing:.25rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::-webkit-file-upload-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::-webkit-file-upload-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:-webkit-any([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:-webkit-any([multiple],[size])) optgroup option{padding-inline-start:20px}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::-webkit-file-upload-button{margin-inline-end:4px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-year-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-month-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-day-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-hour-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-minute-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-second-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-millisecond-field{padding-block-start:0;padding-block-end:0}::-webkit-datetime-edit-meridiem-field{padding-block-start:0;padding-block-end:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button{-webkit-appearance:button;appearance:button}input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::-webkit-file-upload-button{-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.static{position:static}.top-7{top:calc(var(--spacing) * 7)}.m-0{margin:0}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-14{margin-top:calc(var(--spacing) * 14)}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.max-w-\[26ch\]{max-width:26ch}.max-w-\[28ch\]{max-width:28ch}.max-w-\[34ch\]{max-width:34ch}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.list-none{list-style-type:none}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.gap-8{gap:calc(var(--spacing) * 8)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-x-6{column-gap:calc(var(--spacing) * 6)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-x-10{column-gap:calc(var(--spacing) * 10)}.gap-x-16{column-gap:calc(var(--spacing) * 16)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.gap-y-10{row-gap:calc(var(--spacing) * 10)}.gap-y-12{row-gap:calc(var(--spacing) * 12)}.gap-y-16{row-gap:calc(var(--spacing) * 16)}.border{border-style:var(--tw-border-style);border-width:1px}.p-0{padding:0}.py-8{padding-block:calc(var(--spacing) * 8)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (min-width:40rem){.sm\:block{display:block}.sm\:hidden{display:none}.sm\:grid-cols-\[9rem_minmax\(0\,1fr\)\]{grid-template-columns:9rem minmax(0,1fr)}}@media (min-width:48rem){.md\:sticky{position:sticky}.md\:top-28{top:calc(var(--spacing) * 28)}.md\:col-span-5{grid-column:span 5/span 5}.md\:col-span-7{grid-column:span 7/span 7}.md\:mt-16{margin-top:calc(var(--spacing) * 16)}.md\:mt-20{margin-top:calc(var(--spacing) * 20)}.md\:flex{display:flex}.md\:hidden{display:none}.md\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}.md\:justify-end{justify-content:flex-end}.md\:py-10{padding-block:calc(var(--spacing) * 10)}.md\:pb-16{padding-bottom:calc(var(--spacing) * 16)}}@media (min-width:64rem){.lg\:col-span-5{grid-column:span 5/span 5}.lg\:col-span-6{grid-column:span 6/span 6}.lg\:col-span-7{grid-column:span 7/span 7}.lg\:grid-cols-12{grid-template-columns:repeat(12,minmax(0,1fr))}}}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;font-stretch:75% 100%;src:url(/assets/bricolage-grotesque-latin-wdth-normal-Dtb2a5nO.woff2)format("woff2-variations")}@font-face{font-family:Martian Mono Variable;font-style:normal;font-display:swap;font-weight:300 600;src:url(/assets/martian-mono-latin-wght-normal-5W32yIyr.woff2)format("woff2-variations")}:root{--f-display:"Bricolage Grotesque Variable", ui-sans-serif, system-ui, sans-serif;--f-mono:"Martian Mono Variable", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-rgb:230 232 229;--fg-rgb:15 20 48;--muted-rgb:88 92 110;--accent-rgb:35 64 255;--flood-rgb:35 64 255;--flood-fg-rgb:230 232 229;--flood-ink-rgb:15 20 48;--cur:var(--fg-rgb);--pad:clamp(1.25rem, 4vw, 4rem);--nav-h:4rem;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-io:cubic-bezier(.76, 0, .24, 1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-rgb:12 15 34;--fg-rgb:230 232 229;--muted-rgb:160 165 184;--accent-rgb:112 134 255}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-rgb:12 15 34;--fg-rgb:230 232 229;--muted-rgb:160 165 184;--accent-rgb:112 134 255}html{background:rgb(var(--bg-rgb));-webkit-text-size-adjust:100%;scroll-padding-top:4rem}html[data-zone=flood]{background:rgb(var(--flood-rgb));--cur:var(--flood-fg-rgb)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}html.menu-open{overflow:hidden}body{background:rgb(var(--bg-rgb));color:rgb(var(--fg-rgb));font-family:var(--f-display), ui-sans-serif, system-ui, sans-serif;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;line-height:1.55;overflow-x:clip}::selection{background:rgb(var(--accent-rgb));color:rgb(var(--bg-rgb))}:focus-visible{outline:2px solid rgb(var(--accent-rgb));outline-offset:4px}.contact :focus-visible{outline-color:rgb(var(--flood-fg-rgb))}html[data-zone=flood] .nav :focus-visible{outline-color:rgb(var(--flood-fg-rgb))}.contact ::selection{background:rgb(var(--flood-fg-rgb));color:rgb(var(--flood-rgb))}.wrap{width:100%;max-width:1760px;padding-inline:var(--pad);margin-inline-start:auto;margin-inline-end:auto}.meta{font-family:var(--f-mono);letter-spacing:.01em;color:rgb(var(--muted-rgb));font-size:.75rem;line-height:1.7}.copy{max-width:54ch;color:rgb(var(--fg-rgb) / .86);font-size:1.0625rem;line-height:1.6}.section{padding-block-start:clamp(6rem,14vw,13rem);padding-block-end:clamp(6rem,14vw,13rem);position:relative}.h2{letter-spacing:-.035em;margin:0;font-size:clamp(2.75rem,6.4vw,6.5rem);font-weight:600;font-stretch:75%;line-height:.92}.skip{left:var(--pad);z-index:100;background:rgb(var(--fg-rgb));color:rgb(var(--bg-rgb));transition:transform .3s var(--ease-out);padding:.65rem 1rem;font-size:.875rem;position:fixed;top:.75rem;transform:translateY(-250%)}.skip:focus{transform:none}#progress{z-index:70;background:rgb(var(--accent-rgb));transform-origin:0;pointer-events:none;height:2px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}html[data-zone=flood] #progress{background:rgb(var(--flood-fg-rgb))}.nav{--nb:var(--bg-rgb);--nf:var(--fg-rgb);z-index:60;padding-top:env(safe-area-inset-top,0px);color:rgb(var(--nf));transition:transform .6s var(--ease-out), background-color .4s, color .4s, border-color .4s, opacity .9s ease;border-bottom:1px solid #0000;position:fixed;top:0;bottom:auto;left:0;right:0}.nav.is-scrolled{background:rgb(var(--nb) / .95);border-bottom-color:rgb(var(--nf) / .14)}.nav.is-hidden{transform:translateY(-101%)}html[data-zone=flood] .nav{--nb:var(--flood-rgb);--nf:var(--flood-fg-rgb)}html.menu-open .nav{background:0 0;border-bottom-color:#0000;transform:none}.js .nav{visibility:hidden;opacity:0}.js .nav.nav-in{visibility:visible;opacity:1}.nav-inner{height:var(--nav-h);padding-inline:var(--pad);justify-content:space-between;align-items:center;display:flex}.mark{letter-spacing:-.01em;align-items:center;gap:.6rem;font-weight:600;font-stretch:90%;display:inline-flex}.mark:before{content:"";width:.5rem;height:.5rem;transition:transform .5s var(--ease-out);background:currentColor}.mark:hover:before{transform:scale(1.7)}.navlink{padding:.5rem 0;font-size:.9375rem;position:relative}.navlink:after{content:"";transform-origin:100%;height:1px;transition:transform .5s var(--ease-out);background:currentColor;position:absolute;bottom:.3rem;left:0;right:0;transform:scaleX(0)}.navlink:hover:after,.navlink[aria-current=true]:after{transform-origin:0;transform:scaleX(1)}button.menu-btn{text-align:right;min-width:3.5rem;min-height:2.75rem;font-family:var(--f-mono);color:inherit;font-size:.75rem}.menu{z-index:55;padding:calc(var(--nav-h) + env(safe-area-inset-top,0px) + 2rem) var(--pad) calc(2rem + env(safe-area-inset-bottom,0px));background:rgb(var(--bg-rgb));visibility:hidden;clip-path:inset(0 0 100%);transition:clip-path .8s var(--ease-io), visibility 0s .8s;flex-direction:column;justify-content:space-between;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.menu.is-open{visibility:visible;clip-path:inset(0);transition:clip-path .8s var(--ease-io), visibility 0s}.menu-link{letter-spacing:-.03em;opacity:0;transition:transform .8s var(--ease-out), opacity .5s;padding:.12em 0;font-size:clamp(2.75rem,14vw,5rem);font-weight:600;font-stretch:75%;line-height:1.02;display:block;transform:translateY(40%)}.menu.is-open .menu-link{opacity:1;transform:none}.menu.is-open li:first-child .menu-link{transition-delay:.25s}.menu.is-open li:nth-child(2) .menu-link{transition-delay:.32s}.menu.is-open li:nth-child(3) .menu-link{transition-delay:.39s}.menu.is-open li:nth-child(4) .menu-link{transition-delay:.46s}.hero{touch-action:pan-y;flex-direction:column;justify-content:flex-end;min-height:max(34rem,100svh);display:flex;position:relative;overflow:hidden}.hero canvas{width:100%;height:100%;display:block;position:absolute;top:0;bottom:0;left:0;right:0}.hero-copy{z-index:2;padding:0 var(--pad) max(2rem, 4vh);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem 3rem;display:flex;position:relative}.lede{letter-spacing:-.01em;max-width:30ch;margin:0;font-size:clamp(1.15rem,1.6vw,1.55rem);font-weight:420;line-height:1.32}.hero-side{max-width:28ch}@media (min-width:768px){.hero-side{text-align:right}}.js [data-hero]{visibility:hidden}.ready-fallback [data-hero],.ready-fallback .nav{visibility:visible!important;opacity:1!important}.wipe{clip-path:inset(0 100% 0 0)}.wipe.in{clip-path:inset(0);transition:clip-path 1.1s var(--ease-io) var(--d,0s)}.rule{background:rgb(var(--fg-rgb) / .2);transform-origin:0;height:1px;display:block}.rule-anim{transform:scaleX(0)}.rule-anim.in{transition:transform 1.5s var(--ease-out) var(--d,0s);transform:scaleX(1)}.ch.flash{color:rgb(var(--accent-rgb))}.contact .ch.flash{color:rgb(var(--flood-ink-rgb))}.row-title{letter-spacing:-.025em;margin:0;font-size:clamp(1.6rem,2.7vw,2.6rem);font-weight:600;font-stretch:88%;line-height:1.05}.row-role{color:rgb(var(--muted-rgb));margin:.4rem 0 0}.proj{position:relative}.projects-end{border-top:1px solid rgb(var(--fg-rgb) / .2)}button.proj-btn{text-align:left;width:100%;color:inherit;cursor:pointer;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name icon""kind icon";align-items:center;gap:.4rem 1.5rem;padding-block-start:clamp(1.25rem,2.6vw,2.25rem);padding-block-end:clamp(1.25rem,2.6vw,2.25rem);display:grid}.proj-name{letter-spacing:-.035em;transition:font-stretch .6s var(--ease-out), color .35s, transform .6s var(--ease-out);grid-area:name;font-size:clamp(2rem,5.6vw,5.5rem);font-weight:500;font-stretch:75%;line-height:.98;display:block}.proj-kind{font-family:var(--f-mono);color:rgb(var(--muted-rgb));grid-area:kind;font-size:.75rem}.proj-icon{grid-area:icon;width:1.25rem;height:1.25rem;position:relative}.proj-icon:before,.proj-icon:after{content:"";width:100%;height:2px;transition:transform .6s var(--ease-out), opacity .4s;background:currentColor;margin-top:-1px;position:absolute;top:50%;left:0}.proj-icon:after{transform:rotate(90deg)}.proj.is-open .proj-icon:after{opacity:0;transform:rotate(0)}.proj.is-open .proj-name{color:rgb(var(--accent-rgb))}@media (min-width:768px){button.proj-btn{grid-template-columns:minmax(0,1fr) 15rem 1.5rem;grid-template-areas:"name kind icon";column-gap:2rem}}@media (hover:hover){.proj-btn:hover .proj-name{color:rgb(var(--accent-rgb));font-stretch:100%;transform:translate(.6rem)}.proj-btn:focus-visible .proj-name{color:rgb(var(--accent-rgb));font-stretch:100%;transform:translate(.6rem)}}.proj-panel{transition:grid-template-rows .8s var(--ease-out);grid-template-rows:0fr;display:grid}.proj.is-open .proj-panel{grid-template-rows:1fr}.proj-inner{min-height:0;overflow:hidden}.result{max-width:46ch;margin:1.5rem 0 0;font-size:1.125rem;font-weight:600;line-height:1.4}.tags{font-family:var(--f-mono);color:rgb(var(--muted-rgb));flex-wrap:wrap;gap:.25rem 1.25rem;margin:1.5rem 0 0;padding:0;font-size:.75rem;list-style:none;display:flex}.caption{font-family:var(--f-mono);color:rgb(var(--muted-rgb));margin:.9rem 0 0;font-size:.6875rem}.rag{flex-wrap:wrap;gap:.4rem;max-width:32rem;display:flex}.rag i,.legend i{aspect-ratio:1;display:block}.rag i{width:clamp(.9rem,1.9vw,1.4rem)}.legend i{width:.75rem}.ok{background:rgb(var(--accent-rgb))}.bad{background:rgb(var(--fg-rgb))}.miss{box-shadow:inset 0 0 0 1px rgb(var(--fg-rgb) / .4)}.legend{font-family:var(--f-mono);color:rgb(var(--muted-rgb));flex-wrap:wrap;gap:.5rem 1.5rem;margin:1.25rem 0 0;padding:0;font-size:.75rem;list-style:none;display:flex}.legend li{align-items:center;gap:.5rem;display:flex}.rag[data-state=off] i{opacity:0;transition:none;transform:scale(.2)}.rag[data-state=on] i{transition:opacity .3s,transform .45s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(var(--i) * 22ms)}.term{border:1px solid rgb(var(--fg-rgb) / .2);min-height:12rem;font-family:var(--f-mono);padding:1.25rem 1.25rem 1.5rem;font-size:.8125rem}.term-line{gap:1ch;min-height:1.7em;margin:0;display:flex}.prompt{color:rgb(var(--accent-rgb))}.caret{vertical-align:-.15em;background:currentColor;width:.6ch;height:1.1em;margin-left:.2ch;animation:1s steps(2,end) infinite blink;display:inline-block}.personas{flex-wrap:wrap;gap:.5rem;margin:1.5rem 0 0;padding:0;list-style:none;display:flex}.personas li{border:1px solid rgb(var(--fg-rgb) / .25);padding:.35rem .8rem;transition:background-color .3s,color .3s,border-color .3s}.personas li.on{background:rgb(var(--accent-rgb));border-color:rgb(var(--accent-rgb));color:rgb(var(--bg-rgb))}.routed{min-height:1.7em;color:rgb(var(--muted-rgb));margin:1rem 0 0}@keyframes blink{to{opacity:0}}.pipe{margin:0;padding:0;list-style:none}.pipe li{color:rgb(var(--muted-rgb));align-items:center;gap:1rem;padding-block-start:.6rem;padding-block-end:.6rem;font-size:1.0625rem;transition:color .3s;display:flex;position:relative}.pipe li:not(:last-child):before{content:"";background:rgb(var(--fg-rgb) / .2);width:1px;position:absolute;top:1.65rem;bottom:-.45rem;left:.34rem}.pipe .dot{width:.7rem;height:.7rem;box-shadow:inset 0 0 0 1px rgb(var(--fg-rgb) / .45);transition:background-color .3s, box-shadow .3s, transform .4s var(--ease-out);flex:none}.pipe li.done{color:rgb(var(--fg-rgb))}.pipe li.done .dot{background:rgb(var(--fg-rgb));box-shadow:none}.pipe li.on{color:rgb(var(--accent-rgb));font-weight:600}.pipe li.on .dot{background:rgb(var(--accent-rgb));box-shadow:none;transform:scale(1.4)}.mesh svg{width:100%;height:auto;display:block;overflow:visible}.mesh .edge{stroke:rgb(var(--fg-rgb) / .35);stroke-width:1px;stroke-dasharray:var(--len)}.mesh .node{fill:rgb(var(--fg-rgb));transform-box:fill-box;transform-origin:50%}.mesh .pulse{fill:rgb(var(--accent-rgb));opacity:0}.mesh[data-state=off] .edge{stroke-dashoffset:var(--len);transition:none}.mesh[data-state=on] .edge{stroke-dashoffset:0;transition:stroke-dashoffset .9s var(--ease-out);transition-delay:calc(var(--i) * 60ms)}.mesh[data-state=off] .node{transition:none;transform:scale(0)}.mesh[data-state=on] .node{transition:transform .5s var(--ease-out);transition-delay:calc(var(--i) * 40ms + .25s)}.marquee{margin-top:clamp(3rem,7vw,6rem);overflow:hidden}.marquee-track{will-change:transform;width:max-content;display:flex}.mq-item{letter-spacing:-.04em;white-space:nowrap;align-items:center;gap:clamp(1.25rem,3vw,3rem);padding-right:clamp(1.25rem,3vw,3rem);font-size:clamp(3.5rem,11vw,10rem);font-weight:600;font-stretch:75%;line-height:1.05;display:flex}.mq-item:after{content:"";background:rgb(var(--accent-rgb));flex:none;width:.2em;height:.2em}.marquee.ghost .mq-item{color:rgb(var(--fg-rgb) / .16)}.groups{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:3.5rem 2.5rem;margin:clamp(4rem,8vw,7rem) 0 0;padding:0;display:grid}.group-title{font-family:var(--f-mono);color:rgb(var(--muted-rgb));margin:0;padding-top:1rem;font-size:.75rem;font-weight:400}.group ul{margin:1rem 0 0;padding:0 0 0 1.1rem;list-style:none}.group li{letter-spacing:-.02em;width:-moz-fit-content;width:fit-content;transition:transform .5s var(--ease-out), color .3s;padding-block-start:.15rem;padding-block-end:.15rem;font-size:clamp(1.25rem,1.8vw,1.6rem);font-weight:500;font-stretch:90%;line-height:1.25;position:relative}.group li:before{content:"";background:rgb(var(--accent-rgb));width:.5rem;height:.5rem;transition:transform .4s var(--ease-out);margin-top:-.25rem;position:absolute;top:50%;left:-1.1rem;transform:scale(0)}@media (hover:hover){.group li:hover{color:rgb(var(--accent-rgb));transform:translate(.6rem)}.group li:hover:before{transform:scale(1)}}.contact{background:rgb(var(--flood-rgb));color:rgb(var(--flood-fg-rgb));padding-top:clamp(5rem,10vw,9rem);position:relative}.skyline{aspect-ratio:64/4;background:rgb(var(--flood-rgb));pointer-events:none;position:absolute;bottom:100%;left:0;right:0}.giant{letter-spacing:-.045em;margin:0;font-size:clamp(3.5rem,13vw,13rem);font-weight:600;font-stretch:75%;line-height:.88}.contact .lead{max-width:44ch;font-size:1.1875rem;line-height:1.5}.email{letter-spacing:-.03em;overflow-wrap:anywhere;transition:background-size .5s var(--ease-out);background:linear-gradient(currentColor,currentColor) 0 100%/100% 2px no-repeat;margin-top:2rem;padding-bottom:.15em;font-size:clamp(1.5rem,4.4vw,3.9rem);font-weight:500;font-stretch:80%;line-height:1.05;display:inline-block}.email:hover{background-size:100% 6px}button.linkbtn,.xlink{min-height:2.75rem;font-family:var(--f-mono);color:inherit;cursor:pointer;border-bottom:1px solid;padding:.6rem 0;font-size:.8125rem;transition:opacity .3s}button.linkbtn:hover,.xlink:hover{opacity:.7}.field{margin-bottom:1.75rem;display:block}.field label{font-family:var(--f-mono);margin-bottom:.3rem;font-size:.75rem;display:block}.field input,.field textarea{border:0;border-bottom:1px solid rgb(var(--flood-fg-rgb) / .7);width:100%;color:inherit;font:inherit;resize:none;background:0 0;border-radius:0;padding:.6rem .25rem;font-size:1.25rem;line-height:1.4;transition:background-color .3s,box-shadow .3s,border-color .3s;display:block}.field input:focus,.field textarea:focus{background:rgb(var(--flood-fg-rgb) / .1);border-bottom-color:rgb(var(--flood-fg-rgb));box-shadow:0 1px 0 0 rgb(var(--flood-fg-rgb));outline:none}.field [aria-invalid=true]{border-bottom-width:2px}.err{min-height:1.5em;font-family:var(--f-mono);margin:.4rem 0 0;font-size:.75rem}button.btn{background:rgb(var(--flood-fg-rgb));min-height:3.5rem;color:rgb(var(--flood-rgb));cursor:pointer;transition:background-color .3s, color .3s, transform .3s var(--ease-out);padding:1rem 1.75rem;font-size:1.0625rem;font-weight:600}button.btn:hover{background:rgb(var(--flood-ink-rgb));color:rgb(var(--flood-fg-rgb))}button.btn:active{transform:translateY(2px)scale(.98)}button.btn:disabled{opacity:.75;cursor:progress}.foot{padding-block:1.5rem calc(1.5rem + env(safe-area-inset-bottom,0px));border-top:1px solid rgb(var(--flood-fg-rgb) / .35);margin-top:clamp(5rem,10vw,9rem)}#follower{z-index:90;pointer-events:none;opacity:0;transition:opacity .3s;position:fixed;top:0;left:0}#follower.on{opacity:1}#follower .box{background:rgb(var(--cur));width:.6rem;height:.6rem;transition:width .45s var(--ease-out), height .45s var(--ease-out), background-color .3s;place-items:center;display:grid;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}#follower .lbl{font-family:var(--f-mono);color:rgb(var(--bg-rgb));opacity:0;font-size:.6875rem;transition:opacity .2s}#follower[data-state=label] .box{background:rgb(var(--accent-rgb));width:5.25rem;height:5.25rem}#follower[data-state=label] .lbl{opacity:1;transition-delay:.12s}#follower[data-state=link] .box{width:1.75rem;height:1.75rem;box-shadow:inset 0 0 0 1px rgb(var(--cur));background:0 0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html{-webkit-tap-highlight-color:transparent}img,svg{max-width:100%}.hlinks{flex-wrap:wrap;gap:0 1.5rem;margin-top:.75rem;display:flex}.hlink{min-height:2.75rem;font-family:var(--f-mono);transition:background-size .5s var(--ease-out), color .3s;background:linear-gradient(currentColor,currentColor) 0 calc(100% - .55rem)/100% 1px no-repeat;border-bottom:1px solid #0000;align-items:center;font-size:.75rem;display:inline-flex}.hlink:hover{color:rgb(var(--accent-rgb))}.hlink.dot:before{content:"";background:rgb(var(--accent-rgb));width:.5rem;height:.5rem;margin-right:.6rem;animation:1.4s steps(2,end) infinite blink}.lede-lg{letter-spacing:-.025em;max-width:34ch;font-size:clamp(1.5rem,3vw,2.6rem);font-weight:500;font-stretch:85%;line-height:1.1}.lede-lg em{color:rgb(var(--accent-rgb));font-style:normal}.bullets{margin:1rem 0 0;padding:0;list-style:none}.bullets li{padding:.35rem 0 .35rem 1.25rem;position:relative}.bullets li:before{content:"";background:rgb(var(--accent-rgb));width:.4rem;height:.4rem;position:absolute;top:1.1rem;left:0}.row-title a{transition:background-size .5s var(--ease-out), color .3s;background:linear-gradient(currentColor,currentColor) 0 100%/0 2px no-repeat}.row-title a:hover{color:rgb(var(--accent-rgb));background-size:100% 2px}.now{background:rgb(var(--accent-rgb));color:rgb(var(--bg-rgb));font-family:var(--f-mono);letter-spacing:0;vertical-align:middle;margin-left:.5rem;padding:.05rem .5rem;font-size:.6875rem;font-weight:500;display:inline-block}.domain-block+.domain-block{margin-top:clamp(3rem,6vw,5rem)}.domain{justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 1rem;display:flex}.domain h3{letter-spacing:-.015em;margin:0;font-size:clamp(1.1rem,1.6vw,1.4rem);font-weight:600;font-stretch:90%}.plink{min-height:2.75rem;font-family:var(--f-mono);color:rgb(var(--accent-rgb));border-bottom:1px solid;align-items:center;margin-top:.75rem;font-size:.8125rem;display:inline-flex}.plink:hover{opacity:.7}.proj-panel .copy+.copy{margin-top:1rem}.stat{grid-template-columns:minmax(0,1fr);gap:.75rem 2rem;padding-block-start:clamp(1.5rem,3vw,2.5rem);padding-block-end:clamp(1.5rem,3vw,2.5rem);display:grid}@media (min-width:768px){.stat{grid-template-columns:9rem minmax(0,1fr) minmax(0,22rem);align-items:baseline}}.stat-value{letter-spacing:-.04em;margin:0;font-size:clamp(2.5rem,6vw,5.5rem);font-weight:600;font-stretch:75%;line-height:.95}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.field input{min-height:3rem}.form-done{padding:1.5rem 0;display:none}.form-done .h3{letter-spacing:-.03em;margin:0 0 .5rem;font-size:clamp(1.75rem,3.6vw,3rem);font-weight:600;font-stretch:75%;line-height:1}form.is-sent .form-fields{display:none}form.is-sent .form-done{display:block}#formStatus.bad{font-weight:600}.lt{min-height:100svh;padding-top:calc(var(--nav-h) + 3rem);flex-direction:column;display:flex}.lt-link{letter-spacing:-.035em;transition:color .35s, padding .6s var(--ease-out);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;padding-block-start:clamp(1rem,2.4vw,1.75rem);padding-block-end:clamp(1rem,2.4vw,1.75rem);font-size:clamp(2rem,8vw,4.5rem);font-weight:600;font-stretch:75%;line-height:1;display:grid}.lt-link small{font-family:var(--f-mono);letter-spacing:0;color:rgb(var(--muted-rgb));font-size:.75rem;font-weight:400;font-stretch:100%}@media (hover:hover){.lt-link:hover{color:rgb(var(--accent-rgb));padding-left:.75rem}}@media (max-width:767px){.section{padding-block-start:clamp(4.5rem,16vw,7rem);padding-block-end:clamp(4.5rem,16vw,7rem)}.hero-copy{gap:1.25rem}.lede{max-width:34ch}.term{padding:1rem;font-size:.75rem}.field input,.field textarea{font-size:1.125rem}button.btn{width:100%}.email{font-size:clamp(1.25rem,6.2vw,2rem)}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
