/* A living world behind every section, using the studio's cyan / teal palette. */
body{background:#091d32;isolation:isolate;overflow-x:clip}
body>main,body>.footer{position:relative;z-index:1}
.site-atmosphere{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 20% 30%,#094b684f,transparent 62%),linear-gradient(135deg,#0e243b,#111b3c 55%,#072d39);--ambient-x:0px;--ambient-y:0px;--pointer-x:50%;--pointer-y:50%}
.ambient-nebula{position:absolute;width:95vw;height:90vh;min-height:550px;will-change:transform;opacity:.7;mix-blend-mode:screen;filter:blur(35px)}
.nebula-cyan{top:-15%;left:-35%;background:radial-gradient(ellipse,#008fc880,#00dfc627 35%,transparent 66%);animation:nebula-flow 24s ease-in-out infinite alternate}
.nebula-violet{top:0;right:-35%;background:radial-gradient(ellipse,#744bdd80,#384bc545 35%,transparent 66%);animation:nebula-flow 29s ease-in-out -9s infinite alternate-reverse}
.nebula-teal{bottom:-40%;left:12%;background:radial-gradient(ellipse,#00c99b60,#0069b547 35%,transparent 65%);animation:nebula-flow 33s ease-in-out -17s infinite alternate}
.ambient-grid{position:absolute;inset:28% -20% -50%;background-image:linear-gradient(#56d9f314 1px,transparent 1px),linear-gradient(90deg,#56d9f314 1px,transparent 1px);background-size:88px 88px;transform:perspective(800px) rotateX(62deg);transform-origin:center top;mask-image:linear-gradient(transparent,#0009 40%,transparent 85%);animation:grid-flight 22s linear infinite}
.ambient-ring{position:absolute;border-radius:50%;border:1px solid #41f4e42b;box-shadow:inset 0 0 100px #00bddd08,0 0 80px #00bddd08;background:conic-gradient(from 40deg,transparent 0 75%,#00dfcc10 90%,transparent);animation:ambient-orbit 55s linear infinite}
.ring-wide{width:780px;height:780px;right:-260px;top:-180px}.ring-small{width:470px;height:470px;bottom:-180px;left:-180px;animation-direction:reverse;border-style:dashed;border-color:#ae89ff24}
.ambient-cursor{position:absolute;inset:0;background:radial-gradient(450px circle at var(--pointer-x) var(--pointer-y),#15d9e018,transparent 75%);transition:opacity .6s}
#ambient-particles{position:absolute;inset:0;width:100%;height:100%;opacity:.85}
.reading-progress{height:2px;position:fixed;left:0;top:0;z-index:100;width:calc(var(--reading-progress,0)*100%);background:linear-gradient(90deg,#00e7bc,#00c8ef,#b493ff);box-shadow:0 0 13px #00e7bc99;pointer-events:none}
.home-page .header.scrolled,.inner-page .header{background:linear-gradient(90deg,#071f2eea,#14243dea);border-bottom-color:#72d9ee25}.mobile-menu{background:#0b2b3e}
.cinema-scene{inset:-1.5%;transform:translate3d(var(--scene-x,0px),var(--scene-y,0px),0);transition:transform 1.2s ease-out}
.cinema-vignette{background:linear-gradient(90deg,#041726cf 0%,#07162980 25%,#02080c08 67%),linear-gradient(0deg,#0c2b42 0%,#081b32ae 18%,transparent 60%,#05223f3b 100%)}
.cinema-intro h1 em{-webkit-text-stroke-color:#a9ffee;text-shadow:0 0 40px #00e7bc18}
.cinema-now{border-left-color:#27e4d4aa;padding-left:24px}
.cinema-tabs .feature-choice{background:linear-gradient(135deg,#102d4299,#171c3bb5);border-color:#88cce843}
.cinema-tabs .feature-choice.selected{background:linear-gradient(115deg,#006c674f,#08718240);border-color:#15edc8;box-shadow:0 0 30px #00e7bc20,inset 0 0 35px #00d4c111}
.cinema-ticker{background:linear-gradient(100deg,#083b46,#172c50 55%,#313360);border-top-color:#16c6c055;border-bottom-color:#718ff33b}
.cinema-ticker>div{color:#d9faff}.cinema-ticker b{text-shadow:0 0 20px #00e7bc80}
.section{position:relative;isolation:isolate}
.game-section:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0b28415c,#0a2542e0 470px,#112345b5 70%,#0a3046cc),url('/assets/cursed-scene.webp') center top/100% auto no-repeat;mask-image:linear-gradient(transparent,#000 110px,#000 calc(100% - 100px),transparent);opacity:.7}
.game-section:after{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 4% 17%,#00dcb630,transparent 40%),radial-gradient(ellipse at 97% 65%,#7d4fea33,transparent 38%);animation:section-glow 17s ease-in-out infinite alternate}
.game-section .section-heading h2 em{color:#4df6dd;text-shadow:0 0 55px #00e7bc38}
.library-toolbar{border-color:#56d2dc55;background:linear-gradient(90deg,#06384566,#233a5933);padding:14px 16px;margin-top:-8px;backdrop-filter:blur(10px)}
.filter{color:#b0d3df}.filter.active{color:#7fffe6;border-color:#2fffd5;text-shadow:0 0 15px #00e7bc44}.library-count{color:#8fc2d2}
.game-card{border-color:#71cce132;box-shadow:0 10px 30px #0003}.game-card:hover{box-shadow:0 8px 35px #02d9d922;border-color:#44ebd8}
.game-cover:before{background:linear-gradient(0deg,#062132f7,#071c2de8 23%,#09192820 65%,transparent)}
.game-bottom{border-color:#55c5ca4d}.platform-label{background:#062635d9;border-color:#80edec4d}
.community-strip{background:linear-gradient(100deg,#04564b66,#15487444);border:1px solid #6df4d333;padding:25px;margin-top:32px;border-radius:3px}
.about-section{background:radial-gradient(ellipse at 88% 40%,#56438c75,transparent 59%),radial-gradient(ellipse at 12% 80%,#005b6570,transparent 54%),linear-gradient(120deg,#101f38df,#232045e8);border-color:#9ba3ff42}
.about-section:before{content:'';position:absolute;inset:0;z-index:-1;background:url('/assets/tag-scene.webp') right center/cover no-repeat;opacity:.08;mask-image:linear-gradient(90deg,transparent,#000)}
.about-section:after{content:'';position:absolute;width:650px;height:650px;border:1px solid #af8bff33;border-radius:50%;right:-150px;top:-80px;z-index:-1;box-shadow:0 0 0 95px #9774ff07,0 0 0 185px #9774ff06;animation:studio-halo 23s ease-in-out infinite alternate}
.studio-image{box-shadow:22px 22px 0 #00dcb620,0 0 80px #8175ff38;border:1px solid #7cffdf55}
.about-stamp{background:linear-gradient(125deg,#102542,#2f2851);box-shadow:0 8px 45px #0004;border-color:#80efd688}
.about-copy h2 em{color:#bdb2ff;text-shadow:0 0 40px #9264ff23}.about-copy>.eyebrow{color:#7ffff0}.studio-note{background:#132848;border-color:#8a8de574}.skill-tags span{border-bottom-color:#ab9cf35c;color:#d1d0f4}
.cinematic-services:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 4% 35%,#0ba7cb32,transparent 48%),radial-gradient(ellipse at 87% 63%,#8a55f93b,transparent 48%);mask-image:linear-gradient(transparent,#000 12%,#000 80%,transparent)}
.cinematic-services:after{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#61b5de14 1px,transparent 1px),linear-gradient(90deg,#61b5de14 1px,transparent 1px);background-size:60px 60px;mask-image:radial-gradient(ellipse,#0009,transparent 76%);animation:work-grid 28s linear infinite}
.service-lines{border-top-color:#6ed5df4d}.service-lines>a{border-bottom-color:#6ed5df4d;background:linear-gradient(90deg,#0d475a38,transparent);padding-left:15px;padding-right:15px}.service-lines>a:nth-child(2){background:linear-gradient(90deg,#473c733c,transparent)}.service-lines>a:hover{background:linear-gradient(90deg,#056c7440,#263e5840);padding-left:25px}
.service-lines .line-number{color:#b3b3e5}.web-case-image{border-color:#67cae457;box-shadow:0 15px 70px #060e2a6b}
.web-case-image:hover{box-shadow:0 15px 70px #0cc6d926}.web-case-copy .eyebrow{color:#88e4dc}.web-case-copy h3{color:#efffff}
.web-case:first-child .web-case-image{box-shadow:0 15px 80px #484dc02c}.web-case-launch{background:linear-gradient(100deg,#35ffd7,#42d8ff);box-shadow:0 3px 25px #00d9d02b}
.playground-section{overflow:hidden;background:radial-gradient(ellipse at 25% 40%,#164aa8aa,transparent 57%),radial-gradient(ellipse at 83% 75%,#035e7677,transparent 50%),linear-gradient(115deg,#112958eb,#113951f0);border-color:#63bdf469}
.playground-section:before{content:'';position:absolute;inset:0;z-index:-1;opacity:.55;background-image:radial-gradient(circle at 8% 30%,#dc83da22 0 75px,transparent 77px),radial-gradient(circle at 43% 78%,#60e9cf1c 0 105px,transparent 108px),radial-gradient(circle at 92% 20%,#858ff32c 0 150px,transparent 154px);animation:arcade-sky 18s ease-in-out infinite alternate}
.playground-section:after{content:'POP!';position:absolute;left:-15px;bottom:-20px;font-family:var(--heading);font-size:clamp(150px,22vw,330px);font-weight:700;line-height:1;letter-spacing:-.07em;color:transparent;-webkit-text-stroke:1px #80c6fc2d;z-index:-1;transform:rotate(-9deg);pointer-events:none}
.playground-copy h2 em{color:#79ffe1;text-shadow:0 0 45px #00e7bc3b}.playground-copy>p{color:#c1d4f3}.playground-copy small{color:#a2b9dd}
.mini-game{border-color:#76dce79c;background:linear-gradient(140deg,#0e385cda,#132b56df);box-shadow:0 0 0 7px #64d1eb07,0 0 90px #1699e134}
.balloon-field{background:radial-gradient(ellipse at 70% 90%,#066c8c66,transparent 70%),radial-gradient(ellipse at 10% 10%,#8b49bb3b,transparent 60%),radial-gradient(#a1d3ff3a 1px,transparent 1px);background-size:auto,auto,24px 24px}
.mini-game-bar,.mini-game-footer{background:#0b284b99;border-color:#6bd5e455}.mini-game-footer #game-message{color:#b2d6f3}
.faq-section:before{content:'';position:absolute;inset:40px -20px;z-index:-1;background:radial-gradient(ellipse at 15% 50%,#11b49d30,transparent 67%),linear-gradient(130deg,#0c354c85,#2330547d);border:1px solid #66d4d624;border-radius:16px}
.faq-list details{border-color:#71cbda48}.faq-list details:first-child{border-color:#71cbda48}.faq-list details[open]{background:#36c5c808;padding-left:16px;padding-right:16px}.faq-list summary{color:#e1f6fd}.faq-list details>p{color:#b5ccdf}
.contact-section{padding:90px 30px 100px;margin-bottom:65px;margin-top:5px;border:1px solid #74ebe458;border-radius:18px;overflow:hidden;background:radial-gradient(ellipse at 8% 88%,#00b0904d,transparent 65%),radial-gradient(ellipse at 100% 10%,#7860de4d,transparent 64%),linear-gradient(125deg,#103c50c9,#203352e8);box-shadow:0 20px 90px #00b7b51a}
.contact-section:before{content:'';position:absolute;width:700px;height:700px;left:-220px;top:-370px;z-index:-1;border:1px solid #74ffe35a;border-radius:50%;background:conic-gradient(from 45deg,transparent 0 60%,#34fbe92b,transparent);box-shadow:0 0 0 70px #29e8d10a,0 0 0 140px #6effe308;animation:ambient-orbit 40s linear infinite}
.contact-section:after{content:'';position:absolute;inset:0;z-index:-1;opacity:.55;background-image:radial-gradient(#9efae961 1px,transparent 1px);background-size:29px 29px;mask-image:linear-gradient(90deg,#000,transparent 70%)}
.contact-section h2 em,.contact-section h1 em{color:#62ffe0;text-shadow:0 0 45px #00e7bc31}.contact-top .eyebrow{color:#a6e9e0}.contact-grid>div>p{color:#b4cce0}.email-link{color:#e9fffb}.copy-email,.copy-status{color:#95dcce}
.contact-form input,.contact-form select,.contact-form textarea{background:#08273e94;border-color:#7fe8e747;backdrop-filter:blur(8px)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#67ffe0;box-shadow:0 0 18px #00e7bc14}.contact-form .button-dark{background:linear-gradient(100deg,#37ffd4,#3bd4fc);box-shadow:0 5px 30px #00e7bc22}.contact-form .form-note{color:#9ebbd4}
.footer{background:linear-gradient(120deg,#0b3045c9,#182c51c9);border-top-color:#71dae940}.footer-top>p{color:#acd0de}.footer-links{color:#bcd6e3}.footer-bottom{color:#8fb7cd;border-color:#70c7d333}
.inner-page .detail-section,.inner-page .editorial,.inner-page .subpage-title{background:radial-gradient(ellipse at 95% 20%,#7e5cd918,transparent 60%)}.detail-art{border-color:#87e7ed70;box-shadow:0 10px 80px #05bfb71f}.detail-facts{background:#0c3c4b3d;border-color:#7ad3d047;padding-left:20px;padding-right:20px}.detail-features{background:radial-gradient(ellipse,#3078a81c,transparent 75%)}
@keyframes nebula-flow{0%{transform:translate3d(calc(var(--ambient-x) - 3%),calc(var(--ambient-y) - 5%),0) rotate(-12deg) scale(1)}100%{transform:translate3d(calc(var(--ambient-x) + 12%),calc(var(--ambient-y) + 13%),0) rotate(14deg) scale(1.2)}}
@keyframes grid-flight{to{background-position:0 176px,0 176px}}@keyframes ambient-orbit{to{transform:rotate(360deg)}}@keyframes section-glow{0%{opacity:.6}100%{opacity:1;filter:hue-rotate(15deg)}}@keyframes studio-halo{to{transform:translate(35px,60px) scale(1.1)}}@keyframes work-grid{to{background-position:120px 60px,120px 60px}}@keyframes arcade-sky{to{transform:translateY(-45px) scale(1.07)}}
@media(max-width:960px){.contact-section{padding:65px 25px 75px}.ambient-nebula{filter:blur(25px)}.contact-grid{gap:35px}.community-strip{padding:22px}.cinema-tabs .feature-choice.selected{box-shadow:0 0 15px #00e7bc1a}}
@media(max-width:700px){.ambient-nebula{width:145vw;height:80vh;min-height:450px;filter:blur(18px);opacity:.58}.nebula-cyan{left:-75%;top:-10%}.nebula-violet{right:-70%;top:22%}.nebula-teal{left:-25%;bottom:-30%}.ambient-grid{background-size:60px 60px;opacity:.6}.ring-wide{width:510px;height:510px;right:-360px;top:30%}.ring-small{display:none}.ambient-cursor{display:none}.game-section:before{background-size:100% 450px;opacity:.7}.game-section .section-heading h2 em{text-shadow:0 0 25px #00e7bc23}.library-toolbar{padding:12px;margin-left:-2px;margin-right:-2px}.community-strip{padding:20px;margin-top:25px}.community-strip>.text-link{margin-left:0}.about-section:after{width:430px;height:430px;right:-300px;top:40px}.studio-image{box-shadow:13px 13px 0 #00dcb621,0 0 50px #8175ff21}.service-lines>a{padding-left:8px;padding-right:8px}.service-lines>a:hover{padding-left:12px}.playground-section:after{font-size:180px;bottom:-15px;left:-5px}.faq-section:before{inset:28px -5px;border-radius:9px}.contact-section{padding:36px 20px 42px;margin-bottom:40px;border-radius:12px}.contact-section:before{width:480px;height:480px;left:-160px;top:-300px}.contact-section :is(h1,h2){font-size:clamp(35px,10vw,55px)}.contact-grid{gap:28px}.contact-grid>div>p{font-size:12px}.email-link{font-size:19px}.contact-form input,.contact-form select,.contact-form textarea{backdrop-filter:none}.contact-top .eyebrow{font-size:6px}.detail-facts{padding-left:14px;padding-right:14px}.game-section:after{animation:none}.footer{background:linear-gradient(130deg,#0c3549e3,#1b3156dd)}}
@media(max-width:380px){.contact-section :is(h1,h2){font-size:33px}.email-link{font-size:17px}.contact-section{padding-left:17px;padding-right:17px}}
.motion-paused .cinema-scene{transform:none;transition:none}.motion-paused .ambient-cursor{opacity:0}
@media(prefers-reduced-motion:reduce){html:not(.motion-enabled) .ambient-nebula,html:not(.motion-enabled) .ambient-grid,html:not(.motion-enabled) .ambient-ring,html:not(.motion-enabled) .section:before,html:not(.motion-enabled) .section:after{animation:none}html:not(.motion-enabled) .cinema-scene{transform:none;transition:none}}
