/* Partner-approved doorway film, 26 October 2026. Scoped to the landing hero. */
.hero.hero-film{height:auto;background:var(--dark)}
.hero-film .hero-stage{position:relative;display:flex;align-items:center;min-height:max(680px,90svh);height:auto;padding:calc(var(--nav-h) + 64px) 6% 112px;perspective:none}
.hero-film .plane-world{transform:none;will-change:auto}
.hero-film .plane-world picture,.hero-film .plane-world img,.hero-film .plane-world video{object-position:center;width:100%;height:100%}
.hero-film .plane-shade{z-index:2;background:linear-gradient(90deg,rgba(8,30,32,.96),rgba(8,30,32,.74) 38%,rgba(8,30,32,.12) 72%,transparent)}
.hero-film .hero-copy{position:relative;inset:auto;z-index:3;width:min(760px,55%);max-width:none;margin:0;padding:0;transform:none;will-change:auto}
.hero-film .hero-ad{max-width:470px;margin-bottom:32px;font-size:11px;letter-spacing:.02em}
.hero-film .hero-title{max-width:none;font-size:clamp(44px,4.8vw,82px);line-height:1.06;letter-spacing:-.045em;text-wrap:initial}
.hero-film .hero-title span{display:block}
.hero-film .hero-lead{max-width:440px;margin-top:26px;font-size:17px;line-height:1.7}
.hero-film .cta-row{margin-top:30px;gap:18px 28px}
.hero-film .hero-cta{background:var(--bright);border-color:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.hero-film .hero-cta::after{content:none}
.hero-film .hero-cta:hover{background:#d6f2ec}
.hero-film .film-controls{position:absolute;right:5%;bottom:24px;z-index:4;display:flex;align-items:center;gap:12px;color:#fff}
.hero-film .film-credit{font-size:10px;line-height:1.4;padding:6px 9px;background:rgba(8,30,32,.88)}
.hero-film .film-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:100px;min-height:44px;padding:10px 16px;border:1px solid #bdd4cf;border-radius:3px;background:rgba(8,30,32,.92);font-size:12px;color:#fff}
.hero-film .film-toggle:hover{background:#194447}
.hero-film .film-toggle:active{transform:translateY(1px)}
.hero-film a:focus-visible,.hero-film button:focus-visible{outline-color:var(--bright)}

/* On phones the full film sits below the copy, retaining the reveal's geometry. */
@media(max-width:900px){
  .hero-film .hero-stage{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:0}
  .hero-film .hero-copy{order:0;width:auto;margin:0;padding:calc(var(--nav-h) + 40px) 6% 40px;background:var(--dark)}
  .hero-film .hero-ad{max-width:470px;margin-bottom:24px;font-size:10px}
  .hero-film .hero-title{font-size:clamp(34px,6.8vw,60px);line-height:1.08}
  .hero-film .hero-lead{max-width:460px;margin-top:20px;font-size:15px;line-height:1.65}
  .hero-film .cta-row{margin-top:24px;gap:12px 24px}
  .hero-film .hero-cta{min-height:50px;padding:14px 22px;font-size:13px}
  .hero-film .plane-world{position:relative;inset:auto;order:1;aspect-ratio:16/9;width:100%}
  .hero-film .plane-shade{display:none}
  .hero-film .film-controls{position:relative;inset:auto;order:2;justify-content:space-between;gap:8px;padding:10px 6%;background:var(--dark)}
  .hero-film .film-credit{padding:0;font-size:9px;background:none}
  .hero-film .film-toggle{font-size:11px;min-width:90px}
}
@media(prefers-reduced-motion:reduce){
  .hero-film .hero-copy{opacity:1;transform:none}
  .hero-film .plane-world video{transition:none}
}
