.pantalla-carga{
  position:fixed;
  inset:0;
  z-index:1000;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background-color:#D9D9D9;
  opacity:1;
  visibility:visible;
  transition:opacity 650ms ease, visibility 650ms ease;
}

.pantalla-carga__contenido{
  position:relative;
  display:flex;
  width:min(88vw, 520px);
  flex-direction:column;
  align-items:center;
  gap:22px;
}

.pantalla-carga__ruta{
  position:relative;
  width:100%;
  height:210px;
}

.pantalla-carga__avion{
  position:absolute;
  z-index:3;
  left:5%;
  bottom:8%;
  width:clamp(110px, 24vw, 170px);
  height:auto;
  transform:translate(-12%, 12%);
  animation:avionHorizontal 3s cubic-bezier(.45,0,.25,1) infinite;
}

.pantalla-carga__texto{
  position:relative;
  margin:0;
  color:#8F5529;
  font-size:16px;
  letter-spacing:3px;
  animation: textoCargando 1.15s ease-in-out infinite;
}

.pantalla-carga__texto span{
  display:inline-block;
  width:28px;
  letter-spacing:4px;
  text-align:left;
}

body.is-loading{
  overflow:hidden;
}

body.is-ready .pantalla-carga{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}

@keyframes avionHorizontal{
  0%{
    left:5%;
    bottom:8%;
    transform:translate(-12%, 12%);
  }
  100%{
    left:93%;
    bottom:8%;
    transform:translate(-88%, 12%);
  }
}

@keyframes textoCargando{
  0%, 100%{
    opacity:.3;
  }
  50%{
    opacity:1;
  }
}

@media (max-width:760px){
  .pantalla-carga__contenido{
    width:min(86vw, 390px);
  }

  .pantalla-carga__ruta{
    height:165px;
  }

  .pantalla-carga__texto{
    font-size:14px;
    letter-spacing:2.5px;
  }
}

@media (prefers-reduced-motion:reduce){
  .pantalla-carga__avion,
  .pantalla-carga__texto{
    animation:none;
  }
}
