.desktop-nav{gap:10px}.expanded-nav-item{display:flex;align-items:center;position:relative;gap:0}.expanded-nav-toggle{display:grid;place-items:center;font-size:16px;padding:0;min-width:24px;width:24px;height:44px;color:var(--muted);border-radius:8px}.expanded-nav-toggle:hover,.expanded-nav-toggle[aria-expanded=true]{background:color-mix(in srgb,var(--mint) 12%,transparent);color:var(--mint)}.expanded-nav-toggle:focus-visible{outline:2px solid var(--mint)}.expanded-nav-panel{position:absolute;top:100%;left:-18px;width:280px;max-height:65vh;overflow-y:auto;overscroll-behavior:contain;background:var(--panel);border:1px solid var(--line);padding:14px;border-radius:14px;box-shadow:0 20px 70px #0005;z-index:60}.expanded-nav-panel a{display:block;padding:10px!important;font-size:13px!important;white-space:normal}.expanded-nav-panel a:hover{color:var(--mint)}.expanded-nav-item:last-child .expanded-nav-panel{left:auto;right:0}
@media(min-width:1001px) and (max-width:1350px){.site-header{gap:12px;padding-left:24px;padding-right:24px}.site-header .brand{width:175px;min-width:175px}.desktop-nav{gap:6px}.desktop-nav a{font-size:12px}.header-trial{padding:12px 16px;font-size:12px}}
@media(min-width:1001px) and (max-width:1150px){.desktop-nav,.site-header .contact-link{display:none}.site-header .menu-toggle{display:grid}.site-header .header-trial{margin-left:auto}}
.desktop-nav>a[aria-current=page]{margin-right:6px}
.footer-directory{margin-bottom:28px}
.mobile-menu .expanded-nav-item{display:grid;grid-template-columns:1fr 44px;gap:0}.mobile-menu .expanded-nav-toggle{width:44px;height:44px;min-width:44px}.mobile-menu .expanded-nav-panel{position:static;grid-column:1/-1;width:100%;max-height:45vh;padding:8px 14px;margin:0 0 10px;box-shadow:none}.mobile-menu .expanded-nav-panel[hidden]{display:none}.mobile-menu{max-height:calc(100dvh - var(--header,88px));overflow-y:auto}.mobile-menu .expanded-nav-item>a{padding:10px 0}
.expanded-nav-toggle{border:0;background:transparent;font-family:inherit;cursor:pointer;flex-shrink:0}.expanded-nav-toggle:hover,.expanded-nav-toggle[aria-expanded=true]{background:color-mix(in srgb,var(--mint) 12%,transparent)}

/* Studio grouping applies only to the Lessons navigation dropdown. */
#header-lessons .lesson-studio-group{border:1px solid var(--line);border-left:3px solid var(--mint);border-radius:9px;margin:8px 0;padding:5px}
#header-lessons .lesson-studio-frisco{border-left-color:var(--mint)}
#header-lessons .lesson-studio-both{border-left-color:var(--mint)}
#header-lessons .lesson-studio-label{font-size:11px;font-weight:700;letter-spacing:.06em;margin:4px 10px 2px;color:var(--text);opacity:.8}
#header-lessons .lesson-studio-group a{padding:7px 10px!important}

@font-face{font-family:MBMSLogoCondensed;src:url('/assets/header-logo-condensed.ttf') format('truetype');font-display:swap;font-weight:400}
.site-header .brand{position:relative;display:block}
.site-header .brand>img{transform:scale(1.08);transform-origin:left bottom}
.site-header .brand-tagline{display:block;margin-left:28.9%;margin-right:-5.6%;text-align:center;margin-top:-3px;color:var(--mint);font-family:MBMSLogoCondensed,'Arial Narrow',Arial,sans-serif;font-size:12px;font-weight:400;line-height:1.1;letter-spacing:.15px;text-transform:uppercase;white-space:nowrap}
@media(max-width:1350px){.site-header .brand-tagline{font-size:10px;letter-spacing:0}}
@media(max-width:380px){.site-header .brand-tagline{font-size:8px}}

/* Trim two pixels above and below the header; lower the M independently. */
.site-header{height:calc(var(--header,85px) - 10px)}
.site-header .brand>img.brand-wordmark{clip-path:inset(0 0 0 22%)}
.site-header .brand>img.brand-monogram{position:absolute;left:0;top:8px;clip-path:inset(0 78% 0 0);pointer-events:none}
@media(max-width:600px){.site-header{height:calc(var(--header,70px) - 10px)}}

/* Homepage-only conversation callout; scrolls away with the hero. */
#home .home-music-call{position:absolute;right:3.6vw;top:16px;z-index:5;display:flex;align-items:center;gap:13px;padding:12px 17px;background:color-mix(in srgb,var(--bg) 90%,transparent);border:1px solid color-mix(in srgb,var(--mint) 65%,transparent);border-radius:18px;color:var(--mint);box-shadow:0 5px 22px #0002;transition:background .2s}
#home .home-music-call:hover{background:var(--panel)}
.home-call-symbol{width:48px;flex-shrink:0;position:relative;display:block}
.home-call-symbol svg{display:block;width:48px;height:48px}
.home-call-symbol>span{position:absolute;right:-4px;bottom:-3px;font:700 10px/1.2 Arial,sans-serif;background:var(--mint);color:var(--bg);border-radius:10px;padding:2px 5px}
.home-call-copy{display:flex;flex-direction:column;gap:3px;line-height:1.3}
.home-call-copy strong{font-size:16px;letter-spacing:.01em;color:var(--ink)}
.home-call-copy>span{font-size:12px;color:var(--mint)}
@media(max-width:1000px){#home .home-music-call{top:76px;padding:9px 12px;gap:9px}.home-call-symbol,.home-call-symbol svg{width:38px;height:38px}.home-call-copy strong{font-size:14px}.home-call-copy>span{font-size:11px}}
@media(max-width:600px){#home .home-music-call{top:76px;right:18px;padding:7px 10px;gap:8px;border-radius:13px}.home-call-symbol,.home-call-symbol svg{width:32px;height:32px}.home-call-copy strong{font-size:12px}.home-call-copy>span{font-size:10px}.home-call-symbol>span{font-size:8px}}

/* Align the conversation callout to the actual Search/Contact midpoint. */
#home .home-music-call{transform:scale(.75);transform-origin:top right}
.site-header .contact-link{position:relative;border-left:0}
.site-header .contact-link::before{content:'';position:absolute;left:var(--contact-divider-offset,0px);top:50%;transform:translateY(-50%);height:22px;width:1px;background:var(--line)}
#home .home-music-call.call-divider-aligned{left:var(--call-divider-center);right:auto;transform:scale(.75);transform-origin:top left}

#home .home-music-call{margin-top:-4px}

/* Reveal only after final layout, so the callout never appears at an interim position. */
#home .home-music-call{visibility:hidden}
#home .home-music-call.call-position-ready{visibility:visible}

#header-teachers .teacher-studio-group{border:1px solid var(--line);border-left:3px solid var(--mint);border-radius:9px;margin:8px 0;padding:5px}
#header-teachers .teacher-studio-label{font-size:11px;font-weight:700;letter-spacing:.06em;margin:4px 10px 2px;color:var(--text);opacity:.8}
#header-teachers .teacher-studio-group a{padding:7px 10px!important}

/* Approved menu indicators inherit only the current experience accent. */
#header-locations a,#header-pricing a,#header-community a,#header-about a,#header-resources a{display:flex;align-items:center;gap:12px}
.menu-custom-indicator{display:block;width:20px;height:20px;flex:0 0 20px;fill:none;stroke:var(--mint);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* Header navigation wording only: reference-style weight and experience color. */
.site-header .desktop-nav>a,.site-header .desktop-nav>.expanded-nav-item>a,.site-header .contact-link{font-family:MBMSLogoCondensed,'Arial Narrow',Arial,sans-serif;font-weight:400;letter-spacing:.035em;text-transform:uppercase;color:var(--mint)}
.site-header .desktop-nav>.expanded-nav-item>.expanded-nav-toggle{color:var(--mint)}

/* One header geometry across the homepage, routes and experience themes. */
body .site-header{position:sticky;top:0;inset-inline:0;z-index:60;box-sizing:border-box;height:78px;min-height:78px;max-height:78px;flex-shrink:0;display:flex;align-items:center;gap:18px;padding:0 3.6vw;border-radius:0!important;background:color-mix(in srgb,var(--bg) 94%,transparent);border-bottom:1px solid var(--line)}
body .site-header .brand{width:260px;min-width:260px;flex:0 0 260px}
body .site-header .brand>img{width:260px;height:auto;max-width:none;transform:scale(1.08);transform-origin:left bottom}
body .site-header .brand-tagline{font-size:12px;line-height:1.1;margin-top:-3px;letter-spacing:.15px}
body .site-header .desktop-nav{display:flex;align-items:center;gap:10px;margin-left:auto}
body .site-header .desktop-nav>a,body .site-header .desktop-nav>.expanded-nav-item>a{display:block;font-size:14px;white-space:nowrap}
body .site-header .header-trial{display:inline-flex;align-items:center;justify-content:center;gap:18px;height:44px;min-height:44px;padding:10px 22px;font-size:12px;line-height:1.3;white-space:nowrap;border-radius:99px;flex-shrink:0}
body .site-header .contact-link{display:block;font-size:14px;padding-left:18px;white-space:nowrap}
body .site-header .menu-toggle{display:none}
body .site-header .search-trigger{display:grid;place-items:center;width:36px;height:44px;margin-left:6px;flex-shrink:0}
@media(max-width:1500px) and (min-width:1351px){body .site-header{gap:12px;padding-inline:24px}body .site-header .brand{width:220px;min-width:220px;flex-basis:220px}body .site-header .brand>img{width:220px}body .site-header .brand-tagline{font-size:10px}body .site-header .desktop-nav{gap:6px}body .site-header .desktop-nav>a,body .site-header .desktop-nav>.expanded-nav-item>a{font-size:13px}}
@media(max-width:1350px){body .site-header{height:70px;min-height:70px;max-height:70px;padding-inline:24px;gap:14px}body .site-header .brand{width:210px;min-width:210px;flex-basis:210px}body .site-header .brand>img{width:210px}body .site-header .brand-tagline{font-size:10px;letter-spacing:0}body .site-header .desktop-nav,body .site-header .contact-link,body .site-header .search-trigger{display:none}body .site-header .header-trial{margin-left:auto}body .site-header .menu-toggle{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:0;background:none;border-radius:0}body .mobile-menu{top:70px;max-height:calc(100dvh - 70px)}}
@media(max-width:600px){body .site-header{height:60px;min-height:60px;max-height:60px;padding-inline:12px;gap:8px}body .site-header .brand{width:170px;min-width:170px;flex-basis:170px}body .site-header .brand>img{width:170px}body .site-header .brand-tagline{font-size:9px}body .site-header .header-trial{font-size:10px;padding:10px 12px;height:38px;min-height:38px}body .site-header .header-trial>span{display:none}body .mobile-menu{top:60px;max-height:calc(100dvh - 60px)}}
@media(max-width:380px){body .site-header .brand{width:130px;min-width:130px;flex-basis:130px}body .site-header .brand>img{width:130px}body .site-header .brand-tagline{font-size:8px}body .site-header .header-trial{font-size:9px;padding:9px 10px}}

/* Interior experience selector matches the existing homepage selector. */
body > .experience-picker{border-bottom:0}
:is(body > .experience-picker){position:relative;z-index:2;display:flex;align-items:center;justify-content:center;gap:22px;padding:20px 15px;font-size:12px;color:#a6b8b8}
:is(body > .experience-picker) .experience-options{display:flex;gap:10px}
:is(body > .experience-picker) .experience{display:flex;align-items:center;gap:12px;padding:11px 25px;border:1px solid #3d5355;border-radius:60px;min-height:46px;background:#06131694;font-size:13px;white-space:nowrap;transition:.3s}
:is(body > .experience-picker) .experience .icon{width:22px;height:22px}
:is(body > .experience-picker) .experience:hover{border-color:var(--mint);background:#13302c}
:is(body > .experience-picker) .experience[aria-pressed=true]{border-color:var(--mint);color:white;box-shadow:0 0 0 1px #21eaae33,0 3px 14px #21eaae24}
@media(max-width:1000px){:is(body > .experience-picker){gap:14px}
:is(body > .experience-picker) .experience{padding:10px 19px}
}
@media(max-width:700px){:is(body > .experience-picker){padding:18px 12px;display:block;text-align:center}
:is(body > .experience-picker)>span{font-size:10px;display:block;margin-bottom:10px;letter-spacing:.7px}
:is(body > .experience-picker) .experience-options{gap:6px;justify-content:center}
:is(body > .experience-picker) .experience{font-size:10px;padding:9px 12px;gap:6px;min-height:39px}
:is(body > .experience-picker) .experience .icon{width:16px;height:16px}
}
@media(max-width:380px){:is(body > .experience-picker) .experience{padding:8px 10px;font-size:9px}
}
@media(max-width:700px){:is(body > .experience-picker) .experience{font-size:11px;padding:9px 11px}
}
@media(max-width:380px){:is(body > .experience-picker) .experience{font-size:10px;padding:9px}
}
body[data-experience=young] :is(body > .experience-picker) .experience{color:#294437;background:#fffcf0c9;border-color:#d4cbb5;box-shadow:none}
body[data-experience=young] :is(body > .experience-picker) .experience[aria-pressed=true]{background:#ffdb58;border:2px solid #ffb20a;color:#092c21;box-shadow:0 4px 14px #ffbe3630}
body[data-experience=young] :is(body > .experience-picker)>span{color:#315344}
body[data-experience=adult] :is(body > .experience-picker) .experience[aria-pressed=true]{color:#ffe3ad;border-color:#f5c67f;background:#32241688;box-shadow:0 0 8px #ecc47e77,inset 0 0 10px #ecc47e22}
@media(max-width:700px){:is(body > .experience-picker){padding:16px 12px 10px}
:is(body > .experience-picker) .experience-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
:is(body > .experience-picker) .experience{min-height:52px;padding:7px 4px!important;font-size:11px!important;flex-direction:column;gap:3px;line-height:1.25;border-radius:18px}
:is(body > .experience-picker) .experience .icon{width:18px;height:18px}
}

body > .experience-picker .icon{display:block;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* Audience-facing image message typography only. */
.audience-image-message{font-family:"Helvetica Neue",Arial,sans-serif!important;font-size:14px!important;font-weight:500!important;line-height:1.5!important;letter-spacing:.02em!important;text-transform:none!important}
@media(max-width:600px){.audience-image-message{font-size:12px!important}}

/* Shared Search / Contact geometry keeps navigation stationary across routes. */
body .site-header .search-trigger{padding:0;border:0;background:transparent;color:var(--ink);flex:0 0 36px}
body .site-header .search-trigger svg{display:block;width:24px;height:24px}
body .site-header .contact-link{box-sizing:border-box;width:76px;flex:0 0 76px;padding-left:18px}
body .site-header .contact-link::before{left:0!important}
@media(min-width:1351px){body .site-header .header-trial{box-sizing:border-box;width:184px;flex:0 0 184px}}
.header-search-dialog{width:min(680px,calc(100% - 32px));max-height:85dvh;overflow:auto;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:20px;padding:36px}
.header-search-dialog::backdrop{background:#000a}
.header-search-dialog h2{font:600 32px/1.2 'Helvetica Neue',Arial,sans-serif;letter-spacing:-.5px;margin:12px 0 24px}
.header-search-dialog label{display:block;font-size:14px;margin-bottom:10px}
.header-search-dialog input{box-sizing:border-box;width:100%;padding:14px;font:inherit;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:10px}
.header-search-close{float:right;font-size:28px;background:none;color:var(--ink);border:0;cursor:pointer}
.header-search-results a{display:block;padding:13px 0;border-bottom:1px solid var(--line);color:var(--mint)}

/* Homepage rotating-photo message: placement only, clear of right-side faces. */
@media(min-width:701px){body #home .stage-note{left:24%;right:auto;top:0}}
@media(max-width:700px){body #home .stage-note{left:0;right:auto;align-self:flex-start}}

/* Match each experience's typography and accent; retain caption sizes. */
figcaption[data-contextual-image-caption]{font-family:Georgia,serif!important;font-style:italic!important;font-weight:400!important;color:#21eaae!important}
body[data-experience="adult"] figcaption[data-contextual-image-caption]{font-family:Georgia,serif!important;color:#edc17c!important}
body[data-experience="young"] figcaption[data-contextual-image-caption]{font-family:Georgia,serif!important;font-style:italic!important;font-weight:400!important;color:#fbf7ec!important}

/* Keep the guide at the Student Growth anchor across experience changes. */
@media(min-width:701px){body #home .guide-placeholder{position:absolute;top:332px;bottom:auto;margin:0;right:0;transform:none}}
@media(min-width:1600px){body #home .guide-placeholder{top:392px}}
@media(min-width:1001px) and (max-width:1250px){body #home .guide-placeholder{right:-12px}}
@media(min-width:701px) and (max-width:1000px){body #home .guide-placeholder{top:460px;right:0;width:255px;transform:scale(.83);transform-origin:bottom right}}

/* Hide the vertical experience selectors on mobile only. */
@media(max-width:700px){body #experience-rail{display:none!important}}

/* Place the call link beneath the mobile homepage experience selectors. */
@media(max-width:700px){body #home .home-music-call,body #home .home-music-call.call-divider-aligned{left:auto;right:18px;transform-origin:top right}}

/* Mobile navigation matches desktop labels, accents, and dropdown details. */
.mobile-menu>a,.mobile-menu>.expanded-nav-item>a{font-family:MBMSLogoCondensed,'Arial Narrow',Arial,sans-serif!important;font-size:14px!important;font-weight:400!important;letter-spacing:.035em;text-transform:uppercase;color:var(--mint)!important}
.mobile-menu .expanded-nav-toggle{color:var(--mint)}
.mobile-menu .expanded-nav-panel a{font-family:'Helvetica Neue',Arial,sans-serif;font-size:13px!important;font-weight:400;letter-spacing:normal;text-transform:none;color:var(--ink)}
body[data-experience=young] .mobile-menu .expanded-nav-panel a{font-family:'Trebuchet MS',Arial,sans-serif}
.mobile-menu .expanded-nav-panel a:has(.menu-custom-indicator){display:flex;align-items:center;gap:12px}
.mobile-menu .lesson-studio-group,.mobile-menu .teacher-studio-group{border:1px solid var(--line);border-left:3px solid var(--mint);border-radius:9px;margin:8px 0;padding:5px}
.mobile-menu .lesson-studio-label,.mobile-menu .teacher-studio-label{font-size:11px;font-weight:700;letter-spacing:.06em;margin:4px 10px 2px;color:var(--text);opacity:.8}
.mobile-menu .lesson-studio-group a,.mobile-menu .teacher-studio-group a{padding:7px 10px!important}

/* Mobile homepage rotating photos: centered subjects and lighter overlays. */
@media(max-width:700px){
 body #home .hero-photo{inset:180px 0 auto!important;width:100%!important;height:660px!important;opacity:1!important;transform:none!important}
 body #home .hero-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center top!important;filter:none!important}
 body #home:before{background:linear-gradient(180deg,var(--bg) 0px,var(--bg) 175px,transparent 250px,transparent 600px,var(--bg) 840px),linear-gradient(90deg,color-mix(in srgb,var(--bg) 62%,transparent),color-mix(in srgb,var(--bg) 38%,transparent))!important}
}

@media(max-width:700px){body #home .hero-photo .hero-cycle-photo{width:100%!important;height:100%!important;background-size:cover!important;background-position:center top!important;filter:none!important}}

/* Approved performance replacements retain the entire performer within existing frames. */
body #home .hero-photo img[data-gallery-performance],#home img[data-gallery-performance],#journey img[data-gallery-performance],.performance-window img[data-gallery-performance],.story-viewer img[data-gallery-performance]{object-fit:contain!important;object-position:center!important}

/* Preserve original performance frames; never size a frame to a gallery portrait. */
img[data-scene="stage"]{aspect-ratio:1448/1086!important;object-fit:contain!important}
.story-viewer img[data-gallery-performance]{aspect-ratio:1448/1086!important}

/* Owner-review pilot: placement-specific crops; existing window geometry is retained. */
body[data-experience=growth] img[data-performance-pilot=events-hero]{object-fit:cover!important;object-position:65% 0%!important}
body[data-experience=adult] img[data-performance-pilot=events-hero]{object-fit:cover!important;object-position:70% 25%!important}
body[data-experience=young] img[data-performance-pilot=events-hero]{object-fit:cover!important;object-position:40% 25%!important}
body[data-experience=growth] img[data-performance-pilot=band-hero]{object-fit:cover!important;object-position:60% 50%!important}
body[data-experience=adult] #home .hero-photo img[src$="gallery-added-mg_8974.webp"]{object-fit:cover!important;object-position:72% 20%!important}
body[data-experience=adult] .story-viewer img[src$="gallery-added-mg_6930.webp"]{object-fit:cover!important;object-position:40% 20%!important}
@media(max-width:700px){
body[data-experience=adult] #home .hero-photo img[src$="gallery-added-mg_8974.webp"]{object-position:69% 15%!important}
body[data-experience=adult] .story-viewer img[src$="gallery-added-mg_6930.webp"]{object-position:45% 20%!important}
}
