/* Shared layout state set by adaptive-navigation.js. */
html.nav-hamburger .adaptive-nav-desktop {
    display: none !important;
}

html.nav-hamburger .adaptive-nav-toggle {
    align-items: center;
    display: inline-flex !important;
    justify-content: center;
}

html:not(.nav-hamburger):not(.nav-fit-probe) .adaptive-nav-desktop {
    display: flex !important;
}

html:not(.nav-hamburger):not(.nav-fit-probe) .adaptive-nav-toggle {
    display: none !important;
}

html.nav-hamburger .adaptive-nav-menu:not(.hidden):not(.mobile-menu) {
    display: block !important;
}

html.nav-hamburger .adaptive-nav-menu.adaptive-menu-open:not(.mobile-menu) {
    display: block !important;
}

html.nav-hamburger .adaptive-nav-menu.mobile-menu.open,
html.nav-hamburger .adaptive-nav-menu.mobile-menu.adaptive-menu-open {
    display: grid !important;
}

html.nav-hamburger .adaptive-nav-menu.adaptive-active-menu {
    backdrop-filter: blur(15px);
    background: rgba(13, 29, 49, 0.95);
    display: flex !important;
    flex-direction: column;
    left: 0;
    max-height: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 100%;
    transition: max-height 0.3s ease;
    z-index: 99;
}

html.nav-hamburger .adaptive-nav-menu.adaptive-active-menu .nav-link {
    border-bottom: 1px solid rgba(0, 255, 255, 0.1);
    color: #fff;
    font-size: 1.05rem;
    font-weight: 500;
    padding: 15px 20px;
    text-align: center;
    text-decoration: none;
    transition: all 0.3s ease;
    width: 100%;
}

html.nav-hamburger .adaptive-nav-menu.adaptive-active-menu .nav-link:last-child {
    border-bottom: 0;
}

html.nav-hamburger .adaptive-nav-menu.adaptive-active-menu .nav-link:hover,
html.nav-hamburger .adaptive-nav-menu.adaptive-active-menu .nav-link:focus-visible {
    color: #00ffff;
    outline: none;
}

html.nav-hamburger .adaptive-nav-menu.adaptive-active-menu .nav-link.active {
    color: #00ffff;
    text-shadow: 0 0 15px rgba(0, 255, 255, 0.8);
}

html.nav-hamburger .adaptive-nav-menu.adaptive-active-menu.active,
html.nav-hamburger .adaptive-nav-menu.adaptive-active-menu.adaptive-menu-open {
    display: flex !important;
    max-height: 500px !important;
}

/* Probe rules follow the active state so a wide viewport can restore desktop navigation. */
html.nav-fit-probe .adaptive-nav-desktop {
    display: flex !important;
    pointer-events: none !important;
    visibility: hidden !important;
}

html.nav-fit-probe .adaptive-nav-toggle {
    display: none !important;
}

html.nav-fit-probe.nav-width-probe .adaptive-nav-desktop {
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
    width: max-content !important;
}

html.nav-fit-probe.nav-width-probe .adaptive-nav-desktop > a {
    flex-shrink: 0 !important;
    white-space: nowrap !important;
}

html.nav-hamburger footer.adaptive-footer .adaptive-footer-row {
    align-items: center !important;
    flex-direction: column !important;
    gap: 1.5rem !important;
    justify-content: center !important;
    text-align: center !important;
}

html.nav-hamburger footer.adaptive-footer .adaptive-footer-row > * {
    margin-bottom: 0 !important;
    text-align: center !important;
}

html.nav-hamburger footer.adaptive-footer .footer-tools-link {
    display: none !important;
}
