.catalog-product-img {
  aspect-ratio: 1 / 1;
  border-radius: 8px;
  overflow: hidden;
  display: block;
}
.catalog-product-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-card .card-body {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 0.75rem 0.5rem;
}
.text-muted.py-4 {
  animation: fadeIn 0.5s ease-in-out;
}
@keyframes fadeIn {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}
