/* Responsive audit fixes loaded last for the WordPress templates. */
@media (max-width: 992px) {
  html, body { width: 100% !important; max-width: 100% !important; overflow-x: hidden !important; }
  body .site-header .main-nav { display: none !important; }
  body .site-header .mobile-menu-btn { display: inline-flex !important; }
  body .site-header .header-actions { width: auto !important; max-width: none !important; margin-left: auto !important; }
  body .site-header .header-actions .btn { display: none !important; }
  body .site-header .mobile-menu-btn { display: inline-flex !important; visibility: visible !important; opacity: 1 !important; }
  .mobile-menu-drawer { display: block !important; visibility: hidden; transform: translateX(100%); position: fixed !important; right: 0 !important; top: 0 !important; width: min(320px, 86vw) !important; height: 100vh !important; z-index: 99999 !important; background: #0A192F !important; padding: 24px !important; box-sizing: border-box !important; }
  .mobile-menu-drawer.active { visibility: visible; transform: translateX(0); }
  .mobile-menu-overlay { display: block; visibility: hidden; opacity: 0; position: fixed; inset: 0; background: rgba(10,25,47,.42); z-index: 99998; transition: opacity .2s ease; }
  .mobile-menu-overlay.active { visibility: visible; opacity: 1; }
  .mobile-drawer-header { display: flex; align-items: center; justify-content: space-between; color: #fff; margin-bottom: 24px; }
  .mobile-drawer-close { border: 0; background: transparent; color: #fff; font-size: 28px; line-height: 1; cursor: pointer; }
  .mobile-drawer-links { display: grid; gap: 4px; }
  .mobile-drawer-links a { color: #fff; text-decoration: none; padding: 13px 4px; border-bottom: 1px solid rgba(255,255,255,.14); font-size: 16px; }
}

@media (min-width: 993px) {
  .mobile-menu-drawer, .mobile-menu-overlay { display: none !important; }
}

@media (max-width: 600px) {
  #rfq-contact-form .contact-form-row,
  #rfq-contact-form > div[style*="grid-template-columns"] {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  #rfq-contact-form input,
  #rfq-contact-form select,
  #rfq-contact-form textarea {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  #rfq-contact-form input,
  #rfq-contact-form select,
  #rfq-contact-form textarea {
    font-size: 16px !important;
    min-height: 46px !important;
  }

  .fsr-quick-metrics {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .fsr-quick-metrics > div {
    min-width: 0 !important;
    max-width: 100% !important;
  }

  .fsr-quick-metrics [style*="font-size: 14px"] {
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  .fsr-page,
  .products-page,
  .products-content,
  .products-banner,
  .products-banner-inner {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }
  .hero-grid-2col { grid-template-columns: minmax(0, 1fr) !important; gap: 28px !important; }
  .hero-grid-2col > * { min-width: 0 !important; max-width: 100% !important; }

  .products-content,
  .products-banner-inner,
  .fsr-wrap {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .fsr-wrap { overflow-x: visible !important; }
  .fsr-wrap table { display: block !important; width: 100% !important; max-width: 100% !important; min-width: 0 !important; overflow-x: auto !important; overflow-y: hidden !important; -webkit-overflow-scrolling: touch; }
  .fsr-wrap table tbody { display: table !important; width: 100% !important; min-width: 860px !important; }
  .fsr-wrap table td, .fsr-wrap table th { white-space: normal !important; color: #334155 !important; opacity: 1 !important; visibility: visible !important; }
  .fsr-wrap table td:last-child, .fsr-wrap table th:last-child { color: #0F2444 !important; font-weight: 600 !important; }

  .param-table-container {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    box-sizing: border-box !important;
  }

  .param-table-container .param-table {
    width: 860px !important;
    max-width: none !important;
  }
}
