/* A contained campaign film, independent of page scrolling. */
.hero.hero-cinematic{position:relative!important;top:auto!important;width:calc(100% - 48px);max-width:1560px;height:auto!important;min-height:0;aspect-ratio:16/9;max-height:none;margin:0 auto 30px;border-radius:18px;--copy-drift:0px;--copy-opacity:1}
.hero-cinematic:after{display:none}.hero-cinematic .hero-copy{padding:6% 0 110px 6%;width:57%}.hero-cinematic h1{font-size:clamp(58px,6vw,94px);letter-spacing:-3.5px;margin:24px 0}.hero-cinematic .banner-image,.hero-cinematic .banner-video{inset:0;width:100%;height:100%;object-fit:contain;object-position:center;transform:none}.video-ready .banner-video{opacity:1}.banner-feature{bottom:120px}.banner-bottom{bottom:26px}
.store,.hero-cinematic .store{position:relative;overflow:hidden;border:1px solid #85bce360;border-radius:12px;background:linear-gradient(125deg,#132b48,#246ea8);color:#fff;box-shadow:0 8px 24px #265d8b24;transition:translate .3s,box-shadow .3s,background .3s}.store[href*="play.google"],.hero-cinematic .store[href*="play.google"]{background:linear-gradient(120deg,#fff,#e2f4ff);color:#17334d;border-color:#9bc9e9}.store:after{content:"";position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 40%,#ffffff24 50%,transparent 60%);translate:-70% 0;transition:translate .7s;pointer-events:none}.store:hover:after{translate:65% 0}.store:hover{translate:0 -4px;box-shadow:0 14px 32px #265d8b35}.store-icon svg{display:block;width:26px;height:28px}.store b{color:inherit}.store:focus-visible{outline:3px solid #45a9ed;outline-offset:4px}
/* Text arrives in small, readable groups. Images keep a quiet living rhythm. */
.motion-text{opacity:0;translate:0 18px;transition:opacity .85s ease,translate .85s cubic-bezier(.16,1,.3,1);transition-delay:var(--entry-delay,0ms)}.motion-text.motion-seen{opacity:1;translate:0 0}.ambient-image{animation:image-float 8s ease-in-out infinite;animation-delay:var(--float-delay,0s);animation-play-state:paused}.ambient-image.motion-in-view{animation-play-state:running}.step-photo img{scale:1.045;animation-name:photo-drift;animation-duration:10s}.mood-photo{scale:1.045;animation-name:photo-drift;animation-duration:13s}.step-photo-label{animation:label-bob 4s ease-in-out infinite}.step-art.step-photo{position:relative;box-shadow:0 18px 35px #22577c16}.step-photo:before{content:'✧';position:absolute;right:18px;top:15px;z-index:2;color:#fff;font-size:27px;text-shadow:0 2px 12px #1c5379;animation:spark-turn 8s ease-in-out infinite}.mood-photographic:before{content:'';position:absolute;inset:16px;border:1px solid #ffffff65;z-index:1;pointer-events:none;border-radius:8px;animation:frame-glow 5s ease-in-out infinite}.journey-chapter.is-current .journey-copy>*{animation:chapter-arrive .75s both}.journey-chapter.is-current .journey-copy>:nth-child(2){animation-delay:.08s}.journey-chapter.is-current .journey-copy>:nth-child(3){animation-delay:.16s}.journey-chapter.is-current .journey-copy>:nth-child(4){animation-delay:.24s}
@keyframes image-float{0%,100%{translate:0 0}50%{translate:0 -8px}}@keyframes photo-drift{0%,100%{translate:-.5% .4%;scale:1.045}50%{translate:.5% -.4%;scale:1.075}}@keyframes label-bob{50%{translate:0 -4px}}@keyframes spark-turn{50%{rotate:35deg;scale:1.15}}@keyframes frame-glow{50%{border-color:#ffffffbc;box-shadow:inset 0 0 20px #ffffff15}}@keyframes chapter-arrive{from{opacity:0;translate:0 15px}to{opacity:1;translate:0 0}}
.motion-paused .motion-text{opacity:1;translate:none;transition:none}.motion-paused .ambient-image{animation:none;translate:none;scale:1}.motion-paused .step-photo-label,.motion-paused .step-photo:before,.motion-paused .mood-photographic:before{animation:none}
@media(max-width:1100px) and (min-width:761px){.hero-cinematic .hero-copy{padding-top:5%;padding-bottom:90px}.hero-cinematic h1{font-size:60px;margin:18px 0}.hero-cinematic .intro{font-size:12px}.hero-cinematic .store-links{margin-top:20px}.banner-feature{bottom:100px;right:3%}.banner-feature small{font-size:6px}}
@media(max-width:760px){.hero.hero-cinematic{width:calc(100% - 24px);aspect-ratio:auto;display:flex!important;flex-direction:column;border-radius:14px}.hero-cinematic .hero-copy,.scroll-enabled .hero-cinematic .hero-copy{width:100%;padding:32px 7% 25px;flex:0 0 auto}.hero-cinematic h1,.scroll-enabled .hero-cinematic h1{font-size:clamp(49px,13vw,75px);letter-spacing:-2.5px;margin:22px 0}.hero-cinematic .banner-media,.scroll-enabled .hero-cinematic .banner-media{position:relative;inset:auto;order:2;flex:none;aspect-ratio:16/9;min-height:0;width:100%;z-index:0}.hero-cinematic .banner-gradient{display:none}.hero-cinematic .banner-video,.hero-cinematic .banner-image{width:100%;height:100%;object-fit:contain;inset:0}.hero-cinematic .banner-bottom{bottom:12px;z-index:3}.hero-cinematic .banner-edition{display:none}.hero-cinematic .scroll-cue{font-size:6px;background:#eef7fbd9;padding:7px;border-radius:20px}.hero-cinematic .scroll-mouse{display:none}.hero-cinematic .banner-video-control{bottom:15px;right:5%;z-index:4}.hero-cinematic .banner-feature{display:none}.store{min-width:0}.store-icon svg{width:22px}.hero-cinematic .hero-note{font-size:7px}}
@media(prefers-reduced-motion:reduce){.motion-text{opacity:1;translate:none;transition:none}.ambient-image,.step-photo-label,.step-photo:before,.mood-photographic:before,.journey-chapter.is-current .journey-copy>*{animation:none!important;translate:none;scale:1}}
