/* Motion has an explicit off state and follows the visitor's OS preference. */
.reading-progress{position:fixed;left:0;right:0;top:0;height:3px;z-index:80;background:linear-gradient(90deg,#8793ff,#79e1ff);transform-origin:left;transform:scaleX(0);pointer-events:none;box-shadow:0 0 14px #719fff99}.motion-toggle{position:fixed;right:18px;bottom:18px;z-index:30;display:flex;align-items:center;gap:9px;min-height:40px;background:#10182bed;color:#d3dff8;border:1px solid #576a8c;border-radius:30px;padding:8px 14px;font-size:10px;letter-spacing:.4px;box-shadow:0 5px 25px #0003;cursor:pointer}.motion-toggle>span{font-size:13px}.motion-toggle:hover{background:#243656}.headline-line{display:block}.hero{position:relative;isolation:isolate}.hero-copy,.hero-art{z-index:1}.hero-atmosphere{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}.hero-atmosphere:before,.hero-atmosphere:after{content:'';position:absolute;width:660px;height:660px;right:-100px;top:-40px;border-radius:50%;background:radial-gradient(circle,#324baa32,transparent 68%)}.hero-atmosphere:after{width:440px;height:440px;right:320px;top:200px;background:radial-gradient(circle,#277e9830,transparent 67%)}[data-motion=on] .hero-atmosphere:before{animation:aurora-drift 13s ease-in-out infinite alternate}[data-motion=on] .hero-atmosphere:after{animation:aurora-drift 17s ease-in-out -5s infinite alternate-reverse}.orbit:before{content:'';position:absolute;width:9px;height:9px;border:2px solid #abceff;border-radius:50%;top:50%;left:-5px;box-shadow:0 0 20px #6dacff;background:#243755}[data-motion=on] .orbit{animation:orbit-turn 38s linear infinite}[data-motion=on] .hero-film{animation:film-float 7s ease-in-out infinite}[data-motion=on] .hero-web{animation:web-float 8s ease-in-out -2s infinite}[data-motion=on] .creative-seal{animation:seal-rock 9s ease-in-out infinite}[data-motion=on] .hero-art:hover .hero-film,[data-motion=on] .hero-art:hover .hero-web,[data-motion=on] .hero-art:focus-within .hero-film,[data-motion=on] .hero-art:focus-within .hero-web{animation-play-state:paused}.play{position:relative}.play:after{content:'';position:absolute;inset:-6px;border:1px solid #c6d7ff77;border-radius:50%;pointer-events:none}[data-motion=on] .hero-film .play:after{animation:play-ring 3s ease-out infinite}.hero-scroll-cue{display:inline-flex;align-items:center;gap:10px;margin-top:25px;font-size:8px;letter-spacing:1.5px;color:#94a4c4}.hero-scroll-cue i{font-style:normal;font-size:17px}[data-motion=on] .hero-scroll-cue i{animation:scroll-nudge 2s ease-in-out infinite}.ticker:hover>div,.ticker:focus-within>div{animation-play-state:paused}.video-image,.project-image,.review-card{position:relative;transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.video-image:after,.project-image:after{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--light-x,50%) var(--light-y,50%),#c2dbff20,transparent 65%);opacity:0;transition:opacity .25s;pointer-events:none;border-radius:inherit}.pointer-active:after{opacity:1}.pointer-active{border-color:#8baaff;box-shadow:0 10px 40px #527aff20}.btn.primary{position:relative;overflow:hidden}.btn.primary:after{content:'';position:absolute;top:-40%;bottom:-40%;left:-65%;width:40%;background:linear-gradient(90deg,transparent,#ffffff99,transparent);transform:skewX(-20deg);pointer-events:none}[data-motion=on] .btn.primary:hover:after,[data-motion=on] .btn.primary:focus-visible:after{animation:button-shine .8s ease-out}.btn>span,.text-link>span,.nav-cta>span{display:inline-block;transition:transform .25s}.btn:hover>span,.text-link:hover>span,.nav-cta:hover>span{transform:translate(3px,-2px)}header nav a{position:relative}header nav a:after{content:'';height:2px;background:#93b4ff;position:absolute;left:0;bottom:-8px;width:100%;transform:scaleX(0);transform-origin:left;transition:transform .3s}header nav a.current:after,header nav a:hover:after{transform:scaleX(1)}[data-motion=on] .founder-orbit{animation:founder-glow 8s ease-in-out infinite alternate}[data-motion=on] .studio-inset{animation:studio-float 8s ease-in-out infinite}.review-card:hover .review-card-bottom>span{transform:rotate(90deg)}.review-card-bottom>span{transition:transform .35s}.review-section{overflow:hidden}.review-section>.wrap{position:relative}.review-section>.wrap:before{content:'“';font-family:Georgia,serif;position:absolute;right:75px;top:0;font-size:330px;line-height:1;color:#4963a40b;pointer-events:none}.process-grid>div{position:relative}.process-grid>div:before{content:'';position:absolute;top:-10px;left:0;width:30px;height:1px;background:#8cacfa;transition:width .5s}.process-grid>div:hover:before{width:100%}.contact-section{position:relative;overflow:hidden}.contact-inner{position:relative;z-index:1}.contact-section:before{content:'';position:absolute;right:-160px;top:-190px;width:650px;height:650px;border:1px solid #8cafff14;border-radius:50%;box-shadow:0 0 0 65px #8cafff05,0 0 0 135px #8cafff04;pointer-events:none}[data-motion=on] .contact-section:before{animation:contact-breathe 12s ease-in-out infinite alternate}
@keyframes aurora-drift{to{transform:translate(-70px,40px) scale(1.18)}}@keyframes orbit-turn{to{transform:rotate(360deg)}}@keyframes film-float{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-12px) rotate(-3deg)}}@keyframes web-float{0%,100%{transform:translateY(0) rotate(7deg)}50%{transform:translateY(9px) rotate(5deg)}}@keyframes seal-rock{0%,100%{transform:rotate(-15deg)}50%{transform:rotate(-7deg)}}@keyframes play-ring{0%{transform:scale(.85);opacity:0}25%{opacity:.7}100%{transform:scale(1.45);opacity:0}}@keyframes scroll-nudge{0%,100%{transform:translateY(-3px)}50%{transform:translateY(4px)}}@keyframes button-shine{to{left:140%}}@keyframes founder-glow{to{transform:rotate(10deg) scale(1.025);opacity:.6}}@keyframes studio-float{0%,100%{transform:translateY(0) rotate(-7deg)}50%{transform:translateY(-7px) rotate(-4deg)}}@keyframes contact-breathe{to{transform:translate(-35px,30px) scale(1.1)}}
@media(hover:hover) and (pointer:fine){[data-motion=on] .pointer-active{transform:perspective(1000px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-3px)}}
@media(max-width:760px){.motion-toggle{right:12px;bottom:12px;min-height:44px;padding:9px 12px;font-size:9px}.hero-scroll-cue{margin-top:19px;font-size:8px}.hero-atmosphere:before{width:400px;height:400px;right:-130px;top:300px}.hero-atmosphere:after{display:none}.hero-art .orbit{max-width:100%;aspect-ratio:1;height:auto}.review-section>.wrap:before{right:20px;font-size:220px}.contact-section:before{width:370px;height:370px}.footer-bottom{padding-bottom:76px}header nav a:after{bottom:3px;width:35px;left:10px}.hero .hero-film{animation-name:mobile-film-float}.hero .hero-web{animation-name:mobile-web-float}.studio-inset{animation:none!important}.reading-progress{height:2px}}
@keyframes mobile-film-float{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-5px) rotate(-4deg)}}@keyframes mobile-web-float{0%,100%{transform:translateY(0) rotate(7deg)}50%{transform:translateY(5px) rotate(6deg)}}
html[data-motion=off]{scroll-behavior:auto}html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation:none!important;transition:none!important}.motion-sleep *,.motion-sleep *:before,.motion-sleep *:after,.media-viewing *,.media-viewing *:before,.media-viewing *:after{animation-play-state:paused!important}.media-viewing .motion-toggle{visibility:hidden}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
