/* v190 — product gallery presentation only.
   Keeps the established three-column sourcing desk, navigation, AI and RFQ logic untouched. */

/* Current category detail gallery. Keep every product frame square and show the
   complete source image instead of cropping it into a tall strip. */
.industry-main-gallery .industry-main-gallery-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  align-items: start !important;
  gap: clamp(10px, 1.15vw, 16px) !important;
}

.industry-main-gallery .industry-main-gallery-item {
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1 !important;
  padding: clamp(8px, .8vw, 12px) !important;
  overflow: hidden !important;
  border: 1px solid rgba(15, 35, 58, .10) !important;
  border-radius: 14px !important;
  background: #f5f7f9 !important;
}

.industry-main-gallery .industry-main-gallery-item img,
.industry-main-gallery[data-industry="fabric"] .industry-main-gallery-item img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  aspect-ratio: auto !important;
  padding: 0 !important;
  border-radius: 9px !important;
  background: transparent !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

.industry-main-gallery .industry-main-gallery-item:hover img,
.industry-main-gallery[data-industry="fabric"] .industry-main-gallery-item:hover img {
  transform: scale(1.02) !important;
}

.v190-product-gallery .v160-product-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-rows: auto !important;
  align-items: start !important;
  gap: clamp(10px, 1.15vw, 16px) !important;
}

.v190-product-gallery .v160-product-card {
  position: relative !important;
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1 !important;
  padding: clamp(8px, .8vw, 12px) !important;
  overflow: hidden !important;
  border: 1px solid rgba(15, 35, 58, .10) !important;
  border-radius: 16px !important;
  background:
    radial-gradient(circle at 82% 12%, rgba(25, 113, 75, .10), transparent 34%),
    linear-gradient(145deg, #f8fafc 0%, #eef3f6 100%) !important;
  box-shadow: 0 7px 18px rgba(15, 35, 58, .075) !important;
  isolation: isolate;
  cursor: zoom-in;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}

.v190-product-gallery .v160-product-card::after {
  content: "";
  position: absolute;
  inset: 8px;
  z-index: -1;
  border-radius: 11px;
  background: rgba(255, 255, 255, .72);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .82);
}

.v190-product-gallery .v160-product-card img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  aspect-ratio: auto !important;
  padding: 4px !important;
  border-radius: 10px !important;
  background: transparent !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

.v190-product-gallery .v160-product-card:hover,
.v190-product-gallery .v160-product-card:focus-visible {
  transform: translateY(-3px) !important;
  border-color: rgba(25, 113, 75, .30) !important;
  box-shadow: 0 13px 26px rgba(15, 35, 58, .13) !important;
}

.v190-product-gallery .v160-product-card:hover img,
.v190-product-gallery .v160-product-card:focus-visible img {
  transform: scale(1.025) !important;
}

/* Older gallery fallback, if a category opens before the microsite renderer. */
.v190-product-gallery .v158-gallery-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  align-items: start !important;
}

.v190-product-gallery .v158-gallery-card {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1 !important;
  padding: 10px !important;
  background: linear-gradient(145deg, #f8fafc, #eef3f6) !important;
}

.v190-product-gallery .v158-gallery-card img {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 10px !important;
}

@media (max-width: 1180px) {
  .industry-main-gallery .industry-main-gallery-grid,
  .v190-product-gallery .v160-product-grid,
  .v190-product-gallery .v158-gallery-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 760px) {
  .industry-main-gallery .industry-main-gallery-grid,
  .v190-product-gallery .v160-product-grid,
  .v190-product-gallery .v158-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  .v190-product-gallery .v160-product-card,
  .v190-product-gallery .v158-gallery-card {
    padding: 7px !important;
    border-radius: 13px !important;
  }

  .industry-main-gallery .industry-main-gallery-item {
    padding: 6px !important;
    border-radius: 11px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .v190-product-gallery .v160-product-card,
  .v190-product-gallery .v160-product-card img {
    transition: none !important;
  }
}
