.loader {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 30px auto;
}

.loader-spinner,
.loader-spinner:after {
  border-radius: 50%;
  width: 10em;
  height: 10em;
}

.loader-spinner {
  margin-bottom: 15px;
  font-size: 4px;
  position: relative;
  text-indent: -9999em;
  border-top: 1em solid #cb0e5e;
  border-right: 1em solid #cb0e5e;
  border-bottom: 1em solid #cb0e5e;
  border-left: 1.1em solid #ffffff;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: anim 1.1s infinite linear;
  animation: anim 1.1s infinite linear;
}

@-webkit-keyframes anim {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes anim {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
