:root{color:#263247;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--brand-primary:#274289;--brand-secondary:#41c8e6;--brand-ink:#20345f;--brand-link:#15546a;--accent:#b98236;--background:#fff;--background-soft:#f5f8fb;--background-blue:#edf4f7;--text:#263247;--text-muted:#536174;--border:#d8e1e8;--focus:#b15b00;--success:#176b45;--error:#a12622;--content-width:1160px;--header-height:78px;background:#fff;font-family:Inter,Segoe UI,Arial,sans-serif;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 1rem)}body{margin:0;line-height:1.65}body,button,input,textarea{font-family:Inter,Segoe UI,Arial,sans-serif}button,input,textarea{font-size:inherit}img{max-width:100%;display:block}a{color:var(--brand-link);text-underline-offset:.2em}a:hover{color:var(--brand-primary)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}::selection{color:#fff;background:var(--brand-primary)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}#root{flex-direction:column;min-height:100svh;display:flex}.skip-link{z-index:20;color:#fff;background:var(--brand-primary);border-radius:.4rem;padding:.7rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;flex:none;position:sticky;top:0}.site-header__inner{width:min(100% - 3rem, var(--content-width));min-height:var(--header-height);justify-content:space-between;align-items:center;gap:clamp(.75rem,2vw,1.75rem);margin-inline:auto;display:flex}.brand{min-width:0;color:var(--brand-primary);flex:0 auto;text-decoration:none;display:flex}.brand__logo{width:clamp(135px,17vw,220px);height:auto;display:block}.desktop-navigation{align-items:center;gap:clamp(.65rem,1.8vw,1.45rem);display:flex}.nav-link{min-height:44px;color:var(--text);align-items:center;font-size:.92rem;font-weight:600;text-decoration:none;display:inline-flex}.nav-link:hover,.nav-link--active{color:var(--brand-primary)}.nav-link--active{text-decoration:underline;-webkit-text-decoration-color:var(--brand-secondary);text-decoration-color:var(--brand-secondary);text-underline-offset:.4rem;text-decoration-thickness:3px}.button{cursor:pointer;text-align:center;border:2px solid #0000;border-radius:.45rem;justify-content:center;align-items:center;min-height:48px;padding:.75rem 1.15rem;font-size:.94rem;font-weight:700;line-height:1.2;text-decoration:none;transition:background-color .16s,color .16s,border-color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button--primary{border-color:var(--brand-primary);color:#fff;background:var(--brand-primary)}.button--primary:hover{border-color:var(--brand-ink);color:#fff;background:var(--brand-ink)}.button--outline{border-color:var(--brand-primary);color:var(--brand-primary);background:0 0}.button--outline:hover{color:#fff;background:var(--brand-primary)}.header-appointment__short,.menu-toggle,.mobile-navigation{display:none}.mobile-navigation[hidden]{display:none!important}.site-main{flex:1 0 auto}.hero{width:min(100% - 3rem, var(--content-width));grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(2rem,5vw,5rem);margin:0 auto;padding:clamp(3.5rem,7vw,6.5rem) 0;display:grid}.hero__content{max-width:620px}.eyebrow{color:var(--brand-link);letter-spacing:.13em;text-transform:uppercase;margin:0 0 .85rem;font-size:.77rem;font-weight:800;line-height:1.4}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--brand-ink);font-family:Georgia,Times New Roman,serif;line-height:1.17}h1{letter-spacing:-.035em;max-width:18ch;margin-bottom:1.15rem;font-size:clamp(2.35rem,5vw,4.15rem);font-weight:500}h2{letter-spacing:-.025em;margin-bottom:1rem;font-size:clamp(1.75rem,3.2vw,2.6rem);font-weight:500}h3{margin-bottom:.7rem;font-size:1.34rem;font-weight:600}p{margin-bottom:1rem}.hero__lead,.body-large{max-width:62ch;color:var(--text-muted);font-size:clamp(1.1rem,1.7vw,1.27rem);line-height:1.7}.button-row{flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1.65rem;display:flex}.hero__image{aspect-ratio:1.43;object-fit:cover;object-position:center 36%;border-radius:.85rem;width:100%;height:auto;box-shadow:0 1.2rem 3rem #20345f29}.section{width:min(100% - 3rem, var(--content-width));margin-inline:auto;padding-block:clamp(3.5rem,7vw,6.5rem)}.section--soft{width:100%;padding-inline:max(1.5rem, calc((100% - var(--content-width)) / 2));background:var(--background-soft)}.section-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:center;gap:clamp(2rem,5vw,5rem);display:grid}.section-grid--feature{width:min(100% - 3rem, var(--content-width));margin-inline:auto}.section-grid--profile{align-items:start;width:min(100% - 3rem,1020px);margin-inline:auto}.image-frame{background:var(--background-blue);border-radius:.85rem;overflow:hidden;box-shadow:0 1rem 2.5rem #20345f1f}.image-frame img{object-fit:cover;width:100%;height:100%}.section-grid--feature .image-frame:not(.image-frame--poster) img{aspect-ratio:1.43}.image-frame--portrait img{aspect-ratio:1.12;object-position:center 35%}.image-frame--poster{max-width:470px;margin-inline:auto;box-shadow:0 .8rem 2rem #20345f1f}.image-frame--poster img{object-fit:contain;height:auto}.profile-copy p{color:var(--text-muted)}.profile-copy .button{margin-top:.6rem}.section-intro{text-align:center;max-width:690px;margin:0 auto clamp(2rem,4vw,3rem)}.section-intro>p:last-child{color:var(--text-muted);margin-bottom:0;font-size:1.08rem}.card-grid{gap:1.1rem;display:grid}.card-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}.card-grid--two{width:min(100%, var(--content-width));grid-template-columns:repeat(2,minmax(0,1fr));margin-inline:auto}.card-grid--recognition{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.recognition-card{border:1px solid var(--border);background:#fff;border-radius:.7rem;place-items:center;min-width:0;min-height:230px;margin:0;padding:1rem;display:grid}.recognition-card img{object-fit:contain;width:100%;height:205px}.info-card{border:1px solid var(--border);background:var(--background);border-radius:.7rem;min-width:0;padding:clamp(1.35rem,2vw,2rem);position:relative;box-shadow:0 .55rem 1.7rem #20345f0d}.info-card h2{margin-top:.5rem;font-size:clamp(1.35rem,2.1vw,1.75rem)}.info-card h3{margin-top:.45rem}.info-card p{color:var(--text-muted)}.info-card p:last-child{margin-bottom:0}.card-number{color:var(--brand-link);letter-spacing:.12em;font-size:.77rem;font-weight:800;display:inline-block}.visual-icon{width:3.25rem;height:3.25rem;color:var(--brand-primary);background:var(--background-blue);border-radius:50%;place-items:center;display:grid}.visual-icon svg{width:2rem;height:2rem}.info-card--compact{padding:1.4rem}.text-link{align-items:center;gap:.55rem;min-height:44px;margin-top:.8rem;font-weight:800;display:inline-flex}.text-link--center{width:fit-content;margin:1.6rem auto 0;display:flex}.tai-chi-preview{align-items:center}.page-hero{background:linear-gradient(120deg, #27428912, transparent 65%), var(--background-blue);text-align:center;padding:clamp(3.5rem,7vw,6rem) 1.5rem}.page-hero .eyebrow,.page-hero h1,.page-hero__description{margin-inline:auto}.page-hero h1{max-width:21ch}.page-hero__description{max-width:65ch;color:var(--text-muted);margin-bottom:0;font-size:1.12rem}.page-hero--not-found{padding-block:clamp(4rem,10vw,8rem)}.page-hero--not-found>p:not(.eyebrow){color:var(--text-muted)}.service-card{min-height:190px}.service-card h2{margin-top:.9rem}.review-card blockquote{color:var(--text-muted);margin:0;font-size:.98rem}.review-stars{color:var(--accent);letter-spacing:.08em;align-items:center;gap:.7rem;font-size:1.05rem;font-weight:800;display:flex}.review-source{color:var(--text-muted);letter-spacing:0;font-size:.78rem;font-weight:700}.blog-coming-soon{border:1px solid var(--border);text-align:center;background:#fff;border-radius:.7rem;justify-items:center;max-width:600px;margin-inline:auto;padding:clamp(2rem,5vw,3.5rem);display:grid}.blog-coming-soon .visual-icon{margin-bottom:1rem}.blog-coming-soon h2{margin-bottom:.5rem}.blog-coming-soon p{color:var(--text-muted);margin-bottom:0}.section-grid--poster{width:min(100% - 3rem,1040px);margin-inline:auto}.section-grid--poster>div:last-child p{color:var(--text-muted)}.cta-section{width:100%;padding:clamp(2.75rem, 6vw, 5rem) max(1.5rem, calc((100% - var(--content-width)) / 2));color:#fff;background:var(--brand-primary);justify-content:space-between;align-items:center;gap:2rem;display:flex}.cta-section>div:first-child{max-width:590px}.cta-section h2{color:#fff}.cta-section p:not(.eyebrow){color:#e9f3ff;margin-bottom:0}.eyebrow--light{color:#bdeeff}.button--light{color:var(--brand-primary);background:#fff;border-color:#fff}.button--light:hover{color:var(--brand-ink);background:#eaf8fb}.button--light-outline{color:#fff;background:0 0;border-color:#fff}.button--light-outline:hover{color:var(--brand-primary);background:#fff}.contact-layout{width:min(100%, var(--content-width));grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:1.25rem;margin-inline:auto;display:grid}.contact-card,.contact-form-card{border:1px solid var(--border);background:#fff;border-radius:.75rem;min-width:0;padding:clamp(1.3rem,3vw,2.2rem);box-shadow:0 .55rem 1.7rem #20345f0d}.contact-card h2,.contact-form-card h2{font-size:clamp(1.65rem,2.7vw,2.15rem)}.contact-list{margin:1.6rem 0 2rem}.contact-list>div{border-bottom:1px solid var(--border);padding-block:.9rem}.contact-list dt{color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.25rem;font-size:.82rem;font-weight:700}.contact-list dd{overflow-wrap:anywhere;margin:0;font-weight:600}.contact-list dd a{min-height:44px;padding-block:.4rem;display:inline-block}.link-hint{font-size:.83rem;font-weight:500;display:block}.inline-divider{color:var(--text-muted);margin-inline:.65rem}.business-hours h3{font-size:1.25rem}.business-hours dl{margin:0}.business-hours dl>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:1rem;padding-block:.35rem;display:flex}.business-hours dt{font-weight:700}.business-hours dd{text-align:right;margin:0}.form-privacy{color:var(--text-muted);margin-top:.85rem;font-size:.88rem}.contact-form-card>p:not(.eyebrow){color:var(--text-muted)}.form-field{gap:.35rem;margin-top:1rem;display:grid}.form-field label{font-weight:700}.form-field input,.form-field textarea{width:100%;min-height:48px;color:var(--text);background:#fff;border:1px solid #758399;border-radius:.35rem;padding:.7rem .8rem}.form-field textarea{resize:vertical;min-height:130px}.form-field input:focus,.form-field textarea:focus{border-color:var(--brand-primary);outline-offset:1px;outline:3px solid #27428933}.form-status{color:var(--success);margin:1rem 0 0;font-weight:600}.prose{max-width:820px}.prose h2{margin-top:2rem;font-size:1.55rem}.prose h2:first-child{margin-top:0}.prose p{color:var(--text-muted)}.site-footer{color:#f5f8ff;background:#17294f}.site-footer__main,.site-footer__bottom{width:min(100% - 3rem, var(--content-width));justify-content:space-between;align-items:center;gap:1.5rem;margin-inline:auto;display:flex}.site-footer__main{padding-block:2.5rem}.footer-brand{color:#fff;margin-bottom:.55rem;font-family:Georgia,Times New Roman,serif;font-size:1.2rem;font-weight:700;text-decoration:none;display:inline-block}.site-footer address{color:#d9e3f3;font-size:.94rem;font-style:normal}.footer-contact,.footer-socials{gap:.35rem;display:grid}.site-footer a{color:#fff;overflow-wrap:anywhere}.site-footer__bottom{color:#d9e3f3;border-top:1px solid #ffffff38;padding-block:1.1rem;font-size:.86rem}.site-footer__bottom p{margin:0}.site-footer__bottom nav{gap:1.25rem;display:flex}.site-footer__bottom nav a{align-items:center;min-height:44px;display:inline-flex}@media (width<=1020px){.site-header__inner{width:min(100% - 2rem, var(--content-width))}.desktop-navigation{gap:.65rem}.nav-link{font-size:.85rem}.header-appointment{padding-inline:.8rem;font-size:.85rem}.hero{gap:2rem}}@media (width<=860px){:root{--header-height:72px}.desktop-navigation{display:none}.header-appointment{margin-left:auto}.header-appointment__full{display:none}.header-appointment__short{display:inline}.menu-toggle{border:1px solid var(--border);width:46px;min-width:46px;height:46px;color:var(--brand-primary);cursor:pointer;background:#fff;border-radius:.4rem;justify-content:center;align-items:center;padding:0;display:inline-flex}.menu-toggle__icon,.menu-toggle__icon:before,.menu-toggle__icon:after{background:currentColor;border-radius:2px;width:21px;height:2px;transition:transform .16s;display:block}.menu-toggle__icon{position:relative}.menu-toggle__icon:before,.menu-toggle__icon:after{content:"";position:absolute;left:0}.menu-toggle__icon:before{top:-7px}.menu-toggle__icon:after{top:7px}.menu-toggle--open .menu-toggle__icon{background:0 0}.menu-toggle--open .menu-toggle__icon:before{top:0;transform:rotate(45deg)}.menu-toggle--open .menu-toggle__icon:after{top:0;transform:rotate(-45deg)}.mobile-navigation{z-index:11;inset:var(--header-height) 0 0;background:#fff;flex-direction:column;gap:.25rem;padding:1rem max(1rem,50% - 340px) 2rem;display:flex;position:fixed;overflow-y:auto}.mobile-navigation .nav-link{border-bottom:1px solid var(--border);min-height:52px;padding-inline:.75rem;font-size:1.05rem}.mobile-navigation__appointment{margin-top:1rem}.hero{grid-template-columns:1fr;gap:2rem;padding-block:3.5rem}.hero__content{max-width:760px}.hero__image{max-width:720px;margin-inline:auto}.section-grid{gap:2rem}.card-grid--three,.card-grid--recognition{grid-template-columns:repeat(2,minmax(0,1fr))}.cta-section{flex-direction:column;align-items:flex-start}.contact-layout{grid-template-columns:1fr}}@media (width<=620px){.site-header__inner,.hero,.section-grid--feature,.section-grid--profile,.section-grid--poster,.section,.site-footer__main,.site-footer__bottom{width:min(100% - 2rem, var(--content-width))}.site-header__inner{gap:.55rem}.brand{min-width:0}.brand__logo{width:150px}.header-appointment{min-height:44px;padding:.6rem .75rem;font-size:.82rem}.menu-toggle{width:44px;min-width:44px;height:44px}.hero{padding-block:3rem}h1{font-size:clamp(2.2rem,10vw,3rem)}.section-grid,.section-grid--profile,.section-grid--poster{grid-template-columns:1fr}.section-grid--profile .image-frame{max-width:480px;margin-inline:auto}.card-grid--three,.card-grid--two{grid-template-columns:1fr}.service-card{min-height:0}.section--soft{padding-inline:1rem}.section--soft .section-grid--feature{width:100%}.button-row{align-items:stretch}.button-row .button{flex:auto}.cta-section{padding-inline:1rem}.site-footer__main,.site-footer__bottom{flex-direction:column;align-items:flex-start}.site-footer__main{gap:1.4rem}.site-footer__bottom{gap:.6rem}}@media (width<=360px){.site-header__inner{gap:.4rem;width:calc(100% - 1.25rem)}.brand__logo{width:135px}.header-appointment{padding-inline:.55rem;font-size:.77rem}.menu-toggle{width:42px;min-width:42px}.button-row .button{width:100%}}
