.desert {
  position: relative;
  height: 8rem;
  overflow: hidden;
}

.desert .tumbleweed {
  position: absolute;
  top: 0;
  left: -5rem;
  background: url(https://cdn-icons-png.flaticon.com/512/1171/1171228.png)
    no-repeat center;
  background-size: cover;
  width: 5rem;
  height: 5rem;
  animation:
    jumping 1.5s infinite,
    rolling 5s linear infinite,
    rotating 2s linear infinite;
}
.tumbleweed:nth-child(2) {
  animation-delay: 2.5s;
}
.tumbleweed:nth-child(3) {
  animation-delay: 3.25s;
}
.tumbleweed:nth-child(4) {
  animation-delay: 4s;
}
.tumbleweed:nth-child(5) {
  animation-delay: 6s;
}

@keyframes jumping {
  0% {
    top: 0rem;
    animation-timing-function: ease-in;
  }
  25% {
    top: 3rem;
    animation-timing-function: ease-out;
  }
  50% {
    top: 1rem;
    animation-timing-function: ease-in;
  }
  75% {
    top: 3rem;
    animation-timing-function: ease-out;
  }
  100% {
    top: 0rem;
    animation-timing-function: ease-in;
  }
}

@keyframes rolling {
  0% {
    left: -5rem;
  }
  100% {
    left: 100%;
  }
}

@keyframes rotating {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
