/* Camera layer: preserves the current layout, content sequence and inline studio. */
:root{--camera-clearance:96px}
html{scroll-behavior:auto!important;scroll-padding-top:var(--camera-clearance)}
/* Scroll padding is the single anchor offset (Lenis also reads scroll-margin). */
.camera-progress{position:absolute;left:14px;right:14px;bottom:0;height:1px;background:#ffffff26;pointer-events:none;contain:strict}
.camera-progress i{display:block;width:100%;height:100%;background:var(--orange,#ff591f);transform-origin:left;transform:scaleX(0);transition:none;will-change:transform}
.glass-nav a{text-transform:uppercase}
.camera-scroll-ready .reveal{opacity:1!important;transform:none!important}
.camera-scroll-ready #hero-image{transition:none;transform-origin:center}
.camera-shot{position:relative;display:block!important}
.camera-frame{position:relative;margin:0;align-self:start}
@media(min-width:960px) and (min-height:760px){
  /* Fit the whole film + broadcast metadata. Contain preserves every film pixel. */
  .camera-shot .jumbotron-screen #campaign-film{width:100%;height:min(56svh,56.25vw);max-height:none;object-fit:contain;display:block;background:#071722}
  html.camera-scroll-ready .camera-shot[data-camera-pin=true]{min-height:calc(var(--camera-frame-height) + 20svh)}
  html.camera-scroll-ready:not(.motion-off) .camera-shot[data-camera-pin=true]>.camera-frame{position:sticky;top:var(--camera-clearance)}
}
.camera-scroll-ready .section-top:after{transform:scaleX(1)}
.camera-scroll-ready .scroll-clip img{will-change:auto}
html.camera-motion-blocked .ticker-track{animation-play-state:paused!important}
html.motion-off .ticker-track{animation-play-state:paused!important}
html.motion-off .player-card{transition:none!important}
html.motion-off #hero-image{transform:none!important}
html.motion-off .glass-nav::before{display:none}
@media(prefers-reduced-motion:reduce){
  .camera-shot{min-height:0!important}
  .camera-frame{position:relative!important;top:auto!important}
  #hero-image{transform:none!important}
  .player-card{transition:none!important}
  .ticker-track{animation-play-state:paused!important}
}
@media print{
  .camera-shot{min-height:0!important}
  .camera-frame{position:static!important}
  #hero-image{transform:none!important}
  .camera-progress{display:none}
}
