/* Animations garanties sauf activation explicite du bouton "reduire les animations". */
@-webkit-keyframes rncp-bloki-thinking {
  0%,
  100% {
    -webkit-transform: translateY(0) rotate(0deg);
    transform: translateY(0) rotate(0deg);
  }

  45% {
    -webkit-transform: translateY(-4px) rotate(-1.2deg);
    transform: translateY(-4px) rotate(-1.2deg);
  }

  70% {
    -webkit-transform: translateY(-1px) rotate(1deg);
    transform: translateY(-1px) rotate(1deg);
  }
}

@-webkit-keyframes rncp-bloki-thought {
  0%,
  100% {
    -webkit-transform: translateY(0) scale(1);
    transform: translateY(0) scale(1);
    opacity: .72;
  }

  50% {
    -webkit-transform: translateY(-3px) scale(1.08);
    transform: translateY(-3px) scale(1.08);
    opacity: 1;
  }
}

@media (min-width: 861px) {
  html:not(.reduce-motion) body.page-index:not(.reduce-motion) .carousel-slide {
    transition: opacity .65s ease, transform .65s ease !important;
  }

  html:not(.reduce-motion) body.page-index:not(.reduce-motion) .feature-bloki .bloki-happy-animation {
    animation: bloki-happy-bounce 3.8s cubic-bezier(.32, 1, .36, 1) infinite !important;
    animation-duration: 3.8s !important;
    animation-iteration-count: infinite !important;
    animation-play-state: running !important;
    transform-origin: center 82% !important;
    will-change: transform !important;
  }

  html:not(.reduce-motion) body.page-index:not(.reduce-motion) .feature-bloki .bloki-happy-animation:hover {
    animation-play-state: running !important;
  }

  html:not(.reduce-motion) body.page-login:not(.reduce-motion) .login-bloki-stage img {
    animation: login-bloki-float 3.2s ease-in-out infinite !important;
    animation-duration: 3.2s !important;
    animation-iteration-count: infinite !important;
  }

  html:not(.reduce-motion) body.page-login:not(.reduce-motion) .login-key {
    animation: login-key-unlock 3.2s ease-in-out infinite !important;
    animation-duration: 3.2s !important;
    animation-iteration-count: infinite !important;
  }

  html:not(.reduce-motion) body.page-login:not(.reduce-motion) .login-key::after {
    animation: login-key-shine 2.4s ease-in-out infinite !important;
    animation-duration: 2.4s !important;
    animation-iteration-count: infinite !important;
  }

  html:not(.reduce-motion) body.page-compare-rncp:not(.reduce-motion) .rncp-analysis-modal__bloki-visual img {
    -webkit-animation: rncp-bloki-thinking 2.6s ease-in-out infinite !important;
    animation: rncp-bloki-thinking 2.6s ease-in-out infinite !important;
    -webkit-animation-duration: 2.6s !important;
    animation-duration: 2.6s !important;
    -webkit-animation-iteration-count: infinite !important;
    animation-iteration-count: infinite !important;
    -webkit-backface-visibility: hidden !important;
    backface-visibility: hidden !important;
    will-change: transform !important;
  }

  html:not(.reduce-motion) body.page-compare-rncp:not(.reduce-motion) .rncp-analysis-modal__thought {
    -webkit-animation: rncp-bloki-thought 1.8s ease-in-out infinite !important;
    animation: rncp-bloki-thought 1.8s ease-in-out infinite !important;
    -webkit-animation-duration: 1.8s !important;
    animation-duration: 1.8s !important;
    -webkit-animation-iteration-count: infinite !important;
    animation-iteration-count: infinite !important;
    will-change: transform, opacity !important;
  }
}
