.js_blur_reveal {
  --blur_duration: 1.2s;
  --blur_delay: 0s;
  --blur_amount: 12px;
  --blur_move: 0.8rem;
  opacity: 0;
  filter: blur(var(--blur_amount));
  transform: translate3d(0, var(--blur_move), 0);
  transition: opacity var(--blur_duration) ease, filter calc(var(--blur_duration) + 0.2s) ease, transform var(--blur_duration) ease;
  transition-delay: var(--blur_delay);
  will-change: opacity, filter, transform;
}

.js_blur_reveal.is_shown {
  opacity: 1;
  filter: blur(0);
  transform: translate3d(0, 0, 0);
}

@media (prefers-reduced-motion: reduce) {
  .js_blur_reveal {
    opacity: 1;
    filter: blur(0);
    transform: none;
    transition: none;
  }
}
.js_fade_up {
  --fade_up_duration: 1s;
  --fade_up_delay: 0s;
  --fade_up_y: 10px;
  opacity: 0;
  transform: translate3d(0, var(--fade_up_y), 0);
  transition: opacity var(--fade_up_duration) ease, transform var(--fade_up_duration) ease;
  transition-delay: var(--fade_up_delay);
  will-change: opacity, transform;
}

.js_fade_up.is_shown {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}

@media (prefers-reduced-motion: reduce) {
  .js_fade_up {
    opacity: 1;
    transform: none;
    transition: none;
  }
}
.js_run_in_left {
  --run_in_duration: 1.2s;
  --run_in_delay: 0.5s;
  --run_in_x: 40px;
  --run_in_y: 2px;
  opacity: 0;
  transform: translate3d(var(--run_in_x), 0, 0);
  transition: opacity var(--run_in_duration) ease, transform var(--run_in_duration) cubic-bezier(0.22, 0.61, 0.36, 1);
  transition-delay: var(--run_in_delay);
  will-change: opacity, transform;
}
.js_run_in_left img {
  display: block;
  transform: translate3d(0, 0, 0);
  will-change: transform;
}

.js_run_in_left.is_shown {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
.js_run_in_left.is_shown img {
  animation: pig_run_bounce 0.5s ease 0.1s 2;
}

@keyframes pig_run_bounce {
  0% {
    transform: translate3d(0, 0, 0);
  }
  25% {
    transform: translate3d(0, calc(var(--run_in_y) * -1), 0);
  }
  50% {
    transform: translate3d(0, 0, 0);
  }
  75% {
    transform: translate3d(0, calc(var(--run_in_y) * -0.6), 0);
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .js_run_in_left {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .js_run_in_left img {
    animation: none;
    transform: none;
  }
}