@keyframes animatetop {
  from {
    top: -100px;
    opacity: 0;
  }

  to {
    top: 0;
    opacity: 1;
  }
}

@-webkit-keyframes animatebottom {
  from {
    bottom: -100px;
    opacity: 0;
  }

  to {
    bottom: 0;
    opacity: 1;
  }
}

@keyframes animatebottom {
  from {
    bottom: -100px;
    opacity: 0;
  }

  to {
    bottom: 0;
    opacity: 1;
  }
}

.animate-bottom {
  -webkit-animation: animatebottom 1s;
  animation: animatebottom 1s;
}

@keyframes zoomInAnimation {
  0% {
    transform: scale(0.4);
    opacity: 0;
  }

  15% {
    transform: scale(0.4);
    opacity: 0;
  }

  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.zoom-in {
  animation: zoomInAnimation 2.5s;
}

@keyframes slideOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0);
    max-height: 200px;
  }

  50% {
    opacity: 0;
    transform: translateX(-20px);
    max-height: 200px;
  }

  100% {
    opacity: 0;
    transform: translateX(-30px);
    max-height: 0;
    padding: 0;
    margin: 0;
  }
}

@keyframes toastSlideIn {
  from {
    transform: translateX(100%);
    opacity: 0;
  }

  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes toastSlideOut {
  from {
    transform: translateX(0);
    opacity: 1;
  }

  to {
    transform: translateX(100%);
    opacity: 0;
  }
}

@keyframes slideInFromRight {
  0% {
    opacity: 0;
    transform: translateX(30px);
    max-height: 0;
  }

  50% {
    opacity: 0;
    transform: translateX(15px);
    max-height: 200px;
  }

  100% {
    opacity: 1;
    transform: translateX(0);
    max-height: 200px;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes slideInFromTop {
  from {
    transform: translateY(-50px);
    opacity: 0;
  }

  to {
    transform: translateY(0);
    opacity: 1;
  }
}

@keyframes loading-dots {

  0%,
  20% {
    content: "...";
  }

  40% {
    content: "..";
  }

  60% {
    content: ".";
  }

  80%,
  100% {
    content: "";
  }
}

@keyframes bounceIn {
  0% {
    transform: translateX(-50%) scale(0);
    opacity: 0;
  }

  50% {
    transform: translateX(-50%) scale(1.1);
    opacity: .7;
  }

  100% {
    transform: translateX(-50%) scale(1);
    opacity: 1;
  }
}

.anim-bounce-in {
  animation: bounceIn 0.4s ease;
}

@keyframes slideLeft {
  0% {
    transform: translateX(0);
    opacity: 1;
  }

  100% {
    transform: translateX(-100%);
    opacity: 0;
  }
}

@keyframes slideRight {
  0% {
    transform: translateX(0);
    opacity: 1;
  }

  100% {
    transform: translateX(100%);
    opacity: 0;
  }
}

@keyframes slideInFromLeft {
  0% {
    transform: translateX(-100%);
    opacity: 0;
  }

  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes slideInFromRightBasic {
  0% {
    transform: translateX(100%);
    opacity: 0;
  }

  100% {
    transform: translateX(0);
    opacity: 1;
  }
}

@keyframes arrowFade {

  0%,
  100% {
    opacity: 0.2;
  }

  50% {
    opacity: 1;
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes pulse {
  0% {
    opacity: 1;
  }

  50% {
    opacity: 0.2;
  }

  100% {
    opacity: 1;
  }
}

@keyframes rotateHourglass {
  0% {
    transform: rotate(0deg);
  }

  25% {
    transform: rotate(180deg);
  }

  50% {
    transform: rotate(180deg);
  }

  75% {
    transform: rotate(360deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes boxoffice-rotate {
  0% {
    transform: rotate(0deg);
  }

  15% {
    transform: rotate(0deg);
  }

  35% {
    transform: rotate(180deg);
  }

  65% {
    transform: rotate(180deg);
  }

  85% {
    transform: rotate(360deg);
  }

  100% {
    transform: rotate(360deg);
  }
}