/* ------------------------------------------------------------------
   Site fixes (loaded after main.css)
   ------------------------------------------------------------------ */

/* Mobile: stop horizontal overflow. The off-canvas menu panel and the
   back-to-top button sit outside the viewport; clipping only on <body>
   is ignored by mobile browsers, so clip on <html> as well. */
html,
body {
  overflow-x: hidden;
  max-width: 100%;
}
.fix-area {
  overflow: hidden;
}

/* Keep the sticky header row on one line and fully inside the screen */
@media (max-width: 991px) {
  #header-sticky .container-fluid {
    padding-left: 15px;
    padding-right: 15px;
  }
  .header-main {
    flex-wrap: nowrap;
    gap: 8px;
  }
  .header-main .header-left {
    min-width: 0;          /* allow the logo side to shrink */
    flex: 1 1 auto;
  }
  .header-main .logo img {
    max-height: 56px;
    height: auto;
    width: auto;
  }
  .header-right {
    flex: 0 0 auto;        /* never let the controls get pushed off-screen */
  }
  .header-right-items .header-button {
    display: none;         /* hide "Request a quote" on phones */
  }
  .header-right-items .search-trigger {
    margin-right: 6px;
  }
  .header__hamburger {
    flex: 0 0 auto;
  }
  .header__hamburger .sidebar__toggle {
    padding-left: 4px;
  }
  /* Compact language pill on phones */
  .lang-switch--mobile a {
    padding: 6px 10px;
    font-size: 13px;
  }
}
@media (max-width: 480px) {
  .header-main .logo img {
    max-height: 48px;
  }
  .header-main {
    gap: 4px;
  }
  .header-right-items .search-trigger {
    margin-right: 2px;
  }
}
@media (max-width: 360px) {
  .header-main .logo img {
    max-height: 42px;
  }
}
