.menu-toggle{display:none;border:1px solid rgba(75,46,191,.18);border-radius:12px;background:#fff;color:#101438;padding:10px 13px;font:inherit;font-size:.82rem;font-weight:800;cursor:pointer}
.navlinks{display:flex!important;align-items:center;gap:22px}
.navlinks>a,.nav-group>button{border:0;background:none;color:#101438;padding:11px 2px;font:inherit;font-size:.84rem;font-weight:750;white-space:nowrap;cursor:pointer}
.navlinks>a:hover,.navlinks>a:focus-visible,.nav-group>button:hover,.nav-group>button:focus-visible{color:#4b2ebf}
.nav-group{position:relative}
.nav-group>button{display:flex;align-items:center;gap:6px}
.nav-group>button:after{content:"⌄";font-size:.82rem;transition:transform .2s ease}
.nav-group.open>button:after{transform:rotate(180deg)}
.dropdown{position:absolute;top:calc(100% + 9px);left:-18px;z-index:30;display:none;min-width:290px;padding:10px;background:#fff;border:1px solid rgba(75,46,191,.14);border-radius:16px;box-shadow:0 20px 46px rgba(16,20,56,.16)}
.nav-group:hover .dropdown,.nav-group:focus-within .dropdown,.nav-group.open .dropdown{display:grid}
.dropdown a{display:block;border-radius:10px;padding:11px 12px;color:#101438;font-size:.78rem;font-weight:800;line-height:1.3}
.dropdown a:hover,.dropdown a:focus-visible{background:#f1edf9;color:#4b2ebf}
.dropdown small{display:block;margin-top:3px;color:#746c82;font-size:.66rem;font-weight:500;line-height:1.45}
.header-user{display:flex;align-items:center;gap:9px;padding-left:16px;border-left:1px solid rgba(75,46,191,.14);white-space:nowrap}.header-welcome{color:#4b2ebf;font-size:.72rem;font-weight:850}.header-welcome:hover{color:#26114f}.header-signout{border:1px solid rgba(75,46,191,.2);border-radius:999px;background:#fff;color:#101438;padding:8px 11px;font:inherit;font-size:.68rem;font-weight:850;cursor:pointer}.header-signout:hover{border-color:#4b2ebf;color:#4b2ebf;background:#f8f6fc}
.header-signin{display:inline-flex!important;align-items:center;justify-content:center;border:1px solid rgba(75,46,191,.28)!important;border-radius:999px;background:#fff!important;color:#4b2ebf!important;padding:9px 16px!important;font-size:.74rem!important;font-weight:900!important;white-space:nowrap}.header-signin:hover,.header-signin:focus-visible{border-color:#4b2ebf!important;background:#f4f0ff!important;color:#26114f!important}
.admin-access-link{display:inline-flex!important;align-items:center;gap:7px;border-radius:999px;background:#eee9fb;color:#4b2ebf!important;padding:9px 13px!important;font-size:.72rem!important;font-weight:900!important;white-space:nowrap}.admin-access-link:hover{background:#4b2ebf;color:#fff!important}.admin-request-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#d92d20;color:#fff;font-size:.64rem;line-height:1;font-weight:950;box-shadow:0 0 0 3px rgba(217,45,32,.12)}.admin-request-badge[hidden]{display:none!important}.admin-access-link.has-pending{box-shadow:0 0 0 2px rgba(217,45,32,.14)}
@media(max-width:1100px){.navlinks{gap:12px}.navlinks>a,.nav-group>button{font-size:.8rem}.header-cta,.topbar>.nav>.btn{padding:11px 15px;font-size:.8rem}}
/* Desktop header: reserve space for the logo and account controls. */
.topbar .nav{width:min(1680px,calc(100% - clamp(40px,5vw,120px)));gap:clamp(12px,1.1vw,20px)}
.topbar .brand{flex:0 0 auto;min-width:max-content}
.topbar .navlinks{flex:0 1 auto;min-width:0;gap:clamp(10px,.9vw,18px)}
.topbar .navlinks>a,.topbar .nav-group>button{font-size:.78rem}
.topbar .header-user{flex:0 0 auto}
.topbar .nav>.btn{flex:0 0 auto;width:auto;min-height:44px;padding:10px 17px;border-radius:999px;white-space:nowrap;line-height:1.2;text-align:center}
@media(max-width:1500px){
 .menu-toggle{display:inline-flex;margin-left:auto}
 .navlinks{position:absolute;top:100%;left:0;right:0;display:none!important;max-height:calc(100vh - 72px);overflow:auto;padding:12px 20px 22px;background:#fff;border-bottom:1px solid rgba(75,46,191,.14);box-shadow:0 18px 32px rgba(16,20,56,.10);flex-direction:column;align-items:stretch;gap:2px}
 .navlinks.open{display:flex!important}
 .navlinks>a,.nav-group>button{width:100%;padding:12px;text-align:left}
 .nav-group>button{justify-content:space-between}
 .dropdown{position:static;min-width:0;margin:0 8px 8px;padding:5px;background:#f8f6fc;border:0;box-shadow:none}
 .nav-group:hover .dropdown{display:none}
 .nav-group.open .dropdown,.nav-group:focus-within .dropdown{display:grid}
 .header-user{margin:8px 0 0;padding:13px 12px 0;border-left:0;border-top:1px solid rgba(75,46,191,.14);justify-content:space-between}.header-welcome{font-size:.78rem}.header-signout{padding:8px 13px}
 .header-signin{margin-top:8px;width:100%;padding:11px 14px!important}
 .topbar>.nav>.btn,.header-cta{display:none!important}
}
@media(max-width:480px){.brand-copy strong{font-size:.74rem!important}.brand-copy small{font-size:.46rem!important}.brand img{width:31px!important;height:31px!important}.menu-toggle{padding:8px 10px}}
