* {
  font-family: 'XBRoyaBold';
  font-weight: normal;
  font-style: normal;
}

.empty-state {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  text-align: center;
}

.icon-wrap {
  width: 144px;
  height: 144px;
  background: #F8F8F8;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: auto;
}

.sleeping-bus svg {
  width: 77px;
  overflow: visible;
}
.sleeping-bus .bus {
  animation: 4s sleeping-animation cubic-bezier(0.645, 0.045, 0.355, 1) infinite;
  transform-origin: 28px 54px;
}
.sleeping-bus .bus .mouth {
  animation: 4s sleeping-animation-mouth cubic-bezier(0.645, 0.045, 0.355, 1) infinite;
  transform-origin: 27px 40px;
}
@keyframes sleeping-animation {
  0%, 90%, 100% {
    transform: scaleY(1);
  }
  35%, 40% {
    transform: scaleY(1.1);
  }
}
@keyframes sleeping-animation-mouth {
  0%, 90%, 100% {
    transform: scaleX(1) scaleY(1);
  }
  35%, 40% {
    transform: scaleX(0.5) scaleY(1.5);
  }
}
.sleeping-bus .zs .z {
  transform-origin: 27px 0;
  animation: zs 4s cubic-bezier(0.645, 0.045, 0.355, 1) infinite;
  stroke-dasharray: 18px;
  animation-delay: 2s;
}
.sleeping-bus .zs .second {
  animation-delay: 3s;
}
.sleeping-bus .zs .third {
  animation-delay: 4s;
}
@keyframes zs {
  0% {
    transform: translateY(-12px) translateX(0);
    stroke-dashoffset: 0;
    stroke-width: 2px;
  }
  25% {
    transform: translateY(-30px) translateX(-10px);
  }
  50% {
    transform: translateY(-40px) translateX(5px);
  }
  75% {
    transform: translateY(-50px) translateX(-5px);
  }
  100% {
    transform: translateY(-60px) translateX(0);
    stroke-dashoffset: 20px;
    stroke-width: 0px;
  }
}
