/* Shop page product images – keep visible on all breakpoints */
.product-list .rimage-wrapper .rimage__image,
.product-block .rimage-wrapper .rimage__image {
  opacity: 1 !important;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

.product-list .rimage-wrapper {
  background: #f5f5f5;
}

.product-list .product-block .image__first .rimage-outer-wrapper,
.product-list .product-block .image__first .rimage-wrapper {
  width: 100%;
}

/* Mobile filter button + panel */
.template-collection .footer-button-xs {
  z-index: 100;
}

@media (max-width: 767px) {
  .theme-filter-container .cc-product-filter.-in {
    visibility: visible !important;
    opacity: 1 !important;
    transform: translateZ(0) scale(1) !important;
  }
}

/* Price range slider handles — ensure draggable above the bar */
.template-collection .cc-price-range__bar {
  position: relative;
  z-index: 1;
}

.template-collection .cc-price-range__control {
  z-index: 3;
  touch-action: none;
  user-select: none;
}

.template-collection .cc-price-range__bar-active {
  z-index: 1;
  pointer-events: none;
}

.template-collection .product-list .product-block.is-filtered-out {
  display: none !important;
}

.template-collection .product-list--empty::after {
  content: "No products match these filters.";
  display: block;
  padding: 2rem 0;
  text-align: center;
  width: 100%;
  clear: both;
}

.template-collection .product-block[data-available="0"] .title::after {
  content: " — Sold out";
  font-size: 0.85em;
  opacity: 0.7;
}