/* Shared bilingual type hierarchy. Hero/display typography remains expressive. */
:root{--type-title:clamp(40px,4.4vw,64px);--type-section:clamp(32px,3.1vw,46px);--type-card:clamp(25px,2.1vw,30px);--type-body:18px;--type-meta:14px;--type-label:13px}
body{font-size:var(--type-body)}
body .page-head h1,body .article-header h1{font-size:var(--type-title)}
body .section-title h2,body .immersive-home .section-title h2,body.immersive-home .compact-work .section-title h2,body .about-strip h2,body .engagements h2,body.article-case .original-chapter h2{font-size:var(--type-section);line-height:1.25}
body .project h3,body .project-stack h3,body.immersive-home .compact-work .project h3,body .three h3,body .venn-explanation h3,body .method-branches h3,body .scope-list h3{font-size:var(--type-card);line-height:1.35}
body p,body .three p,body .aside-copy,body .venn-description,body .method-branches p,body .case-card-copy,body.immersive-home .compact-work .case-card-copy,body.immersive-home .emotional-intro>p:last-child,body .about-strip p:not(.eyebrow),body.article-case .original-chapter p:not(.eyebrow){font-size:var(--type-body);line-height:1.8}
body .eyebrow,body .about-strip .eyebrow{font-size:var(--type-label);line-height:1.5;letter-spacing:.12em}
body .project-meta,body.immersive-home .compact-work .project-meta,body .article-facts dt,body .source-note,body .venn-hint,body .footer-bottom{font-size:var(--type-meta);line-height:1.6}
body .project-meta,body.immersive-home .compact-work .project-meta{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:54px;margin:22px 0 14px}
body .project-meta>span:first-child{font-weight:700;letter-spacing:.06em}
body .number{font-size:18px;line-height:1.5}
body .text-link,body .button,body .article-facts dd,body.article-case .original-toc a{font-size:16px}
body .article-metrics article p{font-size:var(--type-body)}
body .three p{max-width:34ch}
@media(max-width:800px){:root{--type-title:40px;--type-section:32px;--type-card:25px;--type-body:17px;--type-meta:13px;--type-label:12px}body .project-meta,body.immersive-home .compact-work .project-meta{min-height:0}body .number{font-size:16px}}
/* Consistent initial capitals for display and section headings. */
h1,h2{text-transform:capitalize}
/* Balanced headings and natural reading measures across both languages. */
body h1,body h2,body h3,body h4{text-wrap:balance;word-break:normal;overflow-wrap:normal;hyphens:none}
body p,body li,body dd{text-wrap:pretty;word-break:normal;overflow-wrap:break-word}
html[lang="zh-CN"] h1,html[lang="zh-CN"] h2,html[lang="zh-CN"] h3,html[lang="zh-CN"] p{line-break:strict}
.type-phrase{white-space:nowrap;color:inherit!important}
html[lang="zh-CN"] .cta h2{max-width:none;width:max-content;max-width:100%;font-size:clamp(30px,4.3vw,60px);line-height:1.35}
html[lang="zh-CN"] .cta h2 br{display:block}
html[lang="zh-CN"] .page-head h1,html[lang="zh-CN"] .article-header h1{max-width:100%;width:24em}
html[lang="zh-CN"] .venn-explanation h3{max-width:none}
html[lang="zh-CN"] .three p{max-width:none}
@media(max-width:600px){html[lang="zh-CN"] .cta h2{font-size:clamp(24px,6.4vw,36px)}html[lang="zh-CN"] .page-head h1{font-size:clamp(30px,7.5vw,40px)}}
