@font-face{font-family:Mona;src:url(Mona.woff2) format("woff2");font-weight:200 900;font-display:swap;}
@font-face{font-family:Mona;src:url(Mona-Italic.woff2) format("woff2");font-style:italic;font-weight:200 900;font-display:swap;}
@font-face{font-family:PlexJP;src:url(Plex-jp.woff2);font-display:swap;}
@font-face{font-family:PlexSC;src:url(Plex-sc.woff2);font-display:swap;}
@font-face{font-family:PlexTC;src:url(Plex-tc.woff2);font-display:swap;}
@font-face{font-family:PlexKR;src:url(Plex-kr.woff2);font-display:swap;}
:root{--local:PlexJP;}
:lang(zh-Hans){--local:PlexSC;}
:lang(zh-Hant){--local:PlexTC;}
:lang(ko){--local:PlexKR;}
body,body :is(p,a,button,summary,h1,h2,h3,span,li,dt,dd,address,figcaption,strong,label,small) {font-family:Mona,var(--local),sans-serif!important;}
body:is(:lang(ja),:lang(zh)) :is(h1,h2,h3){letter-spacing:-.035em;line-height:1.23;font-weight:500;}
body:is(:lang(ja),:lang(zh)) :is(p,dd){line-height:1.75;letter-spacing:.012em;}
.theme-rooms .top .brandname {display:inline;font-style:italic;font-weight:510;letter-spacing:-.045em;font-size:clamp(21px,2vw,31px);}
/* Shared type and spacing for the language entrance, clinic, and reading pages. */
:root{--chai-gutter:clamp(18px,1.55vw,30px);--chai-title:clamp(38px,5.8vw,92px);--chai-ink:#26302f;--chai-wordmark:clamp(21px,2vw,31px)}
body[data-concept=rooms]{color:var(--chai-ink);--pad:var(--chai-gutter)}
body[data-concept=rooms] :is(.ed-head .brand,.policy-brand,footer .brand),.theme-rooms .top .brandname{font-family:Mona,sans-serif!important;font-style:italic;font-weight:510;letter-spacing:-.045em;font-size:var(--chai-wordmark);line-height:1.1}
body[data-concept=rooms] :is(.ed-head .brand,.policy-brand) img{width:36px;height:40px;object-fit:contain}
body[data-concept=rooms] :is(.ed-intro h1,.policy-body h1){font-size:var(--chai-title);font-weight:500;letter-spacing:-.045em;line-height:1.14;margin:0 0 .4em}
body[data-concept=rooms] :is(.ed-copy p,.policy-body p){font-size:clamp(16px,1.15vw,19px);line-height:1.72}
body[data-concept=rooms] :is(.ed-head .mast,.policy-bar){padding-inline:var(--chai-gutter);border-bottom:1px solid #ced8d5}
body[data-concept=rooms] img[src*="/assets/blog/"]{filter:none}
.ed-wide-art figcaption{margin-top:8px;font-size:.83rem;color:#53605d}
footer .clinic-business{width:100%;flex-basis:100%;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-start;gap:12px 32px;padding:18px 0 0;margin:16px 0 0;border-top:1px solid #96a7a160;font-size:13px;line-height:1.5;font-style:normal}
footer .clinic-business div{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 9px}
footer .clinic-business dt{opacity:.78}footer .clinic-business dd{margin:0}footer .clinic-business a{display:inline;min-height:unset;text-decoration:underline;text-underline-offset:3px}
@media(max-width:600px){footer .clinic-business{display:grid;grid-template-columns:1fr;gap:8px}}
body[data-concept=rooms] :is(.ed-head,.policy-bar){position:sticky;top:0;z-index:30;background:rgba(255,255,255,.95);backdrop-filter:blur(14px)}
html:has(body[data-concept=rooms]){scroll-padding-top:88px}
