.product-image {
  transition: opacity 400ms cubic-bezier(0.39, 0.575, 0.565, 1);
}
.product-image-hover {
  opacity: 0;
  transition: opacity 400ms cubic-bezier(0.39, 0.575, 0.565, 1);
}
.product:hover .product-image-hover {
  opacity: 1;
}
.product:hover .product-image {
  opacity: 0;
}
.all-categories {
  cursor: pointer;
}
/* Product grid loading */
.products-grid.loading .product > * {
  visibility: hidden;
}
.products-grid.loading .product {
  overflow: hidden;
  background-color: var(--secondary-10);
}
.products-grid.loading .product::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transform: translateX(-100%);
  background-image: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, var(--secondary-10) 5%, var(--secondary-60) 50%, var(--secondary-10) 95%, rgba(255, 255, 255, 0) 100%);
  -webkit-animation: shimmer 2s infinite;
  animation: shimmer 2s infinite;
  content: "";
}
@-webkit-keyframes shimmer {
  100% {
    transform: translateX(100%);
  }
}
@keyframes shimmer {
  100% {
    transform: translateX(100%);
  }
}
