/* SITE 024 / laboratory only / non-destructive banner geometry
   Desktop source is existing 2560x440 panorama assembled from 28/10 original 2171x724.
   Mobile uses pixel-exact 1400x440 crop of that same panorama, including whole coach and Basilica.
   No bus re-render, replacement, stretch, or transforms. */
@media (min-width:1025px) {
  body.on-home .home-phase1 .hero-picture img {
    width:100%!important;height:100%!important;
    object-fit:cover!important;object-position:right center!important;
    transform:none!important;
  }
}
/* Tablet and mobile: the image has its own row so content can never obscure the coach/Basilica. */
@media (max-width:1024px) {
  body.on-home .home-phase1.home-hero {
    height:auto!important;min-height:0!important;
    display:flex!important;flex-direction:column!important;
    isolation:isolate!important;background:#090e15!important;
  }
  body.on-home .home-phase1 .home-photo-reference {
    display:block!important;position:relative!important;inset:auto!important;z-index:0!important;
    width:100%!important;height:auto!important;min-height:130px!important;aspect-ratio:1400/440!important;
    flex:0 0 auto!important;overflow:hidden!important;background:#090e15!important;
  }
  body.on-home .home-phase1 .hero-picture {
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important
  }
  body.on-home .home-phase1 .hero-picture img{
    position:absolute!important;inset:0!important;width:100%!important;height:100%!important;
    object-fit:contain!important;object-position:center center!important;transform:none!important;
  }
  body.on-home .home-phase1 .hero-picture::after{
    background:linear-gradient(0deg,#090e15 0%,transparent 12%)!important;
  }
  body.on-home .home-phase1 .hero-body{
    position:relative!important;z-index:2!important;min-height:0!important;height:auto!important;
    padding-top:clamp(12px,2.8vw,22px)!important;padding-bottom:22px!important;
    max-width:100%!important;margin-left:auto!important;margin-right:auto!important;
  }
  body.on-home .home-phase1 .hero-body .page-title{
    margin-top:8px!important;font-size:clamp(30px,5vw,44px)!important;line-height:1.08!important;
  }
  body.on-home .home-phase1 .home-mobile-shortcuts{
    position:relative!important;inset:auto!important;left:auto!important;bottom:auto!important;
    transform:none!important;margin-left:auto!important;margin-right:auto!important;
  }
}
/* Full-width internal panoramic headers: height stays proportional to panorama width. */
@media(min-width:1025px) {
  body:not(.on-home) .internal-hero,
  body:not(.on-home) .trip-page-header {
    box-sizing:border-box!important;min-height:clamp(244px,17.8vw,350px)!important;
    height:auto!important;display:flex!important;align-items:center!important;
    background-color:#090e15!important;
    background-image:linear-gradient(90deg,rgba(5,9,16,.98) 0%,rgba(5,9,16,.91) 23%,rgba(5,9,16,.62) 40%,rgba(5,9,16,.10) 71%),url('../official/hero-aparecida-generated-2560x440-live022.jpg')!important;
    background-size:100% 100%,cover!important;background-position:center,right center!important;
    background-repeat:no-repeat!important;
  }
}
/* Whole coach and cathedral on separate photo strip in narrower internal headers. */
@media(max-width:1024px) {
  body:not(.on-home) .internal-hero,
  body:not(.on-home) .trip-page-header {
    box-sizing:border-box!important;min-height:0!important;height:auto!important;display:block!important;
    padding:26px 0 clamp(127px,31.5vw,251px)!important;
    background-color:#090e15!important;
    background-image:linear-gradient(180deg,#090e15 0%,#090e15 31%,transparent 47%),url('../official/hero-aparecida-recorte-mobile-live024.png')!important;
    background-size:100% 100%,100% auto!important;
    background-position:center center,center bottom!important;
    background-repeat:no-repeat!important;
  }
  body:not(.on-home) .internal-hero>.wrap,
  body:not(.on-home) .trip-page-header>.wrap {
    padding-top:0!important;padding-bottom:0!important
  }
  body:not(.on-home) .internal-hero .page-title,
  body:not(.on-home) .trip-page-header h1 {
    font-size:clamp(27px,5vw,45px)!important;max-width:100%!important
  }
  body:not(.on-home) .internal-hero .intro {
    font-size:clamp(12px,1.8vw,16px)!important
  }
}
/* Deliberately untouched: .trip-detail-hero and .trip-cover, preserving destination-specific photos. */

/* Ultra-wide desktop: match the measured panoramic target (~5.5:1), without stretching. */
@media(min-width:1700px) {
  body.on-home .home-phase1.home-hero {
    height:clamp(345px,19vw,365px)!important;
    min-height:0!important;
  }
}

/* The picture wrapper must fill its measured banner, not shrink-wrap the source. */
body.on-home .home-phase1 .hero-picture picture{
  display:block!important;position:absolute!important;inset:0!important;
  width:100%!important;height:100%!important;
}

/* Override inherited 29% left offset from historical site.css;
   the artwork now fills the actual hero container on desktop too. */
body.on-home .home-phase1 .hero-picture {
  position:absolute!important;inset:0!important;
  top:0!important;right:0!important;bottom:0!important;left:0!important;
  width:100%!important;height:100%!important;
}
