.section--cavalinho {
  position: relative;
  width: 100vw;
  height: clamp(9rem, 5.8333rem + 14.0741vw, 18.5rem);
  margin-bottom: calc(var(--space) / 2);
  overflow: hidden;
}

.cavalinho {
  position: absolute;
  left: 0;
  height: 100%;
  aspect-ratio: 4 / 3;
  animation-duration: 5s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

.left-to-right {
  animation-name: leftToRight;
}

.right-to-left {
  animation-name: rightToLeft;
}

.cavalinho__sprite {
  width: 100%;
  height: 100%;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  animation: swap 0.6s step-end infinite;
}

.right-to-left .cavalinho__sprite {
  transform: scaleX(-1);
}

@keyframes leftToRight {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100vw);
  }
}

@keyframes rightToLeft {
  0% {
    transform: translateX(100vw);
  }
  100% {
    transform: translateX(-100%);
  }
}

@keyframes swap {
  0% {
    background-image: url("../images/cavalinho/cavalinho-01.svg");
  }
  16.66% {
    background-image: url("../images/cavalinho/cavalinho-02.svg");
  }
  33.33% {
    background-image: url("../images/cavalinho/cavalinho-03.svg");
  }
  50.00% {
    background-image: url("../images/cavalinho/cavalinho-04.svg");
  }
  66.66% {
    background-image: url("../images/cavalinho/cavalinho-05.svg");
  }
  83.33% {
    background-image: url("../images/cavalinho/cavalinho-06.svg");
  }
  100% {
    background-image: url("../images/cavalinho/cavalinho-01.svg");
  }
}
