/* Accessibility controls are local to this site; no third-party widget or tracking. */
:focus-visible{outline:3px solid #fff!important;outline-offset:3px;box-shadow:0 0 0 6px #152333!important}
.skip-link{z-index:1000}.header{overflow:visible}.footer-top>div{flex-wrap:wrap}.footer-top>div>a,.footer-top>div>button{padding-block:12px;min-height:44px;display:inline-flex;align-items:center}.dialog-close,.photo-controls button{min-width:44px;min-height:44px}.photo-controls{flex-wrap:wrap}.photo-controls button{height:auto}
.contact-form .form-privacy{font-size:.75rem;line-height:1.85;margin:5px 0 20px}.form-privacy a{text-decoration:underline;text-underline-offset:3px}
.a11y-trigger{position:fixed;left:22px;bottom:22px;z-index:40;display:flex;align-items:center;gap:8px;border:2px solid white;background:#152333;color:white;box-shadow:0 2px 12px #15233326;padding:10px 15px;min-width:48px;min-height:48px;font-size:1rem;font-weight:700;border-radius:28px}.a11y-trigger[hidden]{display:none}.a11y-trigger svg{width:24px;height:24px;flex-shrink:0}.a11y-trigger:hover{background:#123ca8}
.a11y-dialog{position:fixed;inset:auto auto 20px 20px;margin:0;width:400px;max-width:calc(100% - 40px);max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain;border:1px solid #ccd1d8;background:#f6f5f0;color:#152333;padding:30px;box-shadow:0 12px 55px #0a16294d}.a11y-dialog::backdrop{background:#101b2b8c}.a11y-dialog h2{font-size:1.55rem;line-height:1.4;letter-spacing:0;margin:10px 0}.a11y-intro{font-size:.875rem;margin-bottom:23px}.a11y-dialog fieldset{border:0;padding:0;margin:0 0 22px;min-width:0}.a11y-dialog legend{font-size:.875rem;font-weight:700;margin-bottom:10px}.a11y-sizes{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.a11y-sizes button{padding:10px 2px;border:1px solid #b1bac7;background:white;color:#152333;min-height:46px;font-size:.875rem}.a11y-sizes button[aria-pressed=true]{background:#123ca8;border-color:#123ca8;color:white}.a11y-toggle{width:100%;min-height:54px;display:flex;align-items:center;justify-content:space-between;gap:15px;text-align:right;padding:13px 14px;margin-bottom:9px;border:1px solid #b1bac7;background:white;color:#152333;font-size:.875rem}.a11y-toggle .setting-switch{width:34px;min-width:34px;height:20px;border:1px solid #778290;border-radius:20px;position:relative}.setting-switch:after{content:'';position:absolute;width:12px;height:12px;border-radius:50%;background:#667380;top:3px;left:3px}.a11y-toggle[aria-pressed=true]{border-color:#123ca8;color:#123ca8}.a11y-toggle[aria-pressed=true] .setting-switch{background:#123ca8;border-color:#123ca8}.a11y-toggle[aria-pressed=true] .setting-switch:after{left:auto;right:3px;background:white}.a11y-reset{font-size:.875rem;min-height:44px;border:0;border-bottom:1px solid #123ca8;color:#123ca8;background:none;padding:8px 0}.a11y-links{display:flex;gap:12px;flex-wrap:wrap;border-top:1px solid #cdd3da;padding-top:18px;margin-top:18px}.a11y-links a{font-size:.8125rem;text-decoration:underline;min-height:44px;display:inline-flex;align-items:center}.a11y-storage{font-size:.75rem;line-height:1.8;margin-top:12px}.a11y-status{font-size:.8125rem;color:#123ca8;margin-top:10px}.a11y-status:empty{display:none}
.a11y-links a,.legal-content a{overflow-wrap:anywhere}.a11y-links a:focus-visible,.a11y-dialog button:focus-visible{outline-offset:1px}
html.a11y-links a{text-decoration:underline!important;text-decoration-thickness:2px!important;text-underline-offset:4px}
html.a11y-motion,html.a11y-motion *{scroll-behavior:auto!important}html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after{transition:none!important;animation:none!important}
html.a11y-enlarged main{overflow-wrap:anywhere}html.a11y-enlarged .hero,html.a11y-enlarged .way-grid,html.a11y-enlarged .sensei-grid,html.a11y-enlarged .locations-grid,html.a11y-enlarged .faq-grid,html.a11y-enlarged .contact-grid,html.a11y-enlarged .training-panel,html.a11y-enlarged .values,html.a11y-enlarged .community-links,html.a11y-enlarged .form-row{grid-template-columns:minmax(0,1fr)}html.a11y-enlarged .hero-visual{height:480px;min-height:0}html.a11y-enlarged .image-frame{min-height:0}html.a11y-enlarged .hero h1{font-size:clamp(2.8rem,7vw,5rem);letter-spacing:-.03em}html.a11y-enlarged .hero-intro,html.a11y-enlarged .hero-desc{max-width:none}html.a11y-enlarged .section-heading,html.a11y-enlarged .community-heading{display:block}html.a11y-enlarged .section-heading p,html.a11y-enlarged .community-heading p{margin-top:20px}html.a11y-enlarged .training-tabs{grid-template-columns:minmax(0,1fr)}html.a11y-enlarged .training-tabs button{margin-left:0}html.a11y-enlarged .gallery{grid-template-columns:minmax(0,1fr)}html.a11y-enlarged .brand span{max-width:calc(100vw - 155px);overflow-wrap:anywhere}html.a11y-enlarged .footer-top{flex-wrap:wrap}html.a11y-enlarged .footer-top>div{flex-wrap:wrap}html.a11y-enlarged .principles>.wrap{display:flex;flex-wrap:wrap;justify-content:center}html.a11y-enlarged .principles i{display:none}html.a11y-enlarged .principles span{flex:1 1 45%}html.a11y-enlarged .contact-phone{font-size:1.5rem;overflow-wrap:anywhere}html.a11y-enlarged .community-links p{max-width:none;min-height:0}html.a11y-enlarged .clean-list li{max-width:none}html.a11y-enlarged .section-label{flex-wrap:wrap}html.a11y-enlarged .photo-caption{flex-wrap:wrap}html.a11y-enlarged .image-stamp{position:relative;inset:auto;width:fit-content;margin:15px}html.a11y-enlarged .hero-photo-note{position:relative;left:0;bottom:auto;width:fit-content;margin-top:-120px}html.a11y-enlarged .vertical-word{display:none}
html.a11y-enlarged .menu-toggle{display:flex;width:48px;height:48px;flex-direction:column;justify-content:center;gap:6px;border:1px solid #a7b0b9;padding:12px;background:none;flex-shrink:0}html.a11y-enlarged .menu-toggle span{display:block;width:20px;height:2px;background:#152333}html.a11y-enlarged .header #main-nav{display:none;position:absolute;top:100%;inset-inline:0;background:var(--paper);padding:15px 25px 25px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;max-height:75dvh;overflow:auto}html.a11y-enlarged .header #main-nav.is-open{display:flex}html.a11y-enlarged .header #main-nav>a{padding-block:12px}html.a11y-enlarged .nav-wrap{gap:12px}html.a11y-enlarged .branch-list article{flex-wrap:wrap}html.a11y-enlarged .branch-list article>div{flex:1;min-width:0}html.a11y-enlarged .hero-actions{flex-wrap:wrap}html.a11y-enlarged .training-panel figure img{height:auto}html.a11y-enlarged .training-panel figcaption{position:static}html.a11y-enlarged .a11y-sizes{grid-template-columns:repeat(2,minmax(0,1fr))}html.a11y-enlarged .mobile-contact{position:static}html.a11y-enlarged .mobile-contact a{overflow-wrap:anywhere;text-align:center}html.a11y-enlarged .footer{padding-bottom:30px}
html.a11y-contrast body,html.a11y-contrast :is(header,footer,section,dialog,.header,.contact-form,.image-stamp,.hero-photo-note,.principles,.training-tabs,.mobile-contact,.training-panel figcaption,.a11y-trigger){background:#101010!important;color:#fff!important;border-color:#fff!important}html.a11y-contrast :is(h1,h2,h3,p,span,small,figcaption,legend,label,.overline,.eyebrow-en,.branch-index){color:#fff!important}html.a11y-contrast :is(a,.text-link){color:#fff36a!important}html.a11y-contrast :is(button,input,select,textarea){background:#101010!important;color:#fff!important;border-color:#fff!important}html.a11y-contrast :is(input,textarea)::placeholder{color:#dedede!important}html.a11y-contrast button[aria-pressed=true]{background:#fff36a!important;color:#101010!important}html.a11y-contrast button[aria-pressed=true] span{color:#101010!important}html.a11y-contrast .menu-toggle span{background:#fff!important}html.a11y-contrast .header #main-nav{background:#101010!important}html.a11y-contrast .a11y-toggle[aria-pressed=true] .setting-switch{background:#101010!important}html.a11y-contrast .a11y-toggle[aria-pressed=true] .setting-switch:after{background:#fff!important}html.a11y-contrast .hero h1 span:after{background:#fff36a!important}html.a11y-contrast :focus-visible{box-shadow:0 0 0 6px #101010!important;outline-color:#fff36a!important}
.legal-header{border-bottom:1px solid var(--line);padding-block:24px}.legal-header>.wrap{display:flex;align-items:center;justify-content:space-between;gap:25px;flex-wrap:wrap}.legal-header nav{display:flex;position:static;flex-direction:row;align-items:center;flex-wrap:wrap;gap:22px;padding:0;border:0;background:none;font-size:.875rem}.legal-header nav a{min-height:44px;display:flex;align-items:center}.legal-content{max-width:900px;padding-block:65px 75px;min-width:0;overflow-wrap:anywhere}.legal-kicker{color:#123ca8;letter-spacing:1px;font-size:.75rem}.legal-content h1{font-size:clamp(2rem,5vw,3.5rem);line-height:1.3;font-weight:900;letter-spacing:-.04em;margin:18px 0}.legal-date{font-size:.8125rem;margin-bottom:30px}.legal-content .legal-intro{font-size:1.125rem;line-height:1.9;color:var(--ink);padding-bottom:30px;border-bottom:1px solid var(--line)}.legal-content h2{font-size:1.5rem;line-height:1.5;letter-spacing:0;margin:36px 0 12px}.legal-content p,.legal-content li{font-size:1rem;line-height:1.95}.legal-content p{margin:12px 0}.legal-content ul{padding-inline-start:25px}.legal-content li{margin-bottom:9px}.legal-content a{text-decoration:underline;text-underline-offset:3px}.legal-contact{border-right:4px solid #123ca8;background:#e9edea;padding:20px 24px;margin-top:25px}.legal-contact p{color:var(--ink)}.legal-footer{border-top:1px solid var(--line);padding-block:28px 90px}.legal-footer>.wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.legal-footer a{display:inline-flex;min-height:44px;align-items:center;font-size:.875rem}.legal-contact-name{font-weight:700}.legal-reset{border:1px solid #123ca8;padding:10px 15px;margin-block:10px}.legal-sources{border-top:1px solid var(--line);padding-top:20px}.legal-sources p{font-size:.8125rem}html.a11y-contrast .legal-contact{background:#101010;color:#fff;border-color:#fff}html.a11y-enlarged .legal-content h1{font-size:2rem}html.a11y-enlarged .legal-header .brand span{max-width:100%}
@media(max-width:700px){.a11y-trigger{left:12px;bottom:70px;padding:9px 12px;font-size:.875rem}.a11y-dialog{left:10px;bottom:10px;max-width:calc(100% - 20px);max-height:calc(100dvh - 20px);padding:25px 20px}.legal-header{padding-block:20px}.legal-header nav{gap:12px 20px;font-size:.8125rem}.legal-content{padding-block:35px 50px}.legal-content .legal-intro{font-size:1rem}.legal-content p,.legal-content li{font-size:.9375rem}.legal-content h2{font-size:1.3rem}.legal-contact{padding:15px 18px}.legal-footer>.wrap{gap:10px 25px}.contact-form .form-privacy{font-size:.75rem}html.a11y-enlarged h2{font-size:2rem}html.a11y-enlarged .a11y-trigger>span{display:none}html.a11y-enlarged .a11y-trigger{bottom:15px}html.a11y-enlarged .hero-visual{height:400px}html.a11y-enlarged .hero h1{font-size:2.5rem}html.a11y-enlarged .a11y-dialog h2{font-size:1.4rem}html.a11y-enlarged .hero-actions .button{max-width:100%}}
@media(forced-colors:active){:focus-visible{outline:3px solid Highlight!important}.a11y-trigger,.a11y-dialog,.a11y-toggle,.a11y-sizes button{border:2px solid ButtonText}.a11y-sizes button[aria-pressed=true],.a11y-toggle[aria-pressed=true]{outline:3px solid Highlight;outline-offset:-4px}}
html.a11y-enlarged .sensei-teaching{grid-template-columns:minmax(0,1fr)}html.a11y-enlarged .sensei-teaching img{max-width:320px}html.a11y-enlarged .sensei-rank{flex-wrap:wrap}
