/* Text wrappers preserve each original typographic role. */
span[data-l10n]:not(.sr-only){display:contents!important;font:inherit!important;color:inherit!important;letter-spacing:inherit!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.language-control{display:flex;align-items:center;position:relative}
.language-select{font:600 .76rem/1.5 var(--font);background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:6px;padding:8px 6px;min-height:38px;max-width:108px;cursor:pointer}
.language-select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
.brand-cn{font-family:'Songti SC','STSong','SimSun',serif;font-size:1.1rem;font-weight:400;letter-spacing:.12em;border-left:1px solid var(--line);padding-left:12px;margin-left:4px}
html:not([lang=zh-CN]) .brand-cn{display:none}
.nav-inner{gap:20px}.nav-links{gap:22px}.nav-tools{gap:12px}
.hero-copy h1{white-space:normal}
.page-heading .eyebrow,.dialog-bar .eyebrow{text-transform:none}
html[lang=zh-CN]{--font:Manrope,'PingFang SC','Microsoft YaHei',sans-serif}
html[lang=ja]{--font:Manrope,'Hiragino Kaku Gothic ProN','Yu Gothic','Meiryo',sans-serif}
html[lang=ko]{--font:Manrope,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;word-break:keep-all}
html:is([lang=zh-CN],[lang=ja],[lang=ko]) :is(h1,h2,h3){letter-spacing:-.02em;line-height:1.35}
html[lang=zh-CN] :is(.hero-copy h1,.page-heading h1,.section-heading h2,.closing h2,.manifesto>div>p){font-family:'Noto Serif SC','Songti SC','STSong','SimSun',serif;letter-spacing:.045em;font-weight:400;line-height:1.4}
html[lang=zh-CN] .hero-copy h1{font-size:clamp(3rem,5.1vw,4.65rem)}
html[lang=zh-CN] .hero-description{line-height:2;max-width:420px}
html[lang=zh-CN] .hero-copy .eyebrow{letter-spacing:.2em}
html[lang=zh-CN] .manifesto-mark{font-family:'Songti SC','SimSun',serif;font-weight:400;font-size:9rem;letter-spacing:0}
html[lang=ja] .hero-copy h1{font-size:clamp(2.75rem,4vw,3.6rem)}
html[lang=ko] .hero-copy h1{font-size:clamp(2.75rem,4.2vw,4rem)}
html[lang=es] .hero-copy h1{font-size:clamp(3rem,5.1vw,4.7rem)}
.hero-copy,.section-heading,.pillar-copy,.library-copy{min-width:0}
.pillar-copy h3{overflow-wrap:break-word}.library-copy h2{line-height:1.4}
.footer-bottom>span:first-child{max-width:70%}
@media(max-width:1100px){
 .nav-toggle{display:block}.nav-tools .button{display:none}
 .nav-links{display:none;position:absolute;left:32px;right:32px;top:78px;flex-direction:column;gap:0;padding:12px 20px;background:var(--paper);border:1px solid var(--line);border-radius:8px;box-shadow:0 10px 30px #0000000a}
 .nav-links.is-open{display:flex}.nav-links a{padding:13px 0;font-size:.95rem}
}
@media(max-width:700px){
 .nav-inner{gap:8px}.nav-tools{gap:3px}.brand{gap:6px;font-size:1.07rem}.brand-mark{width:23px;height:23px}.brand-cn{font-size:.92rem;letter-spacing:.03em;padding-left:6px;margin-left:1px}
 .language-select{font-size:.69rem;padding:7px 2px;max-width:77px}.theme-toggle{width:27px}.nav-toggle{width:30px;padding:5px}.nav-toggle span{width:20px}
 .nav-links{left:20px;right:20px;top:70px}
 html[lang=zh-CN] .hero-copy h1{font-size:clamp(2.8rem,11vw,4rem);margin-block:20px}
 html[lang=ja] .hero-copy h1{font-size:clamp(2.35rem,9vw,3.7rem)}
 html[lang=ko] .hero-copy h1{font-size:clamp(2.55rem,9.8vw,3.7rem)}
 html[lang=es] .hero-copy h1{font-size:clamp(2.75rem,10.4vw,4rem)}
 html[lang=zh-CN] :is(.section-heading h2,.closing h2){font-size:2.25rem}
 html[lang=zh-CN] .manifesto-mark{font-size:5rem}
 html[lang=zh-CN] .page-heading h1{font-size:2.6rem}
 .page-heading h1{overflow-wrap:break-word}
 .footer-bottom>span:first-child{max-width:none}
 .dialog-bar .eyebrow{max-width:85%;line-height:1.7}
 .hero-actions .button{white-space:normal;text-align:left}
}
@media(max-width:365px){.brand-mark{display:none}.wrap{width:calc(100% - 32px)}.brand-cn{font-size:.86rem}.nav-tools{gap:1px}}
