.loader-1 {
  --loader-1-color: #3498dbcc;
  --loader-1-length: 80px;
  --loader-1-thickness: 4px;

  position: relative;
  display: grid;
  place-items: center;
}

.loader-1::before,
.loader-1::after {
  content: '';
  box-sizing: border-box;
  position: absolute;
}

.loader-1::before {
  height: var(--loader-1-thickness);
  width: var(--loader-1-length);
  border-radius: var(--loader-1-thickness);
  background-color: var(--loader-1-color);
  animation: loader-1 1.5s ease-in-out infinite;
}

@keyframes loader-1 {
  0%,
  100% {
    opacity: 0;
  }

  15%,
  85% {
    opacity: 1;
  }

  0%,
  10%,
  90%,
  100% {
    transform: scaleX(0);
  }

  45%,
  55% {
    transform: scaleX(1);
  }

  0%,
  40% {
    transform-origin: left;
  }

  60%,
  100% {
    transform-origin: right;
  }
}
