/* Product card stability: original stacked card UI, no image cropping or overlay text. */
#products .product-matrix-grid {
  align-items: stretch !important;
}

#products .product-matrix-card,
#products .product-matrix-card:hover,
#products .product-matrix-card:focus-visible,
#products .product-marquee-card,
#products .product-marquee-card:hover,
#products .product-marquee-card:focus-within {
  transform: none !important;
}

#products .product-matrix-card {
  position: relative !important;
  display: grid !important;
  grid-template-rows: minmax(210px, 1fr) minmax(46px, auto) 44px !important;
  gap: 0.65rem !important;
  aspect-ratio: auto !important;
  min-height: clamp(320px, 42vw, 410px) !important;
  padding: clamp(0.58rem, 1.2vw, 0.9rem) !important;
  overflow: hidden !important;
}

#products .product-matrix-card::after {
  content: none !important;
  display: none !important;
}

#products .product-matrix-media {
  position: relative !important;
  inset: auto !important;
  z-index: 1 !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 1 / 1 !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
  border-radius: 14px !important;
  background: #fff !important;
}

#products .product-matrix-card img,
#products .product-matrix-card:nth-child(1) img,
#products .product-matrix-card:nth-child(2) img,
#products .product-matrix-card:nth-child(3) img,
#products .product-matrix-card:nth-child(4) img,
#products .product-matrix-card:nth-child(5) img,
#products .product-matrix-card:nth-child(6) img,
#products .product-matrix-card:nth-child(7) img,
#products .product-matrix-card:nth-child(8) img {
  width: 82% !important;
  height: 82% !important;
  max-width: 82% !important;
  max-height: 82% !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
  transition: filter 180ms ease !important;
}

#products .product-matrix-card:hover img,
#products .product-matrix-card:focus-visible img,
#products .product-matrix-card:active img {
  transform: none !important;
}

#products .product-matrix-info {
  position: static !important;
  z-index: 1 !important;
  display: grid !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 46px !important;
  align-content: start !important;
  padding: 0 0.22rem !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  opacity: 1 !important;
  visibility: visible !important;
}

#products .product-matrix-name {
  display: -webkit-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  margin: 0 !important;
  overflow: hidden !important;
  color: #211818 !important;
  font-size: clamp(0.78rem, 1.45vw, 0.96rem) !important;
  font-weight: 800 !important;
  line-height: 1.32 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  white-space: normal !important;
  word-break: keep-all !important;
  overflow-wrap: anywhere !important;
  line-break: strict !important;
  text-shadow: none !important;
}

#products .product-matrix-buy-btn {
  position: static !important;
  z-index: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 44px !important;
  height: 44px !important;
  margin: 0 !important;
  padding: 0 0.6rem !important;
  text-align: center !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

#products .product-matrix-buy-btn::before,
#products .product-matrix-buy-btn::after {
  content: none !important;
  display: none !important;
}

#products .product-marquee-media {
  aspect-ratio: 1 / 1 !important;
  min-height: 0 !important;
  display: grid !important;
  place-items: center !important;
  overflow: hidden !important;
}

#products .product-marquee-media img {
  width: 82% !important;
  height: 82% !important;
  max-width: 82% !important;
  max-height: 82% !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  object-fit: contain !important;
  object-position: center center !important;
  transform: none !important;
  transition: filter 180ms ease !important;
}

#products .product-marquee-card:hover .product-marquee-media img,
#products .product-marquee-card:focus-within .product-marquee-media img,
#products .product-marquee-card:active .product-marquee-media img {
  transform: none !important;
}

@media (max-width: 760px) {
  #products .product-matrix-card {
    grid-template-rows: 148px 58px 36px !important;
    min-height: 290px !important;
    align-content: start !important;
    gap: 0.6rem !important;
    padding: 0.58rem !important;
    border-radius: 18px !important;
  }

  #products .product-matrix-media {
    border-radius: 13px !important;
  }

  #products .product-matrix-info {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    min-height: 58px !important;
    height: 58px !important;
    padding: 0.16rem 0.32rem 0 !important;
    overflow: hidden !important;
  }

  #products .product-matrix-card img,
  #products .product-matrix-card:nth-child(1) img,
  #products .product-matrix-card:nth-child(2) img,
  #products .product-matrix-card:nth-child(3) img,
  #products .product-matrix-card:nth-child(4) img,
  #products .product-matrix-card:nth-child(5) img,
  #products .product-matrix-card:nth-child(6) img,
  #products .product-matrix-card:nth-child(7) img,
  #products .product-matrix-card:nth-child(8) img {
    width: 82% !important;
    height: 82% !important;
    max-width: 82% !important;
    max-height: 82% !important;
  }

  #products .product-matrix-name {
    min-height: 0 !important;
    max-height: 2.16rem !important;
    font-size: 0.76rem !important;
    line-height: 1.34 !important;
    letter-spacing: 0 !important;
    word-break: keep-all !important;
    overflow-wrap: anywhere !important;
  }

  #products .product-matrix-buy-btn {
    min-height: 36px !important;
    height: 36px !important;
  }

  #products .product-marquee-media img {
    width: 84% !important;
    height: 84% !important;
    max-width: 84% !important;
    max-height: 84% !important;
  }
}

@media (max-width: 360px) {
  #products .product-matrix-card {
    grid-template-rows: 138px 58px 34px !important;
    min-height: 276px !important;
    gap: 0.56rem !important;
    padding: 0.52rem !important;
  }

  #products .product-matrix-buy-btn {
    min-height: 34px !important;
    height: 34px !important;
  }

  #products .product-matrix-name {
    font-size: 0.72rem !important;
    line-height: 1.34 !important;
    max-height: 2rem !important;
  }
}
