/* Approved covers remain available while the supplied silent videos load. */
.world-motion{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none;opacity:0}
.world-motion.motion-ready{opacity:1}
.world-card .world-motion{z-index:-2}
.world-cover>.world-motion{object-fit:contain}
.page:has(.world-cover).scenic::before,.page:has(.world-cover).scenic::after{display:none}
.world-scene{position:relative;isolation:isolate;display:block;min-height:0;padding:0;overflow:hidden}
.world-cover{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;background:#07142f}
.world-cover>img{width:100%;height:100%;display:block;object-fit:contain}
.world-glow,.world-sparkles,.world-shade{position:absolute;inset:0;pointer-events:none}
.world-glow{background:radial-gradient(ellipse at 70% 55%,#ffe7ac22,transparent 48%);animation:world-breathe 12s ease-in-out infinite;mix-blend-mode:screen}
.world-sparkles i{position:absolute;left:var(--x);top:var(--y);width:5px;height:5px;border-radius:50%;background:#fff4d3;box-shadow:0 0 12px 3px #ffe6afbb;animation:world-sparkle 12s ease-in-out infinite;animation-delay:var(--delay)}
.world-shade{background:linear-gradient(0deg,#07142f,transparent 22%)}
.world-scene>.world-detail{position:relative;max-width:1200px;margin:0 auto;padding:1rem clamp(1rem,5vw,5rem) 2.5rem}
.scene-toggle{position:absolute;right:clamp(1rem,3vw,3rem);top:1rem;z-index:2;min-height:44px;font-size:.875rem;background:#07142fdb}
.scene-paused .world-glow,.scene-paused .world-sparkles i,.scene-hidden .world-glow,.scene-hidden .world-sparkles i{animation-play-state:paused}
@keyframes world-breathe{0%,100%{opacity:.15}50%{opacity:.8}}
@keyframes world-sparkle{0%,100%{opacity:.18;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}70%{opacity:.25;transform:translateY(-2px)}}
@media(max-width:760px){.world-scene{padding:0;min-height:0}.world-scene>.world-detail{padding:1rem 1rem 2rem}.scene-toggle{top:.5rem;right:.5rem;padding:.5rem .7rem;min-height:44px}.world-sparkles i{width:2px;height:2px}}
@media(prefers-reduced-motion:reduce){.world-glow,.world-sparkles i{animation:none}.world-sparkles{opacity:.25}}

/* Entry cards receive their own visible ambient cycle, without blocking taps. */
.world-card .card-light{position:absolute;inset:0;pointer-events:none;z-index:0;background:radial-gradient(circle at 28% 28%,#fff7d0 0 2px,transparent 5px),radial-gradient(circle at 78% 40%,#ffe8b9 0 2px,transparent 5px),radial-gradient(circle at 61% 16%,#fff1ca 0 1px,transparent 4px),radial-gradient(ellipse at 65% 30%,#ffe3a647,transparent 65%);animation:card-shimmer 12s ease-in-out infinite}
.world-card>.number,.world-card>div{position:relative;z-index:1}
.world-card:nth-child(2n) .card-light{animation-delay:-3s}.world-card:nth-child(3n) .card-light{animation-delay:-6s}
@keyframes card-shimmer{0%,100%{opacity:.12}45%{opacity:.85}70%{opacity:.35}}
@media(prefers-reduced-motion:reduce){.world-card .card-light{animation:none;opacity:.25}}
