/* Fit the existing immersive design to the available reading area. */
.journey-book{flex-shrink:0;white-space:nowrap}
.journey-brand{flex-shrink:0}
.chapter-nav{max-width:calc(100% - 28px)}
.scene-copy,.stories-layout{min-width:0}
/* Keep the gallery inside its scrollable reading column, including focus-ring padding. */
.stories-gallery{margin-inline:0;scrollbar-width:none}
.stories-gallery::-webkit-scrollbar{display:none}
.story-card-item{min-width:0}
.story-card-caption{overflow:hidden}
.story-card-role{overflow-wrap:normal}
#questions-dialog{max-height:calc(100dvh - 24px);overflow-y:auto}
#james-dialog{width:fit-content;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
#james-video{width:auto;height:min(70dvh,730px);max-width:100%;max-height:calc(100dvh - 190px);margin:auto;object-fit:contain}
.story-dialog-header{max-width:460px;padding:12px 16px}
.story-dialog-header h2{font-size:16px}.story-dialog-header p{font-size:12px}
.story-player-footer{padding:10px 14px}
.story-player-navigation{gap:10px}
.story-dialog-header,.story-player-footer{flex-shrink:0}

@media(max-width:1100px){
 .story-card-role,.story-card-number{display:none}
 .story-card{gap:7px;min-height:62px}
 .story-card-poster{width:30px;height:43px}
 .story-card-name{font-size:12px}
}
@media(max-width:960px){
 .header-note{display:none}
 .chapter-nav{width:min(520px,calc(100% - 28px));justify-content:space-between}
 .chapter-nav a{padding:10px;min-width:38px;justify-content:center;gap:0}
 .nav-title{display:none}
 .chapter-nav a[aria-current] .nav-title{display:inline;margin-left:7px}
}
@media(max-width:700px){
 .journey-header{padding:14px 18px;gap:12px}
 .journey-brand img{width:98px}
 .journey-book{padding:10px 13px;gap:10px;font-size:12px}
 .intro-title,.scene-copy,.scene-copy.copy-left,.scene-copy.copy-right,.route-title,.stories-heading{top:var(--reading-top,94px)}
 .scene-copy{width:86%}
 .intro-title .chapter-kicker{margin-bottom:12px}
 .intro-left{bottom:var(--intro-bottom,130px)}
 .intro-right{bottom:var(--intro-bottom,130px)}
 .intro-left p{font-size:14px}
 .story-shortcut{font-size:13px}
 .chapter-consumer .scene-next{top:auto;bottom:var(--content-bottom,108px)}
 .routing-labels{top:var(--routing-pill-top,49%);gap:7px}
 .routing-endpoints{top:var(--routing-endpoint-top,53%)}
 .routing-labels>span{font-size:12px;padding:9px 8px}
 .route-next{bottom:var(--content-bottom,108px)}
 .answer-action{top:var(--answer-action-top,63svh);max-width:46%}
 .chapter-answer .action-note{top:var(--answer-note-top,75svh);margin:0}
 .journey-primary{top:var(--demo-action-top,50svh);max-width:51%;font-size:13px;padding:12px 15px;gap:8px;white-space:nowrap}
 .demo-duration{top:var(--demo-duration-top,59svh);margin:0}
 .questions-link{top:var(--demo-question-top,64svh);padding:10px 0}
 .story-feature{top:var(--story-feature-top,33svh);left:54%;width:39%}
 .stories-collection{bottom:var(--collection-bottom,108px);padding-top:8px}
 .stories-collection-label{font-size:9px}
 .story-card{padding:5px;gap:5px;min-height:55px}
 .story-card-poster{width:27px;height:38px}
 .story-card-name{font-size:12px}
 .story-feature-watch{min-height:48px;font-size:12px}
 .story-feature-watch small{font-size:10px}
 #james-dialog{width:min(430px,calc(100vw - 20px))}
 #james-video{width:100%;height:auto;max-height:calc(100dvh - 190px)}
}
@media(max-width:700px) and (max-height:700px){
 .intro-title h1{font-size:clamp(29px,8.4vw,38px)}
 .scene-copy h2,.chapter-demo .scene-copy h2,.route-title h2{font-size:clamp(29px,8vw,35px)}
 .scene-copy>p:not(.chapter-kicker),.chapter-demo .scene-copy>p:not(.chapter-kicker),.route-title>p:last-child{font-size:14px;line-height:1.45;margin:12px 0}
 .chapter-kicker,.scene-copy .chapter-kicker{font-size:10px;margin-bottom:10px}
 .stories-heading h2{font-size:28px}
 .stories-heading .chapter-kicker{font-size:9px;margin-bottom:8px}
 .story-quote{font-size:14px;line-height:1.35}
 .story-feature-person{margin-top:8px}
 .story-feature-person>span{display:none}
 .story-feature-watch{margin-top:9px;padding:7px;gap:6px}
 .story-feature-play{width:24px;height:24px;font-size:18px}
 .stories-collection{padding-top:0;border:0}
 .stories-collection-head{margin-bottom:5px}
 .gallery-navigation button{width:27px;height:27px}
 .intro-left p{font-size:13px}.story-shortcut{font-size:12px;padding:5px 0;margin-top:4px}
}
@media(max-width:360px){
 .experience-meta{left:14px;right:14px;font-size:9px}
 .experience-meta button{font-size:9px}
 .chapter-nav a{padding:10px 7px;min-width:30px;font-size:11px}
 .chapter-nav a[aria-current] .nav-title{margin-left:4px}
 .nav-number{font-size:10px}
 .story-card{flex-direction:column;gap:4px;padding:5px 3px}
 .story-card-poster{width:25px;height:32px}.story-card-name{font-size:11px}
 .routing-labels>span{font-size:11px;padding:8px 7px;gap:5px}
 .routing-labels svg{width:14px;height:14px}
 .story-feature-watch{font-size:11px}.story-feature-watch small{font-size:9px}
 .story-feature-play{width:21px;height:21px;font-size:16px}
}

/* Short landscape windows retain the 3D stage, with scrollable reading panels. */
@media(min-width:701px) and (max-height:640px),(min-width:561px) and (max-width:700px) and (max-height:520px){
 .journey-header{padding:4px 4vw}.journey-brand{padding:4px 7px}
 .header-note{display:none}.journey-book{min-height:34px;padding:7px 14px;font-size:12px}
 .chapter-nav{bottom:21px;padding:3px 7px 5px}
 .chapter-nav a{padding:6px 10px;font-size:11px}
 .experience-meta{bottom:4px;font-size:9px}.experience-meta button,.experience-meta span:first-child{font-size:9px}
 .chapter{top:var(--reading-top,64px);bottom:var(--content-bottom,76px);overflow:visible;pointer-events:none}
 .scene-copy,.scene-copy.copy-left,.scene-copy.copy-right,.stories-layout{position:relative;top:auto;transform:none;width:43%;padding-bottom:4px;max-height:var(--reading-height);overflow-y:auto;pointer-events:auto}
 .scene-copy.copy-left{left:6%}.scene-copy.copy-right,.stories-layout{left:53%}
 .scene-copy h2,.stories-heading h2{font-size:28px;line-height:1.06}
 .scene-copy .chapter-kicker,.chapter-kicker{font-size:9px!important;margin-bottom:8px!important}
 .scene-copy>p:not(.chapter-kicker){font-size:13px;line-height:1.4;margin:8px 0}
 .copy-detail{display:none}.scene-next{font-size:13px}
 .journey-primary,.answer-action{font-size:13px;padding:9px 17px;min-height:40px}
 .demo-duration,.action-note{font-size:10px;line-height:1.2;margin-top:5px}.questions-link{margin-top:5px;padding:5px 0;min-height:32px;font-size:12px;line-height:1.4}
 .questions-link span{font-size:15px}
 .intro-title,.route-title{position:relative;top:auto;left:6%;width:43%;text-align:left}
 .intro-title h1,.route-title h2{font-size:28px}
 .intro-title .chapter-kicker{font-size:9px}
 .intro-side{position:relative;bottom:auto;left:6%;width:43%;max-width:none;text-align:left;margin-top:8px}
 .intro-side .tiny-label,.intro-right>p{display:none}.intro-side p{font-size:13px;line-height:1.4;margin:8px 0}
 .intro-right .round-link{font-size:13px}.intro-right .round-link span{width:28px;height:28px}
 .route-title>p:last-child{font-size:13px;line-height:1.4;margin-top:8px}
 .routing-labels{position:relative;top:auto;left:6%;width:43%;transform:none;margin-top:8px;display:flex;flex-wrap:wrap;gap:7px}
 .routing-labels>span{font-size:11px;padding:8px}.routing-labels svg{width:14px;height:14px}
 .routing-endpoints{position:absolute;top:var(--routing-endpoint-top,83px);left:55%;right:7%;font-size:9px}
 .route-next{position:relative;top:auto;bottom:auto;left:6%;transform:none;margin-top:8px}
 .story-quote{font-size:16px;line-height:1.4}.story-feature{margin-top:13px}
 .story-feature-person{margin-top:10px}.story-feature-watch{margin-top:12px}
 .stories-collection{margin-top:16px;padding-top:10px}.chapter-stories .story-demo-link{font-size:12px}
 .story-card-role{display:none}
 .booking-shell-head{padding:12px 60px 12px 18px;gap:14px}.booking-shell-head img{width:80px}
 .booking-shell-head h2{font-size:17px}.booking-shell-head p{font-size:11px}
 .booking-shell-footer{padding:7px 18px;font-size:10px}
}
@media(max-width:360px) and (min-height:521px){
 .story-feature{left:51%;width:42%}
 .story-feature-watch{gap:5px;padding:7px 6px}
 .story-feature-watch small{line-height:1.3}
}
@media(max-height:560px){
 #james-dialog{width:min(600px,calc(100vw - 24px))}
 #james-video{width:100%;height:calc(100dvh - 150px);max-height:none}
 .story-dialog-header{max-width:none;padding:8px 14px}
 .story-dialog-header h2{font-size:14px}.story-dialog-header p{font-size:11px;margin-top:2px}
 .story-player-footer{padding:6px 12px}.story-player-navigation button{padding:7px 10px;min-height:36px}
}

@media(min-width:701px){
 .intro-title,.route-title{top:max(var(--reading-top,120px),min(11vh,148px))}
 .route-next{bottom:var(--content-bottom,120px)}
 .scene-copy,.stories-layout{max-height:var(--reading-height);overflow-y:auto;scrollbar-width:thin;pointer-events:auto}
 /* Preserve scrolling on short displays without a scrollbar beside the stories. */
 .stories-layout{scrollbar-width:none}
 .stories-layout::-webkit-scrollbar{display:none}
}
@media(min-width:701px) and (max-height:640px),(min-width:561px) and (max-width:700px) and (max-height:520px){
 .chapter .intro-title,.chapter .route-title{top:auto}
 .chapter .scene-copy,.chapter .stories-layout{max-height:var(--reading-height);overflow-y:auto;pointer-events:auto}
 .chapter .route-next{bottom:auto}
}

/* Supplied Adlux A mark: retain the light badge and the artwork's square proportions. */
.journey-brand{display:inline-flex;align-items:center;justify-content:center}
.journey-brand img{width:48px;height:48px;object-fit:contain}
.booking-shell-head img{width:44px;height:44px;object-fit:contain;padding:6px;box-sizing:content-box}
@media(max-width:700px),(max-height:640px){
 .journey-brand img{width:44px;height:44px}
}
@media(min-width:701px) and (max-height:640px),(min-width:561px) and (max-width:700px) and (max-height:520px){
 .journey-brand img{width:28px;height:28px}
}
@media(max-width:700px) and (max-height:600px){
 .journey-header{padding:8px 16px;gap:10px}.journey-brand{padding:4px 6px}
 .journey-brand img{width:30px;height:30px}
 .journey-book{min-height:34px;padding:7px 12px;font-size:11px}
 .chapter-nav{bottom:24px;padding:3px 6px 5px}
 .chapter-nav a{padding:7px 6px;font-size:10px}.nav-number{font-size:9px}
 .experience-meta{bottom:5px;font-size:9px}.experience-meta button,.experience-meta span:first-child{font-size:9px}
 .intro-title h1,.scene-copy h2,.chapter-demo .scene-copy h2,.route-title h2,.stories-heading h2{font-size:26px;line-height:1.06}
 .chapter-kicker,.scene-copy .chapter-kicker,.intro-title .chapter-kicker,.stories-heading .chapter-kicker{font-size:9px;margin-bottom:8px}
 .scene-copy>p:not(.chapter-kicker),.chapter-demo .scene-copy>p:not(.chapter-kicker),.route-title>p:last-child{font-size:13px;line-height:1.4;margin:8px 0}
 .intro-left p{font-size:12px;line-height:1.4}.story-shortcut{font-size:11px;padding:4px 0}
 .answer-action,.journey-primary{min-height:40px;padding:9px 12px;font-size:12px}
 .chapter-answer .action-note,.demo-duration{font-size:9px;line-height:1.3}
 .questions-link{min-height:32px;padding:5px 0;font-size:11px}
 .story-quote{font-size:13px;line-height:1.35}.story-feature-person{margin-top:6px}
 .story-feature-person strong{font-size:13px}
 .story-feature-watch{min-height:44px;margin-top:7px;padding:6px;font-size:11px}
 .story-feature-watch small{font-size:9px}.story-feature-play{width:22px;height:22px;font-size:17px}
 .stories-collection-head{margin-bottom:4px}.gallery-navigation button{width:24px;height:24px}
 .story-card{min-height:48px;padding:4px;gap:4px}.story-card-poster{width:23px;height:31px}
 .story-card-name{font-size:10px}
}

/* Keep controls intact when their labels wrap or the browser chrome reduces height. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
.questions-link{display:inline-flex;align-items:center;gap:10px}
.questions-link span{padding-left:0;flex-shrink:0}
@media(max-width:700px){
 .story-feature{overflow-y:auto;scrollbar-width:none;pointer-events:auto}
 .story-feature::-webkit-scrollbar{display:none}
 .questions-link{max-width:51%;gap:6px;white-space:nowrap}
}

/* Narrow landscape shares the two-column stage, without portrait viewport offsets. */
@media(min-width:561px) and (max-width:700px) and (max-height:520px){
 .journey-header{padding:4px 4vw}.journey-brand{padding:4px 7px}
 .journey-brand img{width:28px;height:28px}
 .journey-book{min-height:34px;padding:7px 14px;font-size:12px}
 .chapter-nav{bottom:21px;padding:3px 7px 5px}
 .chapter-nav a{padding:6px 10px;font-size:11px}.nav-number{font-size:10px}
 .experience-meta{bottom:4px}
 .chapter .scene-copy,.chapter .stories-layout{position:relative;inset:auto;transform:none;width:43%;max-width:none;max-height:var(--reading-height);overflow-y:auto;pointer-events:auto}
 .chapter .scene-copy.copy-left{left:6%}.chapter .scene-copy.copy-right,.chapter .stories-layout{left:53%}
 .chapter .scene-copy h2{font-size:28px;line-height:1.06}
 .scene-copy h2 br,.chapter-answer .scene-copy>p:not(.chapter-kicker) br{display:initial}
 .scene-copy h2 em{display:inline;margin:0}
 .chapter .scene-copy>p:not(.chapter-kicker){font-size:13px;line-height:1.4;margin:8px 0;max-width:100%}
 .chapter .scene-next:not(.route-next),.chapter .answer-action,.chapter .action-note,.chapter .journey-primary,.chapter .demo-duration,.chapter .questions-link{position:static;inset:auto;transform:none;max-width:100%}
 .journey-primary,.answer-action{min-height:40px;padding:9px 17px;font-size:13px}
 .chapter .action-note,.demo-duration{font-size:10px;line-height:1.2;margin-top:5px}
 .questions-link{min-height:32px;margin-top:5px;padding:5px 0;font-size:12px;line-height:1.4;gap:10px}
 .questions-link span{font-size:15px}
 .chapter .intro-title,.chapter .route-title{position:relative;inset:auto;left:6%;width:43%;text-align:left}
 .intro-title h1,.route-title h2{font-size:28px}
 .intro-side{position:relative;inset:auto;left:6%;width:43%;max-width:none;margin-top:8px;text-align:left}
 .intro-side p{font-size:13px;line-height:1.4;margin:8px 0}
 .intro-right .round-link{font-size:13px;gap:12px}.intro-right .round-link span{width:28px;height:28px}
 .routing-labels{position:relative;inset:auto;left:6%;width:43%;transform:none;margin-top:8px;flex-wrap:wrap;gap:7px;justify-content:flex-start}
 .routing-endpoints{top:0;bottom:auto;left:55%;right:7%;font-size:9px}
 .chapter .route-next{position:relative;inset:auto;left:6%;transform:none;margin-top:8px}
 .chapter .stories-heading,.chapter .story-feature,.chapter .stories-collection{position:static;inset:auto;width:auto;max-width:none;transform:none}
 .stories-heading h2 br{display:initial}.stories-heading h2 em{display:inline;margin:0}
}

/* Keep story selection visible; longer quotes scroll within the middle of the panel. */
@media(min-width:701px) and (max-height:640px),(min-width:561px) and (max-width:700px) and (max-height:520px){
 .chapter-stories .stories-layout{display:grid;grid-template-rows:auto minmax(84px,1fr) auto;gap:4px;height:var(--reading-height);padding-bottom:4px;overflow-y:auto;scrollbar-width:none}
 .chapter-stories .stories-layout::-webkit-scrollbar{display:none}
 .stories-heading h2{font-size:26px;line-height:1.06}
 .stories-heading .chapter-kicker{margin-bottom:6px!important}
 .chapter-stories .story-feature{display:grid;grid-template-columns:minmax(0,1fr) auto;align-content:start;gap:6px 8px;min-height:0;margin:0;overflow-y:auto;scrollbar-width:none;pointer-events:auto}
 .chapter-stories .story-feature::-webkit-scrollbar{display:none}
 .story-quote{grid-column:1 / -1;font-size:14px;line-height:1.4}
 #story-quote-full{display:none}#story-quote-short{display:inline}
 .story-feature-person{align-self:center;margin:0;display:block}
 .story-feature-person strong{font-size:14px}.story-feature-person>span{display:none}
 .story-feature-watch{width:auto;min-height:40px;margin:0;padding:6px 8px;gap:7px;font-size:12px}
 .story-feature-watch small{font-size:10px;line-height:1.3;margin-top:2px}
 .story-feature-play{width:24px;height:24px;font-size:18px}
 .chapter-stories .stories-collection{margin:0;padding-top:4px;border-top:1px solid #759db836}
 .stories-collection-head{margin-bottom:3px;gap:8px}
 .stories-collection-label{font-size:9px}
 .gallery-navigation{gap:8px}.gallery-navigation button{width:24px;height:24px}
 .gallery-navigation span{font-size:10px}
 .stories-gallery{gap:7px;padding:3px}
 .story-card-item{flex-basis:calc((100% - 14px)/3);min-width:0}
 .story-card{min-height:44px;padding:4px;gap:5px}
 .story-card-poster{width:23px;height:31px}.story-card-name{font-size:11px}
 .chapter-stories .story-demo-link{display:none}
}

@media(min-width:701px) and (max-height:640px),(min-width:561px) and (max-width:700px) and (max-height:520px){
 .chapter .scene-copy{scrollbar-width:none}
 .chapter .scene-copy::-webkit-scrollbar{display:none}
}
