.cursor-glow {
  position: fixed;
  width: 600px;
  height: 600px;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
  background: radial-gradient(circle, rgba(147,104,233,0.08) 0%, transparent 70%);
  transform: translate(-50%, -50%);
  transition: opacity 0.3s;
  will-change: transform;
  animation: cursorColorShift 8s linear infinite;
}
@keyframes cursorColorShift {
  0%   { filter: hue-rotate(0deg); }
  33%  { filter: hue-rotate(90deg); }
  66%  { filter: hue-rotate(200deg); }
  100% { filter: hue-rotate(360deg); }
}

.reveal-section {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s cubic-bezier(0.4,0,0.2,1), transform 0.8s cubic-bezier(0.4,0,0.2,1);
}
.reveal-section.visible {
  opacity: 1;
  transform: translateY(0);
}
