.cubespinner {
  -webkit-animation-name: spincube;
  -webkit-animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-duration: 8s;
  animation-name: spincube;

  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-duration: 8s;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transform-origin: 20px 30px 0;
  -ms-transform-origin: 20px 30px 0;
  transform-origin: 20px 30px 0;
  position: relative;
}
.cubespinner div {
  position: absolute;
  width: 400px;
  height: 75px;
  text-align: left;
  color: #109393;
  font-weight: 800;
  font-size: 3.5em;
  letter-spacing: -2px;
}
.cubespinner .face1 {
  color: #f1c40f;
  -webkit-transform: translateZ(30px);
  -ms-transform: translateZ(30px);
  transform: translateZ(30px) translateY(-7px);
  -webkit-backface-visibility: hidden;
}
.cubespinner .face2 {
  color: var(---dark);
  -webkit-transform: rotateX(90deg) translateZ(30px);
  -ms-transform: rotateX(90deg) translateZ(30px);
  transform: rotateX(90deg) translateZ(30px);
  -webkit-backface-visibility: hidden;
}
.cubespinner .face3 {
  color: #f85555;
  -webkit-transform: rotateX(180deg) translateZ(30px) translateY(7px);
  -ms-transform: rotateX(180deg) translateZ(30px) translateY(7px);
  transform: rotateX(180deg) translateZ(30px) translateY(7px);
  -webkit-backface-visibility: hidden;
}
.cubespinner .face4 {
  color: #fff;
  -webkit-transform: rotateX(270deg) translateZ(30px);
  -ms-transform: rotateX(270deg) translateZ(30px);
  transform: rotateX(270deg) translateZ(30px);
  -webkit-backface-visibility: hidden;
}

/*Cubical Flipping or rotation*/
@-webkit-keyframes spincube {
  from,
  to {
    -webkit-transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg);
  }
  15% {
    -webkit-transform: rotateX(90deg);
  }
  25% {
    -webkit-transform: rotateX(90deg);
  }
  40% {
    -webkit-transform: rotateX(180deg);
  }
  50% {
    -webkit-transform: rotateX(180deg);
  }
  65% {
    -webkit-transform: rotateX(270deg);
  }
  75% {
    -webkit-transform: rotateX(270deg);
  }
  95% {
    -webkit-transform: rotateX(360deg);
  }
  100% {
    -webkit-transform: rotateX(360deg);
  }
}
@keyframes spincube {
  from,
  to {
    -webkit-transform: rotateX(0deg);
    -ms-transform: rotateX(0deg);
    transform: rotateX(0deg);
  }
  15% {
    -webkit-transform: rotateX(90deg);
    -ms-transform: rotateX(90deg);
    transform: rotateX(90deg);
  }
  25% {
    -webkit-transform: rotateX(90deg);
    -ms-transform: rotateX(90deg);
    transform: rotateX(90deg);
  }
  40% {
    -webkit-transform: rotateX(180deg);
    -ms-transform: rotateX(180deg);
    transform: rotateX(180deg);
  }
  50% {
    -webkit-transform: rotateX(180deg);
    -ms-transform: rotateX(180deg);
    transform: rotateX(180deg);
  }
  65% {
    -webkit-transform: rotateX(270deg);
    -ms-transform: rotateX(270deg);
    transform: rotateX(270deg);
  }
  75% {
    -webkit-transform: rotateX(270deg);
    -ms-transform: rotateX(270deg);
    transform: rotateX(270deg);
  }
  90% {
    -webkit-transform: rotateX(360deg);
    -ms-transform: rotateX(360deg);
    transform: rotateX(360deg);
  }
  100% {
    -webkit-transform: rotateX(360deg);
    -ms-transform: rotateX(360deg);
    transform: rotateX(360deg);
  }
}
