/* v027 · La entrada comparte cielo, nubes y zeppelín con la ciudad. Sin panel de espera. */
.carga {
  position: fixed; inset: 0; z-index: 5; display: block; padding: 0; border: 0;
  border-radius: 0; box-shadow: none; transform: none; pointer-events: none; overflow: hidden;
  opacity: 1; background: linear-gradient(180deg,#a9cedd 0%,#d6e7ec 58%,#eef4f4 100%);
  transition: opacity .78s cubic-bezier(.22,.65,.3,1);
}
.carga::before {
  content: ''; position: absolute; width: 80vw; height: 80vw; left: -25vw; top: -40vw;
  border-radius: 50%; background: radial-gradient(circle,#ffffff6b,transparent 65%);
}
.carga-zepelin {
  position: absolute; width: clamp(260px,35vw,470px); left: 50%; top: max(64px,calc(50% - 335px));
  margin-left: clamp(-235px,-17.5vw,-130px); transform-origin: 55% 55%;
  animation: entrada-zepelin 5s ease-in-out infinite alternate;
}
.carga-zepelin svg { display: block; width: 100%; height: auto; overflow: visible; }
.carga-zepelin-sombra { opacity: .13; }
.carga-zepelin-cuerpo { filter: drop-shadow(0 12px 10px #456d7820); }
.carga-zepelin .zep-freedom { font: 900 42px Fraunces,Georgia,serif; letter-spacing: -1px; fill: #1e6b55; }
.carga-zepelin .zep-factory { font: 500 11px Inter,system-ui,sans-serif; letter-spacing: 2px; fill: #36564d; }
.carga-banco {
  position: absolute; width: 78vw; height: 42vh; bottom: -14vh;
  background: radial-gradient(ellipse at 18% 63%,#fff 0 21%,transparent 21.5%),
    radial-gradient(ellipse at 36% 43%,#f9fcfc 0 24%,transparent 24.5%),
    radial-gradient(ellipse at 60% 57%,#f4f9f9 0 31%,transparent 31.5%),
    radial-gradient(ellipse at 78% 75%,#f9fcfc 0 24%,transparent 24.5%);
  transform: translate3d(0,0,0); transition: transform .9s cubic-bezier(.16,.7,.25,1);
}
.carga-banco--izq { left: -20vw; animation: entrada-nube-izq 8s ease-in-out infinite alternate; }
.carga-banco--der { right: -20vw; bottom: -9vh; animation: entrada-nube-der 10s ease-in-out infinite alternate; }
.carga-nube-lejos {
  position: absolute; left: 10%; top: 25%; width: 14vw; height: 4.2vw; min-width: 74px; min-height: 25px;
  background: #f6fafadd; border-radius: 50%; box-shadow: inset 0 -.35vw .6vw #bed2da45;
  animation: entrada-nube-lejos 12s ease-in-out infinite alternate;
}
.carga-nube-lejos::before, .carga-nube-lejos::after { content:''; position:absolute; border-radius:50%; background:inherit; }
.carga-nube-lejos::before { width:48%; height:150%; top:-55%; left:18%; }
.carga-nube-lejos::after { width:38%; height:120%; top:-30%; right:12%; }
.carga-nube-lejos--dos { left:auto; right:8%; top:20%; transform:scale(.65); animation-delay:-4s; opacity:.7; }
.carga[data-estado="abriendo"] { opacity: 0; }
.carga[data-estado="abriendo"] .carga-banco { animation:none; }
.carga[data-estado="abriendo"] .carga-banco--izq { transform:translate3d(-30vw,10vh,0) scale(1.2); }
.carga[data-estado="abriendo"] .carga-banco--der { transform:translate3d(30vw,10vh,0) scale(1.2); }
.carga[data-estado="abriendo"] .carga-zepelin { animation:none; }
.entrada-titular { display:grid; width:100%; }
.entrada-titular > * { grid-area:1/1; }
.entrada-bienvenida {
  margin:0; align-self:center; text-align:center; font:900 clamp(26px,3vw,40px)/1.06 Fraunces,serif;
  letter-spacing:-.6px; color:var(--profundo); font-variation-settings:'opsz' 72;
  visibility:hidden; opacity:0; transition:opacity .28s;
}
body.entrando .entrada-bienvenida { visibility:visible; opacity:1; }
body.entrando #titulo { visibility:hidden; opacity:0; }
#titulo { transition:opacity .45s; }
.carga[hidden] { display:none; }
@keyframes entrada-zepelin { from {transform:translate3d(-7px,0,0) rotate(-1deg)} to {transform:translate3d(9px,-7px,0) rotate(.7deg)} }
@keyframes entrada-nube-izq { to {transform:translate3d(3vw,-1.5vh,0)} }
@keyframes entrada-nube-der { to {transform:translate3d(-2vw,1vh,0)} }
@keyframes entrada-nube-lejos { to {translate:2vw -1vh} }
@media(max-width:640px) {
  .carga-zepelin { width:270px; margin-left:-135px; top:max(calc(var(--cabecera) + 5px),calc(50% - 300px)); }
  .carga-banco { width:115vw; height:35vh; }
  .carga-banco--izq { left:-50vw; }
  .carga-banco--der { right:-50vw; }
  .carga-nube-lejos { top:29%; left:3%; }
  .carga-nube-lejos--dos { top:24%; left:auto; right:3%; }
  .entrada-bienvenida { font-size:25px; padding:0 6px; }
}
@media(max-height:700px) {
  .carga-zepelin { width:210px; margin-left:-105px; top:calc(var(--cabecera) - 8px); }
  .entrada-bienvenida { font-size:21px; }
}
@media(prefers-reduced-motion:reduce) {
  .carga, .carga * { animation:none!important; transition:none!important; }
  .entrada-bienvenida, #titulo { transition:none; }
}
