/* Responsive adjustments */
@media (max-width: 1024px) {
  :root {
    --spacing-lg: 2rem;
    --spacing-xl: 4rem;
  }
  .footer-grid {
    grid-template-columns: 1fr 1fr;
  }
  .footer-brand {
    grid-column: 1 / -1;
  }
}

@media (max-width: 768px) {
  .nav-links {
    display: none;
  }
  .menu-toggle {
    display: flex;
  }
  .footer-grid {
    grid-template-columns: 1fr;
  }
  .btn {
    width: 100%;
    padding: 1rem;
    font-size: 1rem;
  }
  h1 { font-size: 2.5rem; }
  h2 { font-size: 2rem; }
  h3 { font-size: 1.5rem; }
  
  .container {
    padding: 0 var(--spacing-sm);
  }
}

@media (max-width: 480px) {
  h1 { font-size: 2rem; }
  h2 { font-size: 1.5rem; }
  .mobile-menu nav a {
    font-size: 2rem;
  }
}