/* Native film scene: scroll fades the invitation, time plays the film. */
.film-scroll{height:340svh;position:relative;background:#10251f;color:#f9f0d9}
.film-sticky{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;background:#08120f}
.film-backdrop{position:absolute;inset:-30px;background:linear-gradient(#07130a99,#07130aaa),url('/assets/explorer-kids-film-poster-hd.jpg') center/cover;filter:blur(25px);opacity:.65;z-index:-1}
.film-sticky video,.film-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}
.film-poster{z-index:1;transition:opacity .8s;pointer-events:none}
.has-film .film-poster{opacity:0}
.film-shade{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(#06130c44,transparent 25%,transparent 70%,#06130c66)}
.film-title{position:absolute;inset:0;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;opacity:var(--film-title-opacity,1);transition:opacity .12s linear;background:#071b164d;text-shadow:0 3px 30px #0009;pointer-events:none}
.film-title span{font:400 clamp(17px,1.6vw,26px)/1.5 'Avenir Next',Avenir,sans-serif;letter-spacing:.02em;margin-bottom:16px}
.film-title strong{font:400 clamp(66px,8.5vw,136px)/1.04 Explorer,Georgia,serif;letter-spacing:-.04em;color:#fff0ce}
.film-actions{position:absolute;z-index:4;bottom:max(28px,env(safe-area-inset-bottom));right:4vw;display:flex;gap:12px;align-items:center;opacity:0;transition:opacity .5s;visibility:hidden}
.film-revealed .film-actions{opacity:1;visibility:visible}
.film-actions button{display:flex;align-items:center;gap:9px;min-height:44px;border:1px solid #efdfbd66;border-radius:30px;background:#10281f88;color:#fff4db;padding:10px 18px;font-size:12px;backdrop-filter:blur(12px)}
.film-actions button:focus-visible{outline:2px solid #f7d99b;outline-offset:4px}
.film-sound svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
.film-sound .sound-wave{display:none}.sound-on .film-sound .sound-wave{display:block}.sound-on .film-sound .sound-off{display:none}
body.is-film-active .linky-widget{visibility:hidden;pointer-events:none}
@media(max-width:760px){.film-scroll{height:300svh}.film-title{padding:22px}.film-title span{font-size:16px;margin-bottom:10px}.film-title strong{font-size:clamp(52px,14vw,82px)}.film-actions{right:20px;bottom:max(24px,env(safe-area-inset-bottom))}.film-actions button{font-size:12px;padding:10px 15px}.film-backdrop{opacity:.8}}
@media(prefers-reduced-motion:reduce){.film-scroll{height:190svh}.film-title,.film-poster,.film-actions{transition:none}}

/* One swipe changes the artwork, story and atmosphere together. */
.pack-carousel{padding:0;background:#17382e;transition:background-color 1s ease;isolation:isolate}
.pack-carousel[data-active-pack=city]{background:#593524}.pack-carousel[data-active-pack=indoor]{background:#142f42}
.pack-atmosphere{position:absolute;inset:0;pointer-events:none;z-index:-1;opacity:0;transition:opacity 1.1s ease;background-position:center 28%;background-size:cover}
.pack-atmosphere-outdoor{background-image:linear-gradient(#17382ef2,#17382ee8),url('/assets/world-outdoor.webp')}
.pack-atmosphere-city{background-image:linear-gradient(#593524ef,#452a21ed),url('/assets/world-city.webp')}
.pack-atmosphere-indoor{background-image:linear-gradient(#142f42ed,#102939ee),url('/assets/world-indoor.webp')}
[data-active-pack=outdoor] .pack-atmosphere-outdoor,[data-active-pack=city] .pack-atmosphere-city,[data-active-pack=indoor] .pack-atmosphere-indoor{opacity:1}
.pack-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;cursor:grab;outline-offset:-5px}
.pack-track::-webkit-scrollbar{display:none}.pack-track:focus-visible{outline:2px solid #ecd2a2}
.pack-track.is-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}
.pack-slide{flex:0 0 100%;width:100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;padding:100px 7vw 50px}
.pack-slide .sales-layout{gap:8%;align-items:start}.pack-slide .sales-art{align-self:start}
.pack-slide .sales-details h3{font-size:clamp(38px,3.8vw,55px)}
.pack-slide .sales-art>img{height:440px;pointer-events:none}.pack-slide .sales-intro{margin-bottom:65px}
.pack-slide .sales-intro h2{font-size:clamp(48px,5.2vw,80px)}
.pack-navigation{display:flex;align-items:center;justify-content:center;gap:20px;margin:25px auto 0}
.pack-navigation>button{width:38px;height:38px;border:1px solid #d6bf8855;border-radius:50%;font-size:26px;line-height:1;color:#f5e4c3;transition:background .2s}
.pack-navigation button:hover{background:#e3c18422}.pack-navigation button:focus-visible{outline:2px solid #eed7a3;outline-offset:3px}
.pack-dots{display:flex;gap:6px;align-items:center}.pack-dots button{width:30px;height:38px;position:relative;padding:0}
.pack-dots button:before{content:'';width:7px;height:7px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:20px;background:#e1cea966;transition:width .4s,background .4s}
.pack-dots button[aria-current=true]:before{width:23px;background:#e9ca88}
.sales-art .pack-swipe-hint{font-size:12px!important;color:#ddcaa6;letter-spacing:.025em;margin:10px 0 0}
.pack-carousel .mission-peeks{margin-top:55px}.pack-carousel>.age-path{margin:15px auto 0;padding:35px 0 65px;width:86%}
@media(max-width:1100px) and (min-width:761px){.pack-slide{padding-inline:5vw}.pack-slide .sales-art>img{height:380px}.pack-slide .pack-inclusions>div{grid-template-columns:110px 1fr}}
@media(max-width:760px){.pack-slide{padding:65px 26px 35px}.pack-slide .sales-intro{text-align:left;margin-bottom:32px}.pack-slide .sales-intro h2{font-size:44px}.pack-slide .sales-layout{gap:35px}.pack-slide .sales-art>img{height:335px;margin-bottom:24px}.pack-slide .sales-art>span{font-size:33px}.pack-slide .sales-details h3{font-size:39px}.pack-slide .sales-details>p:not(.eyebrow){margin:22px 0}.pack-navigation{margin-top:15px}.pack-slide .mission-peeks{margin-top:35px}.pack-carousel>.age-path{padding-bottom:45px}.pack-carousel .pack-inclusions>div{grid-template-columns:105px 1fr}.pack-carousel .pack-inclusions dt{font-size:22px}.pack-carousel .pack-inclusions dd{font-size:13px}}
@media(prefers-reduced-motion:reduce){.pack-carousel,.pack-atmosphere,.pack-dots button:before{transition:none}}

/* Keep the opening invitation beside the emerging card, with room to rise. */
@media(min-width:761px) and (min-height:521px){.unpack-copy h2{font-size:clamp(56px,5.8vw,88px)}}
@media(max-width:760px){
 .unpack-copy{top:var(--opening-copy-top,13svh)}
 .unpack-copy h2{font-size:clamp(35px,10.5vw,48px);line-height:1.05}
 .unpack-copy>p:last-child{max-width:360px}
}
@media(max-width:760px) and (max-height:650px){.unpack-copy h2{font-size:clamp(33px,9.8vw,42px)}}
