/* V652 — Full-width premium responsive hero across Mobile / Windows / Mac.
   Fixes the narrow/boxed hero look introduced by contain-mode artwork fitting.
   Uses full-bleed cover media while keeping controls and overlays responsive. */
html,body{max-width:100%;overflow-x:hidden}
body .hero.v456-hero{
  width:100%;
  height:calc(100dvh - var(--v466-header-h,86px))!important;
  min-height:520px!important;
  max-height:none!important;
  padding:0!important;
  background:#05080d!important;
}
@supports not (height:100dvh){
  body .hero.v456-hero{height:calc(100vh - var(--v466-header-h,86px))!important}
}
body .v456-hero .v455-hero-visual.visual{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  background:#05080d!important;
}
body .v456-hero .v455-hero-track{height:100%!important}
body .v456-hero .v455-hero-slide,
body .v456-hero .v455-hero-slide.active{
  background-size:cover!important;
  background-repeat:no-repeat!important;
  background-position:center center!important;
  background-color:#05080d!important;
}
body .v651-home,
body .v651-home .v651-video-wrap,
body .v651-home .v651-video{
  width:100%!important;
  height:100%!important;
}
body .v651-home .v651-video{object-fit:cover!important;background:#05080d!important}
/* Ensure hero overlays stay visible and balanced on wide screens. */
body .v460-side-panel{
  right:max(22px,3.2vw)!important;
  width:clamp(220px,18vw,280px)!important;
  max-height:calc(100% - 40px)!important;
  overflow:auto;
  scrollbar-width:none;
}
body .v460-side-panel::-webkit-scrollbar{display:none}
body .v460-hero-tagline{
  left:max(22px,4vw)!important;
  bottom:32px!important;
  max-width:min(540px,56vw)!important;
}
body .v456-hero .v455-hero-thumbs{
  right:max(22px,4vw)!important;
  bottom:20px!important;
  max-width:min(48vw,700px)!important;
}
body .v456-hero .v455-hero-arrow.prev{left:18px!important}
body .v456-hero .v455-hero-arrow.next{right:18px!important}

/* Small laptops / tablets landscape */
@media (max-width:1180px){
  body .hero.v456-hero{
    min-height:500px!important;
    height:calc(100dvh - var(--v466-header-h,82px))!important;
  }
  body .v460-side-panel{width:220px!important;right:20px!important}
  body .v460-hero-tagline{max-width:58vw!important}
  body .v456-hero .v455-hero-thumbs{max-width:52vw!important}
}

/* Tablet */
@media (max-width:980px){
  body .hero.v456-hero{
    min-height:460px!important;
    height:calc(92dvh - var(--v466-header-h,80px))!important;
  }
  body .v460-side-panel{width:208px!important;right:18px!important}
  body .v460-side-title{font-size:16px!important}
  body .v460-side-title b{font-size:26px!important}
  body .v460-side-title em{font-size:28px!important}
  body .v456-hero .v455-hero-thumbs{max-width:58vw!important}
}

/* Mobile / small tablets */
@media (max-width:760px){
  body .hero.v456-hero{
    height:calc(100svh - var(--v466-header-h,74px))!important;
    min-height:360px!important;
    max-height:none!important;
  }
  body .v456-hero .v455-hero-slide{background-size:cover!important;background-position:center center!important}
  body .v456-hero .v455-hero-arrow{display:none!important}
  body .v460-side-panel{display:none!important}
  body .v460-hero-tagline{
    left:18px!important;
    right:18px!important;
    bottom:70px!important;
    max-width:none!important;
  }
  body .v460-hero-tagline strong{font-size:10px!important;letter-spacing:3.2px!important}
  body .v460-hero-tagline span{font-size:9px!important;letter-spacing:2.9px!important}
  body .v456-hero .v455-hero-thumbs{
    left:18px!important;
    right:18px!important;
    bottom:18px!important;
    max-width:none!important;
    justify-content:flex-start!important;
    overflow-x:auto!important;
    padding:8px 10px!important;
    gap:8px!important;
  }
}

/* Compact phones */
@media (max-width:520px){
  body .hero.v456-hero{
    height:calc(88svh - var(--v466-header-h,72px))!important;
    min-height:320px!important;
  }
  body .v460-hero-tagline{bottom:62px!important}
  body .v460-hero-tagline strong{font-size:9px!important;letter-spacing:2.7px!important}
  body .v460-hero-tagline span{font-size:8px!important;letter-spacing:2.4px!important}
  body .v460-hero-tagline i{width:40px!important;margin-top:10px!important}
  body .v456-hero .v455-hero-thumbs{bottom:14px!important}
}

/* Low-height desktop browsers */
@media (min-width:900px) and (max-height:760px){
  body .hero.v456-hero{
    min-height:440px!important;
    height:calc(100dvh - var(--v466-header-h,86px))!important;
  }
  body .v460-side-panel{transform:translateY(-50%) scale(.92)!important;transform-origin:center right}
  body .v456-hero .v455-hero-thumbs{bottom:14px!important}
}
