/* Mobile-only navigation. Independent feature flag and rollback. */
.mental-nav-bar, .mental-nav-spacer { display: none; }
dialog.mental-mobile-menu:not([open]) { display: none; }
@media (max-width: 991.98px) {
    header.header.mental-smart-header {
        position: fixed; inset: 0 0 auto; width: 100%; height: calc(64px + env(safe-area-inset-top, 0px));
        padding-top: env(safe-area-inset-top, 0px); background: #fff; color: #173968;
        border-bottom: 1px solid #e8edf3; box-shadow: 0 3px 16px rgba(20,44,77,.045);
        z-index: 10030; transform: translateY(0); transition: transform .22s ease;
    }
    header.header.mental-smart-header.mental-header-away { transform: translateY(-110%); pointer-events: none; }
    header.mental-smart-header > .container { display: none; }
    .mental-nav-spacer { display: block; height: calc(64px + env(safe-area-inset-top, 0px)); }
    .mental-nav-bar { display: flex; justify-content: space-between; align-items: center; height: 64px; padding: 0 max(18px, env(safe-area-inset-right)) 0 max(18px, env(safe-area-inset-left)); }
    .mental-nav-brand { display: flex; align-items: center; min-height: 44px; }
    .mental-nav-brand img { display: block; width: 180px; max-width: 56vw; height: auto; }
    #mental-menu-toggle, .mental-menu-close, .mental-menu-expand {
        display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0;
        width: 44px; height: 44px; padding: 0; border: 0; border-radius: 12px;
        background: #f2f5f9; color: #173968; cursor: pointer; font: inherit;
    }
    #mental-menu-toggle:focus-visible, .mental-mobile-menu a:focus-visible, .mental-mobile-menu button:focus-visible,
    .mental-nav-brand:focus-visible { outline: 3px solid #009fe3; outline-offset: 3px; }
    dialog.mental-mobile-menu[open] {
        display: flex; flex-direction: column; position: fixed; inset: 0;
        width: 100%; max-width: none; height: 100%; height: 100dvh; max-height: none;
        margin: 0; padding: 0; border: 0; border-radius: 0; overflow: hidden;
        background: #fff; color: #18395f; font-family: inherit;
        animation: mental-menu-enter .2s ease-out;
    }
    .mental-mobile-menu::backdrop { background: rgba(15,38,65,.28); }
    .mental-menu-top {
        display: flex; align-items: center; justify-content: space-between; flex-shrink: 0;
        min-height: calc(72px + env(safe-area-inset-top, 0px));
        padding: calc(12px + env(safe-area-inset-top, 0px)) max(20px, env(safe-area-inset-right)) 12px max(20px, env(safe-area-inset-left));
        border-bottom: 1px solid #edf0f5;
    }
    .mental-menu-top h2 { margin: 0; font-size: 24px; line-height: 1.25; font-weight: 600; text-transform: none; letter-spacing: -.3px; }
    .mental-menu-scroll { flex: 1; min-height: 0; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; padding: 24px max(20px, env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom, 0px)) max(20px, env(safe-area-inset-left)); }
    .mental-menu-eyebrow { margin: 0 0 14px; font-size: 12px; line-height: 1.5; color: #6a7e95; }
    .mental-menu-cta { display: flex; align-items: center; justify-content: space-between; min-height: 54px; padding: 14px 18px; margin-bottom: 18px; border-radius: 12px; background: #f0541a; color: #fff !important; font-size: 17px; font-weight: 500; text-decoration: none !important; }
    .mental-menu-cta::after { content: '→'; font-size: 23px; line-height: 1; }
    .mental-menu-row { display: flex; flex-wrap: wrap; align-items: center; border-bottom: 1px solid #edf0f5; }
    .mental-menu-link { display: flex; align-items: center; min-height: 54px; flex: 1; padding: 12px 0; font-size: 19px; line-height: 1.4; color: #173968 !important; font-weight: 500; text-decoration: none !important; }
    .mental-menu-link[aria-current="page"] { color: #007eb8 !important; }
    .mental-menu-expand { background: transparent; }
    .mental-menu-expand svg { transition: transform .18s ease; }
    .mental-menu-expand[aria-expanded="true"] svg { transform: rotate(180deg); }
    .mental-menu-submenu { flex-basis: 100%; list-style: none; margin: 0 0 12px; padding: 6px 14px; border-radius: 12px; background: #f5f7fa; }
    .mental-menu-submenu[hidden] { display: none; }
    .mental-menu-submenu a { display: flex; align-items: center; min-height: 44px; padding: 8px 0; font-size: 15px; line-height: 1.45; color: #385273; }
    .mental-menu-journal { border-bottom: 1px solid #edf0f5; }
    .mental-menu-contacts { display: grid; grid-template-columns: 1fr; gap: 18px; margin-top: 26px; padding: 20px; border-radius: 16px; background: #f5f7fa; }
    .mental-menu-contact h3 { margin: 0 0 6px; font-size: 12px; line-height: 1.4; font-weight: 400; color: #6a7e95; text-transform: none; }
    .mental-menu-contact-body { font-size: 14px; line-height: 1.65; overflow-wrap: anywhere; color: #385273; }
    .mental-menu-contact-body a { display: inline-flex; align-items: center; min-height: 44px; color: #173968; padding: 5px 0; }
    .mental-menu-contact-body a[href^="tel:"] { font-size: 19px; font-weight: 500; }
    .mental-menu-socials { display: flex; gap: 12px; }
    .mental-menu-socials > div { padding: 0 !important; }
    .mental-menu-socials a { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; color: #173968; border-radius: 50%; background: #e7edf5; }
    @keyframes mental-menu-enter { from { opacity: .4; transform: translateY(-10px); } to { opacity: 1; transform: translateY(0); } }
}
@media (prefers-reduced-motion: reduce) {
    header.header.mental-smart-header, .mental-mobile-menu[open], .mental-menu-expand svg { animation: none !important; transition: none !important; }
}

/* Keep mobile navigation on the site's Muller faces, independent of embedded widgets. */
@media (max-width: 991.98px) {
    dialog.mental-mobile-menu[open] {
        font-family: 'MullerRegular', Arial, sans-serif;
        font-weight: 400;
    }
    .mental-mobile-menu .mental-menu-top h2,
    .mental-mobile-menu .mental-menu-link,
    .mental-mobile-menu .mental-menu-cta,
    .mental-mobile-menu .mental-menu-contact-body a[href^="tel:"] {
        font-family: 'MullerMedium', Arial, sans-serif;
        /* Existing site font faces register each weight as its own family. */
        font-weight: 400;
    }
    .mental-mobile-menu .mental-menu-submenu a {
        font-family: 'MullerRegular', Arial, sans-serif;
        font-weight: 400;
    }
}
