html[lang="vi"] body{font-family:Arial,"Segoe UI",sans-serif;line-height:1.7}
html[lang="vi"] h1,html[lang="vi"] h2,html[lang="vi"] h3,html[lang="vi"] h4{font-family:Arial,"Segoe UI",sans-serif;letter-spacing:-.025em;line-height:1.28;overflow-wrap:break-word}
html[lang="vi"] .hero-copy h1{font-size:clamp(36px,4.4vw,60px);max-width:640px}
html[lang="vi"] #apex-ep-service-design .ep-hero h1{font-size:clamp(32px,4vw,52px);line-height:1.25}
html[lang="vi"] header #mega-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:20px;width:min(900px,calc(100vw - 60px));max-height:calc(100vh - 130px);overflow:auto}
html[lang="vi"] header #mega-links>a{min-width:0;padding:12px 14px;background:#f7f5ef;border-radius:6px;font-size:14px;line-height:1.45;min-height:54px;display:flex;align-items:center}
html[lang="vi"] header #mega-links>a:hover{background:#f2ead8;color:#9a762a;transform:translateY(-2px)}
html[lang="vi"] header nav{gap:16px;font-size:14px}
html[lang="vi"] .vn-languages{position:relative;margin-left:0}
html[lang="vi"] .vn-languages>summary{cursor:pointer;border:1px solid #dbc99d;border-radius:24px;padding:5px 12px;color:#9a762a;white-space:nowrap;list-style:none}
html[lang="vi"] .vn-languages>div{position:absolute;right:0;top:calc(100% + 10px);padding:10px;display:flex;flex-direction:column;min-width:130px;background:#fff;border:1px solid #e4d9c2;border-radius:12px;box-shadow:0 12px 32px #43596c20;z-index:1000}
html[lang="vi"] .vn-languages a{padding:6px 12px;display:block}
html[lang="vi"] .ep-jumps,html[lang="vi"] .sp-toc{gap:10px 18px}
html[lang="vi"] .ep-jumps a,html[lang="vi"] .sp-toc a{white-space:normal;line-height:1.4}
html[lang="vi"] button,html[lang="vi"] .button,html[lang="vi"] .ep-cta{line-height:1.4}
html[lang="vi"] table th,html[lang="vi"] table td{overflow-wrap:break-word}
html[lang="vi"] .vn-nationality-note p{margin:8px 0 12px}
html[lang="vi"] .card h3{font-size:23px;line-height:1.35}
html[lang="vi"] .service-hero-subtitle{line-height:1.5}
html[lang="vi"] .footer-grid .footer-section-title{letter-spacing:-.01em;line-height:1.4}
html[lang="vi"] .vn-table-hint{display:none}
/* Keep readable content visible while retaining illustration and hover effects. */
html[lang="vi"] :is(.entrance-pending,.ep-enter,.dp-reveal,.global-reveal,.refresh-reveal){opacity:1!important;filter:none!important;translate:none!important;transform:none!important;animation:none!important}
html[lang="vi"] :is(h1,h2,h3){animation:none!important;filter:none!important}
html[lang="vi"] .motion-interactive{opacity:1!important;filter:none!important;animation:none!important}
html[lang="vi"] .dp-hero-enter{opacity:1!important;filter:none!important;transform:none!important;animation:none!important}
html[lang="vi"] main :is(h1,h2,h3,h4){letter-spacing:-.02em!important}
html[lang="vi"] main h1{font-weight:650!important}
html[lang="vi"] main :is(.button,.ep-cta,.ap-primary){white-space:normal;max-width:100%;min-width:0;text-align:center;overflow-wrap:normal}
html[lang="vi"] .ep-motion-hero :is(.hk-lead,.actions){opacity:1!important;filter:none!important;animation:none!important}
html[lang="vi"] .pointer-dot{display:none!important}
html[lang="vi"] .about-ui-hero{min-height:0}
html[lang="vi"] .about-ui-hero h1{font-size:clamp(34px,3.5vw,48px);letter-spacing:-.025em;font-weight:650;margin-bottom:20px;line-height:1.25}
html[lang="vi"] .about-ui-hero h2{font-size:clamp(24px,2.2vw,32px);line-height:1.4;max-width:28ch;margin:0 auto 22px;color:#a17c32}
html[lang="vi"] .about-ui-hero .video-copy{padding-top:70px;padding-bottom:80px}
html[lang="vi"] .about-cube-section{padding:64px 0}
html[lang="vi"] .about-cube-copy h2{font-size:clamp(28px,2.6vw,36px);line-height:1.35;max-width:24ch;text-wrap:pretty}
html[lang="vi"] .about-cube-copy p{font-size:16px;line-height:1.85}
html[lang="vi"] .cube-face{padding:10px;gap:8px}
html[lang="vi"] .cube-face svg{flex:0 0 30px;width:30px;height:30px}
html[lang="vi"] .cube-face small{font-size:12px;line-height:1.3;letter-spacing:0;text-align:center;max-width:100%;overflow-wrap:normal;word-break:normal}
html[lang="vi"] .about-ui-story h2,html[lang="vi"] .about-ui-page .office-grid h2{font-size:clamp(27px,2.4vw,34px);line-height:1.4}
html[lang="vi"] .vn-catalog-section{padding:64px 0 80px}
html[lang="vi"] .vn-catalog-section h2{font-size:30px;margin:0 0 28px;line-height:1.35}
html[lang="vi"] .vn-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
html[lang="vi"] .vn-service-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:28px;border:1px solid #dccb9f;border-radius:16px;background:linear-gradient(140deg,#fff,#fffdf8);box-shadow:0 6px 24px #a17c3208;transition:transform .2s,box-shadow .2s,border-color .2s;line-height:1.7}
html[lang="vi"] .vn-service-icon{display:grid;place-items:center;width:48px;height:48px;background:#f7f2e7;color:#a17c32;border-radius:12px;margin-bottom:18px;flex:none}
html[lang="vi"] .vn-service-icon svg{width:27px;height:27px}
html[lang="vi"] .vn-service-card h3{font-size:21px;line-height:1.35;margin:0 0 12px}
html[lang="vi"] .vn-service-card p{font-size:15px;color:#657687;margin:0 0 24px;line-height:1.75}
html[lang="vi"] .vn-service-action{display:flex;align-items:center;gap:12px;color:#9a762a;margin-top:auto;font-size:14px;font-weight:600;line-height:1.5}
html[lang="vi"] .vn-service-card:hover{transform:translateY(-4px);border-color:#b39148;box-shadow:0 14px 28px #a17c321a}
html[lang="vi"] .vn-service-card:focus-visible{outline:2px solid #a17c32;outline-offset:4px}
html[lang="vi"] .vn-service-card:active{transform:translateY(-1px)}
html[lang="vi"] .vn-catalog-tool{grid-column:1/-1;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:0 24px;align-items:center}
html[lang="vi"] .vn-catalog-tool .vn-service-icon{grid-row:1/3;margin:0}
html[lang="vi"] .vn-catalog-tool h3,html[lang="vi"] .vn-catalog-tool p{grid-column:2;margin-bottom:4px}
html[lang="vi"] .vn-catalog-tool .vn-service-action{grid-column:3;grid-row:1/3;margin:0}
/* Vietnamese labels must wrap without changing the shared Chinese/English layout. */
html[lang="vi"] main .text-link{white-space:normal;max-width:100%;overflow-wrap:anywhere}
html[lang="vi"] .bank-motion-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr)}
html[lang="vi"] .bank-motion-layout>*{min-width:0}
html[lang="vi"] #apex-ep-service-design .ep-related{position:static;inset:auto;width:auto;max-width:100%;padding:25px 0;background:transparent;box-shadow:none;flex-direction:row;align-items:center}
html[lang="vi"] #apex-ep-service-design .ep-related a{max-width:100%;white-space:normal;line-height:1.6}
@media(min-width:641px){
 html[lang="vi"] #main .fee-nav a{min-width:0}
 html[lang="vi"] #main .fee-nav .fee-category-label{white-space:normal;overflow-wrap:break-word;min-height:4.5em;display:flex;align-items:center;justify-content:center;max-width:100%}
}
@media(max-width:1240px){
 html[lang="vi"] .menu-toggle{display:block}
 html[lang="vi"] header .header>nav{display:none;position:absolute;top:calc(100% + 8px);left:20px;right:20px;padding:18px;background:#fff;border:1px solid #e7ddc8;border-radius:20px;box-shadow:0 20px 50px #43596c20;max-height:calc(100dvh - 190px);overflow-y:auto;overscroll-behavior:contain}
 html[lang="vi"] header.nav-scrolled .header>nav{max-height:calc(100dvh - 100px)}
 html[lang="vi"] header .header>nav.open{display:flex;flex-direction:column;align-items:stretch;gap:12px}
 html[lang="vi"] header .header>nav>a,html[lang="vi"] header .header>nav>details>summary{padding:8px 10px}
 html[lang="vi"] header .mega-panel{position:static;transform:none;box-shadow:none}
 html[lang="vi"] header #mega-links{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-height:none;padding:10px 0;gap:8px}
 html[lang="vi"] .vn-languages>div{position:static;box-shadow:none;flex-direction:row}
}
@media(max-width:800px){
 html[lang="vi"] .hero-grid{grid-template-columns:1fr}
 html[lang="vi"] .hero-copy{max-width:none}
 html[lang="vi"] .hero-visual{min-height:360px}
 html[lang="vi"] .vn-sector-explanation{padding-top:28px;padding-bottom:40px}
 html[lang="vi"] .about-cube-copy h2{margin-left:auto;margin-right:auto}
 html[lang="vi"] .vn-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
 html[lang="vi"] .bank-motion-layout{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:650px){
 html[lang="vi"] header #mega-links{grid-template-columns:1fr}
 html[lang="vi"] .hero-copy h1{font-size:36px}
 html[lang="vi"] #apex-ep-service-design .ep-hero h1{font-size:32px}
 html[lang="vi"] .card h3{font-size:22px}
 html[lang="vi"] .vn-languages>summary{width:max-content}
 html[lang="vi"] .about-ui-hero .video-copy{padding:44px 22px 64px}
 html[lang="vi"] :is(.cs-hero,.ar-hero,.ct-hero,.lv-hero,.pr-hero,.qc-hero) :is(.cs-actions,.ar-actions,.ct-actions,.lv-actions,.pr-actions){display:grid;grid-template-columns:minmax(0,1fr);align-items:stretch;gap:12px}
 html[lang="vi"] :is(.cs-hero,.ar-hero,.ct-hero,.lv-hero,.pr-hero,.qc-hero) :is(.cs-actions,.ar-actions,.ct-actions,.lv-actions,.pr-actions)>.button{width:100%;min-height:48px;white-space:normal;line-height:1.5}
 html[lang="vi"] :is(.intro,.bank-hero,.hk-hero,.hero-copy) .actions{display:flex;flex-direction:column;align-items:stretch;gap:12px}
 html[lang="vi"] .about-cube-section{padding:44px 0}
 html[lang="vi"] .cube-face{padding:7px;gap:5px}
 html[lang="vi"] .cube-face svg{flex-basis:25px;width:25px;height:25px}
 html[lang="vi"] .cube-face small{font-size:10px;line-height:1.25}
 html[lang="vi"] .vn-service-grid{grid-template-columns:minmax(0,1fr);gap:16px}
 html[lang="vi"] .vn-service-card{padding:24px}
 html[lang="vi"] .vn-catalog-section{padding:40px 0 56px}
 html[lang="vi"] .vn-catalog-tool{display:flex;gap:0}
 html[lang="vi"] .vn-catalog-tool .vn-service-icon{margin-bottom:18px}
 html[lang="vi"] .vn-catalog-tool h3{margin-bottom:12px}
 html[lang="vi"] .vn-catalog-tool p{margin-bottom:24px}
 html[lang="vi"] .service-cube-scene{height:auto;perspective:none}
 html[lang="vi"] .service-cube-group{position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;transform:none!important}
 html[lang="vi"] .service-cube-link{position:static;width:auto;height:auto;animation:none;transform:none}
 html[lang="vi"] .service-cube{transform:none!important}
 html[lang="vi"] .cube-face:not(.cube-front){display:none}
 html[lang="vi"] .cube-front{position:static;min-height:112px;transform:none;padding:16px 10px;gap:10px}
 html[lang="vi"] .cube-face svg{flex:0 0 28px;width:28px;height:28px}
 html[lang="vi"] .cube-face small{font-size:14px;line-height:1.35}
 html[lang="vi"] .cube-scene-halo{display:none}
 html[lang="vi"] .footer-grid{grid-template-columns:minmax(0,1fr);gap:32px}
 html[lang="vi"] .utility-slogan{display:none}
 html[lang="vi"] .utility .wrap{padding-top:7px;padding-bottom:7px}
 html[lang="vi"] .top-contacts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px}
 html[lang="vi"] .top-contacts .top-contact-link{min-width:0}
 html[lang="vi"] main table.vn-table-simple{width:100%;min-width:0!important;table-layout:fixed}
 html[lang="vi"] main table.vn-table-simple :is(th,td){white-space:normal!important;overflow-wrap:break-word}
 html[lang="vi"] main table.vn-table-simple :is(th,td):first-child{width:40%!important;min-width:0!important}
 html[lang="vi"] .vn-table-hint{display:block;font-size:12px;color:#8b6729;line-height:1.5;margin:18px 0 8px}
 html[lang="vi"] .vn-table-hint + :is(.sp-table-wrap,.tax-table-wrap,.ar-table,.ct-table,.ap-table-wrap,.licence-table,.lv-table,.pr-table,.cs-table,.c1-scroll,.hk-table-scroll){margin-top:8px}
}
