/*! tailwindcss v4.3.0 | 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,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-font-weight:initial}}}@layer theme{:root,:host{--font-heading:"Inter Tight", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-body:"Inter", ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-primary:#014550;--color-light:#fff;--color-dark:#080808;--spacing-3xs:clamp(.3125rem, .2881rem + .122vw, .375rem);--spacing-2xs:clamp(.6875rem, .6631rem + .122vw, .75rem);--spacing-xs:clamp(1rem, .9512rem + .2439vw, 1.125rem);--spacing-s:clamp(1.3125rem, 1.2393rem + .3659vw, 1.5rem);--spacing-m:clamp(2rem, 1.9024rem + .4878vw, 2.25rem);--spacing-l:clamp(2.625rem, 2.4787rem + .7317vw, 3rem);--spacing-xl:clamp(3.9375rem, 3.718rem + 1.0976vw, 4.5rem);--spacing-s-l:clamp(1.3125rem, .654rem + 3.2927vw, 3rem);--spacing-xs-2xl:clamp(1rem, -.9512rem + 9.7561vw, 6rem);--text--2:clamp(.7407rem, .7314rem + .0415vw, .7813rem);--text--1:clamp(.8333rem, .8093rem + .1068vw, .9375rem);--text-0:clamp(.9375rem, .8942rem + .1923vw, 1.125rem);--text-1:clamp(1.0547rem, .9865rem + .3029vw, 1.35rem);--text-2:clamp(1.1865rem, 1.0865rem + .4446vw, 1.62rem);--text-3:clamp(1.3348rem, 1.1943rem + .6248vw, 1.944rem);--text-4:clamp(1.5017rem, 1.3099rem + .8524vw, 2.3328rem);--text-5:clamp(1.6894rem, 1.4333rem + 1.1384vw, 2.7994rem);--text-9:clamp(2.7061rem, 1.991rem + 3.1781vw, 5.8048rem);--font-weight-bold:700;--leading-none:1;--radius-md:.375rem;--radius-full:9999px;--ease-default:cubic-bezier(.4, 0, .2, 1)}}@layer base{.breakout-button{position:static}.breakout-button,.breakout-button:before{cursor:pointer}.breakout-button:before{content:"";width:100%;height:100%;display:block;position:absolute;top:0;left:0}*,:before,:after{box-sizing:border-box}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}:where(ul,ol)[role=list]{margin:0;padding:0;list-style:none}html:focus-within{scroll-behavior:smooth}body{text-rendering:geometricprecision;min-height:100vh;line-height:1.5}a:not([class]){-webkit-text-decoration-skip-ink:auto;text-decoration-skip-ink:auto}img,picture,svg{max-width:100%;height:auto;display:block}input,button,textarea,select{font:inherit}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}h1,h2,h3,h4,h5,h6{text-wrap:balance}*,:before,:after{border:0 solid}.wrapper{gap:0 var(--spacing-xs-2xl);grid-template-columns:[full-start]1fr[wrapper-start]minmax(0,89rem)[wrapper-end]1fr[full-end];margin:0 auto;display:grid}.wrapper>*{grid-column:wrapper}[type=color],[type=date],[type=datetime-local],[type=datetime],[type=email],[type=month],[type=number],[type=password],[type=search],[type=tel],[type=text],[type=time],[type=url],[type=week],textarea,select{border-radius:var(--radius-md);appearance:none;border:none;width:100%;padding:.5em;display:block}label,legend{width:100%;display:block}fieldset{border:none;padding:0}select{-webkit-print-color-adjust:exact;print-color-adjust:exact;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem}html{scroll-behavior:smooth}body{background-color:var(--color-dark);min-height:100dvh;color:var(--color-light);flex-direction:column;display:flex}body>header,body>main{z-index:1;position:relative}.site-bg{z-index:0;position:absolute;inset:0;overflow:hidden}.site-bg picture{display:contents}.site-bg img,.site-bg video{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.site-bg__video{opacity:0;transition:opacity .6s var(--ease-default,ease-out)}.site-bg__video.is-ready{opacity:1}@media (prefers-reduced-motion:reduce){.site-bg__video{display:none}}.fx-grain{z-index:50;pointer-events:none;opacity:.07;mix-blend-mode:overlay;position:fixed;inset:0}html:not(.no-js) [data-typewriter]{visibility:hidden}html:not(.no-js) [data-fade]{opacity:0;transform:translateY(.5rem)}html:not(.no-js) [data-fade].is-revealed{opacity:1;transition:opacity .5s var(--ease-default,ease-out), transform .5s var(--ease-default,ease-out);transform:none}[data-typewriter].is-typing:after{content:"";vertical-align:-.12em;background:currentColor;width:.5em;height:1em;margin-left:.08em;animation:.8s step-end infinite caret-blink;display:inline-block}@keyframes caret-blink{50%{opacity:0}}.glitch{--rgb-shift:.014em;text-shadow:var(--rgb-shift) 0 0 #ff204080, calc(var(--rgb-shift) * -1) 0 0 #00d6ff80;display:inline-block}.glitch.is-scrambling{--rgb-shift:.05em;font-family:var(--font-mono);animation:.16s steps(2,end) infinite glitch-jitter}@keyframes glitch-jitter{0%{transform:translate(0)}33%{transform:translate(.6px,-.4px)}66%{transform:translate(-.5px,.3px)}to{transform:translate(.3px,.2px)}}.glitch.is-flicker{animation:.13s steps(4,end) glitch-flicker}@keyframes glitch-flicker{0%,to{text-shadow:var(--rgb-shift) 0 0 #ff204080, calc(var(--rgb-shift) * -1) 0 0 #00d6ff80;transform:translate(0)}25%{text-shadow:.07em 0 #ff2040d9,-.07em 0 #00d6ffd9;transform:translate(-1.5px)}55%{text-shadow:-.05em 0 #ff2040cc,.05em 0 #00d6ffcc;transform:translate(1.5px)}80%{text-shadow:.04em 0 #ff2040d9,-.04em 0 #00d6ffd9;transform:translate(-.5px)}}@media (prefers-reduced-motion:reduce){.glitch.is-scrambling,.glitch.is-flicker{animation:none}}@keyframes fade-up{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}body>header{animation:fade-up .4s var(--ease-default,ease-out) both}@media (prefers-reduced-motion:reduce){body>header{animation:none}}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-v20-latin-regular.woff2)format("woff2")}@font-face{font-family:Inter;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/inter-v20-latin-italic.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-v20-latin-500.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-v20-latin-700.woff2)format("woff2")}@font-face{font-family:Inter Tight;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-tight-v9-latin-700.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-v20-latin-regular.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-v20-latin-500.woff2)format("woff2")}body{font-family:var(--font-body);font-size:var(--text-0)}h1,h2,h3,h4,h5{font-family:var(--font-heading);font-weight:var(--font-weight-bold);line-height:var(--leading-none)}h1{font-size:var(--text-5)}h2{font-size:var(--text-4)}h3{font-size:var(--text-3)}h4{font-size:var(--text-2)}h5{font-size:var(--text-1)}a{color:currentColor}.glitch-reveal{text-shadow:.012em 0 #ff204073,-.012em 0 #00d6ff73;display:inline-block;position:relative}html:not(.no-js) .glitch-reveal[data-glitch]{opacity:0}.glitch-reveal.is-glitching{animation:.3s steps(3,end) both glitch-in}.glitch-reveal.is-glitching:before,.glitch-reveal.is-glitching:after{content:attr(data-text);pointer-events:none;width:100%;text-shadow:none;position:absolute;top:0;left:0}.glitch-reveal.is-glitching:before{color:#ff2040;animation:.3s steps(3,end) both glitch-slice-a}.glitch-reveal.is-glitching:after{color:#00d6ff;animation:.3s steps(3,end) both glitch-slice-b}@keyframes glitch-in{0%{opacity:0;transform:translate(-.06em)}25%{opacity:1;transform:translate(.04em)}50%{transform:translate(-.02em)}to{opacity:1;transform:translate(0)}}@keyframes glitch-slice-a{0%{clip-path:inset(0 0 78%);opacity:.9;transform:translate(-.09em)}30%{clip-path:inset(36% 0 40%);opacity:.8;transform:translate(.07em)}60%{clip-path:inset(62% 0 12%);opacity:.6;transform:translate(-.05em)}to{clip-path:inset(0);opacity:0;transform:translate(0)}}@keyframes glitch-slice-b{0%{clip-path:inset(55% 0 20%);opacity:.9;transform:translate(.09em)}30%{clip-path:inset(8% 0 70%);opacity:.8;transform:translate(-.07em)}60%{clip-path:inset(75% 0 6%);opacity:.6;transform:translate(.05em)}to{clip-path:inset(0);opacity:0;transform:translate(0)}}@media (prefers-reduced-motion:reduce){html:not(.no-js) .glitch-reveal[data-glitch]{opacity:1}.glitch-reveal.is-glitching,.glitch-reveal.is-glitching:before,.glitch-reveal.is-glitching:after{animation:none}}.block-reveal{text-shadow:.02em 0 #ff20408c,-.02em 0 #00d6ff8c;display:inline-block;position:relative}html:not(.no-js) .block-reveal[data-blocks]{opacity:0}.block-reveal.is-blocking{color:#0000;text-shadow:none}.block-reveal canvas{filter:drop-shadow(3.5px 0 #ff2040a6)drop-shadow(-3.5px 0 #00d6ffa6)}@media (prefers-reduced-motion:reduce){html:not(.no-js) .block-reveal[data-blocks]{opacity:1}}}@layer components{.button{--button-bg:var(--color-light);--button-fg:var(--color-dark);--button-bg-hover:var(--color-dark);--button-fg-hover:var(--color-light);align-items:center;gap:var(--spacing-2xs);padding:var(--spacing-2xs) var(--spacing-s);background:var(--button-bg);color:var(--button-fg);font-family:var(--font-mono);font-size:var(--text--1);line-height:var(--leading-none);border-radius:var(--radius-full);cursor:pointer;transition:background-color .2s var(--ease-default), color .1s var(--ease-default);text-decoration:none;display:inline-flex}.button:hover{background:var(--button-bg-hover);color:var(--button-fg-hover)}.button>*{display:inline-block}.button:hover>*{animation:.3s steps(2,end) button-glitch}@keyframes button-glitch{0%,to{clip-path:inset(0);transform:translate(0)}20%{clip-path:inset(0 0 62%);text-shadow:.05em 0 #ff2040cc,-.05em 0 #00d6ffcc;transform:translate(-.12em)}45%{clip-path:inset(48% 0 22%);text-shadow:-.04em 0 #ff2040cc,.04em 0 #00d6ffcc;transform:translate(.12em)}70%{clip-path:inset(22% 0 50%);transform:translate(-.06em)}85%{clip-path:inset(70% 0 6%);text-shadow:.03em 0 #ff2040b3,-.03em 0 #00d6ffb3;transform:translate(.06em)}}@media (prefers-reduced-motion:reduce){.button:hover>*{animation:none}}.contact-link{--contact-corner:var(--color-light);--contact-frame:#ffffff40;--contact-bg:#00000080;--contact-bg-hover:#000000b3;--contact-corner-size:.75rem;--contact-corner-width:2px;padding:var(--spacing-xs) var(--spacing-m);background:var(--contact-bg);border:1px solid var(--contact-frame);color:var(--color-light);font-family:var(--font-mono);font-size:var(--text--2);line-height:var(--leading-none);letter-spacing:.18em;text-transform:uppercase;transition:background-color .2s var(--ease-default), border-color .2s var(--ease-default);justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:relative}.contact-link:hover{background:var(--contact-bg-hover);border-color:#ffffff73}.contact-link__corner{width:var(--contact-corner-size);height:var(--contact-corner-size);pointer-events:none;position:absolute}.contact-link__corner--tl{top:calc(var(--contact-corner-width) * -.5);left:calc(var(--contact-corner-width) * -.5);border-top:var(--contact-corner-width) solid var(--contact-corner);border-left:var(--contact-corner-width) solid var(--contact-corner)}.contact-link__corner--tr{top:calc(var(--contact-corner-width) * -.5);right:calc(var(--contact-corner-width) * -.5);border-top:var(--contact-corner-width) solid var(--contact-corner);border-right:var(--contact-corner-width) solid var(--contact-corner)}.contact-link__corner--bl{bottom:calc(var(--contact-corner-width) * -.5);left:calc(var(--contact-corner-width) * -.5);border-bottom:var(--contact-corner-width) solid var(--contact-corner);border-left:var(--contact-corner-width) solid var(--contact-corner)}.contact-link__corner--br{bottom:calc(var(--contact-corner-width) * -.5);right:calc(var(--contact-corner-width) * -.5);border-bottom:var(--contact-corner-width) solid var(--contact-corner);border-right:var(--contact-corner-width) solid var(--contact-corner)}}@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.col-\[full\]{grid-column:full}.mt-s{margin-top:var(--spacing-s)}.mb-2xs{margin-bottom:var(--spacing-2xs)}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.w-full{width:100%}.max-w-\[30ch\]{max-width:30ch}.flex-1{flex:1}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.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}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-m{gap:var(--spacing-m)}:where(.space-y-3xs>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing-3xs) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing-3xs) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-xs>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing-xs) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing-xs) * calc(1 - var(--tw-space-y-reverse)))}.p-m{padding:var(--spacing-m)}.py-l{padding-block:var(--spacing-l)}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.text-1{font-size:var(--text-1)}.text-9{font-size:var(--text-9)}.text-light{color:var(--color-light)}.text-primary{color:var(--color-primary)}@media (min-width:1024px){.lg\:flex-row{flex-direction:row}.lg\:items-end{align-items:flex-end}.lg\:justify-between{justify-content:space-between}.lg\:gap-s-l{gap:var(--spacing-s-l)}.lg\:font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}}.\[\&_path\]\:fill-current path{fill:currentColor}.\[\&_svg\]\:h-m svg{height:var(--spacing-m)}.\[\&_svg\]\:h-xl svg{height:var(--spacing-xl)}.\[\&_svg\]\:w-auto svg{width:auto}}@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-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-font-weight{syntax:"*";inherits:false}