/* Patient guide: calm hierarchy, readable type, purposeful emphasis. */
:root{--paper:#f7f6f2;--ink:#243d34;--muted:#53645c;--line:#d4dad3;--orange:#9a503b;--pale:#edf0e9;--space-section:64px}
body{font-size:16px;line-height:1.75}
:where(h1,h2,h3){text-wrap:balance}
:where(p,li){overflow-wrap:anywhere}
.eyebrow,.hero-copy>.eyebrow{font-size:14px;letter-spacing:.035em;color:var(--muted)}
.header.site-header{height:auto;min-height:96px;gap:24px}
.header.site-header nav{font-size:14px;gap:24px}
.header.site-header .brand{flex-shrink:0}
.header.site-header nav a{border-bottom:2px solid transparent;text-decoration:none}
.header.site-header nav a:hover{border-color:var(--line)}
.header.site-header nav a[aria-current=page]{border-color:var(--ink)}
.primary{font-size:16px;min-height:52px;padding:13px 20px;gap:32px;transition:background .15s}
.primary:hover{transform:none}
.primary>span{font-size:20px}
.hero{padding-top:64px;padding-bottom:64px;grid-template-columns:1.15fr 1fr;gap:64px;align-items:center}
.hero h1{font-size:clamp(36px,4.25vw,54px);line-height:1.35;letter-spacing:-.045em;margin-top:20px}
.hero h1>span,.care-hero h1>span,.about-hero h1 span{color:var(--ink)}
.hero-description{font-size:17px;line-height:1.9;margin-top:24px;max-width:33em}
.hero-foot{font-size:14px;line-height:1.7;margin-top:24px;gap:16px;flex-wrap:wrap;color:var(--muted)}
.hero-foot>span+span{padding-left:16px}
.first-visit{border-top:2px solid var(--ink);border-bottom:1px solid var(--line);padding:24px 0 4px;align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.first-visit h2{font-size:25px;line-height:1.6;letter-spacing:-.025em;margin:12px 0 20px}
.visit-flow{padding:0;margin:0;list-style:none}
.visit-flow li{display:grid;grid-template-columns:26px 1fr;gap:16px;padding:18px 0;border-top:1px solid var(--line)}
.visit-flow li>span{font-size:14px;color:var(--muted);font-variant-numeric:tabular-nums}
.visit-flow h3{font-size:16px;letter-spacing:-.015em;line-height:1.7;font-weight:600}
.visit-flow p{font-size:14px;line-height:1.8;color:var(--muted);margin-top:5px}
.guide,.questions,.care-section,.about-section,.visit-section{border-top-color:var(--line);padding-top:40px;padding-bottom:64px}
h2,.about-section h2,.visit-section h2,.care-page .questions h2{font-size:34px;letter-spacing:-.035em;line-height:1.45}
.section-top{margin-bottom:16px;gap:20px}
.small-note{font-size:14px}
.treatment-links{gap:16px;margin-top:28px}
.treatment-card,.treatment-card.chuna-card,.treatment-card.ultrasound-card,.treatment-card.herbal-card{background:transparent;border:1px solid var(--line);padding:24px;transition:background .15s,border-color .15s;min-height:0}
.treatment-card:hover{transform:none;background:var(--pale);border-color:var(--ink)}
.care-number{font-size:14px;letter-spacing:0;color:var(--muted)}
.treatment-card h3{font-size:24px;line-height:1.55;letter-spacing:-.025em;margin-top:12px;max-width:none}
.treatment-card h3 span{display:none}
.treatment-card p{font-size:16px;line-height:1.8;margin-top:12px;color:var(--muted)}
.care-link-label{font-size:14px;position:static;display:block;margin-top:20px;font-weight:600}
.care-choice-note,.guide-disclaimer,.care-guidance{font-size:14px;line-height:1.85;color:var(--muted);margin-top:20px}
.ultrasound-heading{margin-top:40px;padding-top:36px}
.ultrasound-heading h3{font-size:28px;line-height:1.5;letter-spacing:-.03em}
.body-tabs{gap:0;margin-top:28px;border:1px solid var(--line)}
.body-tab{border:0;border-right:1px solid var(--line);min-height:78px;padding:18px 22px;align-items:center;justify-content:space-between;gap:12px}
.body-tab:last-child{border-right:0}
.tab-number,.tab-name small{display:none}
.tab-name{font-size:24px;line-height:1.5}
.tab-mark{font-size:20px}
.body-tab[aria-selected=true],.body-tab[data-body=knee][aria-selected=true],.body-tab[data-body=ankle][aria-selected=true]{background:var(--ink);color:#fff;border-color:var(--ink)}
.region-intro{align-items:flex-start;padding:28px 0;gap:24px}
.region-intro h3{font-size:22px;line-height:1.6;min-width:190px}
.region-intro p{font-size:16px;color:var(--muted)}
.steps button,.care-steps button{font-size:14px;min-height:58px;padding:14px 10px;gap:8px;line-height:1.6}
.steps button>span{font-size:12px;flex-shrink:0}
.step-copy{padding:32px}
.step-copy>.eyebrow{font-size:14px;letter-spacing:.02em;color:var(--muted)}
.step-copy h3,.care-panel-body h3{font-size:27px;line-height:1.5;letter-spacing:-.03em}
.step-description,.care-panel-body>p,.care-panel-body .check-list li,.check-list li,.faq-answer{font-size:16px;line-height:1.85}
.clinical-note,.care-page .clinical-note{font-size:14px;line-height:1.85;background:#f0f2ec;padding:16px;color:var(--muted)}
.clinical-note>span{display:none}
.previous,.next,.step-navigation>span{font-size:14px;min-height:44px;letter-spacing:0}
.diagram-top,.diagram-controls>span{font-size:12px;letter-spacing:.02em}
.diagram-controls{gap:12px}
.diagram-controls>button{font-size:14px;min-height:44px}
.related-care{font-size:14px;line-height:1.8;gap:16px;flex-wrap:wrap}
.related-care a{min-height:44px}
.questions-grid{gap:64px;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr)}
.doctor-note{background:transparent;padding:24px 0;border-top:1px solid var(--line);margin-top:24px}
.doctor-note>.eyebrow,.doctor-note>small,.doctor-note>span:not(.eyebrow){font-size:14px;color:var(--muted)}
.doctor-note>p{font-size:18px}
.faq-group h3{font-size:16px;color:var(--ink)}
.faq-group h3 span{font-size:14px;color:var(--muted)}
.faq-list .sources summary,.source-date{font-size:14px;color:var(--muted)}
.faq-list summary{font-size:16px;min-height:64px}
.faq-answer{max-width:46em}
.care-hero,.about-hero,.visit-hero{padding-top:40px;padding-bottom:56px}
.care-breadcrumb{font-size:14px;margin-bottom:12px;display:inline-flex;align-items:center;min-height:44px}
.care-treatment-nav{padding-bottom:24px;gap:12px 28px}
.care-hero-grid{display:block;max-width:840px}
.care-hero h1{font-size:48px;line-height:1.4;letter-spacing:-.04em;margin-top:16px}
.care-hero h1 br{display:none}
.care-lead{font-size:17px;line-height:1.9;max-width:42em;margin-top:20px}
.care-tags{font-size:14px;line-height:1.7;margin-top:24px;color:var(--muted)}
.care-section-intro>p{font-size:16px;line-height:1.85;max-width:33em;color:var(--muted)}
.care-stage{padding:32px;border:1px solid var(--line);background:#fffefa}
.care-panel{grid-template-columns:minmax(200px,.7fr) minmax(0,1.3fr);gap:40px}
.care-focus,.herbal-page .care-focus{background:var(--pale);padding:24px;min-height:230px}
.care-focus-number,.herbal-page .care-focus-number{font:600 24px/1.5 Choeum,sans-serif;color:var(--muted);letter-spacing:0}
.care-focus>p{font-size:23px;line-height:1.6;letter-spacing:-.025em}
.care-focus>small{font-size:14px;line-height:1.8;color:var(--muted)}
.about-hero h1{font-size:48px;line-height:1.4;letter-spacing:-.04em}
.about-letter{background:var(--pale);color:var(--ink);border-top:2px solid var(--ink);padding:32px;min-height:0}
.about-letter-label,.about-signature span{font-size:14px;color:var(--muted)}
.about-letter blockquote{font-size:28px;line-height:1.75;letter-spacing:-.025em}
.about-letter blockquote span{color:var(--ink)}
.about-signature{border-color:var(--line)}
.about-signature strong{font-size:24px;letter-spacing:.03em}
.philosophy-index,.career-records li span,.career-study{font-size:14px}
.philosophy-list p,.about-lead,.about-blog p{font-size:16px;line-height:1.9;color:var(--muted)}
.philosophy-list h3{font-size:22px;line-height:1.65;letter-spacing:-.025em}
.credential-list{gap:0;border-top:1px solid var(--line)}
.credential-list>div,.credential-list>div:nth-child(2),.credential-list>div:nth-child(3){background:none;border-bottom:1px solid var(--line);padding:20px 0;gap:4px}
.credential-list dt{font-size:16px;color:var(--muted)}
.credential-list dd{font:600 26px/1.6 Choeum,sans-serif;letter-spacing:0}
.entrance-note,.parking-item.recommended{background:var(--pale)}
.entrance-floor strong{font:600 36px/1.4 Choeum,sans-serif;color:var(--ink)}
.parking-index,.parking-recommend{font-size:14px}
.visit-actions .primary+ .primary{background:transparent;color:var(--ink);border:1px solid var(--ink)}
.journal{padding-top:48px;padding-bottom:64px}
.journal h1{font-size:48px;letter-spacing:-.04em}
.journal-posts{gap:0 48px}
.journal-post h2{font-size:22px;letter-spacing:-.025em}
.footer.clinic-footer{padding-top:40px;padding-bottom:24px}
@media(max-width:1000px){.hero{gap:36px;grid-template-columns:1fr 1fr}.header.site-header nav{gap:14px}.header.site-header{gap:18px}.first-visit h2{font-size:23px}.care-hero h1,.about-hero h1{font-size:42px}.questions-grid{gap:36px}}
@media(max-width:800px){
 .header.site-header{display:grid;grid-template-columns:1fr auto;padding-top:16px;padding-bottom:8px;gap:8px 16px;min-height:0}
 .header.site-header .brand{font-size:22px}
 .header.site-header .nav-booking{grid-column:2;grid-row:1;min-height:44px;font-size:14px;padding:8px 14px}
 .header.site-header nav{grid-column:1/-1;grid-row:2;width:100%;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;font-size:14px}
 .header.site-header nav a{display:flex;justify-content:center;padding:10px 4px;white-space:normal;text-align:center;min-height:48px;line-height:1.6}
 .hero{grid-template-columns:1fr;gap:32px;padding-top:40px;padding-bottom:40px}
 .hero h1{font-size:40px;max-width:620px}
 .hero-description{font-size:16px;max-width:600px}
 .hero-foot{justify-content:flex-start}
 .first-visit{padding:20px 0 0}.first-visit h2{font-size:23px;margin-bottom:16px}.first-visit h2 br{display:none}
 .visit-flow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
 .visit-flow li{grid-template-columns:1fr;gap:8px}
 .questions-grid{grid-template-columns:1fr;gap:28px}
 .questions .doctor-column{display:block}
 .questions .doctor-note{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;padding:12px 0;margin-top:16px;max-width:none}
 .questions .doctor-note>.eyebrow,.questions .doctor-note>p,.questions .doctor-note>.doctor-rule,.questions .doctor-note>small{display:none}
 .questions .doctor-note .doctor-profile-link{margin:0 0 0 auto}
 .care-section-intro{display:block}.care-section-intro>p{margin-top:16px;max-width:none}
 .about-hero-grid{gap:28px}.about-hero h1{font-size:38px}
}
@media(max-width:600px){
 .header.site-header nav{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:12px}.header.site-header nav a{justify-content:flex-start;text-align:left}
 .header.site-header nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px;border-bottom-color:transparent}
 .hero h1{font-size:36px;line-height:1.4}.hero-copy>.eyebrow{font-size:14px}.hero-description{margin-top:20px;line-height:1.85}
 .hero .primary{width:100%;margin-top:24px}.hero-foot{gap:8px 12px;font-size:14px}.hero-foot>span+span{padding-left:12px}
 .first-visit h2{font-size:21px}.visit-flow{display:block}.visit-flow li{grid-template-columns:24px 1fr;gap:12px;padding:14px 0}.visit-flow h3{font-size:16px}.visit-flow p{font-size:14px}
 .visit-flow p{display:none}
 .guide,.questions,.care-section,.about-section,.visit-section{padding-top:32px;padding-bottom:40px}
 h2,.about-section h2,.visit-section h2,.care-page .questions h2{font-size:28px;line-height:1.5}
 .section-top .small-note{display:none}.guide .mobile-br{display:none}
 .treatment-links{gap:12px;margin-top:24px}.treatment-card,.treatment-card.chuna-card,.treatment-card.ultrasound-card,.treatment-card.herbal-card{padding:20px}
 .treatment-card h3{font-size:23px;padding:0;max-width:100%;margin-top:8px}.treatment-card p{font-size:16px;margin-top:8px}.care-link-label{font-size:14px;margin-top:12px}
 .care-choice-note,.guide-disclaimer,.care-guidance{font-size:14px}
 .ultrasound-heading{margin-top:32px;padding-top:28px}.ultrasound-heading h3{font-size:25px}
 .body-tab{padding:16px;min-height:68px;align-items:center}.tab-name{font-size:22px}.tab-mark{font-size:18px;position:static;margin:0}
 .region-intro{display:block;padding:24px 0}.region-intro h3{font-size:22px}.region-intro p{font-size:16px;margin-top:8px}
 .steps,.care-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin-bottom:20px}
 .steps button,.care-steps button{font-size:14px;flex-direction:row;justify-content:flex-start;min-height:56px;padding:12px 8px;line-height:1.6}
 .steps button>span{width:22px;height:22px;font-size:12px}
 .anatomy-panel{padding:20px}.anatomy>svg{height:260px}.diagram-controls{flex-wrap:wrap}.diagram-controls>button{font-size:14px;min-height:44px}.diagram-controls>span{font-size:12px}
 .step-copy{padding:24px 20px}.step-copy h3,.care-panel-body h3{font-size:25px}.step-description,.care-panel-body>p,.check-list li,.care-panel-body .check-list li,.faq-answer{font-size:16px}
 .clinical-note,.care-page .clinical-note{font-size:14px;padding:14px}.step-navigation{gap:12px}.next{font-size:14px;gap:16px}.previous,.step-navigation>span{font-size:14px}
 .related-care{font-size:14px;gap:8px}.related-care a{min-height:44px}
 .care-hero,.about-hero,.visit-hero{padding-top:24px;padding-bottom:36px}.care-hero h1,.about-hero h1,.visit-hero h1{font-size:36px;line-height:1.4;letter-spacing:-.035em}
 .care-breadcrumb{font-size:14px;margin-bottom:8px}.care-treatment-nav{padding-bottom:20px;gap:8px 20px}.care-treatment-nav a{font-size:14px}
 .care-lead{font-size:16px;line-height:1.9}.care-tags{font-size:14px;gap:8px 16px}
 .care-stage{padding:20px}.care-panel{grid-template-columns:1fr;gap:24px;min-height:0}.care-focus,.herbal-page .care-focus{padding:20px;min-height:0;display:block}
 .care-focus-number{position:static;display:block;font-size:20px;opacity:1;margin-bottom:10px}.care-focus>p{font-size:22px;max-width:100%}.care-focus>p br{display:none}.care-focus>small{font-size:14px;max-width:none;margin-top:12px;display:block}
 .about-letter{padding:24px}.about-letter blockquote{font-size:26px}.philosophy-list li{padding:24px 0}.philosophy-list h3{font-size:21px}.philosophy-list p{font-size:16px}
 .about-blog p{font-size:16px}.career-study,.career-records li span{font-size:14px}
 .journal{padding-top:32px;padding-bottom:40px}.journal h1{font-size:36px}.journal-lead{font-size:16px}.journal-post h2{font-size:22px;line-height:1.6}
}
@media(max-width:360px){.wrap{padding-left:20px;padding-right:20px}.header.site-header .brand{font-size:20px}.header.site-header .nav-booking{padding:8px 10px}.header.site-header nav{column-gap:8px}.hero h1{font-size:32px}.hero-foot{gap:6px}.hero-foot>span+span{padding-left:8px}.care-hero h1,.about-hero h1,.visit-hero h1{font-size:32px}.body-tab{padding:14px 12px}.tab-name{font-size:21px}.tab-mark{display:none}.steps button,.care-steps button{padding-left:4px;padding-right:4px;gap:6px}}
@media print{.first-visit{break-inside:avoid}.hero{display:block}.header.site-header nav,.header.site-header .nav-booking{display:none}.hero,.care-hero,.about-hero{padding-top:20px;padding-bottom:24px}.care-hero h1,.about-hero h1,.hero h1{font-size:30px}}
/* Small reused concept illustrations, with motion limited to three seconds. */
.motion-illustration{margin:0;min-width:0;align-self:center}
.motion-illustration svg{display:block;width:100%;height:auto;overflow:visible}
.motion-illustration figcaption{font-size:12px;line-height:1.7;text-align:center;color:var(--muted);margin-top:8px;word-break:keep-all;overflow-wrap:normal}
.first-visit-heading{display:grid;grid-template-columns:minmax(0,1fr) 142px;align-items:center;gap:16px;margin-bottom:12px}
.first-visit-heading h2{font-size:24px;margin:12px 0 0;text-wrap:pretty}
.care-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;align-items:center;gap:64px;max-width:none}
.care-hero-grid>.motion-illustration{width:100%;max-width:260px;justify-self:end}
.care-hero h1{font-size:44px}
.motion-illustration.is-illustrating.motion-ultrasound path[opacity]{animation:scan-glow 3s ease-in-out 1}
.motion-illustration.is-illustrating.motion-chuna circle[r="42"]{transform-box:fill-box;transform-origin:center;animation:focus-breathe 3s ease-in-out 1}
.motion-illustration.is-illustrating.motion-herbal path[stroke-width="1.4"]{animation:steam-rise 3s ease-in-out 1}
@keyframes scan-glow{0%,100%{opacity:.38}35%{opacity:.15}65%{opacity:.6}}
@keyframes focus-breathe{0%,100%{transform:scale(1)}50%{transform:scale(.9)}}
@keyframes steam-rise{0%,100%{transform:translateY(0);opacity:1}45%{transform:translateY(-5px);opacity:.45}70%{transform:translateY(-2px);opacity:.8}}
@media(max-width:1000px){.care-hero-grid{grid-template-columns:minmax(0,1fr) 210px;gap:32px}.first-visit-heading{grid-template-columns:minmax(0,1fr) 110px;gap:12px}.first-visit-heading h2{font-size:22px}.care-hero h1{font-size:40px}}
@media(max-width:800px){.first-visit-heading{grid-template-columns:minmax(0,1fr) 135px}.care-hero-grid{grid-template-columns:minmax(0,1fr) 180px;gap:24px}}
@media(max-width:600px){.first-visit-heading{grid-template-columns:minmax(0,1fr) 100px;gap:12px}.first-visit-heading h2{font-size:21px}.first-visit-heading h2 br{display:none}.first-visit-heading .eyebrow{font-size:14px}.motion-illustration figcaption{font-size:12px}.care-hero-grid{grid-template-columns:1fr;gap:24px}.care-hero-grid>.motion-illustration{width:150px;justify-self:center}.care-hero h1{font-size:36px}.care-hero-grid>.motion-illustration figcaption{margin-top:0}}
@media(max-width:360px){.first-visit-heading{grid-template-columns:minmax(0,1fr) 84px;gap:10px}.first-visit-heading h2{font-size:20px}.care-hero h1{font-size:32px}}
@media(prefers-reduced-motion:reduce){.motion-illustration *, .motion-illustration.is-illustrating *{animation:none!important}}
@media print{.motion-illustration{display:none}.first-visit-heading,.care-hero-grid{display:block}}
/* A restrained Bauhaus / mid-century palette, used in small fields and diagrams. */
:root{--mustard:#b38a34;--clay:#b76348;--dusty-blue:#587d8a;--mustard-wash:#f0e6c9;--clay-wash:#f2e2d8;--blue-wash:#e3ecee}
.first-visit{border-top-color:var(--mustard)}
.treatment-card.chuna-card{background:var(--mustard-wash);border-color:#d8c798;border-top:4px solid var(--mustard)}
.treatment-card.ultrasound-card{background:var(--blue-wash);border-color:#bccfd4;border-top:4px solid var(--dusty-blue)}
.treatment-card.herbal-card{background:var(--clay-wash);border-color:#dfc1af;border-top:4px solid var(--clay)}
.treatment-card:hover{border-color:var(--ink);filter:brightness(.98)}
.treatment-card .care-number{color:var(--ink)}
.about-letter{background:var(--mustard-wash);border-top-color:var(--mustard)}
.credential-list>div{border-left:3px solid var(--dusty-blue);padding-left:20px}
.credential-list>div:nth-child(2){border-left:3px solid var(--mustard);padding-left:20px}
.credential-list>div:nth-child(3){border-left:3px solid var(--clay);padding-left:20px}
.entrance-note{background:var(--blue-wash)}
.parking-item.recommended{background:var(--mustard-wash)}
.chuna-page .care-focus{background:var(--mustard-wash)}
.herbal-page .care-focus{background:var(--clay-wash)}
.motion-ultrasound svg circle:first-of-type{fill:#c87354}
.motion-ultrasound svg path[fill="#f1dfb8"]{fill:#e8c779}
.motion-chuna svg circle:first-of-type{fill:#e0c571}
.motion-chuna svg path[stroke-width="12"]{stroke:var(--dusty-blue)}
.motion-chuna svg circle[r="42"]{fill:var(--clay)}
.motion-herbal svg circle:first-of-type{fill:#70939b}
.motion-herbal svg path[fill="#f0dfbc"]{fill:#ecd39b}
.motion-herbal svg path[fill="#a4af88"]{fill:#889765}
.body-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}
[data-region=wrist] .anatomy-panel{background:#f0e8d3}
@media(max-width:600px){.body-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.body-tab:nth-child(2){border-right:0}.body-tab:nth-child(-n+2){border-bottom:1px solid var(--line)}.body-tab{padding:16px 20px}.treatment-card.chuna-card,.treatment-card.ultrasound-card,.treatment-card.herbal-card{padding-top:18px}}

.parking-item.nearby .parking-recommend{background:var(--blue-wash);border-color:#b5cbd0;color:var(--ink)}
.parking-item.recommended .parking-recommend{background:var(--mustard-wash);border-color:#cbb778;color:var(--ink)}

/* Quiet feedback: short travel, no layout shift or perpetual motion. */
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .hero .primary>span,.header .nav-booking>span{transition:transform .22s cubic-bezier(.22,1,.36,1)}
 .hero .primary:hover>span,.header .nav-booking:hover>span{transform:translate(2px,-2px)}
 .treatment-card .care-link-label{display:inline-block;transition:transform .22s cubic-bezier(.22,1,.36,1)}
 .treatment-card:hover .care-link-label{transform:translateX(3px)}
}
