@media (max-width: 980px) {
  .hero-grid, .contact-grid, .footer-newsletter-grid, .footer-contact-grid, .footer-main-grid, .footer-extra-grid, .admin-layout, .cards-4, .cards-3, .admin-form-grid, .dashboard-actions-grid, .dashboard-hero, .admin-users-grid { grid-template-columns: 1fr; }
  .topbar { flex-wrap: wrap; gap: 12px; }
  .brand { max-width: calc(100% - 64px); }
  .brand span { line-height: 1.2; }
  .nav-toggle { display: inline-flex; }
  .main-nav { position: relative; z-index: 2; display: none; width: 100%; flex-direction: column; align-items: stretch; gap: 8px; padding: 14px; border: 1px solid var(--border); border-radius: 8px; background: var(--white); box-shadow: 0 18px 42px rgba(15,23,42,.12); }
  .site-header.nav-open .main-nav { display: flex; }
  .main-nav > a:not(.btn), .main-nav > .btn { width: 100%; min-height: 48px; justify-content: center; }
}
@media (max-width: 640px) {
  .two-columns { grid-template-columns: 1fr; }
  .topbar { padding: 10px 0; }
  .brand img { width: 46px; height: 46px; }
  .brand span { font-size: .94rem; }
  .main-nav { padding: 12px; }
  .footer-newsletter { padding: 34px 0; }
  .newsletter-input { border-radius: 8px; align-items: stretch; flex-direction: column; padding: 16px; }
  .newsletter-input input { width: 100%; }
  .newsletter-input button { width: 100%; }
  .footer-contact-item { grid-template-columns: 1fr; min-height: auto; }
  .footer-bottom-grid { align-items: flex-start; flex-direction: column; }
  .footer-socials a { width: 48px; height: 48px; }
  .admin-page-head { align-items: flex-start; flex-direction: column; }
  .admin-content { padding: 20px; }
  .admin-sidebar { padding: 18px; }
  .dashboard-hero { padding: 24px; }
  .dashboard-content-menu a { width: 100%; justify-content: center; }
  .admin-user-card { grid-template-columns: 1fr; text-align: center; }
  .admin-user-card .admin-avatar-wrap { margin: 0 auto; }
  .admin-user-meta { justify-content: center; }
}
