/* V9: one continuous film, opening into a full-project brand signature. */
.experience-stage{isolation:isolate;background:#081c3e}
.journey-media,.journey-tint,.journey-shade{position:absolute;inset:0;pointer-events:none}
.journey-media{z-index:1;overflow:hidden}.journey-media>img,.journey-media>video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:50% 50%;max-width:none;transform:translate(var(--journey-pan,0px),var(--journey-lift,0px)) scale(var(--journey-scale,1));transform-origin:center}
.journey-media>video{opacity:0}.is-film-ready .journey-media>video{opacity:1}
.journey-tint{z-index:2;background:linear-gradient(180deg,#081c3e 0%,#0b264b 62%,#06172f 100%);opacity:.87}
.journey-shade{z-index:4;opacity:0;background:linear-gradient(0deg,#04132bf5 0%,#04132bbd 18%,#04132b28 42%,transparent 60%,transparent 88%,#04132b33)}
.overture{background:none;z-index:3}.overture::after{box-shadow:inset 0 -100px 90px -50px #04162f}
.has-journey .score-caption{top:12%;font-size:clamp(22px,3.4vw,58px)}
.has-journey .story-copy{z-index:7;bottom:160px;max-width:560px;pointer-events:none}.has-journey .story-copy .eyebrow{font-size:9px;margin-bottom:12px}.has-journey .story-copy h2{font-size:clamp(32px,3.5vw,58px);letter-spacing:-.045em;line-height:1.05}.has-journey .story-copy p{font-size:12px;margin-top:12px;max-width:300px}
.journey-caption{position:absolute;right:var(--gutter);bottom:148px;z-index:7;font-size:8px;color:#d7e5ed;visibility:hidden;opacity:0}
.has-journey .skip-tour{z-index:25;top:10px;right:var(--gutter);background:#081c3e85;font-size:9px;min-height:44px;padding:0 12px}
.overture-top{top:7.5%}.has-journey .story-controls{z-index:20;padding-top:12px;padding-bottom:64px;background:linear-gradient(transparent,#04132bc9)}
.has-journey .experience-tools{bottom:10px;z-index:25}.has-journey .chapter-nav{gap:32px}.has-journey .chapter-nav button{font-size:10px}.has-journey .story-exit{font-size:10px}
.journey-feedback{position:absolute;z-index:26;top:22px;left:var(--gutter);max-width:calc(100% - 200px);padding:12px 16px;background:#081c3ee8;color:#fff;font-size:10px;line-height:1.6}.journey-retry{display:block;min-height:44px;text-decoration:underline;text-underline-offset:4px;color:#76d6df;transition:transform 150ms ease-out,background-color 150ms ease-out}
.journey-disclaimer{margin:0;padding:20px var(--gutter);font-size:10px;line-height:1.7;background:#081c3e;color:#bbd1df;border-top:1px solid #ffffff15}
.has-journey.static-story .experience-stage{margin-bottom:78px;overflow:visible}.has-journey.static-story .story-controls{top:100%;height:78px;padding:16px var(--gutter);background:#081c3e;color:white;opacity:1;visibility:visible}.has-journey.static-story .chapter-nav button{color:#c6dbe8}.has-journey.static-story .chapter-nav button[aria-current=step]{color:#76d6df}.static-story .journey-media{overflow:hidden}.static-story .journey-media>video{display:none}
.static-story .static-chapter .overture,.static-story .static-chapter .hero-bottom{visibility:hidden;opacity:0}.static-story .static-chapter .journey-tint{opacity:0}.static-story .static-chapter .journey-shade,.static-story .static-chapter .story-copy,.static-story .static-chapter .journey-caption{opacity:1;visibility:visible}
.has-journey .story-controls button:focus-visible{outline-color:#76d6df}.is-reduced .journey-retry{transition:none}
@media(hover:hover){.journey-retry:hover{background:#ffffff10}}
@media(prefers-reduced-motion:no-preference){.journey-retry:not(:disabled):active{transform:scale(.96)}}
@media(prefers-reduced-motion:reduce){.journey-retry{transition:none}}
@media(max-width:800px){.has-journey .experience-stage{min-height:610px}.has-journey .chapter-nav{width:100%;justify-content:space-between;gap:14px}.has-journey .story-copy{bottom:154px;max-width:480px}.journey-caption{bottom:127px;left:var(--gutter);right:auto;font-size:7px}.has-journey .story-copy h2{font-size:38px}.has-journey .story-copy p{font-size:11px}.journey-feedback{left:var(--gutter);top:64px;max-width:calc(100% - 48px)}.overture-top{top:8%}.has-journey .story-controls{padding-bottom:62px}.has-journey .skip-tour{top:8px;font-size:8px}.has-journey .experience-tools{bottom:8px}}
@media(max-width:540px){.has-journey .experience-stage{min-height:650px}.has-journey .story-copy{bottom:158px;right:24px}.has-journey .story-copy h2{font-size:35px;max-width:none}.has-journey .story-copy p{font-size:10px;margin-top:10px}.has-journey .chapter-nav button{font-size:9px}.has-journey .chapter-nav button>span{font-size:7px}.journey-caption{bottom:133px;font-size:6.5px}.journey-disclaimer{font-size:9px;padding:16px var(--gutter)}.overture-top{top:8%;max-width:calc(100% - 48px)}.sale-status{font-size:7px}}
@media(max-width:360px){.has-journey .story-copy h2{font-size:29px}.has-journey .chapter-nav{gap:10px}.has-journey .chapter-nav button{font-size:8px}.has-journey .chapter-nav button>span{display:none}}
@media(max-height:650px) and (min-width:801px){.has-journey .experience-stage{min-height:520px}.has-journey .story-copy{bottom:145px}.has-journey .story-copy h2{font-size:36px}.journey-caption{bottom:127px}.overture-top{top:9%}}
/* Nine destinations: three equal-width touch targets per row on small screens. */
@media(min-width:801px) and (max-width:1100px){.has-journey .chapter-nav{gap:18px}}
@media(max-width:800px){
  .has-journey .chapter-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 8px}
  .has-journey .chapter-nav button{justify-content:center;min-width:44px;min-height:44px;white-space:nowrap}
  .has-journey .chapter-nav button>span{display:none}
  .has-journey .story-copy{bottom:254px}
  .journey-caption{bottom:229px}
  .has-journey.static-story .experience-stage{margin-bottom:174px}
  .has-journey.static-story .story-controls{height:174px}
}
.journey-finale{position:absolute;z-index:8;left:var(--gutter);right:var(--gutter);bottom:175px;text-align:center;color:#fff;pointer-events:none}
.finale-brand{display:flex;align-items:center;justify-content:center;gap:24px;opacity:var(--finale-logo,0);transform:translateY(calc((1 - var(--finale-logo,0))*12px));filter:blur(calc((1 - var(--finale-logo,0))*4px))}
.finale-brand>img{width:200px;height:auto;filter:brightness(0) invert(1)}
.finale-divider{height:46px;width:1px;background:#a2d8df70}
.finale-solo{font-size:82px;line-height:1;letter-spacing:-.085em;font-weight:400}.finale-solo>span{color:#79ccd3}
.finale-slogan{margin:18px 0 0;font-size:clamp(28px,3.4vw,54px);line-height:1.15;letter-spacing:-.045em;opacity:var(--finale-slogan,0);transform:translateY(calc((1 - var(--finale-slogan,0))*12px));filter:blur(calc((1 - var(--finale-slogan,0))*4px))}
.has-journey .is-finale .story-copy{visibility:hidden!important;opacity:0!important}
@media(max-width:800px){
  .journey-finale{bottom:252px}
  .finale-brand{gap:16px}.finale-brand>img{width:130px}.finale-divider{height:30px}
  .finale-solo{font-size:54px}.finale-slogan{font-size:27px;margin-top:14px}
}
@media(max-width:360px){.journey-finale{bottom:250px}.finale-brand{gap:12px}.finale-brand>img{width:112px}.finale-solo{font-size:46px}.finale-slogan{font-size:23px;margin-top:12px}}
.static-story .finale-brand,.static-story .finale-slogan{transform:none;filter:none}
