/* Language-specific reading rules, scoped to service content only. */
.service-title-phrase {
    display: inline-block;
}
.service-page:lang(ja) {
    font-family: "Yu Gothic UI", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
    line-break: strict;
}
.service-page:lang(ko) {
    font-family: "Malgun Gothic", "Apple SD Gothic Neo", "Noto Sans KR", sans-serif;
    word-break: keep-all;
    overflow-wrap: anywhere;
}
.service-page:lang(zh-Hans) {
    font-family: "Microsoft YaHei", "PingFang SC", "Noto Sans SC", sans-serif;
    line-break: strict;
}
.service-page:is(:lang(ja), :lang(ko), :lang(zh-Hans)) .service-cover h1 {
    letter-spacing: -.015em;
    line-height: 1.3;
    font-size: clamp(34px, 4.1vw, 58px);
}
.service-page:is(:lang(ja), :lang(ko), :lang(zh-Hans)) :is(h2, h3) {
    letter-spacing: normal;
    line-height: 1.5;
}
.service-page:is(:lang(ja), :lang(ko), :lang(zh-Hans)) .service-editorial-card p {
    line-height: 1.95;
}
@media (max-width: 700px) {
    .service-page:is(:lang(ja), :lang(ko), :lang(zh-Hans)) .service-cover h1 {
        font-size: 34px;
        line-height: 1.35;
    }
}
