@font-face{font-family:Rubik;font-style:normal;font-weight:300 700;font-display:swap;src:url(/assets/fonts/rubik-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Rubik;font-style:normal;font-weight:300 700;font-display:swap;src:url(/assets/fonts/rubik-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/ibm-plex-mono-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--ld-indigo:#312782;--ld-violet:#5f27d4;--ld-mint:#1ed5a4;--accent:#5cc8ff;--accent-rgb:92 200 255;--ld-coral:#ff583c;--surface-0:#05040f;--surface-1:#0a0818;--surface-2:#120e26;--surface-3:#1b1536;--paper:#f2efe6;--text-hi:#f4f2ff;--text-mid:#b3adcf;--text-lo:#746e94;--line-soft:#ffffff14;--line-hard:#ffffff29;--font-sans:"Rubik", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;--step--1:clamp(.83rem, .8rem + .15vw, .94rem);--step-0:clamp(1rem, .96rem + .2vw, 1.13rem);--step-1:clamp(1.2rem, 1.12rem + .4vw, 1.5rem);--step-2:clamp(1.44rem, 1.3rem + .7vw, 2rem);--step-3:clamp(1.73rem, 1.5rem + 1.15vw, 2.66rem);--step-4:clamp(2.07rem, 1.7rem + 1.85vw, 3.55rem);--step-5:clamp(2.49rem, 1.9rem + 2.95vw, 4.74rem);--step-6:clamp(2.99rem, 2.7rem + 4.6vw, 6.31rem);--space-2xs:.5rem;--space-xs:.75rem;--space-s:1rem;--space-m:1.5rem;--space-l:2.5rem;--space-xl:4rem;--space-2xl:6rem;--space-3xl:9rem;--measure:68ch;--gutter:clamp(1.25rem, 4vw, 4rem);--content-max:78rem;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-out-quart:cubic-bezier(.76, 0, .24, 1);--dur-fast:.2s;--dur-mid:.45s;--dur-slow:.9s;--z-canvas:0;--z-content:10;--z-nav:100;--z-overlay:1000;--radius-s:6px;--radius-m:12px;--radius-l:22px;--radius-pill:999px}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-block-start:var(--space-3xl)}body{background:var(--surface-0);min-height:100svh;color:var(--text-hi);font-family:var(--font-sans);font-size:var(--step-0);font-kerning:normal;text-rendering:optimizelegibility;line-height:1.5;overflow-x:hidden}img,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4{text-wrap:balance;letter-spacing:-.02em;font-weight:600;line-height:1.1}p{text-wrap:pretty}ul,ol{padding:0;list-style:none}a{color:inherit}.container{max-width:var(--content-max);padding-inline:var(--gutter);margin-inline:auto}.eyebrow{font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-weight:500;display:inline-block}.sr-only,.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;z-index:var(--z-overlay);border:0;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link:focus{width:auto;height:auto;padding:var(--space-xs) var(--space-m);clip:auto;white-space:normal;background:var(--surface-2);color:var(--text-hi);border-radius:var(--radius-m);border:1px solid var(--line-hard);margin:0;position:fixed;inset-block-start:var(--space-s);inset-inline-start:var(--space-s);overflow:visible}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}::selection{background:var(--accent);color:var(--surface-0)}@media (scripting:none){[data-reveal]{opacity:1!important;transform:none!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}.scene{z-index:var(--z-canvas);pointer-events:none;contain:strict;width:100%;height:100dvh;position:fixed;inset:0}.scene canvas{width:100%;height:100%;display:block}section{z-index:var(--z-content);padding-block:var(--space-3xl);position:relative}.glass{-webkit-backdrop-filter:blur(14px);border:1px solid var(--line-soft);border-radius:var(--radius-l);background:#120e268c}.section-head{max-width:var(--measure);margin-block-end:var(--space-l)}.section-head h2{font-size:var(--step-4);letter-spacing:-.02em;text-wrap:balance;margin:0;line-height:1.08}.nav__locales{align-items:center;gap:var(--space-2xs);font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.08em;display:flex}.nav__locales a{border-radius:var(--radius-s);color:var(--text-lo);transition:color var(--dur-fast) var(--ease-out-expo);padding:.25rem .4rem;text-decoration:none}.nav__locales a:hover{color:var(--text-hi)}.nav__locales a[data-active=true]{color:var(--text-hi);background:var(--line-soft)}.nav__locales--panel{justify-content:center;margin-block-start:var(--space-xs)}.page{min-height:60svh;padding-block-start:var(--space-3xl)}.page h1{font-size:var(--step-4);margin:0;line-height:1.08}.page__pending{max-width:var(--measure);color:var(--text-mid)}.btn{justify-content:center;align-items:center;gap:var(--space-2xs);min-height:44px;padding-inline:var(--space-m);border-radius:var(--radius-s);letter-spacing:.01em;font-weight:600;font-size:var(--step--1);cursor:pointer;transition:transform var(--dur-mid) var(--ease-out-expo), background-color var(--dur-mid) var(--ease-out-expo), border-color var(--dur-mid) var(--ease-out-expo);text-decoration:none;display:inline-flex}.btn:hover{transform:none}.btn--primary{background:var(--paper);color:var(--surface-0);border:1px solid var(--paper)}.btn--primary:hover{background:var(--accent);border-color:var(--accent)}.btn__arrow{transition:transform var(--dur-mid) var(--ease-out-expo)}.btn:hover .btn__arrow{transform:translate(3px)}.btn--ghost{color:var(--text-hi);border:1px solid var(--line-hard);background:0 0}.btn--ghost:hover{border-color:var(--accent);color:var(--accent)}.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.card{padding:var(--space-l);border-radius:var(--radius-l);-webkit-backdrop-filter:blur(7px)saturate(130%);backdrop-filter:blur(7px)saturate(130%);transition:transform var(--dur-mid) var(--ease-out-expo), border-color var(--dur-mid) var(--ease-out-expo), box-shadow var(--dur-mid) var(--ease-out-expo);background:linear-gradient(150deg,#ffffff12 0%,#ffffff05 55%,#0000001f 100%);border:1px solid #ffffff12;position:relative;box-shadow:-7px -7px 20px #ffffff08,12px 14px 34px #00000073,inset 1px 1px #ffffff17,inset -1px -1px #00000038}.card:hover{border-color:rgb(var(--accent-rgb) / 45%);box-shadow:-7px -7px 22px #ffffff0a, 16px 20px 44px #00000085, inset 1px 1px 0 #ffffff21, inset -1px -1px 0 #00000038, 0 0 36px rgb(var(--accent-rgb) / 16%);transform:translateY(-5px)}.card h3{font-size:var(--step-1);letter-spacing:-.01em;margin-block-end:var(--space-s);line-height:1.25}.card h3:after{content:"";block-size:2px;inline-size:2.25rem;background:linear-gradient(90deg, var(--accent), transparent);transition:inline-size var(--dur-mid) var(--ease-out-expo);border-radius:2px;margin-block-start:var(--space-xs);display:block}.card:hover h3:after{inline-size:4rem}.card p{color:var(--text-mid);margin:0}.card-grid{gap:var(--space-l);grid-template-columns:repeat(auto-fit,minmax(min(100%,17rem),1fr));align-items:stretch;display:grid}.card-grid>*{display:flex}.card-grid>*>.card{flex:1;inline-size:100%}@media (prefers-reduced-transparency:reduce){.card{background:var(--surface-2);-webkit-backdrop-filter:none;backdrop-filter:none}}.nav{z-index:var(--z-nav);padding-block:var(--space-m);padding-inline:var(--gutter);transition:background-color var(--dur-mid) var(--ease-out-expo), border-color var(--dur-mid) var(--ease-out-expo), backdrop-filter var(--dur-mid) var(--ease-out-expo);background:0 0;border-bottom:1px solid #0000;padding-block-start:max(var(--space-m), env(safe-area-inset-top));padding-inline-start:max(var(--gutter), env(safe-area-inset-left));padding-inline-end:max(var(--gutter), env(safe-area-inset-right));position:fixed;inset-block-start:0;inset-inline:0}.nav[data-scrolled=true]{-webkit-backdrop-filter:blur(14px);border-bottom-color:var(--line-soft);background:#120e26b3}.nav__inner{max-width:var(--content-max);justify-content:space-between;align-items:center;gap:var(--space-m);margin-inline:auto;display:flex}.nav__mark{block-size:2rem;inline-size:2rem;color:var(--text-hi);transition:color var(--dur-mid) var(--ease-out-expo);display:block}.nav__wordmark:hover .nav__mark{color:var(--accent)}.nav__wordmark{letter-spacing:.04em;font-weight:700;font-size:var(--step-0);white-space:nowrap;text-decoration:none}.nav__links{align-items:center;gap:var(--space-l);display:none}.nav__links a{color:var(--text-mid);font-size:var(--step--1);transition:color var(--dur-fast) var(--ease-out-expo);text-decoration:none}.nav__links a:hover{color:var(--text-hi)}.nav__cta{display:none}@media (min-width:48rem){.nav__cta{display:inline-flex}}.nav__toggle{border:1px solid var(--line-hard);border-radius:var(--radius-m);width:44px;height:44px;color:var(--text-hi);background:0 0;justify-content:center;align-items:center;display:inline-flex}.nav__panel{gap:var(--space-s);padding:var(--space-m);flex-direction:column;margin-block-start:var(--space-m);display:flex}.nav__panel a{color:var(--text-hi);font-size:var(--step-0);text-decoration:none}@media (min-width:56rem){.nav__links{display:flex}.nav__cta{display:inline-flex}.nav__toggle{display:none}}.hero{min-height:100vh;min-height:100svh;padding-block:calc(var(--space-3xl) + var(--space-m)) var(--space-2xl);pointer-events:none;align-items:center;display:flex;overflow-x:clip}.hero__inner{gap:clamp(var(--space-l), 4vh, var(--space-2xl));flex-direction:column;width:100%;max-width:none;display:flex}.hero__wordmark-heading{margin:0;font-size:0;line-height:0}.wordmark{pointer-events:none;width:100%;height:clamp(5rem,15vw,14rem);position:relative}.wordmark canvas{display:block;position:absolute}@media (max-width:40rem){.wordmark{height:clamp(8rem,42vw,13rem)}}.hero__meta{align-items:baseline;gap:var(--space-s) clamp(var(--space-m), 4vw, var(--space-2xl));pointer-events:auto;border-block-start:1px solid var(--line-soft);flex-wrap:wrap;padding-block-start:var(--space-m);display:flex}.hero__tagline{font-size:var(--step-1);color:var(--text-hi);text-wrap:balance;margin:0}.hero__disciplines{align-items:center;gap:var(--space-2xs) var(--space-s);font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;color:var(--text-mid);flex-wrap:wrap;margin:0;display:flex}.hero__disciplines li+li:before{content:"";block-size:.85em;inline-size:1px;vertical-align:-.1em;background:var(--line-hard);margin-inline-end:var(--space-s);display:inline-block}@media (max-width:40rem){.hero__meta{gap:var(--space-m);flex-direction:column}.hero__disciplines{align-items:flex-start;gap:var(--space-2xs);flex-direction:column}.hero__disciplines li+li:before{content:none}}.hero__cue{pointer-events:none;position:absolute;inset-block-end:var(--space-l);inset-inline-start:var(--gutter)}.hero__cue-line{inline-size:1px;block-size:var(--space-l);background:linear-gradient(to bottom, var(--line-hard), transparent);animation:hero-cue 2.4s var(--ease-in-out-quart) infinite;transform-origin:top;display:block}@keyframes hero-cue{0%,to{opacity:.4;transform:scaleY(.35)}50%{opacity:1;transform:scaleY(1)}}.competence,.services{pointer-events:none}.competence .container,.services .container{pointer-events:auto}.tech__copy{max-width:var(--measure);padding:var(--space-l);margin-block-end:var(--space-xl)}.tech__copy p{color:var(--text-mid);margin-block-end:var(--space-s)}.tech__copy p:last-of-type{color:var(--text-hi)}.tech__stats{gap:var(--space-l);grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));display:grid}.tech__stat{padding:var(--space-m)}.tech__stat-value{font-size:var(--step-5);font-variant-numeric:tabular-nums;color:var(--accent);font-weight:700;display:block}.tech__stat-label{color:var(--text-mid);font-size:var(--step--1)}.clients__head{text-align:center;margin-inline:auto}.dice{cursor:grab;touch-action:pan-y;background:radial-gradient(closest-side,#05040feb 0%,#05040fbd 45%,#05040f00 100%);block-size:clamp(20rem,46vw,34rem);inline-size:100%;position:relative}.dice:active{cursor:grabbing}.dice canvas{block-size:100%;inline-size:100%;display:block}.dice__toggle{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.dice__toggle:focus-visible{width:auto;height:auto;padding:var(--space-xs) var(--space-m);clip:auto;white-space:normal;border:1px solid var(--accent);border-radius:var(--radius-s);color:var(--text-hi);font-size:var(--step--1);cursor:pointer;background:0 0;margin:0;font-weight:600;position:static;overflow:visible}.logo-wall{gap:var(--space-m);grid-template-columns:repeat(auto-fill,minmax(min(100%,8.5rem),1fr));align-items:center;margin:0;padding:0;list-style:none;display:grid}.logo-wall li{padding:var(--space-m);border:1px solid var(--line-soft);border-radius:var(--radius-m);background:#ffffff08;justify-content:center;align-items:center;display:flex}.logo-wall img{object-fit:contain;opacity:.75;block-size:auto;max-block-size:3rem;inline-size:100%;transition:opacity var(--dur-mid) var(--ease-out-expo)}.logo-wall li:hover img{opacity:1}.cta{text-align:center}.cta__inner{max-width:40rem;padding:var(--space-xl);margin-inline:auto}.cta h2{font-size:var(--step-4);margin-block-end:var(--space-s)}.cta p{color:var(--text-mid);margin-block-end:var(--space-l)}.footer{border-block-start:1px solid var(--line-soft);padding-block:var(--space-xl)}.footer__grid{gap:var(--space-l);grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr));display:grid}.footer__title{font-size:var(--step-2);margin-block-end:var(--space-m)}.footer h3{font-size:var(--step--1);text-transform:uppercase;letter-spacing:.08em;color:var(--text-mid);margin-block-end:var(--space-s)}.footer__links{gap:var(--space-xs);flex-direction:column;display:flex}.footer__links a{color:var(--text-hi);text-decoration:none}.footer__links a:hover{color:var(--accent)}.footer__contact{color:var(--text-mid);gap:var(--space-xs);flex-direction:column;font-style:normal;display:flex}.footer__contact a{color:var(--text-hi);text-decoration:none}.footer__bottom{border-block-start:1px solid var(--line-soft);color:var(--text-lo);font-size:var(--step--1);margin-block-start:var(--space-xl);padding-block-start:var(--space-m)}
