#main [data-mgmfw-homepage-banner],
#main .sm-intro[data-mgmfw-homepage-banner] {
  --mgmfw-homepage-photo-height: clamp(365px, 33.125vw, 670px);
  grid-template: "photo" var(--mgmfw-homepage-photo-height) "copy" auto / minmax(0, 1fr);
  overflow: hidden;
  background: #091624;
}

#main [data-mgmfw-outer] > [data-mgmfw-homepage-banner] {
  --mgmfw-header-clearance: 0px;
}

#main :is(.custom-campaign:not(.custom-campaign-authored), .sm-intro:has(> h1))[data-mgmfw-homepage-banner] {
  grid-template: "photo" var(--mgmfw-homepage-photo-height) "title" auto "copy" auto / minmax(0, 1fr);
}

#main [data-mgmfw-homepage-banner] > [data-mgmfw-media] {
  height: var(--mgmfw-homepage-photo-height);
  aspect-ratio: auto;
}

#main [data-mgmfw-homepage-banner] [data-mgmfw-image] {
  height: 100%;
  object-fit: cover;
  object-position: right center;
}

#main [data-mgmfw-homepage-banner] > img[data-mgmfw-image] {
  height: var(--mgmfw-homepage-photo-height);
}

#main .mmh-hero[data-mgmfw-homepage-banner] {
  grid-template-columns: minmax(0, 1fr);
  min-height: 0;
}

#main .mmh-hero[data-mgmfw-homepage-banner] > .mmh-photo > figcaption {
  display: none;
}

@media (max-width: 640px) {
  #main [data-mgmfw-homepage-banner],
  #main .sm-intro[data-mgmfw-homepage-banner] {
    --mgmfw-homepage-photo-height: clamp(185px, 55vw, 340px);
  }
}

@media (min-width: 1024px) {
  #main [data-mgmfw-homepage-banner],
  #main .sm-intro[data-mgmfw-homepage-banner] {
    grid-template: "photo" var(--mgmfw-homepage-photo-height) / minmax(0, 1fr);
  }

  #main [data-mgmfw-homepage-banner] > [data-mgmfw-copy] {
    grid-area: photo;
    align-self: center;
    justify-self: start;
    width: min(42%, 620px);
    box-sizing: border-box;
    margin: 0;
    padding: clamp(16px, 3.5vw, 66px) 3vw;
  }

  #main [data-mgmfw-homepage-banner]::after {
    content: "";
    position: absolute;
    z-index: 0;
    inset: var(--mgmfw-header-clearance, 0px) 0 0;
    display: block;
    background: linear-gradient(90deg, rgb(4 9 16 / 60%), rgb(4 9 16 / 18%) 40%, transparent 57%);
    pointer-events: none;
  }

  #main [data-mgmfw-homepage-banner] #sports-medals-title {
    max-width: 100%;
    font: 700 clamp(28px, 4.1vw, 58px)/1.1 var(--mgm-font, Carlito, Arial, sans-serif) !important;
    letter-spacing: normal;
    overflow-wrap: anywhere;
  }

  #main :is(.custom-campaign:not(.custom-campaign-authored), .sm-intro:has(> h1))[data-mgmfw-homepage-banner] {
    grid-template: "title" calc(var(--mgmfw-homepage-photo-height) / 2)
                   "copy" calc(var(--mgmfw-homepage-photo-height) / 2) / minmax(0, 1fr);
  }

  #main :is(.custom-campaign, .sm-intro:has(> h1))[data-mgmfw-homepage-banner] > [data-mgmfw-media] {
    grid-area: 1 / 1 / -1 / 2;
  }

  #main :is(.custom-campaign:not(.custom-campaign-authored), .sm-intro:has(> h1))[data-mgmfw-homepage-banner] > h1 {
    align-self: end;
    justify-self: start;
    width: min(42%, 620px);
    box-sizing: border-box;
    margin: 0;
    padding: 0 3vw;
  }

  #main :is(.custom-campaign:not(.custom-campaign-authored), .sm-intro:has(> h1))[data-mgmfw-homepage-banner] > [data-mgmfw-copy] {
    grid-area: copy;
    align-self: start;
    padding: 16px 3vw 0;
  }
}
