:root{--ink: #0b0d17;--ink-2: #101321;--ink-3: #161a2c;--lime: #d7ff5f;--orange: #ff6a3d;--cyan: #62e6ff;--paper: #edf1e8;--paper-ink: #11131b;--slate: #9aa1b5;--line: rgba(255, 255, 255, .1);--font-display: "Space Grotesk", system-ui, sans-serif;--font-mono: "Space Mono", ui-monospace, monospace;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-expo: cubic-bezier(.87, 0, .13, 1)}*{margin:0;padding:0;box-sizing:border-box}html{scrollbar-width:thin;scrollbar-color:var(--ink-3) var(--ink)}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}body{background:var(--ink);color:#fff;font-family:var(--font-display);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased}::selection{background:var(--lime);color:var(--ink)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer}@media(hover:hover)and (pointer:fine){body,a,button,[data-cursor]{cursor:none}}.section-tag{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.22em;color:var(--lime);margin-bottom:1.6rem}.section-tag--dark{color:#3942ff}em{font-style:italic}.split-line{display:block;overflow:hidden}.split-word{display:inline-block;overflow:hidden;vertical-align:top}.split-word>span{display:inline-block}.preloader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:var(--ink);display:flex;align-items:flex-end}.preloader__inner{width:100%;display:flex;align-items:flex-end;justify-content:space-between;padding:2rem clamp(1rem,4vw,4rem)}.preloader__words{position:relative;height:1.4em;overflow:hidden;min-width:16ch}.preloader__word{position:absolute;left:0;top:0;font-family:var(--font-mono);font-size:.85rem;letter-spacing:.3em;color:var(--slate);opacity:0;transform:translateY(100%)}.preloader__count{font-size:clamp(5rem,18vw,14rem);font-weight:700;line-height:.8;color:var(--lime);font-variant-numeric:tabular-nums}.preloader__curtain{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--ink-2);transform:scaleY(0);transform-origin:top}.cursor{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;pointer-events:none;display:none}@media(hover:hover)and (pointer:fine){.cursor{display:block}}.cursor__dot{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--lime);top:-3px;left:-3px}.cursor__ring{position:absolute;width:36px;height:36px;border-radius:50%;border:1px solid rgba(215,255,95,.5);top:-18px;left:-18px;display:flex;align-items:center;justify-content:center;transition:width .3s var(--ease-out),height .3s var(--ease-out),top .3s var(--ease-out),left .3s var(--ease-out),background-color .3s,border-color .3s}.cursor__label{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.14em;color:var(--ink);opacity:0;transition:opacity .2s}.cursor.-view .cursor__ring{width:72px;height:72px;top:-36px;left:-36px;background:var(--lime);border-color:var(--lime)}.cursor.-view .cursor__label{opacity:1}.cursor.-sm .cursor__ring{width:52px;height:52px;top:-26px;left:-26px}.cursor.-hide .cursor__ring{width:0;height:0;top:0;left:0;border-color:transparent}.progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:90}.progress__bar{height:100%;background:linear-gradient(90deg,var(--cyan),var(--lime),var(--orange));transform:scaleX(0);transform-origin:left}.nav{position:fixed;top:0;left:0;right:0;z-index:80;display:flex;align-items:center;justify-content:space-between;padding:1.4rem clamp(1rem,4vw,4rem);mix-blend-mode:difference}.nav__logo{font-weight:700;font-size:1.3rem;letter-spacing:-.02em}.nav__logo-sup{font-family:var(--font-mono);font-size:.6rem;vertical-align:super;color:var(--lime)}.nav__links{display:flex;gap:2.2rem}.nav__link{position:relative;font-size:.92rem;font-weight:500;overflow:hidden;display:inline-block;height:1.5em}.nav__link:after{content:attr(data-text);position:absolute;left:0;top:100%;color:var(--lime)}.nav__link>*,.nav__link{transition:transform .4s var(--ease-out)}.nav__link:hover{transform:translateY(-100%)}.nav__link--cta{color:var(--lime)}.nav__meta{display:flex;flex-direction:column;align-items:flex-end;gap:.1rem}.nav__meta-line,.nav__meta-time{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.18em;color:var(--slate)}.nav__burger{display:none;flex-direction:column;gap:7px;padding:8px;z-index:95}.nav__burger span{width:28px;height:2px;background:#fff;transition:transform .35s var(--ease-out),opacity .3s}.nav__burger.is-open span:nth-child(1){transform:translateY(4.5px) rotate(45deg)}.nav__burger.is-open span:nth-child(2){transform:translateY(-4.5px) rotate(-45deg)}.menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:85;background:var(--ink-2);display:flex;flex-direction:column;justify-content:center;padding:0 clamp(1.4rem,6vw,3rem);clip-path:inset(0 0 100% 0);visibility:hidden}.menu__link{display:flex;align-items:baseline;gap:1rem;font-size:clamp(2.6rem,11vw,4.5rem);font-weight:700;line-height:1.25;border-bottom:1px solid var(--line);padding:.4rem 0}.menu__link:active{color:var(--lime)}.menu__index{font-family:var(--font-mono);font-size:.8rem;color:var(--lime)}.menu__foot{position:absolute;bottom:2rem;left:0;right:0;display:flex;justify-content:space-between;padding:0 clamp(1.4rem,6vw,3rem);font-family:var(--font-mono);font-size:.72rem;color:var(--slate)}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;justify-content:flex-end;padding:0 clamp(1rem,4vw,4rem) 0;overflow:hidden}.hero__canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,#0b0d178c,#0b0d1700 30%,#0b0d1740 62%,#0b0d17d1)}.hero__grain{position:absolute;top:-100%;right:-100%;bottom:-100%;left:-100%;z-index:2;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 250 250' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.7' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 8s steps(10) infinite}@keyframes grain{0%,to{transform:translate(0)}10%{transform:translate(-5%,-10%)}30%{transform:translate(3%,-15%)}50%{transform:translate(12%,9%)}70%{transform:translate(9%,4%)}90%{transform:translate(-1%,7%)}}.hero__content{position:relative;z-index:3;padding-top:7rem}.hero__eyebrow{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.hero__eyebrow-chip{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.2em;padding:.45em 1em;border:1px solid var(--line);border-radius:99px;color:var(--cyan)}.hero__title{font-size:clamp(4.2rem,17.5vw,16rem);font-weight:700;line-height:.84;letter-spacing:-.03em;text-transform:uppercase}.hero__line{display:block;overflow:hidden}.hero__line-inner{display:inline-block}.hero__line--accent{color:var(--lime);-webkit-text-stroke:0}.hero__bottom{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:2rem;margin:3rem 0 4rem}.hero__sub{max-width:34ch;font-size:clamp(1.05rem,1.6vw,1.45rem);line-height:1.5;color:#d6dae6}.hero__sub em{color:var(--orange)}.hero__cta{display:flex;gap:1rem;flex-wrap:wrap}.hero__footer{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:1.1rem 0 1.3rem;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.16em;color:var(--slate)}.hero__hint{display:inline-flex;align-items:center;gap:.7rem}.hero__hint-line{width:44px;height:1px;background:var(--slate);position:relative;overflow:hidden}.hero__hint-line:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--lime);transform:translate(-100%);animation:hint 2.2s var(--ease-expo) infinite}@keyframes hint{0%{transform:translate(-100%)}60%,to{transform:translate(100%)}}.hero__status{display:inline-flex;align-items:center;gap:.5rem}.dot{width:7px;height:7px;border-radius:50%;background:var(--lime);animation:pulse 2s infinite}@keyframes pulse{0%,to{box-shadow:0 0 #d7ff5f80}50%{box-shadow:0 0 0 6px #d7ff5f00}}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:1.1em 2.2em;font-weight:700;font-size:.92rem;border-radius:99px;overflow:hidden;isolation:isolate}.btn__fill{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:50% 50% 0 0;transform:translateY(101%);transition:transform .5s var(--ease-expo),border-radius .5s var(--ease-expo)}.btn:hover .btn__fill{transform:translateY(0);border-radius:0}.btn--solid{background:var(--lime);color:var(--ink)}.btn--solid .btn__fill{background:var(--orange)}.btn--solid:hover{color:var(--ink)}.btn--ghost{border:1px solid var(--line);color:#fff}.btn--ghost .btn__fill{background:var(--lime)}.btn--ghost:hover{color:var(--ink);border-color:var(--lime)}.btn__label{pointer-events:none}.marquee{border-block:1px solid var(--line);padding:1.1rem 0;overflow:hidden;display:flex;flex-direction:column;gap:.9rem;background:var(--ink-2)}.marquee__track{display:flex;white-space:nowrap;will-change:transform;font-family:var(--font-mono);font-size:clamp(.8rem,1.4vw,1.05rem);letter-spacing:.22em;color:var(--lime)}.marquee__track--alt{color:var(--slate)}.marquee__track span{padding-right:.5em}.story{background:var(--paper);color:var(--paper-ink);padding:clamp(5rem,12vw,10rem) clamp(1rem,4vw,4rem)}.story__title{font-size:clamp(2.6rem,7.5vw,6.5rem);font-weight:700;line-height:.95;letter-spacing:-.03em}.story__chapters{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin:clamp(3rem,7vw,5.5rem) 0}.story__chapter{border:1px solid rgba(17,19,27,.16);background:#ffffff8c;padding:2rem 1.6rem;position:relative;overflow:hidden;transition:transform .45s var(--ease-out),box-shadow .45s var(--ease-out)}.story__chapter:hover{transform:translateY(-8px);box-shadow:0 24px 48px -24px #11131b59}.story__chapter:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--paper-ink);transform:scaleY(0);transform-origin:bottom;transition:transform .45s var(--ease-expo);z-index:0}.story__chapter:hover:before{transform:scaleY(1)}.story__chapter>*{position:relative;z-index:1;transition:color .35s}.story__chapter:hover h3{color:var(--lime)}.story__chapter:hover p{color:#c9cdd9}.story__chapter:hover .story__num{color:var(--orange)}.story__num{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;color:#3942ff;display:block;margin-bottom:2.6rem}.story__chapter h3{font-size:1.45rem;font-weight:700;margin-bottom:.7rem}.story__chapter p{font-size:.95rem;line-height:1.7;color:#3d4150}.story__pull{font-size:clamp(1.5rem,3.6vw,2.8rem);font-weight:700;line-height:1.2;letter-spacing:-.02em;max-width:24ch}.story__pull em{color:var(--orange)}.work{position:relative}.work__head{padding:clamp(5rem,11vw,9rem) clamp(1rem,4vw,4rem) clamp(2rem,4vw,3rem)}.work__title{font-size:clamp(2.6rem,7.5vw,6.5rem);font-weight:700;line-height:.95;letter-spacing:-.03em}.work__sub{margin-top:1.4rem;color:var(--slate);font-size:1.05rem;max-width:44ch}.work__pin{overflow:hidden}.work__track{display:flex;width:max-content}.panel{width:100vw;min-height:100svh;flex-shrink:0;display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:clamp(2rem,4vw,4rem);padding:clamp(4rem,8vh,6rem) clamp(1rem,4vw,4rem)}.panel__info{max-width:34rem}.panel__index{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.24em;color:var(--orange)}.panel__name{font-size:clamp(2.8rem,6.5vw,5.5rem);font-weight:700;line-height:.95;letter-spacing:-.03em;margin:1rem 0 .6rem}.panel__tag{color:var(--cyan);font-family:var(--font-mono);font-size:.8rem;letter-spacing:.1em;margin-bottom:1.4rem}.panel__desc{color:#c9cdd9;line-height:1.75;margin-bottom:1.6rem}.panel__tech{display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;margin-bottom:2.2rem}.panel__tech li{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.14em;border:1px solid var(--line);border-radius:99px;padding:.45em 1em;color:var(--slate)}.panel__link{display:inline-flex;padding:1em 2em;border-radius:99px;background:var(--lime);color:var(--ink);font-weight:700;font-size:.92rem;transition:background .3s,transform .3s var(--ease-out)}.panel__link:hover{background:var(--orange)}.panel__link--soon{background:transparent;border:1px dashed var(--line);color:var(--slate)}.panel__media{position:relative;border:1px solid var(--line);background:var(--ink-2);padding:.8rem;box-shadow:0 40px 80px -40px #000c;transform-style:preserve-3d;will-change:transform}.panel__media img{aspect-ratio:16 / 10;object-fit:cover;object-position:top}.panel__media figcaption{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.14em;color:var(--slate);padding-top:.8rem}.panel__media--double{margin-bottom:3rem}.panel__media-float{position:absolute;right:-8%;bottom:-14%;width:46%;border:1px solid var(--line);box-shadow:0 24px 48px -16px #000c;transform:translateZ(40px)}.lab{padding:clamp(5rem,11vw,9rem) clamp(1rem,4vw,4rem)}.lab__title{font-size:clamp(2.6rem,7.5vw,6.5rem);font-weight:700;line-height:.95;letter-spacing:-.03em;margin-bottom:clamp(2.5rem,6vw,4.5rem)}.lab__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.card{position:relative;padding:2rem 1.8rem 4.5rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;isolation:isolate}.card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--lime);transform:translateY(101%);border-radius:50% 50% 0 0;transition:transform .5s var(--ease-expo),border-radius .5s var(--ease-expo)}.card:hover:before{transform:translateY(0);border-radius:0}.card:hover{color:var(--ink)}.card:hover .card__num,.card:hover .card__tags{color:var(--ink);opacity:.7}.card:hover .card__desc{color:var(--ink)}.card:hover .card__arrow{transform:translate(.3rem,-.3rem) rotate(0);opacity:1}.card__num{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.2em;color:var(--orange)}.card__name{font-size:1.5rem;font-weight:700;margin:1.6rem 0 .6rem;transition:color .3s}.card__desc{font-size:.9rem;line-height:1.65;color:var(--slate);transition:color .3s}.card__tags{position:absolute;bottom:1.6rem;left:1.8rem;font-family:var(--font-mono);font-size:.62rem;letter-spacing:.16em;color:var(--cyan);transition:color .3s}.card__arrow{position:absolute;top:1.6rem;right:1.6rem;font-size:1.3rem;opacity:.35;transform:rotate(45deg);transition:transform .35s var(--ease-out),opacity .3s}.services{background:var(--paper);color:var(--paper-ink);padding:clamp(5rem,11vw,9rem) clamp(1rem,4vw,4rem)}.services__title{font-size:clamp(2.6rem,7.5vw,6.5rem);font-weight:700;line-height:.95;letter-spacing:-.03em;margin-bottom:clamp(2.5rem,6vw,4rem)}.services__list{border-top:1px solid rgba(17,19,27,.2)}.service{display:grid;grid-template-columns:6rem 1fr 1.2fr 3rem;align-items:center;gap:1.5rem;padding:2rem .5rem;border-bottom:1px solid rgba(17,19,27,.2);position:relative;overflow:hidden;isolation:isolate}.service:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--paper-ink);transform:scaleY(0);transform-origin:bottom;transition:transform .4s var(--ease-expo)}.service:hover:before{transform:scaleY(1)}.service:hover{color:var(--paper)}.service:hover .service__num{color:var(--orange)}.service:hover .service__desc{color:#c9cdd9}.service:hover .service__arrow{transform:translate(.5rem);color:var(--lime)}.service__num{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.2em;color:#3942ff;transition:color .3s}.service__name{font-size:clamp(1.3rem,2.6vw,2rem);font-weight:700;letter-spacing:-.01em}.service__desc{font-size:.92rem;line-height:1.6;color:#3d4150;transition:color .3s}.service__arrow{font-size:1.4rem;transition:transform .35s var(--ease-out),color .3s}.services__note{margin-top:1.6rem;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;color:#565b6b}.contact{min-height:90svh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:clamp(5rem,11vw,9rem) clamp(1rem,4vw,4rem)}.contact__title{font-size:clamp(3rem,10vw,9rem);font-weight:700;line-height:.95;letter-spacing:-.03em}.contact__title em{color:var(--orange)}.contact__sub{max-width:46ch;margin:2rem auto 3.5rem;color:var(--slate);font-size:1.05rem}.contact__email{font-size:clamp(1.3rem,4.2vw,3.2rem);font-weight:700;letter-spacing:-.02em;position:relative;display:inline-block;overflow:hidden;height:1.4em;line-height:1.4}.contact__email-text{display:inline-block;position:relative;transition:transform .45s var(--ease-out)}.contact__email-text:after{content:attr(data-text);position:absolute;left:0;top:100%;color:var(--lime)}.contact__email:hover .contact__email-text{transform:translateY(-100%)}.contact__brief{margin-top:2.4rem;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.18em;color:var(--slate);border-bottom:1px solid var(--line);padding-bottom:.4rem;transition:color .3s,border-color .3s}.contact__brief:hover{color:var(--lime);border-color:var(--lime)}.footer{border-top:1px solid var(--line);overflow:hidden}.footer__marquee{padding:clamp(1rem,3vw,2rem) 0 0}.footer__marquee .marquee__track{font-family:var(--font-display);font-weight:700;font-size:clamp(4rem,13vw,12rem);letter-spacing:-.03em;line-height:1;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.25)}.footer__row{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;padding:2rem clamp(1rem,4vw,4rem) 2.4rem;font-family:var(--font-mono);font-size:.66rem;letter-spacing:.14em;color:var(--slate)}.footer__top{color:var(--lime)}@media(max-width:1023px){.nav__links,.nav__meta{display:none}.nav__burger{display:flex}.work__track{display:block;width:auto}.panel{width:auto;min-height:0;grid-template-columns:1fr;gap:2rem;padding-block:3.5rem}.panel__media--double{margin-bottom:4rem}.story__chapters{grid-template-columns:1fr}.panel__media-float{right:0;bottom:-10%;width:44%}.service{grid-template-columns:1fr 2.5rem;column-gap:1rem;row-gap:.5rem}.service__num{order:-1;grid-column:1}.service__name{grid-column:1}.service__desc{grid-column:1 / -1}.service__arrow{grid-column:2;grid-row:1 / -1;align-self:center;justify-self:end}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:1ms!important;transition-duration:1ms!important}}
