/* === SECCIÓN CTA FINAL BRUTALISTA === */
.cta-final {
  position: relative;
  overflow: hidden;
  background: linear-gradient(145deg, #111, #1a1a1a);
  color: #fff;
  text-align: center;
  padding: 80px 20px;
  border-radius: 20px;
  box-shadow: 0 0 20px rgba(255, 23, 68, 0.4);
  z-index: 1;
}

/* Fondo glitch animado con patrón de ruido */
.cta-final::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 200%;
  height: 200%;
  background: repeating-linear-gradient(
    0deg,
    rgba(255, 255, 255, 0.02) 0px,
    rgba(255, 255, 255, 0.02) 1px,
    transparent 1px,
    transparent 2px
  );
  animation: glitchNoise 1.2s steps(2, end) infinite;
  pointer-events: none;
  z-index: 0;
}

/* Ruido animado adicional estilo glitch usando GIF (opcional) */
.cta-final::after {
  content: '';
  position: absolute;
  inset: 0;
  background: url('https://media.giphy.com/media/oEI9uBYSzLpBK/giphy.gif') center/cover no-repeat;
  mix-blend-mode: screen;
  opacity: 0.02;
  pointer-events: none;
  animation: staticNoise 2s steps(10) infinite;
  z-index: 0;
}

/* Animaciones fondo glitch */
@keyframes glitchNoise {
  0% {
    transform: translate(0, 0);
  }
  100% {
    transform: translate(-5%, 5%);
  }
}

@keyframes staticNoise {
  0% {
    background-position: 0 0;
  }
  100% {
    background-position: 100% 100%;
  }
}

/* === CONTENEDOR INTERNO === */
.cta-container {
  position: relative;
  z-index: 1;
  max-width: 800px;
  margin: 0 auto;
  color: #eee;
}

.cta-container h2 {
  font-size: 2.8rem;
  margin-bottom: 1rem;
  text-shadow: 0 0 10px #0ff, 0 0 20px #00f;
}

.cta-container p {
  font-size: 1.2rem;
  margin-bottom: 2rem;
  color: #ccc;
  line-height: 1.6;
}

/* === BOTÓN BRUTALISTA === */
.btn-cta {
  background: linear-gradient(135deg, var(--neon-red), #ff5252);
  padding: 1.2rem 2.5rem;
  font-size: 1.1rem;
  border-radius: 40px;
  box-shadow: 0 0 15px var(--neon-red);
  transition: all 0.3s ease;
  border: none;
  color: #fff;
  text-decoration: none;
  display: inline-block;
  cursor: pointer;
}

.btn-cta:hover {
  background: linear-gradient(135deg, #ff5252, var(--neon-red));
  box-shadow: 0 0 25px var(--neon-red);
  transform: scale(1.05);
}

/* === EFECTO DE LUZ QUE SIGUE AL MOUSE === */
.cursor-glow {
  position: fixed; /* sigue al cursor en toda la página */
  width: 80px;
  height: 80px;
  border-radius: 50%;
  pointer-events: none;
  left: 0;
  top: 0;
  mix-blend-mode: screen;
  opacity: 1;
  z-index: 9999;
  background: conic-gradient(
    from 0deg,
    #ff0000,
    #ff7f00,
    #ffff00,
    #00ff00,
    #0000ff,
    #4b0082,
    #8f00ff,
    #ff0000
  );
  animation: rotateHue 4s linear infinite, pulseGlow 2s ease-in-out infinite;
  filter: blur(8px);
  transform: translate(-50%, -50%);
}

/* Animación rotación del color (hue-rotate) */
@keyframes rotateHue {
  from {
    filter: hue-rotate(0deg) blur(8px);
  }
  to {
    filter: hue-rotate(360deg) blur(8px);
  }
}

/* Animación de pulso para el glow */
@keyframes pulseGlow {
  0%, 100% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.8;
  }
  50% {
    transform: translate(-50%, -50%) scale(1.1);
    opacity: 1;
  }
}
