/* Keep the primary menu labels readable and reserve room for Contact Us. */
@media (min-width: 1200px) {
    .menu-section > .container > .row {
        flex-wrap: nowrap;
        align-items: center;
    }
    .menu-section > .container > .row > .col-lg-3 { flex: 0 0 12%; max-width: 12%; }
    .menu-section > .container > .row > .col-lg-7 { flex: 0 0 64%; max-width: 64%; }
    .menu-section > .container > .row > .col-lg-2 { flex: 0 0 24%; max-width: 24%; }
    .menu-section .navbar .container-fluid { padding-right: 0; padding-left: 0; }
    .menu-section .navbar-nav {
        width: 100%;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: space-between;
        gap: 4px;
    }
    .menu-section .menu-item .nav-link {
        padding: 8px 4px !important;
        white-space: nowrap;
        flex-shrink: 0;
        font-size: clamp(14px, .95vw, 18px);
        line-height: 1.25;
    }
    .menu-section > .container > .row > .col-lg-2 .d-flex {
        justify-content: flex-end;
        align-items: center;
        gap: 14px;
        white-space: nowrap;
    }
    .menu-section > .container > .row > .col-lg-2 .search {
        position: relative;
        left: clamp(8px, 1vw, 16px);
        flex: 0 0 auto;
    }
    .menu-section .number { position: static; font-size: clamp(13px, .9vw, 17px); letter-spacing: 0; }
    .menu-section .callus { white-space: nowrap; }
    .menu-section .dropdown-menu { top: 100%; left: 0; min-width: 14rem; margin-top: 0; }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .menu-section > .container > .row { flex-wrap: nowrap; align-items: center; }
    .menu-section > .container > .row > .col-lg-3 { flex: 0 0 12%; max-width: 12%; }
    .menu-section > .container > .row > .col-lg-7 { flex: 0 0 64%; max-width: 64%; }
    .menu-section > .container > .row > .col-lg-2 { flex: 0 0 24%; max-width: 24%; }
    .menu-section .navbar .container-fluid { padding-right: 0; padding-left: 0; }
    .menu-section .navbar-nav {
        width: 100%;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: space-between;
        gap: 2px;
    }
    .menu-section .menu-item .nav-link {
        padding: 7px 2px !important;
        white-space: nowrap;
        flex-shrink: 0;
        font-size: 13px;
        line-height: 1.2;
    }
    .menu-section > .container > .row > .col-lg-2 .d-flex {
        justify-content: flex-end;
        align-items: center;
        gap: 10px;
        white-space: nowrap;
    }
    .menu-section > .container > .row > .col-lg-2 .search {
        position: relative;
        left: 8px;
        flex: 0 0 auto;
    }
    .menu-section .number { position: static; font-size: 13px; letter-spacing: 0; }
}

@media (max-width: 991.98px) {
    .menu-section .offcanvas-body .menu-item > a { white-space: nowrap; }
}
