/* =========================================================
   SH EVENTS PLANNER — ANIMATIONS
   ========================================================= */

@keyframes pulseLogo{
  0%,100%{transform:scale(1); opacity:1;}
  50%{transform:scale(1.08); opacity:0.75;}
}
@keyframes loadBar{
  0%{transform:translateX(-100%);}
  50%{transform:translateX(60%);}
  100%{transform:translateX(280%);}
}
@keyframes blink{
  0%,100%{opacity:1;} 50%{opacity:0;}
}
@keyframes scrollDot{
  0%{opacity:1; top:6px;} 80%{opacity:0; top:20px;} 100%{opacity:0; top:6px;}
}
@keyframes floatY{
  0%,100%{transform:translateY(0);} 50%{transform:translateY(-14px);}
}
@keyframes floatBounce{
  0%,100%{transform:translateY(0);} 50%{transform:translateY(-6px);}
}
@keyframes gradientMove{
  0%{background-position:0% 50%;}
  50%{background-position:100% 50%;}
  100%{background-position:0% 50%;}
}
@keyframes pulseRing{
  0%{transform:scale(1); opacity:0.7;}
  100%{transform:scale(1.6); opacity:0;}
}
@keyframes rippleAnim{
  to{transform:scale(3); opacity:0;}
}
@keyframes fadeUp{
  from{opacity:0; transform:translateY(14px);}
  to{opacity:1; transform:none;}
}
@keyframes fadeIn{
  from{opacity:0;} to{opacity:1;}
}
.fade-in{animation:fadeIn .6s ease both;}

@media (prefers-reduced-motion: reduce){
  *{animation:none !important; transition:none !important;}
}
