/* ============================================================
   HEADER ENHANCEMENT — BBM Mahavidyalaya Okari
   ============================================================ */

/* ══════════════════════════════════════════════════════════
   TOP BAR
   ══════════════════════════════════════════════════════════ */
#top-sbh {
    background: #1a3a5c !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    padding: 0 !important;
}

.extra-header {
    display: flex !important;
    align-items: stretch !important;
    justify-content: space-between !important;
    flex-wrap: nowrap !important;
    min-height: 36px;
}

/* ── Left: Social Icons ── */
.push-woz {
    display: flex;
    align-items: center;
    padding: 0 8px;
    border-right: 1px solid rgba(255,255,255,0.1);
}

.gov-him ul,
#top-sbh .gov-him ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    float: none !important;
}

#top-sbh .gov-him ul li {
    float: none !important;
    border: none !important;
}

#top-sbh .gov-him ul li:first-child {
    border-right: none !important;
}

#top-sbh .gov-him ul li a,
#top-sbh .gov-him ul li a:hover,
#top-sbh .gov-him ul li a:focus {
    background: transparent !important;
    width: 28px !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    border: 1px solid rgba(255,255,255,0.2) !important;
    padding: 0 !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
}

#top-sbh .gov-him ul li a img {
    width: 18px !important;
    height: 18px !important;
    object-fit: contain !important;
    opacity: 0.85 !important;
    transition: opacity 0.2s !important;
}

#top-sbh .gov-him ul li a:hover {
    background: rgba(255,255,255,0.15) !important;
    border-color: rgba(255,255,255,0.45) !important;
}

#top-sbh .gov-him ul li a:hover img {
    opacity: 1 !important;
}

/* ── Right: Quick Links ── */
.push-32e {
    display: flex;
    align-items: center;
}

.cle-jk9,
#top-sbh #acc-396 ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: stretch !important;
}

.cle-jk9::before,
.cle-jk9::after {
    display: none !important;
}

#top-sbh #acc-396 > ul > li {
    float: none !important;
    border: none !important;
    border-left: 1px solid rgba(255,255,255,0.1) !important;
    display: flex !important;
    align-items: center !important;
}

#top-sbh #acc-396 > ul > li:last-child {
    border-right: none !important;
}

/* ── FONT CONSISTENCY: same size & weight as nav links ── */
#top-sbh #acc-396 ul li a {
    color: #c8dff5 !important;
    background: transparent !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.15px !important;
    padding: 0 13px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    transition: background 0.2s ease, color 0.2s ease !important;
    text-transform: none !important;
}

#top-sbh #acc-396 > ul > li a:hover,
#top-sbh #acc-396 > ul > li a:focus {
    background: rgba(255,255,255,0.12) !important;
    color: #ffffff !important;
}

/* ══════════════════════════════════════════════════════════
   LOGO BAND
   ══════════════════════════════════════════════════════════ */
.header-logo {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    padding: 12px 0 !important;
    background: #ffffff !important;
    border-bottom: none !important;
    box-shadow: none !important;
    margin-bottom: 0 !important;
}

.logo-head img {
    height: 90px !important;
    width: auto !important;
    display: block !important;
}

/* ══════════════════════════════════════════════════════════
   NAV BAR
   ══════════════════════════════════════════════════════════ */
.main-menu {
    position: relative;
    z-index: 1000;
}

/* On desktop: hide nav-search form (search bar takes up vertical space) */
@media (min-width: 992px) {
    .nav-toggle {
        display: none !important;
        height: 0 !important;
        overflow: hidden !important;
    }

    .nav-search {
        display: none !important;
    }

    /* search-input flex row — make nav fill full width */
    .search-input {
        width: 100% !important;
    }
}

/* ── FONT CONSISTENCY: same as top bar ── */
.nav-menu > li > a {
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.15px !important;
}

/* Top-level nav hover */
.nav-menu > li:hover > a,
.nav-menu > li.active > a,
.nav-menu > li.focus > a {
    color: #ffffff !important;
    background-color: rgba(255,255,255,0.18) !important;
}

/* Sticky */
.main-menu.sticky {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    box-shadow: 0 3px 14px rgba(0,0,0,0.3) !important;
    animation: stickySlideDown 0.28s ease !important;
}

@keyframes stickySlideDown {
    from { transform: translateY(-100%); }
    to   { transform: translateY(0); }
}

/* ══════════════════════════════════════════════════════════
   DROPDOWN
   ══════════════════════════════════════════════════════════ */
.nav-dropdown {
    border-top: 3px solid #C9A84C !important;
    box-shadow: 0 6px 20px rgba(0,0,0,0.25) !important;
    border-radius: 0 0 6px 6px !important;
    min-width: 200px !important;
}

/* White text on dark navy bg */
.nav-dropdown > li > a {
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    padding: 10px 18px !important;
    display: block !important;
    width: 100% !important;
    transition: background 0.18s ease, color 0.18s ease, padding-left 0.18s ease !important;
    white-space: nowrap !important;
    border-bottom: 1px solid rgba(255,255,255,0.07) !important;
}

/* Hover */
.nav-dropdown > li:hover > a,
.nav-dropdown > li.focus > a {
    color: #2d1f00 !important;
    background-color: #C9A84C !important;
    padding-left: 24px !important;
}

/* Mobile portrait: tempasset sets color:#333 which is invisible on dark bg */
.nav-menus-wrapper .nav-menu > li > a,
.navigation-portrait .nav-menu > li > a {
    color: #ffffff !important;
}

/* Chevrons */
.nav-menu > li:hover > a .submenu-indicator-chevron,
.nav-menu > .active > a .submenu-indicator-chevron,
.nav-menu > .focus > a .submenu-indicator-chevron {
    border-color: transparent #ffffff #ffffff transparent !important;
}

.nav-dropdown > li:hover > a .submenu-indicator-chevron,
.nav-dropdown > .focus > a .submenu-indicator-chevron {
    border-color: transparent #2d1f00 #2d1f00 transparent !important;
}

/* About dropdown scrollable */
.nav-menu > li > .nav-dropdown.about-dropdown {
    max-height: 65vh !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
}

.nav-dropdown.about-dropdown::-webkit-scrollbar { width: 4px; }
.nav-dropdown.about-dropdown::-webkit-scrollbar-thumb {
    background: #C9A84C;
    border-radius: 4px;
}

/* ══════════════════════════════════════════════════════════
   MOBILE OFFCANVAS — enhanced
   Tempasset sets background-color: #fff — override to dark
   ══════════════════════════════════════════════════════════ */

/* Offcanvas panel — dark navy background */
.navigation-portrait .nav-menus-wrapper {
    background-color: #0f2d4a !important;
    box-shadow: 4px 0 24px rgba(0,0,0,0.35) !important;
}

/* Close button — ONLY show in portrait/mobile mode */
.nav-menus-wrapper-close-button {
    display: none !important;
}

.navigation-portrait .nav-menus-wrapper-close-button {
    background: rgba(255,255,255,0.1) !important;
    color: #fff !important;
    font-size: 18px !important;
    width: 36px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 50% !important;
    margin: 12px 12px 8px auto !important;
    cursor: pointer !important;
    transition: background 0.2s !important;
    line-height: 1 !important;
}

.navigation-portrait .nav-menus-wrapper-close-button:hover {
    background: rgba(255,255,255,0.22) !important;
}

/* Portrait nav items */
.navigation-portrait .nav-menu > li {
    border-top: 1px solid rgba(255,255,255,0.08) !important;
}

/* Nav text — dark bg pe white text */
.navigation-portrait .nav-menu > li > a,
.nav-menus-wrapper .nav-menu > li > a {
    color: #e8f2ff !important;
    padding: 13px 20px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.15px !important;
}

.navigation-portrait .nav-menu > li:hover > a,
.navigation-portrait .nav-menu > li.focus > a {
    background: rgba(255,255,255,0.1) !important;
    color: #C9A84C !important;
}

/* Portrait dropdown items */
.navigation-portrait .nav-dropdown > li > a {
    color: #b8d4f0 !important;
    background-color: rgba(0,0,0,0.15) !important;
    padding: 10px 20px 10px 32px !important;
    font-size: 12.5px !important;
    font-weight: 400 !important;
    border-bottom: 1px solid rgba(255,255,255,0.05) !important;
}

.navigation-portrait .nav-dropdown > li:hover > a,
.navigation-portrait .nav-dropdown > li.focus > a {
    color: #2d1f00 !important;
    background-color: #C9A84C !important;
    padding-left: 38px !important;
}

/* Submenu indicator chevron — white in offcanvas */
.navigation-portrait .nav-menu > li > a .submenu-indicator-chevron {
    border-color: transparent #e8f2ff #e8f2ff transparent !important;
}

.navigation-portrait .nav-menu > li.focus > a .submenu-indicator-chevron,
.navigation-portrait .nav-menu > li:hover > a .submenu-indicator-chevron {
    border-color: transparent #C9A84C #C9A84C transparent !important;
}

/* ══════════════════════════════════════════════════════════
   TOPBAR MOBILE TOGGLE
   ══════════════════════════════════════════════════════════ */
.topbar-toggle {
    display: none;
    background: rgba(255,255,255,0.12);
    border: 1px solid rgba(255,255,255,0.25);
    color: #fff;
    border-radius: 4px;
    padding: 5px 10px;
    font-size: 15px;
    cursor: pointer;
    line-height: 1;
    transition: background 0.2s;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

.topbar-toggle:hover {
    background: rgba(255,255,255,0.22);
}

/* ══════════════════════════════════════════════════════════
   RESPONSIVE
   ══════════════════════════════════════════════════════════ */
@media (max-width: 767px) {
    /* Override tempasset display:none on mobile */
    #top-sbh {
        display: block !important;
    }

    .extra-header {
        flex-wrap: wrap !important;
        justify-content: space-between !important;
        align-items: center !important;
        padding: 5px 0 !important;
        gap: 6px !important;
    }

    .topbar-toggle {
        display: inline-flex;
    }

    /* Links hidden by default on mobile */
    .push-32e {
        display: none !important;
        width: 100%;
        border-top: 1px solid rgba(255,255,255,0.1);
        padding: 4px 0 !important;
    }

    .push-32e.topbar-open {
        display: block !important;
    }

    #top-sbh #acc-396 ul {
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    #top-sbh #acc-396 > ul > li {
        border-left: none !important;
        border-bottom: 1px solid rgba(255,255,255,0.08) !important;
        width: 100%;
    }

    #top-sbh #acc-396 ul li a {
        height: auto !important;
        padding: 9px 14px !important;
        width: 100% !important;
    }

    .logo-head img {
        height: 65px !important;
    }
}



/* ══════════════════════════════════════════════════════════
   FANCYBOX — fix z-index above sticky nav (z-index: 9999)
══════════════════════════════════════════════════════════ */
.fancybox__container {
    z-index: 99999 !important;
}

.fancybox__backdrop {
    background: rgba(0,0,0,0.92) !important;
}
