/* V10.39: reversible public layout; original logo and Lao font retained. */
@font-face{font-family:'WALSON Phetsarath User';src:url('/assets/fonts/phetsarath-user/phetsarath_ot.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap;unicode-range:U+0E80-0EFF}
.site-header .brand-logo{width:280px;max-width:100%;height:auto}
.site-header .brand-wordmark{flex-shrink:0}
.site-header .utility,.site-header .main-nav,.site-header .mobile-nav{font-family:var(--sans);color:#0b2e31}
.site-header .utility a,.site-header .main-nav a,.site-header .mobile-nav a{color:#0b2e31}
html:lang(en) .site-header :is(.utility,.main-nav,.mobile-nav) a{font-family:'WALSON Sans',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.035em}
html:lang(en) .site-header :is(.utility,.main-nav,.mobile-nav) a[lang]:not([lang="en"]){font-family:var(--sans);font-weight:400;text-transform:none;letter-spacing:normal}
.site-header a[lang="en"]{font-family:'WALSON Sans',sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.035em}
.site-header .main-nav{gap:18px}
html:lang(zh) :is(h1,h2,h3,h4){font-family:'Microsoft YaHei','PingFang SC','Noto Sans CJK SC',sans-serif}
html:lang(lo) body,html:lang(lo) body *,body :lang(lo){font-family:'WALSON Phetsarath User','WALSON Sans','Phetsarath OT',sans-serif!important;font-synthesis:none}
html:lang(lo) h2{font-size:clamp(28px,3.2vw,42px);line-height:1.65}
html:lang(lo) :is(.contact-card,.office-card-copy,.story-copy,.latest-card,.client-sector-heading) h2{font-size:clamp(22px,2vw,28px)}
html:lang(lo) :is(h3,h4){line-height:1.7}
html:lang(lo) :is(p,li){line-height:1.85}
body[data-long-title] h1{font-size:clamp(32px,3.6vw,52px);line-height:1.22;max-width:1100px}
html:lang(zh) body[data-long-title] h1{line-height:1.4}
html:lang(lo) body[data-long-title] h1{font-size:clamp(30px,3.3vw,48px);line-height:1.65}
.life-layout--without-team{display:block!important}
.life-layout--without-team .life-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:1051px) and (max-width:1279px){.site-header .brand-logo{width:250px}.site-header .main-nav{gap:12px}html:lang(en) .site-header .main-nav a{font-size:13px;letter-spacing:.02em}}
@media(max-width:1050px){.site-header .brand-logo{width:255px}}
@media(max-width:600px){.site-header .brand-logo{width:250px}.life-layout--without-team .life-content-grid{grid-template-columns:1fr}body[data-long-title] h1{font-size:30px}html:lang(lo) body[data-long-title] h1{font-size:28px}}
@media(max-width:360px){.site-header .brand-logo{width:225px}}

/* Round 2: controls and supporting text, scoped away from editorial prose. */
html:lang(en) .text-link,html:lang(zh) .text-link{font-size:15px;line-height:1.6}
html:lang(en) .text-link{font-weight:600}
html:lang(zh) .text-link{font-weight:500}
html:lang(lo) .text-link{font-size:16px;line-height:1.85;font-weight:400}
html:lang(en) :is(.button,.story-enter){font-family:var(--sans);font-weight:600;text-transform:uppercase;letter-spacing:.035em}
html:lang(en) footer .footer-top .text-link{font-family:var(--sans);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.035em;line-height:1.7}
html:lang(en) .contact-card h3{font-family:var(--sans);font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:.035em}
.latest-v1033 .latest-card .latest-summary,.life-section .story-copy p{font-size:16px;line-height:1.8}
html:lang(lo) :is(.latest-v1033 .latest-card .latest-summary,.life-section .story-copy p){font-size:16px;line-height:1.9}
html:lang(lo) .button{font-size:16px;line-height:1.85;font-weight:400}
html:lang(lo) .contact-card h3{font-size:16px;line-height:1.85;font-weight:400}
/* Article subheadings must remain below the article title at every breakpoint. */
html:lang(lo) .v10-article h2{font-size:32px;line-height:1.75}
@media(max-width:900px){html:lang(lo) .v10-article h2{font-size:28px}}
@media(max-width:600px){html:lang(lo) .v10-article h2{font-size:24px;line-height:1.75}}
