﻿:root{--navy:#243c25;--blue:#6f9f58;--sky:#eef4e7;--yellow:#eda544;--cream:#fbf4e9;--white:#fff;--ink:#241f1a;--muted:#6f6a60;--line:#e6dccd;--coral:#d9824f;--green:#6f9f58;--shadow:0 18px 50px rgba(75,54,30,.10);--radius:24px;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Nunito Sans",Inter,system-ui,-apple-system,sans-serif;background:#fff;line-height:1.65}img{display:block;width:100%;object-fit:cover}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}h1,h2,h3{font-family:"Nunito",system-ui,sans-serif;line-height:1.12;margin:0 0 18px;color:var(--navy)}h1{font-size:clamp(2.6rem,6vw,5.3rem);letter-spacing:-.055em}h2{font-size:clamp(2rem,4vw,3.4rem);letter-spacing:-.035em}h3{font-size:1.35rem}.container{width:min(var(--max),calc(100% - 40px));margin:auto}.section{padding:96px 0}.section-sm{padding:60px 0}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:var(--blue);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;margin-bottom:16px}.eyebrow:before{content:"";width:28px;height:4px;border-radius:4px;background:var(--yellow)}.lead{font-size:1.16rem;color:var(--muted);max-width:720px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:42px}.section-head p{max-width:520px;margin:0;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:999px;padding:14px 24px;font-weight:900;cursor:pointer;transition:.25s;background:var(--yellow);color:var(--navy);box-shadow:0 8px 22px rgba(255,201,74,.3)}.btn:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(255,201,74,.42)}.btn-outline{background:transparent;border:2px solid var(--navy);box-shadow:none}.btn-white{background:white;box-shadow:none}.topbar{background:var(--navy);color:white;font-size:.82rem;padding:7px 0}.topbar .container{display:flex;justify-content:space-between;gap:20px}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(220,232,234,.8)}.nav-wrap{height:84px;display:flex;align-items:center;gap:26px}.logo{display:flex;align-items:center;gap:11px;margin-right:auto;font-weight:950;color:var(--navy);line-height:1}.logo-mark{width:46px;height:46px;border-radius:15px;background:var(--yellow);display:grid;place-items:center;font-size:1.5rem;transform:rotate(-4deg)}.logo small{display:block;color:var(--blue);font-size:.64rem;letter-spacing:.1em;margin-top:5px}.nav{display:flex;align-items:center;gap:18px}.nav a{font-size:.85rem;font-weight:800;padding:29px 0;position:relative}.nav a:hover,.nav a.active{color:var(--blue)}.nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:18px;height:3px;background:var(--yellow);border-radius:3px}.lang{border:1px solid var(--line);background:white;border-radius:10px;padding:7px}.menu-toggle{display:none;border:0;background:var(--navy);color:white;width:44px;height:44px;border-radius:13px;font-size:1.3rem}.hero{min-height:690px;display:grid;align-items:center;position:relative;overflow:hidden;background:linear-gradient(90deg,rgba(255,250,240,.98) 0%,rgba(255,250,240,.92) 44%,rgba(255,250,240,.05) 70%),url('../assets/school-lesson.jpg') center/cover}.hero:after{content:"";position:absolute;width:230px;height:230px;border:48px solid rgba(255,201,74,.35);border-radius:50%;right:-80px;bottom:-80px}.hero-copy{position:relative;z-index:2;max-width:700px;padding:90px 0}.hero h1 span{color:var(--blue)}.hero-actions{display:flex;gap:14px;margin:30px 0}.hero-stats{display:flex;gap:36px;margin-top:45px}.stat strong{font-size:1.8rem;color:var(--navy);display:block}.stat span{font-size:.84rem;color:var(--muted)}.grid{display:grid;gap:24px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.card{background:white;border:1px solid var(--line);border-radius:var(--radius);padding:28px;transition:.25s}.card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.icon{width:52px;height:52px;border-radius:16px;background:var(--sky);display:grid;place-items:center;font-size:1.55rem;margin-bottom:22px}.feature:nth-child(2n) .icon{background:#fff0d1}.feature:nth-child(3n) .icon{background:#ffe7e1}.card p{color:var(--muted);margin-bottom:0}.soft{background:var(--cream)}.sky{background:var(--sky)}.program-card{padding:0;overflow:hidden}.program-card img{height:220px}.program-card .body{padding:25px}.tag{display:inline-block;background:var(--sky);color:var(--blue);border-radius:999px;padding:5px 11px;font-size:.75rem;font-weight:900;margin-bottom:12px}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.photo-stack{position:relative;padding:0 40px 40px 0}.photo-stack img{height:500px;border-radius:36px}.photo-stack:after{content:"10+ лет опыта";position:absolute;right:0;bottom:0;background:var(--yellow);color:var(--navy);padding:25px;border-radius:22px;font-size:1.2rem;font-weight:950;box-shadow:var(--shadow)}.checklist{list-style:none;padding:0}.checklist li{margin:13px 0;padding-left:32px;position:relative}.checklist li:before{content:"✓";position:absolute;left:0;background:var(--yellow);width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:.8rem;font-weight:900}.page-hero{padding:105px 0 75px;background:linear-gradient(135deg,var(--cream),var(--sky));position:relative;overflow:hidden}.page-hero:after{content:"";width:280px;height:280px;border-radius:50%;position:absolute;right:6%;top:-110px;background:rgba(255,201,74,.4)}.page-hero h1{font-size:clamp(2.7rem,5vw,4.7rem);max-width:850px}.breadcrumb{color:var(--blue);font-weight:800;margin-bottom:20px}.timeline{border-left:3px solid var(--yellow);padding-left:30px}.timeline article{margin:0 0 35px}.timeline time{font-weight:900;color:var(--blue)}.schedule-filters{display:grid;grid-template-columns:1fr 1fr auto;gap:18px;background:white;padding:22px;border-radius:20px;box-shadow:var(--shadow);margin-bottom:35px}.field label{display:block;font-size:.78rem;font-weight:900;color:var(--navy);margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:13px 14px;background:white;color:var(--ink)}.field textarea{min-height:130px;resize:vertical}.schedule-card{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:24px}.schedule-card .day{background:var(--navy);color:white;text-align:center;border-radius:16px;padding:15px 7px;font-weight:900}.schedule-card .day span{display:block;color:var(--yellow);font-size:.82rem}.schedule-meta{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.85rem}.empty-state{display:none;text-align:center;padding:60px;color:var(--muted)}.price-card{position:relative}.price-card.featured{border:3px solid var(--yellow)}.price{font-size:2.5rem;font-weight:950;color:var(--navy);line-height:1}.price small{font-size:.9rem;color:var(--muted)}.price-card ul{padding-left:20px;color:var(--muted)}.ribbon{position:absolute;right:18px;top:18px;background:var(--yellow);padding:5px 10px;border-radius:999px;font-size:.7rem;font-weight:900}.branch-card{padding:0;overflow:hidden}.branch-card .map{height:220px;background:linear-gradient(35deg,#c9e8e7,#f7efcd);display:grid;place-items:center;color:var(--blue);font-weight:900}.branch-card .body{padding:28px}.teacher{padding:0;overflow:hidden}.teacher img{height:300px}.teacher .body{padding:24px}.teacher .role{color:var(--blue);font-weight:850}.blog-card{padding:0;overflow:hidden}.blog-card img{height:230px}.blog-card .body{padding:25px}.blog-card time{color:var(--blue);font-size:.78rem;font-weight:900}.instagram img{aspect-ratio:1;border-radius:18px}.cta-band{background:var(--navy);color:white;border-radius:35px;padding:50px;display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-band h2{color:white;margin:0}.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:55px}.contact-panel{background:var(--navy);color:white;border-radius:28px;padding:36px}.contact-panel h2,.contact-panel h3{color:white}.contact-list{list-style:none;padding:0}.contact-list li{margin:18px 0}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.contact-form .wide{grid-column:1/-1}.form-note{font-size:.8rem;color:var(--muted)}.success{display:none;background:#dff4e7;color:#1d6b42;border-radius:12px;padding:14px;margin-top:14px}.footer{background:#0d2d47;color:#d8e6ee;padding:70px 0 25px;margin-top:80px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}.footer h3{color:white;font-size:1rem}.footer a{display:block;margin:8px 0;font-size:.9rem}.footer a:hover{color:var(--yellow)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:45px;padding-top:22px;font-size:.78rem;display:flex;justify-content:space-between}.muted{color:var(--muted)}
@media(max-width:980px){.nav{position:fixed;left:20px;right:20px;top:102px;background:white;border-radius:22px;box-shadow:var(--shadow);padding:20px;display:none;flex-direction:column;align-items:stretch}.nav.open{display:flex}.nav a{padding:9px}.nav a.active:after{display:none}.menu-toggle{display:block}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(2,1fr)}.split,.contact-layout{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}.hero{background:linear-gradient(90deg,rgba(255,250,240,.96),rgba(255,250,240,.76)),url('../assets/school-lesson.jpg') center/cover}.lang{margin-left:auto}.nav-wrap{gap:12px}}
@media(max-width:650px){.container{width:min(100% - 28px,var(--max))}.topbar{display:none}.nav{top:80px}.nav-wrap{height:72px}.logo span:not(.logo-mark){display:none}.section{padding:70px 0}.grid-3,.grid-4{grid-template-columns:1fr}.section-head{display:block}.hero{min-height:640px}.hero-copy{padding:65px 0}.hero-actions,.hero-stats{flex-direction:column;align-items:flex-start;gap:14px}.hero-stats{flex-direction:row;flex-wrap:wrap}.schedule-filters{grid-template-columns:1fr}.schedule-card{grid-template-columns:70px 1fr}.schedule-card>.tag{grid-column:2}.contact-form{grid-template-columns:1fr}.contact-form .wide{grid-column:auto}.cta-band{padding:32px;display:block}.cta-band .btn{margin-top:20px}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.page-hero{padding:70px 0 55px}.photo-stack img{height:380px}}

/* Official Meridian identity */
.site-header .logo{width:178px;height:68px;flex:0 0 178px;background:url('../assets/FinalLogo_sprachenzentrum.fw_-300x185.png') center/contain no-repeat}
.site-header .logo>*{display:none}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:650px){.site-header .logo{width:122px;height:58px;flex-basis:122px}}
@media(max-width:760px){.grid-2{grid-template-columns:1fr}}

/* Fixed enrollment call to action */
.has-enrollment-banner{padding-bottom:102px}
.enrollment-banner{position:fixed;z-index:100;left:0;right:0;bottom:0;background:rgba(13,45,71,.98);color:#fff;border-top:4px solid var(--yellow);box-shadow:0 -16px 40px rgba(13,45,71,.2);backdrop-filter:blur(14px)}
.enrollment-banner__inner{width:min(var(--max),calc(100% - 40px));min-height:98px;margin:auto;display:flex;align-items:center;gap:20px}
.enrollment-banner__icon{width:48px;height:48px;display:grid;place-items:center;flex:0 0 48px;border-radius:50%;background:var(--yellow);color:var(--navy);font-size:1.4rem;font-weight:900}
.enrollment-banner__copy{display:flex;flex-direction:column;margin-right:auto;line-height:1.3}
.enrollment-banner__copy strong{font-family:"Nunito",sans-serif;font-size:1.18rem;color:#fff}
.enrollment-banner__copy span{margin-top:5px;color:#c9dbe5;font-size:.9rem}
.enrollment-banner__button{white-space:nowrap;box-shadow:none}
.enrollment-banner__close{width:38px;height:38px;flex:0 0 38px;border:1px solid rgba(255,255,255,.25);border-radius:50%;background:transparent;color:#fff;font-size:1.5rem;line-height:1;cursor:pointer;transition:.2s}
.enrollment-banner__close:hover{background:#fff;color:var(--navy);transform:rotate(5deg)}
.enrollment-banner{transition:transform .35s ease,opacity .3s ease,visibility .3s ease}.enrollment-banner.is-hidden{transform:translateY(110%);opacity:0;visibility:hidden;pointer-events:none}.has-enrollment-banner.banner-at-footer{padding-bottom:0}
@media(max-width:720px){.has-enrollment-banner{padding-bottom:154px}.enrollment-banner__inner{width:min(100% - 24px,var(--max));min-height:150px;display:grid;grid-template-columns:38px 1fr;gap:10px 12px;padding:14px 0}.enrollment-banner__icon{width:38px;height:38px;flex-basis:38px}.enrollment-banner__copy strong{font-size:1rem}.enrollment-banner__copy span{font-size:.78rem}.enrollment-banner__button{grid-column:1/-1;width:100%;padding:11px 18px}}

/* Expanded global footer */
.footer{position:relative;overflow:hidden;margin-top:100px;padding:84px 0 28px;background:linear-gradient(145deg,#0b2a43 0%,#103d5d 58%,#124c67 100%);color:#d9e8ef}
.footer:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 15%,rgba(255,201,74,.12),transparent 24%),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:auto,48px 48px,48px 48px;pointer-events:none}
.footer-content{position:relative;z-index:2}.footer-orbit{position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}.footer-orbit--one{width:440px;height:440px;right:-180px;top:-210px}.footer-orbit--two{width:260px;height:260px;right:-90px;top:-120px;border-color:rgba(255,201,74,.18)}
.footer-lead{display:grid;grid-template-columns:1.35fr .65fr;align-items:end;gap:60px;padding-bottom:58px;border-bottom:1px solid rgba(255,255,255,.14)}
.footer-brand{display:flex;align-items:center;gap:30px}.footer-brand img{width:128px;height:92px;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.15))}.footer-brand .eyebrow{color:#9ec8d8;margin-bottom:12px}.footer-brand h2{margin:0;color:#fff;font-size:clamp(2rem,3.5vw,3.35rem);letter-spacing:-.04em}.footer-lead__action p{max-width:400px;margin:0 0 20px;color:#bed3dd}.footer-lead__action .btn{width:100%;max-width:340px}
.footer-main{display:grid;grid-template-columns:1.25fr .9fr .8fr 1.15fr;gap:55px;padding:58px 0}.footer-column h3{margin-bottom:22px;color:#fff;font-size:.78rem;letter-spacing:.13em;text-transform:uppercase}.footer-column>a{display:block;margin:10px 0;color:#c7dbe4;font-size:.92rem;transition:.2s}.footer-column>a:hover{color:var(--yellow);transform:translateX(4px)}
.footer-contact__item{padding:0 0 15px;margin-bottom:13px!important;border-bottom:1px solid rgba(255,255,255,.1)}.footer-contact__item span{display:block;color:#7fa5b6;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.footer-contact__item strong{display:block;margin-top:4px;color:#fff;font-size:1rem}.footer-socials{display:flex;gap:10px;margin-top:22px}.footer-socials a{width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.18);border-radius:50%;color:#fff;font-weight:900;text-transform:uppercase;transition:.2s}.footer-socials a:hover{border-color:var(--yellow);background:var(--yellow);color:var(--navy);transform:translateY(-3px)}
.footer-locations>a{display:grid;grid-template-columns:82px 1fr;gap:10px;padding:11px 0;margin:0!important;border-bottom:1px solid rgba(255,255,255,.1)}.footer-locations strong{color:#fff}.footer-locations span{color:#9db8c5}.footer-bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;margin:0;padding-top:24px;border-top:1px solid rgba(255,255,255,.14);font-size:.76rem;color:#89aabc}.footer-bottom>div{display:flex;gap:22px}.footer-bottom a{color:#b7ced9}.footer-bottom a:hover{color:var(--yellow)}.footer-bottom>span:last-child{text-align:right}
@media(max-width:980px){.footer-lead{grid-template-columns:1fr}.footer-main{grid-template-columns:repeat(2,1fr)}.footer-lead__action .btn{width:auto}.footer-bottom{grid-template-columns:1fr auto}.footer-bottom>span:last-child{display:none}}
@media(max-width:620px){.footer{padding-top:60px}.footer-lead{padding-bottom:42px;gap:30px}.footer-brand{align-items:flex-start;gap:16px}.footer-brand img{width:78px;height:64px}.footer-brand h2{font-size:1.75rem}.footer-main{grid-template-columns:1fr;gap:30px;padding:42px 0}.footer-bottom{grid-template-columns:1fr;gap:12px}.footer-bottom>div{gap:15px}.footer-lead__action .btn{width:100%}}
.footer-brand img{padding:8px;background:#fff;border-radius:18px}

/* Teacher profiles */
.profile-notice{display:flex;align-items:flex-start;gap:14px;margin-bottom:46px;padding:18px 22px;border:1px solid #cfe5e9;border-radius:18px;background:var(--sky);color:var(--navy)}.profile-notice>span{width:28px;height:28px;display:grid;place-items:center;flex:0 0 28px;border-radius:50%;background:var(--blue);color:#fff;font-weight:900}.profile-notice p{margin:0}.teacher-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.teacher-profile{padding:0;overflow:hidden;display:flex;flex-direction:column}.teacher-profile__photo{position:relative;overflow:hidden}.teacher-profile__photo img{height:310px;object-position:center 24%;transition:transform .5s ease}.teacher-profile:hover .teacher-profile__photo img{transform:scale(1.035)}.teacher-profile__photo>span{position:absolute;left:18px;bottom:18px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.94);color:var(--blue);font-size:.72rem;font-weight:900;box-shadow:0 6px 18px rgba(18,59,93,.14)}.teacher-profile__body{display:flex;flex-direction:column;flex:1;padding:25px}.teacher-profile__body h3{margin-bottom:7px}.teacher-profile__body .role{margin-bottom:14px;color:var(--blue);font-size:.88rem;font-weight:900}.teacher-profile__body p{margin:0 0 20px}.teacher-skills{display:flex;flex-wrap:wrap;gap:7px;margin-top:auto}.teacher-skills span{padding:5px 10px;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.7rem;font-weight:800}
@media(max-width:960px){.teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:580px){.teacher-grid{grid-template-columns:1fr}.teacher-profile__photo img{height:340px}.profile-notice{padding:15px;margin-bottom:34px}}

/* Cross-device layout hardening */
html,body{max-width:100%;overflow-x:hidden}a,button,select,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.card,.teacher-profile,.program-card,.blog-card,.branch-card{min-width:0}p,h1,h2,h3,a,span{overflow-wrap:break-word}.nav a{white-space:nowrap}.contact-form input,.contact-form select,.contact-form textarea{min-width:0}.section-head>*{min-width:0}
@media(min-width:1440px){:root{--max:1240px}.hero-copy{max-width:760px}.program-card img{height:245px}.teacher-profile__photo img{height:340px}}
@media(max-width:1180px){.nav-wrap{gap:16px}.nav{gap:13px}.nav a{font-size:.8rem}.site-header .logo{width:150px;flex-basis:150px}.section{padding:82px 0}.split{gap:48px}}
@media(max-width:980px){.nav{max-height:calc(100vh - 130px);overflow-y:auto}.nav a{font-size:.95rem}.section-head{align-items:start}.split{gap:42px}.photo-stack{max-width:680px;margin:auto}.contact-layout{gap:38px}.schedule-card{grid-template-columns:78px 1fr auto}.page-hero{padding:82px 0 62px}.cta-band{border-radius:28px}.branch-card .map{height:185px}}
@media(max-width:760px){h1{font-size:clamp(2.35rem,11vw,3.65rem)}h2{font-size:clamp(1.85rem,8vw,2.7rem)}.section{padding:64px 0}.section-sm{padding:44px 0}.section-head{display:block;margin-bottom:30px}.section-head .btn{margin-top:18px}.grid{gap:18px}.card{padding:23px}.hero{min-height:590px}.hero-copy{padding:58px 0}.hero-actions{gap:10px}.hero-actions .btn{min-height:50px}.hero-stats{gap:20px}.stat strong{font-size:1.5rem}.split{grid-template-columns:1fr;gap:34px}.photo-stack{padding:0 24px 24px 0}.photo-stack img{height:min(420px,72vw)}.photo-stack:after{padding:16px;font-size:.95rem}.contact-layout{grid-template-columns:1fr;gap:28px}.contact-panel{padding:28px}.schedule-filters{padding:17px;gap:13px}.schedule-card{grid-template-columns:68px 1fr;gap:15px;padding:17px}.schedule-card>.tag{grid-column:2;justify-self:start}.price{font-size:2.15rem}.cta-band{padding:28px}.program-card img,.blog-card img{height:215px}.teacher-profile__photo img{height:330px}}
@media(max-width:520px){.container{width:calc(100% - 28px)}.nav-wrap{height:68px}.site-header .logo{width:108px;height:54px;flex-basis:108px}.lang{padding:6px;font-size:.82rem}.menu-toggle{width:40px;height:40px}.nav{left:12px;right:12px;top:76px;padding:15px}.page-hero{padding:56px 0 45px}.page-hero h1{font-size:2.35rem}.breadcrumb{font-size:.78rem}.lead{font-size:1.02rem}.hero{min-height:560px}.hero-copy{padding:48px 0}.hero-actions{width:100%}.hero-actions .btn{width:100%}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);width:100%;gap:9px}.stat{padding:10px 4px;border-radius:12px;background:rgba(255,255,255,.72);text-align:center}.stat span{font-size:.67rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.card{border-radius:20px}.schedule-card{grid-template-columns:60px 1fr}.schedule-card .day{padding:11px 5px}.schedule-meta{gap:6px;font-size:.78rem}.contact-form{gap:14px}.field input,.field select,.field textarea{font-size:16px}.cta-band{border-radius:22px}.cta-band h2{font-size:1.8rem}.cta-band .btn{width:100%}.teacher-profile__photo img{height:310px}.branch-card .map{height:160px}.footer{margin-top:70px}}
@media(max-width:380px){.container{width:calc(100% - 22px)}.site-header .logo{width:94px;flex-basis:94px}.nav-wrap{gap:8px}.page-hero h1{font-size:2.08rem}.hero-stats{grid-template-columns:1fr}.teacher-profile__photo img{height:275px}.enrollment-banner__copy span{display:none}.has-enrollment-banner{padding-bottom:132px}.enrollment-banner__inner{min-height:128px}}

/* News archive */
.news-grid{align-items:stretch}.news-grid .blog-card{display:flex;flex-direction:column}.news-grid .blog-card img{height:245px}.news-grid .blog-card .body{display:flex;flex-direction:column;flex:1}.news-grid .blog-card h3{font-size:1.28rem}.news-grid .blog-card p{margin:0 0 24px}.blog-more{align-self:flex-start;margin-top:auto;padding:10px 18px;background:transparent;box-shadow:none;font-size:.82rem}.blog-more:hover{background:var(--navy);border-color:var(--navy);color:#fff}
@media(max-width:980px){.news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.news-grid{grid-template-columns:1fr}.news-grid .blog-card img{height:230px}.news-grid .blog-card .body{padding:22px}.blog-more{width:100%}}

/* Registration form */
.registration-form{padding:34px;border:1px solid var(--line);border-radius:28px;background:#fff;box-shadow:var(--shadow)}.registration-form .field label{margin-bottom:9px;font-size:.86rem}.required{color:var(--coral)}.name-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px}.name-fields>div{min-width:0}.name-fields small,.field-hint{display:block;margin-top:6px;color:var(--muted);font-size:.74rem}.registration-form input,.registration-form select,.registration-form textarea{min-height:52px;border:1px solid #cadadd;background:#fbfdfd;transition:border-color .2s,box-shadow .2s,background .2s}.registration-form textarea{min-height:118px}.registration-form input:hover,.registration-form textarea:hover{border-color:#9ebfc7}.registration-form input:focus,.registration-form textarea:focus{border-color:var(--blue);background:#fff;box-shadow:0 0 0 4px rgba(23,107,135,.1);outline:0}.registration-form input:invalid:not(:placeholder-shown),.registration-form textarea:invalid:not(:placeholder-shown){border-color:#d98b7d}.consent-field{display:flex;align-items:flex-start;gap:10px;padding:14px 16px;border-radius:14px;background:var(--cream)}.consent-field input{width:18px;height:18px;min-height:0;margin-top:2px;accent-color:var(--blue)}.form-submit{display:flex;align-items:center;gap:18px}.form-submit .success{flex:1;margin:0}.registration-form input[type="date"]{color:var(--ink)}
@media(max-width:760px){.registration-form{padding:24px}.name-fields{gap:13px}.form-submit{align-items:stretch;flex-direction:column}.form-submit .btn{width:100%}}
@media(max-width:520px){.registration-form{padding:18px;border-radius:20px}.name-fields{grid-template-columns:1fr}.registration-form .field{grid-column:1/-1}.consent-field{font-size:.78rem}}

/* Keep button labels readable in every context */
.btn,.btn:link,.btn:visited{color:var(--navy)}
.btn:hover,.btn:active{color:var(--navy)}
.footer a.btn:hover,.footer a.btn:active,.footer a.btn:focus-visible,.cta-band a.btn:hover,.enrollment-banner a.btn:hover{color:var(--navy)}
.blog-more:hover,.blog-more:active,.blog-more:focus-visible{color:#fff}

/* Compact enrollment banner on phones */
@media(max-width:720px){.has-enrollment-banner{padding-bottom:104px}.enrollment-banner__inner{min-height:100px;padding:8px 0;grid-template-columns:28px 1fr;gap:6px 9px}.enrollment-banner__icon{width:28px;height:28px;flex-basis:28px;font-size:.95rem}.enrollment-banner__copy strong{font-size:.88rem;line-height:1.18}.enrollment-banner__copy span{display:none}.enrollment-banner__button{min-height:36px;padding:7px 12px;font-size:.9rem;line-height:1.15}}
@media(max-width:380px){.has-enrollment-banner{padding-bottom:96px}.enrollment-banner__inner{min-height:92px}.enrollment-banner__copy strong{font-size:.82rem}.enrollment-banner__button{min-height:34px;font-size:.855rem}}

/* Corporate color refresh based on the original Meridian identity */
body{background:#fff;color:var(--ink)}
.topbar{background:linear-gradient(90deg,#004b8d,#0087c6)}
.site-header{box-shadow:0 10px 30px rgba(0,75,141,.06)}
.nav a:hover,.nav a.active,.breadcrumb,.eyebrow,.tag,.teacher-profile__body .role,.blog-card time{color:var(--blue)}
.nav a.active:after,.eyebrow:before,.btn,.ribbon,.checklist li:before,.enrollment-banner__icon{background:var(--yellow)}
.btn{box-shadow:0 10px 24px rgba(247,199,27,.28)}
.btn:hover{box-shadow:0 14px 30px rgba(247,199,27,.38)}
.btn-outline{background:#fff;border-color:var(--navy);box-shadow:none}
.btn-white{color:var(--navy)}
.hero{background:linear-gradient(90deg,rgba(247,251,255,.98) 0%,rgba(247,251,255,.9) 45%,rgba(247,251,255,.05) 72%),url('../assets/school-lesson.jpg') center/cover}
.page-hero{background:linear-gradient(135deg,#f7fbff 0%,#e7f7fb 62%,#fff8d7 100%)}
.soft{background:#f7fbff}.sky{background:#e7f7fb}
.icon,.tag{background:#e7f7fb}.feature:nth-child(2n) .icon{background:#fff5bf}.feature:nth-child(3n) .icon{background:#eaf7d8}
.card{border-color:#d9e8f0}.card:hover{box-shadow:0 20px 48px rgba(0,75,141,.12)}
.footer{background:linear-gradient(145deg,#004078 0%,#005fa8 58%,#0087c6 100%)}
.footer:before{background:radial-gradient(circle at 82% 15%,rgba(247,199,27,.16),transparent 24%),linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:auto,48px 48px,48px 48px}
.footer-column>a:hover,.footer-bottom a:hover,.footer a:hover{color:var(--yellow)}
.enrollment-banner{background:rgba(0,75,141,.98);border-top-color:var(--yellow)}
.branch-card .map{background:linear-gradient(35deg,#d8f2f8,#fff4bd)}
.branch-card .map{position:relative;display:block;height:250px;background:#e7f7fb;overflow:hidden}
.branch-card .map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;filter:saturate(.95) contrast(1.02)}
.branch-card .map:after{content:"";position:absolute;inset:auto 0 0;height:42px;background:linear-gradient(0deg,rgba(255,255,255,.85),transparent);pointer-events:none}
.branch-photo{padding:16px 16px 0;background:#fff;overflow:hidden}
.branch-photo img{width:100%;height:220px;object-fit:cover;object-position:center bottom;border:1px solid var(--line);border-radius:4px;background:#f7fbff}
.branch-card:nth-child(1) .branch-photo img{height:248px;transform:translateY(-28px);margin-bottom:-28px;object-position:center bottom}
.branch-card:nth-child(2) .branch-photo img{height:268px;transform:translateY(-48px);margin-bottom:-48px;object-position:center bottom}
.about-blue{background:var(--blue);color:#fff;position:relative;overflow:hidden}
.about-blue:after{content:"";position:absolute;right:-120px;top:-120px;width:360px;height:360px;border:64px solid rgba(255,255,255,.14);border-radius:50%}
.about-blue h2,.about-blue .lead{color:#fff}
.about-blue .eyebrow{color:var(--yellow)}
.about-blue .mb-path div{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.24)}
.about-blue .mb-path strong{color:#fff}
.about-blue .mb-path span{color:rgba(255,255,255,.82)}
.about-traits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line);border-radius:28px;overflow:hidden}
.about-traits article{background:#fff;padding:30px;min-height:180px}
.about-traits strong{display:block;margin-bottom:10px;color:var(--blue);font-family:Montserrat,sans-serif;font-size:.86rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.about-traits p{margin:0;color:var(--muted)}
.about-quality-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:28px}
.about-quality-grid article{padding:22px 24px;border-left:6px solid var(--yellow);background:#fff;box-shadow:0 14px 34px rgba(0,75,141,.08)}
.about-quality-grid h3{margin-bottom:6px;font-size:1.05rem}
.about-quality-grid p{margin:0}
.about-rhythm{position:relative;overflow:hidden}
.about-alt{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:72px}
.about-alt--reverse .about-alt__media{order:2}
.about-alt--reverse .about-alt__content{order:1}
.about-alt__media{position:relative}
.about-alt__media:before{content:"";position:absolute;inset:26px -26px -26px 26px;background:#f7c71b;z-index:0}
.about-alt--reverse .about-alt__media:before{inset:26px 26px -26px -26px;background:#e7f7fb}
.about-alt__media img{position:relative;z-index:1;width:100%;height:520px;object-fit:cover;border-radius:4px;box-shadow:0 24px 50px rgba(0,75,141,.16)}
.about-hero h1{font-size:clamp(2.25rem,4vw,4rem)!important}
.about-alt__content h2{font-size:clamp(1.85rem,3.1vw,3.05rem);letter-spacing:-.03em;line-height:1.08}
.about-alt__content p{font-size:1rem;line-height:1.72}
.about-alt__content .lead{font-size:1.06rem;line-height:1.68}
.about-feature-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.about-feature-list span{padding:10px 14px;border-radius:999px;background:#e7f7fb;color:#004b8d;font-family:Montserrat,sans-serif;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.about-traits--compact{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:28px;border-radius:4px}
.about-traits--compact article{min-height:auto;padding:20px}
.about-traits--compact{gap:14px;border:0;background:transparent;overflow:visible}
.about-traits--compact article{border:1px solid var(--line);border-radius:4px;box-shadow:0 12px 26px rgba(0,75,141,.06)}
.about-traits--compact strong{font-size:.74rem;line-height:1.25;letter-spacing:.055em;overflow-wrap:anywhere;hyphens:auto}
.about-traits--compact p{font-size:.95rem;line-height:1.55}
@media(max-width:980px){.branch-card .map{height:230px}}
@media(max-width:520px){.branch-card .map{height:220px}}

/* Clearer schedule page */
.schedule-guide{display:grid;grid-template-columns:1.15fr .85fr;gap:28px;align-items:stretch;margin-bottom:34px}
.schedule-guide__panel{border:1px solid var(--line);border-radius:28px;padding:28px;background:#fff;box-shadow:var(--shadow)}
.schedule-guide__steps{counter-reset:steps;display:grid;gap:14px;margin:0;padding:0;list-style:none}
.schedule-guide__steps li{position:relative;padding:16px 16px 16px 58px;border:1px solid var(--line);border-radius:18px;background:#f7fbff}
.schedule-guide__steps li:before{counter-increment:steps;content:counter(steps);position:absolute;left:16px;top:16px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:var(--navy);font-weight:950}
.schedule-guide__steps strong{display:block;color:var(--navy);line-height:1.2}
.schedule-guide__steps span{display:block;margin-top:4px;color:var(--muted);font-size:.9rem}
.schedule-legend{display:grid;gap:12px;margin-top:22px}
.schedule-legend span{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.92rem}
.schedule-legend span:before{content:"";width:12px;height:12px;border-radius:50%;background:var(--blue);box-shadow:18px 0 0 var(--yellow)}
.schedule-helper{display:grid;gap:16px;align-content:start;border-radius:28px;padding:28px;background:linear-gradient(145deg,var(--navy),var(--blue));color:#fff;box-shadow:var(--shadow)}
.schedule-helper h2{color:#fff;font-size:clamp(1.55rem,2.8vw,2.2rem);margin:0}
.schedule-helper p{margin:0;color:#dceff6}
.schedule-helper .btn{width:max-content}
.schedule-filters{grid-template-columns:1fr 1fr auto;align-items:end;border:1px solid var(--line);box-shadow:0 16px 42px rgba(0,75,141,.09)}
.schedule-filter-summary{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:4px;color:var(--muted);font-size:.92rem}
.schedule-filter-summary strong{color:var(--navy)}
.schedule-results{align-items:stretch}
.schedule-card{position:relative;grid-template-columns:86px minmax(0,1fr) auto;overflow:hidden}
.schedule-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,var(--blue),var(--yellow))}
.schedule-card .day{background:var(--navy);box-shadow:0 8px 18px rgba(0,75,141,.16)}
.schedule-card h3{margin-bottom:10px}
.schedule-meta span{display:inline-flex;align-items:center;gap:5px}
.schedule-meta span:not(:empty):before{content:"";width:6px;height:6px;border-radius:50%;background:var(--yellow)}
.schedule-note{margin-top:28px;padding:18px 22px;border-left:5px solid var(--yellow);border-radius:16px;background:#f7fbff;color:var(--muted)}
.empty-state{grid-column:1/-1;border:1px dashed var(--line);border-radius:24px;background:#f7fbff}
@media(max-width:900px){.schedule-guide{grid-template-columns:1fr}.schedule-helper .btn{width:100%}.schedule-filters{grid-template-columns:1fr}.schedule-filter-summary{display:block}.schedule-filter-summary span{display:block;margin-top:6px}}
@media(max-width:650px){.schedule-guide__panel,.schedule-helper{padding:22px;border-radius:22px}.schedule-guide__steps li{padding:14px 14px 14px 52px}.schedule-guide__steps li:before{left:14px;top:14px}.schedule-card{grid-template-columns:64px 1fr}.schedule-card .tag{grid-column:2;justify-self:start}.schedule-note{font-size:.9rem}}

/* Parent-friendly schedule page */
.schedule-intro{padding-bottom:38px}
.schedule-guide--compact{margin-bottom:30px}
.schedule-directory-section{padding-top:72px}
.schedule-directory{display:grid;gap:16px}
.schedule-directory .schedule-card{min-height:118px;border-left:5px solid var(--blue);box-shadow:0 10px 26px rgba(0,75,141,.06)}
.schedule-directory .schedule-card[data-type="school"]{border-left-color:var(--blue)}
.schedule-directory .schedule-card[data-type="preschool"]{border-left-color:#13a6c8}
.schedule-directory .schedule-card[data-type="studio"]{border-left-color:var(--yellow)}
.schedule-directory .schedule-card[data-type="language"]{border-left-color:#74b84b}
.schedule-directory .schedule-card[data-type="play"]{border-left-color:#f18435}
.schedule-directory .schedule-card[data-type="specialist"]{border-left-color:#d94d7b}
.schedule-directory .schedule-card:hover{transform:translateY(-3px)}
.schedule-filters{grid-template-columns:repeat(4,minmax(150px,1fr)) auto;position:relative;z-index:3}
.schedule-filter-summary{grid-column:1/-1;display:flex;justify-content:space-between;gap:18px;padding-top:14px;border-top:1px solid var(--line);color:var(--muted)}
.schedule-filter-summary strong{color:var(--navy)}
.schedule-note{margin-top:24px;color:var(--muted)}
.price-mini-grid .price-mini{display:flex;flex-direction:column}
.price-mini .price{margin:6px 0 12px;font-size:clamp(2rem,3vw,2.8rem)}
.payment-note{margin-top:24px;background:linear-gradient(135deg,#f7fbff,#fffdf5)}
.source-schedule-card{padding:0;overflow:hidden}
.source-schedule-card__image{position:relative;display:block;width:100%;padding:0;border:0;background:white;cursor:zoom-in;overflow:hidden}
.source-schedule-card__image img{height:430px;object-fit:contain;background:white;border-bottom:1px solid var(--line);transition:transform .35s ease,filter .35s ease}
.source-schedule-card__image span{position:absolute;left:50%;bottom:18px;transform:translateX(-50%) translateY(10px);opacity:0;padding:9px 14px;border-radius:999px;background:rgba(13,45,71,.92);color:white;font-size:.78rem;font-weight:900;white-space:nowrap;transition:.25s}
.source-schedule-card__image:hover img{transform:scale(1.018);filter:brightness(.94)}
.source-schedule-card__image:hover span{opacity:1;transform:translateX(-50%) translateY(0)}
.source-schedule-card>div{padding:24px}
.source-schedule-card h3{font-size:1.05rem;margin-bottom:0}
.schedule-download{margin-top:16px;width:100%;padding:11px 16px;font-size:.88rem}
.image-lightbox{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;padding:28px;background:rgba(6,23,38,.88);backdrop-filter:blur(10px)}
.has-open-lightbox{overflow:hidden}
.image-lightbox.is-open{display:flex}
.image-lightbox__dialog{width:min(1120px,100%);max-height:92vh;display:flex;flex-direction:column;gap:14px}
.image-lightbox__top{display:flex;align-items:center;justify-content:space-between;gap:16px;color:white}
.image-lightbox__top strong{font-size:1rem}
.image-lightbox__actions{display:flex;align-items:center;gap:8px}
.image-lightbox__zoom{min-width:44px;height:44px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(255,255,255,.12);color:white;font-size:1.15rem;font-weight:900;line-height:1;cursor:pointer;transition:.2s}
.image-lightbox__zoom-reset{min-width:68px;padding:0 12px;font-size:.86rem}
.image-lightbox__zoom:hover,.image-lightbox__close:hover{background:rgba(255,255,255,.22);transform:translateY(-1px)}
.image-lightbox__close{width:44px;height:44px;border:1px solid rgba(255,255,255,.3);border-radius:50%;background:rgba(255,255,255,.12);color:white;font-size:1.8rem;line-height:1;cursor:pointer}
.image-lightbox__stage{height:min(82vh,820px);display:grid;place-items:center;overflow:hidden;border-radius:18px;background:white;box-shadow:0 30px 80px rgba(0,0,0,.35);touch-action:none}
.image-lightbox__img{max-height:100%;width:100%;height:100%;object-fit:contain;border-radius:18px;background:white;transform-origin:center center;transition:transform .12s ease;user-select:none;touch-action:none}
.image-lightbox__hint{color:rgba(255,255,255,.72);font-size:.82rem;text-align:center}
.calendar-breaks-section{background:linear-gradient(135deg,#f7fbff 0%,#fff 52%,#fff7d7 100%)}
.school-year-card{display:grid;grid-template-columns:1.25fr .75fr;gap:20px;align-items:stretch;margin-bottom:22px;padding:26px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:0 18px 42px rgba(0,75,141,.08)}
.school-year-card__main h3{margin:10px 0 8px;color:var(--navy);font-size:clamp(1.8rem,3vw,2.8rem)}
.school-year-card__main p{margin:0;color:var(--muted)}
.school-year-card__dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.school-year-card__dates div{display:flex;flex-direction:column;justify-content:center;padding:18px;border-radius:18px;background:#eaf9fd}
.school-year-card__dates strong{color:var(--blue);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.school-year-card__dates span{margin-top:6px;color:var(--navy);font-weight:900}
.calendar-breaks-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}
.calendar-breaks-card{padding:26px;border:1px solid var(--line);border-radius:26px;background:#fff;box-shadow:0 16px 38px rgba(0,75,141,.07)}
.calendar-breaks-card--accent{background:var(--navy);border-color:var(--navy);color:#fff}
.calendar-breaks-card h3{margin-bottom:18px;font-size:clamp(1.45rem,2vw,2rem)}
.calendar-breaks-card--accent h3{color:#fff}
.date-pills{display:flex;flex-wrap:wrap;gap:10px}
.date-pills span{display:inline-flex;align-items:center;min-height:40px;padding:9px 14px;border-radius:999px;background:#eaf9fd;color:var(--navy);font-weight:800;font-size:.94rem}
.date-pills--compact span{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.22)}
@media(max-width:1100px){.schedule-filters{grid-template-columns:repeat(2,1fr)}.schedule-filters .btn{width:100%}.source-schedule-card img{height:360px}}
@media(max-width:900px){.school-year-card,.calendar-breaks-grid{grid-template-columns:1fr}.school-year-card__dates{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.schedule-directory-section{padding-top:56px}.schedule-filters{grid-template-columns:1fr}.schedule-filter-summary{display:block}.schedule-directory .schedule-card{min-height:auto}.source-schedule-card img{height:320px}.price-mini-grid{grid-template-columns:1fr}.calendar-breaks-section .section-head{gap:12px}.school-year-card,.calendar-breaks-card{padding:20px;border-radius:22px}.date-pills span{width:100%;justify-content:center;text-align:center}}
@media(max-width:520px){.schedule-directory .schedule-card{grid-template-columns:58px 1fr;padding:16px 14px}.schedule-directory .schedule-card .day{font-size:.82rem}.schedule-directory .schedule-card .day span{font-size:.68rem}.schedule-directory .schedule-card h3{font-size:1.05rem}.source-schedule-card img{height:260px}.school-year-card__dates{grid-template-columns:1fr}.school-year-card__main h3{font-size:1.55rem}.date-pills span{font-size:.86rem;padding:8px 12px}}

/* Branch-first schedule calendar */
.schedule-intro{padding-bottom:28px}
.schedule-intro+.schedule-directory-section{padding-top:46px}
.schedule-head-tight{margin-bottom:24px}
.branch-schedule-switch{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:22px}
.branch-schedule-switch button{border:1px solid var(--line);background:#fff;border-radius:16px;padding:18px 20px;text-align:left;cursor:pointer;transition:.22s;box-shadow:0 10px 26px rgba(0,75,141,.06)}
.branch-schedule-switch button span{display:block;color:var(--blue);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.branch-schedule-switch button strong{display:block;margin-top:4px;color:var(--navy);font-size:1.08rem}
.branch-schedule-switch button:hover,.branch-schedule-switch button.is-active{transform:translateY(-2px);border-color:var(--blue);background:linear-gradient(135deg,#fff,#eefaff)}
.branch-schedule-switch button.is-active{box-shadow:inset 0 -4px 0 var(--yellow),0 14px 30px rgba(0,75,141,.1)}
.branch-schedule-panel{display:none}
.branch-schedule-panel.is-active{display:block}
.branch-schedule-head{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px;align-items:end;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;margin-bottom:18px}
.branch-schedule-head h2{margin-bottom:6px;font-size:clamp(1.8rem,3vw,2.6rem)}
.branch-schedule-head p{margin:0;color:var(--muted)}
.weekly-calendar{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;align-items:start}
.schedule-day-column{background:#fff;border:1px solid var(--line);border-radius:16px;min-height:170px;padding:14px;box-shadow:0 10px 24px rgba(0,75,141,.055)}
.schedule-day-column h3{font-size:.92rem;margin:0 0 12px;padding-bottom:9px;border-bottom:2px solid var(--sky);text-transform:uppercase;letter-spacing:.04em}
.schedule-day-column.is-empty{background:rgba(255,255,255,.58)}
.schedule-day-empty{color:#9ab0bd;font-size:.9rem}
.schedule-event{display:block;background:#f7fbff;border:1px solid rgba(0,75,141,.1);border-radius:13px;padding:12px;margin-bottom:10px;transition:.2s}
.schedule-event:hover{transform:translateY(-2px);box-shadow:0 10px 20px rgba(0,75,141,.09)}
.schedule-event .day{display:flex;justify-content:space-between;gap:8px;margin-bottom:7px;color:var(--blue);font-weight:900;font-size:.72rem;text-transform:uppercase}
.schedule-event .day span{color:var(--navy)}
.schedule-event h3{font-size:.98rem;line-height:1.18;margin:0 0 8px}
.schedule-event .schedule-meta{display:block;font-size:.78rem;line-height:1.45}
.schedule-event .schedule-meta span{display:block}
.event-tag{display:inline-flex;margin-top:9px;background:#e8f8fb;color:var(--blue);border-radius:999px;padding:4px 9px;font-size:.68rem;font-weight:900}
.branch-hours{margin:16px 0 18px;padding:12px 14px;border-left:4px solid var(--yellow);background:#f7fbff;color:var(--navy);font-size:.9rem;line-height:1.35}
.branch-hours strong{display:block;margin-bottom:3px;font-weight:900}
.branch-hours span{display:block;color:var(--muted)}
@media(max-width:1180px){.weekly-calendar{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.schedule-intro+.schedule-directory-section{padding-top:34px}.branch-schedule-switch{grid-template-columns:1fr;gap:10px}.branch-schedule-switch button{padding:15px 17px}.branch-schedule-head{grid-template-columns:1fr;gap:10px;padding:18px}.weekly-calendar{grid-template-columns:1fr}.schedule-day-column{min-height:auto}.schedule-event{display:grid;grid-template-columns:74px 1fr;gap:10px}.schedule-event .day{display:block;margin:0}.schedule-event .event-tag{grid-column:2;justify-self:start}}

/* Meridian homepage concept */
.maple-home{font-family:"Nunito Sans",system-ui,sans-serif;background:#fff;color:#17324a}
.maple-home h1,.maple-home h2,.maple-home h3,.maple-home .nav a,.maple-home .btn{font-family:"Montserrat",system-ui,sans-serif;letter-spacing:0}
.maple-topbar{background:#004b8d;color:#fff;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:800}
.maple-topbar a{color:#fff}.maple-header{background:#fff;border-bottom:1px solid rgba(0,75,141,.12);box-shadow:0 8px 24px rgba(0,75,141,.08)}
.maple-header .nav-wrap{height:92px}.maple-header .nav{gap:20px}.maple-header .nav a{font-size:.74rem;text-transform:uppercase;font-weight:800;color:#12324b;padding:34px 0}.maple-header .nav a:hover,.maple-header .nav a.active{color:#0087c6}.maple-header .nav a.active:after{bottom:24px;background:#f7c71b;height:4px}
.mb-hero{position:relative;min-height:calc(100vh - 126px);display:grid;align-items:center;overflow:hidden;background:#004b8d}
.mb-hero__slides,.mb-slide{position:absolute;inset:0;margin:0}.mb-slide{opacity:0;transition:opacity .9s ease;background:#004b8d}.mb-slide.is-active{opacity:1}.mb-slide img{width:100%;height:100%;object-fit:cover;object-position:center 38%;image-rendering:auto}.mb-hero__overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,36,72,.88) 0%,rgba(0,75,141,.62) 40%,rgba(0,75,141,.22) 72%,rgba(0,0,0,.08) 100%),linear-gradient(0deg,rgba(0,0,0,.16),transparent 38%)}
.mb-hero__content{position:relative;z-index:2;color:#fff;padding:88px 0 62px;max-width:780px}.mb-kicker{margin:0 0 18px;color:#f7c71b;text-transform:uppercase;letter-spacing:.16em;font-family:"Montserrat",sans-serif;font-weight:900;font-size:.82rem}.mb-hero h1{font-size:clamp(3rem,6.5vw,6.5rem);line-height:.95;color:#fff;margin:0 0 22px;text-transform:none;font-weight:900}.mb-hero__content>p:not(.mb-kicker){max-width:680px;margin:0;color:#eef7fb;font-size:1.22rem;line-height:1.65}.mb-hero__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:34px}.mb-hero__controls{display:flex;align-items:center;gap:14px;margin-top:52px}.mb-hero__controls button{width:44px;height:44px;border:1px solid rgba(255,255,255,.55);border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:1.6rem;cursor:pointer;transition:.2s}.mb-hero__controls button:hover{background:#fff;color:#004b8d}.mb-dots{display:flex;gap:8px}.mb-dots button{width:10px;height:10px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.48)}.mb-dots button.is-active{width:30px;border-radius:999px;background:#f7c71b}
.mb-two-col{display:grid;grid-template-columns:1fr 1fr;gap:68px;align-items:center}.mb-centered{text-align:center;max-width:900px;margin:0 auto 48px}.mb-centered .eyebrow{justify-content:center}.mb-centered .eyebrow:before{display:none}.mb-centered h2{margin-inline:auto}.mb-photo-grid{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:210px;gap:16px}.mb-photo-grid img{height:100%;border-radius:4px;box-shadow:0 16px 35px rgba(0,75,141,.12)}.mb-photo-grid img:first-child{grid-row:span 2}.mb-promise{background:#f7fbff}.mb-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d9e8f0;border:1px solid #d9e8f0}.mb-benefits article{min-height:285px;padding:34px;background:#fff;transition:.25s}.mb-benefits article:hover{background:#e7f7fb;transform:translateY(-4px)}.mb-benefits span{display:block;margin-bottom:30px;color:#0087c6;font-family:"Montserrat",sans-serif;font-weight:900}.mb-benefits h3{font-size:1.25rem}.mb-benefits p{color:#607789;margin:0}
.mb-image-panel{position:relative}.mb-image-panel:before{content:"";position:absolute;left:-22px;top:-22px;width:72%;height:72%;background:#f7c71b;z-index:0}.mb-image-panel img{position:relative;z-index:1;height:560px;border-radius:4px;box-shadow:0 22px 48px rgba(0,75,141,.16)}.mb-path{display:grid;gap:14px;margin-top:28px}.mb-path div{display:grid;grid-template-columns:170px 1fr;gap:18px;padding:18px 0;border-top:1px solid #d9e8f0}.mb-path strong{font-family:"Montserrat",sans-serif;color:#004b8d}.mb-path span{color:#607789}
.mb-method-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.mb-method-card{display:flex;flex-direction:column;background:#fff;border:1px solid #d9e8f0;border-radius:4px;overflow:hidden;transition:.25s}.mb-method-card:hover{transform:translateY(-7px);box-shadow:0 24px 45px rgba(0,75,141,.14)}.mb-method-card img{height:260px}.mb-method-card div{display:flex;flex-direction:column;flex:1;padding:26px}.mb-method-card p{color:#607789}.mb-method-card span{margin-top:auto;color:#0087c6;font-family:"Montserrat",sans-serif;font-weight:900;text-transform:uppercase;font-size:.78rem}
.mb-numbers{background:#004b8d;color:#fff}.mb-numbers h2{color:#fff}.mb-numbers .eyebrow{color:#f7c71b}.mb-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;text-align:center}.mb-stats div{padding:34px 20px;border:1px solid rgba(255,255,255,.2)}.mb-stats strong{display:block;color:#f7c71b;font-family:"Montserrat",sans-serif;font-size:3.5rem;line-height:1}.mb-stats span{display:block;margin-top:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.mb-teacher-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.mb-teacher-strip article{background:#fff;border:1px solid #d9e8f0;border-radius:4px;overflow:hidden}.mb-teacher-strip img{height:300px;object-position:center 22%}.mb-teacher-strip h3,.mb-teacher-strip p{padding:0 24px}.mb-teacher-strip h3{margin-top:24px}.mb-teacher-strip p{padding-bottom:26px;color:#607789}
.mb-mission{background:linear-gradient(135deg,#e7f7fb,#fff8d7)}.mb-mission-text{display:grid;gap:24px}.mb-mission-text p{margin:0;padding:26px;background:#fff;border-left:6px solid #f7c71b;box-shadow:0 14px 34px rgba(0,75,141,.08)}.mb-tour__box{position:relative;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:50px;padding:38px;background:#004b8d;color:#fff;overflow:hidden}.mb-tour__box img{height:420px;border-radius:4px}.mb-tour__box h2{color:#fff}.mb-tour__box p{color:#dceff6}.mb-tour__box:after{content:"";position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;border:48px solid rgba(247,199,27,.22)}
.maple-home .footer{margin-top:0}.maple-home .footer-main{grid-template-columns:1.35fr .8fr .8fr 1.05fr}
@media(max-width:1180px){.maple-header .nav{gap:13px}.maple-header .nav a{font-size:.68rem}.mb-method-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:980px){.maple-header .nav{top:104px}.mb-hero{min-height:720px}.mb-two-col{grid-template-columns:1fr;gap:44px}.mb-benefits{grid-template-columns:repeat(2,1fr)}.mb-stats{grid-template-columns:repeat(2,1fr)}.mb-tour__box{grid-template-columns:1fr}.mb-tour__box img{height:360px}.mb-path div{grid-template-columns:1fr}}
@media(max-width:650px){.maple-topbar{display:none}.maple-header .nav-wrap{height:72px}.mb-hero{min-height:650px}.mb-hero__content{padding:72px 0 42px}.mb-hero h1{font-size:clamp(2.65rem,13vw,4.2rem)}.mb-hero__content>p:not(.mb-kicker){font-size:1.02rem}.mb-hero__actions .btn{width:100%}.mb-photo-grid{grid-template-columns:1fr;grid-auto-rows:230px}.mb-photo-grid img:first-child{grid-row:auto}.mb-benefits,.mb-method-grid,.mb-teacher-strip,.mb-stats{grid-template-columns:1fr}.mb-benefits article{min-height:auto}.mb-image-panel img{height:420px}.mb-tour__box{padding:24px}.mb-tour__box img{height:260px}.mb-stats strong{font-size:2.7rem}}

/* Unified Maple-inspired system for every internal page */
.maple-site{font-family:"Nunito Sans",system-ui,-apple-system,sans-serif;background:#fff;color:#17324a}
.maple-site h1,.maple-site h2,.maple-site h3,.maple-site .nav a,.maple-site .btn{font-family:"Montserrat",system-ui,sans-serif;letter-spacing:0}
.maple-site .site-header{background:#fff;border-bottom:1px solid rgba(0,75,141,.12);box-shadow:0 8px 24px rgba(0,75,141,.08)}
.maple-site .topbar{background:#004b8d;color:#fff;text-transform:uppercase;letter-spacing:.06em;font-size:.72rem;font-weight:800}
.maple-site .nav-wrap{height:92px}
.maple-site .nav{gap:20px}
.maple-site .nav a{font-size:.74rem;text-transform:uppercase;font-weight:800;color:#12324b;padding:34px 0}
.maple-site .nav a:hover,.maple-site .nav a.active{color:#0087c6}
.maple-site .nav a.active:after{bottom:24px;background:#f7c71b;height:4px}
.maple-site .page-hero{padding:96px 0 76px;background:linear-gradient(135deg,#f7fbff 0%,#e7f7fb 62%,#fff8d7 100%);border-bottom:1px solid rgba(0,75,141,.08)}
.maple-site .page-hero:after{border-radius:0;width:36vw;height:100%;right:0;top:0;background:linear-gradient(135deg,rgba(247,199,27,.18),rgba(0,135,198,.08));clip-path:polygon(28% 0,100% 0,100% 100%,0 100%)}
.maple-site .page-hero h1{font-size:clamp(2.65rem,5vw,4.8rem);font-weight:900;letter-spacing:-.03em}
.maple-site .breadcrumb{font-family:"Montserrat",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;color:#0087c6}
.maple-site .lead{color:#607789}
.maple-site .section{padding:96px 0}
.maple-site .soft{background:#f7fbff}
.maple-site .sky{background:#e7f7fb}
.maple-site .card,.maple-site .program-card,.maple-site .blog-card,.maple-site .branch-card,.maple-site .teacher,.maple-site .teacher-profile,.maple-site .registration-form,.maple-site .contact-panel,.maple-site .schedule-guide__panel,.maple-site .schedule-helper,.maple-site .schedule-filters,.maple-site .price-card{border-radius:4px}
.maple-site .card,.maple-site .program-card,.maple-site .blog-card,.maple-site .branch-card,.maple-site .teacher,.maple-site .teacher-profile,.maple-site .registration-form{border-color:#d9e8f0;box-shadow:none}
.maple-site .card:hover,.maple-site .program-card:hover,.maple-site .blog-card:hover,.maple-site .branch-card:hover,.maple-site .teacher-profile:hover{box-shadow:0 24px 45px rgba(0,75,141,.14)}
.maple-site .program-card img,.maple-site .blog-card img,.maple-site .teacher img,.maple-site .teacher-profile__photo img{border-radius:0}
.maple-site .tag{background:#e7f7fb;color:#0087c6;font-family:"Montserrat",system-ui,sans-serif;text-transform:uppercase;letter-spacing:.04em}
.maple-site .icon{border-radius:4px;background:#e7f7fb}
.maple-site .btn{background:#f7c71b;color:#004b8d;border-color:#004b8d;box-shadow:0 10px 24px rgba(247,199,27,.28)}
.maple-site .btn:hover{color:#004b8d;transform:translateY(-3px);box-shadow:0 14px 30px rgba(247,199,27,.38)}
.maple-site .btn-outline{background:#fff;color:#004b8d;border:2px solid #004b8d;box-shadow:none}
.maple-site .btn-outline:hover{background:#004b8d;color:#fff;box-shadow:0 12px 28px rgba(0,75,141,.18)}
.maple-site .field input,.maple-site .field select,.maple-site .field textarea{border-radius:4px;background:#fbfdfd}
.maple-site .contact-panel{background:linear-gradient(145deg,#004b8d,#0087c6)}
.maple-site .cta-band{border-radius:4px;background:#004b8d}
.maple-site .schedule-card{border-radius:4px}
.maple-site .schedule-card .day{border-radius:4px}
.maple-site .footer{margin-top:0}
.maple-site:not(.maple-home) .footer{margin-top:80px}
@media(min-width:981px){.mb-slide img{object-position:center 18%}.mb-hero__content{max-width:var(--max);text-align:left}.mb-hero h1{max-width:780px}.mb-hero__content>p:not(.mb-kicker){max-width:680px}.mb-hero__actions{justify-content:flex-start}}
@media(max-width:1180px){.maple-site .nav{gap:13px}.maple-site .nav a{font-size:.68rem}}
@media(max-width:980px){.maple-site .nav{top:104px}.maple-site .nav a{padding:10px 0;font-size:.94rem}.maple-site .page-hero{padding:78px 0 60px}}
@media(max-width:650px){.maple-site .topbar{display:none}.maple-site .nav-wrap{height:72px}.maple-site .page-hero{padding:56px 0 44px}.maple-site .section{padding:64px 0}.maple-site .page-hero:after{opacity:.45;width:70vw}.maple-site .nav{top:82px}}

/* Header variant requested by client */
.maple-site .topbar{display:none}
.maple-site .site-header{top:0;background:#fff;border-bottom:1px solid rgba(0,75,141,.12);box-shadow:none}
.maple-site .site-header{position:fixed;left:0;right:0;z-index:1000;transition:box-shadow .28s ease,background-color .28s ease,backdrop-filter .28s ease,transform .28s ease}
.maple-site{padding-top:90px}
.maple-site .site-header.is-scrolled{background:rgba(255,255,255,.94);backdrop-filter:blur(16px);box-shadow:0 12px 34px rgba(0,75,141,.13)}
.maple-site .site-header.is-scrolled .nav-wrap{height:76px}
.maple-site .site-header.is-scrolled .logo{height:58px}
.maple-site .nav-wrap{width:min(100% - 40px,1240px);height:90px;gap:26px}
.maple-site .site-header .logo{width:150px;height:65px;flex:0 0 150px;margin-right:auto;background-position:left center}
.maple-site .nav{gap:20px;margin-left:auto}
.maple-site .nav a{padding:34px 0 31px;font-size:.78rem;line-height:1;text-transform:uppercase;font-weight:700;color:#12324b}
.maple-site .nav a.active,.maple-site .nav a:hover{color:#0087c6}
.maple-site .nav a.active:after{bottom:27px;height:4px;background:#f7c71b}
.maple-site .lang{width:60px;height:40px;margin-left:10px;border-radius:9px;border-color:#d6e5ee;color:#111;background:#fff}
.maple-site .mb-hero{min-height:calc(100vh - 90px)}
@media(max-width:1180px){.maple-site .nav-wrap{gap:16px}.maple-site .site-header .logo{width:138px;height:60px;flex-basis:138px}.maple-site .nav{gap:13px}.maple-site .nav a{font-size:.68rem}}
@media(max-width:980px){.maple-site .nav{top:90px;gap:0;padding:10px 16px}.maple-site .site-header.is-scrolled .nav{top:76px}.maple-site .nav a{padding:10px 2px;font-size:.82rem;line-height:1.15}.maple-site .lang{margin-left:auto}.maple-site .menu-toggle{display:block}}
@media(max-width:650px){.maple-site{padding-top:72px}.maple-site .nav-wrap{height:72px}.maple-site .site-header.is-scrolled .nav-wrap{height:64px}.maple-site .site-header .logo{width:122px;height:58px;flex-basis:122px}.maple-site .site-header.is-scrolled .logo{height:52px}.maple-site .nav{top:72px;padding:8px 14px;border-radius:16px}.maple-site .site-header.is-scrolled .nav{top:64px}.maple-site .nav a{padding:8px 2px;font-size:.8rem}.maple-site .mb-hero{min-height:calc(100vh - 72px)}}

/* Photo-led inner page hero sections */
.maple-site .page-hero{min-height:430px;display:flex;align-items:center;padding:92px 0 78px;background:linear-gradient(135deg,#f7fbff 0%,#e7f7fb 62%,#fff8d7 100%)}
.maple-site .page-hero .container{position:relative;z-index:3;max-width:1240px}
.maple-site .page-hero .breadcrumb,.maple-site .page-hero h1,.maple-site .page-hero .lead{max-width:670px}
.maple-site .page-hero:before{content:"";position:absolute;z-index:1;top:0;right:0;bottom:0;width:min(43vw,760px);background-image:linear-gradient(90deg,rgba(231,247,251,.62),rgba(255,255,255,.05)),var(--hero-photo);background-size:cover;background-position:center;clip-path:polygon(24% 0,100% 0,100% 100%,0 100%);opacity:.96}
.maple-site .page-hero:after{content:"";position:absolute;z-index:2;top:0;right:0;bottom:0;width:min(43vw,760px);height:auto;background:linear-gradient(135deg,rgba(247,199,27,.16),rgba(0,135,198,.08));clip-path:polygon(24% 0,100% 0,100% 100%,0 100%);pointer-events:none}
@media(max-width:980px){.maple-site .page-hero{min-height:390px;padding:76px 0 62px}.maple-site .page-hero:before,.maple-site .page-hero:after{width:48vw;opacity:.42}.maple-site .page-hero .breadcrumb,.maple-site .page-hero h1,.maple-site .page-hero .lead{max-width:620px}}
@media(max-width:650px){.maple-site .page-hero{min-height:auto;padding:58px 0 46px}.maple-site .page-hero:before,.maple-site .page-hero:after{width:78vw;opacity:.18}.maple-site .page-hero h1{font-size:2.45rem}}

/* Final inner-page hero tuning */
.maple-site .page-hero h1{font-size:clamp(2.25rem,4vw,3rem)!important;line-height:1.08;letter-spacing:-.035em}
@media(max-width:650px){.maple-site .page-hero h1{font-size:clamp(2rem,9vw,2.45rem)!important}}
@media(max-width:650px){.image-lightbox{padding:14px}.image-lightbox__top{align-items:flex-start;gap:10px}.image-lightbox__top strong{font-size:.9rem;line-height:1.35}.image-lightbox__actions{gap:6px;flex-shrink:0}.image-lightbox__zoom,.image-lightbox__close{min-width:38px;width:38px;height:38px}.image-lightbox__zoom-reset{min-width:58px;width:auto;font-size:.76rem}.image-lightbox__stage{height:78vh;border-radius:14px}.image-lightbox__hint{display:none}}

/* Small-phone hero button text */
.label-compact{display:none}
@media(max-width:430px){.mb-hero__actions .btn{white-space:nowrap;font-size:.92rem;padding-inline:16px;letter-spacing:0}.mb-hero__actions .label-full{display:none}.mb-hero__actions .label-compact{display:inline}.mb-hero__actions{gap:12px}}
@media(max-width:1180px){.about-traits--compact{grid-template-columns:1fr}}
@media(max-width:980px){.about-alt{grid-template-columns:1fr;gap:46px}.about-alt--reverse .about-alt__media,.about-alt--reverse .about-alt__content{order:initial}.about-alt__media img{height:430px}.about-traits{grid-template-columns:repeat(2,minmax(0,1fr))}.about-traits--compact{grid-template-columns:1fr}}
@media(max-width:650px){.about-alt{gap:34px}.about-alt__media:before{inset:16px -14px -14px 14px}.about-alt--reverse .about-alt__media:before{inset:16px 14px -14px -14px}.about-alt__media img{height:320px}.about-alt__content h2{font-size:1.95rem}.about-alt__content .lead{font-size:1rem}.about-traits{grid-template-columns:1fr}.about-traits article{min-height:auto;padding:24px}.about-blue:after{opacity:.45}}

/* Footer mobile correction */
@media(max-width:900px){.maple-site .footer-main,.maple-home .footer-main{grid-template-columns:1fr 1fr;gap:34px}.maple-site .footer-lead{grid-template-columns:1fr;gap:28px}.maple-site .footer-lead__action .btn{max-width:420px}}
@media(max-width:620px){.maple-site .footer{padding:54px 0 24px;overflow:hidden}.maple-site .footer-content{width:calc(100% - 32px)}.maple-site .footer-main,.maple-home .footer-main{grid-template-columns:1fr!important;gap:26px;padding:36px 0}.maple-site .footer-column{min-width:0}.maple-site .footer-column>a,.maple-site .footer-contact__item{font-size:.98rem;overflow-wrap:anywhere}.maple-site .footer-brand{display:block}.maple-site .footer-brand img{margin-bottom:16px}.maple-site .footer-lead__action .btn{width:100%;max-width:none;padding-inline:18px;text-align:center}.maple-site .footer-bottom{grid-template-columns:1fr;text-align:left}.maple-site .footer-bottom>span:last-child{text-align:left}.maple-site .footer-bottom>div{flex-wrap:wrap}}


/* Warm botanical customer palette */
body{background:#fbf4e9;color:#241f1a}
h1,h2,h3,.field label,.price,.stat strong{color:#241f1a}
.lead,.card p,.section-head p,.muted,.schedule-meta,.branch-hours span{color:#6f6a60}
.site-header,.maple-header{background:rgba(255,249,239,.94);border-bottom-color:rgba(166,132,93,.18);box-shadow:0 10px 30px rgba(75,54,30,.05)}
.topbar,.maple-topbar{background:#243c25;color:#fff6ea}
.nav a:hover,.nav a.active,.breadcrumb,.eyebrow,.tag,.teacher-profile__body .role,.blog-card time,.branch-schedule-switch button span,.schedule-event .day{color:#6f9f58}
.nav a.active:after,.eyebrow:before,.btn,.ribbon,.checklist li:before,.enrollment-banner__icon{background:#eda544}
.btn,.btn:link,.btn:visited,.btn:hover,.btn:active{background:#6f9f58;color:#fff!important;box-shadow:0 12px 28px rgba(111,159,88,.24)}
.btn:hover{background:#5f8d4b;box-shadow:0 16px 36px rgba(111,159,88,.32)}
.btn-outline{background:rgba(255,249,239,.74);border-color:#bba98e;color:#241f1a!important;box-shadow:none}
.btn-outline:hover{background:#fff7eb;border-color:#6f9f58;color:#243c25!important}
.btn-white{background:#fffaf1;color:#243c25!important}
.card,.schedule-guide__panel,.branch-schedule-head,.schedule-day-column,.school-year-card,.calendar-breaks-card,.field input,.field select,.field textarea,.registration-form{background:#fffaf1;border-color:#e6dccd;box-shadow:0 16px 42px rgba(75,54,30,.06)}
.card:hover{box-shadow:0 22px 54px rgba(75,54,30,.12)}
.soft,.sky,.calendar-breaks-section,.schedule-directory-section{background:#fbf4e9}
.icon,.tag,.event-tag,.date-pills span,.school-year-card__dates div{background:#eef4e7;color:#6f9f58}
.feature:nth-child(2n) .icon{background:#f8ead4;color:#eda544}.feature:nth-child(3n) .icon{background:#eaf1df;color:#6f9f58}
.page-hero,.maple-site .page-hero{background:linear-gradient(135deg,#fff8ee 0%,#f6efe3 58%,#e9f0df 100%)}
.maple-site .page-hero:before{background-image:linear-gradient(90deg,rgba(255,248,238,.74),rgba(255,248,238,.1)),var(--hero-photo);filter:saturate(.92) sepia(.06)}
.maple-site .page-hero:after{background:linear-gradient(135deg,rgba(111,159,88,.16),rgba(237,165,68,.12))}
.hero,.mb-hero{background-color:#fbf4e9}
.mb-hero:before,.hero:before{background:linear-gradient(90deg,rgba(251,244,233,.98) 0%,rgba(251,244,233,.86) 44%,rgba(251,244,233,.12) 76%)}
.mb-hero__kicker,.mb-stat strong,.mb-section-kicker{color:#6f9f58}
.mb-hero__actions .btn:first-child,.mb-final .btn,.enrollment-banner__button{background:#6f9f58;color:#fff!important}
.mb-hero__actions .btn-outline{background:rgba(255,250,241,.78);color:#241f1a!important;border-color:#bba98e}
.mb-benefit-strip,.mb-welcome-card,.mb-program-card,.mb-proof-card{background:rgba(255,250,241,.92);border-color:#e6dccd;box-shadow:0 16px 42px rgba(75,54,30,.08)}
.mb-benefit-icon{color:#6f9f58;background:#eef4e7}.mb-benefit:nth-child(2n) .mb-benefit-icon{color:#78bfd1;background:#eef8f9}.mb-benefit:nth-child(3n) .mb-benefit-icon{color:#eda544;background:#fbecd7}
.mb-program-card__button,.program-card .btn,.blog-more{background:#6f9f58;color:#fff!important}
.about-blue,.schedule-helper,.cta-band,.contact-panel,.calendar-breaks-card--accent{background:linear-gradient(145deg,#4f7441,#6f9f58);color:#fff}
.about-blue h2,.about-blue .lead,.schedule-helper h2,.schedule-helper p,.cta-band h2,.contact-panel h2,.contact-panel h3,.calendar-breaks-card--accent h3{color:#fff}
.schedule-card .day,.schedule-event .day span{background:#243c25;color:#fff6ea}
.schedule-card:before{background:linear-gradient(90deg,#6f9f58,#eda544)}
.schedule-directory .schedule-card{border-left-color:#6f9f58}.schedule-directory .schedule-card[data-type="studio"]{border-left-color:#eda544}.schedule-directory .schedule-card[data-type="language"]{border-left-color:#78bfd1}.schedule-directory .schedule-card[data-type="play"]{border-left-color:#d9824f}
.schedule-guide__steps li,.schedule-note,.empty-state,.branch-hours{background:#fff7eb;border-color:#e6dccd}
.branch-schedule-switch button{background:#fffaf1;border-color:#e6dccd;box-shadow:0 10px 26px rgba(75,54,30,.06)}
.branch-schedule-switch button:hover,.branch-schedule-switch button.is-active{border-color:#6f9f58;background:linear-gradient(135deg,#fffaf1,#eef4e7)}
.branch-schedule-switch button.is-active{box-shadow:inset 0 -4px 0 #eda544,0 14px 30px rgba(75,54,30,.09)}
.branch-card .map{background:linear-gradient(35deg,#e8f0df,#faead2)}
.footer{background:linear-gradient(145deg,#243c25 0%,#365f34 58%,#5e854a 100%);color:#f4efe6}
.footer:before{background:radial-gradient(circle at 82% 15%,rgba(237,165,68,.15),transparent 24%),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:auto,48px 48px,48px 48px}
.footer h2,.footer h3,.footer a.btn{color:#fff!important}.footer-column>a:hover,.footer-bottom a:hover,.footer a:hover{color:#f4c57b}
.enrollment-banner{background:rgba(36,60,37,.97);border-top-color:#eda544;box-shadow:0 -16px 40px rgba(36,60,37,.22)}
.enrollment-banner__copy span{color:#efe3d3}.enrollment-banner__icon{color:#243c25;background:#eda544}
.image-lightbox{background:rgba(36,60,37,.9)}
@media(max-width:980px){.nav{background:#fffaf1;border:1px solid #e6dccd;box-shadow:0 20px 50px rgba(75,54,30,.14)}}


/* Warm botanical homepage details */
.mb-hero{background:#fbf4e9}
.mb-slide{background:#fbf4e9}.mb-slide img{filter:saturate(.92) sepia(.08) brightness(1.04)}
.mb-hero__overlay{background:linear-gradient(90deg,rgba(251,244,233,.96) 0%,rgba(251,244,233,.82) 37%,rgba(251,244,233,.35) 68%,rgba(251,244,233,.08) 100%),linear-gradient(0deg,rgba(111,159,88,.16),transparent 42%)}
.mb-hero__content{color:#241f1a}.mb-hero h1{color:#241f1a}.mb-kicker{color:#6f9f58}.mb-hero__content>p:not(.mb-kicker){color:#514b43}
.mb-hero__controls button{border-color:rgba(36,60,37,.24);background:rgba(255,250,241,.58);color:#243c25}.mb-hero__controls button:hover{background:#6f9f58;color:#fff}.mb-dots button{background:rgba(36,60,37,.22)}.mb-dots button.is-active{background:#6f9f58}
.mb-promise{background:#fbf4e9}.mb-benefits{background:#e6dccd;border-color:#e6dccd}.mb-benefits article{background:#fffaf1}.mb-benefits article:hover{background:#eef4e7}.mb-benefits span{color:#6f9f58}.mb-benefits p{color:#6f6a60}
.mb-image-panel:before{background:#eda544}.mb-image-panel img,.mb-photo-grid img{box-shadow:0 22px 48px rgba(75,54,30,.14)}
.mb-path div{border-top-color:#e6dccd}.mb-path strong{color:#243c25}.mb-path span{color:#6f6a60}
.mb-method-card{background:#fffaf1;border-color:#e6dccd}.mb-method-card:hover{box-shadow:0 24px 45px rgba(75,54,30,.14)}.mb-method-card p{color:#6f6a60}.mb-method-card span{color:#6f9f58}
.mb-numbers{background:linear-gradient(145deg,#4f7441,#6f9f58);color:#fff}.mb-numbers h2{color:#fff}.mb-numbers .eyebrow,.mb-stats strong{color:#f4c57b}.mb-stats div{border-color:rgba(255,255,255,.26)}
.mb-mission{background:linear-gradient(135deg,#eef4e7,#fbf4e9)}.mb-mission-text p{background:#fffaf1;border-left-color:#eda544;box-shadow:0 14px 34px rgba(75,54,30,.08)}
.mb-tour__box{background:linear-gradient(145deg,#4f7441,#6f9f58);color:#fff}.mb-tour__box h2{color:#fff}.mb-tour__box p{color:#fff3e5}.mb-tour__box:after{border-color:rgba(237,165,68,.28)}
.source-schedule-card__image span{background:rgba(36,60,37,.92)}
.about-alt--reverse .about-alt__media:before{background:#eef4e7}.about-feature-list span{background:#eef4e7;color:#4f7441}.about-alt__media img{box-shadow:0 24px 50px rgba(75,54,30,.14)}

/* Warm palette refinement: less green, no blue cast */
body{background:#fbf4e9}
.site-header,.maple-header,.maple-site .site-header{background:rgba(255,250,243,.96)!important;border-bottom-color:#e8dfd2!important;box-shadow:0 8px 24px rgba(52,42,32,.055)!important}
.nav a,.maple-header .nav a,.maple-site .nav a{color:#241f1a!important;font-weight:700}
.nav a:hover,.nav a.active,.maple-header .nav a:hover,.maple-header .nav a.active,.maple-site .nav a:hover,.maple-site .nav a.active{color:#241f1a!important}
.nav a.active:after,.maple-header .nav a.active:after,.maple-site .nav a.active:after{background:#6f9f58!important}
.lang{border-color:#d8cbbb;background:#fffaf3;color:#241f1a}
.topbar,.maple-topbar,.maple-site .topbar{background:#3b342b!important;color:#fff5e8!important}
.soft,.sky,.mb-promise,.calendar-breaks-section,.schedule-directory-section,.maple-site .soft,.maple-site .sky{background:#fffaf3!important}
.page-hero,.maple-site .page-hero{background:linear-gradient(135deg,#fffaf3 0%,#fbf4e9 62%,#f5eddf 100%)!important;border-bottom-color:#eadfce!important}
.maple-site .page-hero:before{background-image:linear-gradient(90deg,rgba(255,250,243,.72),rgba(255,250,243,.08)),var(--hero-photo)!important}
.maple-site .page-hero:after{background:linear-gradient(135deg,rgba(237,165,68,.13),rgba(111,159,88,.08))!important}
.card,.mb-welcome-card,.mb-program-card,.mb-proof-card,.mb-benefit-strip,.mb-benefits article,.mb-method-card,.schedule-guide__panel,.schedule-day-column,.branch-schedule-head,.branch-schedule-switch button,.school-year-card,.calendar-breaks-card,.registration-form{background:#fffdf8!important;border-color:#e8dfd2!important}
.icon,.tag,.event-tag,.date-pills span,.school-year-card__dates div,.about-feature-list span{background:#f4efe4!important;color:#6f8f56!important}
.field input,.field select,.field textarea{background:#fffdf8;border-color:#ded2c1}
.schedule-guide__steps li,.schedule-note,.empty-state,.branch-hours,.schedule-event{background:#fffaf3!important;border-color:#e8dfd2!important}
.about-blue,.schedule-helper,.cta-band,.contact-panel,.calendar-breaks-card--accent,.mb-numbers,.mb-tour__box{background:linear-gradient(145deg,#5d5142,#76654f)!important;color:#fffaf1!important}
.about-blue h2,.about-blue .lead,.schedule-helper h2,.schedule-helper p,.cta-band h2,.contact-panel h2,.contact-panel h3,.calendar-breaks-card--accent h3,.mb-numbers h2,.mb-tour__box h2,.mb-tour__box p{color:#fffaf1!important}
.btn,.btn:link,.btn:visited,.btn:hover,.btn:active{background:#6f9f58;color:#fff!important}
.btn-outline{background:#fffaf3!important;border-color:#b9aa96!important;color:#241f1a!important}.btn-outline:hover{border-color:#6f9f58!important;background:#f5efe5!important;color:#241f1a!important}
.footer{background:linear-gradient(145deg,#3b342b 0%,#4c4235 58%,#6d5d48 100%)!important;color:#f6eee3!important}
.footer:before{background:radial-gradient(circle at 82% 15%,rgba(237,165,68,.12),transparent 24%),linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px)!important;background-size:auto,48px 48px,48px 48px!important}
.footer h2,.footer h3{color:#fffaf1!important}.footer a:hover,.footer-column>a:hover,.footer-bottom a:hover{color:#f0b560!important}
.enrollment-banner{background:rgba(59,52,43,.97)!important;border-top-color:#6f9f58!important}
.enrollment-banner__icon{background:#6f9f58!important;color:#fff!important}
.mb-benefit-icon{background:#f4efe4!important;color:#6f8f56!important}.mb-benefit:nth-child(2n) .mb-benefit-icon{background:#f4efe4!important;color:#7f9b72!important}.mb-benefit:nth-child(3n) .mb-benefit-icon{background:#f7ead6!important;color:#eda544!important}
.mb-benefits article:hover,.branch-schedule-switch button:hover,.branch-schedule-switch button.is-active{background:#f7f1e7!important}
.mb-hero__overlay{background:linear-gradient(90deg,rgba(251,244,233,.96) 0%,rgba(251,244,233,.82) 38%,rgba(251,244,233,.34) 68%,rgba(251,244,233,.08) 100%)!important}
@media(max-width:980px){.nav,.maple-site .nav{background:#fffaf3!important;border-color:#e8dfd2!important}}

/* Light cream footer and accent blocks refinement */
.footer{background:linear-gradient(135deg,#f7f1e6 0%,#fffaf2 52%,#f1eadb 100%)!important;color:#241f1a!important;border-top:1px solid #e8dfd2;box-shadow:0 -18px 45px rgba(75,54,30,.055)}
.footer:before{background:radial-gradient(circle at 8% 20%,rgba(111,159,88,.13),transparent 22%),radial-gradient(circle at 84% 8%,rgba(237,165,68,.12),transparent 20%)!important;background-size:auto!important}
.footer h2,.footer h3,.footer-brand .eyebrow{color:#241f1a!important}.footer p,.footer-column>a,.footer-contact__item,.footer-bottom,.footer-bottom a{color:#5f584d!important}.footer a:hover,.footer-column>a:hover,.footer-bottom a:hover{color:#6f9f58!important}
.footer-contact__item,.footer-locations a{border-color:#e2d7c7!important;background:rgba(255,255,255,.34)}
.footer-socials a{border-color:#cfc1ae!important;color:#6f9f58!important;background:#fffaf3}.footer-socials a:hover{background:#6f9f58!important;color:#fff!important}
.footer .btn,.footer a.btn{background:#6f9f58!important;color:#fff!important;box-shadow:0 12px 28px rgba(111,159,88,.22)}
.footer-bottom{border-top-color:#e2d7c7!important}
.about-blue,.schedule-helper,.cta-band,.contact-panel,.calendar-breaks-card--accent,.mb-numbers,.mb-tour__box{background:linear-gradient(135deg,#f7f1e6 0%,#fffaf2 54%,#f1eadb 100%)!important;color:#241f1a!important;border:1px solid #e8dfd2!important;box-shadow:0 18px 42px rgba(75,54,30,.07)!important}
.about-blue h2,.about-blue .lead,.schedule-helper h2,.schedule-helper p,.cta-band h2,.contact-panel h2,.contact-panel h3,.calendar-breaks-card--accent h3,.mb-numbers h2,.mb-tour__box h2,.mb-tour__box p{color:#241f1a!important}
.about-blue .eyebrow,.schedule-helper .eyebrow,.cta-band .eyebrow,.contact-panel .eyebrow,.mb-numbers .eyebrow{color:#6f9f58!important}
.cta-band .btn,.schedule-helper .btn,.contact-panel .btn,.mb-tour__box .btn{background:#6f9f58!important;color:#fff!important}
.mb-stats div{border-color:#e2d7c7!important;background:rgba(255,255,255,.42)}.mb-stats strong{color:#6f9f58!important}.mb-stats span{color:#5f584d!important}
.enrollment-banner{background:linear-gradient(135deg,#f7f1e6 0%,#fffaf2 100%)!important;color:#241f1a!important;border-top-color:#6f9f58!important;box-shadow:0 -16px 40px rgba(75,54,30,.12)}
.enrollment-banner__copy strong{color:#241f1a!important}.enrollment-banner__copy span{color:#5f584d!important}.enrollment-banner__button{background:#6f9f58!important;color:#fff!important}
.enrollment-banner__icon{background:#6f9f58!important;color:#fff!important}

/* Updated Meridian logo asset */
.site-header .logo,.maple-header .logo,.maple-site .site-header .logo{background-image:url('../assets/meridian-logo.png')!important;background-position:center!important;background-size:contain!important;background-repeat:no-repeat!important;width:178px;height:68px;flex:0 0 178px}
.footer-brand img{content:url('../assets/meridian-logo.png')}
@media(max-width:650px){.site-header .logo,.maple-header .logo,.maple-site .site-header .logo{width:122px;height:58px;flex-basis:122px}}

/* White sections and unified green buttons */
.section:not(.soft):not(.sky):not(.calendar-breaks-section):not(.schedule-directory-section):not(.mb-numbers){background:#fff!important}
.section-head .btn,.section-head .btn-outline,.cta-band .btn,.schedule-helper .btn,.contact-panel .btn,.footer .btn,.enrollment-banner__button,.blog-more,.program-card .btn,.mb-program-card__button,.btn{background:#6f9f58!important;border-color:#6f9f58!important;color:#fff!important;box-shadow:0 12px 28px rgba(111,159,88,.22)!important}
.section-head .btn:hover,.section-head .btn-outline:hover,.cta-band .btn:hover,.schedule-helper .btn:hover,.contact-panel .btn:hover,.footer .btn:hover,.enrollment-banner__button:hover,.blog-more:hover,.program-card .btn:hover,.mb-program-card__button:hover,.btn:hover{background:#5f8d4b!important;border-color:#5f8d4b!important;color:#fff!important;box-shadow:0 16px 34px rgba(111,159,88,.3)!important}
.btn-outline,.btn-white{background:#6f9f58!important;border-color:#6f9f58!important;color:#fff!important}
.btn-outline:hover,.btn-white:hover{background:#5f8d4b!important;border-color:#5f8d4b!important;color:#fff!important}
.card .btn,.teacher-profile .btn,.blog-card .btn,.price-card .btn,.branch-card .btn{background:#6f9f58!important;border-color:#6f9f58!important;color:#fff!important}
.footer .btn,.footer a.btn{background:#6f9f58!important;border-color:#6f9f58!important;color:#fff!important}
.mb-hero__actions .btn-outline{background:#fffaf3!important;border-color:#6f9f58!important;color:#241f1a!important;box-shadow:none!important}.mb-hero__actions .btn-outline:hover{background:#6f9f58!important;color:#fff!important}

/* Footer contact and locations contrast fix */
.footer-contact__item,.footer-locations a{display:block;background:#fffdf8!important;border:1px solid #ddd0bd!important;border-radius:14px;padding:14px 16px!important;color:#241f1a!important;box-shadow:0 10px 24px rgba(75,54,30,.045)}
.footer-contact__item span,.footer-locations a span{color:#6f9f58!important;font-weight:800;text-transform:uppercase;letter-spacing:.07em;font-size:.72rem}
.footer-contact__item strong,.footer-contact__item strong a,.footer-locations a strong{color:#241f1a!important;font-weight:900!important}
.footer-locations a{display:grid!important;grid-template-columns:86px 1fr;gap:10px;align-items:center;margin-bottom:8px!important}
.footer-socials a{background:#fffdf8!important;border:1px solid #cfc1ae!important;color:#6f9f58!important;font-weight:900!important}
.footer-socials a:hover{background:#6f9f58!important;border-color:#6f9f58!important;color:#fff!important}
@media(max-width:620px){.footer-locations a{grid-template-columns:1fr;gap:2px}}

/* Typography weight and green text accents */
h1,h2,.maple-site .page-hero h1,.maple-site h1,.maple-site h2,.mb-hero h1,.about-alt__content h2,.section-head h2{font-weight:700!important}
.breadcrumb,.maple-site .breadcrumb,.eyebrow,.maple-site .eyebrow,.lead,.maple-site .page-hero .lead,.page-hero .lead,.section-head p,.card p,.schedule-meta,.about-alt__content .lead{color:#6f9f58!important}
.page-hero .lead,.maple-site .page-hero .lead{color:#6f9f58!important}
.tag,.event-tag,.teacher-profile__body .role,.blog-card time,.branch-schedule-switch button span,.schedule-event .day,.school-year-card__dates strong{color:#6f9f58!important}
.mb-hero__content>p:not(.mb-kicker),.mb-benefits p,.mb-method-card p,.mb-path span{color:#5f584d!important}

/* Customer content update: leadership, speech centre and contact shortcuts */
.leadership-strip article{display:flex;flex-direction:column;overflow:hidden;background:#fff;border:1px solid #e8dfd2;border-radius:22px;box-shadow:0 16px 38px rgba(75,54,30,.07)}
.leadership-strip article img{width:100%;height:290px;object-fit:cover;object-position:center top}
.leadership-strip article img{object-position:center center}
.leadership-strip .team-card-copy{padding:22px 24px 26px}
.leadership-strip .team-card-copy>span{display:inline-block;margin-bottom:9px;color:#6f9f58;font-size:.75rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.leadership-strip h3{margin:0 0 10px;font-size:1.18rem;line-height:1.25}
.leadership-strip p{margin:0;color:#625a50!important}
.speech-center-teaser{background:#fff!important}
.speech-center-teaser__inner{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:clamp(36px,7vw,100px);align-items:center;padding:clamp(34px,5vw,70px);border:1px solid #e7ddce;border-radius:30px;background:linear-gradient(135deg,#fffaf2 0%,#f4eee2 100%);overflow:hidden}
.speech-center-teaser__inner h2{max-width:760px;margin:.35em 0;font-size:clamp(2rem,4vw,3.45rem);line-height:1.05}
.speech-center-teaser__inner p{max-width:760px;color:#625a50!important;font-size:1.05rem;line-height:1.75}
.speech-center-symbol{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:240px;align-content:center}
.speech-center-symbol span{display:grid;place-items:center;aspect-ratio:1;border-radius:28px;background:#fff;color:#6f9f58;font-size:clamp(3rem,7vw,6rem);font-weight:800;box-shadow:0 18px 45px rgba(75,54,30,.08)}
.speech-center-symbol strong{position:absolute;right:42%;bottom:2%;display:grid;width:62px;height:62px;place-items:center;border-radius:50%;background:#6f9f58;color:#fff;font-size:2rem}
.speech-center-section{background:#fff!important}
.speech-specialist{position:relative;padding-top:56px!important}
.speech-specialist>span{position:absolute;top:20px;right:22px;color:#e99b3b;font-size:1.05rem;font-weight:900}
.speech-specialist h3{font-size:1.15rem}
.speech-specialist p{color:#625a50!important}
.speech-center-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:28px;padding:26px 30px;border-radius:20px;background:#f7f1e6;border:1px solid #e7ddce}
.speech-center-cta p{max-width:850px;margin:0;color:#625a50!important}
.contact-options-section{background:#fff!important}
.contact-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.contact-option{display:grid;grid-template-columns:68px 1fr;gap:20px;align-items:start;padding:28px;border:1px solid #e4d9ca;border-radius:22px;background:#faf7f1;color:#241f1a!important;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.contact-option:hover{transform:translateY(-4px);border-color:#9fbd8d;box-shadow:0 18px 36px rgba(75,54,30,.09)}
.contact-option__icon{display:grid;width:62px;height:62px;place-items:center;border-radius:18px;background:#6f9f58;color:#fff;font-size:1.8rem;font-weight:900}
.contact-option h3{margin:1px 0 7px;font-size:1.35rem}
.contact-option p{margin:0 0 12px;color:#625a50!important}
.contact-option strong{color:#6f9f58}
.teacher-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch}
.teacher-profile{height:100%}
.teacher-profile__photo{background:#f7f1e8}
.teacher-profile__photo img{width:100%;height:310px!important;object-fit:cover;object-position:center center}
.teacher-profile__photo>span{max-width:calc(100% - 28px);line-height:1.3}
.teacher-profile__body p{color:#625a50!important}
.price-mini-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important}

@media(max-width:900px){
  .speech-center-teaser__inner{grid-template-columns:1fr}
  .speech-center-symbol{display:none}
  .teacher-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .contact-options{grid-template-columns:1fr}
  .contact-option{grid-template-columns:52px 1fr;padding:20px;gap:14px}
  .contact-option__icon{width:50px;height:50px;border-radius:14px;font-size:1.4rem}
  .speech-center-cta{align-items:stretch;flex-direction:column}
  .speech-center-cta .btn{width:100%}
  .leadership-strip article img{height:250px}
}
@media(max-width:540px){
  .teacher-grid{grid-template-columns:1fr!important}
  .teacher-profile__photo img{height:320px!important}
  .speech-center-teaser__inner{padding:28px 22px;border-radius:22px}
}

@media(min-width:1181px){
  .weekly-calendar.weekly-calendar--five{grid-template-columns:repeat(5,minmax(0,1fr))}
}
.association-band{background:#fff!important}
.association-band__inner{display:grid;grid-template-columns:180px 1fr;gap:36px;align-items:center;padding:34px 42px;border:1px solid #e7ddce;border-radius:26px;background:#faf7f1}
.association-mark{display:grid;place-items:center;width:150px;height:150px;border:2px solid #6f9f58;border-radius:50%;color:#6f9f58;font-size:2rem;font-weight:900;letter-spacing:.08em;box-shadow:inset 0 0 0 10px #f0eadf}
.association-band h2{margin:.25em 0;font-size:clamp(1.7rem,3vw,2.55rem)}
.association-band p{max-width:850px;margin:0;color:#625a50!important}
.social-newsletter{background:#f7f1e6!important}
.social-newsletter__inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.social-newsletter__inner>div:first-child{max-width:720px}
.social-newsletter__inner h2{margin:.25em 0}
.social-newsletter__inner p{color:#625a50!important}
.social-newsletter__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px}
.mb-about h2{font-size:35px!important;line-height:1.12}
.mb-about .lead,.mb-about p{color:#625a50!important}
.mb-about .lead{font-size:1.05rem}
@media(min-width:651px){
  .maple-site .mb-hero h1{font-size:65px!important;line-height:1.02}
}
@media(max-width:800px){
  .association-band__inner{grid-template-columns:1fr;padding:28px}
  .association-mark{width:110px;height:110px;font-size:1.5rem}
  .association-mark--logo{width:min(240px,100%)!important;min-height:0;padding:0!important}
  .social-newsletter__inner{align-items:stretch;flex-direction:column}
  .social-newsletter__actions{justify-content:flex-start}
}
@media(max-width:540px){
  .mb-about h2{font-size:30px!important}
}
@media(max-width:650px){
  .maple-site .mb-hero{
    min-height:620px!important;
    align-items:start;
  }
  .maple-site .mb-slide img{
    object-position:62% center!important;
  }
  .maple-site .mb-hero__overlay{
    background:
      linear-gradient(90deg,rgba(251,244,233,.94) 0%,rgba(251,244,233,.78) 62%,rgba(251,244,233,.38) 100%),
      linear-gradient(0deg,rgba(251,244,233,.9) 0%,rgba(251,244,233,.24) 34%,rgba(251,244,233,.08) 100%)!important;
  }
  .maple-site .mb-hero__content{
    padding:54px 0 36px!important;
    max-width:100%;
  }
  .maple-site .mb-kicker{
    margin-bottom:14px;
    font-size:.78rem;
  }
  .maple-site .mb-hero h1{
    max-width:360px;
    font-size:clamp(2.65rem,10.5vw,3.35rem)!important;
    line-height:1.02!important;
    margin-bottom:18px;
  }
  .maple-site .mb-hero__content>p:not(.mb-kicker){
    max-width:360px;
    font-size:.98rem!important;
    line-height:1.62;
  }
  .maple-site .mb-hero__actions{
    margin-top:28px;
  }
}
@media(max-width:390px){
  .maple-site .mb-hero{
    min-height:608px!important;
  }
  .maple-site .mb-hero h1{
    max-width:320px;
    font-size:clamp(2.38rem,10vw,2.9rem)!important;
  }
  .maple-site .mb-hero__content>p:not(.mb-kicker){
    max-width:315px;
    font-size:.94rem!important;
  }
}

/* Restored classic Meridian blue/yellow visual system.
   Content, media, layout and component structure remain unchanged. */
:root{
  --navy:#004b8d;
  --blue:#0087c6;
  --sky:#e7f7fb;
  --yellow:#f7c71b;
  --cream:#f7fbff;
  --ink:#12324b;
  --muted:#607789;
  --line:#d9e8f0;
  --coral:#ed765e;
  --green:#83bd35;
  --shadow:0 18px 50px rgba(0,75,141,.10);
}

body,
.maple-site,
.maple-home{
  background:#fff!important;
  color:var(--ink)!important;
}

h1,h2,h3,
.maple-site h1,
.maple-site h2,
.maple-site h3{
  color:var(--navy)!important;
}

.lead,
.maple-site .lead,
.section-head p,
.card p,
.schedule-meta,
.about-alt__content .lead,
.mb-about .lead,
.mb-about p,
.mb-benefits p,
.mb-method-card p,
.mb-path span,
.teacher-profile__body p,
.speech-center-teaser__inner p,
.speech-center-cta p,
.contact-option p,
.association-band p,
.social-newsletter__inner p{
  color:var(--muted)!important;
}

.breadcrumb,
.maple-site .breadcrumb,
.eyebrow,
.maple-site .eyebrow,
.tag,
.event-tag,
.teacher-profile__body .role,
.blog-card time,
.branch-schedule-switch button span,
.schedule-event .day,
.school-year-card__dates strong,
.leadership-strip .team-card-copy>span,
.contact-option strong{
  color:var(--blue)!important;
}

.eyebrow:before,
.nav a.active:after,
.maple-header .nav a.active:after,
.maple-site .nav a.active:after{
  background:var(--yellow)!important;
}

.site-header,
.maple-header,
.maple-site .site-header,
.maple-site .site-header.is-scrolled{
  background:rgba(255,255,255,.96)!important;
  border-bottom-color:rgba(0,75,141,.12)!important;
  box-shadow:0 8px 24px rgba(0,75,141,.08)!important;
}

.nav a,
.maple-header .nav a,
.maple-site .nav a{
  color:#12324b!important;
}

.nav a:hover,
.nav a.active,
.maple-header .nav a:hover,
.maple-header .nav a.active,
.maple-site .nav a:hover,
.maple-site .nav a.active{
  color:var(--blue)!important;
}

.lang{
  border-color:var(--line)!important;
  background:#fff!important;
  color:var(--ink)!important;
}

.menu-toggle{
  background:var(--navy)!important;
  color:#fff!important;
}

.btn,
.btn:link,
.btn:visited,
.section-head .btn,
.cta-band .btn,
.schedule-helper .btn,
.contact-panel .btn,
.footer .btn,
.enrollment-banner__button,
.blog-more,
.program-card .btn,
.mb-program-card__button,
.card .btn,
.teacher-profile .btn,
.blog-card .btn,
.price-card .btn,
.branch-card .btn{
  background:var(--yellow)!important;
  border-color:var(--yellow)!important;
  color:var(--navy)!important;
  box-shadow:0 10px 26px rgba(247,199,27,.28)!important;
}

.btn:hover,
.section-head .btn:hover,
.cta-band .btn:hover,
.schedule-helper .btn:hover,
.contact-panel .btn:hover,
.footer .btn:hover,
.enrollment-banner__button:hover,
.blog-more:hover,
.program-card .btn:hover,
.mb-program-card__button:hover{
  background:#ffd84a!important;
  border-color:#ffd84a!important;
  color:var(--navy)!important;
  box-shadow:0 16px 34px rgba(247,199,27,.36)!important;
}

.btn-outline,
.btn-white,
.section-head .btn-outline{
  background:#fff!important;
  border-color:var(--navy)!important;
  color:var(--navy)!important;
  box-shadow:none!important;
}

.btn-outline:hover,
.btn-white:hover,
.section-head .btn-outline:hover{
  background:var(--navy)!important;
  border-color:var(--navy)!important;
  color:#fff!important;
}

.soft,
.sky,
.mb-promise,
.calendar-breaks-section,
.schedule-directory-section,
.maple-site .soft,
.maple-site .sky,
.social-newsletter{
  background:var(--cream)!important;
}

.section:not(.soft):not(.sky):not(.calendar-breaks-section):not(.schedule-directory-section):not(.mb-numbers),
.speech-center-teaser,
.speech-center-section,
.contact-options-section,
.association-band{
  background:#fff!important;
}

.card,
.mb-welcome-card,
.mb-program-card,
.mb-proof-card,
.mb-benefit-strip,
.mb-benefits article,
.mb-method-card,
.schedule-guide__panel,
.schedule-day-column,
.branch-schedule-head,
.branch-schedule-switch button,
.school-year-card,
.calendar-breaks-card,
.registration-form,
.contact-option,
.association-band__inner,
.leadership-strip article{
  background:#fff!important;
  border-color:var(--line)!important;
  box-shadow:0 16px 42px rgba(0,75,141,.07)!important;
}

.card:hover,
.mb-program-card:hover,
.mb-method-card:hover,
.teacher-profile:hover,
.contact-option:hover{
  box-shadow:0 22px 48px rgba(0,75,141,.14)!important;
}

.tag,
.event-tag,
.date-pills span,
.school-year-card__dates div,
.icon,
.about-feature-list span{
  background:var(--sky)!important;
  color:var(--blue)!important;
}

.feature:nth-child(2n) .icon{
  background:#fff0d1!important;
  color:var(--navy)!important;
}

.feature:nth-child(3n) .icon{
  background:#ffe7e1!important;
  color:var(--coral)!important;
}

.page-hero,
.maple-site .page-hero{
  background:linear-gradient(135deg,var(--cream),var(--sky))!important;
  border-bottom:1px solid var(--line)!important;
}

.page-hero:before,
.maple-site .page-hero:before{
  background-image:linear-gradient(90deg,rgba(231,247,251,.62),rgba(255,255,255,.05)),var(--hero-photo)!important;
  filter:none!important;
  opacity:.96;
}

.page-hero:after,
.maple-site .page-hero:after{
  background:linear-gradient(135deg,rgba(247,199,27,.18),rgba(0,135,198,.08))!important;
}

.mb-hero,
.mb-slide{
  background:#004b8d!important;
}

.mb-slide img{
  filter:none!important;
}

.mb-hero__overlay{
  background:
    linear-gradient(90deg,rgba(0,36,72,.88) 0%,rgba(0,75,141,.62) 40%,rgba(0,75,141,.22) 72%,rgba(0,0,0,.08) 100%),
    linear-gradient(0deg,rgba(0,0,0,.16),transparent 38%)!important;
}

.mb-hero__content,
.mb-hero h1{
  color:#fff!important;
}

.mb-kicker{
  color:var(--yellow)!important;
}

.mb-hero__content>p:not(.mb-kicker){
  color:#eef7fb!important;
}

.mb-hero__actions .btn:first-child{
  background:var(--yellow)!important;
  border-color:var(--yellow)!important;
  color:var(--navy)!important;
}

.mb-hero__actions .btn-outline,
.mb-hero__actions .btn-white{
  background:#fff!important;
  border-color:#fff!important;
  color:var(--navy)!important;
}

.mb-hero__controls button{
  border-color:rgba(255,255,255,.55)!important;
  background:rgba(255,255,255,.1)!important;
  color:#fff!important;
}

.mb-hero__controls button:hover{
  background:#fff!important;
  color:var(--navy)!important;
}

.mb-dots button{
  background:rgba(255,255,255,.48)!important;
}

.mb-dots button.is-active{
  background:var(--yellow)!important;
}

.about-blue,
.schedule-helper,
.cta-band,
.contact-panel,
.calendar-breaks-card--accent,
.mb-numbers,
.mb-tour__box{
  background:linear-gradient(145deg,#004b8d 0%,#0087c6 100%)!important;
  color:#fff!important;
  border-color:#0077ad!important;
  box-shadow:0 18px 42px rgba(0,75,141,.12)!important;
}

.about-blue h2,
.about-blue .lead,
.schedule-helper h2,
.schedule-helper p,
.cta-band h2,
.contact-panel h2,
.contact-panel h3,
.calendar-breaks-card--accent h3,
.mb-numbers h2,
.mb-tour__box h2,
.mb-tour__box p{
  color:#fff!important;
}

.about-blue .eyebrow,
.schedule-helper .eyebrow,
.cta-band .eyebrow,
.contact-panel .eyebrow,
.mb-numbers .eyebrow{
  color:var(--yellow)!important;
}

.mb-stats div{
  border-color:rgba(255,255,255,.25)!important;
  background:rgba(255,255,255,.08)!important;
}

.mb-stats strong{
  color:var(--yellow)!important;
}

.mb-stats span{
  color:#d8eef8!important;
}

.mb-benefits{
  background:#fff!important;
  border-color:var(--line)!important;
}

.mb-benefits span,
.mb-method-card span{
  color:var(--blue)!important;
}

.mb-benefit-icon,
.mb-benefit:nth-child(2n) .mb-benefit-icon{
  background:var(--sky)!important;
  color:var(--blue)!important;
}

.mb-benefit:nth-child(3n) .mb-benefit-icon{
  background:#fff0d1!important;
  color:var(--navy)!important;
}

.mb-image-panel:before{
  background:var(--yellow)!important;
}

.mb-mission{
  background:linear-gradient(135deg,var(--sky),#fff8d7)!important;
}

.mb-mission-text p{
  background:#fff!important;
  border-left-color:var(--yellow)!important;
  box-shadow:0 14px 34px rgba(0,75,141,.08)!important;
}

.mb-tour__box:after{
  border-color:rgba(247,199,27,.22)!important;
}

.about-alt--reverse .about-alt__media:before{
  background:var(--sky)!important;
}

.about-alt__media img,
.mb-photo-grid img,
.mb-image-panel img{
  box-shadow:0 22px 48px rgba(0,75,141,.16)!important;
}

.branch-schedule-switch button:hover,
.branch-schedule-switch button.is-active{
  border-color:var(--blue)!important;
  background:linear-gradient(135deg,#fff,var(--sky))!important;
}

.branch-schedule-switch button.is-active{
  box-shadow:inset 0 -4px 0 var(--yellow),0 14px 30px rgba(0,75,141,.09)!important;
}

.schedule-card .day,
.schedule-event .day span{
  background:var(--navy)!important;
  color:#fff!important;
}

.schedule-card:before{
  background:linear-gradient(90deg,var(--blue),var(--yellow))!important;
}

.schedule-directory .schedule-card{
  border-left-color:var(--blue)!important;
}

.schedule-directory .schedule-card[data-type="studio"]{
  border-left-color:var(--yellow)!important;
}

.schedule-guide__steps li,
.schedule-note,
.empty-state,
.branch-hours,
.schedule-event{
  background:var(--cream)!important;
  border-color:var(--line)!important;
}

.branch-card .map{
  background:var(--sky)!important;
}

.source-schedule-card__image span{
  background:rgba(13,45,71,.92)!important;
}

.speech-center-teaser__inner{
  background:linear-gradient(135deg,#f7fbff 0%,#e7f7fb 100%)!important;
  border-color:var(--line)!important;
}

.speech-center-symbol span{
  background:#fff!important;
  color:var(--blue)!important;
}

.speech-center-symbol strong,
.contact-option__icon{
  background:var(--blue)!important;
  color:#fff!important;
}

.speech-specialist>span{
  color:var(--yellow)!important;
}

.speech-center-cta{
  background:var(--cream)!important;
  border-color:var(--line)!important;
}

.contact-option{
  color:var(--ink)!important;
}

.contact-option:hover{
  border-color:var(--blue)!important;
}

.association-band__inner{
  background:var(--cream)!important;
}

.association-mark{
  color:var(--blue)!important;
  border-color:var(--blue)!important;
  background:#fff!important;
  box-shadow:inset 0 0 0 10px var(--sky)!important;
}

.teacher-profile__photo{
  background:var(--sky)!important;
}

.image-lightbox{
  background:rgba(6,23,38,.88)!important;
}

.footer{
  background:linear-gradient(145deg,#0b2a43 0%,#103d5d 58%,#124c67 100%)!important;
  color:#d9e8ef!important;
  border-top:0!important;
  box-shadow:none!important;
}

.footer:before{
  background:
    radial-gradient(circle at 82% 15%,rgba(255,201,74,.12),transparent 24%),
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px)!important;
  background-size:auto,48px 48px,48px 48px!important;
}

.footer h2,
.footer h3,
.footer-brand .eyebrow{
  color:#fff!important;
}

.footer p,
.footer-column>a,
.footer-contact__item,
.footer-bottom,
.footer-bottom a{
  color:#c7dbe4!important;
}

.footer a:hover,
.footer-column>a:hover,
.footer-bottom a:hover{
  color:var(--yellow)!important;
}

.footer-contact__item,
.footer-locations a{
  background:rgba(255,255,255,.04)!important;
  border-color:rgba(255,255,255,.12)!important;
  color:#fff!important;
  border-radius:0!important;
  box-shadow:none!important;
}

.footer-contact__item span,
.footer-locations a span{
  color:#7fa5b6!important;
}

.footer-contact__item strong,
.footer-contact__item strong a,
.footer-locations a strong{
  color:#fff!important;
}

.footer-socials a{
  background:transparent!important;
  border-color:rgba(255,255,255,.18)!important;
  color:#fff!important;
}

.footer-socials a:hover{
  background:var(--yellow)!important;
  border-color:var(--yellow)!important;
  color:var(--navy)!important;
}

.footer .btn,
.footer a.btn{
  background:var(--yellow)!important;
  border-color:var(--yellow)!important;
  color:var(--navy)!important;
}

.footer-bottom{
  border-top-color:rgba(255,255,255,.14)!important;
}

.enrollment-banner{
  background:rgba(13,45,71,.98)!important;
  color:#fff!important;
  border-top-color:var(--yellow)!important;
  box-shadow:0 -16px 40px rgba(13,45,71,.2)!important;
}

.enrollment-banner__copy strong{
  color:#fff!important;
}

.enrollment-banner__copy span{
  color:#c7dbe4!important;
}

.enrollment-banner__icon{
  background:var(--yellow)!important;
  color:var(--navy)!important;
}

.enrollment-banner__button{
  background:var(--yellow)!important;
  border-color:var(--yellow)!important;
  color:var(--navy)!important;
}

@media(max-width:980px){
  .nav,
  .maple-site .nav{
    background:#fff!important;
    border-color:var(--line)!important;
    box-shadow:0 20px 50px rgba(0,75,141,.14)!important;
  }
}

@media(max-width:650px){
  .maple-site .mb-hero__overlay{
    background:
      linear-gradient(90deg,rgba(0,36,72,.86) 0%,rgba(0,75,141,.62) 58%,rgba(0,75,141,.35) 100%),
      linear-gradient(0deg,rgba(0,36,72,.78) 0%,rgba(0,36,72,.14) 48%,rgba(0,36,72,.08) 100%)!important;
  }
  .maple-site .mb-hero__content>p:not(.mb-kicker){
    color:#eef7fb!important;
  }
}

/* Keep Kristina's face fully visible in teacher cards across all languages. */
.teacher-profile__photo img[alt="Кристина"],
.teacher-profile__photo img[alt="Кристина Валерьевна"],
.teacher-profile__photo img[alt="Kristina"],
.teacher-profile__photo img[alt="Kristina Valerievna"]{
  object-position:center top!important;
}

.about-stars{
  line-height:1.85;
  color:var(--ink)!important;
}

/* Classic full-width “Meridian in numbers” panel. */
body.maple-site section.mb-numbers.section{
  padding:96px 0!important;
  background:#004f8f!important;
  color:#fff!important;
  border:0!important;
  box-shadow:none!important;
}

body.maple-site .mb-numbers .mb-centered{
  max-width:960px;
  margin:0 auto 42px;
  text-align:center;
}

body.maple-site .mb-numbers .eyebrow{
  justify-content:center;
  margin-bottom:20px;
  color:var(--yellow)!important;
}

body.maple-site .mb-numbers .eyebrow:before{
  display:none!important;
}

body.maple-site .mb-numbers h2{
  display:block!important;
  max-width:none!important;
  margin:0!important;
  color:#fff!important;
  font-size:clamp(2.4rem,4.4vw,4.2rem)!important;
  line-height:1.04!important;
  text-align:center!important;
}

body.maple-site .mb-numbers .mb-stats{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:20px!important;
  text-align:center!important;
}

body.maple-site .mb-numbers .mb-stats div{
  display:block!important;
  padding:34px 20px!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

body.maple-site .mb-numbers .mb-stats strong{
  display:block!important;
  color:var(--yellow)!important;
  font-family:"Montserrat",sans-serif!important;
  font-size:3.5rem!important;
  line-height:1!important;
}

body.maple-site .mb-numbers .mb-stats span{
  display:block!important;
  margin-top:12px!important;
  color:#fff!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  font-weight:800!important;
}

@media(max-width:980px){
  body.maple-site .mb-numbers .mb-stats{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:650px){
  body.maple-site section.mb-numbers.section{
    padding:70px 0!important;
  }
  body.maple-site .mb-numbers h2{
    font-size:clamp(2rem,9vw,2.75rem)!important;
  }
  body.maple-site .mb-numbers .mb-stats{
    grid-template-columns:1fr!important;
  }
  body.maple-site .mb-numbers .mb-stats strong{
    font-size:2.7rem!important;
  }
}

/* Brighter classic-blue footer and fixed enrollment bar. */
body.maple-site .enrollment-banner{
  background:#075a98!important;
  color:#fff!important;
  border-top:4px solid var(--yellow)!important;
  box-shadow:0 -14px 34px rgba(0,75,141,.22)!important;
}

body.maple-site .enrollment-banner__copy strong{
  color:#fff!important;
}

body.maple-site .enrollment-banner__copy span{
  color:#d8edf7!important;
}

body.maple-site .enrollment-banner__icon,
body.maple-site .enrollment-banner__button{
  background:var(--yellow)!important;
  border-color:var(--yellow)!important;
  color:var(--navy)!important;
}

body.maple-site .footer{
  background:linear-gradient(112deg,#07538d 0%,#086aa7 55%,#1097cb 100%)!important;
  color:#e5f3f9!important;
  border-top:0!important;
  box-shadow:none!important;
}

body.maple-site .footer:before{
  background:
    radial-gradient(circle at 98% 3%,transparent 0 120px,rgba(247,199,27,.18) 121px 122px,transparent 123px 210px,rgba(255,255,255,.10) 211px 212px,transparent 213px),
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px)!important;
  background-size:auto,48px 48px,48px 48px!important;
}

body.maple-site .footer h2,
body.maple-site .footer h3,
body.maple-site .footer-brand .eyebrow{
  color:#fff!important;
}

body.maple-site .footer p,
body.maple-site .footer-column>a,
body.maple-site .footer-bottom,
body.maple-site .footer-bottom a{
  color:#d4ebf5!important;
}

body.maple-site .footer-contact__item,
body.maple-site .footer-locations a{
  background:rgba(255,255,255,.035)!important;
  border-color:rgba(255,255,255,.17)!important;
  color:#fff!important;
}

body.maple-site .footer-contact__item span,
body.maple-site .footer-locations a span{
  color:#9bd1e7!important;
}

body.maple-site .footer-contact__item strong,
body.maple-site .footer-contact__item strong a,
body.maple-site .footer-locations a strong{
  color:#fff!important;
}

body.maple-site .footer-socials a{
  background:transparent!important;
  border-color:rgba(255,255,255,.28)!important;
  color:#fff!important;
}

body.maple-site .footer-bottom{
  border-top-color:rgba(255,255,255,.18)!important;
}

/* Final blue-version content refinements. */
body.maple-site .page-hero .lead,
body.maple-site .mb-hero__content>p:not(.mb-kicker),
body.maple-site .section-head p,
body.maple-site .card p,
body.maple-site .mb-benefits p,
body.maple-site .mb-method-card p,
body.maple-site .mb-path span,
body.maple-site .about-alt__content .lead,
body.maple-site .lead{
  color:#1e3345!important;
}
body.maple-site .breadcrumb,
body.maple-site .eyebrow,
body.maple-site .mb-kicker{
  color:#0087c6!important;
}
body.maple-site .mb-benefits h3,
body.maple-site .mb-method-card h3,
body.maple-site .price-card h3,
body.maple-site .card h3{
  color:#004b8d!important;
}
body.maple-site .footer-locations a span{
  color:#d9eef8!important;
}
@media(max-width:650px){
  body.maple-site .page-hero .lead,
  body.maple-site .mb-hero__content>p:not(.mb-kicker){
    color:#1e3345!important;
  }
}

/* Home hero mobile readability refinements. */
.no-break{
  white-space:nowrap;
}
body.maple-home .mb-hero__content>p:not(.mb-kicker){
  color:#fff!important;
  text-shadow:0 2px 12px rgba(0,32,64,.42);
}
body.maple-home .mb-kicker{
  color:#ffc914!important;
}
@media(max-width:650px){
  body.maple-home .mb-hero h1{
    font-size:clamp(2.05rem,8.7vw,3rem)!important;
    line-height:1.08!important;
    letter-spacing:-.045em;
  }
  body.maple-home .mb-hero__content>p:not(.mb-kicker){
    color:#fff!important;
  }
}

/* Home "about" photo collage: keep the teacher's head visible in the top-right image. */
@media(min-width:651px){
  body.maple-home .mb-about .mb-photo-grid{
    grid-auto-rows:220px;
  }
  body.maple-home .mb-about .mb-photo-grid img:nth-child(2){
    object-position:center top;
  }
}
@media(max-width:380px){
  body.maple-home .mb-hero h1{
    font-size:1.9rem!important;
  }
}

/* Make inner-page hero text readable on photo-heavy mobile screens. */
@media(max-width:650px){
  body.maple-site:not(.maple-home) .page-hero .container{
    position:relative;
    z-index:4;
  }
  body.maple-site:not(.maple-home) .page-hero .lead{
    display:inline-block;
    max-width:100%;
    padding:12px 14px;
    border-radius:16px;
    background:rgba(255,255,255,.78);
    color:#10283d!important;
    font-weight:700;
    line-height:1.55;
    box-shadow:0 10px 30px rgba(0,75,141,.10);
  }
}

/* Header dropdown for program-related links. */
.nav-dropdown{
  position:relative;
  display:flex;
  align-items:center;
}
.nav-dropdown__toggle{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.nav-dropdown__toggle:after{
  content:"▾";
  font-size:.68em;
  line-height:1;
  transform:translateY(-1px);
}
.nav-dropdown.is-active>.nav-dropdown__toggle:after{
  color:inherit;
}
.nav-dropdown.is-active>.nav-dropdown__toggle:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:27px;
  height:4px;
  border-radius:4px;
  background:var(--yellow);
}
.nav-submenu{
  position:absolute;
  left:50%;
  top:calc(100% - 8px);
  z-index:90;
  min-width:260px;
  padding:10px;
  border:1px solid rgba(0,75,141,.14);
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 46px rgba(0,75,141,.18);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,10px);
  transition:opacity .22s ease,transform .22s ease,visibility .22s ease;
}
.nav-dropdown:hover .nav-submenu,
.nav-dropdown:focus-within .nav-submenu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,0);
}
.nav-submenu a,
.maple-site .nav-submenu a{
  display:block;
  padding:11px 13px!important;
  border-radius:12px;
  color:#12324b!important;
  font-size:.78rem!important;
  line-height:1.2;
  white-space:nowrap;
}
.nav-submenu a:hover,
.maple-site .nav-submenu a:hover{
  background:#e8f6fb;
  color:#004b8d!important;
}
.nav-submenu a.active:after,
.maple-site .nav-submenu a.active:after{
  display:none!important;
}

@media(max-width:980px){
  .nav-dropdown{
    display:block;
  }
  .nav-dropdown__toggle{
    padding:10px 2px!important;
    font-size:.82rem!important;
  }
  .nav-dropdown.is-active>.nav-dropdown__toggle:before{
    display:none;
  }
  .nav-submenu{
    position:static;
    min-width:0;
    margin:3px 0 8px;
    padding:6px;
    border-radius:14px;
    border-color:rgba(0,75,141,.12);
    background:#f3f9fc;
    box-shadow:none;
    display:none;
    opacity:1;
    visibility:visible;
    pointer-events:auto;
    transform:none;
  }
  .nav-dropdown.is-open .nav-submenu{
    display:block;
  }
  .nav-dropdown__toggle[aria-expanded="true"]:after{
    transform:rotate(180deg);
  }
  .nav-submenu a,
  .maple-site .nav-submenu a{
    padding:9px 12px!important;
    font-size:.82rem!important;
    white-space:normal;
  }
  .nav-dropdown:hover .nav-submenu,
  .nav-dropdown:focus-within .nav-submenu{
    left:auto!important;
    top:auto!important;
    width:100%!important;
    max-width:100%!important;
    transform:none!important;
  }
  .nav-dropdown:not(.is-open) .nav-submenu{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .nav-dropdown.is-open .nav-submenu{
    display:block!important;
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:4px 0 10px!important;
    padding:8px!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}

/* Latest multilingual navigation and content polish. */
.footer-socials a svg{
  width:18px;
  height:18px;
  display:block;
  fill:currentColor;
}
.association-mark--logo{
  background:#fff!important;
  width:230px!important;
  height:auto!important;
  min-height:92px;
  padding:12px 14px;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible;
}
.association-mark--logo img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}
.impressum-wrap{
  max-width:920px;
}
.impressum-card{
  padding:clamp(26px,4vw,48px);
}
.impressum-list{
  display:grid;
  gap:0;
  margin:26px 0;
  border:1px solid rgba(0,75,141,.14);
  border-radius:22px;
  overflow:hidden;
}
.impressum-list div{
  display:grid;
  grid-template-columns:210px 1fr;
  gap:18px;
  padding:18px 20px;
  border-bottom:1px solid rgba(0,75,141,.1);
}
.impressum-list div:last-child{
  border-bottom:0;
}
.impressum-list dt{
  font-weight:900;
  color:#004b8d;
}
.impressum-list dd{
  margin:0;
  color:#1e3345;
}
.impressum-list a{
  color:#004b8d;
  font-weight:800;
}
.impressum-trademark{
  font-size:1.12rem;
  font-weight:900;
  color:#004b8d!important;
}
body:not(.maple-home) .mb-photo-grid img:nth-child(2){
  object-position:center top;
}
@media(min-width:651px){
  body:not(.maple-home) .mb-photo-grid{
    grid-auto-rows:220px;
  }
}
@media(max-width:650px){
  .impressum-list div{
    grid-template-columns:1fr;
    gap:6px;
  }
}

/* Restore photo layer in inner-page hero sections after later theme overrides. */
body.maple-site:not(.maple-home) .page-hero{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate;
  background:linear-gradient(135deg,#f7fbff 0%,#e7f7fb 62%,#fff8d7 100%)!important;
}
body.maple-site:not(.maple-home) .page-hero:before{
  content:""!important;
  position:absolute!important;
  z-index:1!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  left:auto!important;
  width:min(43vw,760px)!important;
  height:auto!important;
  display:block!important;
  background-image:linear-gradient(90deg,rgba(231,247,251,.64),rgba(255,255,255,.05)),var(--hero-photo)!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  clip-path:polygon(24% 0,100% 0,100% 100%,0 100%)!important;
  opacity:.96!important;
  filter:none!important;
  pointer-events:none!important;
}
body.maple-site:not(.maple-home) .page-hero:after{
  content:""!important;
  position:absolute!important;
  z-index:2!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  left:auto!important;
  width:min(43vw,760px)!important;
  height:auto!important;
  display:block!important;
  background:linear-gradient(135deg,rgba(247,199,27,.18),rgba(0,135,198,.08))!important;
  clip-path:polygon(24% 0,100% 0,100% 100%,0 100%)!important;
  pointer-events:none!important;
}
body.maple-site:not(.maple-home) .page-hero .container{
  position:relative!important;
  z-index:3!important;
}
body.maple-site:not(.maple-home) .page-hero[style*="class-workbook.jpg"]:before{
  background-image:linear-gradient(90deg,rgba(231,247,251,.64),rgba(255,255,255,.05)),url('../assets/maple/class-workbook.jpg')!important;
}
body.maple-site:not(.maple-home) .page-hero[style*="class-letters.jpg"]:before{
  background-image:linear-gradient(90deg,rgba(231,247,251,.64),rgba(255,255,255,.05)),url('../assets/maple/class-letters.jpg')!important;
}
body.maple-site:not(.maple-home) .page-hero[style*="class-library.jpg"]:before{
  background-image:linear-gradient(90deg,rgba(231,247,251,.64),rgba(255,255,255,.05)),url('../assets/maple/class-library.jpg')!important;
}
body.maple-site:not(.maple-home) .page-hero[style*="building.jpg"]:before{
  background-image:linear-gradient(90deg,rgba(231,247,251,.64),rgba(255,255,255,.05)),url('../assets/maple/building.jpg')!important;
}
body.maple-site:not(.maple-home) .page-hero[style*="class-board.jpg"]:before{
  background-image:linear-gradient(90deg,rgba(231,247,251,.64),rgba(255,255,255,.05)),url('../assets/maple/class-board.jpg')!important;
}
body.maple-site:not(.maple-home) .page-hero[style*="class-tour.jpg"]:before{
  background-image:linear-gradient(90deg,rgba(231,247,251,.64),rgba(255,255,255,.05)),url('../assets/maple/class-tour.jpg')!important;
}
body.maple-site:not(.maple-home) .page-hero[style*="stage.jpg"]:before{
  background-image:linear-gradient(90deg,rgba(231,247,251,.64),rgba(255,255,255,.05)),url('../assets/maple/stage.jpg')!important;
}
@media(max-width:980px){
  body.maple-site:not(.maple-home) .page-hero:before,
  body.maple-site:not(.maple-home) .page-hero:after{
    width:52vw!important;
    opacity:.55!important;
  }
}
@media(max-width:650px){
  body.maple-site:not(.maple-home) .page-hero:before,
  body.maple-site:not(.maple-home) .page-hero:after{
    width:82vw!important;
    opacity:.28!important;
  }
}

/* ------------------------------------------------------------------ */
/* Contact Form 7 integration — makes CF7 output match the design.    */
/* ------------------------------------------------------------------ */
.contact-form.wpcf7-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact-form.wpcf7-form>.field,.contact-form.wpcf7-form>.field.wide,.contact-form.wpcf7-form>.wide,.contact-form.wpcf7-form>.wpcf7-response-output,.contact-form.wpcf7-form>.screen-reader-response{grid-column:1/-1}
.contact-form.wpcf7-form>.field:not(.wide){grid-column:auto}
.registration-form .wpcf7-form-control-wrap{display:block}
.registration-form .wpcf7-form-control-wrap input,.registration-form .wpcf7-form-control-wrap textarea{width:100%}
.registration-form input[type="hidden"]{display:none}
.registration-form .wpcf7-not-valid-tip{color:var(--coral,#e5484d);font-size:.78rem;margin-top:6px;display:block}
.registration-form .wpcf7-spinner{margin:0 0 0 6px}
.wpcf7 .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;margin:0;padding:0;border:0}
.wpcf7 form .wpcf7-response-output{margin:4px 0 0;padding:13px 17px;border:1px solid var(--line);border-radius:14px;font-size:.9rem;line-height:1.4}
.wpcf7 form.sent .wpcf7-response-output{border-color:#38b000;background:#eefaf0;color:#1c7a2e}
.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output{border-color:#e5484d;background:#fdecec;color:#b42318}
.registration-form .captcha-field .wpcf7-form-control-wrap{display:inline-block}
.registration-form img.wpcf7-captcha-captcha-1,.registration-form .wpcf7-captchac{display:block;margin-bottom:10px;border-radius:10px;max-width:150px;height:auto}
.registration-form input.wpcf7-captchar{max-width:220px}
.consent-field .wpcf7-list-item{margin:0}
.consent-field .wpcf7-list-item-label{font-size:inherit}
@media(max-width:520px){.contact-form.wpcf7-form{grid-template-columns:1fr}.contact-form.wpcf7-form>.field:not(.wide){grid-column:1/-1}}
/* Google reCAPTCHA v3 badge — lift it above the fixed enrollment banner. */
.grecaptcha-badge{bottom:112px!important;z-index:90!important}
@media(max-width:520px){.grecaptcha-badge{bottom:142px!important}}
