/* Componentes reutilizáveis */
.product-card {
  background-color: #202b42; /* bg-gray-900 */
  padding: 1.5rem; /* p-6 */
  border-radius: 0.75rem; /* rounded-xl */
  box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1); /* shadow-lg */
  transition: transform 0.2s;
}
.product-card:hover {
  transform: scale(1.05); /* hover:scale-105 */
}
.product-card img {
  border-radius: 0.5rem; /* rounded-lg */
  margin-bottom: 1rem; /* mb-4 */
  width: 100%; /* w-full */
}
.product-card h3 {
  font-size: 1.25rem; /* text-xl */
  font-weight: 600; /* font-semibold */
}
.product-card p {
  margin-top: 0.5rem; /* mt-2 */
  color: #d1d5db; /* text-gray-300 */
}
.btn-comprar {
  margin-top: 1rem; /* mt-4 */
  display: inline-block;
  background-color: #facc15; /* bg-yellow-400 */
  color: #000; /* text-black */
  font-weight: bold; /* font-bold */
  padding: 0.5rem 1rem; /* py-2 px-4 */
  border-radius: 0.5rem; /* rounded-lg */
  transition: background-color 0.2s;
}
.btn-comprar:hover {
  background-color: #fde68a; /* hover:bg-yellow-300 */
}

@keyframes gradientMove {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

.animate-gradient {
  background-size: 200% 200%;
  animation: gradientMove 6s ease infinite;
}

@keyframes logoGlow {
  0%, 100% {
    filter: drop-shadow(0 0 0px #facc15);
  }
  50% {
    filter: drop-shadow(0 0 25px #facc15);
  }
}

.glow-logo {
  animation: logoGlow 2s infinite ease-in-out;
  transition: transform 0.3s ease;
}

.glow-logo:hover {
  transform: scale(1.05);
}
