.header[data-v-af9c994c]{z-index:50;height:var(--header-h);transition:background .35s var(--ease-out), border-color .35s var(--ease-out);border-bottom:1px solid #0000;position:fixed;inset:0 0 auto}.header.scrolled[data-v-af9c994c],.header.open[data-v-af9c994c]{border-bottom-color:var(--line);background:#050505e6}.header.scrolled[data-v-af9c994c]{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.header.open[data-v-af9c994c]{-webkit-backdrop-filter:none;backdrop-filter:none;background:#050505}.bar[data-v-af9c994c]{justify-content:space-between;align-items:center;gap:1rem;height:100%;display:flex}.brand[data-v-af9c994c]{z-index:2;align-items:center;display:inline-flex;position:relative}.logo[data-v-af9c994c]{width:auto;height:clamp(1.7rem,4vw,2.35rem);display:block}.nav-desktop[data-v-af9c994c]{align-items:center;gap:clamp(.75rem,1.6vw,1.35rem);display:flex}.nav-link[data-v-af9c994c]{font-family:var(--font-display);letter-spacing:.02em;color:var(--ink-muted);white-space:nowrap;font-size:.82rem;font-weight:650;transition:color .25s;position:relative}.nav-link[data-v-af9c994c]:hover,.nav-link.router-link-active[data-v-af9c994c]{color:var(--ink)}.nav-link.router-link-active[data-v-af9c994c]:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:-.45rem;left:0;right:0}.menu-btn[data-v-af9c994c]{border:1px solid var(--line);cursor:pointer;z-index:2;background:#ffffff08;border-radius:.7rem;justify-content:center;align-items:center;width:2.75rem;height:2.75rem;padding:0;display:none;position:relative}.burger[data-v-af9c994c]{align-content:space-between;width:1.15rem;height:.85rem;display:grid}.burger i[data-v-af9c994c]{background:var(--ink);width:100%;height:2px;transition:transform .3s var(--ease-out), opacity .25s ease;transform-origin:50%;border-radius:2px;display:block}.burger.open i[data-v-af9c994c]:first-child{transform:translateY(.35rem)rotate(45deg)}.burger.open i[data-v-af9c994c]:nth-child(2){opacity:0}.burger.open i[data-v-af9c994c]:nth-child(3){transform:translateY(-.35rem)rotate(-45deg)}.mobile-shell[data-v-af9c994c]{z-index:45;pointer-events:none;visibility:hidden;position:fixed;inset:0}.mobile-shell.open[data-v-af9c994c]{pointer-events:auto;visibility:visible}.mobile-backdrop[data-v-af9c994c]{opacity:0;transition:opacity .35s var(--ease-out);background:#0000008c;position:absolute;inset:0}.mobile-shell.open .mobile-backdrop[data-v-af9c994c]{opacity:1}.mobile-nav[data-v-af9c994c]{width:min(100%,22rem);padding:calc(var(--header-h) + 1.5rem) 1.5rem 2.5rem;border-left:1px solid var(--line);transition:transform .4s var(--ease-out);-webkit-overflow-scrolling:touch;background:#08090b;flex-direction:column;gap:.35rem;display:flex;position:absolute;inset:0 0 0 auto;overflow-y:auto;transform:translate(100%)}.mobile-shell.open .mobile-nav[data-v-af9c994c]{transform:none}.mobile-link[data-v-af9c994c]{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);border-bottom:1px solid var(--line);opacity:0;transition:opacity .35s var(--ease-out), transform .35s var(--ease-out), color .2s ease;padding:.95rem .35rem;font-size:1.55rem;font-weight:700;display:block;transform:translate(16px)}.mobile-shell.open .mobile-link[data-v-af9c994c]{opacity:1;transform:none}.mobile-link.router-link-active[data-v-af9c994c],.mobile-link[data-v-af9c994c]:hover{color:var(--accent)}.mobile-cta[data-v-af9c994c]{background:var(--accent);color:#fff;min-height:3.1rem;font-family:var(--font-display);letter-spacing:.04em;opacity:0;transition:opacity .35s var(--ease-out), transform .35s var(--ease-out), background .25s ease;border-radius:999px;justify-content:center;align-items:center;margin-top:1.4rem;padding:.85rem 1.25rem;font-weight:700;display:inline-flex;transform:translateY(10px)}.mobile-shell.open .mobile-cta[data-v-af9c994c]{opacity:1;transform:none}.mobile-cta[data-v-af9c994c]:hover{background:var(--accent-deep)}@media (width<=1024px){.nav-desktop[data-v-af9c994c]{display:none}.menu-btn[data-v-af9c994c]{display:inline-flex}}@media (width>=1025px){.mobile-shell[data-v-af9c994c]{display:none}}.footer[data-v-51b2966c]{border-top:1px solid var(--line);background:#030303;padding:2.5rem 0 3rem}.row[data-v-51b2966c]{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.sig[data-v-51b2966c]{width:auto;height:2rem;margin-bottom:.75rem;display:block}.muted[data-v-51b2966c]{color:var(--ink-muted);font-size:.92rem;font-family:var(--font-display);margin:0}.blurb[data-v-51b2966c]{max-width:28rem;color:var(--ink-muted);margin:.85rem 0 0;font-size:.92rem;line-height:1.55}.links[data-v-51b2966c]{flex-wrap:wrap;align-items:center;gap:1.25rem;display:flex}.links a[data-v-51b2966c]{color:var(--ink-muted);font-family:var(--font-display);font-size:.86rem;font-weight:650}.links a[data-v-51b2966c]:hover{color:var(--accent)}@media (width<=640px){.row[data-v-51b2966c]{flex-direction:column}}.grid[data-v-fd4bbf34]{grid-template-columns:repeat(12,1fr);gap:1.1rem;display:grid}.cell[data-v-fd4bbf34]{grid-column:span 4}.cell[data-v-fd4bbf34]:nth-child(7n+1),.cell[data-v-fd4bbf34]:nth-child(7n+5){grid-column:span 6}.card[data-v-fd4bbf34]{background:var(--bg-elevated);border:1px solid var(--line);min-height:100%;transition:transform .45s var(--ease-out), border-color .45s var(--ease-out), box-shadow .45s var(--ease-out);border-radius:1.1rem;display:block;position:relative;overflow:hidden}.card[data-v-fd4bbf34]:hover{border-color:#d34a4f73;transform:translateY(-6px);box-shadow:0 24px 60px #00000073}.media[data-v-fd4bbf34]{aspect-ratio:16/11;background:#121214;position:relative;overflow:hidden}.media img[data-v-fd4bbf34]{object-fit:cover;width:100%;height:100%;transition:transform .7s var(--ease-out);transform:scale(1.03)}.card:hover .media img[data-v-fd4bbf34]{transform:scale(1.1)}.placeholder[data-v-fd4bbf34]{background:radial-gradient(circle at 30% 20%,#d34a4f59,#0000 45%),linear-gradient(135deg,#1a1a1d,#0b0b0d);width:100%;height:100%}.veil[data-v-fd4bbf34]{background:linear-gradient(#0000 45%,#050505e0);position:absolute;inset:0}.meta[data-v-fd4bbf34]{padding:1.2rem 1.25rem 1.35rem;position:absolute;inset:auto 0 0}.meta h3[data-v-fd4bbf34]{font-family:var(--font-display);letter-spacing:-.03em;margin:0;font-size:1.2rem}.meta p[data-v-fd4bbf34]{color:var(--ink-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:.45rem 0 0;font-size:.88rem;display:-webkit-box;overflow:hidden}.view[data-v-fd4bbf34]{color:var(--accent);font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;margin-top:.7rem;font-size:.78rem;font-weight:700;display:inline-block}@media (width<=980px){.cell[data-v-fd4bbf34],.cell[data-v-fd4bbf34]:nth-child(7n+1),.cell[data-v-fd4bbf34]:nth-child(7n+5){grid-column:span 6}}@media (width<=640px){.cell[data-v-fd4bbf34],.cell[data-v-fd4bbf34]:nth-child(7n+1),.cell[data-v-fd4bbf34]:nth-child(7n+5){grid-column:span 12}}.astronaut[data-v-58ee2f35]{z-index:1;pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 18px 36px #be003147);will-change:transform;max-width:42vw;animation:8s ease-in-out infinite float-58ee2f35;position:absolute}.astronaut.right[data-v-58ee2f35]{right:clamp(0rem,3vw,2.5rem)}.astronaut.left[data-v-58ee2f35]{animation-delay:-3s;left:clamp(0rem,3vw,2.5rem)}.astronaut.anchor-bottom[data-v-58ee2f35]{top:auto;bottom:clamp(.5rem,6vh,4rem)}.astronaut.anchor-center[data-v-58ee2f35]{top:50%;bottom:auto;translate:0 -50%}.astronaut.anchor-top[data-v-58ee2f35]{top:calc(var(--header-h) + 1.5rem);bottom:auto}.astronaut.right.anchor-center[data-v-58ee2f35]{transform-origin:100%}@keyframes float-58ee2f35{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-22px)rotate(3deg)}}.astronaut.anchor-center[data-v-58ee2f35]{animation-name:float-center-58ee2f35}@keyframes float-center-58ee2f35{0%,to{transform:translateY(-50%)rotate(-3deg)}50%{transform:translateY(calc(-50% - 18px))rotate(3deg)}}@media (width<=720px){.astronaut[data-v-58ee2f35]{z-index:0;max-width:150px;opacity:.45!important;width:min(42vw,150px)!important}.astronaut.right[data-v-58ee2f35]{right:-.5rem}.astronaut.left[data-v-58ee2f35]{left:-.5rem}.astronaut.anchor-bottom[data-v-58ee2f35]{bottom:.25rem}}@media (width<=480px){.astronaut[data-v-58ee2f35]{opacity:.32!important;width:min(36vw,120px)!important}}.gradient-shift[data-v-7aadf8b5]{background:linear-gradient(90deg,#3e23ff,#ff2362);transition:background 50ms linear;position:relative}.sky[data-v-3848b670]{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.stars[data-v-3848b670],.stars1[data-v-3848b670],.stars2[data-v-3848b670],.shooting[data-v-3848b670]{background-repeat:repeat;position:absolute;inset:0}.stars[data-v-3848b670]{opacity:.55;background-image:radial-gradient(1px 1px at 20px 30px,#fff,#0000),radial-gradient(1px 1px at 90px 80px,#ffffffd9,#0000),radial-gradient(1.5px 1.5px at 160px 40px,#fff,#0000),radial-gradient(1px 1px at 230px 120px,#ffffffb3,#0000);background-size:280px 180px;animation:120s linear infinite drift-3848b670}.stars1[data-v-3848b670]{opacity:.4;background-image:radial-gradient(1px 1px at 40px 60px,#fff,#0000),radial-gradient(1.5px 1.5px at 120px 20px,#ffb4b7e6,#0000),radial-gradient(1px 1px at 200px 140px,#fff,#0000);background-size:320px 220px;animation:90s linear infinite reverse drift-3848b670}.stars2[data-v-3848b670]{opacity:.35;background-image:radial-gradient(1px 1px at 70px 100px,#fffc,#0000),radial-gradient(2px 2px at 180px 50px,#d34a4fcc,#0000);background-size:360px 260px;animation:150s linear infinite drift-3848b670}.shooting[data-v-3848b670]{opacity:.35;mix-blend-mode:screen;background:linear-gradient(110deg,#0000 40%,#ffffffbf 50%,#0000 60%) 0 0/220% 220%;animation:7s ease-in-out infinite shoot-3848b670}@keyframes drift-3848b670{0%{background-position:0 0}to{background-position:-1000px 500px}}@keyframes shoot-3848b670{0%,70%{opacity:0;background-position:120% -20%}75%{opacity:.5}to{opacity:0;background-position:-40% 120%}}.hero[data-v-802df75f]{min-height:100dvh;padding:calc(var(--header-h) + 2rem) 0 4rem;background:#050505;place-items:center;display:grid;position:relative;overflow:hidden}.hero-veil[data-v-802df75f]{z-index:1;pointer-events:none;background:linear-gradient(#05050526 0%,#05050559 50%,#050505d1 100%),radial-gradient(at 75% 35%,#be00311f,#0000 55%);position:absolute;inset:0}.hero-inner[data-v-802df75f]{z-index:2;width:min(980px,100% - 2rem);max-width:980px;position:relative}.hero-brand-logo[data-v-802df75f]{filter:drop-shadow(0 8px 24px #d34a4f59);width:auto;height:clamp(2.6rem,8vw,4.2rem);margin-bottom:1.15rem;display:block}.hero-brand[data-v-802df75f]{background:linear-gradient(120deg, #fff 20%, #ffb4b7 55%, var(--accent) 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin:0 0 1rem;font-size:clamp(2.4rem,8vw,4.5rem)}.hero-title[data-v-802df75f]{max-width:14ch;color:var(--ink);margin:0;font-size:clamp(1.6rem,3.8vw,2.8rem)}.hero-copy[data-v-802df75f]{margin:1.4rem 0 2rem;font-size:1.08rem}.hero-actions[data-v-802df75f]{flex-wrap:wrap;gap:.85rem;display:flex}.scroll-hint[data-v-802df75f]{z-index:2;font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-muted);font-size:.72rem;animation:2.4s ease-in-out infinite bob-802df75f;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}.projects[data-v-802df75f]{padding:0}.projects-bg[data-v-802df75f]{padding:clamp(4.5rem,10vw,8rem) 0}.projects-bg[data-v-802df75f] .center-head .lede,.projects-bg[data-v-802df75f] .section-title,.projects-bg[data-v-802df75f] .eyebrow,.projects-bg[data-v-802df75f] .eyebrow{color:#fff}.projects-bg[data-v-802df75f] .eyebrow:before{background:#fff}.process[data-v-802df75f]{background:#020202;overflow:hidden}.process .container[data-v-802df75f]{z-index:1;position:relative}.split-band[data-v-802df75f]{z-index:2;margin-top:-4rem;padding-top:0}.split[data-v-802df75f]{grid-template-columns:1fr;gap:1rem;display:grid}.panel[data-v-802df75f]{border:1px solid var(--line);border-radius:1.4rem;grid-template-columns:1.05fr .95fr;gap:0;min-height:340px;display:grid;overflow:hidden}.panel.accent[data-v-802df75f]{background:linear-gradient(160deg,#be0031f2,#d34a4fd1)}.panel.dark[data-v-802df75f]{background:linear-gradient(160deg,#15171a,#0d0e10)}.panel-copy[data-v-802df75f]{flex-direction:column;justify-content:center;padding:clamp(1.6rem,4vw,3rem);display:flex}.panel .lede[data-v-802df75f]{color:#ffffffd1;margin:0 0 1.5rem}.panel-img[data-v-802df75f]{object-fit:cover;width:100%;height:100%;min-height:280px}.code-title[data-v-802df75f]{letter-spacing:-.06em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.canvas[data-v-802df75f],.cta[data-v-802df75f]{text-align:center;background:#020202;overflow:hidden}.canvas .container[data-v-802df75f],.cta .container[data-v-802df75f],.process .container[data-v-802df75f]{z-index:1;position:relative}.center[data-v-802df75f],.center-head[data-v-802df75f]{text-align:center}.center-head[data-v-802df75f]{margin-bottom:2.5rem}.center-head .lede[data-v-802df75f]{margin-inline:auto}.step-up[data-v-802df75f]{color:var(--ink-muted);font-size:clamp(1.1rem,2.4vw,1.45rem);font-family:var(--font-display);margin:.6rem 0 1.8rem}.steps[data-v-802df75f]{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.step[data-v-802df75f]{border:1px solid var(--line);transition:border-color .35s ease, transform .35s var(--ease-out);background:#ffffff05;border-radius:1.1rem;padding:1.5rem 1.35rem}.step[data-v-802df75f]:hover{border-color:#d34a4f80;transform:translateY(-4px)}.num[data-v-802df75f]{color:var(--accent);font-family:var(--font-display);letter-spacing:.14em;font-size:.8rem}.step h3[data-v-802df75f]{font-family:var(--font-display);margin:.55rem 0 .45rem;font-size:1.25rem}.step p[data-v-802df75f]{color:var(--ink-muted);margin:0;font-size:.94rem}.cta-row[data-v-802df75f]{justify-content:center;margin-top:2.2rem;display:flex}.logos[data-v-802df75f]{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.logo[data-v-802df75f]{border:1px solid var(--line);min-height:110px;animation:rise-802df75f .7s var(--ease-out) both;transition:border-color .3s ease, transform .3s var(--ease-out), background .3s ease;background:#ffffff08;border-radius:1rem;place-items:center;padding:1.2rem;display:grid}.logo img[data-v-802df75f]{object-fit:contain;filter:none;width:auto;max-width:140px;height:auto;max-height:56px}.logo-text[data-v-802df75f]{font-family:var(--font-display);letter-spacing:-.02em;text-align:center;color:var(--ink);font-size:.92rem;font-weight:700}.logo[data-v-802df75f]:hover{border-color:var(--accent);background:#d34a4f14;transform:translateY(-4px)}@keyframes pulse-802df75f{0%,to{opacity:.8;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}@keyframes bob-802df75f{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,6px)}}@keyframes rise-802df75f{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (width<=900px){.panel[data-v-802df75f]{grid-template-columns:1fr}.panel.dark .panel-img[data-v-802df75f]{order:-1}.steps[data-v-802df75f],.logos[data-v-802df75f]{grid-template-columns:1fr 1fr}.split-band[data-v-802df75f]{margin-top:-2rem}}@media (width<=560px){.steps[data-v-802df75f],.logos[data-v-802df75f]{grid-template-columns:1fr}.hero-brand[data-v-802df75f]{display:none}.hero-actions[data-v-802df75f]{flex-direction:column;align-items:stretch;gap:.75rem;display:flex}.hero-actions .btn[data-v-802df75f]{width:100%;max-width:none}.scroll-hint[data-v-802df75f]{display:none}}:root{--bg:#050505;--bg-elevated:#0f1012;--bg-soft:#16171a;--ink:#f4f1ec;--ink-muted:#f4f1ec9e;--accent:#d34a4f;--accent-deep:#be0031;--accent-glow:#d34a4f59;--line:#f4f1ec1f;--font-display:"Syne", sans-serif;--font-body:"Manrope", sans-serif;--ease-out:cubic-bezier(.22, 1, .36, 1);--header-h:4.5rem}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);min-height:100vh;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1.05rem;line-height:1.65}body.nav-open{touch-action:none;overflow:hidden}#app{min-height:100vh}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea{font:inherit}::selection{background:var(--accent);color:#fff}.page{position:relative;overflow:clip}.container{width:min(1180px,100% - 2.5rem);margin-inline:auto}.eyebrow{color:var(--accent);font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:.55rem;font-size:.78rem;font-weight:700;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);width:1.5rem;height:1px}.display{font-family:var(--font-display);letter-spacing:-.04em;font-weight:700;line-height:.95}.lede{color:var(--ink-muted);max-width:38rem}.btn{min-height:3.1rem;font-family:var(--font-display);letter-spacing:.04em;cursor:pointer;transition:transform .35s var(--ease-out), background .35s var(--ease-out), border-color .35s var(--ease-out), color .35s var(--ease-out), box-shadow .35s var(--ease-out);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.65rem;padding:.85rem 1.45rem;font-size:.92rem;font-weight:700;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 0 0 0 var(--accent-glow)}.btn-primary:hover{background:var(--accent-deep);box-shadow:0 12px 40px var(--accent-glow)}.btn-ghost{color:var(--ink);background:0 0;border-color:#f4f1ec47}.btn-ghost:hover{border-color:var(--accent);color:#fff;background:#d34a4f1f}.section{padding:clamp(4.5rem,10vw,8rem) 0;position:relative}.section-title{font-family:var(--font-display);letter-spacing:-.045em;margin:0 0 1rem;font-size:clamp(2.4rem,6vw,4.4rem);font-weight:700;line-height:.95}.fade-up{opacity:0;transform:translateY(28px)}.fade-up.is-in{opacity:1;transition:opacity .9s var(--ease-out), transform .9s var(--ease-out);transform:none}.route-enter-active,.route-leave-active{transition:opacity .45s var(--ease-out), transform .45s var(--ease-out)}.route-enter-from{opacity:0;transform:translateY(12px)}.route-leave-to{opacity:0;transform:translateY(-8px)}@media (width<=768px){.container{width:min(1180px,100% - 1.5rem)}.section{padding:clamp(3.25rem,12vw,5rem) 0}.section-title{font-size:clamp(2rem,9vw,3.2rem)}.hero-actions .btn,.actions .btn,.cta .btn{width:auto;min-width:min(100%,11rem)}}@media (width<=480px){:root{--header-h:4rem}body{font-size:1rem}}
