/* dance
----------------------------------------------- */
.dance {
  opacity: 1 !important;
  visibility: visible !important;
  -webkit-animation: dance 1 2s linear;
  -moz-animation: dance 1 2s linear;
  -ms-animation: dance 1 2s linear;
  -o-animation: dance 1 2s linear;
  animation: dance 1 2s linear;
}
@-webkit-keyframes dance {
  0%, 10%, 20% {
    -webkit-transform: rotateZ(10deg);
  }
  5%, 15%, 25% {
    -webkit-transform: rotateZ(-10deg);
  }
  35%, 60%, 100% {
    -webkit-transform: scale(1) rotateZ(0deg);
  }
  40% {
    -webkit-transform: scale(1.3);
  }
}
@-moz-keyframes dance {
  0%, 10%, 20% {
    -moz-transform: rotateZ(10deg);
  }
  5%, 15%, 25% {
    -moz-transform: rotateZ(-10deg);
  }
  35%, 60%, 100% {
    -moz-transform: scale(1) rotateZ(0deg);
  }
  40% {
    -moz-transform: scale(1.3);
  }
}
@-ms-keyframes dance {
  0%, 10%, 20% {
    -ms-transform: rotateZ(10deg);
  }
  5%, 15%, 25% {
    -ms-transform: rotateZ(-10deg);
  }
  35%, 60%, 100% {
    -ms-transform: scale(1) rotateZ(0deg);
  }
  40% {
    -ms-transform: scale(1.3);
  }
}
@-o-keyframes dance {
  0%, 10%, 20% {
    -o-transform: rotateZ(10deg);
  }
  5%, 15%, 25% {
    -o-transform: rotateZ(-10deg);
  }
  35%, 60%, 100% {
    -o-transform: scale(1) rotateZ(0deg);
  }
  40% {
    -o-transform: scale(1.3);
  }
}
@-moz-keyframes dance {
  0%, 10%, 20% {
    transform: rotateZ(10deg);
  }
  5%, 15%, 25% {
    transform: rotateZ(-10deg);
  }
  35%, 60%, 100% {
    transform: scale(1) rotateZ(0deg);
  }
  40% {
    transform: scale(1.3);
  }
}
@-webkit-keyframes dance {
  0%, 10%, 20% {
    transform: rotateZ(10deg);
  }
  5%, 15%, 25% {
    transform: rotateZ(-10deg);
  }
  35%, 60%, 100% {
    transform: scale(1) rotateZ(0deg);
  }
  40% {
    transform: scale(1.3);
  }
}
@-o-keyframes dance {
  0%, 10%, 20% {
    transform: rotateZ(10deg);
  }
  5%, 15%, 25% {
    transform: rotateZ(-10deg);
  }
  35%, 60%, 100% {
    transform: scale(1) rotateZ(0deg);
  }
  40% {
    transform: scale(1.3);
  }
}
@keyframes dance {
  0%, 10%, 20% {
    transform: rotateZ(10deg);
  }
  5%, 15%, 25% {
    transform: rotateZ(-10deg);
  }
  35%, 60%, 100% {
    transform: scale(1) rotateZ(0deg);
  }
  40% {
    transform: scale(1.3);
  }
}

/***** Bounce ******/
.enter-up-bounce {
  -webkit-animation: enterUpBounce 0.5s ease-in forwards;
  -moz-animation: enterUpBounce 0.5s ease-in forwards;
  -ms-animation: enterUpBounce 0.5s ease-in forwards;
  -o-animation: enterUpBounce 0.5s ease-in forwards;
  animation: enterUpBounce 0.5s ease-in forwards;
}
@-webkit-keyframes enterUpBounce {
  0% {
    -webkit-transform: translateY(-80px);
    opacity: 0;
    visibility: hidden;
  }
  50% {
    -webkit-transform: translateY(0px);
  }
  70% {
    -webkit-transform: translateY(-20px);
  }
  100% {
    -webkit-transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@-moz-keyframes enterUpBounce {
  0% {
    -moz-transform: translateY(-80px);
    opacity: 0;
    visibility: hidden;
  }
  50% {
    -moz-transform: translateY(0px);
  }
  70% {
    -moz-transform: translateY(-20px);
  }
  100% {
    -moz-transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@-ms-keyframes enterUpBounce {
  0% {
    -ms-transform: translateY(-80px);
    opacity: 0;
    visibility: hidden;
  }
  50% {
    -ms-transform: translateY(0px);
  }
  70% {
    -ms-transform: translateY(-20px);
  }
  100% {
    -ms-transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@-o-keyframes enterUpBounce {
  0% {
    -o-transform: translateY(-80px);
    opacity: 0;
    visibility: hidden;
  }
  50% {
    -o-transform: translateY(0px);
  }
  70% {
    -o-transform: translateY(-20px);
  }
  100% {
    -o-transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@-moz-keyframes enterUpBounce {
  0% {
    transform: translateY(-80px);
    opacity: 0;
    visibility: hidden;
  }
  50% {
    transform: translateY(0px);
  }
  70% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@-webkit-keyframes enterUpBounce {
  0% {
    transform: translateY(-80px);
    opacity: 0;
    visibility: hidden;
  }
  50% {
    transform: translateY(0px);
  }
  70% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@-o-keyframes enterUpBounce {
  0% {
    transform: translateY(-80px);
    opacity: 0;
    visibility: hidden;
  }
  50% {
    transform: translateY(0px);
  }
  70% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}
@keyframes enterUpBounce {
  0% {
    transform: translateY(-80px);
    opacity: 0;
    visibility: hidden;
  }
  50% {
    transform: translateY(0px);
  }
  70% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
}