@media (max-width: 1024px) {
  h1 { font-size: 3.5rem; }
  .about-grid { grid-template-columns: 1fr; }
  .newsletter-form { flex-direction: column; }
}

@media (max-width: 768px) {
  .hamburger { display: flex; }
  .nav-links {
      position: fixed;
      top: 70px; /* Below navbar */
      right: -100%;
      height: calc(100vh - 70px);
      width: 100%;
      background-color: var(--color-dark);
      flex-direction: column;
      align-items: center;
      justify-content: center;
      transition: 0.4s;
      border-top: 1px solid rgba(255,255,255,0.1);
  }

  .nav-links.active {
      right: 0;
  }

  /* Hamburger Animation */
  .hamburger.active .bar:nth-child(1) { transform: rotate(-45deg) translate(-5px, 6px); }
  .hamburger.active .bar:nth-child(2) { opacity: 0; }
  .hamburger.active .bar:nth-child(3) { transform: rotate(45deg) translate(-5px, -6px); }

  .hero-cta { flex-direction: column; }
  .btn { width: 100%; text-align: center; }
  
  .features-grid, .gallery-grid { grid-template-columns: 1fr; }

  section { padding: 4rem 1.5rem; }

  .site-banner__inner {
    flex-direction: column;
    align-items: flex-start;
  }

  .site-banner__dismiss {
    width: 100%;
    text-align: center;
  }
}
