
@-webkit-keyframes rotate {
  from {
    -webkit-transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(360deg);
  }
}

@-webkit-keyframes rotate-opp {
  from {
    -webkit-transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(-360deg);
  }
}

.cog * {
  -webkit-animation: rotate 2.2s infinite;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-timing-function: linear;
}

.cog-opp * {
  -webkit-animation: rotate-opp 2s infinite;
  -webkit-transform-origin: 50% 50%;
  -webkit-animation-timing-function: linear;
}


/* Pre-animation cycle */

progress {
  width: 0;
  display: none;
}

.cogs {
  margin-top: -80px;
  opacity: 0;
}


.cogs {
  /* Some layout code… */
  animation: xAxis 15s infinite ease-in;
}

.cogs::after {
  /* Render dot */
  animation: yAxis 6s infinite ease-out;
}

@keyframes xAxis {
  100% {
    animation-timing-function: ease-in;
    transform: translateX(1500px);
  }
}