.grid-gallery{display:grid!important;gap:20px;width:100%;box-sizing:border-box;padding:24px 40px;margin:0 auto;justify-items:stretch;grid-auto-flow:row dense;align-content:start;max-width:none;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));grid-auto-rows:1fr}.grid-card{min-width:0}@media(min-width:2560px){.grid-gallery{grid-template-columns:repeat(auto-fit,minmax(480px,1fr));gap:28px;padding:40px 120px}}@media(min-width:1600px)and (max-width:2559px){.grid-gallery{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px}}@media(min-width:1200px)and (max-width:1599px){.grid-gallery{gap:18px;padding:20px 40px}.grid-gallery{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}}@media(max-width:1100px){.grid-gallery{gap:12px;padding:12px}.grid-gallery{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media(max-width:900px){.grid-gallery{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))!important;gap:10px;padding:8px 10px}}@media(max-width:700px){.grid-gallery{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))!important;gap:8px;padding:6px 8px}.grid-card{transform:none!important}}.grid-card{display:flex;flex-direction:column;align-items:stretch;text-decoration:none;color:inherit;width:100%;height:100%;max-width:none}.grid-card .thumb{display:block;width:100%;border-radius:12px;overflow:hidden;background:#111;aspect-ratio:16/9;align-self:stretch}.grid-card .thumb-bg{width:100%;height:100%;position:relative;overflow:hidden;background:#0b0b0b;border-radius:12px;background-size:cover;background-position:center center;background-repeat:no-repeat}.grid-card .thumb img{width:100%;height:100%;object-fit:cover;display:block;border-radius:12px;position:relative;z-index:2}.title-overlay{z-index:10}.grid-card .thumb img{opacity:1!important;visibility:visible!important;z-index:3!important}.grid-card__meta{padding:12px 10px;text-align:left}.grid-card__meta h3{margin:0;font-size:1.05rem}.grid-card:hover{transform:translateY(-6px) scale(1.01);box-shadow:0 22px 46px #02061747}.grid-card .card-link{display:block;color:inherit;text-decoration:none}.grid-card .card-link:focus{outline:2px solid rgba(96,165,250,.35);outline-offset:4px}.grid-card.clickable{cursor:pointer}.grid-card .thumb{position:relative;transition:transform .16s cubic-bezier(.2,.8,.2,1),box-shadow .16s,filter .26s ease;will-change:transform,box-shadow,filter}.grid-card .card-link:hover .thumb{transform:translateY(-6px) scale(1.035);box-shadow:0 28px 60px #00000061}.grid-card:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 20px 40px #02061738}.grid-card:active .thumb{transform:translateY(-2px) scale(.995)}.title-overlay{position:absolute;left:14px;right:14px;bottom:14px;padding:12px 16px;color:#fff;font-weight:700;font-size:15px;border-radius:12px;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .26s cubic-bezier(.2,.8,.2,1),transform .26s cubic-bezier(.2,.8,.2,1),box-shadow .26s;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:center;background:linear-gradient(180deg,#ffffff05,#ffffff03);border:1px solid rgba(255,255,255,.06);box-shadow:0 8px 30px #02061780,inset 0 1px #ffffff08;backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15)}.grid-card.is-hover .title-overlay,.grid-card:hover .title-overlay{opacity:1;transform:translateY(0);box-shadow:0 12px 40px #02061799,inset 0 1px #ffffff0f}@supports not ((-webkit-backdrop-filter: blur(10px)) or (backdrop-filter: blur(10px))){.title-overlay{background:linear-gradient(180deg,#00000073,#0009);border:1px solid rgba(255,255,255,.04)}}.grid-card.is-hover .title-overlay,.grid-card:hover .title-overlay{opacity:1;transform:translateY(0)}.grid-card .title-overlay{z-index:6}.grid-card{transition:filter .52s cubic-bezier(.22,.9,.31,1),-webkit-filter .52s cubic-bezier(.22,.9,.31,1)}.grid-card.blurred{filter:blur(8px) saturate(.8) brightness(.82);-webkit-filter:blur(8px) saturate(.8) brightness(.82)}.grid-card.is-hover{filter:none;-webkit-filter:none}.works-grid,.container{width:100%}.mobile-slider-container{width:100%;overflow-x:auto;padding:12px 0;-webkit-overflow-scrolling:touch}.mobile-slider-wrapper{display:flex;gap:12px;padding:0 12px}.mobile-slider-item{flex:0 0 auto;width:160px;border-radius:8px;background:#fff;color:#111;box-shadow:0 2px 6px #00000014;overflow:hidden}.mobile-slider-thumbnail{width:100%;height:110px;object-fit:cover;display:block}.mobile-slider-placeholder{width:100%;height:110px;background:#e9e9e9}.mobile-slider-title{padding:8px;font-size:13px;text-align:center}.mobile-slider-container::-webkit-scrollbar{height:8px}.mobile-slider-container::-webkit-scrollbar-thumb{background:#0000001f;border-radius:4px}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.contact-section-container{position:relative;width:100%;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:4rem 1rem;box-sizing:border-box}.glass-background-panel{position:absolute;inset:0;margin:2vh 1vw;border-radius:48px;background:#ffffff05;backdrop-filter:blur(26px) saturate(140%);-webkit-backdrop-filter:blur(26px) saturate(140%);border:1px solid rgba(255,255,255,.03);box-shadow:0 60px 120px #0000008c;z-index:1}.contact-card-foreground{position:relative;z-index:3;width:100%;max-width:900px;padding:56px 48px;border-radius:24px;text-align:center;color:#fff;background:linear-gradient(180deg,#ffffff05,#ffffff03);border:1px solid rgba(255,255,255,.04);box-shadow:0 16px 48px #0000008c}.contact-card-foreground h2{margin-bottom:1rem;font-size:2rem;font-weight:800;letter-spacing:1px}.contact-card-foreground p{margin-bottom:1.5rem;color:#ffffffd9}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem 1rem;margin:0 auto 1.25rem;width:60%;min-width:320px}.form-group{margin-bottom:1.25rem;text-align:left;position:relative}.form-group.full{grid-column:1 / -1}.form-group label{display:block;margin-bottom:.5rem;font-weight:600;color:#fffffff2}.form-group input,.form-group textarea{width:100%;padding:.9rem 1rem;border-radius:12px;border:1px solid rgba(255,255,255,.08);background-color:#ffffff0f;color:#fff;font-size:1rem;box-shadow:0 12px 36px #00000073;transform:translateY(-8px)}.form-group textarea{min-height:160px}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#7c5cff;box-shadow:0 14px 44px #7c5cff38;transform:translateY(-10px) scale(1.01)}.form-group{z-index:4}.button-wrap{width:60%;margin:0 auto}.btn.btn--primary{width:100%;padding:1rem;font-size:1.05rem;font-weight:700;border-radius:12px;border:none;background:linear-gradient(90deg,#6fb7ff,#7c5cff);color:#fff;cursor:pointer;box-shadow:0 12px 36px #7c5cff2e}.btn.btn--primary:disabled{opacity:.7;cursor:not-allowed}@media(max-width:900px){.form-grid{width:80%;grid-template-columns:1fr}.button-wrap{width:80%}.contact-card-foreground{padding:36px}.glass-background-panel{margin:3vh 2vw;border-radius:28px}}@media(max-width:420px){.form-grid,.button-wrap{width:92%}}.contact-card-foreground form,.contact-card-foreground .form-grid,.contact-card-foreground .button-wrap{margin-left:auto;margin-right:auto;box-sizing:border-box}.form-grid{max-width:680px}.form-group input[type=text],.form-group input[type=email],.form-group textarea{max-width:100%;width:100%;box-sizing:border-box}.form-group.full{max-width:680px;margin-left:auto;margin-right:auto}@media(max-width:700px){.form-grid,.button-wrap,.form-group.full{max-width:92%;width:92%;padding-left:4%;padding-right:4%}}:root{--bg-dark: #050505;--glass-border: rgba(255, 255, 255, .08);--neon-accent: #3b82f6}body{background-color:#081023;background-image:linear-gradient(120deg,#3c186ef2,#2663b4eb,#40c8c6d9,#7c5cffe6 66%,#ff8cabe6 84%,#0c1123f2),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200' viewBox='0 0 200 200'><filter id='noise'><feTurbulence baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%' height='100%' filter='url(%23noise)' opacity='0.22' /></svg>");background-blend-mode:overlay,normal;background-size:cover,200px 200px;background-attachment:fixed,scroll;color:#fff;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background:linear-gradient(120deg,#4fd1c50a,#6fb7ff0a,#7c5cff0a);mix-blend-mode:screen;background-size:200% 200%;background-position:50% 50%;animation:body-gradient-move 60s linear infinite;will-change:transform;transform:translate3d(var(--bg-parallax-tx, var(--bg-parallax-x, 0px)),var(--bg-parallax-ty, var(--bg-parallax-y, 0px)),0);transition:transform .22s cubic-bezier(.2,.9,.2,1)}.reveal{opacity:0;transform:translateY(24px) scale(.995);transition:opacity .68s cubic-bezier(.2,.9,.2,1),transform .68s cubic-bezier(.2,.9,.2,1);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0) scale(1)}@media(prefers-reduced-motion:reduce){body:before{animation:none!important}.reveal,.reveal.is-visible{transition:none!important;transform:none!important;opacity:1!important}}body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='800' height='800' viewBox='0 0 800 800'><filter id='n'><feTurbulence baseFrequency='0.08' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.36' /></svg>");background-repeat:repeat;background-size:800px 800px;mix-blend-mode:overlay;opacity:.95;animation:body-grain-shift 200s linear infinite}@keyframes body-gradient-move{0%{background-position:0% 40%}50%{background-position:100% 60%}to{background-position:0% 40%}}@keyframes body-grain-shift{0%{background-position:0 0}50%{background-position:600px 400px}to{background-position:0 0}}.bg-media{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}.bg-video{position:absolute;left:0;top:0;width:100vw;height:100vh;transform:scale(1.2);transform-origin:center center;object-fit:cover;object-position:center}.bg-video[src=""]{display:none}.bg-overlay{position:absolute;inset:0;background:#00000073;pointer-events:none;z-index:0;transition:background .3s ease}.works-panel{position:relative;margin:2vh 1vw;border-radius:48px;background:#ffffff05;backdrop-filter:blur(26px) saturate(140%);-webkit-backdrop-filter:blur(26px) saturate(140%);border:1px solid rgba(255,255,255,.03);box-shadow:0 60px 120px #0000008c;pointer-events:auto;padding:32px;transition:backdrop-filter .26s ease,background .26s ease,transform .26s ease}.works-panel.is-blurred{backdrop-filter:blur(36px) saturate(120%);-webkit-backdrop-filter:blur(36px) saturate(120%);background:#0009}.works-blur-panel{display:none}@media(max-width:700px){.bg-overlay{background:#00000052}}.bg-media--blur .bg-video{filter:blur(14px) brightness(.82);transition:filter .26s ease,transform .26s ease}.bg-media--blur .bg-overlay{background:#000000b3;transition:background .26s ease}.bg-video{transition:filter .26s ease,transform .26s ease}.bg-overlay{transition:background .26s ease}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#0a0a0a}::-webkit-scrollbar-thumb{background:#333;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.glass-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff0a;border:1px solid rgba(255,255,255,.08)}.text-gradient{background-clip:text;-webkit-background-clip:text;color:transparent;background-image:linear-gradient(180deg,#fff,#e5e7eb)}h1,h2,h3{letter-spacing:-.03em}html.lenis{height:auto}.glass-surface{position:relative;background:linear-gradient(180deg,#ffffff08,#ffffff03);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:12px;backdrop-filter:blur(12px) saturate(120%);-webkit-backdrop-filter:blur(12px) saturate(120%);box-shadow:0 10px 30px #02061780;overflow:hidden}.glass-surface:after{content:"";position:absolute;inset:0;border-radius:14px;pointer-events:none;background:linear-gradient(180deg,#ffffff05,#fff0);mix-blend-mode:overlay}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:12px 18px;border-radius:16px;color:#fff;text-decoration:none;font-weight:700;position:relative;overflow:hidden;background:linear-gradient(180deg,#ffffff08,#ffffff03);border:1px solid rgba(255,255,255,.08);backdrop-filter:blur(10px) saturate(120%);-webkit-backdrop-filter:blur(10px) saturate(120%);box-shadow:0 8px 20px #02061773;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}.btn--email{margin-top:120px!important;padding:16px 24px;font-size:16px;border-radius:20px;box-shadow:0 10px 28px #0206178c;transition:box-shadow .18s ease,background .18s ease;will-change:transform}.cta .btn--email:hover,.hero-inner .btn--email:hover,.btn--email:hover{transform:none!important}.btn--email:focus,.btn--email:focus-visible{outline:2px solid rgba(59,130,246,.14);outline-offset:4px;transform:none!important}.btn--email:active{animation:emailClick .42s cubic-bezier(.22,.9,.32,1);transform-origin:center}@keyframes emailClick{0%{transform:translateY(0) scale(1);box-shadow:0 10px 28px #0206178c}30%{transform:translateY(-10px) scale(1.08);box-shadow:0 26px 56px #020617a6}60%{transform:translateY(6px) scale(.98);box-shadow:0 8px 20px #02061780}to{transform:translateY(0) scale(1);box-shadow:0 10px 28px #0206178c}}.btn:before{content:"";position:absolute;left:0;top:0;bottom:0;width:10%;pointer-events:none;background:linear-gradient(90deg,#ffffff0f,#fff0);mix-blend-mode:overlay;opacity:.8}.btn:hover{transform:translateY(-4px);box-shadow:0 18px 40px #0206178c}.btn,.btn--social{position:relative;z-index:2;pointer-events:auto;will-change:transform}.cta .btn,.cta .btn *,.cta .btn--social,.cta .btn--social *{color:#fffffff2!important}.cta .btn--social:hover,.cta .btn--social:focus{color:#fff!important;-webkit-text-fill-color:#fff!important}.cta .btn--social:hover *,.cta .btn--social:focus *,.cta .btn:hover,.cta .btn:focus{color:#fff!important;-webkit-text-fill-color:#fff!important;text-shadow:0 2px 12px rgba(0,0,0,.6)!important}.cta .btn--social:hover>svg,.cta .btn--social:focus>svg,.cta .btn:hover>svg,.cta .btn:focus>svg{fill:#fff!important}.cta .btn--social:after,.cta .btn:before,.cta .btn:after{border-radius:16px}.btn:hover,.btn:focus{transform:translateY(-6px) scale(1.02);box-shadow:0 22px 48px #02061799}.btn--social:hover,.btn--social:focus{transform:translateY(-6px) scale(1.04);box-shadow:0 30px 80px #020617bf}.cta .btn,.cta .btn--social{position:relative;z-index:9999;pointer-events:auto;overflow:hidden;border-radius:16px;-webkit-mask-image:linear-gradient(#fff,#fff)}.showreel-poster img{transition:transform .28s cubic-bezier(.2,.9,.2,1),filter .28s}.showreel-poster:hover img{transform:scale(1.035);filter:brightness(.95) saturate(1.05)}.showreel-poster .btn{pointer-events:auto}.video-wrap{position:relative}#showreel .video-backdrop{position:absolute;inset:0;background:#000;z-index:1;transition:opacity .26s ease;opacity:1}#showreel .video-backdrop[data-loaded=true]{opacity:0;pointer-events:none}#showreel .video-wrap iframe{position:relative;z-index:2;width:100%;height:100%;border:0}.btn--accent{background:linear-gradient(180deg,#5b3ff01f,#3b82f614);border:1px solid rgba(255,255,255,.08)}.btn--social{background:linear-gradient(180deg,#ffffff05,#ffffff03);border:1px solid rgba(255,255,255,.06);position:relative;overflow:hidden;border-radius:24px;padding:10px 20px;transition:transform .18s cubic-bezier(.2,.9,.2,1),box-shadow .18s cubic-bezier(.2,.9,.2,1)}.btn--social:after{content:"";position:absolute;inset:0;opacity:.14;pointer-events:none;mix-blend-mode:screen;transition:opacity .18s ease,transform .18s ease,filter .18s ease;transform:scale(1)}.btn--social:hover{transform:translateY(-6px) scale(1.04);box-shadow:0 30px 80px #020617bf;filter:brightness(1.04)}.btn--social:hover:after{opacity:.65;transform:scale(1.06);filter:brightness(1.02);mix-blend-mode:normal}.btn--ig:after{background:linear-gradient(45deg,#f58529,#dd2a7b 35%,#8134af 65%,#515bd4)}.btn--yt:after{background:linear-gradient(90deg,red,#ff4d4d)}.btn--li:after{background:linear-gradient(90deg,#0a66c2,#2b8be6)}.btn--social{color:#fff;font-weight:800}.cta a{min-width:140px;border-radius:24px}@media(max-width:700px){.cta{flex-direction:column}.cta a{width:100%;min-width:unset}}html,body,#root{height:100%;margin:0;padding:0}body{overflow:auto}.site{position:relative;z-index:1;height:100vh;overflow-y:auto;scroll-snap-type:y mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.section{scroll-snap-align:start;min-height:100vh;display:flex;align-items:center;overflow:hidden}html,body,.site{overflow-x:hidden}.section.hero,.section.showreel,.showreel-inner,.video-wrap,.floating-lines-container{width:100vw;max-width:100vw;overflow-x:visible;left:0;transform:none}@media(max-width:700px){.section.hero,.section.showreel,.showreel-inner,.video-wrap,.floating-lines-container{left:0;transform:none;width:100%;max-width:100%}.site .section{display:block}.site .section:not(.hero){display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important;pointer-events:none!important}.site{height:auto;overflow:auto}.floating-lines-container{display:none!important}.mobile-quick{display:none}.btn--email{background:linear-gradient(180deg,#ffffff08,#ffffff03);border:1px solid rgba(255,255,255,.08);color:#fff;margin-top:20px;padding:12px 18px;border-radius:16px;font-weight:700;box-shadow:0 8px 20px #02061773;margin-top:20px!important}.btn--email:active{transform:translateY(1px)}.hero-inner .cta{gap:20px;padding-bottom:20px}.copy-popup{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:1400;pointer-events:auto}.copy-popup__box{background:#0a0a0cfa;color:#fff;padding:14px 18px;border-radius:12px;box-shadow:0 20px 60px #0009;display:flex;gap:12px;align-items:center;max-width:90%}.copy-popup__close{background:transparent;border:1px solid rgba(255,255,255,.08);color:#fff;padding:6px 10px;border-radius:8px;cursor:pointer}}.hero-inner,.showreel-inner,.works-full,.section .container,.contact-card__inner{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.works-header{max-width:920px;margin:0 auto;text-align:center}.logo{display:flex;align-items:center;justify-content:center}.logo img{height:auto;max-height:60vh;max-width:520px;width:auto}.title{font-size:clamp(42px,7vw,120px);line-height:1}.subtitle{font-size:clamp(15px,2vw,20px)}.hero-inner .cta{justify-content:center}.showreel-inner .showreel-poster,.showreel-inner .video-wrap{display:flex;align-items:center;justify-content:center}.section.showreel{min-height:100vh}.section.showreel .showreel-inner{display:flex;align-items:center;justify-content:center;padding:0;min-height:100vh;height:100vh;box-sizing:border-box;width:100vw;max-width:none}html,body,#root{width:100%;height:100%;margin:0;padding:0}.site{height:100vh}.section.hero{position:relative;min-height:100vh;height:100vh;width:100vw;margin:0;padding:0}.section.hero .hero-inner{width:100vw;height:100vh;padding:0;margin:0;display:flex;align-items:center;justify-content:center}.section.showreel{position:relative;min-height:100vh;height:100vh;width:100vw;margin:0;padding:0}.section.showreel .showreel-inner{width:100vw;height:100vh;padding:0;margin:0}.section.showreel .video-wrap{position:relative;width:100vw;height:100vh;display:block}.section.showreel .video-wrap iframe{position:absolute;left:0;top:0;width:100%;height:100%;border:0;border-radius:0;object-fit:cover}.showreel-poster{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;width:100vw}.showreel-poster img{width:100vw;max-width:none;height:100vh;object-fit:cover}.showreel-poster .btn{margin-top:12px}.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%);z-index:1600;pointer-events:auto}.toast__box{background:#06080cf2;color:#fff;padding:10px 14px;border-radius:12px;box-shadow:0 16px 50px #0009;display:flex;gap:12px;align-items:center;min-width:220px}.toast__close{background:transparent;border:0;color:#fff;padding:6px 8px;border-radius:8px;cursor:pointer}.toast--fallback .toast__box{flex-direction:row;gap:12px}
