/* Shared interiors: clear headings, natural photography and a readable scale. */
:root { --page-ink:#181818; --page-muted:#555a55; --page-line:#18181825; --page-yellow:#f5c400; --page-gutter:clamp(24px,5vw,84px); }
.site-page { --night:#fff; --paper:#181818; --plum:#f3f5f0; --muted:#555a55; --line:#18181825; --mono:Manrope,sans-serif; --width:1400px; margin:0; background:#fff; color:#181818; font:400 16px/1.8 Manrope,sans-serif; overflow-x:hidden; }
.site-page :is(h1,h2,h3,p,figure) { margin:0; }
.site-page a { color:inherit; text-decoration:none; }
:is(.site-page,.theme-light.page-knowledge) :is(h1,h2,h3),:is(.site-page,.theme-light.page-knowledge) :is(h1,h2,h3) * { font-family:'Bricolage Grotesque',Manrope,sans-serif!important; font-weight:500; }
:is(.site-page,.theme-light.page-knowledge) :is(h1,h2,h3) em { color:inherit; font-style:normal; text-decoration:none; }
.site-page h1 { font-size:clamp(45px,5.3vw,80px); line-height:1.06; letter-spacing:-.035em; }
.site-page h2 { font-size:clamp(31px,3.5vw,51px); line-height:1.12; letter-spacing:-.03em; }
.site-page h3 { font-size:clamp(24px,2.3vw,34px); line-height:1.15; letter-spacing:-.025em; }
.site-page p { color:#555a55; }
.site-main { max-width:1568px; padding:150px var(--page-gutter) 80px; margin:auto; }
.site-header { position:relative; isolation:isolate; padding-bottom:55px; }
.site-header::before { content:''; position:absolute; z-index:-1; inset:-60px calc(var(--page-gutter)*-1) -30px; background:linear-gradient(90deg,#ffffffe8,#ffffffb3),url('../img/studio-piano.webp') center/cover; filter:blur(30px) saturate(.6); opacity:.36; pointer-events:none; }
.site-header>p { max-width:650px; margin-top:27px; font-size:17px; line-height:1.85; }
.site-section-heading { display:grid; grid-template-columns:1.1fr 1fr; gap:60px; align-items:end; margin-bottom:38px; }
.site-section-heading p { max-width:500px; font-size:16px; }
.school-header { display:grid; grid-template-columns:1.3fr 1fr; gap:65px; align-items:end; }
.school-header>p { margin:0; }
.school-cover img { display:block; width:100%; height:clamp(300px,36vw,510px); object-fit:cover; object-position:center 45%; border-radius:4px; }
.school-founders { padding:85px 0; }
.school-founder-grid { display:grid; grid-template-columns:1fr 1fr; gap:clamp(40px,7vw,100px); margin-top:45px; }
.school-founder img { display:block; width:100%; height:clamp(330px,35vw,490px); object-fit:cover; object-position:center 22%; border-radius:4px; }
.school-founder>div { padding-top:27px; }
.school-founder .person-role { margin-top:12px; font-size:19px; color:#181818; }
.school-founder p+p { margin-top:15px; max-width:490px; }
.school-founder .rc-button { margin-top:25px; }
.school-staff { padding:65px 0 75px; border-top:1px solid #18181825; }
.school-staff-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:42px 30px; }
.school-staff-member img { display:block; width:100%; height:auto; aspect-ratio:1.14; object-fit:cover; object-position:center 22%; border-radius:4px; }
.school-staff-member h3 { margin-top:21px; font-size:26px; }
.school-staff-member p { margin-top:9px; font-size:15px; }
.school-experience { display:grid; grid-template-columns:1fr 1.2fr; align-items:center; gap:70px; padding:65px 0 80px; border-top:1px solid #18181825; }
.school-experience p { margin-top:24px; }
.school-experience .rc-button { margin-top:25px; }
.school-experience img { display:block; width:100%; height:auto; aspect-ratio:1.25; object-fit:cover; border-radius:4px; }
.site-contact-band { display:flex; justify-content:space-between; align-items:center; gap:45px; padding:48px; border-radius:4px; background:#f5c400; }
.site-contact-band p { margin-top:20px; color:#393622; }
.site-contact-band .rc-button { flex-shrink:0; background:#fff; color:#181818; }
/* Contacts prioritize the channels and addresses, while keeping the email composer. */
.contact-page-grid { display:grid; grid-template-columns:1.08fr 1fr; gap:clamp(40px,6vw,85px); align-items:start; }
.contact-direct { padding-top:10px; }
.contact-large-phone { display:block; margin-top:26px; font-size:clamp(24px,2.6vw,37px); letter-spacing:-.02em; }
.contact-direct-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:26px; }
.contact-address-email { display:block; margin-top:25px; font-size:16px; overflow-wrap:anywhere; }
.contact-branches { display:grid; grid-template-columns:1fr 1fr; gap:25px; margin-top:45px; padding-top:32px; border-top:1px solid #18181825; }
.contact-branches address { font-style:normal; }
.contact-branches h3 { font-size:25px; }
.contact-branches p { font-size:15px; margin-top:14px; }
.contact-branches a { display:inline-block; margin-top:18px; font-size:14px; border-bottom:1px solid #18181850; }
.contact-form-box { padding:36px; border-radius:4px; border:1px solid #1818181a; background:#f4f6f1; }
.contact-form-box h2 { font-size:33px; }
.contact-form-box>p { margin-top:18px; font-size:15px; line-height:1.75; }
.contact-form-box form { display:grid; gap:23px; margin-top:30px; }
.contact-form-box label:not(.contact-check) { display:grid; gap:10px; font-size:14px; color:#454a45; }
.contact-form-box :is(input:not([type=checkbox]),textarea) { display:block; width:100%; min-height:48px; padding:12px 0; font:400 16px/1.5 Manrope,sans-serif; color:#181818; background:transparent; border:0; border-bottom:1px solid #18181845; border-radius:0; }
.contact-form-box textarea { min-height:105px; resize:vertical; }
.contact-form-box .contact-check { display:flex; align-items:start; gap:10px; font-size:13px; line-height:1.5; color:#555a55; }
.contact-form-box .contact-check input { margin-top:4px; accent-color:#f5c400; }
.contact-form-box .contact-check a { text-decoration:underline; }
.contact-form-box .rc-button { width:100%; }
/* Archive: a featured story, then complete, photograph-led event entries. */
.site-page.page-storie .stories-experience { padding:150px var(--page-gutter) 80px; background:#f7f8f4; }
.site-page.page-storie .stories-experience::before { display:none; }
.site-page.page-storie .stories-sticky { max-width:1400px; }
.site-page.page-storie .stories-heading { max-width:950px; margin-bottom:52px; }
.site-page.page-storie .stories-heading h1 { font-size:clamp(46px,5.4vw,80px); letter-spacing:-.035em; }
.site-page.page-storie .stories-intro { max-width:670px; font-size:16px; }
.site-page.page-storie .stories-jumps { gap:10px; margin-top:28px; }
.site-page.page-storie .stories-jumps a { padding:12px 20px; font-size:14px; background:#fff; border:1px solid #18181825; border-radius:4px; }
.site-page.page-storie .stories-feed { gap:45px 35px; }
.site-page.page-storie .story-feature { background:#fff; border:0; border-radius:4px; }
.site-page.page-storie .story-feature:first-child { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; align-items:center; }
.site-page.page-storie .story-feature:first-child .story-feature-image { height:470px; }
.site-page.page-storie .story-feature:first-child .story-feature-copy { padding:45px; }
.site-page.page-storie .story-feature-image { height:330px; background:#e8eae5; }
.site-page.page-storie .story-feature-copy { padding:30px 32px 35px; }
.site-page.page-storie .story-feature-copy h2 { font-size:clamp(29px,3.2vw,47px); line-height:1.08; letter-spacing:-.025em; }
.site-page.page-storie .story-feature-copy h2 em { color:#181818; text-decoration:none; }
.site-page.page-storie .story-feature-copy h2>span { font-size:clamp(20px,1.7vw,25px); margin-top:15px; line-height:1.3; }
.site-page.page-storie .story-feature-copy p { font-size:15px; line-height:1.85; }
.site-page.page-storie .story-feature-copy>a { font:500 14px/1.5 Manrope,sans-serif!important; }
.site-page.page-storie .story-feature--cta { background:#f5c400; }
.site-page.page-storie .story-feature--cta .story-feature-copy { display:grid; grid-template-columns:1fr 1fr; gap:25px 50px; padding:42px; }
.site-page.page-storie .story-feature--cta .story-feature-copy p { color:#393622; }
.site-page.page-storie .story-feature--cta .rc-button { background:#fff; color:#181818; }
/* Services, people, locations, articles and guides use a shared readable rhythm. */
.theme-light.page-knowledge { --mono:Manrope,sans-serif; --gutter:var(--page-gutter); --width:1400px; font-size:16px; }
.theme-light.page-knowledge .knowledge-main { padding-top:120px; }
.theme-light.page-knowledge .knowledge-header { padding:30px 0 65px; }
.theme-light.page-knowledge .knowledge-header::before { filter:blur(30px) saturate(.6); opacity:.28; }
.theme-light.page-knowledge h1 { font-size:clamp(45px,5.3vw,80px); line-height:1.08; letter-spacing:-.035em; }
.theme-light.page-knowledge .hero-split { grid-template-columns:1.08fr 1fr; gap:clamp(35px,6vw,90px); }
.theme-light.page-knowledge .hero-copy { position:relative; inset:auto; width:auto; height:auto; transform:none; text-align:left; pointer-events:auto; text-shadow:none; }
.theme-light.page-knowledge .knowledge-lead { font-size:16px; line-height:1.85; }
.theme-light.page-knowledge .hero-copy h1 { margin:0 0 28px; }
.theme-light.page-knowledge .hero-copy>.rc-button { margin-top:25px; }
.theme-light.page-knowledge .studio-composition { padding:0; min-height:0; margin:0; }
.theme-light.page-knowledge .studio-composition img { width:100%; height:470px; object-fit:cover; border-radius:4px; filter:none; }
.theme-light.page-knowledge .service-jumps { justify-content:flex-start; flex-wrap:wrap; gap:12px; padding:22px 0; margin-bottom:30px; }
.theme-light.page-knowledge .service-jumps a { padding:12px 20px; border:1px solid #18181825; border-radius:4px; background:#fff; font:500 14px/1.4 Manrope,sans-serif; text-transform:none; letter-spacing:0; }
.theme-light.page-knowledge .service-panel { gap:clamp(35px,6vw,90px); padding:55px 0; }
.theme-light.page-knowledge .service-image img { filter:none; aspect-ratio:1.22; }
.theme-light.page-knowledge .service-copy h2 { font-size:clamp(31px,3vw,44px); letter-spacing:-.025em; margin-bottom:24px; }
.theme-light.page-knowledge .service-copy p:not(.micro) { font-size:16px; line-height:1.85; }
.theme-light.page-profile .profile-hero .hero-copy h1 { font-size:clamp(52px,6vw,88px); letter-spacing:-.035em; }
.page-profile .profile-role { font-size:24px; margin:16px 0 25px; }
.page-profile .profile-frame img { height:540px; border-radius:4px; }
.theme-light.page-knowledge .reading-layout { margin:50px 0 65px; grid-template-columns:260px minmax(0,780px); gap:clamp(35px,6vw,90px); }
.theme-light.page-knowledge .reading-index { top:125px; }
.theme-light.page-knowledge .index-heading { margin-bottom:18px; font-size:16px; font-weight:600; color:#181818; }
.theme-light.page-knowledge .reading-index nav a { font-size:14px; line-height:1.65; padding:14px 0; border-color:#18181825; }
.theme-light.page-knowledge .reading-section h2 { font-size:clamp(29px,2.8vw,39px); line-height:1.2; letter-spacing:-.025em; }
.theme-light.page-knowledge .reading-section p { font-size:16px; line-height:1.95; }
.theme-light.page-knowledge .knowledge-faq { grid-template-columns:.7fr 1.3fr; gap:55px; padding:38px; background:#f4f6f1; border:1px solid #18181816; border-radius:4px; margin:60px 0; }
.theme-light.page-knowledge .knowledge-faq h2 { font-size:34px; line-height:1.2; }
.theme-light.page-knowledge .knowledge-faq summary { font-size:16px; padding:21px 0; }
.theme-light.page-knowledge .knowledge-faq details p { font-size:15px; line-height:1.9; }
.theme-light.page-knowledge .knowledge-related { gap:55px; margin:65px 0; }
.theme-light.page-knowledge .related-links a { font-size:16px; padding:22px 0; }
.theme-light.page-knowledge .knowledge-sources a { font-size:14px; }
.theme-light.page-knowledge .knowledge-cta { background:#f5c400; padding:42px; gap:50px; min-height:0; border:0; margin:60px 0 20px; }
.theme-light.page-knowledge .knowledge-cta .rc-button { background:#fff; color:#181818; }
.theme-light.page-knowledge .knowledge-cta p { color:#393622; font-size:16px; }
.theme-light.page-knowledge .cta-phone { font:400 16px/1.5 Manrope,sans-serif; color:#393622; }
.theme-light.page-knowledge .article-hero { max-width:1140px; }
.theme-light.page-knowledge .article-hero h1 { max-width:1100px; font-size:clamp(40px,4.4vw,64px); margin-top:28px; }
.theme-light.page-knowledge .article-back { display:inline-block; font-size:14px; border-bottom:1px solid #18181855; }
.theme-light.page-knowledge .reading-meta { margin-top:22px; font:400 14px/1.5 Manrope,sans-serif; letter-spacing:0; text-transform:none; }
.theme-light.page-knowledge .article-hero>.knowledge-lead { margin-top:24px; }
.theme-light.page-knowledge .library-hero h1 { max-width:1000px; font-size:clamp(44px,4.8vw,73px); }
.theme-light.page-knowledge .guide-filters { gap:10px; }
.theme-light.page-knowledge .guide-filters button { padding:12px 19px; font:500 14px/1.4 Manrope,sans-serif; border-radius:4px; border-color:#18181825; color:#181818; }
.theme-light.page-knowledge .guide-filters button[aria-pressed=true] { background:#f5c400; border-color:#f5c400; color:#181818; }
.theme-light.page-knowledge .guide-grid { grid-template-columns:1fr 1fr; gap:25px; }
.theme-light.page-knowledge .guide-card { padding:30px; background:#f4f6f1; border:1px solid #18181814; border-radius:4px; transition:background .2s; }
.theme-light.page-knowledge .guide-card:hover { background:#fff8d7; }
.theme-light.page-knowledge .guide-card-copy { padding:0; }
.theme-light.page-knowledge .guide-card h2 { margin:0; font-size:28px; line-height:1.2; }
.theme-light.page-knowledge .guide-card-copy p { font-size:15px; line-height:1.85; margin-top:18px; }
.theme-light.page-knowledge .guide-read { display:inline-block; margin-top:24px; padding-bottom:3px; border-bottom:1px solid #18181855; font-size:14px; }
.theme-light.page-knowledge .filter-status { font:400 14px/1.5 Manrope,sans-serif; text-transform:none; letter-spacing:0; margin-top:20px; }
.theme-light.page-knowledge .library-intro { gap:35px; }
.theme-light.page-knowledge .library-intro p { font-size:15px; }
.theme-light.page-knowledge .library-intro h2 { font-size:27px; }
.theme-light.page-knowledge .location-card { padding:45px; background:#f5c400; border:0; border-radius:4px; }
.theme-light.page-knowledge .location-card h2 { font-size:40px; }
.theme-light.page-knowledge .location-card .location-street { color:#181818; font-size:25px; line-height:1.45; margin:24px 0 15px; }
.theme-light.page-knowledge .location-card p { color:#393622; }
.theme-light.page-knowledge .location-card .rc-button { background:#fff; margin-top:28px; color:#181818; }
.theme-light.page-knowledge .location-contact { display:block; margin-top:22px; font-size:20px; }
.theme-light.page-knowledge .audition-hero { margin:0; padding-inline:0; min-height:0; overflow:visible; }
.theme-light.page-knowledge .audition-copy h1 { font-size:clamp(44px,5vw,72px); }
.theme-light.page-knowledge .audition-photo img { width:100%; height:460px; object-fit:cover; object-position:35% center; border-radius:4px; }
.theme-light.page-knowledge .audition-photo figcaption { padding:18px 0 0; font-size:16px; }
.theme-light.page-knowledge .audition-photo a { border-bottom:1px solid #18181855; }
.theme-light.page-knowledge .press-cover { background:transparent; border:0; min-height:0; overflow:visible; }
.theme-light.page-knowledge .press-cover::after { display:none; }
.theme-light.page-knowledge .press-cover img { position:static; height:440px; opacity:1; border-radius:4px; }
.theme-light.page-knowledge .press-cover figcaption { padding-top:16px; font-size:16px; }
.theme-light.page-knowledge .press-story-copy>.micro { font:400 14px/1.5 Manrope,sans-serif; letter-spacing:0; text-transform:none; margin-bottom:20px; }
.theme-light.page-knowledge .press-story p { font-size:16px; }
.theme-light.page-knowledge .press-story-links a { font-size:14px; }
.theme-light.page-knowledge .press-typographic { background:#f5c400; }
.theme-light.page-knowledge .press-typographic strong { color:#181818; }
.theme-light.page-knowledge .legal-document { padding:38px; }
.theme-light.page-knowledge .legal-document :is(p,li) { font-size:15px; }
/* Footer is practical on every page, without decorative labels or fixed overlays. */
:is(.site-page,.theme-light.page-knowledge) .knowledge-footer { padding:55px var(--page-gutter) 25px; background:#f2f4ee; color:#181818; }
:is(.site-page,.theme-light.page-knowledge) .footer-wordmark img { width:180px; height:auto; display:block; }
:is(.site-page,.theme-light.page-knowledge) .footer-top,:is(.site-page,.theme-light.page-knowledge) .footer-locations,:is(.site-page,.theme-light.page-knowledge) .footer-bottom { max-width:1400px; }
:is(.site-page,.theme-light.page-knowledge) .footer-top { display:grid; grid-template-columns:.9fr 1fr .7fr; gap:40px; }
:is(.site-page,.theme-light.page-knowledge) .footer-top>p { font-size:15px; line-height:1.85; }
:is(.site-page,.theme-light.page-knowledge) .footer-links { display:flex; flex-direction:column; font-size:15px; gap:5px; }
:is(.site-page,.theme-light.page-knowledge) .footer-locations { display:grid; grid-template-columns:1fr 1fr .7fr; gap:35px; padding:40px 0; border-bottom:1px solid #18181825; }
:is(.site-page,.theme-light.page-knowledge) .footer-locations>a { font-size:23px; line-height:1.35; }
:is(.site-page,.theme-light.page-knowledge) .footer-branch-label { display:block; margin-bottom:13px; font-size:14px; }
:is(.site-page,.theme-light.page-knowledge) .footer-locations>a>span:last-child { display:block; margin-top:12px; font-size:14px; color:#555a55; }
:is(.site-page,.theme-light.page-knowledge) .footer-bottom { display:flex; flex-wrap:wrap; gap:25px; padding-top:25px; font:400 12px/1.6 Manrope,sans-serif; letter-spacing:0; text-transform:none; }
@media(max-width:1000px) {
 .site-main { padding-top:125px; }
 .school-header { grid-template-columns:1fr; gap:25px; }
 .school-header>p { max-width:720px; }
 .school-staff-grid { grid-template-columns:1fr 1fr; }
 .contact-branches { grid-template-columns:1fr; }
 .theme-light.page-knowledge .reading-layout { grid-template-columns:210px minmax(0,1fr); gap:35px; }
 .theme-light.page-knowledge .studio-composition img { height:380px; }
}
@media(max-width:760px) {
 .site-main { padding-top:115px; padding-bottom:55px; }
 .site-header { padding-bottom:32px; }
 .site-header>p { margin-top:24px; font-size:15px; }
 .site-header h1 { font-size:clamp(40px,7.8vw,57px); }
 .site-section-heading { grid-template-columns:1fr; gap:23px; }
 .site-section-heading p { font-size:15px; }
 .school-header { gap:0; }
 .school-cover img { height:300px; }
 .school-founders { padding:55px 0; }
 .school-founder-grid { gap:35px; margin-top:30px; }
 .school-founder img { height:340px; }
 .school-founder h3 { font-size:27px; }
 .school-founder p { font-size:15px; }
 .school-founder .person-role { font-size:17px; }
 .school-staff { padding:45px 0 55px; }
 .school-staff-grid { gap:32px 22px; }
 .school-staff-member h3 { font-size:23px; }
 .school-experience { grid-template-columns:1fr; gap:35px; padding:45px 0 55px; }
 .school-experience p { font-size:15px; }
 .site-contact-band { display:block; padding:28px; }
 .site-contact-band h2 { font-size:31px; }
 .site-contact-band p { font-size:15px; }
 .site-contact-band .rc-button { margin-top:25px; }
 .contact-page-grid { grid-template-columns:1fr; gap:40px; }
 .contact-direct { padding:0; }
 .contact-branches { grid-template-columns:1fr 1fr; gap:25px; }
 .contact-form-box { padding:25px; }
 .contact-form-box h2 { font-size:29px; }
 .site-page.page-storie .stories-experience { padding-top:115px; padding-bottom:50px; }
 .site-page.page-storie .stories-heading h1 { font-size:clamp(42px,7.5vw,58px); }
 .site-page.page-storie .stories-intro { font-size:15px; }
 .site-page.page-storie .stories-jumps a { font-size:13px; padding:11px 16px; }
 .site-page.page-storie .stories-feed { grid-template-columns:1fr; gap:28px; }
 .site-page.page-storie .story-feature:first-child { display:flex; }
 .site-page.page-storie .story-feature:first-child .story-feature-image,.site-page.page-storie .story-feature-image { height:320px; }
 .site-page.page-storie .story-feature:first-child .story-feature-copy,.site-page.page-storie .story-feature-copy { padding:25px; }
 .site-page.page-storie .story-feature-copy h2 { font-size:34px; }
 .site-page.page-storie .story-feature-copy p { font-size:15px; }
 .site-page.page-storie .story-feature--cta .story-feature-copy { display:flex; flex-direction:column; align-items:start; padding:28px; }
 .theme-light.page-knowledge .knowledge-main { padding-top:105px; }
 .theme-light.page-knowledge .knowledge-header { padding-top:15px; padding-bottom:45px; }
 .theme-light.page-knowledge h1,.theme-light.page-knowledge .article-hero h1,.theme-light.page-knowledge .library-hero h1 { font-size:clamp(37px,7.5vw,55px); }
 .theme-light.page-knowledge .hero-split { grid-template-columns:1fr; gap:35px; }
 .theme-light.page-knowledge .studio-composition img { height:330px; }
 .theme-light.page-knowledge .service-jumps { gap:9px; }
 .theme-light.page-knowledge .service-jumps a { font-size:13px; padding:11px 15px; }
 .theme-light.page-knowledge .service-panel,.theme-light.page-knowledge .service-panel:nth-of-type(even) { grid-template-columns:1fr; gap:30px; padding:38px 0; }
 .theme-light.page-knowledge .service-panel:nth-of-type(even) .service-image { order:0; }
 .theme-light.page-knowledge .service-copy h2 { font-size:33px; }
 .theme-light.page-knowledge .service-copy p:not(.micro) { font-size:15px; }
 .theme-light.page-profile .profile-hero .hero-copy h1 { font-size:clamp(49px,10vw,72px); }
 .page-profile .profile-frame img { height:420px; }
 .theme-light.page-knowledge .reading-layout { grid-template-columns:1fr; gap:32px; margin:20px 0 40px; }
 .theme-light.page-knowledge .reading-index { position:static; }
 .theme-light.page-knowledge .reading-index nav a { font-size:14px; }
 .theme-light.page-knowledge .reading-section p { font-size:15px; }
 .theme-light.page-knowledge .knowledge-faq { grid-template-columns:1fr; padding:25px; gap:22px; margin:45px 0; }
 .theme-light.page-knowledge .knowledge-faq h2 { font-size:30px; }
 .theme-light.page-knowledge .knowledge-faq summary { font-size:15px; }
 .theme-light.page-knowledge .knowledge-faq details p { padding-right:0; }
 .theme-light.page-knowledge .knowledge-related { grid-template-columns:1fr; gap:25px; margin:45px 0; }
 .theme-light.page-knowledge .knowledge-related h2 { font-size:30px; }
 .theme-light.page-knowledge .related-links a { font-size:15px; }
 .theme-light.page-knowledge .knowledge-cta { grid-template-columns:1fr; gap:25px; padding:27px; margin-top:45px; }
 .theme-light.page-knowledge .knowledge-cta h2 { font-size:31px; }
 .theme-light.page-knowledge .knowledge-cta p { font-size:15px; }
 .theme-light.page-knowledge .guide-grid { grid-template-columns:1fr; gap:20px; }
 .theme-light.page-knowledge .guide-card { padding:25px; }
 .theme-light.page-knowledge .guide-card h2 { font-size:26px; }
 .theme-light.page-knowledge .library-intro { grid-template-columns:1fr; gap:30px; }
 .theme-light.page-knowledge .location-card { padding:28px; }
 .theme-light.page-knowledge .location-card h2 { font-size:34px; }
 .theme-light.page-knowledge .location-card .location-street { font-size:22px; }
 .theme-light.page-knowledge .audition-photo img { height:330px; }
 .theme-light.page-knowledge .audition-copy h1 { font-size:clamp(39px,7.5vw,55px); }
 .theme-light.page-knowledge .press-cover img { height:360px; }
 .theme-light.page-knowledge .press-story,.theme-light.page-knowledge .press-story:nth-child(even) { grid-template-columns:1fr; gap:30px; }
 .theme-light.page-knowledge .press-story:nth-child(even) .press-image,.theme-light.page-knowledge .press-story:nth-child(even) .press-typographic { order:0; }
 .theme-light.page-knowledge .legal-layout { grid-template-columns:1fr; }
 .theme-light.page-knowledge .legal-document { padding:25px; }
 :is(.site-page,.theme-light.page-knowledge) .knowledge-footer { padding-top:40px; }
 :is(.site-page,.theme-light.page-knowledge) .footer-top { grid-template-columns:1fr; gap:25px; }
 :is(.site-page,.theme-light.page-knowledge) .footer-locations { grid-template-columns:1fr 1fr; gap:25px; padding:30px 0; }
 :is(.site-page,.theme-light.page-knowledge) .footer-phone { grid-column:1/-1; }
 :is(.site-page,.theme-light.page-knowledge) .footer-locations>a { font-size:21px; }
}
@media(max-width:460px) {
 .school-founder-grid,.school-staff-grid { grid-template-columns:1fr; }
 .school-staff-member img { aspect-ratio:1.3; }
 .contact-branches { grid-template-columns:1fr; }
 .site-contact-band { padding:25px; }
}

:is(.site-page,.theme-light.page-knowledge) .footer-links a { display:flex; align-items:center; min-height:40px; }

.site-page * {box-sizing:border-box;}
.theme-light.page-services .hero-copy h1 {font-size:clamp(43px,4.8vw,72px);}
@media(max-width:760px){.theme-light.page-services .hero-copy h1 {font-size:clamp(37px,7.5vw,55px);}}
:is(.site-page,.theme-light.page-knowledge) :is(a,button,input,textarea,summary):focus-visible {outline:2px solid #181818;outline-offset:5px;}
