.sale-banner { padding: clamp(36px, 4.5vw, 64px) max(32px, calc((100vw - 1280px)/2)); display: grid; grid-template-columns: minmax(420px, .92fr) minmax(440px, 1.08fr); align-items: center; gap: clamp(40px, 5vw, 72px); background: var(--navy); }
.sale-banner-media { width: 100%; min-width: 0; aspect-ratio: 1; overflow: hidden; background: var(--navy-deep); border: 1px solid rgba(255,255,255,.2); border-radius: 6px; }
.sale-banner-collage { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 4px; }
.sale-banner-tile { position: relative; min-width: 0; min-height: 0; overflow: hidden; background: var(--navy-deep); }
.sale-banner-tile img { position: absolute; inset: -1px; width: calc(100% + 2px); max-width: none; height: calc(100% + 2px); object-fit: cover; object-position: center; }
.sale-banner-fallback-image { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.sale-banner-fallback-image { grid-area: 1 / 1 / 3 / 3; }
.sale-banner-collage-1 .sale-banner-tile { grid-area: 1 / 1 / 3 / 3; }
.sale-banner-collage-2 .sale-banner-tile { grid-row: 1 / 3; }
.sale-banner-collage-3 .sale-banner-tile:first-child { grid-row: 1 / 3; }
.sale-banner-collage > .image-placeholder { grid-area: 1 / 1 / 3 / 3; }
.sale-banner-copy { min-width: 0; color: #fff; }
.sale-banner-copy .eyebrow { width: max-content; padding: 5px 8px; color: #fff; background: var(--brand, var(--red)); border-radius: 999px; }
.sale-banner-copy .time-remaining-light { color: #fff; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.32); }
.sale-deadline { margin: 18px 0 5px; color: #fff; font: 700 clamp(20px, 2.3vw, 28px)/1.2 "Inter", sans-serif; }
.sale-banner-copy h1 { max-width: 650px; margin: 0 0 18px; font: 600 clamp(42px, 4.8vw, 64px)/1 "Source Serif 4", serif; letter-spacing: -.04em; }
.sale-summary { max-width: 610px; margin: 0 0 25px; color: #d7dbea; font-size: 15px; }
.sale-banner-facts { margin: 0 0 26px; border-block: 1px solid rgba(255,255,255,.25); }
.sale-banner-facts > div { padding: 11px 0; display: grid; grid-template-columns: 115px 1fr; gap: 18px; border-bottom: 1px solid rgba(255,255,255,.15); }
.sale-banner-facts > div:last-child { border-bottom: 0; }
.sale-banner-facts dt { color: #abb2ce; font: 700 11px/1.2 "Barlow Condensed", sans-serif; letter-spacing: .08em; text-transform: uppercase; }
.sale-banner-facts dd { margin: 0; font-size: 12px; font-weight: 650; }
.provider-handoff { margin: 14px 0 0; color: #b9c0d6; font-size: 12px; }

@media (max-width: 980px) {
  .sale-banner { grid-template-columns: 1fr; }
  .sale-banner-media, .sale-banner-copy { width: min(100%, 640px); margin-inline: auto; }
}

@media (max-width: 760px) {
  .sale-banner { padding: 20px 16px 44px; gap: 34px; }
  .sale-banner-copy h1 { font-size: 41px; }
  .sale-banner-facts > div { grid-template-columns: 105px 1fr; }
}
