/* Progressive mobile navigation; the desktop layout stays unchanged. */
.mobile-menu-toggle,
.mobile-contact-bar,
.header nav .mobile-nav-inquiry { display: none; }

@media (max-width: 760px) {
  .header.mobile-nav-ready {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    column-gap: 14px;
    row-gap: 0;
  }
  .header.mobile-nav-ready > .small { display: none; }
  .header.mobile-nav-ready > .brand { margin-right: auto; }
  .mobile-menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 46px;
    padding: 9px 12px;
    border: 1px solid var(--line, #dddcd0);
    border-radius: 9px;
    background: #fffdf7;
    color: var(--green, #243e35);
    font: 600 13px Arial, Helvetica, sans-serif;
  }
  .mobile-menu-icon { display: grid; gap: 4px; width: 17px; }
  .mobile-menu-icon i { width: 17px; height: 1.5px; background: currentColor; display: block; transition: transform .18s ease, opacity .18s ease; }
  .mobile-menu-open .mobile-menu-icon i:nth-child(1) { transform: translateY(5.5px) rotate(45deg); }
  .mobile-menu-open .mobile-menu-icon i:nth-child(2) { opacity: 0; }
  .mobile-menu-open .mobile-menu-icon i:nth-child(3) { transform: translateY(-5.5px) rotate(-45deg); }
  .header.mobile-nav-ready > nav:not([hidden]) {
    display: grid;
    grid-template-columns: 1fr 1fr;
    flex-basis: 100%;
    gap: 7px;
    margin: 12px 0 0;
    padding: 12px 0 4px;
    border-top: 1px solid var(--line, #dddcd0);
    font-size: 14px;
  }
  .header.mobile-nav-ready > nav[hidden] { display: none; }
  .header.mobile-nav-ready > nav > a {
    display: flex;
    align-items: center;
    min-height: 46px;
    padding: 10px 12px;
    border-radius: 7px;
    background: #ffffff80;
  }
  .header.mobile-nav-ready > nav > .mobile-nav-inquiry {
    background: var(--green, #243e35);
    color: white;
  }
  .mobile-contact-bar:not([hidden]) {
    position: fixed;
    z-index: 40;
    inset: auto max(12px, env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));
    display: grid;
    grid-template-columns: .85fr 1.35fr;
    gap: 6px;
    margin: 0;
    padding: 6px;
    border: 1px solid #dddcd0;
    border-radius: 13px;
    background: #fffdf7;
    box-shadow: 0 8px 32px #243e3524;
    font: 600 13px Arial, Helvetica, sans-serif;
  }
  .mobile-contact-bar a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 10px;
    border-radius: 8px;
  }
  .mobile-contact-bar .mobile-call { background: #edf0e7; color: var(--green, #243e35); }
  .mobile-contact-bar .mobile-inquiry { background: var(--terra, #bd694b); color: white; }
  .mobile-contact-bar .mobile-inquiry:hover { color: white; background: #a8583d; }
  .mobile-contact-bar svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linejoin: round; }
  .mobile-contact-bar a:focus-visible,
  .mobile-menu-toggle:focus-visible { outline: 3px solid var(--terra, #bd694b); outline-offset: 3px; }
}

@media (prefers-reduced-motion: reduce) {
  .mobile-menu-icon i { transition: none; }
}
