/* Shared mobile header for the public website. */
@media (max-width: 640px) {
    .login-bar { padding: 0.55rem 0 !important; }
    .login-bar-content { min-height: 34px; font-size: 0.72rem; }
    .login-bar-badge { min-width: 0; gap: 0.4rem; }
    .login-bar-badge > span:last-child,
    .login-bar-text { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .login-btn-top { flex: 0 0 auto; padding: 0.48rem 0.75rem !important; font-size: 0.72rem !important; white-space: nowrap; }
    .navbar, .navbar.scrolled { top: 48px !important; padding: 0.7rem 0 !important; }
    .nav-wrapper { position: relative; gap: 0.75rem; }
    .brand-block { min-width: 0; gap: 0.55rem; transform: none !important; }
    .brand-logo-img { height: 34px; flex: 0 0 auto; }
    .brand-text { min-width: 0; }
    .brand-title { font-size: 0.95rem; white-space: nowrap; }
    .brand-subtitle { max-width: 185px; font-size: 0.58rem; line-height: 1.2; white-space: normal; }
    .nav-menu { display: none !important; position: absolute; top: calc(100% + 0.7rem); left: 0; right: 0; flex-direction: column; align-items: stretch; gap: 0; padding: 0.45rem; background: #fff; border: 1px solid var(--brand-border); border-radius: var(--radius-md); box-shadow: var(--shadow-md); z-index: 20; }
    .nav-menu.is-open { display: flex !important; }
    .nav-menu li { width: 100%; }
    .nav-link { display: block; padding: 0.7rem 0.8rem; font-size: 0.9rem; }
    .nav-link::after { display: none; }
    .mobile-nav-toggle { display: inline-flex; flex: 0 0 auto; border: 1px solid var(--brand-border); background: #fff; color: var(--brand-navy); width: 42px; height: 42px; border-radius: var(--radius-md); align-items: center; justify-content: center; cursor: pointer; font-size: 1.1rem; }
}

@media (min-width: 641px) {
    .mobile-nav-toggle { display: none !important; }
}
