/* NEMAZING V751 — seamless home hero -> footer */
html,body{
  margin:0!important;
  padding:0!important;
}
body.nm-home-page,
body.nm-home-v3,
body:has(main.nm748-home){
  background:#fff!important;
}

/* The home main must be exactly as tall as its hero — no inherited min-height/padding gap. */
body main.nm748-home,
body.nm-home-page main.nm748-home,
body.nm-home-v3 main.nm748-home{
  display:block!important;
  position:relative!important;
  width:100vw!important;
  max-width:none!important;
  min-height:0!important;
  height:auto!important;
  margin:0 0 0 calc(50% - 50vw)!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  overflow:hidden!important;
}

/* Make the artwork fill the entire hero, including its bottom edge. */
body main.nm748-home > .nm748-hero{
  position:relative!important;
  width:100vw!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
body main.nm748-home > .nm748-hero > .nm748-hero-media{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  z-index:0!important;
  overflow:hidden!important;
  background:#fff!important;
}
body main.nm748-home > .nm748-hero > .nm748-hero-media > img{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  border:0!important;
  border-radius:0!important;
}
body main.nm748-home > .nm748-hero > .nm748-hero-inner{
  position:relative!important;
  z-index:2!important;
}
body main.nm748-home > .nm748-hero::before,
body main.nm748-home > .nm748-hero::after{
  display:none!important;
  content:none!important;
}

/* Kill every possible visible spacer after the hero. */
body main.nm748-home::before,
body main.nm748-home::after{
  display:none!important;
  content:none!important;
}
body main.nm748-home + .hero-spacer,
body main.nm748-home + .section-spacer,
body main.nm748-home + .nm-spacer,
body main.nm748-home + .home-divider,
body main.nm748-home + .section-divider{
  display:none!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
}

/* V747 footer had a deliberate 42px top margin. Remove it on the home page. */
body.nm747-footer-ready:has(main.nm748-home) > footer.nm747-footer,
body:has(main.nm748-home) > footer.nm747-footer,
body:has(main.nm748-home) > footer.nm746-footer,
body:has(main.nm748-home) > footer.site-footer{
  margin-top:0!important;
  padding-top:0!important;
  border-top:0!important;
}

/* No legacy pseudo band between main and footer. */
body:has(main.nm748-home) > main.nm748-home ~ footer::before{
  display:none!important;
  content:none!important;
}

@media (max-width:980px){
  body main.nm748-home > .nm748-hero > .nm748-hero-media > img{
    object-position:66% center!important;
  }
}
@media (max-width:640px){
  body main.nm748-home > .nm748-hero > .nm748-hero-media > img{
    object-position:69% center!important;
  }
}
