html {
  scroll-behavior: smooth;
}
body {
  box-sizing: border-box;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.glass-panel {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.01));
  backdrop-filter: blur(12px) saturate(110%);
  -webkit-backdrop-filter: blur(12px) saturate(110%);
  border: 1px solid rgba(6, 182, 212, 0.2);
  border-top: 1px solid rgba(6, 182, 212, 0.4);
  border-left: 1px solid rgba(6, 182, 212, 0.4);
  box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.5), 0 0 20px rgba(6, 182, 212, 0.15), inset 0 0 0 1px rgba(255, 255, 255, 0.02);
  border-radius: 24px;
}

/* Scroll Reveal Animation */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: all 1s cubic-bezier(0.5, 0, 0, 1);
}
.reveal.active {
  opacity: 1;
  transform: translateY(0);
}

/* Animated Background Blobs */
@keyframes blob {
  0% { transform: translate(0px, 0px) scale(1); }
  33% { transform: translate(30px, -50px) scale(1.1); }
  66% { transform: translate(-20px, 20px) scale(0.9); }
  100% { transform: translate(0px, 0px) scale(1); }
}
.animate-blob {
  animation: blob 7s infinite;
}
.animation-delay-2000 {
  animation-delay: 2s;
}
.animation-delay-4000 {
  animation-delay: 4s;
}

@media (max-width: 768px) {
  .glass-panel {
    border-radius: 16px;
    backdrop-filter: blur(8px) saturate(100%);
    -webkit-backdrop-filter: blur(8px) saturate(100%);
  }
}

.glass-card {
  transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}
.glass-card:hover {
  transform: translateY(-5px) scale(1.01);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.5), 0 0 30px rgba(6, 182, 212, 0.3), inset 0 0 0 1px rgba(6, 182, 212, 0.3);
  background: linear-gradient(135deg, rgba(6, 182, 212, 0.1), rgba(6, 182, 212, 0.05));
  backdrop-filter: blur(16px);
}

/* Auto Slider */
.slider-container {
  overflow: hidden;
  width: 100%;
  mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
  -webkit-mask-image: linear-gradient(to right, transparent, black 5%, black 95%, transparent);
}
.slider-track {
  display: flex;
  width: max-content;
  animation: scroll 40s linear infinite;
}
.slider-track:hover {
  animation-play-state: paused;
}
.slide-group {
  display: flex;
  gap: 2rem;
  padding-right: 2rem;
}
@keyframes scroll {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

@view-transition { navigation: auto; }