.block-main-collection__banner {
  position: relative;
  display: block;
  overflow: hidden;
  background-color: rgb(0 0 0 / 20%);
}

.block-main-collection__banner-sizer {
  width: 100%;
  height: 100%;
  aspect-ratio: var(--banner-aspect-ratio);
}

@media (max-width: 959px) {
  .block-main-collection__banner-sizer {
    aspect-ratio: var(--mobile-banner-aspect-ratio);
  }
}

.block-main-collection__banner-mask::after {
  position: absolute;
  inset: 0;
  content: "";
  background-color: rgba(var(--mask-color));
}

.block-main-collection__banner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: var(--object-position);
}

.block-main-collection__banner-inner {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  color: rgb(var(--color-text));
}

.block-main-collection__banner-inner a {
  padding-inline-end: 10px;
  color: rgb(var(--color-text));
}

/* USWING collection banners: retain the full photo height and frame each athlete. */
.main-collection-cover .block-main-collection__banner {
  --collection-focal: 85%;
  height: auto;
  min-height: 0;
  aspect-ratio: 3 / 1;
}
.main-collection-cover .block-main-collection__banner-sizer {
  position: absolute;
  inset: 0;
  aspect-ratio: auto;
}
.main-collection-cover .block-main-collection__banner-mask {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  /* The stock parallax layer adds 30% height and crops faces on narrow screens. */
  transform: none !important;
}
.main-collection-cover .block-main-collection__banner picture {
  display: block;
  width: 100%;
  height: 100%;
}
.main-collection-cover .block-main-collection__banner img {
  vertical-align: middle;
  object-position: var(--collection-focal) center;
}
.main-collection-cover .block-main-collection__banner-mask::after {
  background: linear-gradient(90deg, rgb(0 0 0 / 48%), rgb(0 0 0 / 15%) 42%, transparent 70%);
  pointer-events: none;
}
.main-collection-cover .block-main-collection__banner-inner > .page-width {
  width: 100%;
}
.main-collection-cover .block-main-collection__heading {
  font-size: clamp(44px, 5vw, 80px);
  line-height: 1.1;
  margin: 6px 0 0;
  max-width: 60%;
  overflow-wrap: normal;
  word-break: normal;
  text-wrap: balance;
}
.main-collection-cover .block-main-collection__description {
  max-width: 50%;
  margin-top: 12px;
}
.main-collection-cover .block-main-collection__description p {
  margin: 0;
}
.main-collection-cover > .block-main-collection__description {
  box-sizing: border-box;
  max-width: var(--page-width, 1760px);
  width: 100%;
  margin: 0 auto;
  padding: 20px var(--page-padding, 16px) 0;
  color: #000;
}
.main-collection-cover > .block-main-collection__description p {
  max-width: 70ch;
}
/* The original Signature Explore mobile photograph has a different aspect ratio. */
@media (max-width: 959px) {
  .main-collection-cover .block-main-collection__banner {
    aspect-ratio: 2 / 1;
  }
  .main-collection-cover .block-main-collection__banner-inner {
    justify-content: flex-end;
    padding-block: 28px;
  }
  .main-collection-cover .block-main-collection__banner-mask::after {
    background: linear-gradient(0deg, rgb(0 0 0 / 66%), rgb(0 0 0 / 18%) 38%, transparent 68%);
  }
  .main-collection-cover .block-main-collection__heading {
    font-size: clamp(32px, 5vw, 48px);
    line-height: 1.08;
    max-width: 90%;
    margin: 6px 0 0;
  }
  .main-collection-cover [data-collection-handle="signature-sunny"],
  .main-collection-cover [data-collection-handle="junior-sunny"] {
    --collection-focal: 76%;
  }
  .main-collection-cover [data-collection-handle="signature-overcast"] {
    --collection-focal: 80%;
  }
  .main-collection-cover [data-collection-handle="adults-explore"] {
    --collection-focal: 92%;
  }
  .main-collection-cover [data-collection-handle="junior"] {
    --collection-focal: 90%;
  }
  .main-collection-cover [data-collection-handle="signature-explore"] {
    --collection-focal: 90%;
  }
}
@media (max-width: 599px) {
  .main-collection-cover .block-main-collection__banner {
    aspect-ratio: 4 / 3;
  }
  .main-collection-cover .block-main-collection__banner-inner {
    padding-block: 22px;
  }
  .main-collection-cover .block-main-collection__heading {
    font-size: clamp(32px, 8vw, 40px);
    max-width: 100%;
  }
}
