@media (max-width: 1100px) {
  h1,
  .hero-home h1 {
    font-size: 52px;
  }

  h2 {
    font-size: 38px;
  }

  .grid-4,
  .partners-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

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

@media (max-width: 900px) {
  :root {
    --section-pad: 80px;
  }

  .split,
  .research-feature,
  .contact-layout,
  .news-featured {
    grid-template-columns: 1fr;
  }

  .nav-links,
  .nav-actions .btn-primary {
    display: none;
  }

  .nav-toggle {
    display: inline-block;
  }

  .topbar {
    display: none;
  }

  .site-header {
    top: 0;
  }

  .news-small {
    grid-template-columns: 1fr;
  }

  .news-small img,
  .news-card img {
    height: 220px;
  }

  .timeline::before {
    left: 35px;
  }

  .timeline-item {
    grid-template-columns: 70px 1fr;
  }

  .timeline-content {
    padding-left: 20px;
  }
}

@media (max-width: 768px) {
  h1,
  .hero-home h1 {
    font-size: 42px;
  }

  h2 {
    font-size: 34px;
  }

  h3 {
    font-size: 24px;
  }

  .container {
    width: min(calc(100% - 32px), var(--container));
  }

  .section {
    padding: 64px 0;
  }

  .grid-3,
  .grid-4,
  .stat-grid,
  .footer-grid,
  .news-grid,
  .form-grid,
  .partners-row {
    grid-template-columns: 1fr;
  }

  .ticker {
    grid-template-columns: 120px 1fr;
  }

  .contact-band-form {
    flex-direction: column;
  }

  .page-hero {
    padding: 96px 0 64px;
  }

  .hero-actions {
    flex-direction: column;
    align-items: flex-start;
  }
}

@media (max-width: 480px) {
  h1,
  .hero-home h1 {
    font-size: 36px;
  }

  h2 {
    font-size: 30px;
  }

  .hero-badge,
  .eyebrow {
    letter-spacing: 2px;
  }

  .brand-subtitle {
    display: none;
  }

  .ticker {
    grid-template-columns: 94px 1fr;
  }

  .ticker-label {
    padding: 0 10px;
    font-size: 12px;
  }

  .mobile-nav-panel a {
    font-size: 26px;
  }
}
