body {
  background-color: #EEDAD1;
  font-size: 16px;
}

.loadster {
  position: relative;
  margin: 10em auto;
  width: 308px;
  height: 308px;
}
.loadster__body {
  position: absolute;
  width: 300px;
  height: 300px;
  border: 4px solid #373D46;
  border-radius: 50%;
  background-color: #89b793;
}
.loadster__body::before {
  content: "";
  position: absolute;
  width: 200px;
  height: 200px;
  top: 46px;
  left: 46px;
  border: 4px solid #373D46;
  border-radius: 50%;
  background-color: #EEDAD1;
}
.loadster__body::after {
  content: "";
  position: absolute;
  top: 10.6153846154px;
  left: 10.6153846154px;
  width: 230.7692307692px;
  height: 230.7692307692px;
  border: 24px solid #99CCA4;
  border-radius: 50%;
}
.loadster__mask {
  position: absolute;
  width: 50%;
  height: 50%;
  background-color: #EEDAD1;
  -webkit-transform-origin: right bottom;
          transform-origin: right bottom;
}
.loadster__mask::before {
  content: "";
  position: absolute;
  left: 100%;
  width: 100%;
  height: 100%;
  background-color: #EEDAD1;
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
}
.loadster__mask::after {
  content: "";
  position: absolute;
  top: 100%;
  width: 100%;
  height: 100%;
  background-color: #EEDAD1;
  -webkit-transform-origin: right top;
          transform-origin: right top;
}
.loadster__head {
  position: absolute;
  top: 0;
  right: 0;
  width: 50%;
  height: 50%;
  background-color: #EEDAD1;
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
}
.loadster__bottom {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 50%;
  height: 50%;
  background-color: #EEDAD1;
  -webkit-transform-origin: right top;
          transform-origin: right top;
}

.head__face {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 46px;
  height: 50px;
  background-color: #89b793;
  border: 4px solid #373D46;
  border-bottom: 0;
  border-radius: 50% 50% 0 0;
}

.head__ear {
  position: absolute;
  top: 85px;
  right: -4.6666666667px;
  width: 15px;
  height: 20px;
  background-color: #89b793;
  border: 4px solid #373D46;
  border-radius: 50% 0;
  border-top: 0;
  border-right: 0;
}
.head__ear::before {
  content: "";
  position: absolute;
  top: 0;
  right: 44.2105263158px;
  width: 15px;
  height: 20px;
  background-color: #89b793;
  border: 4px solid #373D46;
  border-radius: 0 50%;
  border-top: 0;
  border-left: 0;
}

.head__horn {
  position: absolute;
  top: 81.0810810811px;
  right: 17px;
  width: 0;
  height: 13.6363636364px;
  border: 4px solid #373D46;
  border-left: 0;
}
.head__horn::before {
  content: "";
  position: absolute;
  top: -4px;
  right: 11.5px;
  width: 0;
  height: 13.6363636364px;
  border: 4px solid #373D46;
  border-right: 0;
}

.horn__circle {
  position: absolute;
  top: -13.6363636364px;
  right: -8.5714285714px;
  width: 4.2857142857px;
  height: 4.2857142857px;
  background-color: #89b793;
  border: 4px solid #373D46;
  border-radius: 50%;
}
.horn__circle::before {
  content: "";
  position: absolute;
  top: -4px;
  right: 11.2380952381px;
  width: 4.2857142857px;
  height: 4.2857142857px;
  background-color: #89b793;
  border: 4px solid #373D46;
  border-radius: 50%;
}

.head__eye {
  position: absolute;
  top: 107.1428571429px;
  right: 11px;
  width: 4.2857142857px;
  height: 4.2857142857px;
  background-color: #FFFFCC;
  border: 4px solid #373D46;
  border-radius: 50%;
}
.head__eye::before {
  content: "";
  position: absolute;
  top: -4px;
  right: 16px;
  width: 4.2857142857px;
  height: 4.2857142857px;
  background-color: #FFFFCC;
  border: 4px solid #373D46;
  border-radius: 50%;
}

.head__smile {
  content: "";
  position: absolute;
  top: 120px;
  right: -1px;
  width: 50px;
  height: 6px;
  border: 4px solid #373D46;
  border-top: 0;
  border-radius: 50%;
}

.head__hand {
  position: absolute;
  width: 60px;
  height: 50px;
  top: 136.3636363636px;
  right: -8px;
  border: 4px solid;
  border-color: transparent #373D46 transparent transparent;
  border-radius: 0 0 50% 0;
  -webkit-transform: rotate(10deg);
          transform: rotate(10deg);
}
.head__hand::before {
  content: "";
  position: absolute;
  width: 60px;
  height: 50px;
  top: 0;
  right: 46px;
  border: 4px solid;
  border-color: transparent #373D46 transparent transparent;
  border-radius: 0 0 50% 0;
}

.bottom__foot {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 37.5px;
  height: 12px;
  background-color: #89b793;
  border: 4px solid #373D46;
  border-right: 0;
  border-radius: 100% 0 0 0;
}
.bottom__foot::before {
  content: "";
  position: absolute;
  bottom: 30px;
  right: 0;
  width: 37.5px;
  height: 12px;
  background-color: #89b793;
  border: 4px solid #373D46;
  border-right: 0;
  border-radius: 0 0 0 100%;
}
.bottom__foot::after {
  content: "";
  position: absolute;
  bottom: 12px;
  right: 0;
  width: 0;
  height: 10px;
  border: 4px solid #373D46;
  border-left: 0;
}

.loadster__mask {
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
  -webkit-animation: mask-circle 2s 1s infinite;
          animation: mask-circle 2s 1s infinite;
}
.loadster__mask::before {
  -webkit-animation: mask-circle-right 2s 1s infinite;
          animation: mask-circle-right 2s 1s infinite;
}
.loadster__mask::after {
  -webkit-animation: mask-circle-left 2s 1s infinite;
          animation: mask-circle-left 2s 1s infinite;
}

.loadster__head {
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
  -webkit-animation: head-circle 2s 1s infinite;
          animation: head-circle 2s 1s infinite;
  -webkit-animation-timing-function: cubic-bezier(0.2, 0, 0.1, 1);
          animation-timing-function: cubic-bezier(0.2, 0, 0.1, 1);
}

.loadster__bottom {
  -webkit-animation: bottom-circle 2s 1s infinite;
          animation: bottom-circle 2s 1s infinite;
  -webkit-animation-timing-function: cubic-bezier(0.2, 0, 0.42, 1);
          animation-timing-function: cubic-bezier(0.2, 0, 0.42, 1);
}

@-webkit-keyframes mask-circle {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-720deg);
            transform: rotate(-720deg);
  }
}

@keyframes mask-circle {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-720deg);
            transform: rotate(-720deg);
  }
}
@-webkit-keyframes mask-circle-right {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  50% {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@keyframes mask-circle-right {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  50% {
    -webkit-transform: rotate(-90deg);
            transform: rotate(-90deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@-webkit-keyframes mask-circle-left {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  50% {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@keyframes mask-circle-left {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  50% {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
}
@-webkit-keyframes head-circle {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-720deg);
            transform: rotate(-720deg);
  }
}
@keyframes head-circle {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(-720deg);
            transform: rotate(-720deg);
  }
}
@-webkit-keyframes bottom-circle {
  0% {
    -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg);
  }
  100% {
    -webkit-transform: rotate(-730deg);
            transform: rotate(-730deg);
  }
}
@keyframes bottom-circle {
  0% {
    -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg);
  }
  100% {
    -webkit-transform: rotate(-730deg);
            transform: rotate(-730deg);
  }
}
