.season-campaign {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(0, .8fr);
  overflow: hidden;
  align-items: center;
  max-width: 74rem;
  margin: clamp(.75rem, 2vw, 1.75rem) auto;
  background: #203b30;
  color: #fff9e9;
  border-radius: 1.15rem;
}

.season-copy { padding: clamp(1.4rem, 4vw, 3.4rem); }
.season-kicker { color: #f2ce91; font-size: .78rem; font-weight: 750; letter-spacing: .11em; text-transform: uppercase; }
.season-campaign h2 { margin: .45rem 0; color: inherit; font-size: clamp(2rem, 5.3vw, 4.1rem); line-height: 1.06; }
.season-copy > p:not(.season-kicker) { max-width: 37rem; color: #f8eedc; }
.season-illustration { display: block; width: 100%; height: 100%; min-height: 14rem; object-fit: cover; }
.season-actions { display: flex; flex-wrap: wrap; gap: .6rem; margin-top: 1.25rem; }
.season-actions .button { min-height: 44px; margin: 0; }
.season-actions .season-primary { background: #f7e7c4; border-color: #f7e7c4; color: #23382e; }
.season-actions .season-secondary { background: transparent; border: 1px solid #f7e7c4; color: #fff9e9; }
.season-actions :is(a, button):focus-visible { outline: 2px solid #f6cd82; outline-offset: 3px; }
.season-shortcuts { max-width: 74rem; margin: 0 auto 1.7rem; display: flex; flex-wrap: wrap; gap: .4rem .8rem; }
.season-shortcuts a { padding: .5rem .8rem; border: 1px solid #c8c5b2; border-radius: .55rem; background: #f8f3e5; color: #26382e; }
.sale-intro { border-left: .3rem solid #883b3b; background: #f6ede3; padding: .85rem 1.1rem; border-radius: .3rem; margin: 1.3rem 0; }
.sale-intro p:last-child { margin-bottom: 0; }
.sale-list li + li { margin-top: .65rem; }

@media (max-width: 680px) {
  .season-campaign { grid-template-columns: 1fr; }
  .season-illustration { min-height: 0; max-height: 13rem; object-position: center 45%; }
}
