@media (max-width: 767px) {
  body { font-size: 16px; }
  .wrap { border: 0; }
  .brand-text { font-size: 26px; }
  .nav-toggle { display: block; width: 100%; text-align: left; }
  .main-nav ul { display: none; flex-direction: column; }
  .main-nav.open ul { display: flex; }
  .main-nav a { padding: 12px 16px; min-height: 44px; border-top: 1px solid rgba(255,255,255,.15); }
  .social-row { grid-template-columns: 1fr 1fr; }
  .box-grid { grid-template-columns: 1fr 1fr; }
  .home-cols, .cat-row, .contact-grid { grid-template-columns: 1fr; }
  .home-box { min-height: 0; }
  h1.page-title, .post-article h1 { font-size: 18px; }
  .search-bar { flex-direction: column; }
  .post-article table { font-size: 14px; }
}
