@font-face{font-family:Gotham Pro;src:url(/fonts/GothamPro.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Gotham Pro;src:url(/fonts/GothamPro-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Gotham Pro;src:url(/fonts/GothamPro-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--c-blue:#0204f5;--c-blue-dark:#0103c4;--c-purple:#b535fc;--c-orange:#ff642c;--c-red:#e02749;--c-green:#0da678;--c-mint:#85f4c4;--c-peach:#fdceac;--c-chart-accent:var(--c-blue);--c-chart-base:#7a7de8;--c-black:#0b0b12;--c-white:#fff;--c-gray:#6b6b6b;--c-gray-light:#9598ad;--c-line:#dadce4;--c-bg:#f6f6f8;--c-bg-soft:#efeff3;--t-mint:#e3fcf1;--t-peach:#fef0e2;--t-lavender:#f3e6fe;--t-blue:#e6e6fe;--blob-a:var(--c-mint);--blob-b:var(--c-peach);--blob-c:var(--t-lavender);--container:1520px;--gutter:clamp(20px, 4vw, 64px);--radius:28px;--radius-sm:16px;--font:"Gotham Pro", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fs-hero:clamp(2.6rem, 7.2vw, 7rem);--fs-h2:clamp(2rem, 4.6vw, 4.25rem);--fs-h3:clamp(1.35rem, 2.2vw, 2rem);--fs-lead:clamp(1.05rem, 1.5vw, 1.375rem);--fs-body:clamp(.95rem, 1.1vw, 1.0625rem);--fs-small:.875rem;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-expo:cubic-bezier(.16, 1, .3, 1);--dur:.9s}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font);font-size:var(--fs-body);color:var(--c-black);background:var(--c-white);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.6;overflow-x:hidden}img,svg,video{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:0}h1,h2,h3,h4{letter-spacing:-.02em;margin:0;font-weight:700;line-height:1.08}p{margin:0}::selection{background:var(--c-blue);color:var(--c-white)}.container{width:100%;max-width:var(--container);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:clamp(4.5rem,9vw,9rem)}.page-hero+.section{padding-top:0}.eyebrow{font-size:var(--fs-small);text-transform:uppercase;letter-spacing:.14em;color:var(--c-gray);align-items:center;gap:.6em;margin-bottom:clamp(1.25rem,2.5vw,2.25rem);font-weight:500;display:inline-flex}.eyebrow:before{content:"";background:var(--c-blue);border-radius:50%;flex-shrink:0;width:10px;height:10px}.h2{font-size:var(--fs-h2);text-wrap:balance;max-width:20ch}.lead{font-size:var(--fs-lead);color:var(--c-gray);max-width:52ch;line-height:1.55}.btn{background:var(--c-black);color:var(--c-white);transition:transform .45s var(--ease-out), background-color .45s var(--ease-out), color .45s var(--ease-out);will-change:transform;border-radius:100px;align-items:center;gap:.75em;padding:1.1em 2em;font-size:1rem;font-weight:500;line-height:1;display:inline-flex;position:relative;overflow:hidden}.btn .btn-arrow{width:1em;height:1em;transition:transform .45s var(--ease-out)}.btn:hover{background:var(--c-blue);transform:translateY(-2px)}.btn:hover .btn-arrow{transform:translate(4px)}.btn--blue{background:var(--c-blue)}.btn--blue:hover{background:var(--c-black)}.btn--ghost{color:var(--c-black);box-shadow:inset 0 0 0 1.5px var(--c-line);background:0 0}.btn--ghost:hover{background:var(--c-black);color:var(--c-white);box-shadow:inset 0 0 0 1.5px var(--c-black)}.btn--lg{padding:1.3em 2.4em;font-size:1.0625rem}.link-underline{transition:background-size .4s var(--ease-out);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1.5px;padding-bottom:2px;font-weight:500;position:relative}.link-underline:hover{background-position:100% 100%;background-size:0% 1.5px}.cap-card{border-radius:var(--radius);background:var(--tint,var(--c-bg));isolation:isolate;flex-direction:column;padding:clamp(1.6rem,2.4vw,2.4rem);display:flex;position:relative;overflow:hidden}.cap-card__glow{z-index:-1;background:radial-gradient(340px circle at var(--mx,50%) var(--my,0%), color-mix(in srgb, var(--accent,var(--c-blue)) 26%, transparent), transparent 60%);opacity:0;transition:opacity .5s var(--ease-out);position:absolute;inset:0}.cap-card:hover .cap-card__glow{opacity:1}.cap-card__kicker{font-size:var(--fs-small);letter-spacing:.08em;color:var(--accent,var(--c-blue));font-weight:700}.cap-card__title{font-size:var(--fs-h3);margin:.5rem 0 .75rem}.cap-card__text{color:var(--c-gray);max-width:30ch;margin-bottom:1.75rem}.cap-card__list{flex-direction:column;gap:.55rem;margin:auto 0 0;padding:0;list-style:none;display:flex}.cap-card__list li{padding-left:1.5em;font-size:1.0625rem;font-weight:500;position:relative}.cap-card__list li:before{content:"";background:var(--accent,var(--c-blue));border-radius:50%;width:8px;height:8px;position:absolute;top:.55em;left:0}.reveal{transition:opacity var(--dur) var(--ease-expo), transform var(--dur) var(--ease-expo);transition-delay:var(--stagger,0s)}.js-anim .reveal:not(.is-visible){opacity:0;transform:translateY(42px)}.mask-line{display:block;overflow:hidden}.mask-line>span{transition:transform 1.1s var(--ease-expo);transition-delay:var(--stagger,0s);display:block}.js-anim .mask-line:not(.is-visible)>span{transform:translateY(115%)}.reveal-img{overflow:hidden}.reveal-img img{transition:transform 1.4s var(--ease-expo);transition-delay:var(--stagger,0s)}.js-anim .reveal-img:not(.is-visible) img{transform:scale(1.12)}@media (pointer:coarse){:root{--dur:.55s}.js-anim .reveal:not(.is-visible){transform:translateY(24px)}.mask-line>span{transition-duration:.7s}.reveal-img img{transition-duration:.9s}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js-anim .reveal:not(.is-visible),.js-anim .mask-line:not(.is-visible)>span,.js-anim .reveal-img:not(.is-visible) img,.reveal,.mask-line>span,.reveal-img img{opacity:1!important;transition:none!important;transform:none!important}*,:before,:after{animation-duration:.01ms!important;animation-iteration-count:1!important}}.hero-glitch{display:inline-block;position:relative}.hero-glitch:before,.hero-glitch:after{content:attr(data-text);opacity:.9;pointer-events:none;position:absolute;inset:0}.hero-glitch:before{color:var(--c-green);animation:3.4s step-end infinite hglitch-a}.hero-glitch:after{color:var(--c-purple);animation:3.4s step-end infinite hglitch-b}.hero-glitch:hover:before{animation:.55s step-end infinite hglitch-a}.hero-glitch:hover:after{animation:.55s step-end infinite hglitch-b}@keyframes hglitch-a{0%,87%{clip-path:inset(0 0 100%);transform:none}88%{clip-path:inset(10% 0 58%);transform:translate(-6px,-2px)}90%{clip-path:inset(62% 0 6%);transform:translate(5px,2px)}92%{clip-path:inset(32% 0 44%);transform:translate(-4px,1px)}94%{clip-path:inset(0 0 100%);transform:none}}@keyframes hglitch-b{0%,87%{clip-path:inset(100% 0 0);transform:none}89%{clip-path:inset(56% 0 18%);transform:translate(6px,2px)}91%{clip-path:inset(8% 0 72%);transform:translate(-5px,-1px)}93%{clip-path:inset(74% 0 4%);transform:translate(4px,-2px)}95%{clip-path:inset(100% 0 0);transform:none}}@media (prefers-reduced-motion:reduce){.hero-glitch:before,.hero-glitch:after{clip-path:inset(100% 0 0);animation:none!important}}.tilt-active{transition-property:opacity,box-shadow!important}.btn,.service-card__link,.work-card__arrow{transition-property:transform,background-color,color,box-shadow,opacity,translate;transition-duration:.45s,.45s,.45s,.45s,.45s,.3s;transition-timing-function:var(--ease-out)}.has-cursor,.has-cursor a,.has-cursor button,.has-cursor label{cursor:none}.has-cursor input,.has-cursor textarea,.has-cursor select{cursor:auto}.cursor-dot,.cursor-ring{z-index:9999;pointer-events:none;transition:opacity .3s;position:fixed;top:0;left:0}.cursor-dot{width:8px;height:8px}.cursor-ring{width:38px;height:38px}.cursor-dot:after,.cursor-ring:after{content:"";transition:transform .35s var(--ease-out), background-color .35s var(--ease-out), border-color .35s var(--ease-out);border-radius:50%;position:absolute;inset:0}.cursor-dot:after{background:var(--c-blue)}.cursor-ring:after{border:1.5px solid #0204f58c}.cursor-hot .cursor-ring:after{background:#0204f514;border-color:#0204f540;transform:scale(1.6)}.cursor-hot .cursor-dot:after{transform:scale(.6)}.cursor-down .cursor-ring:after{transform:scale(.85)}.cursor-paint{z-index:9998;pointer-events:none;mix-blend-mode:multiply;width:100%;height:100%;position:fixed;inset:0}html.modal-open .cursor-dot,html.modal-open .cursor-ring,html.modal-open .cursor-paint{opacity:0!important}html.has-cursor.modal-open,html.has-cursor.modal-open a,html.has-cursor.modal-open button,html.has-cursor.modal-open label{cursor:auto}html.has-cursor.modal-open a,html.has-cursor.modal-open button,html.has-cursor.modal-open label,html.has-cursor.modal-open summary{cursor:pointer}.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}.cc{z-index:90;border-radius:var(--radius-sm);background:var(--c-black);color:#ffffffeb;flex-wrap:wrap;align-items:center;gap:.5rem .9rem;max-width:460px;padding:.55rem .75rem .55rem 1rem;display:flex;position:fixed;bottom:1rem;left:1rem;box-shadow:0 10px 30px #0b0b124d}.cc[hidden]{display:none!important}.cc__text{flex:12rem;margin:0;font-size:.8125rem;line-height:1.45}.cc__actions{gap:.4rem;margin-left:auto;display:flex}.cc__btn{font:inherit;cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:100px;padding:.35rem .85rem;font-size:.8125rem;font-weight:700}.cc__btn--accept{background:var(--c-blue);color:#fff}.cc__btn--accept:hover{background:var(--c-blue-dark)}.cc__btn--ghost{color:#ffffffbf;background:0 0;border-color:#ffffff4d}.cc__btn--ghost:hover{color:#fff;border-color:#fff9}
