.fade-in {
  -webkit-animation: fade-in 1.5s; /* Safari, Chrome and Opera > 12.1 */
  -moz-animation: fade-in 1.5s; /* Firefox < 16 */
  -ms-animation: fade-in 1.5s; /* Internet Explorer */
  -o-animation: fade-in 1.5s; /* Opera < 12.1 */
  animation: fade-in 1.5s;
}

@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

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

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

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

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

.spinning {
  -webkit-animation: spin 1.5s linear infinite; /* Safari, Chrome and Opera > 12.1 */
  -moz-animation: spin 1.5s linear infinite; /* Firefox < 16 */
  -ms-animation: spin 1.5s linear infinite; /* Internet Explorer */
  -o-animation: spin 1.5s linear infinite; /* Opera < 12.1 */
  animation: spin 1.5s linear infinite;
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Firefox < 16 */
@-moz-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Internet Explorer */
@-ms-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/* Opera < 12.1 */
@-o-keyframes spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
