.rev-in {
  animation: rev-rise-in 0.9s var(--ease-calm) backwards;
}

@keyframes rev-rise-in {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.rev {
  opacity: 0;
  transition: opacity 0.9s var(--ease-calm), transform 1s var(--ease-calm);
}

.rev-up {
  transform: translateY(18px);
}

.rev-pop {
  transform: translateY(14px) scale(0.985);
}

.rev-anim {
  opacity: 0;
}

.rev-anim.rev-shown {
  opacity: 1;
  animation: rev-pop-in 0.9s var(--ease-calm) backwards;
}

@keyframes rev-pop-in {
  from {
    opacity: 0;
    transform: translateY(14px) scale(0.985);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

.rev-shown {
  opacity: 1;
  transform: none;
}

.rev-step-1 {
  transition-delay: 0.08s;
  animation-delay: 0.08s;
}

.rev-step-2 {
  transition-delay: 0.16s;
  animation-delay: 0.16s;
}

.rev-step-3 {
  transition-delay: 0.24s;
  animation-delay: 0.24s;
}

.rev-step-4 {
  transition-delay: 0.32s;
  animation-delay: 0.32s;
}

.rev-step-5 {
  transition-delay: 0.4s;
  animation-delay: 0.4s;
}

.rev-step-6 {
  transition-delay: 0.48s;
  animation-delay: 0.48s;
}

.rev-step-7 {
  transition-delay: 0.56s;
  animation-delay: 0.56s;
}

.rev-step-8 {
  transition-delay: 0.64s;
  animation-delay: 0.64s;
}

.rev-step-9 {
  transition-delay: 0.72s;
  animation-delay: 0.72s;
}

.rev-step-10 {
  transition-delay: 0.8s;
  animation-delay: 0.8s;
}

.rev-astep-1 {
  animation-delay: 0.1s;
}

.rev-astep-2 {
  animation-delay: 0.2s;
}

.rev-astep-3 {
  animation-delay: 0.3s;
}

.rev-astep-4 {
  animation-delay: 0.4s;
}

.rev-astep-5 {
  animation-delay: 0.5s;
}

.rev-astep-6 {
  animation-delay: 0.6s;
}

.rev-astep-7 {
  animation-delay: 0.7s;
}

.rev-astep-8 {
  animation-delay: 0.8s;
}

.rev-astep-9 {
  animation-delay: 0.9s;
}

.rev-astep-10 {
  animation-delay: 1s;
}

.rev-astep-11 {
  animation-delay: 1.1s;
}

.rev-astep-12 {
  animation-delay: 1.2s;
}

@media (prefers-reduced-motion: reduce) {
  .rev {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .rev-in,
  .rev-anim.rev-shown {
    animation: none;
  }

  .rev-anim {
    opacity: 1;
  }
}
