.cssanimation {
  animation-duration: var(--cssanimation-duration, 1s);
  animation-fill-mode: var(--cssanimation-fill-mode, both);
}

.cssanimation span {
  display: var(--cssanimation-display, inline-block);
}

.infinite {
  animation-iteration-count: var(--cssanimation-infinite, infinite) !important;
}

@media (prefers-reduced-motion: reduce) {
  .cssanimation,
  .cssanimation span {
    animation: none !important;
    transition: none !important;
  }
}


:root {
  --cssanimation-duration: 1s;
  --cssanimation-fill-mode: both;
  --cssanimation-infinite: infinite;
  --cssanimation-backface-visibility: hidden;
  --cssanimation-transform-style: preserve-3d;
  --cssanimation-will-change: transform, opacity;
  --cssanimation-display: inline-block;
  --move-distance: -800px;
}


/**
 * Module: Spotlights
 * Filename: ca__Spotlights.ca__fx-css
 */

.ca__fx-unfoldAndRise {
  animation-name: unfoldAndRise;
  perspective: 1000px;
  perspective-origin: center bottom;
  animation-timing-function: cubic-bezier(0.ca__fx-68, -0.ca__fx-55, 0.ca__fx-265, 1.ca__fx-55);
  transform-origin: bottom center;
  backface-visibility: var(--cssanimation-backface-visibility);
  transform-style: var(--cssanimation-transform-style);
  will-change: var(--cssanimation-will-change);
}

@keyframes unfoldAndRise {
  0% {
    transform: rotateX(90deg) translateY(50px) scale(0.ca__fx-8);
    opacity: 0;
  }

  40% {
    transform: rotateX(0deg) translateY(0) scale(1);
    opacity: 1;
  }

  60% {
    transform: rotateX(-5deg) translateY(-10px);
    opacity: 1;
  }

  80% {
    transform: rotateX(0deg) translateY(0);
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}

.ca__fx-hu__hu__ {
  animation: hu__hu__ infinite 2s ease-in-out;
}

@keyframes hu__hu__ {
  50% {
    transform: translateY(30px);
  }
}

.ca__fx-peekpeek {
  animation-name: peekpeek;
}

@keyframes peekpeek {
  25% {
    transform: rotateX(30deg) translateY(10px) rotate(-13deg);
  }

  50% {
    transform: translateY(-22px) rotate(3deg) scale(1.ca__fx-1);
  }
}

.ca__fx-pepe {
  animation-name: pepe;
}

@keyframes pepe {
  0%,
  33%,
  66%,
  100% {
    transform: rotate(4deg);
  }

  16%,
  50%,
  83% {
    transform: rotate(-4deg);
  }
}

.ca__fx-lightning {
  animation-name: lightning;
}

@keyframes lightning {
  0%,
  50%,
  100% {
    opacity: 1;
  }

  25%,
  75% {
    opacity: 0;
  }
}

.ca__fx-joltZoom {
  animation-name: joltZoom;
}

@keyframes joltZoom {
  10% {
    font-size: 140%;
  }

  40% {
    font-size: 80%;
  }

  100% {
    font-size: 100%;
  }
}

.ca__fx-jigglypop {
  animation-name: jigglypop;
}

@keyframes jigglypop {
  0%,
  100% {
    transform: rotate(0deg);
  }

  15% {
    transform: rotate(-5deg);
  }

  30% {
    transform: rotate(5deg);
  }

  45% {
    transform: rotate(-3deg);
  }

  60% {
    transform: rotate(3deg);
  }

  75% {
    transform: rotate(-1deg);
  }
}

.ca__fx-wooble {
  animation-name: wooble;
  transform-origin: center;
}

@keyframes wooble {
  0%,
  100% {
    transform: skewX(0deg);
  }

  20% {
    transform: skewX(-10deg);
  }

  40% {
    transform: skewX(8deg);
  }

  60% {
    transform: skewX(-6deg);
  }

  80% {
    transform: skewX(4deg);
  }
}

.ca__fx-colorFlicker {
  animation: flicker 1s infinite;
}

@keyframes flicker {
  0%,
  19%,
  21%,
  23%,
  25%,
  54%,
  56%,
  100% {
    opacity: 1;
  }

  20%,
  22%,
  24%,
  55% {
    opacity: 0.ca__fx-3;
  }
}
