/* ========================================
   TOPBAR MOBILE RESPONSIVE FIX
   Ensues desktop-like structure on all devices
   ======================================== */

@media (max-width: 991px) {

    /* Topbar Visibility & Container */
    .container-fluid.px-5.d-none.border-bottom.d-lg-block,
    .container-fluid.border-bottom {
        display: block !important;
        padding-left: 8px !important;
        padding-right: 8px !important;
        height: 45px !important;
        line-height: normal !important;
        margin-bottom: 0 !important;
        overflow: hidden;
        background-color: #ffffff !important;
        border-bottom: 1px solid #e0e0e0 !important;
        color: #333333 !important;
    }

    /* Force Horizontal Layout */
    .container-fluid.border-bottom .row {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        height: 45px !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Column Sizing - Adaptive Widths */
    .container-fluid.border-bottom .col-lg-4 {
        flex: 1 1 auto !important;
        /* Allow growing/shrinking */
        width: auto !important;
        max-width: 65% !important;
        /* Cap width */
        padding: 0 !important;
        text-align: left !important;
        display: flex !important;
        align-items: center !important;
        margin-bottom: 0 !important;
    }

    .container-fluid.border-bottom .col-lg-8 {
        flex: 0 0 auto !important;
        /* Fit content */
        width: auto !important;
        max-width: 35% !important;
        padding: 0 !important;
        text-align: right !important;
        display: flex !important;
        /* Align content inside */
        justify-content: flex-end !important;
        align-items: center !important;
        margin-bottom: 0 !important;
    }

    /* Content Flex Containers */
    .container-fluid.border-bottom .d-inline-flex {
        display: flex !important;
        align-items: center !important;
        height: 45px !important;
    }

    /* Contact Links Styling */
    .container-fluid.border-bottom a.text-muted {
        color: #555555 !important;
        font-size: 10px !important;
        display: inline-flex !important;
        align-items: center !important;
        margin-left: 5px !important;
        margin-right: 5px !important;
        white-space: nowrap !important;
        text-decoration: none !important;
    }

    /* Email link truncation */
    .container-fluid.border-bottom a.topbar-email {
        overflow: hidden;
        max-width: 160px;
    }

    /* Phone link spacing */
    .container-fluid.border-bottom a.topbar-phone {
        margin-left: 4px !important;
    }

    /* Social Icons Styling */
    .container-fluid.border-bottom a.text-white {
        color: #30385f !important;
        font-size: 11px !important;
        margin-left: 8px !important;
        display: inline-block !important;
    }

    .container-fluid.border-bottom .dropdown {
        display: inline-block !important;
        margin-left: 5px !important;
    }

    .container-fluid.border-bottom .dropdown small {
        color: #555555 !important;
        font-size: 10px !important;
    }

    /* Icon sizes — scoped to topbar only */
    .container-fluid.border-bottom .fas,
    .container-fluid.border-bottom .fab {
        font-size: 11px !important;
    }
}

/* ========================================
   SMALL DEVICE FINE TUNING
   ======================================== */

@media (max-width: 480px) {

    /* Shrink font sizes further */
    .container-fluid.border-bottom a.text-muted {
        font-size: 9px !important;
        margin-left: 2px !important;
        margin-right: 2px !important;
    }

    /* Reduce icon spacing */
    .container-fluid.border-bottom a.text-white {
        margin-left: 5px !important;
        font-size: 10px !important;
    }

    /* Truncate email more aggressively on small screens */
    .container-fluid.border-bottom a.topbar-email {
        max-width: 110px;
    }
}

@media (max-width: 360px) {

    /* Very small screens: hide email text, keep icon only */
    .container-fluid.border-bottom a.topbar-email .topbar-text {
        display: none !important;
    }

    .container-fluid.border-bottom a.topbar-email i {
        font-size: 11px !important;
    }
}

@media (max-width: 991px) {

    /* Remove Navbar Padding (Fix White Space Issue) */
    .nav-bar {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}