.site-drawer,.mobile-quick-nav,.mobile-tabbar{display:none!important}.mobile-actions{display:none}
body.site-menu-open{overflow:hidden}
header .brand{margin-right:auto}
.site-menu-button{display:none;align-content:center;gap:5px;width:44px;height:44px;flex:0 0 44px;padding:0 11px;border:1px solid #d7e2e9;border-radius:12px;background:#fff;color:#071b2e;cursor:pointer}
.site-menu-button span{display:block;width:100%;height:2px;border-radius:9px;background:currentColor}
.site-menu-button:hover,.site-menu-button:focus-visible{border-color:#0d5a91;background:#eef7fc;outline:3px solid rgba(13,90,145,.12)}
.site-menu-shell[hidden]{display:none}.site-menu-shell{position:fixed;z-index:200;inset:0;padding:12px}
.site-menu-backdrop{position:absolute;inset:0;border:0;background:rgba(3,18,31,.68);opacity:0;transition:opacity .19s;cursor:pointer}
.site-menu-panel{position:relative;width:min(680px,100%);max-height:calc(100dvh - 24px);margin:0 auto;padding:20px;border-radius:24px;background:#fff;box-shadow:0 30px 90px rgba(3,18,31,.3);color:#102336;font-family:"DM Sans",system-ui,sans-serif;overflow-y:auto;opacity:0;transform:translateY(-10px) scale(.985);transition:opacity .19s ease,transform .19s ease}
.site-menu-open .site-menu-backdrop{opacity:1}.site-menu-open .site-menu-panel{opacity:1;transform:none}
.site-menu-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:1px solid #e2e9ee}
.site-menu-brand{display:flex;align-items:center;gap:11px;color:#071b2e;font:800 .86rem/1.08 Manrope,"DM Sans",sans-serif;letter-spacing:-.025em;text-decoration:none}
.site-menu-brand b{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#071b2e;color:#fff;font-size:1.2rem}.site-menu-brand b:after{content:"";position:absolute;right:6px;bottom:6px;width:8px;height:8px;border-radius:50%;background:#ffb21a}
.site-menu-close{display:grid;place-items:center;width:42px;height:42px;padding:0;border:1px solid #dce5ec;border-radius:12px;background:#f5f8fb;color:#071b2e;font:500 1.9rem/1 sans-serif;cursor:pointer}.site-menu-close:hover,.site-menu-close:focus-visible{background:#eaf3f9;outline:3px solid rgba(13,90,145,.12)}
.site-menu-primary{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;padding:17px 19px;border-radius:16px;background:#071b2e;color:#fff;text-decoration:none}.site-menu-primary span{display:grid;gap:2px;font:800 1.03rem Manrope,sans-serif}.site-menu-primary small{color:#a9c1d1;font:700 .72rem "DM Sans",sans-serif}.site-menu-primary>b{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#ffb21a;color:#071b2e;font-size:1.2rem}.site-menu-primary:hover,.site-menu-primary:focus-visible{background:#0d3557;outline:4px solid rgba(13,90,145,.16)}
.site-menu-groups{display:grid!important;height:auto!important;min-height:0!important;gap:18px;padding:0!important}.site-menu-main{display:grid;grid-template-columns:1fr 1fr;gap:8px}.site-menu-main a{display:flex;align-items:center;min-height:48px;padding:10px 13px;border:1px solid #dce5ec;border-radius:12px;color:#173149;font-weight:800;text-decoration:none}.site-menu-main a:hover,.site-menu-main a:focus-visible,.site-menu-main a[aria-current="page"]{border-color:#9fb9ca;background:#edf5fa;color:#075e95;outline:none}
.site-menu-learn{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.site-menu-learn>span{grid-column:1/-1;color:#6a7d8e;font-size:.7rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.site-menu-learn a{display:grid;align-content:center;gap:3px;min-height:76px;padding:13px;border-radius:13px;background:#f3f7fa;color:#173149;text-decoration:none}.site-menu-learn a b{font:800 .86rem Manrope,sans-serif}.site-menu-learn a small{color:#607588;font-size:.72rem}.site-menu-learn a:hover,.site-menu-learn a:focus-visible,.site-menu-learn a[aria-current="page"]{background:#e6f1f8;color:#075e95;outline:3px solid rgba(13,90,145,.12)}
.site-menu-contact{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px;padding-top:16px;border-top:1px solid #e2e9ee}.site-menu-contact a{display:grid;place-items:center;min-height:45px;border:1px solid #b8cbd8;border-radius:11px;color:#075e95;font-weight:850;text-decoration:none}.site-menu-contact a:hover,.site-menu-contact a:focus-visible{background:#eef7fc;outline:none}
body .whatsapp-float{bottom:18px!important}
.site-legal-links{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:16px;padding-top:15px;border-top:1px solid rgba(255,255,255,.12);color:#9fb1be;font-size:.78rem}.site-legal-links a:hover,.site-legal-links a:focus-visible{color:#fff;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){
  .has-site-menu header .navlinks{display:none!important}.site-menu-button{display:grid}header nav{gap:10px!important}
  body header nav>.site-book-cta{display:inline-flex!important;min-height:42px!important;padding:0 13px!important;border-radius:10px!important;font-size:.78rem!important}
}
@media(max-width:760px){
  body{padding-bottom:0!important}.topbar{display:none!important}header{top:0!important}header nav{min-height:64px!important;height:64px!important;padding-right:0!important}
  header .brand{font-size:.83rem!important;gap:8px!important}header .brand-mark{width:38px!important;height:38px!important;border-radius:10px!important}.learning-jump{display:none!important}
  body .whatsapp-float{right:14px!important;bottom:86px!important;min-width:50px!important;height:50px!important;padding:0 15px!important;justify-content:center!important}body .mobile-actions{display:grid!important;grid-template-columns:1fr 1fr;position:fixed;z-index:190;left:10px;right:10px;bottom:10px;height:62px;padding:5px;border:1px solid #dce5ec;border-radius:17px;background:#fff;box-shadow:0 12px 35px rgba(7,27,46,.3)}body .mobile-actions a{display:flex;align-items:center;justify-content:center;border-radius:12px;font-weight:850;text-decoration:none}body .mobile-actions .call-now{background:#071b2e;color:#fff}body .mobile-actions .quick-enquiry{background:#ffb21a;color:#122031}footer{padding-bottom:106px!important}
}
@media(max-width:520px){.site-menu-shell{padding:6px}.site-menu-panel{max-height:calc(100dvh - 12px);padding:16px;border-radius:19px}.site-menu-main{grid-template-columns:1fr 1fr}.site-menu-learn{grid-template-columns:1fr}.site-menu-learn a{min-height:60px}.site-menu-contact{grid-template-columns:1fr 1fr}}
@media(max-width:420px){header .brand>span:last-child{display:none!important}body header nav>.site-book-cta{padding:0 10px!important}.site-menu-button{width:42px;height:42px;flex-basis:42px}.site-menu-main{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.site-menu-backdrop,.site-menu-panel{transition:none}}

/* Navigation survives a delayed or unavailable script. */
@media(max-width:900px){html:not(.has-site-menu) header nav{height:auto!important;min-height:64px;flex-wrap:wrap;padding-block:12px!important}html:not(.has-site-menu) header .navlinks{display:flex!important;order:3;width:100%;flex-wrap:wrap;gap:6px 16px}html:not(.has-site-menu) header .navlinks a{display:inline-flex;align-items:center;min-height:44px}}
.site-menu-shell:not([hidden]){pointer-events:none}.site-menu-open .site-menu-shell{pointer-events:auto}
@media(max-width:760px){body .whatsapp-float span{display:inline!important}body .mobile-actions{bottom:calc(10px + env(safe-area-inset-bottom,0px))}body .whatsapp-float{bottom:calc(86px + env(safe-area-inset-bottom,0px))!important}body footer{padding-bottom:calc(116px + env(safe-area-inset-bottom,0px))!important}}

.site-menu-shortcuts>summary{min-height:48px;padding:12px 4px;font-weight:700;cursor:pointer}.site-menu-shortcuts .site-menu-learn{padding-top:8px}.site-menu-panel{width:min(440px,100%);margin-left:auto;margin-right:0;border-radius:16px;overscroll-behavior:contain}.site-menu-main{grid-template-columns:1fr}.site-menu-main a{min-height:46px;border:0;border-bottom:1px solid #e7edf1;border-radius:0}.site-menu-primary{padding:13px 16px;margin:14px 0}.site-menu-contact{margin-top:12px}.site-menu-shell{padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom))}.site-menu-shortcuts summary:focus-visible,.site-menu-main a:focus-visible,.site-menu-contact a:focus-visible{outline:3px solid #167391;outline-offset:2px}
@media(min-width:901px) and (max-width:1180px){.has-site-menu header .navlinks{display:none!important}.site-menu-button{display:grid}}

/* Keep search and menu reachable on narrow screens. Lesson requests remain in the menu. */
@media(max-width:600px){
 body header nav>.site-book-cta{display:none!important}
}
