/* ============================================================
   AERO Lifts — Animations & Responsive
   ============================================================ */

/* ── Scroll-triggered fade-up ── */
.fade-up {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity .8s ease, transform .8s ease;
}

.fade-up.visible {
  opacity: 1;
  transform: translateY(0);
}

.fade-up:nth-child(1) { transition-delay: 0s; }
.fade-up:nth-child(2) { transition-delay: .1s; }
.fade-up:nth-child(3) { transition-delay: .2s; }
.fade-up:nth-child(4) { transition-delay: .3s; }

/* ── Marquee scroll animation ── */
@keyframes marquee {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* ── Responsive breakpoints ── */
@media (max-width: 1200px) {
  .about-content,
  .contact-content {
    gap: 60px;
  }
}

@media (max-width: 1024px) {
  nav {
    padding: 20px 30px;
  }

  /* .nav-links visibility is managed by the mobile overlay in nav.css */

  .products-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .door-collection-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .footer-inner {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 768px) {
  .about-content,
  .designer-content,
  .contact-content {
    grid-template-columns: 1fr;
    gap: 40px;
    padding: 60px 20px;
  }

  .products-grid,
  .cabin-collection-grid {
    grid-template-columns: 1fr 1fr;
  }

  .products-content,
  .collections-content {
    padding: 0 20px;
  }

  .form-row {
    grid-template-columns: 1fr;
  }

  .footer-inner {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  footer {
    padding: 40px 20px;
  }

  .elevator-3d {
    width: 300px;
    height: 400px;
  }

  /* Hide side decorative elements on mobile */
  .floor-indicator,
  .shaft-line,
  .ambient-floor {
    display: none;
  }

  .section-title {
    font-size: clamp(42px, 10vw, 70px);
  }
}

@media (max-width: 480px) {
  nav {
    padding: 16px 20px;
  }

  .products-grid {
    grid-template-columns: 1fr;
  }

  .door-collection-grid {
    grid-template-columns: 1fr 1fr;
  }

  .cabin-collection-grid {
    grid-template-columns: 1fr;
  }

  .stats-grid {
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
}

/* ── Reduced motion ── */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }

  html {
    scroll-behavior: auto;
  }

  .fade-up {
    opacity: 1;
    transform: none;
  }

  .section-door-left {
    transform: translateX(-100%) !important;
  }

  .section-door-right {
    transform: translateX(100%) !important;
  }

  /* Freeze the floating elevator */
  .elevator-3d {
    animation: none !important;
  }

  /* Pause the marquee strip */
  [style*="animation:marquee"],
  [style*="animation: marquee"] {
    animation-play-state: paused !important;
  }
}
