@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

/* Firefox < 16 */
@-moz-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

/* Internet Explorer */
@-ms-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

/* Opera < 12.1 */
@-o-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.anim-fade-in {
  animation-name: fadeIn;
  animation-duration: .3s; }

/* PULSE ANIMATION */
@keyframes pulse {
  0% {
    transform: scale(1); }
  50% {
    transform: scale(1.2); }
  100% {
    transform: scale(1); } }

/* Firefox < 16 */
@-moz-keyframes pulse {
  0% {
    transform: scale(1); }
  50% {
    transform: scale(1.2); }
  100% {
    transform: scale(1); } }

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes pulse {
  0% {
    transform: scale(1); }
  50% {
    transform: scale(1.2); }
  100% {
    transform: scale(1); } }

/* Internet Explorer */
@-ms-keyframes pulse {
  0% {
    transform: scale(1); }
  50% {
    transform: scale(1.2); }
  100% {
    transform: scale(1); } }

/* Opera < 12.1 */
@-o-keyframes pulse {
  0% {
    transform: scale(1); }
  50% {
    transform: scale(1.2); }
  100% {
    transform: scale(1); } }

.anim-pulse {
  animation-name: pulse;
  animation-duration: 1.5s;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out; }

.hover-stop:hover {
  animation-play-state: paused; }

.anim-rotate {
  animation: rotateIcon 1s infinite ease-in-out;
  animation-direction: alternate-reverse; }

@keyframes rotateIcon {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(30deg); } }
