/* ═══════════════════════════════════════════════
   WEBLIFT Agency — intro.css (v3 — CORREGIDO)
   Animación de entrada elegante — solo imagen logo
═══════════════════════════════════════════════ */

#intro-screen {
  position: fixed;
  inset: 0;
  z-index: 9999;
  background: var(--ink-deep);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

/* Luz ambiental de fondo */
#intro-screen::before {
  content: '';
  position: absolute;
  width: 700px; height: 700px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(61,142,240,0.07) 0%, transparent 70%);
  top: 50%; left: 50%;
  transform: translate(-50%,-50%);
  pointer-events: none;
  animation: introGlow 3s ease-in-out infinite alternate;
}

/* Grid sutil */
#intro-screen::after {
  content: '';
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(61,142,240,0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(61,142,240,0.025) 1px, transparent 1px);
  background-size: 52px 52px;
  pointer-events: none;
}

.intro-logo-wrap {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.intro-logo-img {
  width: clamp(200px, 30vw, 340px);
  height: auto;
  object-fit: contain;
  background: transparent;
  opacity: 0;
  transform: scale(0.85) translateY(14px);
  animation: logoReveal 1.1s cubic-bezier(0.16,1,0.3,1) 0.3s forwards;
  filter:none;
}

.intro-line {
  width: 0;
  height: 1.5px;
  background: linear-gradient(90deg, transparent, rgba(61,142,240,0.6), transparent);
  margin-top: 1.75rem;
  animation: lineGrow 0.9s cubic-bezier(0.4,0,0.2,1) 1s forwards;
  border-radius: 2px;
}

.intro-slogan {
  font-family: var(--font-display);
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: 0.35em;
  text-transform: uppercase;
  color: rgba(200,212,232,0.4);
  margin-top: 1.1rem;
  opacity: 0;
  animation: fadeIn 0.7s ease 1.3s forwards;
}

/* Barra de progreso */
.intro-progress {
  position: absolute;
  bottom: 44px;
  left: 50%;
  transform: translateX(-50%);
  width: 100px;
  height: 1px;
  background: rgba(255,255,255,0.07);
  border-radius: 1px;
  overflow: hidden;
  z-index: 2;
}
.intro-progress-bar {
  height: 100%;
  width: 0;
  background: linear-gradient(90deg, var(--cyan), var(--cyan-glow));
  border-radius: 1px;
  /* 
    Duración: 2.5s — sincronizado con el redirect de 3200ms
    da 700ms de margen antes de que salte a home.html
  */
  animation: progressLoad 2.5s cubic-bezier(0.4,0,0.2,1) 0.3s forwards;
}

/* Salida: desvanecer */
#intro-screen.exit {
  animation: introExit 0.65s cubic-bezier(0.4,0,1,1) forwards;
  pointer-events: none;
}

/* ── Keyframes ── */
@keyframes logoReveal {
  from { opacity:0; transform:scale(0.85) translateY(14px); }
  to   { opacity:1; transform:scale(1) translateY(0); }
}

@keyframes lineGrow {
  from { width:0; }
  to   { width:180px; }
}

@keyframes progressLoad {
  from { width:0%; }
  to   { width:100%; }
}

@keyframes introExit {
  0%   { opacity:1; transform:scale(1); }
  100% { opacity:0; transform:scale(1.04); }
}

@keyframes introGlow {
  from { opacity:0.6; transform:translate(-50%,-50%) scale(1); }
  to   { opacity:1;   transform:translate(-50%,-50%) scale(1.08); }
}

@keyframes fadeIn {
  from { opacity:0; }
  to   { opacity:1; }
}