/* ==========================================================================
   LARGE DESKTOP already default. TABLET / LAPTOP
   ========================================================================== */
@media (max-width: 1180px){
  .hero-terminal{ display:none; }
  .services-grid{ grid-template-columns:repeat(2,1fr); }
  .radial-grid{ grid-template-columns:repeat(2,1fr); }
}

@media (max-width: 980px){
  .nav-links{ display:none; }
  .nav-toggle{ display:flex; }
  .about-grid{ grid-template-columns:1fr; gap:56px; }
  .about-visual{ order:-1; }
  .contact-grid{ grid-template-columns:1fr; gap:48px; }
  .project-grid{ grid-template-columns:1fr; }
  .section-dots{ display:none; }
  .section{ padding:100px 0; }
  .timeline-line{ left:20px; }
  .timeline-item{ width:100%; padding-left:56px; padding-right:0; text-align:left !important; left:0 !important; }
  .timeline-item .timeline-dot{ left:12px !important; right:auto !important; }
  .section-head-row{ flex-direction:column; align-items:flex-start; }
  .project-controls{ align-items:flex-start; width:100%; }
  .project-search{ width:100%; }
}

@media (max-width: 640px){
  .section-inner{ padding:0 20px; }
  .hero{ padding:calc(var(--nav-h) + 24px) 20px 60px; gap:40px; }
  .hero-title{ font-size:clamp(34px,10vw,52px); }
  .hero-stats{ gap:28px; }
  .services-grid{ grid-template-columns:1fr; }
  .radial-grid{ grid-template-columns:repeat(2,1fr); gap:16px; }
  .testimonial-card{ padding:32px 24px; }
  .dock{ bottom:14px; padding:6px; }
  .dock-item{ width:38px; height:38px; font-size:15px; }
  .nav-cmdk{ display:none; }
  .footer-inner{ flex-direction:column; text-align:center; }
  .marquee-track{ font-size:12px; }
  .contact-form{ padding:26px; }
}
