/* ---- 1024px ---- */
@media (max-width: 1024px) {
  .container { padding: 0 1.5rem; }
  section { padding: 4rem 0; }
  h1 { font-size: clamp(1.75rem, 6vw, 2.5rem); }
  h2 { font-size: clamp(1.5rem, 4vw, 2rem); }
  .section-header { margin-bottom: 3rem; }
  .section-desc { margin-bottom: 3rem; }
  
  .nav-links { gap: 1.25rem; }
  .nav-links a { font-size: 0.875rem; }
  
  .hero { min-height: auto; padding: 7rem 0 4rem; }
  .hero-content { padding: 2rem; }
  .hero-visual { min-height: 320px; }
  
  .phases-grid { grid-template-columns: repeat(2, 1fr); }
  .logos-grid { grid-template-columns: repeat(3, 1fr); }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; }
  
  .form-row { grid-template-columns: 1fr; gap: 0; }
}

/* ---- 640px ---- */
@media (max-width: 640px) {
  .container { padding: 0 1rem; }
  section { padding: 3rem 0; }
  h1 { font-size: clamp(1.5rem, 5vw, 2rem); margin-bottom: 1rem; }
  h2 { font-size: clamp(1.3rem, 4vw, 1.75rem); margin-bottom: 0.75rem; }
  h3 { font-size: 1.1rem; }
  p { font-size: 1rem; }
  .subtitle { font-size: 1rem; }
  .section-header { margin-bottom: 2rem; }
  .section-desc { margin-bottom: 2rem; font-size: 1rem; }
  .overline { font-size: 0.65rem; margin-bottom: 0.75rem; }
  
  .nav-inner { height: 70px; justify-content: center; position: relative; }
  .nav-logo { position: static; }
  .nav-links { display: none; position: absolute; top: 70px; left: 0; right: 0; background: rgba(10, 14, 39, 0.98); flex-direction: column; padding: 1rem; border-bottom: 1px solid var(--color-white-5); gap: 0; max-height: 80vh; overflow-y: auto; }
  .nav-links.active { display: flex; }
  .nav-links li { width: 100%; }
  .nav-links > li > a { padding: 10px 0; font-size: 0.95rem; border-bottom: 1px solid rgba(255,255,255,0.04); }
  .dropdown { position: static; background: transparent; border: none; padding: 0 0 0 1rem; min-width: auto; display: none; }
  .dropdown.open { display: block; }
  .dropdown a { font-size: 0.85rem; padding: 8px 0; color: var(--color-graphite-700); }
  .dropdown a:hover { background: transparent; color: var(--color-accent); }
  .has-dropdown > a::after { content: ' ▾'; font-size: 0.7rem; }
  .nav-toggle { display: block; position: absolute; right: 0; top: 50%; transform: translateY(-50%); z-index: 1001; }
  .nav-brand { font-size: 1.15rem; }
  
  .bento-grid { grid-template-columns: 1fr !important; gap: 1rem; }
  .bento-card { padding: 1.25rem; }
  
  .hero { padding: 5rem 0 2rem; }
  .hero-content { padding: 1.5rem; }
  .hero-visual { min-height: 250px; margin-top: 1rem; }
  .hero-stats { gap: 1.5rem; }
  .stat-num { font-size: 1.5rem; }
  .hero-ctas { flex-direction: column; gap: 0.75rem; }
  
  .phases-grid { grid-template-columns: 1fr; }
  .phase-number { font-size: 2.5rem; }
  
  .logos-grid { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .logo-svg { width: 52px; height: 52px; }
  
  .clients-carousel { padding: 32px 0; }
  .clients-track { gap: 16px; animation-duration: 25s; }
  .client-card { padding: 10px 16px; min-width: 140px; gap: 8px; }
  .client-card .client-logo { width: 36px; height: 36px; }
  .client-fallback { width: 36px !important; height: 36px !important; font-size: 14px !important; }
  .client-card span { font-size: 11px; }
  .metric-value { font-size: 2.5rem; }
  
  .cta-box { padding: 2.5rem 1.25rem; }
  .cta-form { max-width: 100%; }
  .form-row { grid-template-columns: 1fr; gap: 0; }
  .form-actions { flex-direction: column; }
  .form-actions .btn { width: 100%; }
  .btn, button { padding: 0.85rem 1.5rem; font-size: 1rem; }
  .btn-lg { padding: 1rem 2rem; font-size: 1.05rem; }
  
  .footer-grid { grid-template-columns: 1fr; gap: 2rem; text-align: center; }
  .footer-brand { text-align: center; }
  .footer-logo { justify-content: center; }
  .footer { margin-top: 2rem; padding: 3rem 0 1.5rem; }
}

/* ---- Large screens ---- */
@media (min-width: 1440px) {
  .container { padding: 0 4rem; }
  section { padding: 8rem 0; }
  .bento-grid.hero { gap: 3rem; }
}
