/* One directed hero sequence. Scroll moves artwork, never venue navigation. */
.hero-sequence{position:relative;height:1450px}
.hero-cinematic{position:sticky;top:90px;min-height:620px;padding-bottom:68px;overflow:hidden}
.hero-cinematic .hero-visual{height:510px;isolation:isolate;border:1px solid #4979a555}
.hero-cinematic .hero-visual>img{will-change:transform}
.hero-scene-layers{position:absolute;inset:0;pointer-events:none;z-index:0;overflow:hidden}
.hero-second-scene{position:absolute;width:100%;height:100%;object-fit:cover;filter:brightness(.65);will-change:clip-path,transform}
.hero-cinematic .hero-caption,.hero-cinematic .hero-stamp,.hero-cinematic .hero-credit,.hero-cinematic .hero-index{z-index:3}
.hero-cinematic .image-scrim{z-index:2}
.hero-scene-word{position:absolute;top:32%;right:-60px;font:700 150px/.8 var(--display);color:white;letter-spacing:-.03em;will-change:transform;opacity:.15}
.hero-reticle{position:absolute;left:20%;top:17%;width:240px;height:240px;border:1px solid #b8dcff70;border-radius:50%;outline:1px dashed #b8dcff50;outline-offset:17px}
.hero-reticle::before,.hero-reticle::after{content:'';position:absolute;background:#a6d4ff80;left:50%;top:-24px;width:1px;height:288px}.hero-reticle::after{transform:rotate(90deg)}
.hero-scene-corners{position:absolute;inset:34px;border:1px solid #afd7ff40;clip-path:polygon(0 0,18% 0,18% 1%,1% 1%,1% 18%,0 18%,0 0,100% 0,100% 18%,99% 18%,99% 1%,82% 1%,82% 0,100% 0,100% 100%,82% 100%,82% 99%,99% 99%,99% 82%,100% 82%,100% 100%,0 100%,0 82%,1% 82%,1% 99%,18% 99%,18% 100%,0 100%)}
.cinematic-meter{position:absolute;bottom:24px;left:0;right:0;display:flex;align-items:center;gap:20px;font-size:9px;letter-spacing:.13em;color:var(--muted)}
.scene-number{color:#8ac2ff;font-weight:700}.scene-label{min-width:145px}.cinematic-meter i{height:2px;background:var(--line);flex:1;overflow:hidden}.cinematic-meter b{display:block;height:100%;background:#318dff;transform-origin:left}
.gaming-motion-card{position:relative;isolation:isolate;transition:border-color .25s,box-shadow .25s;background-clip:padding-box}
.gaming-motion-card::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:2;background:linear-gradient(115deg,transparent 25%,#87bfff1c 45%,#d8edff26 50%,transparent 65%);background-size:250% 100%;background-position:150% 0;opacity:0;transition:background-position .75s ease,opacity .25s}
.venue-photo img,.sim-game-art svg{transition:transform .65s cubic-bezier(.16,1,.3,1),filter .4s}
@media(hover:hover){.gaming-motion-card:hover::after{opacity:1;background-position:-80% 0}.gaming-motion-card:hover{box-shadow:0 14px 36px #0005,inset 0 2px #479cff;border-color:#479cff;transform:none}.venue-card:hover .venue-photo img{transform:scale(1.09)}.sim-game-card:hover .sim-game-art svg{transform:scale(1.2) rotate(-10deg);filter:drop-shadow(0 0 12px #318dff)}.sim-item-card:hover .sim-item-card-top svg{animation:gz-icon-ready .5s ease both}}
@keyframes gz-icon-ready{0%{transform:scale(1)}50%{transform:scale(1.2) rotate(-8deg)}100%{transform:scale(1)}}
.gaming-motion-card:focus-within::after{opacity:0}
@media(max-width:850px){.hero-sequence{height:1250px}.hero-cinematic{top:75px}.hero-cinematic .hero-visual{height:440px}.hero-reticle{left:10%;width:200px;height:200px}.hero-reticle::before,.hero-reticle::after{height:248px}}
@media(max-width:650px){.hero-sequence{height:auto;padding-bottom:280px}.hero-cinematic{top:-310px;min-height:0;padding-bottom:60px}.hero-cinematic .hero-visual{height:340px}.cinematic-meter{gap:10px;bottom:20px;font-size:8px}.cinematic-meter>span:last-child{display:none}.scene-label{min-width:125px}.hero-scene-word{font-size:120px}.hero-reticle{left:20%;top:15%}}
@media(prefers-reduced-motion:reduce){.hero-sequence{height:auto;padding-bottom:0}.hero-cinematic{position:relative;top:auto}.hero-scene-layers,.cinematic-meter{display:none}.hero-cinematic .hero-visual>img{transform:none!important;will-change:auto}.gaming-motion-card::after{display:none}.gaming-motion-card img,.sim-game-art svg{transform:none!important;filter:none!important}}
