/* ================= PRELOADER ALDIA ================= */
.aldia-preloader {
  position: fixed;
  inset: 0;
  background: #ffffff;
  z-index: 100000;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.9s cubic-bezier(0.77, 0, 0.175, 1);
}

.aldia-preloader.preload-finish {
  transform: translateY(-100%);
  pointer-events: none;
}

.preload-brand {
  display: flex;
  align-items: baseline;
  font-family: 'Inter', sans-serif;
  font-weight: 800;
  font-size: clamp(3rem, 5vw, 4rem);
  letter-spacing: -0.06em;
  color: #0e0e0e;
}

.preload-text {
  opacity: 0;
  animation: fadeInText 0.6s ease forwards;
  animation-delay: 1.1s;
}

.preload-dot {
  width: clamp(14px, 1.5vw, 18px);
  height: clamp(14px, 1.5vw, 18px);
  background: linear-gradient(135deg, #0e0e0e, #333333);
  border-radius: 50%;
  margin-left: 5px;
  animation: bounceDot 1.4s cubic-bezier(0.28, 0.84, 0.42, 1) forwards;
}

@keyframes bounceDot {
  0% { transform: translate(-100px, -300px) scaleY(1.2); opacity: 0; }
  15% { transform: translate(-80px, 0) scaleY(0.8); opacity: 1; }
  35% { transform: translate(-60px, -120px) scaleY(1); }
  55% { transform: translate(-40px, 0) scaleY(0.9); }
  75% { transform: translate(-20px, -40px) scaleY(1); }
  90% { transform: translate(-5px, 0) scaleY(0.95); }
  95% { transform: translate(-2px, -8px) scaleY(1); }
  100% { transform: translate(0, 0) scaleY(1); opacity: 1; }
}

@keyframes fadeInText {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Bloquear scroll durante carga */
body.preload-active {
  overflow: hidden !important;
}
