.store-banner {
  margin: 50px 0 0;
}

.store-banner-link {
  display: block;
  width: 100%;
  text-decoration: none;
}

.store-banner-link picture {
  display: block;
  width: 100%;
}

.store-banner-link img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: contain;
}

@media (min-width: 769px) {
  .store-banner-link img {
    /* aspect-ratio: 12 / 5; */
  }
}

@media (width <=768px) {
  .store-banner {
    margin: 30px 0 0;
  }

  .store-banner-link img {
    /* Respect intrinsic aspect-ratio from HTML width/height attrs so the
       browser reserves space before the image loads. Previously this rule
       set aspect-ratio: auto, which discarded the intrinsic ratio and
       caused CLS 0.193 on interior-wall-paints (PSI flagged it as
       "Unsized image element"). The mobile <img> has width=2160 height=600
       (ratio 3.6:1); keeping the intrinsic ratio lets the box reserve
       roughly viewport_width / 3.6 of height before paint. */
    object-fit: cover;
  }
}

/* ============================================
   Variant: background cream
============================================ */
.section.store-banner-container:has(.store-banner.bg-cream) {
  margin: 0;
  background-color: rgb(236, 229, 215);
}

.store-banner.bg-cream {
  margin: 0;
}