@media (max-width: 768px) {
  [style*="grid-template-columns"] { grid-template-columns: 1fr !important; }
  header { position: sticky !important; flex-direction: row !important; flex-wrap: wrap !important; justify-content: space-between !important; align-items: center !important; padding: 14px 5vw !important; gap: 0 !important; }
  nav { flex-wrap: wrap !important; justify-content: center !important; gap: 8px !important; border-radius: 16px !important; padding: 10px 14px !important; width: 100%; margin-top: 10px; }
  nav a { font-size: 11px !important; white-space: nowrap; }
  .brand-mark, header img[alt*="BN"] { width: 42px !important; height: 42px !important; }
  .brand-link span, header a span { font-size: 11px !important; }
  section, .capability-section { padding: 52px 5vw !important; }
  .card, .framework-item, .highlight, .metric { width: 100% !important; min-width: unset !important; max-width: 100% !important; }
  .services-grid, .who-grid, .why-grid, .dashboard-preview, .about-grid, .premium-about, .about-highlights, .metric-row, .framework-grid, .contact-box, .testimonials-grid { grid-template-columns: 1fr !important; gap: 16px !important; }
  .cta-row { flex-wrap: wrap !important; gap: 10px !important; }
  .cta-row .btn, .btn { font-size: 11px !important; padding: 10px 16px !important; white-space: nowrap !important; }
  .contact-box { padding: 28px 20px !important; }
  .convo-strip { grid-template-columns: 1fr !important; padding: 28px 20px !important; margin: 0 4vw 40px !important; }
  .hero { grid-template-columns: 1fr !important; min-height: unset !important; padding-top: 40px !important; gap: 32px !important; }
  .hero-panel { display: none !important; }
  h1 { font-size: clamp(32px, 9vw, 50px) !important; line-height: 1.05 !important; }
  h2 { font-size: clamp(24px, 7vw, 38px) !important; line-height: 1.1 !important; }
  footer { flex-direction: column !important; padding: 28px 5vw !important; gap: 14px !important; }
  [style*="repeat(3"] { grid-template-columns: 1fr !important; }
  [style*="repeat(2"] { grid-template-columns: 1fr !important; }
  [style*="1fr 1fr"] { grid-template-columns: 1fr !important; }
  .about-image { min-height: unset !important; max-width: 100% !important; width: 100% !important; }
}

/* ── Hamburger span fix (all pages) ─────────────── */
.nav-toggle {
  background: none !important;
  border: 1px solid rgba(199,164,90,0.4) !important;
  border-radius: 8px !important;
  padding: 8px 10px !important;
  cursor: pointer !important;
  flex-direction: column !important;
  gap: 5px !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 0 !important;
}
.nav-toggle span {
  display: block !important;
  width: 22px !important;
  height: 2px !important;
  background: #28241d !important;
  border-radius: 2px !important;
  flex-shrink: 0 !important;
}

/* ── Client login panel ──────────────────────────── */
@media (max-width: 768px) {
  .login-panel {
    grid-template-columns: 1fr !important;
    padding: 32px 20px !important;
  }
  .login-section { padding: 40px 5vw !important; }
  .floating-back { display: none !important; }
  .quick-links { flex-direction: column !important; }
  .quick-links a { min-width: unset !important; }
}

/* ── Hamburger button reset (all pages) ─────────── */
.nav-toggle {
  appearance: none !important;
  -webkit-appearance: none !important;
  background: none !important;
  border: 1px solid rgba(199,164,90,0.4) !important;
  border-radius: 8px !important;
  padding: 8px 10px !important;
  cursor: pointer !important;
  display: none;
  flex-direction: column !important;
  gap: 5px !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  height: 38px !important;
  box-sizing: border-box !important;
}
.nav-toggle span {
  display: block !important;
  width: 20px !important;
  height: 2px !important;
  background: #28241d !important;
  border-radius: 2px !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important;
}

@media (max-width: 768px) {
  .nav-toggle { display: flex !important; }
  .login-panel { grid-template-columns: 1fr !important; padding: 32px 20px !important; }
  .login-section { padding: 40px 5vw !important; }
  .floating-back { display: none !important; }
  .quick-links { flex-direction: column !important; }
  .quick-links a { min-width: unset !important; }
}
