@import url("/assets/fonts/be-vietnam-pro.css");
*{box-sizing:border-box}
:root{color-scheme:light;--ink:#0d2240;--muted:#445b72;--navy:#071a32;--blue:#1757dd;--line:#d8e3ef;--pale:#f1f6fc}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;font:16px/1.6 "Segoe UI",Arial,sans-serif}
a{color:inherit}
.container{width:min(1660px,calc(100% - clamp(32px,7vw,136px)));margin-inline:auto}
.market-bar{background:var(--navy);color:#d9e7fa;font-size:13px}
.market-bar .container,.header-row,.footer-row,.contact-row{display:flex;align-items:center;justify-content:space-between;gap:22px}
.market-bar .container{min-height:35px}
.market-bar a{text-decoration:none;font-weight:650;color:white}
.site-header{background:#fff;border-bottom:1px solid var(--line)}
.header-row{min-height:78px}
.brand{display:inline-flex;align-items:center;gap:12px;font-weight:850;letter-spacing:.08em;text-decoration:none;line-height:1.15}
.brand small{display:block;font-size:10px;color:var(--muted)}
.mark{display:grid;place-items:center;width:42px;height:42px;background:var(--blue);color:white;border-radius:8px;font-size:23px}
nav,.actions{display:flex;align-items:center;gap:clamp(14px,2.2vw,34px);flex-wrap:wrap}
nav a,.header-actions>a:not(.button),.footer-row a{text-decoration:none;font-size:14px;font-weight:650}
nav a:hover,.header-actions>a:not(.button):hover,.footer-row a:hover{text-decoration:underline}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:10px 19px;border:1px solid currentColor;border-radius:7px;font-size:14px;font-weight:750;text-decoration:none}
.button:hover{filter:brightness(.92)}
.primary{background:var(--blue);border-color:var(--blue);color:white}
.outline{border-color:#b1c4dc}
.hero{background:linear-gradient(115deg,#f1f6fc,#e6effb 70%,#dbe9fa)}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);align-items:center;gap:clamp(25px,4vw,72px);padding-block:clamp(46px,6vw,105px)}
.eyebrow{color:#2456aa;font-size:12px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin:0 0 14px}
h1,h2,h3{line-height:1.12;margin:0}
h1{font-size:clamp(2.7rem,5vw,5.6rem);letter-spacing:-.055em}
h1 span{color:var(--blue)}
h2{font-size:clamp(1.9rem,3.7vw,3.55rem);letter-spacing:-.04em}
h3{font-size:clamp(1.15rem,1.6vw,1.55rem)}
.intro{color:var(--muted);max-width:560px;font-size:clamp(16px,1.7vw,21px);margin:24px 0}
.hero-graphic{margin:0;position:relative;overflow:hidden;min-height:260px;aspect-ratio:1.5;border-radius:14px;background:linear-gradient(135deg,#192d49,#0a1629);box-shadow:0 22px 50px #15386122}
.hero-graphic img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}
.hero-graphic figcaption{position:absolute;right:12px;bottom:12px;border-radius:4px;background:#071a32dd;color:#ecf4ff;padding:3px 8px;font-size:11px}
.section{padding-block:clamp(45px,6vw,96px)}
.about{display:grid;grid-template-columns:1fr 1.1fr;gap:30px;align-items:center}
.about p:not(.eyebrow),.contact p:not(.eyebrow){margin:0 0 8px}
.english,.service-grid p{color:var(--muted)}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(12px,2vw,28px);margin:28px 0 0}
.service-grid article{background:var(--pale);border:1px solid var(--line);border-radius:10px;padding:clamp(20px,3vw,38px)}
.service-index{display:inline-block;color:var(--blue);font-size:14px;font-weight:800;margin-bottom:24px}
.service-grid p{margin:10px 0 0}
.process,.about-band{border-top:1px solid var(--line)}
.process ol{padding-left:26px}
.process li{padding:10px 12px 10px 0}
.process li::marker{color:var(--blue);font-weight:800}
.about-band{background:var(--pale)}
.contact{background:var(--navy);color:#f4f7fa}
.contact .eyebrow{color:#a8c8ff}
.contact h2{margin-bottom:12px}.contact p:not(.eyebrow){color:#d2dfeb}
.footer-row{padding-block:24px;color:var(--muted);font-size:14px;flex-wrap:wrap}
:focus-visible{outline:3px solid #4080b0;outline-offset:3px}
@media(max-width:850px){.header-row{flex-wrap:wrap;gap:12px;padding-block:12px}.header-row nav{order:3;width:100%}.hero-grid,.about,.service-grid{grid-template-columns:1fr}.hero-grid{gap:28px}.hero-graphic{min-height:0;aspect-ratio:1.55}.contact-row{align-items:flex-start;flex-direction:column}}
@media(max-width:450px){.header-actions{gap:10px}.header-actions .button{padding-inline:10px}.header-row nav{gap:12px}nav a{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.site-nav{display:flex;gap:0 26px;border-top:1px solid var(--line)}
.site-nav a{display:inline-flex;align-items:center;min-height:48px}
.site-nav a:last-child{color:var(--blue)}
.section-intro{max-width:68ch;color:var(--muted);margin:16px 0 0}
.procurement-band{background:#e9f1ff;border-block:1px solid var(--line)}
.resource-section,.partner-section{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:clamp(20px,4vw,64px)}
.partner-section{align-items:center}
.partner-section .actions{justify-content:flex-end}
.faq-list details{border-bottom:1px solid var(--line);padding:14px 0}
.faq-list summary{font-weight:700;cursor:pointer}
.faq-list p{margin:8px 0 0;color:var(--muted)}
@media(max-width:850px){.header-row .header-actions{margin-left:auto}.site-nav{gap:0 18px}.site-nav a{min-height:42px}.resource-section,.partner-section{grid-template-columns:1fr}.partner-section .actions{justify-content:flex-start}}
.turning-quote{background:white;border:1px solid var(--line);border-radius:14px;padding:clamp(24px,4vw,54px);box-shadow:0 18px 45px #15386118}
.turning-quote h2{font-size:clamp(1.55rem,2.9vw,2.65rem)}
.turning-quote p{color:var(--muted);margin:16px 0 22px}
.service-link{display:inline-block;margin-top:14px;font-weight:700;color:var(--blue);text-decoration:none}
.service-link:hover,.service-link:focus-visible{text-decoration:underline}
.site-header{position:relative;z-index:2}
.site-nav.mega-nav{gap:0 clamp(14px,2.3vw,36px)}
.mega-nav>details,.mega-nav>a{margin:0}
.mega-nav summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:48px;font-size:14px;font-weight:650;cursor:pointer}
.mega-nav summary::-webkit-details-marker{display:none}
.mega-nav summary::after{content:"";width:6px;height:6px;border-right:1.5px solid;border-bottom:1.5px solid;transform:translateY(-2px) rotate(45deg)}
.mega-nav details[open]>summary{color:var(--blue)}
.mega-nav details[open]>summary::after{transform:translateY(2px) rotate(225deg)}
.mega-panel{position:absolute;inset-inline:0;top:100%;background:white;border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:0 16px 30px #10233522;max-height:70vh;overflow:auto}
.mega-inner{padding-block:24px 30px}
.mega-heading a{font-size:clamp(1.3rem,2.5vw,2rem);color:var(--blue);min-height:auto}
.mega-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:22px;margin-top:16px}
.mega-group h3{font-size:14px;color:var(--blue);margin:0 0 10px}
.mega-group a{display:block;min-height:auto;padding:3px 0;font-weight:500}
.mega-group h3 a{font-weight:750}
.directory-grid,.industry-directory{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:24px}
.directory-grid article,.industry-directory article{background:#fff;border:1px solid var(--line);border-radius:9px;padding:22px}
.directory-grid p,.industry-directory p{color:var(--muted);margin:8px 0}
.directory-grid ul{padding-left:20px}
.directory-grid li{padding:2px 0}
.directory-grid :target,.industry-directory :target{background:#eaf2ff;outline:2px solid #7da6ec;outline-offset:2px}
@media(max-width:800px){.site-nav.mega-nav{gap:0 16px}.mega-columns,.directory-grid,.industry-directory{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:500px){.directory-grid,.industry-directory{grid-template-columns:1fr}.mega-panel{max-height:62vh}.mega-columns{gap:14px}.mega-nav summary{min-height:42px}}
html[lang="vi"] body{font-family:"Be Vietnam Pro","Segoe UI",Arial,sans-serif;line-height:1.68}
html[lang="vi"] h1,html[lang="vi"] h2,html[lang="vi"] h3{line-height:1.2;letter-spacing:-.028em;text-wrap:balance}
/* Shared scale for the public site. */
:root{--public-content-width:min(1388px,calc(100% - 52px))}
.container{width:var(--public-content-width)}
@media(max-width:800px){:root{--public-content-width:calc(100% - 24px)}}
body{font-size:15px}
html[lang="vi"] body{line-height:1.6}
.market-bar{font-size:12px}
.market-bar .container{min-height:29px}
.site-header .header-row{min-height:60px}
.mark{width:35px;height:35px;font-size:18px}
.brand{gap:9px}
.button{min-height:40px;padding:7px 13px;font-size:13px}
.eyebrow{font-size:11px;margin-bottom:9px}
.section{padding-block:clamp(28px,4.5vw,56px)}
h1{font-size:clamp(2rem,4.6vw,4rem)}
h2{font-size:clamp(1.5rem,3.1vw,2.55rem)}
h3{font-size:clamp(1.05rem,1.7vw,1.35rem)}
.hero-grid{gap:clamp(18px,3.2vw,40px);padding-block:clamp(30px,5vw,68px)}
.intro{font-size:clamp(15px,1.5vw,17px);margin:15px 0}
.turning-quote,.service-grid article,.directory-grid article,.industry-directory article{padding:clamp(15px,2vw,23px)}
.service-grid,.directory-grid,.industry-directory{gap:14px;margin-top:18px}
.footer-row{padding-block:14px;font-size:13px;gap:10px 20px}
@media(max-width:540px){.footer-row{align-items:flex-start;flex-direction:column}}
.solutions-bar{display:block;border-top:1px solid var(--line);background:#fff}
.solutions-menu{position:relative;width:fit-content}
.solutions-menu summary{display:flex;align-items:center;gap:9px;min-height:41px;padding:0 12px;cursor:pointer;list-style:none;font-size:14px;font-weight:700}
.solutions-menu summary::-webkit-details-marker{display:none}
.solutions-menu summary::after{content:"";width:6px;height:6px;border-right:1.5px solid;border-bottom:1.5px solid;transform:translateY(-2px) rotate(45deg)}
.solutions-menu[open] summary{color:var(--blue)}
.solutions-menu[open] summary::after{transform:translateY(2px) rotate(225deg)}
.solutions-menu ul{position:absolute;z-index:3;inset-inline-start:0;top:100%;min-width:210px;max-width:calc(100vw - 32px);margin:0;padding:5px;list-style:none;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 12px 24px #12263a22}
.solutions-menu a{display:block;padding:9px 12px;border-radius:5px}
.solutions-menu a:hover,.solutions-menu a:focus-visible{background:#edf4ff;color:var(--blue)}
