/* ==========================================================================
   THE ANTOBEL JOURNEY — RESPONSIVE
   ========================================================================== */

/* ---------- Ultra Wide ---------- */
@media (min-width: 1600px) {
  .section-inner { max-width: 1360px; }
  .timeline { max-width: 1240px; }
}

/* ---------- Laptop / small desktop ---------- */
@media (max-width: 1100px) {
  .about__grid { gap: var(--space-md); }
}

/* ---------- Tablet ---------- */
@media (max-width: 900px) {
  .about__grid {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .about__illustration { max-width: 280px; }

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

  .footer__grid { grid-template-columns: 1fr 1fr; }
  .footer__brand { grid-column: 1 / -1; }
}

/* ---------- Mobile navigation ---------- */
@media (max-width: 860px) {
  .navbar__toggle { display: flex; }

  .navbar__links {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: min(78vw, 320px);
    background: rgba(248, 250, 252, 0.97);
    backdrop-filter: var(--glass-blur);
    -webkit-backdrop-filter: var(--glass-blur);
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 1.8rem;
    padding: 2rem 2.4rem;
    transform: translateX(100%);
    transition: transform var(--transition-base);
    box-shadow: -10px 0 40px rgba(15,23,42,0.1);
  }

  .navbar__links.is-open { transform: translateX(0); }

  .nav-link { font-size: 1.05rem; }
}

/* ---------- Mobile ---------- */
@media (max-width: 640px) {
  :root { --space-xl: 5rem; --space-lg: 2.6rem; }

  .hero { padding-top: 5rem; }
  .hero__actions { flex-direction: column; align-items: stretch; }
  .hero__actions .btn { justify-content: center; }

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

  /* Timeline collapses to single column */
  .timeline__line { left: 22px; }

  .timeline__item,
  .timeline__item:nth-child(odd),
  .timeline__item:nth-child(even) {
    width: 100%;
    left: 0;
    text-align: left;
    padding: 0 0 2.6rem 3.4rem;
  }

  .timeline__item:nth-child(odd) .timeline__dot,
  .timeline__item:nth-child(even) .timeline__dot {
    left: 15px;
    right: auto;
  }

  .timeline__card { max-width: 100%; }

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

  .ecosystem__diagram { padding: 1rem; overflow-x: auto; }
  .ecosystem__svg { min-width: 640px; }

  .philosophy__card { padding: 2.4rem 1.4rem; }

  .footer__grid { grid-template-columns: 1fr; gap: var(--space-md); }

  .footer__bottom { flex-direction: column; gap: 1rem; text-align: center; }

  .footer__newsletter { flex-direction: column; }
}

/* ---------- Landscape phones ---------- */
@media (max-height: 480px) and (orientation: landscape) {
  .hero { min-height: auto; padding: 7rem 0 3rem; }
  .hero__scroll { display: none; }
}
