*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{display:none;width:0;height:0}body,html{width:100%;height:100%;overflow:hidden;position:fixed;inset:0}body{min-width:0;background-color:#04181b}.canvasWrap canvas{position:absolute;inset:0;width:100%;height:100%;display:block;opacity:0;transition:opacity .9s ease-out}body.scene-visible .canvasWrap canvas{opacity:1}.heroHeader{position:absolute;left:0;right:0;top:0;bottom:0;z-index:5;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:clamp(1rem,4vw,3rem);pointer-events:none;opacity:0;transition:opacity .9s ease-out;background:radial-gradient(ellipse 75% 60% at center,rgba(12,28,34,.82) 0,rgba(14,34,40,.4) 40%,rgba(8,24,30,.12) 70%,transparent 100%)}body.scene-visible .heroHeader{opacity:1}.soundToggle{position:fixed;top:1rem;right:1rem;z-index:20;width:48px;height:48px;border-radius:50%;border:2px solid #c9a227;background:transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:opacity .3s,border-color .2s,transform .15s;pointer-events:auto;opacity:0}body.scene-visible .soundToggle{opacity:1}.soundToggle:hover{border-color:#e0b83d;opacity:.95}.soundToggle:active{transform:scale(.96)}.soundToggle--playing .soundToggle-icon{animation:soundPulse 1.2s ease-in-out infinite}@keyframes soundPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.05)}}.soundToggle svg{width:22px;height:22px;display:block}.soundToggle svg.soundToggle-icon{transform-origin:center}.heroTopLogos{position:absolute;top:clamp(.6rem,2.5vw,1.2rem);left:50%;transform:translateX(-50%);z-index:2;display:flex;align-items:center;justify-content:center;gap:.75rem;pointer-events:none}.heroTopLogos>*{pointer-events:auto}.heroBlockLeft--top{display:none}.heroCornerLogo{position:relative;top:auto;left:auto;transform:none}.heroCornerLogo a{display:block;line-height:0;opacity:0;animation:photoIn .6s ease-out .2s forwards;animation-play-state:paused}body.scene-visible .heroCornerLogo a{animation-play-state:running}.heroCornerLogo img{height:clamp(36px,5.5vw,52px);width:auto;display:block;object-fit:contain}.heroCenter{flex:1 1;min-width:0;min-height:0;display:flex;align-items:flex-end;justify-content:center;width:100%;padding:.5rem 0 2rem;overflow:visible}.heroHeaderInner{width:100%;max-width:min(52em,95vw);min-width:0;overflow-x:hidden;overflow-y:visible;text-align:center;animation:heroTitleIn 1s ease-out .4s both}.heroMobileBlocks{width:100%}.heroBlockLeft,.heroBlockLeftLogo{display:none}.heroBlockRight{width:100%;margin-top:0;margin-bottom:3rem}.heroQr{margin-bottom:1.25rem;line-height:0;opacity:0;animation:photoIn .7s ease-out .35s forwards;animation-play-state:paused}body.scene-visible .heroQr{animation-play-state:running}.heroQr img{display:block;max-width:min(400px,90vw);width:100%;height:auto;object-fit:contain;margin:0 auto}@keyframes photoIn{0%{opacity:0;transform:scale(.92) translateY(-8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes textShimmer{0%,to{opacity:1}50%{opacity:.92}}.heroTagline{font:700 clamp(1.35rem,3.2vw,1.85rem) /1.4 sans-serif;color:#fff;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1rem;animation:textShimmer 4s ease-in-out infinite;text-shadow:0 0 40px rgba(0,0,0,.9),0 0 20px rgba(0,0,0,.8),0 2px 1px rgba(0,0,0,.9),0 4px 8px rgba(0,0,0,.7),0 1px 3px rgba(0,0,0,.6)}.heroSubtitle{font:600 clamp(1.25rem,2.8vw,1.55rem) /1.55 sans-serif;color:#fff;margin-bottom:1.75rem;letter-spacing:.04em;max-width:22em;margin-left:auto;margin-right:auto;animation:textShimmer 4.5s ease-in-out .2s infinite;text-shadow:0 0 32px rgba(0,0,0,.85),0 0 16px rgba(0,0,0,.75),0 2px 2px rgba(0,0,0,.9),0 4px 10px rgba(0,0,0,.65),0 1px 3px rgba(0,0,0,.5)}.heroComing{font:700 1.35rem/1.2 sans-serif;color:#fff;letter-spacing:.22em;margin-top:1.25rem;animation:textShimmer 3.5s ease-in-out .4s infinite;text-shadow:0 0 28px rgba(0,0,0,.8),0 0 12px rgba(0,0,0,.7),0 2px 2px rgba(0,0,0,.9),0 4px 6px rgba(0,0,0,.6),0 1px 2px rgba(0,0,0,.5)}.heroBottom,.heroComing{text-transform:uppercase}.heroBottom{font:500 .8rem/1 sans-serif;color:hsla(0,0%,100%,.85);letter-spacing:.15em;text-shadow:0 1px 3px rgba(0,0,0,.5);max-width:100%;padding:0 .5rem;text-align:center;word-break:break-word}@keyframes heroTitleIn{0%{opacity:0}to{opacity:1}}.heroHeaderInner .word{white-space:nowrap;display:inline-block}.heroHeaderInner .char{display:inline-block;opacity:0;animation:letterIn .4s ease-out forwards;animation-delay:calc(.4s + var(--i, 0) * 45ms);animation-play-state:paused}body.scene-visible .heroHeaderInner .char{animation-play-state:running}@keyframes letterIn{0%{opacity:0;transform:translateY(.3em)}to{opacity:1;transform:translateY(0)}}.introPlayOverlay{position:fixed;inset:0;background-color:#04181b;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:12;animation:introFadeIn .5s ease-out}@keyframes introFadeIn{0%{opacity:0}to{opacity:1}}.introPlayText{margin-bottom:2rem;font:500 .7rem/1.5 sans-serif;color:#c9a84c;letter-spacing:.2em;text-transform:uppercase}.introPlayButton{width:88px;height:88px;border-radius:50%;border:2px solid #c9a227;background:transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:border-color .2s,transform .15s,opacity .2s}.introPlayButton:hover{border-color:#e0b83d;opacity:.95}.introPlayButton:active{transform:scale(.96)}.introPlayButton svg{width:36px;height:36px;margin-left:4px;display:block}.loader{position:fixed;inset:0;background-color:#04181b;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10;transition:opacity .9s ease-out}.loaderRing{position:relative;width:120px;height:120px}.loaderRing>svg:first-child{transform:rotate(-90deg);width:100%;height:100%}.loaderRing .arc{fill:none;stroke:#c9a84c;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .12s ease-out}.loaderPercent{font:600 1.75rem/1.2 sans-serif;letter-spacing:.02em}.loaderPercent,.loaderPlayButton{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#c9a84c}.loaderPlayButton{width:4rem;height:4rem;display:flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;cursor:pointer;transition:color .2s,transform .15s}.loaderPlayButton:hover{color:#e0b83d}.loaderPlayButton:active{transform:translate(-50%,-50%) scale(.96)}.loaderPlayButton svg{width:2.5rem;height:2.5rem;display:block;margin-left:3px}.loaderText{margin-top:2rem;text-align:center;font:500 .7rem/1.5 sans-serif;color:#c9a84c;letter-spacing:.2em;text-transform:uppercase}@media (max-width:768px){.loaderRing{width:90px;height:90px}.loaderPercent{font-size:1.4rem}.loaderPlayButton{width:3.25rem;height:3.25rem}.loaderPlayButton svg{width:2rem;height:2rem;margin-left:2px}.loaderText{margin-top:1.5rem;font-size:.6rem;letter-spacing:.15em}.heroHeader{padding:.75rem 1rem}.heroTopLogos{position:relative;top:auto;left:auto;right:auto;transform:none;width:100%;height:auto;min-height:0;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;flex-shrink:0;margin-top:3.5rem;margin-bottom:.5rem}.heroBlockLeft--top{display:flex;align-items:center;min-height:0}.heroBlockLeft--top .heroBlockLeftLogo{display:block;max-width:150px;width:min(42vw,150px);opacity:0;animation:photoIn .7s ease-out .35s forwards;animation-play-state:paused}.heroBlockLeft--top .heroBlockLeftLogo img{display:block;width:100%;height:auto;object-fit:contain}body.scene-visible .heroBlockLeft--top .heroBlockLeftLogo{animation-play-state:running}.heroCornerLogo img{height:40px;width:auto}.heroHeaderInner{width:100%;max-width:100%;margin-top:.5rem}.heroMobileBlocks{display:block;padding-top:0}.heroBlockRight{width:100%;min-width:0;text-align:center;margin-top:0}.heroQr{display:none}.heroQr img{max-width:85vw}.heroTagline{margin-top:.5rem;font-size:1.15rem;letter-spacing:.12em}.heroSubtitle{font-size:1.05rem;line-height:1.5}.heroComing{font-size:1rem;letter-spacing:.16em}.heroBottom{font-size:.65rem;letter-spacing:.08em;padding:0 .25rem}.soundToggle{top:.75rem;right:.75rem;width:44px;height:44px}.soundToggle svg{width:20px;height:20px}}