@media (max-width:1023px){.grid>*{grid-column:1/-1!important}}@keyframes marquee{to{transform:translate(-50%)}}@media (max-width:767px){.rail-track{flex-direction:column;width:auto}}@media (max-width:767px){.nav-links,.nav-actions .btn{display:none}.nav-burger{display:flex}}@media (hover:none){.cursor{display:none}}@media (prefers-reduced-motion:reduce){.marquee-track{animation-duration:240s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:auto}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}body{background:var(--bg);color:var(--fg);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5;overflow-x:clip}img,video,canvas,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}h1,h2,h3,h4,p,ul,figure{margin:0}ul{padding:0;list-style:none}::selection{background:var(--accent);color:var(--bg)}.gl-root{z-index:-1;pointer-events:none;position:fixed;inset:0}.gl-root canvas{width:100%!important;height:100%!important}.view{width:100%;height:100%;position:relative}.container{width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto}.grid{column-gap:var(--gap);grid-template-columns:repeat(12,1fr);display:grid}@media (max-width:1023px){.grid>*{grid-column:1/-1!important}}.section{padding-block:var(--section);position:relative}.eyebrow{font-family:var(--font-mono,var(--font-body));letter-spacing:.14em;text-transform:uppercase;opacity:.7;font-size:.75rem}.display{font-family:var(--font-display);font-weight:var(--display-weight,500);letter-spacing:var(--display-tracking,-.03em);text-wrap:balance;line-height:.95}.h1{font-size:clamp(3rem,9vw,9.5rem)}.h2{font-size:clamp(2.25rem,5.6vw,5.6rem)}.h3{font-size:clamp(1.6rem,3vw,2.8rem)}.lead{text-wrap:pretty;max-width:40ch;font-size:clamp(1.1rem,1.6vw,1.5rem);line-height:1.4}.muted{opacity:.66}.lines{display:block}.line-mask{margin-bottom:-.08em;padding-bottom:.08em;display:block;overflow:hidden}.line-inner{will-change:transform;display:block}.img-reveal{position:relative;overflow:hidden}.img-reveal img{object-fit:cover;will-change:transform;width:100%;height:100%}.marquee{white-space:nowrap;overflow:hidden}.marquee-track{animation:marquee var(--marquee-speed,40s) linear infinite;animation-direction:var(--marquee-dir,normal);display:inline-flex}.marquee-group{align-items:center;gap:var(--marquee-gap,3rem);padding-right:var(--marquee-gap,3rem);display:inline-flex}.rail{overflow:hidden}.rail-track{width:max-content;display:flex}@media (max-width:767px){.rail-track{flex-direction:column;width:auto}}.btn{background:var(--fg);color:var(--bg);letter-spacing:-.01em;isolation:isolate;border-radius:999px;align-items:center;gap:.75rem;padding:.95rem 1.6rem;font-weight:500;transition:color .4s;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";background:var(--accent);z-index:-1;border-radius:inherit;transition:transform .55s cubic-bezier(.76,0,.24,1);position:absolute;inset:0;transform:translateY(101%)}.btn:hover:before{transform:translateY(0)}.btn:hover{color:var(--on-accent,var(--bg))}.btn-ghost{color:var(--fg);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--fg) 30%, transparent);background:0 0}.btn-ghost:hover{color:var(--on-accent,var(--bg))}.link-line{position:relative}.link-line:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .5s cubic-bezier(.76,0,.24,1);position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(0)}.link-line:hover:after{transform-origin:0;transform:scaleX(1)}.nav{z-index:50;padding:1.1rem var(--gutter);justify-content:space-between;align-items:center;transition:background .5s,-webkit-backdrop-filter .5s,backdrop-filter .5s,transform .6s cubic-bezier(.76,0,.24,1);display:flex;position:fixed;inset:0 0 auto}.nav.is-scrolled{background:color-mix(in srgb, var(--bg) 72%, transparent);-webkit-backdrop-filter:blur(14px)}.nav.is-hidden{transform:translateY(-110%)}.nav-brand{font-family:var(--font-display);letter-spacing:-.02em;align-items:center;gap:.6rem;font-size:1.25rem;font-weight:600;display:inline-flex}.nav-links{gap:2rem;font-size:.92rem;display:flex}.nav-links a{opacity:.75;transition:opacity .3s}.nav-links a:hover,.nav-links a.active{opacity:1}.nav-actions{align-items:center;gap:1rem;display:flex}.nav-burger{flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;display:none}.nav-burger span{background:currentColor;width:22px;height:1.5px;transition:transform .4s,opacity .3s;display:block}.nav-menu{z-index:49;background:var(--bg);padding:var(--gutter);clip-path:inset(0 0 100%);flex-direction:column;justify-content:center;transition:clip-path .7s cubic-bezier(.76,0,.24,1);display:flex;position:fixed;inset:0}.nav-menu.open{clip-path:inset(0 0 0%)}.nav-menu a{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(2.4rem,10vw,4rem);line-height:1.1}@media (max-width:767px){.nav-links,.nav-actions .btn{display:none}.nav-burger{display:flex}}.footer{padding:var(--section) var(--gutter) 2rem;position:relative}.footer-word{font-family:var(--font-display);letter-spacing:-.05em;opacity:.95;font-size:clamp(4rem,19vw,20rem);font-weight:600;line-height:.8}.footer-grid{border-top:1px solid color-mix(in srgb, var(--fg) 14%, transparent);grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:2rem;padding-block:3rem;display:grid}.footer-grid h4{letter-spacing:.12em;text-transform:uppercase;opacity:.55;margin-bottom:1rem;font-size:.75rem;font-weight:500}.footer-grid li{margin-bottom:.5rem;font-size:.95rem}.footer-bottom{opacity:.6;border-top:1px solid color-mix(in srgb, var(--fg) 14%, transparent);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-top:1.5rem;font-size:.8rem;display:flex}.curtain{z-index:90;background:var(--curtain,var(--fg));transform-origin:bottom;pointer-events:none;will-change:transform;position:fixed;inset:0;transform:scaleY(0)}.curtain-word{color:var(--bg);font-family:var(--font-display);letter-spacing:-.02em;opacity:0;place-items:center;font-size:clamp(1.5rem,3vw,2.4rem);display:grid;position:absolute;inset:0}.preloader{z-index:100;background:var(--bg);padding:var(--gutter);color:var(--fg);justify-content:space-between;align-items:flex-end;display:flex;position:fixed;inset:0}.preloader-num{font-family:var(--font-display);letter-spacing:-.05em;font-variant-numeric:tabular-nums;font-size:clamp(5rem,18vw,16rem);line-height:.8}.preloader-bar{background:var(--accent);transform-origin:0;width:100%;height:3px;position:absolute;bottom:0;left:0;transform:scaleX(0)}.cursor{z-index:200;pointer-events:none;background:var(--accent);mix-blend-mode:normal;letter-spacing:.05em;width:12px;height:12px;color:var(--bg);border-radius:50%;place-items:center;margin:-6px 0 0 -6px;font-size:.7rem;font-weight:600;transition:width .35s,height .35s,margin .35s,background .35s,opacity .3s;display:grid;position:fixed;top:0;left:0}.cursor.is-hover{background:color-mix(in srgb, var(--accent) 85%, transparent);width:64px;height:64px;margin:-32px 0 0 -32px}.cursor.is-hidden{opacity:0}@media (hover:none){.cursor{display:none}}.page{min-height:100vh}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){.marquee-track{animation-duration:240s}}:root{--bg:#08060c;--fg:#f4f0ff;--accent:#ff3fa4;--on-accent:#08060c;--cyan:#33e6ff;--tangerine:#ff8a3d;--violet:#7b5cff;--ink-2:#a79fb8;--paper-2:#120e1a;--curtain:#ff3fa4;--font-display:"Syne", system-ui, sans-serif;--font-body:"DM Sans", system-ui, sans-serif;--font-mono:"DM Sans", system-ui, sans-serif;--display-weight:700;--display-tracking:-.04em;--gutter:clamp(1rem, 4vw, 3.5rem);--max:1680px;--gap:1.5rem;--section:clamp(5rem, 12vw, 11rem)}body{background:var(--bg)}.h1{font-size:clamp(3.4rem,11vw,12rem);line-height:.88}.display .grad{background:linear-gradient(90deg, var(--accent), var(--tangerine) 45%, var(--cyan));color:#0000;-webkit-background-clip:text;background-clip:text}.eyebrow{color:var(--cyan);opacity:1;font-weight:500}.curtain-word{color:var(--on-accent);font-weight:800}.nav-brand{letter-spacing:-.04em;font-size:1.35rem;font-weight:800}.footer-word{font-weight:800}.btn{background:var(--fg);color:var(--bg)}.btn:before{background:linear-gradient(90deg, var(--accent), var(--cyan))}.v-hero{height:100vh;height:100svh;position:relative;overflow:hidden}.v-hero .view{position:absolute;inset:0}.v-hero-copy{padding:0 var(--gutter) clamp(3rem, 8vh, 5.5rem);pointer-events:none;flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.v-hero-copy .h1{mix-blend-mode:normal}.v-hero-meta{top:6rem;left:var(--gutter);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);gap:.35rem;font-size:.72rem;display:grid;position:absolute}.v-hero-right{top:6rem;right:var(--gutter);text-align:right;max-width:28ch;color:var(--ink-2);font-size:.95rem;position:absolute}@media (max-width:767px){.v-hero-right{display:none}.v-hero-copy{padding-bottom:4rem}}.v-intro{gap:var(--gap);grid-template-columns:repeat(12,1fr);display:grid}.v-work{gap:var(--gap);grid-template-columns:repeat(12,1fr);row-gap:clamp(3rem,6vw,6rem);display:grid}.v-work .item{position:relative}.v-work .item:first-child{grid-column:1/span 7}.v-work .item:nth-child(2){grid-column:9/span 4;margin-top:8rem}.v-work .item:nth-child(3){grid-column:2/span 4}.v-work .item:nth-child(4){grid-column:7/span 6;margin-top:-4rem}.v-work .item:nth-child(5){grid-column:1/span 5}.v-work .item:nth-child(6){grid-column:7/span 5;margin-top:5rem}.v-work .cap{justify-content:space-between;align-items:baseline;margin-top:1rem;display:flex}.v-work .cap b{font-family:var(--font-display);letter-spacing:-.03em;font-size:1.4rem;font-weight:700}.v-work .cap span{color:var(--ink-2);letter-spacing:.1em;text-transform:uppercase;font-size:.8rem}@media (max-width:1023px){.v-work .item:nth-child(n){grid-column:1/span 12;margin-top:0}}.v-services{border-top:1px solid color-mix(in srgb, var(--fg) 14%, transparent)}.v-service{border-bottom:1px solid color-mix(in srgb, var(--fg) 14%, transparent);grid-template-columns:.5fr 2fr 2fr .5fr;align-items:center;gap:1rem;padding:2rem 0;transition:padding-left .5s cubic-bezier(.76,0,.24,1);display:grid}.v-service:hover{padding-left:1rem}.v-service .n{color:var(--ink-2);font-size:.8rem}.v-service .t{font-family:var(--font-display);letter-spacing:-.04em;font-size:clamp(1.6rem,3.4vw,3.2rem);font-weight:700;line-height:1}.v-service .d{color:var(--ink-2);max-width:40ch;font-size:.95rem}.v-service .a{border:1px solid color-mix(in srgb, var(--fg) 30%, transparent);border-radius:50%;justify-self:end;place-items:center;width:44px;height:44px;transition:background .3s,color .3s;display:grid}.v-service:hover .a{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}@media (max-width:767px){.v-service{grid-template-columns:1fr}.v-service .a{display:none}}.v-ribbon{height:120vh;position:relative}.v-ribbon-stage{height:100vh;position:sticky;top:0;overflow:hidden}.v-ribbon-stage .view{position:absolute;inset:0}.v-ribbon-copy{text-align:center;pointer-events:none;padding:var(--gutter);place-items:center;display:grid;position:absolute;inset:0}.v-clients{border-top:1px solid color-mix(in srgb, var(--fg) 14%, transparent);border-left:1px solid color-mix(in srgb, var(--fg) 14%, transparent);grid-template-columns:repeat(6,1fr);display:grid}.v-clients div{border-right:1px solid color-mix(in srgb, var(--fg) 14%, transparent);border-bottom:1px solid color-mix(in srgb, var(--fg) 14%, transparent);font-family:var(--font-display);letter-spacing:-.02em;text-align:center;color:var(--ink-2);padding:2rem 1rem;font-size:1.1rem;font-weight:700;transition:color .3s,background .3s}.v-clients div:hover{color:var(--fg);background:var(--paper-2)}@media (max-width:767px){.v-clients{grid-template-columns:repeat(2,1fr)}}.v-page-head{padding:calc(var(--section) * .85) 0 3rem}.v-case-hero{align-items:flex-end;height:100vh;display:flex;position:relative;overflow:hidden}.v-case-hero .container{padding-bottom:3rem;position:relative}.v-case-meta{gap:var(--gap);border-top:1px solid color-mix(in srgb, var(--fg) 14%, transparent);grid-template-columns:repeat(4,1fr);padding-top:1.5rem;display:grid}.v-case-meta span{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin-bottom:.4rem;font-size:.72rem;display:block}.v-case-meta b{font-weight:500}@media (max-width:767px){.v-case-meta{grid-template-columns:1fr 1fr}}.v-case-grid{gap:var(--gap);grid-template-columns:repeat(12,1fr);row-gap:clamp(2rem,5vw,5rem);display:grid}.v-kinetic{font-family:var(--font-display);letter-spacing:-.06em;white-space:nowrap;font-size:clamp(4rem,16vw,18rem);font-weight:800;line-height:.85}.v-kinetic .grad{background:linear-gradient(90deg, var(--accent), var(--cyan));color:#0000;-webkit-background-clip:text;background-clip:text}.v-team{gap:var(--gap);grid-template-columns:repeat(3,1fr);display:grid}.v-team div{border-top:1px solid color-mix(in srgb, var(--fg) 14%, transparent);padding-top:1.2rem}.v-team b{font-family:var(--font-display);font-size:1.3rem;font-weight:700;display:block}.v-team span{color:var(--ink-2);font-size:.9rem}@media (max-width:767px){.v-team{grid-template-columns:1fr}}.v-form{gap:1.2rem;max-width:640px;display:grid}.v-form input,.v-form textarea,.v-form select{border:0;border-bottom:1px solid color-mix(in srgb, var(--fg) 30%, transparent);width:100%;font:inherit;color:inherit;resize:vertical;background:0 0;outline:none;padding:1rem 0}.v-form input:focus,.v-form textarea:focus{border-color:var(--accent)}.v-chips{flex-wrap:wrap;gap:.5rem;display:flex}.v-chips button{border:1px solid color-mix(in srgb, var(--fg) 30%, transparent);border-radius:999px;padding:.5rem .9rem;font-size:.85rem;transition:background .3s,color .3s}.v-chips button[aria-pressed=true]{background:var(--fg);color:var(--bg)}.v-stats{gap:var(--gap);grid-template-columns:repeat(4,1fr);display:grid}.v-stats b{font-family:var(--font-display);letter-spacing:-.05em;font-size:clamp(2.6rem,5vw,5.2rem);font-weight:800;line-height:1;display:block}.v-stats>div>span{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);font-size:.72rem}@media (max-width:767px){.v-stats{grid-template-columns:1fr 1fr}}
