/* =========================================================================
   Bai Lab Portal — Responsive Breakpoints
   来源: GEM-DTA Server styles.css (consolidated)
   ========================================================================= */

@media (max-width: 1100px) {
  .hero { padding: 44px 32px; }

  .timeline-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .timeline-card,
  .timeline-card:first-child,
  .timeline-card:last-child {
    border-radius: var(--radius);
    border-right: 1px solid var(--line);
  }
  .timeline-card::after { display: none; }

  .feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .team-grid { grid-template-columns: 1fr; }
  .team-grid-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }

  .contact-grid, .about-grid, .pi-section {
    grid-template-columns: 1fr;
  }

  .site-footer-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .utility-bar-inner,
  .site-header-inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }

  .site-nav {
    overflow-x: auto;
    width: 100%;
    -webkit-overflow-scrolling: touch;
  }

  .page-stack { padding: 16px 16px 56px; gap: 40px; }

  .hero { padding: 32px 22px; }
  .hero-simple { padding: 40px 24px; }

  .feature-grid, .timeline-grid, .team-grid, .team-grid-3 {
    grid-template-columns: 1fr;
  }

  .contact-grid, .about-grid {
    grid-template-columns: 1fr;
  }

  .pi-section {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 16px;
  }

  .pi-section .pi-photo {
    max-width: 150px;
    margin: 0 auto;
  }

  .contact-row {
    grid-template-columns: 1fr;
    gap: 4px;
  }

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

  .nav-dropdown-menu {
    min-width: 260px;
  }

  .research-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
