.fade-up {
  animation:fadeUp .46s cubic-bezier(.22,.75,.2,1) both
}
.delay-1 {
  animation-delay:.08s
}
.delay-2 {
  animation-delay:.16s
}
.delay-3 {
  animation-delay:.24s
}
.shake {
  animation:shake .36s ease
}
.pulse-ring {
  position:relative
}
.pulse-ring::after {
  content:"";
  position:absolute;
  inset:-5px;
  border:1px solid rgba(9,114,255,.28);
  border-radius:inherit;
  animation:ring 2.4s infinite
}
@keyframes fadeUp {
  from {
    opacity:0;
    transform:translateY(14px)
  }
  to {
    opacity:1;
    transform:none
  }
}
@keyframes shake {
  0%,100% {
    transform:translateX(0)
  }
  25% {
    transform:translateX(-7px)
  }
  50% {
    transform:translateX(6px)
  }
  75% {
    transform:translateX(-3px)
  }
}
@keyframes ring {
  0% {
    opacity:.65;
    transform:scale(.98)
  }
  70%,100% {
    opacity:0;
    transform:scale(1.12)
  }
}
@keyframes breathe {
  0%,100% {
    transform:translate3d(0,0,0) scale(1)
  }
  50% {
    transform:translate3d(10px,-8px,0) scale(1.04)
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.001ms!important
  }
}
