.bg-mesh {
  background-image:
    radial-gradient(ellipse 60% 50% at 50% 0%, rgba(230, 57, 70, 0.08) 0%, transparent 70%);
}

.logo-glow {
  filter: drop-shadow(0 0 24px rgba(230, 57, 70, 0.45));
}

/* --- Cinematic supercar wallpaper background --- */

.bg-slideshow {
  position: fixed;
  inset: 0;
  z-index: -30;
  overflow: hidden;
  background-color: #050508;
}

.bg-slide {
  position: absolute;
  inset: -2%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  opacity: 0;
  transform: scale(1.02);
  filter: saturate(1.05) contrast(1.08);
  transition: opacity 3s ease-in-out;
  will-change: opacity, transform;
}

.bg-slide.active {
  opacity: 1;
  animation: ken-burns 22s ease-in-out infinite alternate;
}

@keyframes ken-burns {
  from {
    transform: scale(1.02);
  }
  to {
    transform: scale(1.08);
  }
}

.bg-overlay {
  background:
    radial-gradient(ellipse 120% 80% at 50% 100%, transparent 0%, rgba(5, 5, 8, 0.15) 40%, rgba(5, 5, 8, 0.55) 100%),
    linear-gradient(to bottom, rgba(5, 5, 8, 0.88) 0%, rgba(5, 5, 8, 0.45) 35%, rgba(5, 5, 8, 0.25) 60%, rgba(5, 5, 8, 0.65) 100%),
    radial-gradient(ellipse 90% 70% at 50% 50%, transparent 30%, rgba(0, 0, 0, 0.45) 100%);
}

.bg-vignette {
  background: radial-gradient(ellipse 85% 75% at 50% 50%, transparent 40%, rgba(0, 0, 0, 0.5) 100%);
}

@media (prefers-reduced-motion: reduce) {
  .bg-slide.active {
    animation: none;
  }

  .bg-slide {
    transition: none;
  }
}

@media (max-width: 640px) {
  .bg-slide {
    background-position: center 60%;
  }
}

/* Captcha local */
.captcha-image {
  image-rendering: auto;
  user-select: none;
}
