/* Shared responsive safeguards for QK Traders SACCO pages */
html, body { max-width: 100%; overflow-x: hidden; }
img, iframe { max-width: 100%; }
.top-nav { position: sticky !important; top: 0; z-index: 1100; }
.header-main .nav-menu a { font-size: 16px !important; line-height: 1.25; white-space: nowrap; }
@media (max-width: 1100px) {
  .top-nav { gap: 10px; justify-content: center; padding-right: 5%; padding-left: 5%; }
  .top-nav-center { position: static !important; transform: none !important; order: -1; }
  .header-main { padding-right: 5% !important; padding-left: 5% !important; justify-content: center; }
  .nav-menu { justify-content: center; }.nav-menu::after { bottom: -6px !important; }
  .header-main .nav-menu a { font-size: 15px !important; }
  .hero h1 { font-size: clamp(42px, 7vw, 68px) !important; }
  .card-row, .services-grid, .service-grid, .info-grid, .benefits-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-main-content, .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .footer-top-bar, .footer-social, .footer-social-section { flex-wrap: wrap; gap: 20px; }
  .page-hero, .service-hero, .contact-hero, .pub-hero-box { margin-right: 20px; margin-left: 20px; }
  .form-container { padding-right: 5% !important; padding-left: 5% !important; }
}
@media (max-width: 700px) {
  .top-nav, .top-social, .top-nav-right, .header-main, .footer-content, .footer-top-bar, .footer-social, .footer-social-section, .footer-bottom, .copyright-bar, .site-copyright { flex-direction: column !important; justify-content: center !important; text-align: center !important; }
  .top-nav { flex-direction: row !important; flex-wrap: wrap; align-items: center !important; min-height: 42px; padding-top: 7px !important; padding-bottom: 7px !important; }
  .top-social, .top-nav-right { display: none !important; }
  .top-nav-center { order: 0; white-space: nowrap !important; font-size: 10px !important; }
  .header-main { gap: 14px; }.logo-box { justify-content: center; text-align: center; }
  .nav-menu { gap: 11px !important; width: 100%; }.nav-menu li { min-width: auto !important; }.header-main .nav-menu a { font-size: 13px !important; }.nav-menu::after { bottom: -7px !important; }
  .header-actions { justify-content: center; }
  .page-hero, .service-hero, .contact-hero, .pub-hero-box { margin: 0 !important; border-radius: 0 !important; padding: 70px 20px !important; }
  .page-hero h1, .service-hero h1, .contact-hero h1, .pub-hero-box h1, .hero h1 { font-size: clamp(32px, 10vw, 46px) !important; }
  .card-row, .services-grid, .service-grid, .info-grid, .benefits-grid, .form-container { grid-template-columns: 1fr !important; }
  .footer-main-content, .footer-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 26px 18px !important; }
  .card-row, .services-section, .info-section, .content, .publications-body { margin-right: 0 !important; margin-left: 0 !important; padding-right: 20px !important; padding-left: 20px !important; }
  .service-card { width: 100% !important; margin-left: 0 !important; }
  .rates-container { margin-right: 12px !important; margin-left: 12px !important; border-radius: 24px !important; }.rates-table { display: block; overflow-x: auto; white-space: nowrap; }
  .footer-links, .footer-nav { justify-content: center; }.footer-bottom-links a { display: inline-block; margin: 5px 8px !important; }
  .chat-widget { right: 18px !important; bottom: 18px !important; }
}
