@charset "UTF-8";
:root{--paper:#faf8f3;--white:#fffefa;--ink:#2c342e;--muted:#70746a;--orange:#bc562f;--orange-dark:#9c4022;--peach:#f1e4d6;--line:#deded2;--green:#344c3e;--sage:#e8ece1;--serif:"Noto Serif SC","Source Han Serif SC","Songti SC","STSong","SimSun",serif;--sans:"PingFang SC","Microsoft YaHei",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:15px;line-height:1.85;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button{line-height:inherit}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3,h4{margin:0}ul,ol{padding:0;margin:0;list-style:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}::selection{background:#ecd0b8}[hidden]{display:none!important}.wrap{width:min(1200px,calc(100% - 96px));margin:auto}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:var(--green);color:white;padding:12px 24px}.skip:focus{top:10px}.utility{height:33px;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.06em}.utility .wrap{display:flex;align-items:center;justify-content:space-between;height:100%}.utility-links{display:flex;gap:24px}.utility a:hover{color:var(--orange)}.header{position:sticky;top:0;z-index:30;background:rgba(250,248,243,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(16px)}.header-inner{height:87px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{width:174px;flex-shrink:0}.brand img{width:174px;height:auto}.nav{display:flex;align-items:center;gap:30px}.nav a{position:relative;font-size:14px;padding:30px 0;white-space:nowrap}.nav a:after{content:"";position:absolute;bottom:18px;left:0;right:0;height:2px;background:var(--orange);transform:scaleX(0);transition:transform .2s}.nav a:hover,.nav a[aria-current]{color:var(--orange)}.nav a[aria-current]:after,.nav a:hover:after{transform:scaleX(1)}.header-cta{font-size:13px;white-space:nowrap;color:white;background:var(--green);padding:10px 18px;border-radius:4px}.header-cta:hover{background:#253b2e}.mobile-toggle{display:none;background:none;border:1px solid var(--line);border-radius:4px;width:42px;height:42px;font-size:21px}.mobile-links{display:none}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--orange);display:flex;align-items:center;gap:11px;margin-bottom:20px}.eyebrow:before{content:"";width:23px;height:1px;background:currentColor}.display{font-family:var(--serif);font-weight:500;letter-spacing:-.035em;font-size:clamp(38px,4.4vw,64px);line-height:1.4}.display em{font-style:normal;color:var(--orange)}.lead{color:var(--muted);font-size:16px;line-height:2;margin-top:24px;max-width:560px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:32px}.button{display:inline-flex;justify-content:center;align-items:center;gap:28px;background:var(--orange);border:1px solid var(--orange);border-radius:4px;color:#fff;padding:12px 24px;font-size:14px;transition:background .2s,transform .2s;min-height:50px}.button:hover{background:var(--orange-dark);border-color:var(--orange-dark);transform:translateY(-2px)}.button.secondary{color:var(--ink);border-color:var(--line);background:transparent}.button.secondary:hover{background:var(--peach)}.button.green{background:var(--green);border-color:var(--green)}.text-link{display:inline-flex;align-items:center;gap:24px;border-bottom:1px solid #b9bbaa;padding:6px 0;font-size:14px}.text-link:hover{color:var(--orange);border-color:var(--orange)}.arrow{font-size:20px;font-weight:400;line-height:1}.home-hero{padding:65px 0 55px;position:relative;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.04fr 1fr;align-items:center;gap:65px}.hero-copy{padding-bottom:14px}.hero-sub{font-size:12px;letter-spacing:.09em;display:flex;gap:18px;align-items:center;margin-top:36px;color:var(--muted)}.hero-sub span+span:before{content:"·";margin-right:18px}.hero-visual{position:relative;padding:15px 18px 20px 0}.hero-photo{position:relative;background:var(--peach);border-radius:180px 180px 7px 7px;overflow:hidden;height:530px}.hero-photo>img{height:100%;object-fit:cover;object-position:center 42%}.hero-photo:after{content:"";position:absolute;inset:65% 0 0;background:linear-gradient(transparent,rgba(25,35,26,.6))}.hero-photo figcaption{position:absolute;bottom:28px;left:28px;color:white;z-index:1}.hero-photo figcaption small{display:block;font-size:10px;letter-spacing:.18em;opacity:.8}.hero-photo figcaption p{font-family:var(--serif);font-size:24px;margin-top:4px}.hero-stamp{position:absolute;right:-18px;top:38px;border-radius:50%;width:108px;height:108px;background:var(--sage);border:6px solid var(--paper);display:flex;justify-content:center;align-items:center;text-align:center;font-size:12px;line-height:1.8;transform:rotate(9deg);color:var(--green)}.photo-note{position:absolute;left:-30px;bottom:0;background:var(--white);border:1px solid var(--line);padding:17px 22px;display:flex;gap:14px;box-shadow:0 10px 40px #344c3e0a}.photo-note .mark{font-family:var(--serif);font-size:30px;color:var(--orange);line-height:1.4}.photo-note strong{display:block;font-size:14px;font-weight:500}.photo-note small{font-size:11px;color:var(--muted)}.entry-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.entry-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr)}.entry-strip a{padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:15px}.entry-strip a:first-child{padding-left:0}.entry-strip a+a{border-left:1px solid var(--line)}.entry-strip small{display:block;color:var(--muted);font-size:11px}.entry-strip strong{font-weight:500;font-size:15px}.entry-strip .arrow{color:var(--orange)}.entry-strip a:hover{color:var(--orange)}.section{padding:88px 0}.section.soft{background:#eeefe7}.section.white{background:var(--white)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:36px}.section-head h2,.section-title{font-family:var(--serif);font-size:36px;font-weight:500;letter-spacing:-.02em;line-height:1.5}.section-head p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:340px}.section-head .eyebrow{margin-bottom:12px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.service-card{display:flex;flex-direction:column}.service-card .service-image{height:235px;overflow:hidden;border-radius:4px;background:var(--peach)}.service-card img{height:100%;object-fit:cover;transition:transform .5s}.service-card:hover img{transform:scale(1.04)}.service-card .card-meta{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:11px;margin:20px 0 8px}.service-card h3{font-size:24px;font-family:var(--serif);font-weight:500;display:flex;justify-content:space-between;align-items:center}.service-card h3 .arrow{color:var(--orange)}.service-card p{font-size:14px;color:var(--muted);margin-top:10px}.footnote{color:var(--muted);font-size:12px;margin-top:22px}.split{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center}.editorial-photo img{height:460px;object-fit:cover;border-radius:4px}.editorial-photo figcaption{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;padding-top:12px}.number-list{margin:27px 0}.number-list article{border-top:1px solid #cbd0c4;padding:20px 0;display:flex;gap:20px}.number-list b{font-size:11px;color:var(--orange);padding-top:3px;font-weight:500}.number-list h3{font-size:16px;font-weight:500}.number-list p{font-size:13px;color:var(--muted);margin-top:4px}.next-panel{background:var(--green);color:#fff;padding:58px 0}.next-inner{display:flex;align-items:center;justify-content:space-between;gap:32px}.next-panel h2{font-family:var(--serif);font-size:32px;font-weight:500;line-height:1.55}.next-panel p{font-size:14px;color:#d0d7cd;margin-top:12px}.next-panel .button{background:#f2e5d3;color:var(--green);border-color:#f2e5d3}.next-panel .button:hover{background:#fff9ef}.next-panel small{display:block;font-size:11px;color:#c5cec1;margin-top:10px;text-align:center}.footer{padding:55px 0 20px;background:#f1eee6}.footer-top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:35px}.footer-brand img{width:155px}.footer-brand p{color:var(--muted);font-size:12px;margin-top:16px}.footer h3{font-size:13px;font-weight:500;margin-bottom:14px}.footer ul a{font-size:12px;color:var(--muted)}.footer ul li{margin:5px 0}.footer a:hover{color:var(--orange)}.footer .phone{font-size:21px;letter-spacing:.03em}.footer small{display:block;font-size:11px;color:var(--muted);margin-top:8px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px;flex-wrap:wrap}.footer-bottom div{display:flex;gap:20px}.mobile-bar{display:none}.crumb{font-size:11px;color:var(--muted);margin:24px 0 0}.crumb a:hover{color:var(--orange)}.page-hero{padding:44px 0 60px;border-bottom:1px solid var(--line)}.page-hero .display{font-size:46px}.page-hero.with-photo .split{gap:60px;grid-template-columns:1.1fr 1fr}.page-hero figure{position:relative}.page-hero figure>img{height:350px;object-fit:cover;border-radius:120px 4px 4px 4px}.page-hero figcaption{font-size:11px;color:var(--muted);margin-top:10px}.page-hero .lead{font-size:15px}.page-local-nav{margin-top:22px;display:flex;gap:25px;font-size:12px;color:var(--muted)}.page-local-nav a:hover{color:var(--orange)}.recommend{display:grid;grid-template-columns:1fr 1fr;gap:48px;border:1px solid var(--line);padding:36px;background:var(--white);border-radius:5px}.recommend h3{font-size:23px;font-family:var(--serif);font-weight:500;margin-bottom:8px}.recommend p{font-size:13px;color:var(--muted)}.choice-label{font-size:13px;margin-bottom:12px;display:block}.choices{display:flex;flex-wrap:wrap;gap:10px}.choices label{position:relative;cursor:pointer}.choices input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.choices span{display:block;border:1px solid var(--line);padding:8px 15px;border-radius:3px;font-size:13px}.choices input:checked+span{background:var(--green);color:white;border-color:var(--green)}.choices input:focus-visible+span{outline:3px solid var(--orange);outline-offset:3px}.recommend-result{background:var(--sage);padding:24px;border-left:3px solid var(--green)}.recommend-result .text-link{margin-top:16px}.recommend-result strong{display:block;font-size:18px;font-weight:500;margin-bottom:8px}.compare{border-top:1px solid var(--line)}.compare-row{display:grid;grid-template-columns:160px repeat(3,1fr);border-bottom:1px solid var(--line)}.compare-row>*{padding:19px 20px;font-size:13px}.compare-row>*+*{border-left:1px solid var(--line)}.compare-row .label{color:var(--muted)}.compare-row.head>*{font-weight:500;font-size:17px;background:var(--sage)}.compare-row.head .label{font-size:13px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.step{border-top:1px solid var(--line);padding-top:20px}.step b{font-family:var(--serif);font-size:29px;color:var(--orange);font-weight:400}.step h3{font-weight:500;font-size:17px;margin-top:8px}.step p{font-size:13px;color:var(--muted);margin-top:10px}.faq{border-top:1px solid var(--line);max-width:900px}.faq details{border-bottom:1px solid var(--line)}.faq summary{padding:20px 35px 20px 0;position:relative;cursor:pointer;list-style:none;font-size:15px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:5px;font-size:21px;color:var(--orange);top:14px}.faq details[open] summary:after{content:"−"}.faq details p{font-size:14px;color:var(--muted);padding:0 35px 23px 0}.three-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.info-card{border-top:1px solid var(--line);padding:23px 0}.info-card .mini{color:var(--orange);font-size:11px;letter-spacing:.12em;margin-bottom:13px}.info-card h3{font-size:20px;font-family:var(--serif);font-weight:500}.info-card p{font-size:14px;color:var(--muted);margin-top:12px}.tick-list li{font-size:14px;padding:12px 0;border-bottom:1px solid var(--line);display:flex;gap:15px}.tick-list li:before{content:"✓";color:var(--orange)}.detail-rail{display:grid;grid-template-columns:1.2fr 1fr;gap:60px}.boundary{background:var(--sage);padding:30px;border-radius:4px}.boundary h3{font-size:19px;font-weight:500;margin-bottom:10px}.boundary p{font-size:14px;color:#596457}.checklist{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.checklist li{border-bottom:1px solid var(--line);padding:16px 0;font-size:14px;display:flex;gap:18px}.checklist b{font-size:11px;color:var(--orange);font-weight:400}.filter-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px;flex-wrap:wrap}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{border:1px solid var(--line);padding:8px 18px;background:transparent;font-size:13px;border-radius:3px}.filter[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:#fff}.search{border:1px solid var(--line);background:var(--white);border-radius:3px;padding:10px 14px;font-size:13px;width:240px}.people-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px 23px}.person{background:var(--white);border:1px solid var(--line);border-radius:4px;overflow:hidden}.person-photo{height:265px;overflow:hidden;background:#f4e8d9}.person-photo img{height:100%;object-fit:cover;object-position:center 18%;transition:transform .5s}.person:hover img{transform:scale(1.035)}.person-body{padding:19px}.person .role{font-size:10px;letter-spacing:.08em;color:var(--orange)}.person h3{font-size:19px;font-weight:500;margin-top:4px}.person p{font-size:12px;color:var(--muted);margin-top:5px}.tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:14px}.tags span{font-size:10px;background:#f1f1e8;padding:2px 7px;color:#596457}.person button{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:none;border:0;border-top:1px solid var(--line);padding:12px 0 0;font-size:13px;color:var(--green)}.result-count{font-size:12px;color:var(--muted);margin-bottom:16px}.empty{background:var(--sage);padding:45px;text-align:center}.proof-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.proof-gallery img{height:240px;object-fit:cover;border-radius:3px}.proof-gallery h3{font-weight:500;font-size:17px;margin-top:17px}.proof-gallery p{font-size:13px;color:var(--muted);margin-top:8px}.evidence{display:grid;grid-template-columns:1fr 1fr;gap:26px}.evidence article{border:1px solid var(--line);padding:32px;background:var(--white)}.evidence blockquote{margin:16px 0;font-family:var(--serif);font-size:23px;line-height:1.7}.evidence small{display:block;font-size:11px;color:var(--muted)}.evidence button{font-size:12px;margin-top:18px;background:none;border:0;border-bottom:1px solid var(--line);padding:4px 0;color:var(--orange)}.about-pictures{display:grid;grid-template-columns:.7fr 1.3fr;gap:28px}.about-pictures img{height:350px;object-fit:cover;border-radius:4px}.about-pictures h3{font-size:19px;font-weight:500;margin-top:18px}.about-pictures p{font-size:13px;color:var(--muted);margin-top:7px}.quote{font-family:var(--serif);font-size:30px;line-height:1.8;font-weight:400;border-left:2px solid var(--orange);padding-left:25px;margin:20px 0 30px}.training-gallery{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:25px}.training-gallery img{height:310px;object-fit:cover;border-radius:3px}.training-gallery figcaption{font-size:12px;color:var(--muted);margin-top:12px}.link-button{background:none;border:0;border-bottom:1px solid var(--line);padding:6px 0;color:var(--orange);font-size:13px}.fee-grid{display:grid;grid-template-columns:1fr 1fr 1.2fr;border:1px solid var(--line);margin-top:28px}.fee-grid article{padding:28px}.fee-grid article+article{border-left:1px solid var(--line)}.fee-grid article:last-child{background:var(--sage)}.fee-grid span{font-size:13px}.fee-grid strong{display:block;font-family:var(--serif);font-size:46px;font-weight:400;color:var(--orange);line-height:1.8}.fee-grid strong small{font-size:15px}.fee-grid p{font-size:12px;color:var(--muted)}.cost-table{border-collapse:collapse;width:100%;font-size:13px;margin-top:30px}.cost-table td,.cost-table th{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line)}.cost-table th{background:var(--sage);font-weight:500}.contact-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:50px;align-items:start}.contact-card{background:var(--white);padding:35px;border:1px solid var(--line);border-radius:4px}.contact-card h2{font-family:var(--serif);font-size:27px;font-weight:500}.contact-card>p{font-size:13px;color:var(--muted);margin-top:9px}.contact-types{display:flex;border-bottom:1px solid var(--line);gap:20px;margin:24px 0}.contact-types button{background:none;border:0;border-bottom:2px solid transparent;padding:0 0 12px;font-size:13px}.contact-types button[aria-pressed="true"]{color:var(--orange);border-bottom-color:var(--orange)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:block;font-size:12px}.field input,.field select,.field textarea{display:block;width:100%;margin-top:7px;border:1px solid var(--line);background:var(--paper);padding:10px;border-radius:3px;font-size:13px;min-height:46px}.field.full{grid-column:1/-1}.field textarea{height:90px;resize:vertical}.form-help{font-size:11px;color:var(--muted);margin-top:15px}.form-submit{margin-top:22px;width:100%}.summary-box{margin-top:25px;background:var(--sage);padding:23px}.summary-box textarea{width:100%;height:260px;font-size:13px;border:0;background:transparent;resize:vertical;line-height:1.8}.summary-box .actions{gap:15px;margin-top:10px}.status{font-size:12px;color:var(--green);margin-top:8px;min-height:22px}.contact-aside{border-top:2px solid var(--orange);padding-top:25px}.contact-aside h2{font-family:var(--serif);font-size:24px;font-weight:500}.contact-aside .phone{font-size:29px;color:var(--orange);letter-spacing:.04em;display:block;margin:10px 0 20px}.qr-card{background:var(--sage);padding:28px;display:flex;gap:22px;align-items:center}.qr-card img{width:128px;height:128px;flex-shrink:0}.qr-card p{font-size:13px}.qr-card small{display:block;font-size:11px;color:var(--muted);margin-top:8px}.address{font-size:13px;margin-top:25px}.address strong{display:block;font-size:12px;font-weight:500;margin-bottom:7px}.contact-expect{font-size:13px;color:var(--muted);margin-top:28px}.contact-expect li{border-bottom:1px solid var(--line);padding:12px 0}.contact-expect b{color:var(--orange);font-size:11px;margin-right:15px}.modal-backdrop{position:fixed;inset:0;z-index:80;background:#1c281f99;display:flex;align-items:center;justify-content:center;padding:30px}.modal{position:relative;background:var(--paper);width:760px;max-width:100%;max-height:90vh;overflow:auto;border-radius:6px;padding:38px;box-shadow:0 25px 100px #0003}.modal-close{position:sticky;float:right;top:0;right:0;width:36px;height:36px;border:1px solid var(--line);background:var(--white);font-size:23px;line-height:1;z-index:2;border-radius:50%;margin:-18px -18px 0 0}.modal-profile{display:grid;grid-template-columns:180px 1fr;gap:30px}.modal-profile>img{height:245px;object-fit:cover;object-position:center 20%;border-radius:4px}.modal h2{font-size:27px;font-family:var(--serif);font-weight:500;margin-bottom:10px}.modal p{font-size:13px;color:var(--muted);margin-top:14px}.modal .actions{margin-top:25px;gap:17px}.modal-image{width:auto;max-width:100%;max-height:72vh;object-fit:contain;margin:auto}.image-modal{width:900px}.modal-image-caption{font-size:12px;text-align:center;margin-top:16px}.floating-contact{position:fixed;right:24px;bottom:28px;z-index:20;background:var(--green);color:#fff;border:0;border-radius:35px;padding:13px 20px;box-shadow:0 5px 25px #344c3e22;font-size:12px}.floating-contact span{margin-right:8px;color:#eecdad}.no-js-note{padding:15px;background:var(--sage);font-size:13px}.page-notice{padding:22px;background:var(--sage);font-size:13px;margin-top:25px}.not-found{padding:140px 0;text-align:center}.not-found h1{font-family:var(--serif);font-size:55px;font-weight:400}.not-found p{color:var(--muted);margin:15px 0 25px}
@media(min-width:1600px){.wrap{width:1280px}.hero-photo{height:580px}.display{font-size:66px}.hero-grid{gap:90px}}
@media(max-width:1180px){.wrap{width:calc(100% - 64px)}.header-inner{gap:20px}.nav{gap:20px}.brand,.brand img{width:154px}.hero-grid{gap:40px}.display{font-size:47px}.hero-photo{height:475px}.hero-stamp{right:-12px}.split{gap:45px}.people-grid{grid-template-columns:repeat(3,1fr)}.person-photo{height:300px}.footer-top{gap:25px}}
@media(max-width:980px){.nav{gap:16px}.nav a{font-size:12px}.header-cta{font-size:12px;padding:9px 13px}.brand,.brand img{width:138px}.header-inner{gap:14px}.hero-photo{height:430px}.display{font-size:41px}.hero-sub{gap:10px;font-size:11px}.hero-sub span+span:before{margin-right:10px}.section-head h2,.section-title{font-size:31px}.service-card .service-image{height:195px}.split{gap:35px}.editorial-photo img{height:430px}.people-grid{gap:20px}.person-photo{height:250px}.page-hero .display{font-size:38px}.contact-layout{gap:30px;grid-template-columns:1.15fr .85fr}.contact-card{padding:26px}.qr-card{padding:22px;display:block}.qr-card img{margin-bottom:15px}.footer-top{grid-template-columns:1.2fr 1fr 1fr}.footer-top>div:last-child{grid-column:1/-1;display:flex;align-items:center;gap:30px}.footer-top>div:last-child h3{margin-bottom:0}.footer-top>div:last-child small{margin:0}.training-gallery{gap:18px}.training-gallery img{height:250px}.compare-row{grid-template-columns:120px repeat(3,1fr)}.compare-row>*{padding:16px 14px}}
@media(max-width:760px){html{scroll-padding-top:88px}.wrap{width:calc(100% - 40px)}.utility{height:30px;font-size:10px}.utility .utility-message{letter-spacing:0}.utility-links{gap:13px}.utility-links .utility-phone{display:none}.header-inner{height:70px;gap:13px}.brand,.brand img{width:143px}.header-cta{margin-left:auto;padding:8px 12px;min-height:38px}.mobile-toggle{display:block;flex-shrink:0}.nav{display:none;position:absolute;top:70px;left:0;right:0;padding:12px 20px 22px;background:var(--paper);border-bottom:1px solid var(--line);max-height:calc(100vh - 80px);overflow:auto}.nav.open{display:block}.nav a{display:block;padding:13px 8px;border-bottom:1px solid var(--line);font-size:15px}.nav a:after{display:none}.nav a[aria-current]{background:var(--sage)}.nav .mobile-links{display:flex;gap:20px;padding-top:15px}.nav .mobile-links a{font-size:12px;border:0;padding:5px 8px;color:var(--muted)}.home-hero{padding:38px 0 35px}.hero-grid{grid-template-columns:1fr;gap:35px}.display{font-size:43px;line-height:1.45}.eyebrow{font-size:10px;margin-bottom:18px;letter-spacing:.1em}.lead{font-size:14px;margin-top:20px}.actions{gap:22px;margin-top:26px}.button{padding:11px 20px;font-size:13px;min-height:47px;gap:24px}.hero-copy{padding:0}.hero-sub{margin-top:25px;font-size:11px;gap:15px}.hero-sub span+span:before{margin-right:15px}.hero-visual{padding:0 12px 20px 12px}.hero-photo{height:430px;border-radius:150px 150px 5px 5px}.hero-photo>img{object-position:center 40%}.hero-stamp{width:91px;height:91px;font-size:10px;right:-2px;top:20px}.hero-photo figcaption{left:24px;bottom:35px}.hero-photo figcaption p{font-size:23px}.photo-note{left:0;bottom:0;padding:12px 17px}.photo-note strong{font-size:12px}.photo-note small{font-size:10px}.photo-note .mark{font-size:25px}.entry-strip .wrap{grid-template-columns:1fr}.entry-strip a{padding:15px 0;gap:10px}.entry-strip a+a{border-left:0;border-top:1px solid var(--line)}.entry-strip a>div{display:flex;align-items:center;gap:17px}.entry-strip small{font-size:10px}.entry-strip strong{font-size:14px}.section{padding:55px 0}.section-head{display:block;margin-bottom:27px}.section-head h2,.section-title{font-size:29px}.section-head p:not(.eyebrow){margin-top:15px;max-width:none;font-size:13px}.section-head>.text-link{margin-top:15px}.service-grid{grid-template-columns:1fr;gap:32px}.service-card .service-image{height:235px}.service-card .card-meta{margin-top:14px}.service-card h3{font-size:23px}.service-card p{font-size:13px}.split{grid-template-columns:1fr;gap:32px}.editorial-photo img{height:310px}.number-list{margin:22px 0}.number-list article{padding:16px 0}.next-panel{padding:42px 0}.next-inner{display:block}.next-panel h2{font-size:29px}.next-panel p{font-size:13px}.next-inner>div:last-child{margin-top:25px;display:inline-block}.footer{padding:38px 0 90px}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-brand{grid-column:1/-1}.footer-brand p{margin-top:12px}.footer-top>div:last-child{display:block}.footer-top>div:last-child .phone{display:block;margin-top:8px}.footer-top>div:last-child small{margin-top:6px}.footer-bottom{font-size:10px;gap:12px}.footer-bottom div{gap:12px;flex-wrap:wrap}.floating-contact{display:none}.mobile-bar{display:flex;align-items:center;gap:10px;position:fixed;bottom:0;left:0;right:0;z-index:35;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line)}.mobile-bar a{font-size:13px;text-align:center;padding:10px 15px;border-radius:3px}.mobile-bar .call{flex:1;border:1px solid var(--line)}.mobile-bar .consult{flex:1.7;background:var(--green);color:#fff}.crumb{font-size:10px;margin-top:20px}.page-hero{padding:32px 0 38px}.page-hero .display{font-size:35px}.page-hero.with-photo .split{grid-template-columns:1fr;gap:30px}.page-hero .lead{font-size:14px}.page-hero figure>img{height:290px;border-radius:100px 4px 4px 4px}.page-local-nav{gap:19px;flex-wrap:wrap;margin-top:20px;font-size:11px}.recommend{grid-template-columns:1fr;gap:25px;padding:24px}.choices span{font-size:12px;padding:7px 10px}.recommend h3{font-size:22px}.recommend-result{padding:20px}.compare-row{grid-template-columns:83px repeat(3,minmax(0,1fr))}.compare-row>*{padding:14px 8px;font-size:11px;overflow-wrap:anywhere}.compare-row.head>*{font-size:13px}.compare-row.head .label{font-size:11px}.steps{grid-template-columns:1fr 1fr;gap:27px 24px}.step b{font-size:25px}.step h3{font-size:16px}.step p{font-size:12px}.three-grid{grid-template-columns:1fr;gap:5px}.info-card{padding:21px 0}.info-card h3{font-size:21px}.info-card p{font-size:13px;margin-top:8px}.detail-rail{grid-template-columns:1fr;gap:28px}.boundary{padding:24px}.checklist{grid-template-columns:1fr}.checklist li{font-size:13px}.filter-bar{display:block}.filter{font-size:12px;padding:8px 13px}.search{width:100%;margin-top:18px}.people-grid{grid-template-columns:1fr 1fr;gap:17px 12px}.person-photo{height:210px}.person-body{padding:13px}.person .role{font-size:9px}.person h3{font-size:16px}.person p{font-size:11px}.tags{gap:4px;margin-top:10px}.tags span{font-size:9px;padding:2px 5px}.person button{font-size:12px;margin-top:15px}.proof-gallery{grid-template-columns:1fr;gap:30px}.proof-gallery img{height:260px}.proof-gallery p{font-size:13px}.evidence{grid-template-columns:1fr;gap:18px}.evidence article{padding:25px}.evidence blockquote{font-size:22px}.about-pictures{grid-template-columns:1fr;gap:28px}.about-pictures img{height:300px}.about-pictures figure:first-child img{object-position:center 43%}.quote{font-size:26px}.training-gallery{grid-template-columns:1fr 1fr;gap:24px 16px}.training-gallery figure:first-child{grid-column:1/-1}.training-gallery img{height:230px}.training-gallery figure:first-child img{height:260px}.training-gallery figcaption{font-size:11px}.fee-grid{grid-template-columns:1fr 1fr}.fee-grid article{padding:20px}.fee-grid article:last-child{grid-column:1/-1;border-left:0;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.fee-grid strong{font-size:39px}.cost-table{font-size:11px}.cost-table td,.cost-table th{padding:12px 9px}.contact-layout{grid-template-columns:1fr;gap:36px}.contact-card{padding:24px 20px}.contact-card h2{font-size:25px}.contact-types{gap:18px}.contact-types button{font-size:12px}.form-grid{gap:17px 12px}.field{font-size:11px}.field input,.field select,.field textarea{font-size:12px;min-width:0}.qr-card{display:flex;padding:22px;gap:20px}.qr-card img{width:115px;height:115px;margin:0}.contact-aside .phone{font-size:28px}.modal-backdrop{padding:20px 13px}.modal{padding:30px 23px;max-height:85vh}.modal-profile{grid-template-columns:1fr;gap:22px}.modal-profile>img{width:155px;height:190px}.modal h2{font-size:25px}.modal-close{margin:-13px -8px 0 0}.modal .actions{gap:15px;flex-wrap:wrap}.modal-image{max-height:65vh}.faq summary{font-size:14px}.faq details p{font-size:13px}.not-found{padding:80px 0}.not-found h1{font-size:40px}}
@media(max-width:370px){.wrap{width:calc(100% - 32px)}.display{font-size:38px}.header-cta{padding:8px 9px;font-size:11px}.brand,.brand img{width:128px}.header-inner{gap:9px}.person-photo{height:185px}.utility{font-size:9px}.hero-sub{gap:10px}.hero-sub span+span:before{margin-right:10px}}
/* Keep captions clear of the overlapping photo note; put direct contact first on phones. */
.hero-photo figcaption{bottom:100px}
body[data-page="contact"] .page-hero{padding-top:30px;padding-bottom:38px}
body[data-page="contact"] .page-hero .display{font-size:40px}
body[data-page="contact"] .section{padding-top:55px}
@media(max-width:760px){.hero-photo figcaption{bottom:100px}.hero-photo figcaption p{font-size:20px}body[data-page="contact"] .page-hero .display{font-size:33px}body[data-page="contact"] .section{padding-top:35px}.contact-aside{order:-1}.contact-expect{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
