:root{--bg:#060606;--bg-2:#0d0d0d;--card:#121212b8;--line:#ffffff17;--line-2:#ffffff29;--text:#f2f2f2;--muted:#8d8d8d;--accent:#c8ff3e;--accent-dim:#c8ff3e24;--font:"Space Grotesk", system-ui, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--pad:clamp(16px, 5vw, 64px);--radius:20px;--scrollbar-track:var(--bg);--scrollbar-thumb:var(--line-2);--scrollbar-thumb-hover:var(--accent);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body{background:var(--bg);line-height:1.6;overflow-x:hidden}html{scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-width:thin}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border:2px solid var(--scrollbar-track);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}::selection{background:var(--accent);color:#000}a{color:inherit;text-decoration:none}ul{list-style:none}.mono{font-family:var(--mono)}.accent{color:var(--accent)}.container{width:100%;max-width:1280px;padding:0 var(--pad);margin:0 auto}#webgl{z-index:0;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}main,.footer{z-index:1;position:relative}.grain{z-index:2;pointer-events:none;opacity:.05;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='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:1s steps(4,end) infinite grain;position:fixed;inset:-50%}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(-3%,2%)}50%{transform:translate(2%,-3%)}75%{transform:translate(-1%,3%)}}.loader{z-index:100;background:var(--bg);padding:var(--pad);flex-direction:column;justify-content:flex-end;display:flex;position:fixed;inset:0}.loader__inner{justify-content:space-between;align-items:flex-end;margin-bottom:20px;display:flex}.loader__name{letter-spacing:-.04em;font-size:clamp(2rem,6vw,4rem);font-weight:700}.loader__count{color:var(--muted);font-size:clamp(2.5rem,10vw,7rem);line-height:1}.loader__bar{background:var(--line);height:1px}.loader__bar span{background:var(--accent);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.cursor{display:none}.has-cursor .cursor{z-index:90;background:var(--accent);pointer-events:none;mix-blend-mode:difference;border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;transition:width .3s,height .3s,margin .3s,background .3s;display:block;position:fixed;top:0;left:0}.has-cursor .cursor--hover{background:#fff;width:48px;height:48px;margin:-24px 0 0 -24px}.nav{z-index:50;padding:22px var(--pad);border-bottom:1px solid #0000;align-items:center;gap:32px;transition:padding .4s,background .4s,border-color .4s;display:flex;position:fixed;top:0;left:0;right:0}.nav--scrolled{-webkit-backdrop-filter:blur(14px);border-color:var(--line);background:#06060699;padding-top:14px;padding-bottom:14px}.nav__logo{letter-spacing:-.04em;font-size:1.4rem;font-weight:700}.nav__links{gap:28px;margin:0 auto;font-size:.92rem;display:flex}.nav__links a{color:var(--muted);transition:color .3s;position:relative}.nav__links a:after{content:"";background:var(--accent);transform-origin:100%;width:100%;height:1px;transition:transform .4s cubic-bezier(.7,0,.3,1);position:absolute;bottom:-6px;left:0;transform:scaleX(0)}.nav__links a:hover,.nav__links a.active{color:var(--text)}.nav__links a:hover:after,.nav__links a.active:after{transform-origin:0;transform:scaleX(1)}.nav__toggle{border:1px solid var(--line-2);cursor:pointer;z-index:60;background:0 0;border-radius:50%;width:44px;height:44px;margin-left:auto;display:none;position:relative}.nav__toggle span{background:var(--text);height:1.5px;transition:transform .4s;position:absolute;left:13px;right:13px}.nav__toggle span:first-child{top:18px}.nav__toggle span:last-child{top:24px}.menu-open .nav__toggle span:first-child{transform:translateY(3px)rotate(45deg)}.menu-open .nav__toggle span:last-child{transform:translateY(-3px)rotate(-45deg)}.menu{z-index:45;background:var(--bg);padding:0 var(--pad);clip-path:circle(0% at calc(100% - 44px) 44px);flex-direction:column;justify-content:center;gap:8px;transition:clip-path .8s cubic-bezier(.7,0,.2,1);display:flex;position:fixed;inset:0}.menu a{letter-spacing:-.03em;font-size:clamp(2rem,9vw,3.4rem);font-weight:600}.menu-open .menu{clip-path:circle(150% at calc(100% - 44px) 44px)}.progress{z-index:55;height:2px;position:fixed;top:0;left:0;right:0}.progress span{background:var(--accent);transform-origin:0;height:100%;display:block;transform:scaleX(0)}.btn{border:1px solid var(--line-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);isolation:isolate;background:#ffffff05;border-radius:999px;align-items:center;gap:10px;padding:14px 26px;font-size:.98rem;font-weight:500;transition:color .4s,border-color .4s;display:inline-flex;position:relative;overflow:hidden}.btn:before{content:"";z-index:-1;background:var(--text);border-radius:inherit;transition:transform .5s cubic-bezier(.7,0,.2,1);position:absolute;inset:0;transform:translateY(101%)}.btn:hover{color:#000;border-color:var(--text)}.btn:hover:before{transform:translateY(0)}.btn--primary{background:var(--accent);border-color:var(--accent);color:#000}.btn--primary:before{background:#fff}.btn--small{padding:9px 18px;font-size:.88rem}.btn--big{padding:20px 36px;font-size:1.1rem}.arrow{transition:transform .4s;display:inline-block}.btn:hover .arrow{transform:translate(4px)}.section{padding:clamp(100px,16vh,180px) 0;position:relative}.eyebrow{color:var(--accent);margin-bottom:20px;font-size:.85rem}.h2{letter-spacing:-.04em;max-width:16ch;margin-bottom:clamp(40px,6vw,72px);font-size:clamp(2.2rem,5.5vw,4.6rem);font-weight:600;line-height:1.02}.word{vertical-align:top;margin-bottom:-.08em;padding-bottom:.08em;display:inline-block;overflow:hidden}.word>span{display:inline-block}.hero{flex-direction:column;justify-content:center;min-height:100svh;padding-top:140px;padding-bottom:48px;display:flex}.hero__badge{border:1px solid var(--line-2);color:var(--muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0a0a80;border-radius:999px;align-items:center;gap:10px;margin-bottom:32px;padding:8px 16px;font-size:.78rem;display:inline-flex}.dot{background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 0 var(--accent);border-radius:50%;animation:2s infinite pulse}@keyframes pulse{0%{box-shadow:0 0 #c8ff3e99}70%{box-shadow:0 0 0 10px #c8ff3e00}to{box-shadow:0 0 #c8ff3e00}}.hero__title{letter-spacing:-.05em;max-width:13ch;font-size:clamp(2.6rem,7.4vw,7rem);font-weight:600;line-height:.98}.hero__sub{max-width:52ch;color:var(--muted);margin-top:32px;font-size:clamp(1rem,1.4vw,1.2rem)}.hero__actions{flex-wrap:wrap;gap:14px;margin-top:40px;display:flex}.hero__intro{justify-content:space-between;align-items:flex-end;gap:40px;margin-top:auto;padding-top:80px;display:flex}.hero__intro p{max-width:46ch;color:var(--muted);border-left:1px solid var(--accent);padding-left:18px;font-size:.95rem}.scroll-hint{color:var(--muted);text-transform:uppercase;letter-spacing:.2em;white-space:nowrap;align-items:center;gap:12px;font-size:.75rem;display:flex}.scroll-hint__line{background:var(--line-2);width:48px;height:1px;position:relative;overflow:hidden}.scroll-hint__line:after{content:"";background:var(--accent);animation:2s cubic-bezier(.7,0,.3,1) infinite scan;position:absolute;inset:0}@keyframes scan{0%{transform:translate(-100%)}to{transform:translate(100%)}}.about__grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:clamp(40px,6vw,96px);display:grid}.about__text{color:var(--muted);gap:20px;max-width:60ch;font-size:1.06rem;display:grid}.about__text p:first-child{color:var(--text);font-size:1.3rem;line-height:1.45}.code-card{border:1px solid var(--line-2);border-radius:var(--radius);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0c0c0ccc;overflow:hidden;box-shadow:0 40px 80px -30px #000c,0 0 0 1px #c8ff3e0a}.code-card__bar{border-bottom:1px solid var(--line);align-items:center;gap:7px;padding:14px 18px;display:flex}.code-card__bar span{background:#2a2a2a;border-radius:50%;width:11px;height:11px}.code-card__bar em{color:var(--muted);margin-left:auto;font-size:.75rem;font-style:normal}.code-card pre,.project__code{color:#cfcfcf;padding:24px;font-size:clamp(.78rem,1.1vw,.92rem);line-height:1.75;overflow-x:auto}.k{color:#c792ea}.v{color:#82aaff}.s{color:var(--accent)}.f{color:#7fdbca}.c{color:#5c6370}.caret{vertical-align:text-bottom;background:var(--accent);width:8px;height:1.1em;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.glow-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);-webkit-backdrop-filter:blur(12px);transition:border-color .4s,transform .5s cubic-bezier(.2,.8,.2,1);position:relative;overflow:hidden}.glow-card:before,.project:before{content:"";pointer-events:none;background:radial-gradient(420px circle at var(--mx,-500px) var(--my,-500px), var(--accent-dim), transparent 60%);opacity:0;transition:opacity .4s;position:absolute;inset:0}.glow-card:hover,.project:hover{border-color:var(--line-2)}.glow-card:hover:before,.project:hover:before{opacity:1}.services{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.service{flex-direction:column;min-height:260px;padding:clamp(28px,3vw,44px);display:flex}.service:hover{transform:translateY(-4px)}.service--wide{grid-column:1/-1;min-height:0}.service__num{color:var(--muted);margin-bottom:auto;padding-bottom:48px;font-size:.8rem}.service h3{letter-spacing:-.03em;margin-bottom:12px;font-size:clamp(1.4rem,2.2vw,2rem);font-weight:600}.service p{color:var(--muted);max-width:48ch}.pipeline{flex-wrap:wrap;align-items:center;gap:12px;margin-top:28px;font-size:.85rem;display:flex}.pipeline span{border:1px solid var(--line-2);border-radius:999px;padding:8px 16px}.pipeline span:last-child{border-color:var(--accent);color:var(--accent)}.pipeline i{background:linear-gradient(90deg, var(--line-2), var(--accent));width:32px;height:1px}.stack .h2{margin-bottom:48px}.marquee{border-top:1px solid var(--line);padding:18px 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee--reverse{border-bottom:1px solid var(--line)}.marquee__track{width:max-content;display:flex}.marquee__track span{letter-spacing:-.04em;white-space:nowrap;color:#0000;-webkit-text-stroke:1px #ffffff59;padding:0 28px;font-size:clamp(2rem,5vw,4.2rem);font-weight:600}.marquee__track span:nth-child(3n+1){color:var(--text);-webkit-text-stroke:0}.marquee__track span:after{content:"✦";vertical-align:middle;color:var(--accent);-webkit-text-stroke:0;margin-left:56px;font-size:.4em}.stack__grid{grid-template-columns:repeat(5,1fr);gap:16px;margin-top:64px;display:grid}.stack__group{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:24px}.stack__group h3{color:var(--accent);text-transform:uppercase;letter-spacing:.12em;margin-bottom:16px;font-size:.78rem;font-weight:500}.stack__group li{border-bottom:1px dashed var(--line);padding:7px 0;font-size:.98rem}.stack__group li:last-child{border:0}.projects{perspective:1200px;gap:40px;display:grid}.project{border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform-origin:top;background:linear-gradient(160deg,#181818f2,#0a0a0af2);border-radius:28px;padding:clamp(28px,4vw,56px);position:sticky;top:12vh;overflow:hidden;box-shadow:0 -30px 60px -30px #000000e6}.project__head{flex-wrap:wrap;align-items:baseline;gap:8px 24px;display:flex}.project__num{color:var(--accent);font-size:.85rem}.project h3{letter-spacing:-.04em;font-size:clamp(1.8rem,4vw,3.4rem);font-weight:600;line-height:1.05}.project__desc{max-width:60ch;color:var(--muted);margin-top:16px;font-size:1.05rem}.project__body{grid-template-columns:1.3fr 1fr;align-items:start;gap:32px;margin-top:36px;display:grid}.project h4,.job h4{color:var(--muted);text-transform:uppercase;letter-spacing:.14em;margin-bottom:14px;font-size:.75rem;font-weight:500}.chips{flex-wrap:wrap;gap:8px;display:flex}.chips li{border:1px solid var(--line-2);border-radius:999px;padding:7px 14px;font-size:.86rem;transition:border-color .3s,color .3s,background .3s}.chips li:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.project__code{border:1px solid var(--line);background:#00000080;border-radius:14px;font-size:.82rem}.chat{border:1px solid var(--line);background:#00000080;border-radius:14px;flex-direction:column;gap:10px;padding:20px;font-size:.82rem;display:flex}.chat p{border-radius:14px;max-width:85%;padding:10px 14px}.chat__in{background:#1c1c1c;border-bottom-left-radius:4px;align-self:flex-start}.chat__out{background:var(--accent);color:#000;border-bottom-right-radius:4px;align-self:flex-end}.project__tech{border-top:1px solid var(--line);color:var(--muted);margin-top:36px;padding-top:20px;font-size:.82rem}.approach{align-items:center;min-height:100vh;display:flex}.steps{grid-template-columns:repeat(5,1fr);gap:24px;padding-top:40px;display:grid;position:relative}.steps__line{background:var(--line-2);height:1px;position:absolute;top:0;left:0;right:0}.steps__line span{background:var(--accent);transform-origin:0;height:100%;box-shadow:0 0 12px var(--accent);display:block}.step__num{border:1px solid var(--line-2);width:44px;height:44px;color:var(--muted);background:var(--bg);border-radius:50%;place-items:center;margin-top:-62px;margin-bottom:28px;font-size:.8rem;display:inline-grid}.step h3{letter-spacing:-.03em;margin-bottom:10px;font-size:clamp(1.4rem,2vw,1.9rem);font-weight:600}.step p{color:var(--muted);font-size:.96rem}.why li{border-top:1px solid var(--line);grid-template-columns:80px 1fr 1.2fr;align-items:baseline;gap:24px;padding:32px 0;transition:padding .5s cubic-bezier(.2,.8,.2,1);display:grid;position:relative}.why li:last-child{border-bottom:1px solid var(--line)}.why li:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:1px;transition:transform .6s cubic-bezier(.7,0,.2,1);position:absolute;top:-1px;left:0;transform:scaleX(0)}.why li:hover{padding-left:16px}.why li:hover:after{transform:scaleX(1)}.why span{color:var(--accent);font-size:.85rem}.why h3{letter-spacing:-.04em;font-size:clamp(1.5rem,3vw,2.6rem);font-weight:600;line-height:1.1}.why p{color:var(--muted)}.job{padding:clamp(28px,4vw,56px)}.job__meta{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;display:flex}.job__meta h3{letter-spacing:-.04em;font-size:clamp(1.6rem,3vw,2.6rem);font-weight:600}.job__meta p{color:var(--accent);font-size:.88rem}.job__summary{color:var(--muted);max-width:64ch;margin:16px 0 36px;font-size:1.08rem}.job__list{grid-template-columns:repeat(2,1fr);gap:0 40px;display:grid}.job__list li{border-top:1px solid var(--line);padding:14px 0 14px 26px;position:relative}.job__list li:before{content:"→";color:var(--accent);font-family:var(--mono);position:absolute;left:0}.philosophy{align-items:center;min-height:100vh;display:flex}.philosophy__title{letter-spacing:-.05em;max-width:14ch;font-size:clamp(2.6rem,8vw,7.5rem);font-weight:600;line-height:.98}.philosophy__title em{color:var(--accent);font-style:normal}.philosophy__text{letter-spacing:-.02em;max-width:34ch;margin-top:48px;margin-left:auto;font-size:clamp(1.4rem,2.6vw,2.2rem);line-height:1.3}.philosophy__text .word{overflow:visible}.philosophy__loop{color:var(--muted);text-align:right;margin-top:56px;font-size:clamp(.9rem,1.4vw,1.1rem)}.philosophy__loop span{color:var(--accent);margin:0 8px}.philosophy__loop span:last-child{margin:0}.contact{text-align:center;align-items:center;min-height:100vh;display:flex}.contact .container{flex-direction:column;align-items:center;display:flex}.contact__title{letter-spacing:-.05em;max-width:12ch;font-size:clamp(2.8rem,9vw,8.5rem);font-weight:600;line-height:.96}.contact__text{max-width:54ch;color:var(--muted);margin-top:32px;font-size:1.08rem}.contact__actions{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:48px;display:flex}.socials{flex-wrap:wrap;justify-content:center;gap:12px 32px;margin-top:64px;font-size:.9rem;display:flex}.socials a{color:var(--muted);transition:color .3s}.socials a:hover{color:var(--accent)}.footer{border-top:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#060606d9;padding:48px 0}.footer__inner{grid-template-columns:1fr auto;align-items:end;gap:24px;display:grid}.footer__name{letter-spacing:-.02em;font-size:1.3rem;font-weight:600}.footer__tag{color:var(--muted);margin-top:6px}.footer__links{color:var(--muted);font-size:.88rem}.footer__links a:hover{color:var(--accent)}.footer__copy{border-top:1px solid var(--line);color:var(--muted);grid-column:1/-1;padding-top:24px;font-size:.78rem}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:6px}@media (width<=1100px){.stack__grid{grid-template-columns:repeat(3,1fr)}}@media (width<=899px){.nav__links,.nav__cta{display:none}.nav__toggle{display:block}.about__grid,.project__body,.services{grid-template-columns:1fr}.service{min-height:0}.service__num{padding-bottom:28px}.steps{grid-template-columns:1fr;gap:36px;padding:0 0 0 64px}.steps__line{width:1px;height:auto;inset:0 auto 0 21px}.step__num{margin:0 0 0 -64px;position:absolute}.step{position:relative}.why li{grid-template-columns:48px 1fr}.why p{grid-column:2}.job__list{grid-template-columns:1fr}.project{top:80px}.hero__intro{flex-direction:column;align-items:flex-start}}@media (width<=600px){.stack__grid{grid-template-columns:1fr 1fr}.footer__inner{grid-template-columns:1fr}.philosophy__text,.philosophy__loop{text-align:left;margin-left:0}.hero__badge{font-size:.7rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}
