.cursor,.cursor-trail{position:fixed;top:0;left:0;z-index:9999;pointer-events:none;mix-blend-mode:difference;color:#f5f5f5;opacity:0;transition:opacity .3s ease;will-change:transform}.cursor.is-visible,.cursor-trail.is-visible{opacity:1}.cursor-square{width:14px;height:14px;background:#f5f5f5;transition:transform .35s cubic-bezier(.65,0,.35,1)}.cursor.is-hovering .cursor-square{transform:scale(1.7)}.cursor-label{position:absolute;left:50%;top:100%;transform:translate(-50%) translateY(8px);font-family:IBM Plex Mono,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#f5f5f5;white-space:nowrap;opacity:0;transition:opacity .25s ease,transform .25s ease;background:#ffffff14;padding:3px 8px;border-radius:100px;mix-blend-mode:difference}.cursor.is-hovering .cursor-label{opacity:1;transform:translate(-50%) translateY(4px)}.cursor-trail{width:12px;height:12px;background:transparent;border:1.5px solid rgba(245,245,245,.8);border-radius:50%;box-shadow:none;transition:transform .15s ease,background .3s ease,box-shadow .3s ease}@media (max-width: 991px),(hover: none){.cursor,.cursor-trail{display:none}html,body{cursor:auto!important}}.scroll-track{position:fixed;top:0;right:0;width:3px;height:100vh;background:#1a1a1a;z-index:90;transform-origin:top}.scroll-fill{position:absolute;top:0;left:0;right:0;height:100%;background:linear-gradient(180deg,#fff,#888,#444);transform:scaleY(0);transform-origin:top;transition:transform .1s linear;will-change:transform;box-shadow:0 0 6px #ffffff80}.scroll-num{position:fixed;top:50%;right:14px;transform:translateY(-50%) rotate(90deg);transform-origin:right center;z-index:90;font-family:IBM Plex Mono,monospace;font-size:10px;color:#555;letter-spacing:.15em;white-space:nowrap;padding-right:24px}@media (max-width: 767px){.scroll-num{display:none}.scroll-track{width:2px}}.cmdk{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:flex-start;justify-content:center;padding-top:14vh;background:#0c0c0c99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);opacity:0;pointer-events:none;transition:opacity .25s ease}.cmdk.is-open{opacity:1;pointer-events:auto}.cmdk__panel{width:min(640px,92vw);background:#111;border:1px solid #2a2a2a;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;max-height:70vh;transform:translateY(-8px) scale(.98);transition:transform .25s cubic-bezier(.34,1.56,.64,1);box-shadow:0 30px 60px -20px #000c}.cmdk.is-open .cmdk__panel{transform:translateY(0) scale(1)}.cmdk__input-row{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #2a2a2a}.cmdk__search{width:16px;height:16px;color:#777;flex-shrink:0}.cmdk__input{flex:1;background:transparent;border:0;outline:0;color:#f5f5f5;font-family:IBM Plex Mono,monospace;font-size:15px}.cmdk__input::placeholder{color:#666}.cmdk__esc{font-family:IBM Plex Mono,monospace;font-size:10px;padding:3px 7px;border:1px solid #2a2a2a;border-radius:4px;color:#777;background:#0a0a0a}.cmdk__list{overflow-y:auto;padding:8px 0;max-height:50vh;flex:1}.cmdk__list::-webkit-scrollbar{width:6px}.cmdk__list::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:3px}.cmdk__empty{padding:2rem 1.5rem;color:#666;font-family:IBM Plex Mono,monospace;font-size:13px;text-align:center}.cmdk__group{padding:4px 0}.cmdk__group-label{padding:6px 18px 4px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#666}.cmdk__item{width:100%;display:flex;align-items:center;gap:12px;padding:10px 18px;background:transparent;border:0;color:#d0d0d0;font-family:IBM Plex Mono,monospace;font-size:13px;text-align:left;cursor:pointer;transition:background .12s ease,color .12s ease}.cmdk__item.is-selected{background:#1a1a1a;color:#f5f5f5}.cmdk__icon{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:1px solid #2a2a2a;border-radius:6px;font-size:11px;color:#f5f5f5;flex-shrink:0}.cmdk__item.is-selected .cmdk__icon{border-color:#555;background:#0a0a0a}.cmdk__label{flex:1}.cmdk__arrow{opacity:0;font-size:11px;color:#777;transition:opacity .12s ease,transform .12s ease}.cmdk__item.is-selected .cmdk__arrow{opacity:1}.cmdk__kbd{font-family:IBM Plex Mono,monospace;font-size:10px;padding:2px 6px;border:1px solid #2a2a2a;border-radius:4px;color:#777;background:#0a0a0a}.cmdk__foot{display:flex;align-items:center;gap:14px;padding:10px 18px;border-top:1px solid #2a2a2a;background:#0a0a0a;font-family:IBM Plex Mono,monospace;font-size:10px;color:#666}.cmdk__foot kbd{display:inline-block;font-family:IBM Plex Mono,monospace;font-size:10px;padding:2px 5px;border:1px solid #2a2a2a;border-radius:3px;background:#111;color:#999;margin:0 2px}.cmdk__brand{margin-left:auto;color:#555;font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:11px;letter-spacing:.05em;text-transform:uppercase}.cmdk-flash{position:fixed;bottom:5rem;left:50%;transform:translate(-50%) translateY(20px);z-index:10001;padding:10px 18px;background:#111;border:1px solid #2a2a2a;border-radius:100px;color:#f5f5f5;font-family:IBM Plex Mono,monospace;font-size:12px;opacity:0;pointer-events:none;transition:opacity .25s ease,transform .25s ease}.cmdk-flash.is-on{opacity:1;transform:translate(-50%) translateY(0)}@media (max-width: 767px){.cmdk{padding-top:8vh}}.cs{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9990;background:#0c0c0cd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);display:flex;align-items:flex-start;justify-content:center;padding:4vh 2vw;overflow-y:auto;animation:cs-fade .3s ease}@keyframes cs-fade{0%{opacity:0}to{opacity:1}}.cs__panel{position:relative;width:min(900px,96vw);background:#0a0a0a;border:1px solid #2a2a2a;border-radius:16px;overflow:hidden;animation:cs-pop .4s cubic-bezier(.34,1.56,.64,1)}@keyframes cs-pop{0%{transform:translateY(40px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.cs__close{position:absolute;top:1.5rem;right:1.5rem;z-index:2;width:40px;height:40px;background:#111;border:1px solid #2a2a2a;border-radius:50%;color:#f5f5f5;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .25s,transform .25s}.cs__close:hover{background:#1a1a1a;transform:rotate(90deg)}.cs__close svg{width:16px;height:16px}.cs__hero{padding:4rem 3rem 3rem;border-bottom:1px solid #1a1a1a;position:relative;background:radial-gradient(800px circle at 80% 0%,rgba(245,245,245,.04),transparent 50%),#0a0a0a}.cs__num{font-family:IBM Plex Mono,monospace;font-size:12px;color:#777;letter-spacing:.1em;margin-bottom:1rem}.cs__title{font-size:clamp(2.5rem,6vw,5rem);line-height:.95;margin-bottom:1.5rem}.cs__meta{display:flex;align-items:center;flex-wrap:wrap;gap:.8rem;font-family:IBM Plex Mono,monospace;font-size:12px;color:#888;margin-bottom:1.5rem}.cs__dot{width:3px;height:3px;background:#444;border-radius:50%}.cs__status{color:#f5f5f5;padding:3px 8px;border:1px solid #444444;background:#181818;border-radius:100px;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.cs__summary{font-size:clamp(1rem,1.4vw,1.15rem);line-height:1.55;color:#d0d0d0;max-width:60ch;font-style:italic;font-family:"Instrument Serif",serif}.cs__body{padding:3rem;display:flex;flex-direction:column;gap:3rem}.cs__section-head{font-family:IBM Plex Mono,monospace;font-size:11px;color:#777;letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem;font-weight:400}.cs__section-body{font-size:1rem;line-height:1.7;color:#c5c5c5;max-width:65ch}.cs__tech{display:flex;flex-wrap:wrap;gap:8px}.cs__chip{padding:6px 12px;border:1px solid #2a2a2a;border-radius:100px;font-family:IBM Plex Mono,monospace;font-size:11px;color:#d0d0d0;background:#111;transition:background .25s,border-color .25s}.cs__chip:hover{background:#1a1a1a;border-color:#555}.cs__links{display:flex;gap:1rem;flex-wrap:wrap}.cs__link{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:100px;font-family:IBM Plex Mono,monospace;font-size:13px;border:1px solid currentColor;transition:background .25s,color .25s,transform .25s}.cs__link--primary{background:#f5f5f5;color:#0c0c0c}.cs__link--primary:hover{transform:translateY(-2px)}.cs__link--secondary{color:#f5f5f5}.cs__link--secondary:hover{background:#f5f5f5;color:#0c0c0c}.cs__arrow{transition:transform .25s}.cs__link:hover .cs__arrow{transform:translate(2px,-2px)}@media (max-width: 767px){.cs{padding:2vh 2vw}.cs__hero{padding:3rem 1.5rem 2rem}.cs__body{padding:2rem 1.5rem;gap:2rem}.cs__close{top:1rem;right:1rem}}.terminal-live{border:1px solid #2a2a2a;background:#0a0a0a;border-radius:8px;overflow:hidden;font-family:IBM Plex Mono,monospace;font-size:13px;line-height:1.7;color:#d0d0d0;cursor:text}@media (min-width: 992px) and (hover: hover){.terminal-live,.terminal-live *,.terminal-live *:before,.terminal-live *:after{cursor:text!important}}.terminal-live .terminal-bar{display:flex;align-items:center;gap:8px;padding:10px 14px;border-bottom:1px solid #2a2a2a;background:#111}.terminal-live .terminal-dot{width:10px;height:10px;border-radius:50%;background:#2a2a2a}.terminal-live .terminal-dot.red{background:#333}.terminal-live .terminal-dot.yellow{background:#555}.terminal-live .terminal-dot.green{background:#888}.terminal-live .terminal-name{margin-left:auto;font-size:11px;color:#777}.terminal-live .terminal-body{padding:1.2rem 1.4rem;max-height:420px;overflow-y:auto}.terminal-live .terminal-body::-webkit-scrollbar{width:6px}.terminal-live .terminal-body::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:3px}.tl-prompt{color:#777;margin-right:8px}.tl-key{color:#f5f5f5;font-weight:500}.tl-val{color:#c5c5c5}.tl-muted{color:#888}.tl-err{color:#aaa}.tl-sep{height:6px}.tl-sep hr{border:0;border-top:1px dashed #1a1a1a;margin:0}.tl-row{display:block}.tl-row,.tl-key,.tl-val,.tl-muted,.tl-err{white-space:pre-wrap}.tl-link{text-decoration:none;border-bottom:1px dotted #555;transition:color .2s,border-color .2s}.tl-link:hover{color:#f5f5f5;border-bottom-color:#f5f5f5}@media (min-width: 992px) and (hover: hover){.terminal-live .tl-link{cursor:pointer!important}}.tl-line{display:flex;align-items:center}.tl-input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:#f5f5f5;font:inherit;caret-color:transparent;padding:0}.tl-cursor{display:inline-block;width:7px;height:14px;background:#f5f5f5;margin-left:0;animation:blink 1s steps(2) infinite;vertical-align:-2px}@keyframes blink{50%{opacity:0}}.terminal-chips{display:flex;flex-wrap:wrap;gap:6px;padding:10px 14px;border-top:1px solid #1a1a1a;background:#0d0d0d;flex-shrink:0}.terminal-chip{font-family:IBM Plex Mono,monospace;font-size:11px;color:#8a8a8a;padding:4px 10px;border:1px solid #262626;border-radius:100px;background:transparent;transition:color .22s,border-color .22s,background .22s}.terminal-chip:hover{color:#f5f5f5;border-color:#555;background:#151515}@media (min-width: 992px) and (hover: hover){.terminal-live .terminal-chip,.terminal-live .terminal-chip *{cursor:pointer!important}}.mock{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;pointer-events:none;z-index:1}.mock__screen--shot{background:#0a0a0a}.mock__shot{display:block;width:100%;object-fit:cover;object-position:top center;filter:brightness(.9);transition:filter .5s cubic-bezier(.2,.8,.2,1)}.work-card--tilt:hover .mock__shot{filter:brightness(1)}@media (prefers-reduced-motion: reduce){.mock__shot{transition:none}}.mock--phone{padding:1.25rem 1rem 0}.mock--phone .mock__screen{height:100%;width:auto;aspect-ratio:.52;border-radius:32px 32px 0 0;border:6px solid #1a1a1a;border-bottom:0;position:relative;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 60px -20px #000c,inset 0 0 0 1px #2a2a2a}.mock--phone .mock__shot{position:absolute;top:0;right:0;bottom:0;left:0;height:100%}.mock--browser{padding:1.25rem 1.5rem 0}.mock--browser .mock__screen{width:100%;height:100%;border-radius:10px 10px 0 0;border:1px solid #2a2a2a;border-bottom:0;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 60px -20px #000c}.mock--browser .mock__viewport{position:relative;flex:1;min-height:0}.mock--browser .mock__shot{position:absolute;top:0;right:0;bottom:0;left:0;height:100%}.mock__chrome{display:flex;align-items:center;gap:5px;padding:8px 10px;background:#141414;border-bottom:1px solid #242424;flex-shrink:0}.mock__chrome-dot{width:7px;height:7px;border-radius:50%;background:#333;flex-shrink:0}.mock__chrome-url{flex:1;margin-left:8px;padding:3px 10px;background:#0c0c0c;border-radius:100px;font-family:IBM Plex Mono,monospace;font-size:9px;color:#777;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mock__screen--light{background:#f5f5f5;color:#0c0c0c}.mock__avatar{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:IBM Plex Mono,monospace;font-size:8px;font-weight:700;flex-shrink:0}.mock__avatar--1{background:linear-gradient(135deg,#444,#888);color:#fff}.mock__avatar--2{background:linear-gradient(135deg,#333,#666);color:#fff}.mock__avatar--3{background:linear-gradient(135deg,#555,#999);color:#fff}.mock--desktop{padding:1.25rem 0 0 1.5rem;justify-content:flex-start}.mock--desktop .mock__screen{height:100%;width:auto;aspect-ratio:16 / 10;background:#f5f5f5;color:#0c0c0c;border-radius:12px 12px 0 0;border:1px solid #d0d0d0;border-bottom:0;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 60px -20px #0009;filter:brightness(.9);transition:filter .5s cubic-bezier(.2,.8,.2,1)}.work-card--tilt:hover .mock--desktop .mock__screen{filter:brightness(1)}@media (prefers-reduced-motion: reduce){.mock--desktop .mock__screen{transition:none}}@media (max-width: 767px){.mock--desktop{padding:1.25rem 1rem 0;justify-content:center}.mock--desktop .mock__screen{width:100%;height:auto}}.mock__topbar--desktop{display:flex;align-items:center;gap:16px;padding:10px 14px;border-bottom:1px solid #e0e0e0;background:#fff;flex-shrink:0}.mock__logo{font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700;letter-spacing:-.02em}.mock__nav-items{display:flex;gap:14px;font-family:IBM Plex Mono,monospace;font-size:10px;color:#666;margin-left:8px}.mock__nav-active{color:#0c0c0c;font-weight:600}.mock__topbar--desktop .mock__avatar{width:22px;height:22px;font-size:9px;margin-left:auto}.mock__desk{display:grid;grid-template-columns:180px 1fr;flex:1;overflow:hidden}.mock__desk-side{background:#fafafa;border-right:1px solid #e0e0e0;padding:10px 8px;display:flex;flex-direction:column;gap:8px;overflow:hidden}.mock__search{font-family:IBM Plex Mono,monospace;font-size:9px;color:#999;padding:6px 8px;background:#fff;border:1px solid #e0e0e0;border-radius:6px}.mock__emp-list{display:flex;flex-direction:column;gap:2px}.mock__emp{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-family:IBM Plex Mono,monospace}.mock__emp--on{background:#0000000f}.mock__emp .mock__avatar{width:18px;height:18px;font-size:7px}.mock__emp-name{font-size:11px;font-weight:600}.mock__emp-id{font-size:9px;color:#999;margin-top:1px}.mock__desk-main{padding:12px 16px;display:flex;flex-direction:column;gap:12px;overflow:hidden}.mock__emp-hero{display:flex;align-items:center;gap:10px}.mock__timeline{position:relative;flex:1;border-left:2px solid #e0e0e0;margin-left:8px;padding-left:14px;min-height:120px;max-height:300px}.mock__tl-line{position:absolute;left:-2px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,transparent,#888888 20%,#888888 80%,transparent)}.mock__tl-event{position:absolute;left:-7px;display:flex;align-items:center;gap:8px;width:100%}.mock__tl-dot{width:12px;height:12px;border-radius:50%;background:#333;border:2px solid #f5f5f5;flex-shrink:0;box-shadow:0 0 0 1px #ccc}.mock__tl-dot--a{background:#111}.mock__tl-dot--b{background:#555}.mock__tl-dot--c{background:#888}.mock__tl-card{background:#fff;border:1px solid #e0e0e0;border-radius:6px;padding:4px 8px;font-family:IBM Plex Mono,monospace;display:flex;flex-direction:column;min-width:0}.mock__tl-t{font-size:11px;font-weight:600}.mock__tl-s{font-size:10px;color:#888;margin-top:1px}.radial{display:grid;grid-template-columns:80px 1fr;align-items:center;gap:1.5rem;padding:14px 0;border-top:1px solid #1f1f1f;position:relative;transition:transform .3s}.radial:hover{transform:translate(6px)}.radial__svg{width:80px;height:80px;transform:rotate(-90deg);overflow:visible}.radial__bg{fill:none;stroke:#1a1a1a;stroke-width:3}.radial__fg{fill:none;stroke:#f5f5f5;stroke-width:3;stroke-linecap:round}.radial__num{position:absolute;top:50%;left:40px;transform:translate(-50%,-50%);font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:18px;color:#f5f5f5;margin-top:-6px}.radial__label-main{font-size:clamp(.95rem,1.4vw,1.2rem);color:#f5f5f5;font-weight:500}.radial__label-sub{font-size:11px;color:#777;margin-top:2px}.container{max-width:1400px;margin:0 auto}.tag-label{display:inline-block;font-size:12px;color:#888;letter-spacing:.05em;text-transform:lowercase}.btn{display:inline-flex;align-items:center;gap:12px;padding:14px 22px;border:1px solid currentColor;border-radius:100px;font-family:IBM Plex Mono,monospace;font-size:13px;text-transform:lowercase;transition:background .3s,color .3s,transform .4s cubic-bezier(.65,0,.35,1);cursor:pointer;will-change:transform}.btn:hover{background:#f5f5f5;color:#0c0c0c}.btn .arrow{display:inline-flex}.btn .arrow svg{width:14px;height:10px}.btn--light{background:#f5f5f5;color:#0c0c0c}.btn--light:hover{background:transparent;color:#f5f5f5}.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1rem 2rem;display:flex;align-items:center;justify-content:space-between;mix-blend-mode:difference;color:#f5f5f5;--nav-scale: 1;--nav-glass: 0}.nav:before{content:"";position:absolute;top:6px;right:8px;bottom:6px;left:8px;z-index:-1;border-radius:100px;border:1px solid rgba(245,245,245,.1);background-color:#0c0c0c73;-webkit-backdrop-filter:blur(22px) saturate(140%) brightness(.55);backdrop-filter:blur(22px) saturate(140%) brightness(.55);pointer-events:none;opacity:var(--nav-glass)}.nav.is-solid{mix-blend-mode:normal}@media (prefers-reduced-motion: reduce){.nav.is-solid:before{opacity:1}}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.nav:before{background-color:#0c0c0ceb}}.nav-socials{display:flex;align-items:center;gap:.5rem;flex-wrap:nowrap}.nav-menu{display:flex;align-items:center;gap:1.5rem}.nav-socials .nav-item:first-child{margin-left:-.6em}.nav-menu .nav-item:last-child{margin-right:-.6em}.nav-socials__sep{font-family:IBM Plex Mono,monospace;font-weight:300;font-size:calc(clamp(11px,.95vw,.95rem) * var(--nav-scale));color:#4d4d4d}.nav-item{font-family:Big Shoulders Display,sans-serif;font-weight:800;font-size:calc(clamp(15px,1.35vw,1.35rem) * var(--nav-scale));text-transform:uppercase;letter-spacing:.075em;display:block;position:relative;padding:.32em .6em;border-radius:100px}.nav-item:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background-color:#f5f5f524;opacity:0;transform:scale(.86);pointer-events:none;transition:opacity .28s ease,transform .28s cubic-bezier(.34,1.4,.64,1)}.nav-item:hover:before,.nav-item:focus-visible:before{opacity:1;transform:scale(1)}.nav-item__win{position:relative;display:block;overflow:hidden;height:1.2em}.nav-item__roll{display:flex;flex-direction:column;transition:transform .5s cubic-bezier(.65,0,.35,1);will-change:transform}.nav-item__t{display:block;line-height:1.2}.nav-item:hover .nav-item__roll,.nav-item:focus-visible .nav-item__roll{transform:translateY(-50%)}@media (prefers-reduced-motion: reduce){.nav-item__roll,.nav-item:before{transition:none}}.nav-burger{display:none}@media (max-width: 767px){.nav-menu{display:none}.nav-burger{display:flex;align-items:center;gap:8px;font-family:Big Shoulders Display,sans-serif;font-weight:800;font-size:17px;text-transform:uppercase;letter-spacing:.075em}.burger-svg{width:12px;height:12px}}.menu-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;background:#0c0c0c;color:#f5f5f5;transform:translateY(-100%);transition:transform .55s cubic-bezier(.65,0,.35,1);padding:6rem 2rem 2rem;display:flex;flex-direction:column;gap:3rem}.menu-overlay.is-open{transform:translateY(0)}.menu-overlay a{font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:clamp(2.5rem,10vw,4rem);line-height:.9;text-transform:uppercase;letter-spacing:-.03em}.menu-overlay .menu-cta{display:flex;gap:1rem;flex-wrap:wrap;margin-top:auto}.hero{min-height:100svh;display:flex;flex-direction:column;position:relative;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse 70% 50% at 50% 50%,rgba(255,255,255,.04) 0%,transparent 60%),radial-gradient(ellipse 40% 30% at 80% 20%,rgba(255,255,255,.02) 0%,transparent 70%),#0c0c0c}.hero-grid{flex:1;min-width:0;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,4.5vw,5rem);align-content:center;align-items:center;padding:5.5rem 2rem 2rem;position:relative}.hero-col{min-width:0;position:relative;mix-blend-mode:difference}.hero-terminal{min-width:0;justify-self:end;width:100%;display:flex;justify-content:flex-end}.hero-terminal .terminal-live{display:flex;flex-direction:column;aspect-ratio:1.35 / 1;width:100%;max-height:min(70svh,660px)}.hero-terminal .terminal-body{flex:1;min-height:0;max-height:none}.hero-statement{margin:0;font-weight:400}.hero-statement__lead{display:block;font-family:IBM Plex Mono,monospace;font-weight:400;font-size:clamp(14px,1.75vw,1.75rem);line-height:1.5;letter-spacing:.01em;color:#f5f5f5}.hero-statement__body{display:block;margin-top:clamp(2rem,11svh,7rem);max-width:34ch;font-family:"Instrument Serif",serif;font-style:italic;font-size:clamp(2rem,4.6vw,5rem);line-height:1.1;color:#f5f5f5}.hero-cta{margin-top:clamp(1.75rem,8svh,5rem)}.works{padding:6rem 2rem 2rem}.works-letters{display:flex;align-items:flex-end;gap:.4rem;font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:clamp(5rem,18vw,18rem);line-height:.8;text-transform:uppercase;letter-spacing:-.04em}.works-letters .underline{flex:1;height:4px;background:#f5f5f5;margin-bottom:1.5rem}.works-grid{margin-top:4rem;display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}@media (max-width: 767px){.works-grid{grid-template-columns:1fr}}.work-card--tilt{position:relative;aspect-ratio:4/5;background:#131313;border:1px solid #1f1f1f;display:flex;flex-direction:column;overflow:hidden;transition:border-color .4s,background .4s,box-shadow .4s;transform-style:preserve-3d;will-change:transform}.work-card--tilt:hover{border-color:#555;background:#161616;box-shadow:0 30px 60px -20px #0009}.work-text{position:relative;z-index:2;flex-shrink:0;padding:2rem 2rem 1.5rem}.work-stage{position:relative;flex:1;min-height:0}.work-card--wide{grid-column:1 / -1;aspect-ratio:21/9;flex-direction:row}.work-card--wide .work-text{width:38%;display:flex;flex-direction:column;justify-content:center;padding:2rem}@media (max-width: 767px){.work-card--wide{flex-direction:column;aspect-ratio:4/5}.work-card--wide .work-text{width:auto;justify-content:flex-start}}.work-card--cyan,.work-card--orange,.work-card--green{border-color:#222}.work-card--cyan:hover,.work-card--orange:hover,.work-card--green:hover{border-color:#666;box-shadow:0 30px 60px -20px #000000e6}.work-card__shine{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(600px circle at var(--mx, 50%) var(--my, 50%),rgba(255,255,255,.06),transparent 40%);pointer-events:none;opacity:0;transition:opacity .4s;z-index:3}.work-card--tilt:hover .work-card__shine{opacity:1}.work-stage .mock{transition:transform .5s cubic-bezier(.2,.8,.2,1);transform-origin:bottom center}.work-card--tilt:hover .work-stage .mock{transform:scale(1.03)}@media (prefers-reduced-motion: reduce){.work-stage .mock{transition:none}}.work-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.work-num{font-size:11px;color:#777;letter-spacing:.1em}.work-title{font-size:clamp(2.2rem,4.5vw,4rem);line-height:.9;letter-spacing:-.03em}.work-desc{color:#b5b5b5;font-size:14px;max-width:34ch;margin-top:.6rem;min-height:105px}@media (max-width: 767px){.work-desc{min-height:0}}.work-foot{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-top:1.25rem}.work-tags{display:flex;flex-wrap:wrap;gap:6px;max-width:70%}.work-tag{font-size:10px;letter-spacing:.05em;padding:4px 8px;border:1px solid #2a2a2a;border-radius:100px;color:#999;text-transform:uppercase}.work-year{font-size:11px;color:#777;white-space:nowrap}.work-explore{display:flex;align-items:center;gap:8px;font-size:11px;color:#777;white-space:nowrap;transition:color .35s}.work-explore svg{width:14px;height:10px;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.work-card--tilt:hover .work-explore{color:#f5f5f5}.work-card--tilt:hover .work-explore svg{transform:translate(4px)}@media (prefers-reduced-motion: reduce){.work-explore,.work-explore svg{transition:none}}.now{padding:8rem 2rem}.now-headline{text-align:center}.now-headline .now-label{display:block;font-size:11px;color:#777;letter-spacing:.1em;margin-bottom:1rem}.now-headline .now-title{font-size:clamp(2.5rem,7vw,7rem);line-height:.95}.now-headline .now-sub{margin-top:1rem;color:#999;font-size:13px}.stats{padding:6rem 2rem;border-top:1px solid #1a1a1a;border-bottom:1px solid #1a1a1a}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#1a1a1a;border:1px solid #1a1a1a}@media (max-width: 767px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 479px){.stats-grid{grid-template-columns:1fr}}.stat{background:#0c0c0c;padding:2.5rem 1.5rem;display:flex;flex-direction:column;gap:.5rem}.stat-value{font-size:clamp(2.8rem,6vw,5.5rem);line-height:.9;color:#f5f5f5}.stat-label{color:#f5f5f5;font-size:.9rem;margin-top:.6rem}.stat-sub{color:#888;font-size:.75rem}.about{padding:8rem 2rem;--mx: .5;--my: .5}.about-intro{max-width:1100px}.about-quote{font-family:"Instrument Serif",serif;font-style:italic;font-size:clamp(1.5rem,2.6vw,2.4rem);line-height:1.3;max-width:24ch;color:#f5f5f5;margin-top:2rem}.about-img-grid{margin-top:4rem;display:grid;grid-template-columns:1.1fr 1fr;gap:1.5rem}@media (max-width: 767px){.about-img-grid{grid-template-columns:1fr}}.about-img{aspect-ratio:4/5;background:#131313;border:1px solid #1f1f1f;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.about-img svg{width:60%;height:auto}.about-img-caption{position:absolute;bottom:1rem;left:1rem;right:1rem;font-size:11px;color:#888}.about-img-tall{aspect-ratio:4/5.5}.about-h2{margin-top:6rem;font-size:clamp(2.5rem,6vw,6rem)}.skills-block{margin-top:4rem;display:grid;grid-template-columns:1fr 2fr;gap:2rem}@media (max-width: 767px){.skills-block{grid-template-columns:1fr}}.skills-title{font-size:1.1rem;color:#f5f5f5}.radial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 2.5rem}@media (max-width: 479px){.radial-grid{grid-template-columns:1fr}}.about-note{margin-top:2rem;max-width:50ch;color:#999;font-size:13px}.formes{position:relative;margin:6rem auto 0;max-width:1100px;height:320px}.forme{position:absolute;transition:transform .2s ease}.forme.f-papier{top:10%;left:5%;width:22%}.forme.f-chewing{top:50%;left:30%;width:12%}.forme.f-bonbon{top:12%;right:20%;width:18%}.forme.f-etoile{top:60%;right:8%;width:14%}.forme.f-coeur{bottom:0;left:45%;width:16%}.team-block{margin-top:6rem;display:grid;grid-template-columns:1fr 2fr;gap:2rem}@media (max-width: 767px){.team-block{grid-template-columns:1fr}}.team-title{font-size:1.1rem;color:#f5f5f5}.team-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem 2rem}@media (max-width: 479px){.team-list{grid-template-columns:1fr}}.team-name{padding:14px 0;border-top:1px solid #1f1f1f;font-size:clamp(1rem,1.4vw,1.2rem);transition:color .3s}.team-name__inner{display:block;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.team-name:hover{color:#f5f5f5}.team-name:hover .team-name__inner{transform:translate(12px)}@media (prefers-reduced-motion: reduce){.team-name__inner{transition:none}}.team-name small{display:block;color:#777;font-size:11px;margin-top:2px}.glitch{padding:6rem 2rem 8rem;position:relative;overflow:hidden}.glitch-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:center}@media (max-width: 767px){.glitch-grid{grid-template-columns:1fr}}.glitch-text-wrap{position:relative;min-height:420px}.glitch-line{font-size:clamp(2rem,5vw,4.5rem);line-height:1.1;font-weight:900;font-family:Big Shoulders Display,sans-serif;text-transform:uppercase;letter-spacing:-.02em}.glitch-line .l{color:#f5f5f5}.glitch-line .l2{color:#555}.glitch-line .l3{color:#999}.glitch-sticky{position:sticky;top:4rem;display:flex;flex-direction:column;gap:.5rem}.glitch-final{margin-top:2rem;font-size:clamp(1.8rem,3.5vw,3rem);line-height:1.05;color:#f5f5f5;font-weight:900;font-family:Big Shoulders Display,sans-serif;text-transform:uppercase;letter-spacing:-.02em;max-width:14ch}.glitch-img{aspect-ratio:4/5;background:#131313;border:1px solid #1f1f1f;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.glitch-img svg{width:70%;height:auto}footer{padding:4.5rem 2rem 1.5rem;background:#0c0c0c;border-top:1px solid #1a1a1a}.footer-h{font-size:clamp(2.5rem,7vw,6.5rem)}.footer-cta{margin-top:1.5rem;display:flex;gap:1rem;flex-wrap:wrap}.footer-socials{display:flex;gap:1.5rem;margin-top:1.2rem;flex-wrap:wrap}.footer-socials a{font-size:14px;position:relative}.footer-socials a:before{content:"";position:absolute;left:0;right:0;bottom:-2px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.65,0,.35,1)}.footer-socials a:hover:before{transform:scaleX(1);transform-origin:left}.footer-wordmark{margin-top:1.5rem;width:100%;overflow:hidden}.footer-wordmark-text{font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:clamp(2.6rem,min(22vw,34vh),22rem);letter-spacing:-.05em;line-height:.85;padding-bottom:.09em;text-transform:uppercase;background:linear-gradient(180deg,#f5f5f5,#f5f5f5 60%,#2a2a2a);-webkit-background-clip:text;background-clip:text;color:transparent;text-align:center;width:100%;margin:0}.footer-info{margin-top:1rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:11px;color:#888}.footer-info a{position:relative}.footer-info a:before{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .35s cubic-bezier(.65,0,.35,1)}.footer-info a:hover:before{transform:scaleX(1);transform-origin:left}@media (max-height: 640px){footer{padding:3.5rem 2rem 1.2rem}.footer-cta{margin-top:1.2rem}}@media (max-height: 560px){.footer-wordmark{margin-top:.8rem}.footer-wordmark-text{font-size:clamp(2.2rem,min(22vw,26vh),22rem)}}@media (max-width: 767px){.nav{padding:1rem 1.2rem}.works{padding:4rem 1.2rem 1.5rem}.hero-grid{grid-template-columns:1fr;gap:2rem;padding:6.5rem 1.2rem 1.5rem}.hero-statement__body{max-width:20ch}.hero-terminal .terminal-live{max-height:44svh}}@media (max-width: 479px){.works{padding:3rem 1rem 1rem}.hero-grid{padding:6rem 1rem 1.25rem}.footer-info{flex-direction:column;align-items:flex-start;gap:1rem}.formes{display:none}.nav{padding:1rem}.nav-socials{gap:.6rem}.nav-socials .nav-item{font-size:13px;letter-spacing:.05em}.nav-socials__sep{display:none}}.loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0c0c0c;display:flex;align-items:center;justify-content:center}.loader-inner{position:relative;width:60vmin;max-width:520px;aspect-ratio:1/1}.loader-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-family:Big Shoulders Display,sans-serif;font-weight:900;font-size:60vmin;line-height:1;color:#f5f5f5}.floating{position:absolute;width:30%;height:30%;background:#f5f5f5;border-radius:50%;mix-blend-mode:difference;animation:float-around 4s ease-in-out infinite}.floating.f1{top:10%;left:50%;animation-delay:0s}.floating.f2{top:50%;left:80%;animation-delay:-1s;border-radius:0;transform:rotate(45deg);animation:float-around 4s ease-in-out infinite,spin 6s linear infinite}.floating.f3{top:70%;left:20%;animation-delay:-2s}.floating.f4{top:20%;left:10%;animation-delay:-3s;border-radius:0}.floating.f5{top:80%;left:60%;animation-delay:-1.5s}@keyframes float-around{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(20px,-15px) rotate(90deg)}50%{transform:translate(-15px,20px) rotate(180deg)}75%{transform:translate(15px,15px) rotate(270deg)}}@keyframes spin{to{transform:rotate(405deg)}}.loader-num{position:absolute;bottom:-50px;left:50%;transform:translate(-50%);font-family:IBM Plex Mono,monospace;font-size:12px;color:#777;letter-spacing:.1em}.build{padding:6rem 2rem 0;--u: clamp(10px, min(1vw, 2vh), 22px);--head-h: calc(var(--u) * 5.9 + 1px);--stick: 4.6rem}.build__heading{font-size:calc(var(--u) * 7);line-height:.8;color:#f5f5f5;margin-bottom:calc(var(--u) * 2.4)}.build__tail{height:62svh}.build__row{position:sticky;top:calc(var(--stick) + var(--i) * var(--head-h));z-index:var(--i);background:#0c0c0c;min-height:100svh;padding-bottom:calc(var(--u) * 2)}.build__head{background:#0c0c0c;border-top:1px solid #1f1f1f;display:grid;grid-template-columns:minmax(0,.34fr) 1fr auto;align-items:center;gap:1rem;padding:calc(var(--u) * 1.1) 0;color:#f5f5f5}.build__num,.build__title{font-family:Big Shoulders Display,sans-serif;font-weight:900;letter-spacing:-.02em;text-transform:none;font-size:calc(var(--u) * 4.6);line-height:.8;margin:0}.build__arrow{display:inline-flex;color:#777}.build__arrow svg{width:calc(var(--u) * 1.6);height:calc(var(--u) * 1.6)}.build__panel{display:grid;grid-template-columns:minmax(0,.34fr) 1fr;gap:0 1rem;padding-top:calc(var(--u) * 1.8)}.build__desc{grid-column:2;max-width:34ch;margin-bottom:calc(var(--u) * 1.6);color:#999;font-size:calc(var(--u) * 1.4);line-height:1.3}.build__items{grid-column:2;list-style:none}.build__item{display:grid;grid-template-columns:calc(var(--u) * 4) 1fr;align-items:center;padding:calc(var(--u) * .78) 0;border-top:1px solid #1f1f1f}.build__item:first-child{border-top:0}.build__item-num{font-family:IBM Plex Mono,monospace;font-size:calc(var(--u) * 1.15);color:#555}.build__item-label{font-family:Big Shoulders Display,sans-serif;font-weight:800;letter-spacing:.02em;text-transform:none;font-size:calc(var(--u) * 2.3);line-height:.8;color:#f5f5f5}@media (max-width: 767px){.build{padding:4rem 1.2rem 0}.build__head{grid-template-columns:calc(var(--u) * 4.5) 1fr auto;gap:.75rem}.build__panel{grid-template-columns:1fr}.build__desc,.build__items{grid-column:1}.build__item{grid-template-columns:calc(var(--u) * 3) 1fr}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{width:100%;height:auto}body{background:#0c0c0c;color:#f5f5f5;font-family:IBM Plex Mono,monospace;font-weight:400;font-size:14px;line-height:1.5;overflow-x:hidden;overscroll-behavior:none}body::-webkit-scrollbar,body ::-webkit-scrollbar{display:none}body{-ms-overflow-style:none}html{scrollbar-width:none}::selection{background:#f5f5f5;color:#0c0c0c;text-shadow:none}::-moz-selection{background:#f5f5f5;color:#0c0c0c;text-shadow:none}a{color:inherit;text-decoration:none}img,svg,video{display:block;max-width:100%}button{background:none;border:0;color:inherit;cursor:pointer;font:inherit}:focus-visible{outline:2px solid #f5f5f5;outline-offset:3px;border-radius:2px}.btn:focus-visible,.nav-item:focus-visible,.terminal-chip:focus-visible{outline-offset:4px;border-radius:100px}.tl-input:focus-visible{outline:none}.terminal-live:focus-within{border-color:#555}@media (min-width: 992px) and (hover: hover){*,*:before,*:after{cursor:none!important}.nav a,.nav button,.nav a *,.nav button *,.hero a,.hero button,.hero a *,.hero button *{cursor:pointer!important}}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}.lenis.lenis-smooth iframe{pointer-events:none}html{font-size:calc(0rem + 1vw)}@media (max-width: 991px){html{font-size:1rem}}.display{font-family:Big Shoulders Display,sans-serif;font-weight:900;letter-spacing:-.03em;line-height:.85;text-transform:uppercase}
