/* Shared public/account header. No dependency on legacy CMS menu slots. */
.muscom-navigation, .muscom-navigation * { box-sizing: border-box; }
header.muscom-navigation { --navigation-ink:#18263b; --navigation-line:#dbe2e9; position:sticky; top:0; z-index:9999; margin:0; background:#fff; border:0; border-bottom:1px solid var(--navigation-line); box-shadow:0 2px 12px #18263b06; backdrop-filter:none; color:var(--navigation-ink); font-family:inherit; }
.muscom-navigation [hidden] { display:none !important; }
/* Older catalogue styles apply a fixed, viewport-height layout to every nav. */
.muscom-navigation nav { position:static; inset:auto; height:auto; min-height:0; max-height:none; z-index:auto; flex:none; }
.muscom-navigation .muscom-navigation-top { display:flex; align-items:center; gap:24px; max-width:1440px; min-height:78px; margin:auto; padding:14px 28px; }
.muscom-navigation .muscom-navigation-brand { display:flex; align-items:center; flex:0 1 360px; width:360px; min-width:0; min-height:44px; margin:0; }
.muscom-navigation-brand img { display:block; width:100%; height:auto; }
.muscom-navigation .muscom-navigation-tools { display:flex; align-items:center; gap:16px; margin-left:auto; }
.muscom-navigation form.muscom-navigation-search { position:relative; display:flex; width:300px; max-width:100%; margin:0; padding:0; }
.muscom-navigation form.muscom-navigation-search input { box-sizing:border-box; display:block; width:100%; min-width:0; height:44px; min-height:44px; margin:0; border:1px solid var(--navigation-line); border-radius:11px; padding:10px 42px 10px 13px; background:#f6f8fa; color:var(--navigation-ink); font:inherit; font-size:13px; line-height:1.4; }
.muscom-navigation form.muscom-navigation-search input::placeholder { color:#697789; opacity:1; }
.muscom-navigation form.muscom-navigation-search input::-webkit-search-cancel-button { display:none; }
.muscom-navigation button { display:inline-flex; position:static; align-items:center; justify-content:center; min-width:44px; min-height:44px; width:auto; height:44px; margin:0; padding:10px; border:1px solid var(--navigation-line); border-radius:10px; background:#fff; color:var(--navigation-ink); font:inherit; font-size:14px; line-height:1.2; cursor:pointer; box-shadow:none; }
.muscom-navigation form.muscom-navigation-search button { position:absolute; right:0; top:0; width:42px; min-width:42px; padding:9px; border:0; background:transparent; }
.muscom-navigation .muscom-navigation-languages { display:flex; align-items:center; gap:4px; }
.muscom-navigation .muscom-navigation-languages a { display:flex; align-items:center; justify-content:center; width:42px; min-height:42px; margin:0; border:1px solid transparent; border-radius:9px; color:#697789; font-size:12px; font-weight:650; text-decoration:none; }
.muscom-navigation .muscom-navigation-languages a[aria-current] { border-color:#edcf97; color:#79500b; background:#fff6e6; }
.muscom-navigation .muscom-navigation-account-link { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; margin:0; padding:10px 16px; border:1px solid #fea500; border-radius:11px; background:#fea500; color:#18263b; text-decoration:none; white-space:nowrap; font-size:14px; font-weight:650; line-height:1.4; }
.muscom-navigation .muscom-navigation-desktop { display:flex; align-items:center; justify-content:space-between; gap:6px; max-width:1440px; margin:auto; padding:0 28px 12px; flex-grow:0; }
.muscom-navigation a.muscom-navigation-link { display:flex; align-items:center; gap:8px; min-height:42px; margin:0; padding:9px 12px; border:1px solid transparent; border-radius:10px; color:#34445b; text-decoration:none; font-size:14px; font-weight:550; line-height:1.4; white-space:nowrap; }
.muscom-navigation-link svg { flex:0 0 19px; width:19px; height:19px; color:#748091; }
.muscom-navigation a.muscom-navigation-link[aria-current] { background:#fff5e3; border-color:#f2dbad; color:#79500b; }
.muscom-navigation a.muscom-navigation-link[aria-current] svg { color:#b5770b; }
.muscom-navigation :is(a,button):hover { background-color:#fff5e3; color:#18263b; }
.muscom-navigation :is(a,button,input):focus-visible { outline:3px solid #2563a6; outline-offset:3px; }
.muscom-navigation .muscom-navigation-toggle { display:none; gap:8px; flex-shrink:0; font-weight:600; }
.muscom-navigation .muscom-navigation-overlay { position:fixed; inset:0; z-index:10000; background:#18263b66; }
.muscom-navigation .muscom-navigation-panel { position:fixed; right:0; top:0; bottom:0; z-index:10001; width:min(100%,430px); height:100vh; height:100dvh; overflow-y:auto; overscroll-behavior:contain; background:#fff; padding:18px 22px max(22px,env(safe-area-inset-bottom)); box-shadow:-10px 0 45px #18263b1a; }
.muscom-navigation-panel-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 18px; font-size:19px; font-weight:700; }
.muscom-navigation .muscom-navigation-panel .muscom-navigation-search { width:100%; }
.muscom-navigation .muscom-navigation-panel form.muscom-navigation-search input { width:100%; font-size:16px; }
.muscom-navigation .muscom-navigation-sections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:8px; margin:18px 0; padding:0; }
.muscom-navigation .muscom-navigation-sections .muscom-navigation-link { min-width:0; min-height:52px; padding:11px; gap:10px; border-color:#e3e8ef; background:#fbfcfd; font-size:14px; white-space:normal; }
.muscom-navigation .muscom-navigation-sections .muscom-navigation-link span { min-width:0; overflow-wrap:break-word; }
.muscom-navigation .muscom-navigation-sections .muscom-navigation-link[aria-current] { background:#fff5e3; border-color:#edcf97; }
.muscom-navigation-panel-footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; padding-top:18px; border-top:1px solid #e3e8ef; }
.muscom-navigation .muscom-navigation-panel-footer .muscom-navigation-account-link { width:100%; }
/* Scope the overrides because the legacy global search popup uses !important. */
.muscom-navigation .searchDivOpen { position:absolute !important; left:0 !important; right:0 !important; top:calc(100% + 6px) !important; width:100% !important; min-width:0 !important; max-width:100% !important; max-height:55dvh !important; overflow-y:auto; z-index:10 !important; transform:none !important; }
.muscom-navigation .searchDivOpen .search-group-list { grid-template-columns:minmax(0,1fr); }
@media (min-width:1101px) {
    .muscom-navigation .muscom-navigation-tools .searchDivOpen { left:auto !important; right:0 !important; width:min(680px,calc(100vw - 48px)) !important; max-width:calc(100vw - 48px) !important; }
    .muscom-navigation .muscom-navigation-tools .search-theater-element .title { -webkit-line-clamp:2; line-height:1.4 !important; overflow-wrap:anywhere; }
    .muscom-navigation .muscom-navigation-tools .search-theater-element .extra-name { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; white-space:normal; line-height:1.4; overflow-wrap:anywhere; }
}
html.muscom-navigation-open, body.muscom-navigation-open { overflow:hidden; }
.mc-account > .muscom-navigation { flex-shrink:0; width:100%; }
.muscom-navigation-account .muscom-navigation-top { padding-left:0; padding-right:0; }
.muscom-navigation-account .muscom-navigation-desktop { padding-left:0; padding-right:0; }
@media (max-width:1200px) and (min-width:1101px) {
    .muscom-navigation .muscom-navigation-top { gap:18px; }
    .muscom-navigation .muscom-navigation-brand { flex-basis:310px; width:310px; }
    .muscom-navigation form.muscom-navigation-search { width:270px; }
    .muscom-navigation a.muscom-navigation-link { padding:9px 8px; gap:6px; font-size:13px; }
}
@media (max-width:1100px) {
    .muscom-navigation .muscom-navigation-top { min-height:72px; padding:12px 24px; gap:18px; }
    .muscom-navigation .muscom-navigation-tools, .muscom-navigation .muscom-navigation-desktop { display:none; }
    .muscom-navigation .muscom-navigation-toggle { display:inline-flex; margin-left:auto; }
    .muscom-navigation .muscom-navigation-brand { flex-basis:360px; width:360px; }
    .muscom-navigation-account .muscom-navigation-top { padding-left:0; padding-right:0; }
}
@media (max-width:600px) {
    .muscom-navigation .muscom-navigation-top { min-height:66px; padding:10px 16px; gap:16px; }
    .muscom-navigation .muscom-navigation-brand { width:auto; flex:1 1 auto; max-width:280px; }
    .muscom-navigation .muscom-navigation-toggle { padding:10px; font-size:13px; gap:6px; }
    .muscom-navigation .muscom-navigation-panel { padding:14px 16px max(20px,env(safe-area-inset-bottom)); }
    .muscom-navigation .muscom-navigation-sections { gap:8px; }
    .muscom-navigation .muscom-navigation-sections .muscom-navigation-link { padding:10px 9px; font-size:13px; gap:8px; }
    .muscom-navigation-account .muscom-navigation-top { padding-left:0; padding-right:0; }
}
