/* Matched to the computed typography of vngi.vn, 10 October 2026. */
@font-face{font-family:'Open Sans';font-style:normal;font-weight:400;font-display:swap;src:url('assets/fonts/open-sans-400.ttf') format('truetype')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:500;font-display:swap;src:url('assets/fonts/open-sans-500.ttf') format('truetype')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:600;font-display:swap;src:url('assets/fonts/open-sans-600.ttf') format('truetype')}
@font-face{font-family:'Open Sans';font-style:normal;font-weight:700;font-display:swap;src:url('assets/fonts/open-sans-700.ttf') format('truetype')}
@font-face{font-family:'Roboto';font-style:normal;font-weight:800;font-display:swap;src:url('assets/fonts/roboto-800.ttf') format('truetype')}
:root{--body-font:'Open Sans',Arial,sans-serif;--heading-font:'Roboto','Open Sans',Arial,sans-serif}
body{font-family:var(--body-font);font-size:16px;font-weight:400;line-height:1.75}
h1,h2,h3,.context-statement{font-family:var(--heading-font);font-weight:800;line-height:1.2;letter-spacing:-.035em}
h2{font-size:clamp(30px,3vw,40px)}
h3{font-size:20px}
em{font-family:inherit;font-style:normal;font-weight:inherit}
.hero h1{font-size:clamp(48px,7.2vw,96px);font-weight:800;line-height:1.2;letter-spacing:-.035em}
.hero p:not(.eyebrow),.section-head>p,.about p,.partners p,.contact p,.tree-card p,.service-card p,.project-placeholder p{font-size:16px;line-height:1.75}
.lead{font-size:20px!important;line-height:1.6!important}
header nav{font-size:16px;font-weight:500;gap:20px}
.nav-cta{padding:10px 15px;font-size:14px}
.parent-link{font-size:13px}
.language-label select{font-family:var(--body-font);font-size:14px;max-width:130px}
.eyebrow{font-size:12px;line-height:1.6;letter-spacing:1.8px;font-weight:600}
.service-card h3,.tree-card h3{font-size:20px;line-height:1.3}
.service-card{min-height:250px}
.service-card .num,.filters button,.tree-card button,.context-link{font-size:14px}
.button{font-family:Arial,sans-serif;font-size:14px;line-height:1.4;font-weight:600}
.hero-link{font-size:14px}
.values b{font-size:14px}
.values span,.muted,.image-note,.local-note{font-size:12px}
.approach li b{font-size:18px;font-weight:600}
.approach li span{font-size:16px;line-height:1.75}
.ecosystem h2{font-size:clamp(30px,3vw,40px)}
.ecosystem-motto{font-size:13px}
.context-statement{font-size:24px;line-height:1.4}
.context-values li{font-size:14px}
.project-placeholder h3{font-size:clamp(24px,2.3vw,32px)}
.project-placeholder a,.partner-empty{font-size:14px}
form h3{font-size:24px}
label,input,select,textarea,.contact dl,#form-result,.download{font-size:14px;line-height:1.6}
.checkbox{font-size:13px}
footer p,footer>a:last-of-type{font-size:14px;line-height:1.75}
footer .footer-note{font-size:12px}
dialog h2{font-size:32px}
html[lang=ja] body{font-family:'Open Sans','Yu Gothic','Meiryo',sans-serif}
html[lang=zh-Hans] body{font-family:'Open Sans','Microsoft YaHei','PingFang SC',sans-serif}
html[lang=ja] h1,html[lang=ja] h2,html[lang=ja] h3,html[lang=zh-Hans] h1,html[lang=zh-Hans] h2,html[lang=zh-Hans] h3{font-family:'Roboto','Yu Gothic','Microsoft YaHei',sans-serif;font-weight:800;letter-spacing:0;line-height:1.4}
@media(max-width:1250px){
 header nav{display:none;position:absolute;top:130px;left:0;right:0;padding:20px 6%;background:var(--paper);box-shadow:0 10px 20px #0002}
 header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}
 header nav a,html[lang=en] header nav a,html[lang=ja] header nav a{padding:12px;font-size:16px}
 header .menu{display:block;background:transparent;border:1px solid #c4ccbe;padding:8px 12px;font-size:14px}
 .header-tools{margin-left:auto;margin-right:15px}.parent-link{display:block}
}
@media(max-width:800px){header nav{top:104px}.hero-content{padding-top:65px}.hero p:not(.eyebrow){font-size:16px}.section-head>p{max-width:none}.hero-foot{font-size:10px}.ecosystem h2{font-size:30px}}
@media(max-width:480px){
 .hero h1,html[lang=en] .hero h1{font-size:46px;line-height:1.2;letter-spacing:-.035em}
 html[lang=ja] .hero h1,html[lang=zh-Hans] .hero h1{font-size:40px;line-height:1.4}
 .hero{min-height:740px}.hero .eyebrow{font-size:10px;letter-spacing:1.5px}.hero-content{padding-bottom:110px}
 .parent-link{display:none}.language-label select{font-size:13px;max-width:110px}.header-tools{margin-right:8px}
 .section h2{font-size:30px}.service-card{min-height:220px}.values{flex-wrap:wrap}.project-placeholder h3{font-size:24px}
}
