html { scroll-behavior: smooth; }
body { font-family: "Inter", system-ui, -apple-system, "Segoe UI", Arial, sans-serif; }
.font-title { font-family: "Orbitron", sans-serif; }

/* Cybernetic background with grid and particles */
.cyber-bg {
  position: fixed;
  inset: 0;
  z-index: -1;
  background: linear-gradient(#12121E, #1E1E2E);
  overflow: hidden;
  pointer-events: none;
}

/* Grid pattern */
.grid-pattern {
  position: absolute;
  inset: 0;
  background-image: 
    linear-gradient(rgba(99, 102, 241, 0.1) 1px, transparent 1px),
    linear-gradient(90deg, rgba(99, 102, 241, 0.1) 1px, transparent 1px);
  background-size: 50px 50px;
  animation: grid-move 20s linear infinite;
}

@keyframes grid-move {
  0% { transform: translate(0, 0); }
  100% { transform: translate(50px, 50px); }
}

/* Particle animation */
.particle {
  position: absolute;
  width: 2px;
  height: 2px;
  background: rgba(99, 102, 241, 0.8);
  border-radius: 50%;
  animation: particle-float 8s ease-in-out infinite;
}

@keyframes particle-float {
  0%, 100% { opacity: 0; transform: translateY(0) scale(0); }
  50% { opacity: 1; transform: translateY(-50px) scale(1); }
}

/* 3D flip cards for characters */
.flip-scene { perspective: 1000px; }
.flip-card {
  transform-style: preserve-3d;
  transition: transform .7s ease;
}
.flip-card .flip-face.p-4 {
  overflow: hidden;
}
.flip-card > .flip-face,
.flip-card > .flip-back {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.flip-card.is-flipped { transform: rotateY(180deg); }
.flip-face {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.flip-back { transform: rotateY(180deg); }

/* Neon glow effects */
.neon-text {
  text-shadow: 0 0 10px rgba(99, 102, 241, 0.7), 0 0 20px rgba(99, 102, 241, 0.5);
}

/* Carousel: slide visibility handled via classes; transitions for smoothness */
.slide { opacity: 0; pointer-events: none; }
.slide.active { opacity: 1; pointer-events: auto; }
.carousel-dot { transition: transform .2s ease; }
.carousel-dot[aria-current="true"] { transform: scale(1.2); }

/* Hide scrollbar but allow scrolling */
.hide-scrollbar {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.hide-scrollbar::-webkit-scrollbar {
  display: none;
}

/* Hover effects */
a:hover {
  transition: all 0.3s ease;
}

/* Button hover effects */
button:hover {
  transition: all 0.3s ease;
}


