/* =========================================================
   Responsive Breakpoints
   sm: 640px · md: 768px · lg: 1024px
   ========================================================= */

@media (min-width: 640px) {
  .container { padding: 0 2rem; }

  .contact-ctas { flex-direction: row; }
  .form-row { grid-template-columns: repeat(2, 1fr); }
  .contact-info { grid-template-columns: repeat(3, 1fr); }
  .skills { grid-template-columns: repeat(2, 1fr); }
  .footer-inner { flex-direction: row; justify-content: space-between; }
}

@media (min-width: 768px) {
  .grid-cards { grid-template-columns: repeat(2, 1fr); }
  .process-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 1024px) {
  .container { padding: 0 2.5rem; }

  .nav-links { display: flex; }

  .hero { padding: 7rem 0 8rem; }
  .hero-grid { grid-template-columns: repeat(12, 1fr); }
  .hero-lead { grid-column: span 6; }
  .hero-ctas { grid-column: span 6; }

  .stats { grid-template-columns: repeat(4, 1fr); }

  .section { padding: 8rem 0; }

  .grid-cards { grid-template-columns: repeat(3, 1fr); }
  .card { padding: 2.5rem; }

  .about-grid { grid-template-columns: repeat(12, 1fr); }
  .about-photo { grid-column: span 5; }
  .about-text { grid-column: span 7; }

  .pricing-grid { grid-template-columns: repeat(3, 1fr); }
  .price-card { padding: 2.5rem; }

  .process-grid { grid-template-columns: repeat(4, 1fr); }
}
