/* MEGA MENU */
.site-header .btn.hamburger { --bs-btn-border-width:0 }
.site-header .btn.hamburger .fa-xmark { display:none }
.site-header .btn.hamburger[aria-expanded="true"] { --bs-btn-color:var(--bs-light) }
.site-header .btn.hamburger[aria-expanded="true"] .fa-bars { display:none }
.site-header .btn.hamburger[aria-expanded="true"] .fa-xmark { display:block }

body:has(.site-header .btn.hamburger[aria-expanded="true"]) { overflow:hidden }

@media (min-width:992px) {
    .site-header .btn.hamburger { display:none }
}

.mega-menu .nav-list { margin:0; padding:0; list-style:none; display:flex; flex-direction:column }
.mega-menu .nav-link { display:flex; align-items:center; white-space:nowrap }
.mega-menu .nav-link .dropdown-toggle::after { content:"\f078"; font-family:var(--fa-family-classic); font-size:0.75rem; margin-left:0.25rem; border:none; transition:transform 0.25s }
.mega-menu .nav-link.show .dropdown-toggle::after { transform:rotate(-180deg) }
.mega-menu .extras { display:none } 

@media (max-width:991px) {
    .mega-menu { display:none; position:absolute; top:100%; bottom:0; left:0; right:0; z-index:9999; min-height:80vh; overflow:auto;  background:#fff; border-top:solid 2px #fff; --bs-link-color:var(--bs-primary); box-shadow:0 5px 5px rgba(0,0,0,0.05) }
    .mega-menu.show { display:block }
    .mega-menu .container { padding:0 }
    .mega-menu .nav-item { border-bottom:solid 1px var(--bs-light) }
    .mega-menu .nav-link { --bs-nav-link-padding-y:0.5rem; --bs-nav-link-padding-x:1rem; --bs-nav-link-color:var(--bs-primary); --bs-nav-link-hover-color:var(--bs-primary); justify-content:space-between }
    .mega-menu .nav-link.show { background:var(--bs-primary); color:#fff }
    .mega-menu .nav-title { display:block; padding:0.5rem 1rem; font-weight:700; text-transform:uppercase; color:#666; border-bottom:solid 1px var(--bs-light) }
    .mega-menu .dropdown-menu { position:static !important; padding:0 !important; transform:none !important; border:none !important }
    .mega-menu .dropdown-menu .content { background:rgba(var(--bs-light-rgb), 0.37) }
    .mega-menu .dropdown-menu .sponsor { padding:0.5rem 1rem; text-align:center }
    .mega-menu .dropdown-menu .sponsor img { max-height:3rem }
    .mega-menu .dropdown-menu .thumbnail img { width:100% }
    
    .mega-menu .nav-list.level3 { display:flex; flex-direction:row; align-items:center; flex-wrap:wrap; padding:0 0.5rem }
    .mega-menu .nav-item.level3 { border-bottom:none; display:flex; align-items:center }
    .mega-menu .nav-item.level3:not(.icon) + .icon { margin-left:auto }
    
    .mega-menu .nav-link.level1 { --bs-nav-link-font-weight:700; text-transform:uppercase }
    .mega-menu .nav-link.level2 { --bs-nav-link-font-weight:700 }
    .mega-menu .nav-link.level3 { font-size:0.85rem; --bs-nav-link-padding-x:0.5rem }

    .mega-menu .nav-item.level2.has-submenu { padding:0.25rem 0 }
    .mega-menu .nav-item.level2.has-submenu .nav-link.level2 { --bs-nav-link-padding-y:0.25rem }

    .mega-menu .extras { display:flex; flex-direction:column; gap:1rem; padding:1.5rem; max-width:400px; margin:0 auto }
    .mega-menu .extras .btn { --bs-btn-color:var(--bs-primary) }
    .mega-menu .extras .social-icons { padding-top:0.5rem; border-top:solid 1px var(--bs-light) }
    .mega-menu .extras .social-icons .nav { justify-content:center }
}

@media (min-width:992px) {
    .mega-menu { flex:1; display:flex; align-items:center; justify-content:space-between }
    .mega-menu > .container { padding:0 }
    .mega-menu > .sponsor img { max-height:3rem }
    .mega-menu .nav-list.level1 { flex-direction:row }
    .mega-menu .nav-item:not(.has-columns) { position:relative }
    .mega-menu .nav-link.show { color:var(--bs-light) }

    .mega-menu .dropdown-menu { --bs-dropdown-padding-y:1.5rem; --bs-dropdown-padding-x:1.5rem; --bs-dropdown-bg:rgba(255,255,255,0.95); --bs-dropdown-min-width:300px; --bs-nav-link-color:var(--bs-primary); --bs-dropdown-border-width:0; --bs-dropdown-border-radius:0; box-shadow:0 5px 5px rgba(0,0,0,0.05); top:100% !important; transform:none !important }
    .mega-menu .dropdown-menu.show { display:block }
    .mega-menu .dropdown-menu .container { display:flex; flex-direction:column; gap:1rem; padding:0 }
    .mega-menu .dropdown-menu .sponsor { text-align:center }
    .mega-menu .dropdown-menu .sponsor img { max-width:120px; max-height:60px }
    .mega-menu .dropdown-menu .thumbnail img { width:100% }
    
    .mega-menu .nav-item.has-columns .dropdown-menu { left:0 !important; right:0 !important; max-height:80vh; overflow:auto; }
    .mega-menu .nav-item.has-columns .columns { display:flex; column-gap:3rem; justify-content:space-between; row-gap:2rem; flex-wrap:wrap }
    .mega-menu .nav-item.has-columns .column { flex:1; max-width:48% }
    
    .mega-menu .dropdown-menu .nav-link { --bs-nav-link-color:var(--bs-primary); --bs-nav-link-hover-color:var(--bs-body-color) }
    .mega-menu .dropdown-menu .nav-item { display:flex }
    .mega-menu .nav-title { padding-bottom:0.5rem; border-bottom:solid 1px rgba(var(--bs-light-rgb), 0.75); font-size:1.25rem; color:var(--bs-body-color); font-weight:700; text-transform:uppercase }

    .mega-menu .nav-list.level3 { flex:1; display:flex; flex-direction:row; justify-content:flex-end }
    
    .mega-menu .nav-item.level2 { align-items:center; gap:2rem; padding:0.5rem 0; border-bottom:solid 1px rgba(var(--bs-light-rgb), 0.75) }
    .mega-menu .nav-item.level3.icon:nth-child(4) { margin-left:0.5rem }
    
    .mega-menu .nav-link.level1 { --bs-nav-link-padding-x:1rem; --bs-nav-link-padding-y:1rem; font-weight:700; text-transform:uppercase }
    .mega-menu .nav-link.level2 { flex:1; font-weight:700 }
    .mega-menu .nav-link.level3 { font-size:0.9rem; --bs-nav-link-padding-x:0.25rem; --bs-nav-link-padding-y:0 }

    /* HOVER FUNCTIONALITY */
    .mega-menu .nav-item.level1:hover > .dropdown-menu { display:block }
    .mega-menu .nav-item.level1:hover > .nav-link { color:var(--bs-nav-link-hover-color) }
    .mega-menu .nav-item.level1:hover > .nav-link > .dropdown-toggle::after { transform:rotate(-180deg) }
}