/* Japanese pages: the site's Latin display faces have no Japanese glyphs. These aliases give each family
   a Japanese system font for CJK ranges only, so Latin text keeps Audiowide / Marcellus / Syne and Japanese
   text renders in a clean Gothic face instead of a random fallback. No font download is involved. */
@font-face { font-family: "Audiowide"; src: local("Hiragino Sans W6"), local("HiraginoSans-W6"), local("Yu Gothic Bold"), local("YuGothic-Bold"), local("Meiryo Bold"), local("Noto Sans JP Bold"), local("NotoSansJP-Bold"); font-weight: 100 900; unicode-range: U+3000-30FF, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF; }
@font-face { font-family: "Marcellus"; src: local("Hiragino Sans W3"), local("HiraginoSans-W3"), local("Yu Gothic Medium"), local("YuGothic-Medium"), local("Meiryo"), local("Noto Sans JP"), local("NotoSansJP-Regular"); font-weight: 100 900; unicode-range: U+3000-30FF, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF; }
@font-face { font-family: "Syne"; src: local("Hiragino Sans W3"), local("HiraginoSans-W3"), local("Yu Gothic Medium"), local("YuGothic-Medium"), local("Meiryo"), local("Noto Sans JP"), local("NotoSansJP-Regular"); font-weight: 100 900; unicode-range: U+3000-30FF, U+3400-4DBF, U+4E00-9FFF, U+F900-FAFF, U+FF00-FFEF; }

/* readable Japanese line breaking and rhythm */
:lang(ja) body { line-break: strict; overflow-wrap: anywhere; }
:lang(ja) .re-page p,
:lang(ja) .re-page li { line-height: 1.85; }
:lang(ja) .re-h2,
:lang(ja) .re-page-title,
:lang(ja) .re-hero__lead,
:lang(ja) .re-h3 { letter-spacing: .02em; line-height: 1.35; word-break: keep-all; overflow-wrap: anywhere; }
:lang(ja) .re-page .re-page-title { font-size: clamp(34px, 4.6vw, 72px); }
