/* === Compact sticky header — readable menu on scroll === */
#sp-header.menu-fixed {
    background: #fff !important;
    height: 64px !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.10) !important;
}
#sp-header.menu-fixed .header-content-wrap,
#sp-header.menu-fixed .header-content-wrap > .row {
    height: 64px !important; min-height: 64px !important; align-items: center !important;
}
#sp-header.menu-fixed #sp-logo { height: 64px !important; display: flex !important; align-items: center !important; }
#sp-header.menu-fixed #sp-logo img { max-height: 46px !important; width: auto !important; }
#sp-header.menu-fixed #sp-menu { height: 64px !important; }
@media (min-width: 992px) {
    #sp-header.menu-fixed .sp-megamenu-wrapper { display: flex !important; align-items: center !important; height: 64px !important; }
    #sp-header.menu-fixed .sp-megamenu-parent { display: flex !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: flex-end !important; height: 64px !important; }
    #sp-header.menu-fixed .sp-megamenu-parent > li { height: 64px !important; white-space: nowrap !important; }
    #sp-header.menu-fixed .sp-megamenu-parent > li > a {
        color: #333 !important; line-height: 64px !important; height: 64px !important;
        padding: 0 9px !important; font-size: 14px !important; white-space: nowrap !important;
    }
}

/* === Desktop: menu on one row, vertically centered to the logo === */
@media (min-width: 992px) {
    #sp-header { height: auto !important; background: #fff !important; }
    #sp-header .header-content-wrap > .row { display: flex !important; align-items: center !important; }
    #sp-header #sp-menu { display: flex !important; align-items: center !important; }
    #sp-header #sp-menu .sp-megamenu-wrapper { width: 100% !important; }
    #sp-header #sp-menu .sp-megamenu-parent {
        display: flex !important; flex-wrap: nowrap !important; align-items: center !important; justify-content: flex-end !important;
    }
    #sp-header #sp-menu .sp-megamenu-parent > li { white-space: nowrap !important; }
    #sp-header #sp-menu .sp-megamenu-parent > li > a {
        padding-left: 11px !important; padding-right: 11px !important; white-space: nowrap !important;
    }
}

/* === Mobile burger: visible branded button === */
#sp-header a#offcanvas-toggler {
    background-color: #0085b3 !important;
    width: 42px !important; height: 42px !important; border-radius: 6px !important;
    display: inline-flex !important; align-items: center !important; justify-content: center !important;
}
#sp-header a#offcanvas-toggler i.fa-bars,
#sp-header a#offcanvas-toggler i { color: #fff !important; }
@media (max-width: 991px) {
    #sp-header.menu-fixed a#offcanvas-toggler {
        position: absolute !important; top: 11px !important; right: 15px !important; margin: 0 !important;
    }
}
@media (min-width: 992px) {
    #sp-header a#offcanvas-toggler { display: none !important; }
}

/* === Hide decorative city-skyline background above footer === */
#sp-bottom::before { display: none !important; }
