.bounceAnimation() {
  animation-name: bouncy;
  animation-duration: 2s;
  animation-iteration-count: infinite;
}

.bouncy-btn {
  position: relative;

  &:hover {
    .bounceAnimation();
  }

  &.animated {
    .bounceAnimation();
  }

  @keyframes bouncy {
    10%,
    70%,
    40%,
    0%,
    100% {
      // -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      // -webkit-transform: translate3d(0, 0, 0);
      animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      transform: translate3d(0, 0, 0);
    }
    30% {
      // -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
      // -webkit-transform: translate3d(0, -60px, 0);
      animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
      transform: translate3d(0, -60px, 0);
    }
    60% {
      // -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
      // -webkit-transform: translate3d(0, -30px, 0);
      animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
      transform: translate3d(0, -30px, 0);
    }
    90% {
      // -webkit-transform: translate3d(0, -15px, 0);
      transform: translate3d(0, -15px, 0);
    }
  }
}
