:root{--bg:#0b0610;--bg-rgb:11, 6, 16;--surface:#150c1d;--surface-2:#1e1129;--line:#c9a2e824;--line-strong:#c9a2e852;--brand:#662581;--brand-rgb:102, 37, 129;--brand-glow:#9b4dca;--lilac:#c9a2e8;--paper:#f5f0f8;--text:#fff;--muted:#a99bb4;--error:#ff8a9a;--success:#9ff0c4;--font-display:"Unbounded Variable", "Unbounded", system-ui, sans-serif;--font-outline:"Unbounded Outline", var(--font-display);--font-body:"Manrope Variable", "Manrope", system-ui, sans-serif;--fs-hero:clamp(2.6rem, 7.4vw, 7.6rem);--fs-h2:clamp(2rem, 5vw, 4.6rem);--fs-h3:clamp(1.15rem, 1.6vw, 1.5rem);--fs-lead:clamp(1.02rem, 1.25vw, 1.2rem);--fs-body:1rem;--fs-small:.8rem;--gutter:clamp(1rem, 4vw, 3.5rem);--section-y:clamp(6rem, 14vw, 12rem);--max:1440px;--nav-h:76px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur:.6s;--hex-clip:polygon(25% 6.7%, 75% 6.7%, 100% 50%, 75% 93.3%, 25% 93.3%, 0 50%);--chamfer:polygon(12px 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%, 0 12px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}html.is-loading{animation:0s 12s forwards loading-failsafe;overflow:hidden}@keyframes loading-failsafe{to{overflow:auto}}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:clip}img,svg,canvas{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}ul,ol{list-style:none}::selection{background:var(--brand);color:var(--text)}[id]{scroll-margin-top:var(--nav-h)}:focus-visible{outline:2px solid var(--lilac);outline-offset:4px}.skip-link{z-index:1000;background:var(--paper);color:var(--bg);transition:transform .3s var(--ease-out);padding:.75rem 1rem;position:fixed;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:none}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.035em;font-weight:300;line-height:1.02}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3);letter-spacing:-.01em;font-weight:400}h1 em,h2 em,.footer__claim em,.case--cta em{font-family:var(--font-outline);color:#0000;-webkit-text-stroke:1.5px var(--lilac);font-style:normal;font-weight:500}.eyebrow{font-family:var(--font-display);letter-spacing:.24em;text-transform:uppercase;color:var(--lilac);align-items:center;gap:.6rem;font-size:.72rem;font-weight:500;display:inline-flex}.eyebrow:before{content:"";width:.7rem;height:.7rem;clip-path:var(--hex-clip);background:var(--brand-glow)}.split-line{margin:-.06em 0 -.2em;padding:.06em 0 .2em;overflow:clip}.btn{--btn-bg:var(--brand);isolation:isolate;min-height:52px;font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;color:var(--text);background:var(--btn-bg);clip-path:var(--chamfer);transition:color .4s var(--ease-out);will-change:transform;justify-content:center;align-items:center;gap:.6rem;padding:0 1.8rem;font-size:.78rem;font-weight:500;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";z-index:-1;background:var(--paper);clip-path:circle(0% at var(--bx,50%) var(--by,50%));transition:clip-path .6s var(--ease-out);position:absolute;top:0;bottom:0;left:0;right:0}.btn:hover{color:var(--bg)}.btn:hover:before{clip-path:circle(150% at var(--bx,50%) var(--by,50%))}.btn span{display:inline-block;position:relative}.btn--ghost{--btn-bg:transparent;box-shadow:inset 0 0 0 1px var(--line-strong)}.btn--small{min-height:44px;padding:0 1.2rem;font-size:.7rem}.btn--big{min-height:64px;padding:0 2.6rem;font-size:.85rem}section{z-index:1;padding:var(--section-y) var(--gutter);position:relative}.section-head{max-width:var(--max);gap:1.4rem;margin:0 auto clamp(3rem,7vw,6rem);display:grid}.section-head__hint{color:var(--muted);max-width:32ch}[data-reveal]{will-change:transform, opacity}.stage{z-index:0;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0}.stage canvas{width:100%;height:100%}.stage:after{content:"";background:radial-gradient(60% 50% at 70% 30%, rgba(var(--brand-rgb), .28), transparent 70%), radial-gradient(40% 40% at 10% 90%, rgba(var(--brand-rgb), .18), transparent 70%);z-index:-1;position:absolute;top:0;bottom:0;left:0;right:0}.stage__fallback{fill:none;width:min(46vw,560px);stroke:var(--lilac);stroke-width:.6px;animation:40s linear infinite hex-spin;display:none;position:absolute;top:50%;right:8vw;transform:translateY(-50%)}.no-webgl .stage__fallback{display:block}.no-webgl #webgl{display:none}@keyframes hex-spin{to{transform:translateY(-50%)rotate(360deg)}}.grain{z-index:999;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:1s steps(6,end) infinite grain;position:fixed;top:-50%;bottom:-50%;left:-50%;right:-50%}@keyframes grain{0%{transform:translate(0)}20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-3%)}60%{transform:translate(-2%,-1%)}80%{transform:translate(3%,3%)}to{transform:translate(0)}}.wipe{z-index:1001;pointer-events:none;place-items:center;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.wipe svg{width:20vmax;fill:var(--brand);transform:scale(0)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.grain{display:none}.service__desc,.service__tags{opacity:1!important;max-height:none!important}.service__desc{margin:.8rem 0 1rem}.process__line-bar{stroke-dashoffset:0}.step__hex{fill:var(--brand);stroke:var(--lilac)}.work__track{width:auto;padding-bottom:1rem;overflow-x:auto}.work__progress{display:none}.work__pin{overflow:visible}}.nav{z-index:100;height:var(--nav-h);padding:0 var(--gutter);transition:background .4s, border-color .4s, transform .5s var(--ease-out);border-bottom:1px solid #0000;align-items:center;gap:2rem;display:flex;position:fixed;top:0;left:0;right:0}.nav--scrolled{background:rgba(var(--bg-rgb), .72);-webkit-backdrop-filter:blur(12px);border-color:var(--line)}.nav--hidden{transform:translateY(-100%)}.nav__logo{width:clamp(130px,13vw,170px);color:var(--text);margin-right:auto;display:block}.nav__logo svg{fill:currentColor;width:100%}.nav__links{gap:2.2rem;display:flex}.nav__links a{letter-spacing:.04em;color:var(--muted);font-size:.82rem;font-weight:500;transition:color .3s;position:relative}.nav__links a:after{content:"";background:var(--lilac);transform-origin:100%;height:1px;transition:transform .5s var(--ease-out);position:absolute;bottom:-6px;left:0;right:0;transform:scaleX(0)}.nav__links a:hover,.nav__links a.is-active{color:var(--text)}.nav__links a:hover:after,.nav__links a.is-active:after{transform-origin:0;transform:scaleX(1)}.nav__burger{width:48px;height:48px;display:none;position:relative}.nav__burger span{background:var(--text);height:1.5px;transition:transform .5s var(--ease-out);position:absolute;left:12px;right:12px}.nav__burger span:first-child{top:19px}.nav__burger span:last-child{top:28px}.nav--open .nav__burger span:first-child{transform:translateY(4.5px)rotate(45deg)}.nav--open .nav__burger span:last-child{transform:translateY(-4.5px)rotate(-45deg)}.mobile-menu{z-index:99;padding:var(--nav-h) var(--gutter) var(--gutter);background:var(--brand);clip-path:circle(0% at calc(100% - 44px) 38px);transition:clip-path .8s var(--ease-in-out), visibility 0s .8s;visibility:hidden;flex-direction:column;justify-content:center;gap:3rem;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}.mobile-menu.is-open{clip-path:circle(150% at calc(100% - 44px) 38px);visibility:visible;transition:clip-path .8s var(--ease-in-out), visibility 0s}.mobile-menu nav{gap:.6rem;display:grid}.mobile-menu nav a{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(2.2rem,10vw,3.4rem);font-weight:300;line-height:1.15}.mobile-menu__insta{color:var(--lilac);font-weight:600}.progress{right:var(--gutter);bottom:var(--gutter);z-index:90;opacity:0;width:54px;height:54px;transition:opacity .4s, transform .5s var(--ease-out);place-items:center;display:grid;position:fixed;transform:scale(.6)}.progress.is-visible{opacity:1;transform:none}.progress svg{position:absolute;top:0;bottom:0;left:0;right:0;overflow:visible}.progress path{fill:none;stroke-width:3px}.progress__track{stroke:var(--line-strong)}.progress__bar{stroke:var(--lilac);stroke-dasharray:1;stroke-dashoffset:1px}.progress__arrow{transition:transform .4s var(--ease-out);font-size:1rem}.progress:hover .progress__arrow{transform:translateY(-3px)}@media (max-width:900px){.nav__links,.nav__cta{display:none}.nav__burger{margin-right:-10px;display:block}}.footer{z-index:1;padding:var(--section-y) var(--gutter) 2rem;border-top:1px solid var(--line);background:var(--bg);position:relative;overflow:hidden}.footer__top{max-width:var(--max);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;margin:0 auto;display:flex}.footer__claim{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(1.8rem,4vw,3.6rem);font-weight:300;line-height:1.1}.footer__logo{width:100%;fill:var(--brand);margin:clamp(4rem,10vw,8rem) 0 2rem;transition:fill .8s,filter .8s}.footer__logo:hover{fill:var(--lilac);filter:drop-shadow(0 0 30px rgba(var(--brand-rgb), .9))}.footer__bottom{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:1rem;font-size:.82rem;display:flex}.footer__bottom nav{gap:1.6rem;display:flex}.footer__bottom a:hover{color:var(--text)}.legal{max-width:780px;padding:calc(var(--nav-h) + 4rem) var(--gutter) var(--section-y);z-index:1;margin:0 auto;position:relative}.legal h1{margin:1rem 0 3rem;font-size:clamp(2.4rem,6vw,4.4rem)}.legal h2{letter-spacing:-.01em;margin:2.8rem 0 .8rem;font-size:clamp(1.2rem,2vw,1.6rem);font-weight:400}.legal p,.legal li{color:var(--muted)}.legal ul{gap:.3rem;list-style:none;display:grid}.legal a{color:var(--lilac);text-underline-offset:3px;text-decoration:underline}.legal .todo{color:var(--error);font-weight:600}.legal-back{margin-top:3rem;display:inline-flex}
