/* ===== KEYFRAME ANIMATIONS ===== */
@keyframes float-particle {
  0%, 100% { opacity: 0; transform: translateY(0) scale(1); }
  20% { opacity: 0.6; }
  50% { opacity: 0.8; transform: translateY(-40px) scale(1.5); }
  80% { opacity: 0.3; }
}

@keyframes rotate-slow { to { transform: rotate(360deg); } }

@keyframes pulse-shield {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.05); }
}

@keyframes blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.3; }
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

/* ===== REVEAL ON SCROLL ===== */
.reveal {
  opacity: 0;
  transform: translateY(30px);
  transition: all 0.7s ease;
}
.reveal.visible {
  opacity: 1;
  transform: translateY(0);
}
