@keyframes fadeIn {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes fadeInUp {
  0% { opacity: 0; transform: translateY(20px); }
  100% { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInDown {
  0% { opacity: 0; transform: translateY(-12px); }
  100% { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInScale {
  0% { opacity: 0; transform: scale(0.92); }
  100% { opacity: 1; transform: scale(1); }
}

@keyframes auroraDrift {
  0% { transform: translate(0, 0) scale(1); }
  33% { transform: translate(20px, -15px) scale(1.03); }
  66% { transform: translate(-10px, 10px) scale(0.97); }
  100% { transform: translate(0, 0) scale(1); }
}

@keyframes auroraDrift2 {
  0% { transform: translate(0, 0) scale(1); }
  33% { transform: translate(-15px, 10px) scale(1.02); }
  66% { transform: translate(10px, -8px) scale(0.98); }
  100% { transform: translate(0, 0) scale(1); }
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.4; }
}

@keyframes floatLaptop {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-8px); }
}

@keyframes floatPhone {
  0%, 100% { transform: translateY(0px) rotate(-1deg); }
  50% { transform: translateY(-6px) rotate(0.5deg); }
}
