:root {
  --fondo: #0d0d0d;
  --neonPrimario: #00fff7;        /* cian neón */
  --neonPrimarioOscuro: #00b7a7;
  --neonSecundario: #ff00f7;      /* magenta neón */
  --neonSecundarioOscuro: #b700a7;
  --textoClaro: #e0f7fa;
  --blanco: #fff;
  --fuentePrincipal: "Staatliches", sans-serif;
}

body {
  font-family: var(--fuentePrincipal);
  padding: 2rem;
  background: linear-gradient(135deg, #050505, #1a1a1a 80%);
  color: var(--textoClaro);
}

.header {
  display: flex;
  justify-content: center;
  margin-bottom: 2rem;
}

.header__logo {
  width: 450px;
  filter: drop-shadow(0 0 10px var(--neonSecundario));
  transition: filter 0.3s ease;
}
.header__logo:hover {
  filter: drop-shadow(0 0 25px var(--neonPrimario));
}

/* ANIMACIÓN FLICKER */
@keyframes flicker {
  0%, 19%, 21%, 23%, 25%, 54%, 56%, 100% {
    opacity: 1;
    text-shadow:
      0 0 8px var(--neonPrimario),
      0 0 20px var(--neonPrimario),
      0 0 30px var(--neonPrimario),
      0 0 40px var(--neonPrimario);
  }
  20%, 22%, 24%, 55% {
    opacity: 0.7;
    text-shadow: none;
  }
}

h1 {
  text-align: center;
  font-size: 3rem;
  color: var(--neonPrimario);
  text-shadow:
    0 0 5px var(--neonPrimario),
    0 0 15px var(--neonPrimario),
    0 0 20px var(--neonPrimario);
  margin-bottom: 2rem;
  animation: flicker 3s infinite;
}

.contenedor {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
}

.producto {
  background: linear-gradient(145deg, #111111, #1a1a1a);
  border-radius: 12px;
  padding: 1.2rem;
  box-shadow:
    0 0 10px var(--neonSecundario),
    inset 0 0 8px var(--neonSecundarioOscuro);
  border: 2px solid transparent;
  transition: 
    box-shadow 0.4s ease,
    border-color 0.4s ease,
    transform 0.3s ease;
  cursor: pointer;
}

.producto:hover {
  border-color: var(--neonPrimario);
  box-shadow:
    0 0 20px var(--neonPrimario),
    inset 0 0 15px var(--neonPrimarioOscuro);
  transform: translateY(-6px);
}

.producto img {
  width: 100%;
  height: 300px;
  object-fit: cover;
  border-radius: 10px;
  border: 2px solid var(--neonPrimario);
  box-shadow: 0 0 15px var(--neonPrimario);
  transition: box-shadow 0.3s ease;
}

.producto img:hover {
  box-shadow: 0 0 25px var(--neonSecundario);
}

.producto h2 {
  font-size: 1.4rem;
  margin: 0.6rem 0 0.3rem;
  color: var(--neonPrimario);
  text-align: center;
  text-shadow:
    0 0 5px var(--neonPrimario),
    0 0 10px var(--neonPrimario);
}

.producto p {
  font-size: 1.8rem;
  color: var(--textoClaro);
  text-align: center;
  margin-bottom: 0.8rem;
  line-height: 1.2;
}

.precio {
  font-weight: 900;
  font-size: 3rem;
  text-align: center;
  color: var(--neonSecundario);
  text-shadow:
    0 0 10px var(--neonSecundario),
    0 0 20px var(--neonSecundario);
  margin-bottom: 1rem;
}

.producto a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.7rem 1.5rem;
  background: transparent;
  border: 2px solid var(--neonPrimario);
  border-radius: 8px;
  color: var(--neonPrimario);
  font-size: 1.8rem;
  font-weight: 700;
  text-decoration: none;
  box-shadow:
    0 0 8px var(--neonPrimario);
  transition: all 0.3s ease;
  animation: flicker 4s infinite;
}

.producto a:hover {
  background: var(--neonPrimario);
  color: var(--fondo);
  box-shadow:
    0 0 15px var(--neonPrimario),
    0 0 30px var(--neonPrimario);
}
