/* Load after existing site styles. Applies only to the mobile contact strip. */
.mobile-contact { display: none; }
@media (max-width: 767px) {
  :root { --mobile-contact-height: 60px; --mobile-contact-safe: env(safe-area-inset-bottom, 0px); }
  html { scroll-padding-bottom: calc(var(--mobile-contact-height) + var(--mobile-contact-safe) + 16px); }
  body { padding-bottom: calc(var(--mobile-contact-height) + var(--mobile-contact-safe)); }
  .mobile-contact {
    position: fixed; inset: auto 0 0; z-index: 39;
    display: grid; grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 0 env(safe-area-inset-right, 0px) var(--mobile-contact-safe) env(safe-area-inset-left, 0px);
    background: #0b2c20; box-shadow: 0 -4px 18px #0b2c2026;
    font-family: Instrument, Arial, sans-serif;
  }
  .mobile-contact a {
    box-sizing: border-box; min-width: 0; min-height: var(--mobile-contact-height);
    display: flex; align-items: center; justify-content: center; gap: 6px;
    padding: 8px 3px; color: #fff; text-decoration: none;
    font-size: 14px; font-weight: 700; line-height: 1.25;
  }
  .mobile-contact a + a { border-left: 1px solid #ffffff33; }
  .mobile-contact svg { flex: none; width: 19px; height: 19px; fill: none; stroke: #32c882; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
  .mobile-contact a:focus-visible { outline: 3px solid #32c882; outline-offset: -4px; }
  .mobile-contact a:active { background: #17523b; }
  .wyd-quote-launcher { bottom: calc(var(--mobile-contact-height) + var(--mobile-contact-safe) + 12px); }
  body.wyd-modal-open .mobile-contact { display: none; }
  /* Suppress the strip while editing, when supported; the 60px reserve remains. */
  @supports selector(body:has(.inquiry-form input:focus)) {
    body:has(.inquiry-form :is(input, textarea, select):focus) .mobile-contact { display: none; }
  }
}

/* Keep navigation usable when the contact strip is active on a short screen. */
@media (max-width: 767px) {
  .header #navigation { max-height: calc(100dvh - 140px); overflow-y: auto; overscroll-behavior: contain; }
  @supports selector(body:has(.menu-toggle[aria-expanded="true"])) {
    body:has(.menu-toggle[aria-expanded="true"]) .mobile-contact { display: none; }
    body:has(.menu-toggle[aria-expanded="true"]) .wyd-quote-launcher { visibility: hidden !important; pointer-events: none !important; }
  }
}
