.product-image-banner {
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
  padding: var(--mobile-padding-top, 0) var(--mobile-padding-right, 0)
    var(--mobile-padding-bottom, 0) var(--mobile-padding-left, 0);
  background-color: var(--section-bg, transparent);
}

.product-image-banner__grid {
  display: grid;
  grid-template-columns: repeat(var(--mobile-cols, 1), minmax(0, 1fr));
  gap: var(--mobile-gap, 8px);
  align-items: start;
}

.product-image-banner__item:only-child {
  grid-column: 1 / -1;
}

.product-image-banner__item {
  padding: var(--mobile-image-padding-top, 0) var(--mobile-image-padding-right, 0)
    var(--mobile-image-padding-bottom, 0) var(--mobile-image-padding-left, 0);
  box-sizing: border-box;
}

.product-image-banner__media {
  position: relative;
  overflow: hidden;
  border-radius: var(--image-radius, 0);
}

.product-image-banner__link {
  display: block;
  width: 100%;
  height: 100%;
}

.product-image-banner__img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
  vertical-align: top;
}

.product-image-banner__placeholder {
  width: 100%;
  min-height: 200px;
  background: #f5f5f5;
  display: block;
}

.product-image-banner__quick-add {
  position: absolute;
  right: var(--mobile-cart-right, 4%);
  bottom: var(--mobile-cart-bottom, 4%);
  z-index: 2;
}

.product-image-banner__quick-add .quick-add {
  width: auto;
  height: auto;
  padding: 0;
}

@media screen and (min-width: 960px) {
  .product-image-banner {
    padding: var(--pc-padding-top, 0) var(--pc-padding-right, 0)
      var(--pc-padding-bottom, 0) var(--pc-padding-left, 0);
  }

  .product-image-banner__grid {
    grid-template-columns: repeat(var(--pc-cols, 2), minmax(0, 1fr));
    gap: var(--pc-gap, 10px);
  }

  .product-image-banner__item {
    padding: var(--pc-image-padding-top, 0) var(--pc-image-padding-right, 0)
      var(--pc-image-padding-bottom, 0) var(--pc-image-padding-left, 0);
  }

  .product-image-banner__quick-add {
    right: var(--pc-cart-right, 4%);
    bottom: var(--pc-cart-bottom, 4%);
  }

  .product-image-banner__placeholder {
    min-height: 320px;
  }
}
