/* One canonical hero media layout. The other stylesheets contain only art direction. */
.hero-cinema .hero-film{position:absolute;inset:0;overflow:hidden;z-index:0;pointer-events:none}
.hero-cinema .hero-film-poster{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center 45%;opacity:1;transition:opacity .45s ease;pointer-events:none}
.hero-cinema .hero-yt{position:absolute;inset:0;width:100%;height:100%;z-index:1;overflow:hidden;opacity:0;transition:opacity .45s ease;pointer-events:none}
.hero-cinema .hero-yt iframe,
.hero-cinema .hero-yt iframe#sn-yt-background{
 position:absolute!important;top:50%!important;left:50%!important;
 right:auto!important;bottom:auto!important;
 width:var(--sn-video-width,1600px)!important;
 height:var(--sn-video-height,900px)!important;
 min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;
 transform:translate(-50%,-50%)!important;
 display:block!important;border:0!important;pointer-events:none!important;
}
.hero-cinema .hero-yt video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;pointer-events:none}
body.hero-is-playing .hero-cinema .hero-film-poster{opacity:0}
body.hero-is-playing .hero-cinema .hero-yt{opacity:1}
.hero-cinema .hero-vignette{pointer-events:none}
/* Labels remain readable without forcing the YouTube player into the wrong position. */
.video-caption{align-items:flex-start;gap:14px;min-height:86px}
.video-description{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.video-description .video-category{font-size:9px;line-height:1.2;color:#ff666d;letter-spacing:.16em;font-weight:800;text-transform:uppercase}
.video-description .video-title{font-size:13px;line-height:1.45;color:#f5f2f2;font-weight:800;overflow-wrap:anywhere}
.video-caption>a{align-self:center;flex:0 0 auto}
@media(max-width:760px){
 .video-caption{min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:12px;padding:15px}
 .video-description .video-title{font-size:15px;line-height:1.45}
 .video-description .video-category{font-size:10px}
 .video-caption>a{align-self:flex-start;font-size:10px;letter-spacing:.03em;padding-top:5px}
}
@media(prefers-reduced-motion:reduce){
 .hero-cinema .hero-yt{display:none!important}
 .hero-cinema .hero-film-poster{opacity:1!important;transition:none!important}
}

/* Prevent poster graphics appearing over the playing video on all viewport sizes. */
.hero-cinema .hero-film-poster{z-index:0}
.hero-cinema .hero-yt{z-index:2;isolation:isolate}
.hero-cinema .hero-red-light{z-index:3;opacity:.22}
.hero-cinema .hero-yt iframe{will-change:transform;transform-origin:center center!important}
/* Compact controls and stable SVG icons on Safari/iPhone. */
.ui-icon{display:inline-block;flex:0 0 auto;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}
.navbrand .nav-sun{width:31px;height:31px;object-fit:cover;display:block;background:#0b0b0d;border-radius:7px}
@media(max-width:760px){.navbrand .nav-sun{width:27px;height:27px}.video-caption .video-title{overflow-wrap:anywhere}.video-caption>a .ui-icon{height:14px;width:14px}}
@media(max-width:380px){.navbrand .nav-sun{width:23px;height:23px}}
