.duo-section{padding:100px 0 112px}
.duo-heading{max-width:800px;margin:0 auto 48px;text-align:center}
.duo-heading h2{font-size:clamp(36px,5.5vw,72px);line-height:1.04;letter-spacing:-.045em;margin:0 0 24px}
.duo-heading h2 span{color:var(--muted,#a5bac9)}
.duo-heading p{max-width:540px;margin:auto;font-size:20px;line-height:1.5;color:var(--muted,#a5bac9)}
.duo-film{position:relative;isolation:isolate;overflow:hidden;border-radius:32px;background:transparent;aspect-ratio:1260/700;margin:0}
.duo-model{position:absolute;inset:0;width:100%;height:100%;display:block;border:0;padding:0;margin:0;background:transparent;border-radius:24px;appearance:none}
.duo-model.is-ready{cursor:pointer}
.duo-model:focus-visible{outline:3px solid #e8a678;outline-offset:-4px}
.duo-model canvas{visibility:hidden}.duo-model.is-ready canvas{visibility:visible}
.duo-model canvas,.duo-poster{display:block;width:100%;height:100%;object-fit:contain}.duo-poster{position:absolute;inset:0}.duo-model.is-ready .duo-poster{display:none}
.duo-caption{margin:18px 0 0;text-align:center;font-size:14px;color:var(--muted,#a5bac9)}
@media(max-width:700px){.duo-section{padding:72px 0}.duo-heading{margin-bottom:32px}.duo-heading p{font-size:18px;max-width:320px}.duo-film{aspect-ratio:1.08;border-radius:24px}.duo-caption{font-size:12px}}

/* The folding map follows the queue copy, centered at 60% width on desktop. */
.ferry-landing .queue-cinema{display:flex;flex-direction:column;gap:48px;padding:32px 0 96px}
.queue-cinema .duo-film{flex:none;width:100%;aspect-ratio:18/14.5;border-radius:0}
.ferry-landing .queue-cinema .queue-caption{order:0;width:min(1180px,calc(100% - 96px));max-width:none}
.queue-cinema .queue-caption h2{max-width:700px;margin-bottom:40px}
.ferry-landing .queue-caption .queue-features > article{border:0;padding-top:0}
.ferry-landing .queue-caption .queue-features{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
@media(min-width:701px){
  .queue-cinema .duo-film{width:60%;margin-inline:auto;overflow:visible}
}
@media(max-width:700px){
  .ferry-landing .queue-cinema{padding:20px 0 64px;gap:40px}
  .ferry-landing .queue-cinema .queue-caption{width:calc(100% - var(--mobile-gutter)*2)}
  .ferry-landing .queue-caption .queue-features{grid-template-columns:1fr;gap:32px}
  .queue-cinema .duo-film{aspect-ratio:1.08}
}
