/* Full-frame cinema: the original film's titles stay visible on every screen. */
.concept-film{margin:0;min-width:0;color:#203b35}
.concept-screen{background:#102421;overflow:hidden}
.concept-film video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#102421}
.concept-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:5px 0;font:12px/1.6 Arial,"PingFang SC",sans-serif}
.concept-title{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.concept-duration{color:#69776e;font-variant-numeric:tabular-nums;font-size:11px}
.concept-controls{display:flex;align-items:center;gap:4px;flex-shrink:0}
.concept-controls[hidden],.concept-status[hidden]{display:none}
.concept-controls button{display:flex;align-items:center;justify-content:center;gap:7px;background:transparent;color:inherit;border:0;border-radius:0;min-width:44px;min-height:44px;padding:9px;font:12px/1.5 Arial,"PingFang SC",sans-serif;cursor:pointer}
.concept-controls button:hover{color:#937344;background:#b5905810}
.concept-controls button:focus-visible{outline:2px solid #b59058;outline-offset:2px}
.concept-controls svg{flex-shrink:0}
.concept-status{font-size:12px;line-height:1.7;padding:8px 0;margin:0}
.concept-status a{text-decoration:underline;text-underline-offset:4px;margin-left:8px}
.concept-screen:fullscreen{display:flex;align-items:center;justify-content:center;background:#000}
.concept-screen:fullscreen video{width:100%;height:100%;max-height:100vh;object-fit:contain}
.nw-film-hero{background:#192f2d;color:#f5f1e9;padding-top:0}
.nw-film-hero .concept-screen{background:#142623}
.nw-film-hero .concept-film video{max-height:calc(100svh - 226px);min-height:240px}
.nw-film-hero .concept-bar{max-width:1440px;margin:0 auto;padding:4px 40px;color:#e2d6bf;border-bottom:1px solid #d4c7af25;min-height:50px}
.nw-film-hero .concept-duration{color:#cfc4ae}
.nw-film-hero .concept-status{color:#f5f1e9;padding:8px 40px}
.nw-film-intro{display:flex;justify-content:space-between;align-items:center;gap:36px;padding-top:28px;padding-bottom:34px}
.nw-film-intro h1{font-size:clamp(27px,2.6vw,40px);line-height:1.45;color:#fff8e9;letter-spacing:.02em;margin:0 0 10px;text-wrap:balance}
.nw-film-intro p{font-size:14px;line-height:1.85;color:#dbdfd4;max-width:54ch;margin:0}
.nw-film-intro .nw-actions{flex-shrink:0;gap:20px;flex-wrap:wrap;justify-content:flex-end}
.nw-film-intro .nw-button{background:#e1c89b;color:#172c2b;border-color:#e1c89b;border-radius:0;font-size:14px;padding:13px 21px}
.nw-film-intro .nw-button:hover{background:#f4dfb8;color:#172c2b}
.nw-film-intro .nw-text-link{color:#f5f1e9;font-size:14px;border-bottom:1px solid #c4ae83;padding:9px 0}
.nw-collection-hero.nw-collection-film{grid-template-columns:.78fr 1.22fr;gap:48px;padding-top:62px;padding-bottom:62px}
.nw-collection-film .concept-film{width:100%}
.nw-collection-film .nw-collection-intro h1{margin-top:26px}
.nw-rail-feature{padding:74px 0;background:#e9ede5}
.nw-rail-feature .nw-way-row{margin-top:0}
.nw-rail-feature .nw-way-copy h2{font-size:clamp(30px,3vw,40px)}
.nw-tailored-feature{padding-top:68px;padding-bottom:72px}
.nw-tailored-feature .nw-way-row{margin-top:0}
.nw-tailored-feature .nw-way-copy h2{font-size:clamp(28px,3vw,38px)}
/* All train itineraries share this caption component; no opaque text backplate. */
.cd-day-gallery figcaption{background:transparent!important;background-image:none!important;box-shadow:none!important;backdrop-filter:none!important;border:0;text-shadow:0 1px 4px #000,0 1px 12px #0009;color:#fff}
@media(max-width:1000px){
 .nw-film-intro{align-items:flex-start;gap:24px}
 .nw-film-intro .nw-actions{max-width:240px;justify-content:flex-start;gap:14px}
 .nw-film-hero .concept-film video{max-height:calc(100svh - 270px)}
 .nw-collection-hero.nw-collection-film{gap:30px}
 .nw-collection-film .concept-bar{flex-wrap:wrap;gap:0}
}
@media(max-width:700px){
 .nw-film-hero .concept-film video{max-height:none;min-height:0;aspect-ratio:16/9;height:auto}
 .nw-film-hero .concept-bar{padding:3px 18px;min-height:48px;gap:4px;flex-wrap:wrap}
 .concept-bar{font-size:11px;gap:5px}
 .concept-title{gap:8px}
 .concept-controls{gap:0}
 .concept-controls button{font-size:11px;padding:8px;gap:5px}
 .nw-film-intro{display:block;padding-top:27px;padding-bottom:34px}
 .nw-film-intro h1{font-size:29px;max-width:15em;margin-bottom:14px}
 .nw-film-intro p{font-size:14px;max-width:40ch}
 .nw-film-intro .nw-actions{max-width:none;margin-top:24px;gap:22px;justify-content:flex-start}
 .nw-film-intro .nw-button{font-size:13px;padding:12px 18px}
 .nw-film-intro .nw-text-link{font-size:13px}
 .nw-collection-hero.nw-collection-film{grid-template-columns:1fr;gap:32px;padding-top:32px;padding-bottom:34px}
 .nw-collection-film .concept-bar{flex-wrap:wrap}
 .nw-rail-feature{padding:48px 0}
 .nw-rail-feature .nw-way-row>.nw-photo{order:0}
 .nw-rail-feature .nw-way-copy{order:1}
 .nw-tailored-feature{padding-top:50px;padding-bottom:30px}
}
@media(prefers-reduced-motion:reduce){.concept-controls button{transition:none}}
