/* One primary typeface per language; spacing tuned for the script, not the flag. */
html:lang(en){--sans:Inter,sans-serif;--display:var(--sans)}
html:lang(ja){--sans:"Noto Sans JP",sans-serif;--display:var(--sans)}
html:lang(zh-Hans){--sans:"Source Han Sans SC",sans-serif;--display:var(--sans)}
html:lang(ko){--sans:Pretendard,sans-serif;--display:var(--sans)}
.clinic-edition{font-family:var(--sans)}
.clinic-edition h1,.clinic-edition h2,.clinic-edition h3,.clinic-edition .paper-top strong,.clinic-edition .paper-top>span,.clinic-edition .masthead,.clinic-edition .wordmark,.clinic-edition .hero-line{font-family:var(--sans)}
html:lang(ja) .clinic-edition,html:lang(zh-Hans) .clinic-edition{word-break:normal;line-break:strict;overflow-wrap:anywhere}
html:lang(en) .clinic-edition{word-break:normal;overflow-wrap:break-word}
html:lang(en) .paper-body{word-break:normal;hyphens:auto}
html:lang(ja) .paper-body,html:lang(zh-Hans) .paper-body{word-break:normal;line-height:2}
html:not(:lang(ko)) .clinic-edition h1,html:not(:lang(ko)) .clinic-edition h2,html:not(:lang(ko)) .clinic-edition h3{letter-spacing:-.025em;text-wrap:balance}
html:lang(en) .clinic-edition .hero-title{font-size:clamp(36px,4.2vw,68px);line-height:1.16}
html:lang(ja) .clinic-edition .hero-title{font-size:clamp(30px,3.8vw,60px)}
html:lang(zh-Hans) .clinic-edition .hero-title{font-size:clamp(34px,4.2vw,66px)}
.clinic-edition .paper-top strong{font-size:clamp(32px,6vw,84px);font-weight:600;letter-spacing:-.06em}
.language-switch{position:relative;flex:0 0 auto;margin-left:12px;z-index:60;font:500 12px/1.3 var(--sans);color:var(--ink)}
.language-switch>summary{list-style:none;cursor:pointer;min-height:44px;min-width:62px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:0;background:var(--paper);letter-spacing:.08em;padding:0 10px}
.language-switch>summary::-webkit-details-marker{display:none}
.language-switch[open]>summary{border-color:var(--accent)}
.language-options{position:absolute;top:calc(100% + 9px);right:0;display:grid;width:168px;background:#faf7f0;border:1px solid var(--line);box-shadow:0 14px 35px #302f2b14;padding:6px}
.language-options a{display:flex;align-items:center;min-height:44px;padding:10px 14px;font-size:13px;letter-spacing:0;text-decoration:none;color:#35332e}
.language-options a:hover,.language-options a:focus-visible{background:#eee8dc}
.language-options a[aria-current=page]{color:#b24c25;background:#f0e5d8}
.language-options a[aria-current=page]::after{content:"·";margin-left:auto;font-weight:700}
.language-switch summary:focus-visible,.language-options a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
html:not(:lang(ko)) .clinic-edition .nav{gap:14px}
html:not(:lang(ko)) .clinic-edition .nav a{font-size:11px}
html:not(:lang(ko)) .clinic-edition .paper-byline{flex-wrap:wrap}
@media(max-width:1150px){html:not(:lang(ko)) .clinic-edition .nav:not(.open){display:none}html:not(:lang(ko)) .clinic-edition .menu-button{display:block}}
@media(max-width:760px){.language-switch{margin-left:8px}.language-switch>summary{min-width:54px;padding:0 7px}.clinic-edition .header{gap:8px}.language-options{right:0}.clinic-edition .paper-top strong{white-space:normal}.clinic-edition .hero-title{overflow-wrap:break-word}html:lang(en) .clinic-edition .hero-title{font-size:clamp(30px,7vw,44px)}html:lang(ja) .clinic-edition .hero-title{font-size:clamp(26px,6vw,36px)}html:not(:lang(ko)) .destination-title h1{font-size:32px}html:not(:lang(ko)) .paper-article-title h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){.language-switch *{transition:none!important;animation:none!important}}

@media(max-width:1150px){html:not(:lang(ko)) .clinic-edition .nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px var(--pad);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0}html:not(:lang(ko)) .clinic-edition .nav.open{display:flex}html:not(:lang(ko)) .clinic-edition .nav a{padding:13px 0;font-size:14px}.clinic-edition .menu-button{margin-left:auto}}
@media(max-width:650px){.clinic-edition .header .masthead{display:none}.clinic-edition .header-inner{gap:8px}.clinic-edition .brand-lockup{min-width:0}.clinic-edition .menu-button{margin-left:auto;min-height:44px}.language-switch{margin-left:0}.clinic-edition .header .clinic-brand{width:135px;max-width:36vw}}
@media print{.language-switch{display:none}}
