.nav{z-index:var(--z-nav);height:var(--nav-height);padding:0 var(--gutter);pointer-events:none;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.nav:before{content:"";background:linear-gradient(180deg, rgb(var(--color-bg-primary-rgb) / .86), rgb(var(--color-bg-primary-rgb) / 0));pointer-events:none;position:absolute;inset:0 0 -2.5rem}.nav__inner{width:100%;max-width:var(--max-width);pointer-events:auto;justify-content:space-between;align-items:center;margin:0 auto;display:flex;position:relative}.nav__brand{font-family:var(--font-display);font-weight:900;font-size:var(--text-lg);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-primary);transition:color var(--duration-base) var(--ease-out-expo), opacity var(--duration-base) var(--ease-out-expo), transform var(--duration-base) var(--ease-out-expo)}.nav__brand:hover{color:var(--color-accent)}.nav__links{gap:var(--space-xl);align-items:center;display:flex}.nav__link{font-family:var(--font-display);font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary);transition:color var(--duration-base) var(--ease-out-expo);font-weight:700;position:relative}.nav__link:after{content:"";background-color:var(--color-accent);width:0;height:2px;transition:width var(--duration-base) var(--ease-out-expo);position:absolute;bottom:-4px;left:0}.nav__link:hover{color:var(--color-text-primary)}.nav__link:hover:after{width:100%}.nav__link--active{color:var(--color-text-primary)}.nav__link--active:after{width:100%}.nav__toggle{padding:var(--space-sm);z-index:calc(var(--z-nav) + 1);transition:opacity var(--duration-base) var(--ease-out-expo), transform var(--duration-base) var(--ease-out-expo);flex-direction:column;gap:5px;display:none;position:relative}.nav__toggle-line{background-color:var(--color-text-primary);width:24px;height:2px;transition:transform var(--duration-base) var(--ease-out-expo)}@media (width<=768px){.nav{pointer-events:auto}.nav__links{z-index:var(--z-nav);justify-content:center;align-items:flex-start;gap:var(--space-lg);padding:var(--nav-height) var(--gutter) var(--space-3xl);background:linear-gradient(180deg, rgb(var(--color-bg-primary-rgb) / .96), rgb(var(--color-bg-primary-rgb) / .9)), radial-gradient(circle at 15% 85%, var(--color-accent-muted), transparent 36%);border-bottom:1px solid var(--color-border-strong);opacity:0;pointer-events:none;visibility:hidden;transition:opacity var(--duration-base) var(--ease-out-expo), transform var(--duration-base) var(--ease-out-expo), visibility 0s linear var(--duration-base);flex-direction:column;display:flex;position:fixed;inset:0;transform:translateY(-1.5rem)}.nav--open .nav__links{opacity:1;pointer-events:auto;visibility:visible;transition:opacity var(--duration-base) var(--ease-out-expo), transform var(--duration-base) var(--ease-out-expo), visibility 0s linear 0s;transform:translateY(0)}.nav__link{letter-spacing:0;color:var(--color-text-primary);font-size:clamp(2.25rem,13vw,4.5rem);line-height:1}.nav__link:after{height:.25rem;bottom:-.35rem}.nav__toggle{display:flex}.nav--open .nav__toggle-line:first-child{transform:translateY(7px)rotate(45deg)}.nav--open .nav__toggle-line:nth-child(2){opacity:0}.nav--open .nav__toggle-line:nth-child(3){transform:translateY(-7px)rotate(-45deg)}}@font-face{font-family:Inter;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/inter-300.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-700.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300;font-display:swap;src:url(/fonts/space-grotesk-300.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/space-grotesk-400.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-grotesk-700.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/space-grotesk-700.woff2)format("woff2")}:root{--forest:#071b14;--forest-rgb:7 27 20;--forest-elevated:#103025;--forest-card:#0b2318;--forest-deep:#030f0a;--ink:#0a090d;--ink-rgb:10 9 13;--ink-elevated:#16131e;--ink-card:#100d16;--plum:#2b0d22;--plum-rgb:43 13 34;--plum-elevated:#42132f;--plum-card:#351027;--rose:#ff4fa3;--rose-rgb:255 79 163;--rose-hover:#ff78ba;--rose-strong:#d91d74;--rose-deep:#a11258;--rose-shade:#e8388c;--ivory:#f5e7d8;--ivory-rgb:245 231 216;--ivory-elevated:#ebd9c4;--ivory-card:#efdfce;--cream:#fff2e6;--cream-rgb:255 242 230;--muted-light:#cdbeb3;--muted-dark:#75666e;--scene-bg:var(--forest);--scene-bg-rgb:var(--forest-rgb);--scene-bg-elevated:var(--forest-elevated);--scene-bg-card:var(--forest-card);--scene-fg:var(--cream);--scene-fg-rgb:var(--cream-rgb);--scene-accent:var(--rose);--scene-accent-rgb:var(--rose-rgb);--scene-accent-hover:var(--rose-hover);--scene-muted:var(--muted-light);--scene-faded:var(--muted-dark);--scene-border:rgb(var(--scene-fg-rgb) / .12);--scene-border-strong:rgb(var(--scene-accent-rgb) / .35);--scene-inverse:var(--forest);--scene-on-accent:var(--forest);--scene-glow:rgb(var(--scene-accent-rgb) / .16);--color-bg-primary:var(--scene-bg);--color-bg-primary-rgb:var(--scene-bg-rgb);--color-bg-secondary:var(--scene-bg-elevated);--color-bg-elevated:var(--scene-bg-elevated);--color-bg-card:var(--scene-bg-card);--color-text-primary:var(--scene-fg);--color-text-primary-rgb:var(--scene-fg-rgb);--color-text-secondary:var(--scene-muted);--color-text-muted:var(--scene-faded);--color-text-inverse:var(--scene-inverse);--color-accent:var(--scene-accent);--color-accent-rgb:var(--scene-accent-rgb);--color-accent-hover:var(--scene-accent-hover);--color-accent-muted:rgb(var(--color-accent-rgb) / .18);--color-on-accent:var(--scene-on-accent);--color-border:var(--scene-border);--color-border-strong:var(--scene-border-strong);--font-display:"Space Grotesk", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3rem;--text-6xl:4rem;--text-hero:clamp(4rem, 10vw, 10rem);--space-xs:.25rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--space-4xl:6rem;--space-section:8rem;--max-width:1400px;--gutter:4vw;--nav-height:4rem;--z-base:1;--z-card:5;--z-contact:6;--z-process:7;--z-services:8;--z-hero:10;--z-work:20;--z-nav:40;--z-progress:50;--z-modal:100;--z-toast:200;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-out-smooth:cubic-bezier(.65, 0, .35, 1);--duration-fast:.15s;--duration-base:.3s;--duration-slow:.5s;--duration-page:.6s;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px}.scene-forest,.scene-ink,.scene-plum,.scene-acid-rose,.scene-ivory{--color-bg-primary:var(--scene-bg);--color-bg-primary-rgb:var(--scene-bg-rgb);--color-bg-secondary:var(--scene-bg-elevated);--color-bg-elevated:var(--scene-bg-elevated);--color-bg-card:var(--scene-bg-card);--color-text-primary:var(--scene-fg);--color-text-primary-rgb:var(--scene-fg-rgb);--color-text-secondary:var(--scene-muted);--color-text-muted:var(--scene-faded);--color-text-inverse:var(--scene-inverse);--color-accent:var(--scene-accent);--color-accent-rgb:var(--scene-accent-rgb);--color-accent-hover:var(--scene-accent-hover);--color-accent-muted:rgb(var(--color-accent-rgb) / .18);--color-on-accent:var(--scene-on-accent);--color-border:var(--scene-border);--color-border-strong:var(--scene-border-strong)}.scene-forest{--scene-bg:var(--forest);--scene-bg-rgb:var(--forest-rgb);--scene-bg-elevated:var(--forest-elevated);--scene-bg-card:var(--forest-card);--scene-fg:var(--cream);--scene-fg-rgb:var(--cream-rgb);--scene-accent:var(--rose);--scene-accent-rgb:var(--rose-rgb);--scene-accent-hover:var(--rose-hover);--scene-muted:var(--muted-light);--scene-faded:var(--muted-dark);--scene-inverse:var(--forest);--scene-on-accent:var(--forest)}.scene-ink{--scene-bg:var(--ink);--scene-bg-rgb:var(--ink-rgb);--scene-bg-elevated:var(--ink-elevated);--scene-bg-card:var(--ink-card);--scene-fg:var(--cream);--scene-fg-rgb:var(--cream-rgb);--scene-accent:var(--rose);--scene-accent-rgb:var(--rose-rgb);--scene-accent-hover:var(--rose-hover);--scene-muted:var(--muted-light);--scene-faded:var(--muted-dark);--scene-inverse:var(--forest);--scene-on-accent:var(--forest)}.scene-plum{--scene-bg:var(--plum);--scene-bg-rgb:var(--plum-rgb);--scene-bg-elevated:var(--plum-elevated);--scene-bg-card:var(--plum-card);--scene-fg:var(--cream);--scene-fg-rgb:var(--cream-rgb);--scene-accent:var(--rose);--scene-accent-rgb:var(--rose-rgb);--scene-accent-hover:var(--rose-hover);--scene-muted:var(--muted-light);--scene-faded:var(--muted-dark);--scene-inverse:var(--forest);--scene-on-accent:var(--forest)}.scene-acid-rose{--scene-bg:var(--rose);--scene-bg-rgb:var(--rose-rgb);--scene-bg-elevated:var(--rose-shade);--scene-bg-card:var(--rose-shade);--scene-fg:var(--forest);--scene-fg-rgb:var(--forest-rgb);--scene-accent:var(--forest);--scene-accent-rgb:var(--forest-rgb);--scene-accent-hover:var(--plum);--scene-muted:var(--plum-elevated);--scene-faded:var(--muted-dark);--scene-inverse:var(--rose);--scene-on-accent:var(--cream)}.scene-ivory{--scene-bg:var(--ivory);--scene-bg-rgb:var(--ivory-rgb);--scene-bg-elevated:var(--ivory-elevated);--scene-bg-card:var(--ivory-card);--scene-fg:var(--forest);--scene-fg-rgb:var(--forest-rgb);--scene-accent:var(--rose-strong);--scene-accent-rgb:217 29 116;--scene-accent-hover:var(--rose-deep);--scene-muted:var(--plum-elevated);--scene-faded:var(--muted-dark);--scene-inverse:var(--forest);--scene-on-accent:var(--cream)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scrollbar-width:none;position:relative}::-webkit-scrollbar{width:0}body{background:radial-gradient(42rem 30rem at 80% 10%, rgb(var(--color-accent-rgb) / .24), transparent 68%), radial-gradient(34rem 24rem at 8% 82%, rgb(var(--plum-rgb) / .45), transparent 68%), var(--color-bg-primary);color:var(--color-text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;overflow-x:hidden}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:2px solid var(--color-accent);outline-offset:.35rem}ul,ol{list-style:none}button{cursor:pointer;background:0 0;border:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=768px),(pointer:coarse){body{background:var(--color-bg-primary)}}.container{width:100%;max-width:var(--max-width);padding:0 var(--gutter);margin:0 auto}.section-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:0;text-wrap:balance;overflow-wrap:break-word;font-weight:900;line-height:1}.outline-text{-webkit-text-stroke:2px var(--color-accent);color:#0000}.page{min-height:100vh;padding-top:var(--nav-height)}.page-header{padding:var(--space-4xl) 0 var(--space-2xl)}.page-header__title{font-family:var(--font-display);font-size:var(--text-5xl);text-transform:uppercase;letter-spacing:0;text-wrap:balance;font-weight:900;line-height:1}.page-header__subtitle{margin-top:var(--space-md);font-size:var(--text-lg);color:var(--color-text-secondary);max-width:40ch}.btn{padding:var(--space-md) var(--space-xl);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;transition:background-color var(--duration-base) var(--ease-out-expo), color var(--duration-base) var(--ease-out-expo), transform var(--duration-base) var(--ease-out-expo);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.btn--primary{background-color:var(--color-accent);color:var(--color-on-accent)}.btn--primary:hover{background-color:var(--color-accent-hover);transform:scale(1.03)}.btn--ghost{color:var(--color-text-primary);border:1px solid var(--color-border-strong);background-color:#0000}.btn--ghost:hover{background-color:var(--color-text-primary);color:var(--color-text-inverse)}.btn--dark{background-color:var(--color-bg-primary);color:var(--color-text-primary)}.btn--dark:hover{background-color:var(--color-text-primary);color:var(--color-bg-primary);transform:scale(1.03)}.tag{padding:var(--space-xs) var(--space-sm);font-size:var(--text-xs);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-weight:700;display:inline-block}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html:not(.js) .landing-runway,html:not(.js) .contact-runway,html:not(.js) .projects-cinema,html:not(.js) .cinematic-runway{height:auto}html:not(.js) .landing-runway .landing-viewport,html:not(.js) .projects-cinema__viewport,html:not(.js) .cinematic-runway__viewport{height:auto;position:relative;overflow:visible}html:not(.js) .contact-runway .landing-viewport{height:100svh;position:relative;overflow:hidden}html:not(.js) .landing-runway .chapter{min-height:100svh;position:relative;inset:auto}html:not(.js) .landing-runway .chapter.process{min-height:0;padding-bottom:var(--space-3xl)}html:not(.js) .about-section{padding-top:calc(var(--space-2xl) + var(--nav-height))}html:not(.js) main :is(h1,h2,h3,p,a,button,li,img,article,span,dl,div,form,input,textarea,fieldset,output){opacity:1!important;visibility:visible!important;clip-path:none!important;filter:none!important;transform:none!important}html:not(.js) main .contact__headline-layer--fill,html:not(.js) main .hero__background,html:not(.js) main .contact__color-wipe,html:not(.js) main .projects-cinema__wash,html:not(.js) main .cinematic-runway__wash,html:not(.js) main .kinetic-backdrop,html:not(.js) main .about-section__glow,html:not(.js) main .about-section__heading-fill,html:not(.js) main .about-section__trust-glow,html:not(.js) main .progress-bar,html:not(.js) main .subpage-progress{display:none!important}html:not(.js) main .cinematic-runway__stage,html:not(.js) main .cinematic-runway__stage-inner,html:not(.js) main .projects-cinema__track-stage{padding-top:0;position:relative;inset:auto;pointer-events:auto!important}html:not(.js) main .cinematic-runway__intro,html:not(.js) main .projects-cinema__intro{mix-blend-mode:normal;position:relative;inset:auto}html:not(.js) main .cinematic-runway__viewport,html:not(.js) main .projects-cinema__viewport{padding:calc(var(--nav-height) + var(--space-2xl)) 0 var(--space-2xl)}html:not(.js) main .work__track,html:not(.js) main .projects-cinema__track{overflow-x:auto}html:not(.js) main .work__scroll-container{width:max-content}html:not(.js) main .contact__social-dock,html:not(.js) main .contact__social-link{visibility:visible!important;pointer-events:auto!important}@media (width<=768px){html:not(.js) .nav__links{gap:var(--space-md);opacity:1;pointer-events:auto;visibility:visible;background:0 0;border-bottom:0;flex-direction:row;padding:0;transition:none;display:flex;position:static;inset:auto;transform:none}html:not(.js) .nav__link{font-size:var(--text-sm)}html:not(.js) .nav__toggle{display:none}}
