/* Keep WooCommerce Block prices separate from the product-page display price. */
body.woocommerce-cart .wc-block-components-product-price.price,
body.woocommerce-checkout .wc-block-components-product-price.price {
  display: block;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  white-space: nowrap;
}

body.woocommerce-cart .wc-block-components-product-price.price .wc-block-components-product-price__value,
body.woocommerce-checkout .wc-block-components-product-price.price .wc-block-components-product-price__value {
  font-size: inherit !important;
  line-height: inherit !important;
}

@media (max-width: 600px) {
  body.woocommerce-cart .wc-block-components-product-price.price,
  body.woocommerce-checkout .wc-block-components-product-price.price {
    font-size: 14px !important;
  }

  body.woocommerce-cart .wc-block-cart-items,
  body.woocommerce-checkout .wc-block-components-order-summary-item {
    max-width: 100%;
  }

  body.woocommerce-cart .wc-block-cart-item__wrap,
  body.woocommerce-checkout .wc-block-components-order-summary-item__description {
    min-width: 0;
  }

  body.woocommerce-cart .wc-block-cart-item__total,
  body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
    min-width: 0;
    white-space: nowrap;
  }
}

/* The carousel image is absolutely positioned; its mobile frame needs height. */
@media (max-width: 1100px) {
  body.page-product #purchase-options .product-carousel-slide .product-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  body.page-product #purchase-options .product-carousel-slide .product-image.exact-product-image-frame {
    display: block !important;
    height: clamp(260px, 75vw, 440px) !important;
    min-height: clamp(260px, 75vw, 440px) !important;
    max-height: clamp(260px, 75vw, 440px) !important;
    overflow: hidden !important;
  }

  body.page-product #purchase-options .product-carousel-slide .product-image.exact-product-image-frame > img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  body.page-product #purchase-options .product-carousel-slide .product-panel {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
}
