:root{--color-bg:#0a0a0a;--color-bg-elevated:#111;--color-bg-card:#161616;--color-bg-overlay:#000000d9;--color-surface:#1a1a1a;--color-surface-hover:#222;--color-border:#ffffff14;--color-border-hover:#ffffff29;--color-text-primary:#f5f5f5;--color-text-secondary:#a0a0a0;--color-text-muted:#666;--color-text-inverse:#0a0a0a;--color-accent:#3a9bdc;--color-accent-hover:#4daef0;--color-accent-muted:#3a9bdc26;--color-white:#fff;--color-black:#000;--color-light-bg:#f8f8f8;--color-light-surface:#fff;--color-light-text:#1a1a1a;--color-light-text-secondary:#555;--font-heading:"Outfit", -apple-system, BlinkMacSystemFont, sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--fs-display:clamp(3rem, 6vw, 6rem);--fs-h1:clamp(2rem, 4vw, 3.5rem);--fs-h2:clamp(1.5rem, 3vw, 2.5rem);--fs-h3:clamp(1.125rem, 2vw, 1.5rem);--fs-h4:1.125rem;--fs-body:1rem;--fs-body-lg:1.125rem;--fs-small:.875rem;--fs-xs:.75rem;--fs-nav:.8125rem;--fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.1;--lh-snug:1.3;--lh-normal:1.6;--lh-relaxed:1.8;--ls-tight:-.02em;--ls-normal:0;--ls-wide:.08em;--ls-wider:.15em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--space-32:8rem;--space-section:clamp(4rem, 8vw, 8rem);--max-width:1400px;--max-width-narrow:900px;--max-width-wide:1600px;--gutter:clamp(1.5rem, 4vw, 4rem);--header-height:72px;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 8px 32px #00000080;--shadow-xl:0 16px 48px #0009;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.45, 0, .55, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.15s;--duration-normal:.3s;--duration-slow:.5s;--duration-page:.4s;--z-base:1;--z-header:100;--z-dropdown:200;--z-overlay:500;--z-lightbox:1000;--z-loader:2000;--z-cursor:9999}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:var(--fs-body);font-weight:var(--fw-regular);line-height:var(--lh-normal);color:var(--color-text-primary);background-color:var(--color-bg);min-height:100vh;overflow-x:hidden}body.no-scroll{overflow:hidden}body.has-cursor,body.has-cursor a,body.has-cursor button,body.has-cursor [data-nav],body.has-cursor [data-project-id],body.has-cursor .project-row,body.has-cursor .project-card,body.has-cursor .featured__row,body.has-cursor .featured__short-card{cursor:none}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff26}::-webkit-scrollbar-thumb:hover{background:#ffffff40}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:var(--fw-semibold);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}h1{font-size:var(--fs-h1)}h2{font-size:var(--fs-h2)}h3{font-size:var(--fs-h3)}h4{font-size:var(--fs-h4)}p{line-height:var(--lh-normal);color:var(--color-text-secondary)}a{color:inherit;transition:color var(--duration-fast) var(--ease-out);text-decoration:none}a:hover{color:var(--color-accent)}img,video{max-width:100%;display:block}button{font-family:var(--font-body);cursor:pointer;color:inherit;background:0 0;border:none}input,textarea{font-family:var(--font-body);font-size:var(--fs-body)}ul,ol{list-style:none}.container{width:100%;max-width:var(--max-width);padding:0 var(--gutter);margin:0 auto}.container--narrow{max-width:var(--max-width-narrow)}.container--wide{max-width:var(--max-width-wide)}.section-title{font-family:var(--font-heading);font-size:var(--fs-h1);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;text-align:center;padding:var(--space-16) 0 var(--space-12)}.page-section{padding:var(--space-section) 0}::selection{background:var(--color-accent);color:var(--color-white)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}#page-content{opacity:1;transition:opacity var(--duration-page) var(--ease-out), transform var(--duration-page) var(--ease-out);transform:translateY(0)}#page-content.page-exit{opacity:0;transform:translateY(16px)}#page-content.page-enter{opacity:0;transform:translateY(-12px)}.reveal{opacity:0;transition:opacity .8s var(--ease-out), transform .8s var(--ease-out);transform:translateY(40px)}.reveal.visible,.reveal.in-view{opacity:1;transform:translateY(0)}.reveal-stagger{opacity:0;transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);transform:translateY(30px)}.reveal-stagger.visible,.reveal-stagger.in-view{opacity:1;transform:translateY(0)}.reveal-scale{opacity:0;transition:opacity .6s var(--ease-out), transform .6s var(--ease-out);transform:scale(.92)}.reveal-scale.visible,.reveal-scale.in-view{opacity:1;transform:scale(1)}.custom-cursor{z-index:var(--z-cursor);pointer-events:none;opacity:0;mix-blend-mode:difference;transition:opacity .3s;position:fixed;top:0;left:0}.custom-cursor.visible{opacity:1}.cursor__dot{background:var(--color-white);pointer-events:none;width:6px;height:6px;transition:width .2s var(--ease-out), height .2s var(--ease-out), margin .2s var(--ease-out), background .2s var(--ease-out);will-change:transform;border-radius:50%;margin:-3px 0 0 -3px;position:fixed;top:0;left:0}.cursor__dot--hover{width:10px;height:10px;margin:-5px 0 0 -5px}.cursor__dot--pressed{width:4px;height:4px;margin:-2px 0 0 -2px}.cursor__ring{pointer-events:none;width:36px;height:36px;transition:width .35s var(--ease-out), height .35s var(--ease-out), margin .35s var(--ease-out), border-color .25s var(--ease-out), opacity .25s var(--ease-out);will-change:transform;border:1.5px solid #ffffff80;border-radius:50%;margin:-18px 0 0 -18px;position:fixed;top:0;left:0}.cursor__ring--hover{border-color:#fffc;width:56px;height:56px;margin:-28px 0 0 -28px}.cursor__ring--pressed{border-color:#ffffff4d;width:28px;height:28px;margin:-14px 0 0 -14px}.site-footer{padding:var(--space-8) var(--gutter);border-top:1px solid var(--color-border);background:var(--color-bg);justify-content:space-between;align-items:center;display:flex}.footer__copy{font-family:var(--font-body);font-size:var(--fs-xs);font-weight:var(--fw-light);letter-spacing:var(--ls-wide);color:var(--color-text-muted)}.footer__social-link{width:20px;height:20px;color:var(--color-text-muted);transition:color var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out);justify-content:center;align-items:center;display:flex}.footer__social-link:hover{color:var(--color-text-primary);transform:translateY(-2px)}@media (hover:none),(pointer:coarse){.custom-cursor{display:none!important}}#site-header{z-index:var(--z-header);height:var(--header-height);padding:0 var(--gutter);transition:background-color .5s var(--ease-out), box-shadow .5s var(--ease-out), backdrop-filter .5s var(--ease-out);justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}#site-header.header--transparent{background:0 0}#site-header.header--solid{-webkit-backdrop-filter:blur(20px)saturate(1.4);background:#0a0a0a73;border-bottom:1px solid #ffffff14;box-shadow:0 4px 30px #0000004d}#site-header.header--transparent{-webkit-backdrop-filter:blur(12px)saturate(1.2);background:#0a0a0a40;border-bottom:1px solid #ffffff0a}.header__logo{align-items:center;gap:var(--space-2);transition:opacity var(--duration-normal) var(--ease-out);cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;position:relative}.header__logo:hover{opacity:.7}.header__logo-shield{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;align-items:center;display:flex;position:relative}.header__logo-img{object-fit:contain;pointer-events:none;-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;width:auto;height:22px}.header__logo-overlay{z-index:1;cursor:pointer;background:0 0;position:absolute;inset:0}.header__nav{align-items:center;gap:var(--space-8);display:flex}.nav__item{position:relative}.nav__link{font-family:var(--font-heading);font-size:var(--fs-nav);font-weight:var(--fw-medium);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-secondary);align-items:center;gap:var(--space-1);padding:var(--space-2) 0;transition:color var(--duration-normal) var(--ease-out);cursor:pointer;display:flex;position:relative}.nav__link:after{content:"";background:var(--color-text-primary);width:0;height:1px;transition:width .4s var(--ease-out);position:absolute;bottom:0;left:0}.nav__link:hover:after,.nav__link.active:after{width:100%}.nav__link:hover,.nav__link.active{color:var(--color-text-primary)}.nav__arrow{width:10px;height:10px;transition:transform var(--duration-normal) var(--ease-out);justify-content:center;align-items:center;display:inline-flex}.nav__arrow svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:8px;height:8px}.nav__item:hover .nav__arrow,.nav__item.open .nav__arrow{transform:rotate(180deg)}.nav__dropdown{top:calc(100% + var(--space-3));-webkit-backdrop-filter:blur(24px);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:200px;padding:var(--space-2) 0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--duration-normal) var(--ease-out), transform var(--duration-normal) var(--ease-out), visibility var(--duration-normal);background:#121212f2;position:absolute;left:50%;transform:translate(-50%)translateY(-8px)}.nav__item:hover .nav__dropdown,.nav__item.open .nav__dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}.nav__dropdown-link{padding:var(--space-3) var(--space-6);font-family:var(--font-heading);font-size:var(--fs-small);font-weight:var(--fw-regular);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--color-text-secondary);transition:color var(--duration-fast) var(--ease-out), background var(--duration-fast) var(--ease-out), padding-left var(--duration-normal) var(--ease-out);white-space:nowrap;display:block}.nav__dropdown-link:hover{color:var(--color-text-primary);padding-left:var(--space-8);background:#ffffff0a}.header__menu-toggle{cursor:pointer;width:32px;height:32px;z-index:calc(var(--z-header) + 10);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:none}.header__menu-toggle span{background:var(--color-text-primary);width:24px;height:1.5px;transition:transform var(--duration-normal) var(--ease-out), opacity var(--duration-fast);transform-origin:50%;display:block}.header__menu-toggle.active span:first-child{transform:translateY(3.75px)rotate(45deg)}.header__menu-toggle.active span:nth-child(2){opacity:0}.header__menu-toggle.active span:nth-child(3){transform:translateY(-3.75px)rotate(-45deg)}.mobile-nav-overlay{z-index:var(--z-overlay);-webkit-backdrop-filter:blur(30px);justify-content:center;align-items:center;gap:var(--space-8);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--duration-slow) var(--ease-out), visibility var(--duration-slow);background:#0a0a0afa;flex-direction:column;display:flex;position:fixed;inset:0}.mobile-nav-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.mobile-nav__link{font-family:var(--font-heading);font-size:clamp(1.5rem,4vw,2.5rem);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-secondary);transition:color var(--duration-fast) var(--ease-out), transform var(--duration-normal) var(--ease-out), letter-spacing var(--duration-normal) var(--ease-out);cursor:pointer}.mobile-nav__link:hover{color:var(--color-text-primary);letter-spacing:.25em;transform:translate(12px)}.mobile-nav__sub{align-items:center;gap:var(--space-3);margin-top:var(--space-2);flex-direction:column;display:flex}.mobile-nav__sub-link{font-family:var(--font-heading);font-size:var(--fs-body);font-weight:var(--fw-regular);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-out);cursor:pointer}.mobile-nav__sub-link:hover{color:var(--color-accent)}.hero{background:var(--color-black);width:100%;height:100dvh;position:relative;overflow:hidden}.hero__video-container{z-index:1;will-change:transform;pointer-events:none;position:absolute;inset:0;transform:scale(1.05)}.hero__video{pointer-events:none;border:none;width:100vw;min-width:177.78vh;height:56.25vw;min-height:100vh;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero__vignette{z-index:2;pointer-events:none;background:radial-gradient(#0000 50%,#00000080 100%),linear-gradient(#00000026 0%,#0000 30% 70%,#0000004d 100%);position:absolute;inset:0}.hero__overlay{z-index:3;pointer-events:none;background:linear-gradient(#00000040 0%,#00000005 35% 65%,#00000073 100%);position:absolute;inset:0}.hero__fallback-bg{z-index:1;background:linear-gradient(135deg,#0a0a0a 0%,#111827 25%,#0f172a 50%,#1e1b4b 75%,#0a0a0a 100%) 0 0/400% 400%;animation:12s ease-in-out infinite heroGradient;position:absolute;inset:0}@keyframes heroGradient{0%,to{background-position:0%}50%{background-position:100%}}.hero__name{font-family:var(--font-heading);font-size:clamp(2.5rem,7vw,6rem);font-weight:var(--fw-bold);letter-spacing:.25em;text-transform:uppercase;color:var(--color-white);margin-bottom:var(--space-4);opacity:0;animation:heroNameIn 1.8s var(--ease-out) .3s forwards}@keyframes heroNameIn{0%{opacity:0;letter-spacing:.5em;filter:blur(8px)}to{opacity:1;letter-spacing:.25em;filter:blur()}}.hero__content{bottom:var(--space-20);z-index:4;text-align:center;will-change:opacity;position:absolute;left:50%;transform:translate(-50%)}.hero__tagline{font-family:var(--font-heading);font-size:var(--fs-small);font-weight:var(--fw-light);letter-spacing:var(--ls-wider);text-transform:uppercase;color:#ffffff80;opacity:0;animation:heroFadeIn 1.5s var(--ease-out) 1s forwards}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero__sound-toggle{bottom:var(--space-8);right:var(--gutter);z-index:5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff9;cursor:pointer;width:44px;height:44px;transition:all var(--duration-normal) var(--ease-out);opacity:0;animation:heroFadeIn 1s var(--ease-out) 2s forwards;background:#0000004d;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.hero__sound-toggle:hover{color:var(--color-white);background:#ffffff1a;border-color:#fff6;transform:scale(1.05)}.hero__sound-icon{stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.hero__scroll-indicator{bottom:var(--space-8);z-index:4;align-items:center;gap:var(--space-2);opacity:0;animation:heroFadeIn 1s var(--ease-out) 1.5s forwards;will-change:opacity;flex-direction:column;display:flex;position:absolute;left:50%;transform:translate(-50%)}.hero__scroll-indicator span{font-size:var(--fs-xs);letter-spacing:var(--ls-wider);text-transform:uppercase;color:#ffffff59}.hero__scroll-line{width:1px;height:40px;animation:scrollPulse 2.5s var(--ease-in-out) infinite;background:linear-gradient(#ffffff59,#0000)}@keyframes scrollPulse{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.4;transform:scaleY(.6)}}.featured{background:var(--color-bg);z-index:5;position:relative}.featured__header{padding:var(--space-section) 0 var(--space-12);text-align:center}.featured__label{font-family:var(--font-heading);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:.3em;text-transform:uppercase;color:var(--color-text-muted)}.featured__divider{background:var(--color-accent);width:40px;height:1px;margin:var(--space-4) auto 0;opacity:.6}.featured__commercials{flex-direction:column;gap:2px;display:flex}.featured__row{cursor:pointer;width:100%;height:clamp(300px,45vw,500px);position:relative;overflow:hidden}.featured__row-bg{transition:transform 1.2s var(--ease-out), filter .8s var(--ease-out);will-change:transform;background-position:50%;background-size:cover;position:absolute;inset:0}.featured__row:hover .featured__row-bg{filter:brightness(.6);transform:scale(1.06)}.featured__row-overlay{z-index:2;transition:background var(--duration-slow) var(--ease-out);background:linear-gradient(90deg,#00000080 0%,#00000026 50%,#0000004d 100%);position:absolute;inset:0}.featured__row:hover .featured__row-overlay{background:linear-gradient(90deg,#0009 0%,#0000004d 50%,#0006 100%)}.featured__row-content{left:var(--gutter);bottom:var(--space-10);z-index:3;position:absolute}.featured__row-sub{font-family:var(--font-body);font-size:var(--fs-xs);font-weight:var(--fw-light);letter-spacing:var(--ls-wider);text-transform:uppercase;color:#ffffff80;margin-bottom:var(--space-2);opacity:0;transition:all .5s var(--ease-out) .1s;display:block;transform:translateY(8px)}.featured__row:hover .featured__row-sub{opacity:1;transform:translateY(0)}.featured__row-title{font-family:var(--font-heading);font-size:clamp(1.8rem,4vw,3.2rem);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--color-white);transition:transform .5s var(--ease-out)}.featured__row:hover .featured__row-title{transform:translate(8px)}.featured__row-cta{right:var(--gutter);bottom:var(--space-10);z-index:3;align-items:center;gap:var(--space-3);opacity:0;transition:all .5s var(--ease-out) .15s;display:flex;position:absolute;transform:translate(-12px)}.featured__row:hover .featured__row-cta{opacity:1;transform:translate(0)}.featured__row-watch{font-family:var(--font-heading);font-size:var(--fs-small);font-weight:var(--fw-medium);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-white)}.featured__row-cta svg{width:20px;height:20px;stroke:var(--color-white);stroke-linecap:round;stroke-linejoin:round}.featured__shorts-section{padding:var(--space-section) var(--gutter);max-width:var(--max-width);margin:0 auto}.featured__shorts-heading{font-family:var(--font-heading);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:.3em;text-transform:uppercase;color:var(--color-text-muted);text-align:center;margin-bottom:var(--space-10)}.featured__shorts-grid{gap:var(--space-4);grid-template-columns:repeat(3,1fr);display:grid}.featured__short-card{aspect-ratio:9/16;border-radius:var(--radius-lg);cursor:pointer;background:var(--color-surface);position:relative;overflow:hidden}.featured__short-thumb{transition:transform .8s var(--ease-out), filter .6s var(--ease-out);background-position:50%;background-size:cover;position:absolute;inset:0}.featured__short-card:hover .featured__short-thumb{filter:brightness(.6);transform:scale(1.08)}.featured__short-overlay{z-index:2;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.featured__short-play{width:48px;height:48px;fill:var(--color-white);filter:drop-shadow(0 2px 8px #0006);opacity:0;transition:all .4s var(--ease-spring);transform:scale(.7)}.featured__short-card:hover .featured__short-play{opacity:1;transform:scale(1)}.featured__short-info{padding:var(--space-4);z-index:2;background:linear-gradient(#0000,#000000b3);position:absolute;bottom:0;left:0;right:0}.featured__short-title{font-family:var(--font-heading);font-size:var(--fs-small);font-weight:var(--fw-medium);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--color-white)}.featured__view-all{padding:var(--space-16) 0 var(--space-section);text-align:center}.featured__view-btn{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-10);border:1px solid var(--color-border);border-radius:var(--radius-full);font-family:var(--font-heading);font-size:var(--fs-small);font-weight:var(--fw-medium);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-secondary);transition:all var(--duration-normal) var(--ease-out);cursor:pointer;display:inline-flex}.featured__view-btn:hover{color:var(--color-white);border-color:var(--color-text-secondary);background:#ffffff0a;transform:translateY(-2px)}.featured__view-btn svg{stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px;transition:transform var(--duration-normal) var(--ease-out)}.featured__view-btn:hover svg{transform:translate(4px)}@media (width<=768px){.featured__shorts-grid{gap:var(--space-3);grid-template-columns:repeat(2,1fr)}.featured__row{height:clamp(200px,55vw,300px)}.featured__row-title{font-size:var(--fs-h3)}.featured__row-content{bottom:var(--space-6)}.featured__row-cta{display:none}.hero__name{font-size:clamp(1.8rem,8vw,3rem)}.hero__video-container{justify-content:center;align-items:center;display:flex;transform:none}.hero__video{width:100vw;height:56.25vw;min-height:unset;min-width:unset;position:relative;top:auto;left:auto;transform:none}}@media (width<=480px){.featured__shorts-grid{gap:var(--space-2)}.featured__short-card{border-radius:var(--radius-md)}}.portfolio{min-height:100vh;padding-top:var(--header-height);background:var(--color-bg)}.portfolio__title{font-family:var(--font-heading);font-size:var(--fs-h1);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;text-align:center;color:var(--color-text-primary);padding:var(--space-16) 0 var(--space-12)}.portfolio__rows{flex-direction:column;gap:2px;display:flex}.project-row{cursor:pointer;width:100%;height:clamp(300px,50vw,550px);position:relative;overflow:hidden}.project-row__thumbnail{transition:transform 1.2s var(--ease-out), filter .8s var(--ease-out);will-change:transform;background-position:50%;background-size:cover;position:absolute;inset:0}.project-row:hover .project-row__thumbnail{filter:brightness(.6);transform:scale(1.06)}.project-row__overlay{padding:var(--space-10) var(--gutter);justify-content:flex-end;align-items:flex-start;gap:var(--space-3);z-index:2;transition:background var(--duration-slow) var(--ease-out);background:linear-gradient(90deg,#00000080 0%,#00000026 50%,#0000004d 100%);flex-direction:column;display:flex;position:absolute;inset:0}.project-row:hover .project-row__overlay{background:linear-gradient(90deg,#0009 0%,#0000004d 50%,#0006 100%)}.project-row__title{font-family:var(--font-heading);font-size:clamp(1.8rem,4vw,3.2rem);font-weight:var(--fw-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--color-white);transition:transform .6s var(--ease-out)}.project-row:hover .project-row__title{transform:translate(10px)}.project-row__subtitle{font-family:var(--font-body);font-size:var(--fs-xs);font-weight:var(--fw-light);letter-spacing:var(--ls-wider);text-transform:uppercase;color:#ffffff80;opacity:0;transition:all .5s var(--ease-out) 50ms;transform:translateY(6px)}.project-row:hover .project-row__subtitle{opacity:1;transform:translateY(0)}.project-row__watch-btn{padding:var(--space-3) var(--space-8);border-radius:var(--radius-full);font-family:var(--font-heading);font-size:var(--fs-small);font-weight:var(--fw-medium);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-white);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);opacity:0;margin-top:var(--space-3);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:0 0;border:1px solid #fff6;transform:translateY(10px)}.project-row:hover .project-row__watch-btn{opacity:1;transform:translateY(0)}.project-row__watch-btn:hover{border-color:var(--color-white);background:#ffffff1f}.portfolio__grid{gap:var(--space-4);padding:0 var(--gutter) var(--space-section);max-width:var(--max-width);grid-template-columns:repeat(4,1fr);margin:0 auto;display:grid}.project-card{border-radius:var(--radius-lg);cursor:pointer;aspect-ratio:9/16;background:var(--color-surface);transition:transform .5s var(--ease-out), box-shadow .5s var(--ease-out);position:relative;overflow:hidden}.project-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px #0006}.project-card__thumbnail{transition:transform .8s var(--ease-out), filter .6s var(--ease-out);background-position:50%;background-size:cover;position:absolute;inset:0}.project-card:hover .project-card__thumbnail{filter:brightness(.6);transform:scale(1.08)}.project-card__overlay{padding:var(--space-5);z-index:2;transition:background var(--duration-normal) var(--ease-out);background:linear-gradient(#0000 50%,#000000bf 100%);flex-direction:column;justify-content:flex-end;display:flex;position:absolute;inset:0}.project-card__title{font-family:var(--font-heading);font-size:var(--fs-h4);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--color-white);margin-bottom:var(--space-1)}.project-card__subtitle{font-family:var(--font-body);font-size:var(--fs-xs);font-weight:var(--fw-light);letter-spacing:var(--ls-wide);text-transform:uppercase;color:#ffffff80}.project-card__play-icon{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;width:52px;height:52px;transition:opacity .4s var(--ease-out), transform .4s var(--ease-spring);z-index:3;background:#ffffff1f;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.7)}.project-card__play-icon svg{width:18px;height:18px;fill:var(--color-white);margin-left:2px}.project-card:hover .project-card__play-icon{opacity:1;transform:translate(-50%,-50%)scale(1)}.portfolio__cross-nav{padding:var(--space-16) var(--gutter) var(--space-20);justify-content:center;display:flex}.portfolio__cross-nav-btn{align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-12);border:1px solid var(--color-border-hover);border-radius:var(--radius-full);font-family:var(--font-heading);font-size:var(--fs-small);font-weight:var(--fw-medium);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-primary);cursor:pointer;transition:all var(--duration-normal) var(--ease-out);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:0 0;text-decoration:none;display:inline-flex}.portfolio__cross-nav-btn svg{width:18px;height:18px;transition:transform var(--duration-normal) var(--ease-out)}.portfolio__cross-nav-btn:hover{color:var(--color-white);border-color:var(--color-white);background:#ffffff0f;box-shadow:0 0 30px #ffffff0d}.portfolio__cross-nav-btn:hover svg{transform:translate(4px)}#lightbox-overlay{z-index:var(--z-lightbox);-webkit-backdrop-filter:blur(20px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--duration-slow) var(--ease-out), visibility var(--duration-slow);background:#000000f2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#lightbox-overlay.active{opacity:1;visibility:visible;pointer-events:auto}.lightbox__container{aspect-ratio:16/9;border-radius:var(--radius-lg);opacity:0;width:90vw;max-width:1200px;transition:transform var(--duration-slow) var(--ease-spring), opacity var(--duration-slow) var(--ease-out);background:var(--color-black);position:relative;overflow:hidden;transform:scale(.9)}#lightbox-overlay.active .lightbox__container{opacity:1;transform:scale(1)}.lightbox__video{object-fit:contain;background:var(--color-black);border:none;width:100%;height:100%;display:block}.lightbox__close{cursor:pointer;width:40px;height:40px;color:var(--color-text-secondary);transition:color var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);z-index:10;justify-content:center;align-items:center;display:flex;position:absolute;top:-48px;right:0}.lightbox__close:hover{color:var(--color-white);transform:scale(1.1)}.lightbox__close svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:24px;height:24px}.lightbox__info{justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:-56px;left:0;right:0}.lightbox__title{font-family:var(--font-heading);font-size:var(--fs-body);font-weight:var(--fw-medium);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--color-text-secondary)}.lightbox__year{font-family:var(--font-body);font-size:var(--fs-small);color:var(--color-text-muted)}.lightbox__container--vertical{aspect-ratio:9/16;max-width:400px;max-height:85vh}.about{min-height:100vh;padding-top:var(--header-height);background:var(--color-light-bg);color:var(--color-light-text)}.about__title{font-family:var(--font-heading);font-size:var(--fs-h1);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;text-align:center;color:var(--color-light-text);padding:var(--space-16) 0 var(--space-12)}.about__content{gap:var(--space-16);max-width:var(--max-width);padding:0 var(--gutter) var(--space-section);grid-template-columns:1fr 1fr;align-items:start;margin:0 auto;display:grid}.about__image-container{border-radius:var(--radius-lg);aspect-ratio:3/4;position:relative;overflow:hidden}.about__image{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-out)}.about__image-container:hover .about__image{transform:scale(1.03)}.about__text{gap:var(--space-6);padding-top:var(--space-4);flex-direction:column;display:flex}.about__tagline{font-family:var(--font-heading);font-size:var(--fs-h3);font-weight:var(--fw-semibold);color:var(--color-light-text);font-style:italic;line-height:var(--lh-snug)}.about__bio{font-family:var(--font-body);font-size:var(--fs-body-lg);font-weight:var(--fw-regular);color:var(--color-light-text-secondary);line-height:var(--lh-relaxed);text-align:justify}.about__expertise{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.expertise-tag{padding:var(--space-2) var(--space-5);border-radius:var(--radius-full);font-family:var(--font-heading);font-size:var(--fs-small);font-weight:var(--fw-medium);letter-spacing:var(--ls-wide);text-transform:uppercase;color:var(--color-light-text);transition:all var(--duration-normal) var(--ease-out);border:1px solid #00000026;display:inline-block}.expertise-tag:hover{background:var(--color-light-text);color:var(--color-light-bg);border-color:var(--color-light-text)}.about__divider{width:60px;height:1px;margin:var(--space-4) 0;background:#0003}.about__stats{gap:var(--space-6);margin-top:var(--space-8);padding-top:var(--space-8);border-top:1px solid #0000001a;grid-template-columns:repeat(3,1fr);display:grid}.stat{text-align:center}.stat__number{font-family:var(--font-heading);font-size:var(--fs-h2);font-weight:var(--fw-bold);color:var(--color-light-text);line-height:1}.stat__label{font-family:var(--font-body);font-size:var(--fs-xs);font-weight:var(--fw-regular);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-light-text-secondary);margin-top:var(--space-2)}.contact{min-height:100vh;padding-top:var(--header-height);background:var(--color-bg);color:var(--color-text-primary)}.contact__title{font-family:var(--font-heading);font-size:var(--fs-h1);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wide);text-transform:uppercase;text-align:center;color:var(--color-text-primary);padding:var(--space-16) 0 var(--space-2)}.contact__subtitle{font-family:var(--font-body);font-size:var(--fs-body-lg);font-weight:var(--fw-light);color:var(--color-text-secondary);text-align:center;margin-bottom:var(--space-12)}.contact__content{gap:var(--space-16);max-width:var(--max-width-narrow);padding:0 var(--gutter) var(--space-section);grid-template-columns:1fr 1fr;margin:0 auto;display:grid}.contact__form{gap:var(--space-5);flex-direction:column;display:flex}.form-group{gap:var(--space-2);flex-direction:column;display:flex}.form-group__label{font-family:var(--font-heading);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-secondary)}.form-group__input,.form-group__textarea{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--fs-body);transition:border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out)}.form-group__input:focus,.form-group__textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-muted);outline:none}.form-group__input::placeholder,.form-group__textarea::placeholder{color:var(--color-text-muted)}.form-group__textarea{resize:vertical;min-height:140px}.form__submit{padding:var(--space-4) var(--space-8);background:var(--color-text-primary);color:var(--color-text-inverse);border-radius:var(--radius-md);font-family:var(--font-heading);font-size:var(--fs-small);font-weight:var(--fw-semibold);letter-spacing:var(--ls-wider);text-transform:uppercase;cursor:pointer;transition:all var(--duration-normal) var(--ease-out);border:none;position:relative;overflow:hidden}.form__submit:hover{background:var(--color-accent);color:var(--color-white);transform:translateY(-2px);box-shadow:0 4px 20px #3a9bdc4d}.form__submit:active{transform:translateY(0)}.form__submit--success{color:var(--color-white);background:#22c55e}.contact__info{gap:var(--space-8);padding-top:var(--space-4);flex-direction:column;display:flex}.contact__info-block{gap:var(--space-3);flex-direction:column;display:flex}.contact__info-label{font-family:var(--font-heading);font-size:var(--fs-xs);font-weight:var(--fw-medium);letter-spacing:var(--ls-wider);text-transform:uppercase;color:var(--color-text-muted)}.contact__info-value{font-family:var(--font-body);font-size:var(--fs-body-lg);color:var(--color-text-primary)}.contact__info-value a{color:var(--color-text-primary);transition:color var(--duration-fast) var(--ease-out)}.contact__info-value a:hover{color:var(--color-accent)}.contact__socials{gap:var(--space-4);flex-wrap:wrap;display:flex}.social-link{border:1px solid var(--color-border);border-radius:var(--radius-md);width:48px;height:48px;color:var(--color-text-secondary);transition:all var(--duration-normal) var(--ease-out);justify-content:center;align-items:center;display:flex}.social-link:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-accent-muted);transform:translateY(-2px)}.social-link svg{fill:currentColor;width:20px;height:20px}.site-footer{padding:var(--space-8) var(--gutter);border-top:1px solid var(--color-border);max-width:var(--max-width);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.footer__copy{font-size:var(--fs-xs);color:var(--color-text-muted)}.footer__socials{gap:var(--space-4);display:flex}.footer__social-link{color:var(--color-text-muted);transition:color var(--duration-fast) var(--ease-out)}.footer__social-link:hover{color:var(--color-text-primary)}.footer__social-link svg{fill:currentColor;width:16px;height:16px}.page-loader{height:3px;z-index:var(--z-loader);pointer-events:none;opacity:0;transition:opacity var(--duration-fast);position:fixed;top:0;left:0;right:0}.page-loader.active{opacity:1}.loader-bar{background:linear-gradient(90deg, var(--color-accent), #7c3aed, var(--color-accent));border-radius:0 var(--radius-full) var(--radius-full) 0;width:0;height:100%;transition:width .3s var(--ease-out);background-size:200% 100%;animation:1.5s ease-in-out infinite loaderShimmer}.page-loader.active .loader-bar{width:70%}.page-loader.complete .loader-bar{width:100%;transition:width .2s var(--ease-out)}@keyframes loaderShimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (width<=1024px){.header__nav{display:none}.header__menu-toggle{display:flex}.about__content{gap:var(--space-8);grid-template-columns:1fr}.about__image-container{max-width:500px;margin:0 auto}.blog__grid{grid-template-columns:repeat(2,1fr)}.contact__content{gap:var(--space-10);grid-template-columns:1fr}.portfolio__grid{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){:root{--header-height:60px}.hero{height:100svh}.project-row{height:clamp(220px,60vw,350px)}.project-row__title{font-size:var(--fs-h3)}.portfolio__grid{gap:var(--space-3);padding:0 var(--space-4) var(--space-section);grid-template-columns:repeat(2,1fr)}.portfolio__title{padding:var(--space-10) 0 var(--space-8)}.blog__grid{grid-template-columns:1fr}.about__title{padding:var(--space-10) 0 var(--space-8)}.about__image-container{aspect-ratio:4/5;max-width:100%}.about__stats{gap:var(--space-4);grid-template-columns:repeat(3,1fr)}.about__tagline{font-size:clamp(1rem,4vw,1.25rem)}.about__bio{font-size:var(--fs-body);text-align:left}.about__expertise{gap:var(--space-2)}.expertise-tag{padding:var(--space-2) var(--space-4);font-size:var(--fs-xs)}.site-footer{gap:var(--space-4);text-align:center;padding:var(--space-6) var(--gutter);flex-direction:column}.lightbox__container{border-radius:var(--radius-md);width:95vw}.lightbox__container--vertical{max-width:85vw;max-height:80vh}.lightbox__close{top:-40px;right:0}.lightbox__info{font-size:var(--fs-xs);bottom:-44px}.custom-cursor{display:none!important}.featured__shorts-grid{gap:var(--space-3);grid-template-columns:repeat(3,1fr)}.featured__row{height:clamp(200px,55vw,300px)}.featured__row-title{font-size:var(--fs-h3)}.featured__row-content{bottom:var(--space-6)}.featured__row-sub{opacity:1;transform:translateY(0)}.featured__row-cta{display:none}.contact__title{padding:var(--space-10) 0 var(--space-6)}.contact__form-group input,.contact__form-group textarea{font-size:16px}}@media (width<=480px){:root{--gutter:1rem}.portfolio__grid{gap:var(--space-2);padding:0 var(--space-3) var(--space-section);grid-template-columns:repeat(2,1fr)}.project-card{border-radius:var(--radius-sm)}.project-card__title{font-size:var(--fs-small)}.project-card__subtitle{font-size:.625rem}.featured__shorts-grid{gap:var(--space-2);grid-template-columns:repeat(2,1fr)}.featured__short-card{border-radius:var(--radius-md)}.project-row{height:clamp(180px,50vw,250px)}.project-row__title{font-size:clamp(1rem,5vw,1.25rem)}.project-row__overlay{padding:var(--space-6) var(--space-4)}.lightbox__container{border-radius:var(--radius-sm);width:98vw}.lightbox__container--vertical{max-width:92vw;max-height:78vh}.about__content{padding:0 var(--space-4) var(--space-section)}.about__bio{font-size:var(--fs-small);line-height:var(--lh-normal)}.stat__number{font-size:var(--fs-h3)}.stat__label{font-size:.625rem}.featured__header{padding:var(--space-12) 0 var(--space-8)}.featured__shorts-section{padding:var(--space-12) var(--space-3)}.featured__view-all{padding:var(--space-10) 0 var(--space-12)}.featured__view-btn{padding:var(--space-3) var(--space-8);font-size:var(--fs-xs)}.hero__name{letter-spacing:.15em;font-size:clamp(1.5rem,7vw,2.5rem)}.mobile-nav__link{font-size:clamp(1.2rem,5vw,1.8rem)}.blog-card{padding:var(--space-5)}.blog-card__title{font-size:var(--fs-h4)}}@media (hover:none) and (pointer:coarse){.nav__link,.mobile-nav__link{align-items:center;min-height:44px;display:flex}.project-card__play-icon{opacity:.7;transform:translate(-50%,-50%)scale(.85)}.featured__short-play{opacity:.6;transform:scale(.8)}.project-row__subtitle,.project-row__watch-btn{opacity:1;transform:translateY(0)}.project-card:hover{transform:none}.project-row:hover .project-row__thumbnail,.featured__row:hover .featured__row-bg{filter:none;transform:none}.project-card:active{transform:scale(.98)}.project-row:active .project-row__thumbnail,.featured__row:active .featured__row-bg,.featured__short-card:active .featured__short-thumb{transform:scale(1.02)}.hero__video-container{will-change:auto}}@supports (padding:max(0px)){#site-header{padding-left:max(var(--gutter), env(safe-area-inset-left));padding-right:max(var(--gutter), env(safe-area-inset-right))}.site-footer{padding-bottom:max(var(--space-8), env(safe-area-inset-bottom));padding-left:max(var(--gutter), env(safe-area-inset-left));padding-right:max(var(--gutter), env(safe-area-inset-right))}.lightbox__container{padding-bottom:env(safe-area-inset-bottom)}}@media (width<=768px) and (orientation:landscape){.hero{height:100svh}.lightbox__container{width:85vw;max-height:85vh}.lightbox__container--vertical{max-width:35vw;max-height:88vh}.featured__row{height:clamp(180px,35vw,280px)}.about__content{grid-template-columns:1fr 1fr}.about__image-container{max-width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.reveal,.reveal-stagger,.reveal-scale{opacity:1;transform:none}html{scroll-behavior:auto}}
