/* Language selection is a real link pair, readable even before JavaScript. */
.language-switch{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid #d7cdda;border-radius:99px;flex-shrink:0}
.language-switch a{display:grid;place-items:center;min-width:42px;min-height:42px;padding:5px 9px;font-size:15px;font-weight:600;line-height:1;letter-spacing:.03em;border-radius:99px;text-decoration:none;color:#6c5c70;transition:background .2s,color .2s}
.language-switch a[aria-current=page]{color:#fff;background:#523757}
.language-switch a:hover:not([aria-current]){background:#e7dfe9;color:#35243b}
.language-switch a:focus-visible{outline:2px solid #523757;outline-offset:3px}
.site-header .header-booking{display:inline-flex;flex-shrink:0}
.practice-facts{border-top:1px solid #d7cdda;border-bottom:1px solid #d7cdda;background:#f2edf3}
.practice-facts h2{font-size:clamp(30px,3.6vw,48px);line-height:1.15;max-width:23ch;margin-bottom:40px}
.practice-facts dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin:0}
.practice-facts dt{font-size:16px;font-weight:600;color:#422c49;margin-bottom:14px}
.practice-facts dd{font-size:18px;line-height:1.65;color:#67586b;margin:0 0 8px}
.practice-facts a{text-decoration:underline;text-underline-offset:5px}
html[lang=en] .anatomy-intro h1{font-size:clamp(48px,5vw,88px)}
html[lang=en] .booking-content h2{font-size:clamp(48px,6vw,88px)}
@media(min-width:1251px){.site-header{gap:20px}.desktop-nav{gap:20px}.mobile-nav:not([hidden]){display:none}}
@media(max-width:1250px){
 .desktop-nav{display:none}
 .site-header .header-language{display:none}
 .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:44px;height:44px;padding:11px;background:transparent;flex-shrink:0}
 .menu-toggle span{width:22px;height:1px;background:currentColor;transition:transform .25s}
 .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
 .mobile-nav:not([hidden]){position:fixed;inset:var(--header-height) 0 0;z-index:25;padding:32px var(--gutter);overflow:auto;background:var(--paper);display:flex;flex-direction:column;gap:20px}
 .mobile-nav a{font-size:30px;line-height:1.4;padding-block:8px;letter-spacing:-.03em}
 .mobile-language{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;margin-top:auto;padding-top:24px;border-top:1px solid #d7cdda}
 .mobile-language>span{font-size:16px;color:#67586b}
 .mobile-nav .language-switch a{min-width:84px;min-height:44px;padding:10px 14px;font-size:16px;line-height:1.25;letter-spacing:0}
 .practice-facts dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}
}
@media(max-width:700px){
 .site-header{gap:10px}
 .site-header .brand,.site-header .practice-wordmark{min-width:0}
 .site-header .practice-description{white-space:normal}
 .site-header .booking-wide{display:none}
 .site-header .booking-short{display:inline}
 .site-header .header-booking{font-size:16px;min-height:46px;padding:10px 12px;margin-left:auto}
 .site-header .header-booking svg{display:none}
 .practice-facts dl{grid-template-columns:1fr;gap:24px}
 .practice-facts dt{margin-bottom:8px}
 html[lang=en] .anatomy-intro h1{font-size:clamp(42px,9.5vw,65px)}
 html[lang=en] .booking-content h2{font-size:clamp(42px,10vw,64px)}
}
@media(max-width:380px){
 .site-header{padding-inline:14px;gap:6px}
 .practice-name{font-size:22px}
 .site-header .menu-toggle{width:44px;padding:11px}
 .practice-description{font-size:13px}
}
