/* Scoped to the shared navigation; the standalone QR reader is not affected. */
.it-site-nav { z-index: 1030; }
.it-site-nav .it-site-menu { --bs-offcanvas-width: min(370px, calc(100vw - 1.5rem)); }
.it-site-nav .it-account-menu .dropdown-menu { min-width: 235px; max-width: calc(100vw - 2rem); padding: .55rem; }
.it-site-nav .dropdown-item { display: flex; align-items: center; gap: .7rem; border-radius: 8px; padding: .65rem .8rem; }
.it-site-nav .dropdown-item i { width: 1.2rem; text-align: center; color: var(--it-violet); }
.it-site-nav .dropdown-header { font: 700 .7rem 'Inter', sans-serif; text-transform: uppercase; letter-spacing: .1em; color: var(--it-muted); margin: 0; padding: .6rem .8rem; }
.it-site-nav .it-account-logout { color: #b42338 !important; }
.it-site-nav .nav-link:focus-visible, .it-site-nav .dropdown-item:focus-visible { outline: 2px solid var(--it-violet); outline-offset: 2px; }
@media (min-width: 1092px) {
    /* This breakpoint owns desktop expansion. Do not add Bootstrap's navbar-expand-* to the markup. */
    .it-site-nav { flex-wrap: nowrap; }
    .it-site-nav .navbar-toggler { display: none; }
    .it-site-nav .it-site-menu {
        position: static; visibility: visible !important; transform: none !important; display: flex;
        flex: 1 1 auto; width: auto !important; height: auto; border: 0; background: transparent;
        overflow: visible; transition: none;
    }
    .it-site-nav .offcanvas-header { display: none; }
    .it-site-nav .offcanvas-body { display: flex; align-items: center; flex-grow: 1; padding: 0; overflow: visible; }
    .it-site-nav .navbar-nav { flex-direction: row; align-items: center; }
    .it-site-nav .navbar-nav .dropdown-menu { position: absolute; }
    .it-site-nav .it-account-links { margin-left: auto; gap: .3rem; }
    .it-site-nav .it-account-menu .dropdown-menu { right: 0; left: auto; }
}
@media (max-width: 1091.98px) {
    /* Filtered ancestors would clip the fixed overlay to the header. */
    .it-site-nav { backdrop-filter: none; -webkit-backdrop-filter: none; }
    .it-site-nav .navbar-toggler { display: block; min-height: 42px; }
    .it-site-nav .it-site-menu { background: var(--it-bg2); border-left: 1px solid var(--it-border); box-shadow: var(--it-shadow-lg); }
    .it-site-nav .offcanvas-header { padding: 1.5rem; border-bottom: 1px solid var(--it-border); }
    .it-site-nav .offcanvas-title { font: 700 1.25rem 'Sora', sans-serif; margin-top: .25rem; }
    .it-site-nav .it-menu-eyebrow { color: var(--it-violet); font-size: .75rem; font-weight: 700; letter-spacing: .08em; }
    .it-site-nav .offcanvas-body { padding: 1rem; overflow-y: auto; overscroll-behavior: contain; }
    .it-site-nav .navbar-nav { flex-direction: column; align-items: stretch; gap: .25rem; }
    .it-site-nav .it-account-links { border-top: 1px solid var(--it-border); padding-top: 1rem; margin-top: 1rem; }
    .it-site-nav .nav-link { display: flex; align-items: center; gap: .5rem; min-height: 46px; border-radius: 10px; white-space: normal; }
    .it-site-nav .dropdown-toggle::after { margin-left: auto; }
    .it-site-nav .navbar-nav .dropdown-menu { position: static !important; transform: none !important; width: 100%; min-width: 0; margin: .3rem 0 .6rem !important; box-shadow: none !important; }
    .it-site-nav .dropdown-item { white-space: normal; min-height: 44px; }
}
@media (prefers-reduced-motion: reduce) {
    .it-site-nav .it-site-menu, .it-site-nav .offcanvas-backdrop { transition: none; }
}
