/* ============================================================
   animations.css — Shared @keyframes used across the site.
   Kept in one place so timing/easing stays consistent.
   ============================================================ */

@media (prefers-reduced-motion: reduce){
  *{animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important;}
}

@keyframes gradientShift{0%{background-position:0% 50%;}50%{background-position:100% 50%;}100%{background-position:0% 50%;}}
@keyframes shine{to{background-position:-200% 0;}}
@keyframes load{0%{transform:translateX(-100%);}100%{transform:translateX(350%);}}
@keyframes float{0%,100%{transform:translateY(0px);}50%{transform:translateY(-22px);}}
@keyframes hoverfloat{0%,100%{transform:rotateY(-8deg) rotateX(4deg) translateY(0);}50%{transform:rotateY(-8deg) rotateX(4deg) translateY(-14px);}}
@keyframes twinkle{0%,100%{opacity:.4;}50%{opacity:1;}}
@keyframes scrollx{to{transform:translateX(-50%);}}
@keyframes spin{to{transform:rotate(360deg);}}
@keyframes pulse{0%,100%{transform:scale(1);opacity:.8;}50%{transform:scale(1.15);opacity:1;}}
@keyframes ripple{to{transform:scale(4);opacity:0;}}
