
:root{--ink:#0d2b43;--teal:#087d85;--teal2:#0aa0a3;--orange:#f47726;--pale:#f4f8fa;--muted:#607584;--line:#dce8ec;--white:#fff;--shadow:0 22px 70px rgba(10,42,64,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font:15px/1.65 system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:#fff}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #f7a365;outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:clamp(38px,5vw,69px);line-height:1.1;letter-spacing:-2.5px}h2{font-size:clamp(28px,3vw,43px);line-height:1.17;letter-spacing:-1.3px}h3{font-size:20px;line-height:1.3}p{color:var(--muted)}.wrap{width:min(1210px,calc(100% - 48px));margin:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:12px;padding:14px 21px;min-height:52px;background:var(--orange);color:white;font-weight:800;box-shadow:0 8px 20px #f4772633;transition:transform .2s}.btn:hover{transform:translateY(-2px)}.btn.teal{background:var(--teal);box-shadow:none}.btn.white{background:#fff;color:var(--ink);box-shadow:none;border:1px solid var(--line)}.btn.ghost{background:#e9f7f5;color:var(--teal);box-shadow:none}.eyebrow{font-size:11px;letter-spacing:2px;text-transform:uppercase;font-weight:850;color:var(--teal);margin-bottom:14px}.section{padding:88px 0}.pale{background:var(--pale)}.head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:30px}.head p{margin-top:13px;max-width:610px}.link{color:var(--teal);font-weight:800;white-space:nowrap}.top{background:#0b263c;color:#cce2e7;font-size:12px}.top .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:8px;padding-bottom:8px;gap:15px}.top span:first-child{display:flex;align-items:center;gap:8px}.dot{width:7px;height:7px;border-radius:50%;background:#58d2bf;display:inline-block}.nav{background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid #e8eff2;box-shadow:0 6px 30px #0d2b430b}.nav-inner{display:flex;align-items:center;min-height:86px;gap:24px}.logo{display:flex;align-items:center;gap:12px;min-width:0}.logo .symbol{width:70px;height:67px;flex-shrink:0}.logo .words{line-height:1.08;white-space:nowrap}.logo b{display:block;font-size:14px;letter-spacing:.8px}.logo strong{display:block;color:var(--teal);font-size:24px;letter-spacing:-.6px;margin:3px 0}.logo small{display:block;font-size:10px;letter-spacing:2.6px;font-weight:750}.navlinks{display:flex;gap:24px;align-items:center;margin-left:auto;font-size:13px;font-weight:750}.navlinks a:hover{color:var(--teal)}.navcta{font-size:14px;white-space:nowrap}.hamb{display:none;border:1px solid var(--line);border-radius:10px;background:white;font-size:24px;width:44px;height:44px}.hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#eff8f8 0%,#f9fbfc 54%,#e5f2f4 100%)}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 83% 30%,#96c9cf66,transparent 34%);pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:65px;align-items:center;padding-top:84px;padding-bottom:92px}.pill{display:inline-flex;align-items:center;gap:9px;background:#e0f3ef;color:#08747b;border:1px solid #bfe5de;padding:7px 14px;border-radius:100px;font-size:12px;font-weight:800;margin-bottom:24px}.hero h1 span{color:var(--teal)}.hero .intro{font-size:17px;line-height:1.85;max-width:600px;margin:25px 0}.hero-buttons{display:flex;gap:12px;flex-wrap:wrap}.hero-chips{display:flex;gap:9px;flex-wrap:wrap;margin-top:28px}.hero-chips span{font-size:12px;font-weight:700;color:#416478;background:white;border:1px solid #d6e7e9;border-radius:100px;padding:7px 12px}.contact-panel{background:white;border:1px solid #e5eff0;border-radius:22px;box-shadow:var(--shadow);padding:30px;position:relative}.contact-panel:before{content:"";position:absolute;top:0;left:28px;right:28px;height:4px;border-radius:0 0 8px 8px;background:linear-gradient(90deg,var(--teal),var(--orange))}.contact-panel .label{color:var(--teal);font-size:12px;font-weight:850;letter-spacing:1.2px}.contact-panel h2{font-size:28px;letter-spacing:-.6px;margin:10px 0}.contact-panel>p{font-size:14px;margin-bottom:20px}.contact-panel .btn{display:flex;width:100%;margin-top:11px}.contact-panel .mini{margin-top:20px;padding-top:17px;border-top:1px solid var(--line);display:grid;gap:11px;color:#476577;font-size:13px}.contact-panel .mini span{display:flex;gap:9px}.hero-art{position:absolute;right:-35px;bottom:-48px;opacity:.1;transform:rotate(-8deg);pointer-events:none}.trust{border-bottom:1px solid var(--line);background:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding-top:28px;padding-bottom:28px}.trust-item{display:flex;gap:12px;align-items:center}.trust-item .ico{width:43px;height:43px;border-radius:13px;background:#e6f5f2;display:grid;place-items:center;color:var(--teal);font-size:22px;flex-shrink:0}.trust-item b{display:block;font-size:13px}.trust-item p{font-size:12px;margin-top:2px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.route{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;transition:transform .2s,box-shadow .2s}.route:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.route-visual{height:132px;display:flex;align-items:end;justify-content:space-between;padding:20px;background:linear-gradient(125deg,#d7eeed,#f3f8fa);position:relative;overflow:hidden}.route-visual:after{content:"";width:170px;height:170px;border:30px solid #ffffff80;border-radius:50%;position:absolute;right:-65px;top:-75px}.route-visual b{font-size:26px;letter-spacing:-.8px;z-index:1}.route-visual .arrow{font-size:28px;color:var(--teal);z-index:1}.route-body{padding:22px}.route-body p{font-size:13px;margin:10px 0 19px;min-height:44px}.route-meta{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;gap:8px;font-size:12px}.route-meta span{color:var(--muted)}.route-meta a{color:var(--teal);font-weight:850}.note{font-size:12px;margin-top:19px;color:#69808d}.two{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.illustration{min-height:390px;border-radius:22px;position:relative;overflow:hidden;background:linear-gradient(160deg,#b7d7df 0%,#dcebef 42%,#f8e5c9 100%);box-shadow:var(--shadow)}.illustration svg{position:absolute;inset:0;width:100%;height:100%}.illustration .caption{position:absolute;bottom:20px;left:20px;right:20px;padding:14px 18px;border-radius:13px;background:#fffef3ed;backdrop-filter:blur(8px);font-size:12px;color:#496574;font-weight:750}.steps{display:grid;gap:23px;margin-top:26px}.step{display:flex;gap:15px}.step .num{width:40px;height:40px;flex-shrink:0;background:var(--teal);color:#fff;border-radius:12px;display:grid;place-items:center;font-weight:900}.step b{font-size:15px}.step p{font-size:13px;margin-top:4px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service{background:#fff;border:1px solid var(--line);padding:25px 22px;border-radius:17px}.service .glyph{display:grid;place-items:center;width:49px;height:49px;background:#e7f6f4;border-radius:13px;font-size:23px;margin-bottom:17px}.service h3{font-size:16px}.service p{font-size:13px;margin-top:9px}.pricebox{border:1px solid #d7e6e9;border-radius:20px;background:#fff;overflow:hidden}.pricehead{background:#0e344b;color:white;padding:24px 28px;display:flex;justify-content:space-between;gap:20px;align-items:center}.pricehead h3{font-size:23px}.pricehead p{color:#bed3dc;font-size:13px}.pricehead .btn{white-space:nowrap}.price-table{width:100%;border-collapse:collapse}.price-table th{text-align:left;background:#eff6f7;color:#456475;font-size:12px;padding:17px 22px}.price-table td{border-top:1px solid var(--line);padding:19px 22px;font-size:14px}.price-table tr:nth-child(even){background:#fbfdfe}.price-table td:last-child{font-weight:800;color:var(--teal)}.table-scroll{overflow-x:auto}.pricefoot{padding:16px 23px;background:#f8fbfc;border-top:1px solid var(--line);font-size:12px;color:#5d7482}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:75px}.faq-grid .side p{margin-top:16px}.faq-grid .side .btn{margin-top:25px}.faq-list details{border:1px solid var(--line);background:white;border-radius:13px;padding:18px 21px;margin-bottom:10px}.faq-list summary{cursor:pointer;font-weight:800;list-style:none;padding-right:27px;position:relative}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";position:absolute;right:0;top:-4px;color:var(--teal);font-size:24px}.faq-list details[open] summary:after{content:"−"}.faq-list details p{font-size:13px;padding-top:13px}.cta-band{border-radius:22px;background:linear-gradient(110deg,#0d3048,#075d69);color:white;padding:42px 48px;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta-band h2{font-size:31px}.cta-band p{color:#c2dbe0;margin-top:12px}.cta-actions{display:flex;gap:11px;flex-wrap:wrap}.footer{background:#0b2539;color:#fff;padding:60px 0 25px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:35px}.footer .logo strong{color:#66c9c5}.footer .logo b,.footer .logo small{color:#fff}.footer p,.footer a{color:#acc4d0;font-size:13px}.footer p{margin-top:16px}.footer h3{font-size:15px;margin-bottom:17px}.footer .links{display:grid;gap:11px}.footer a:hover{color:#fff}.footer .hot{font-size:23px;color:#fff;font-weight:850}.footer-bottom{margin-top:45px;border-top:1px solid #ffffff25;padding-top:20px;color:#9db6c2;font-size:12px;display:flex;justify-content:space-between;gap:20px}.mobilebar{display:none}.preview-flag{position:fixed;bottom:18px;left:18px;z-index:20;border-radius:100px;background:#ffffffed;border:1px solid var(--line);box-shadow:0 5px 25px #0d2b4319;padding:7px 13px;color:#5d7180;font-size:11px;font-weight:800}
@media(max-width:1080px){.navlinks{gap:14px}.navcta{display:none}.hero-grid{gap:25px}.footer-grid{gap:22px}.trust-grid{gap:12px}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){body{padding-bottom:calc(82px + env(safe-area-inset-bottom))}.wrap{width:min(100% - 36px,1210px)}.top .wrap span:last-child{display:none}.nav-inner{min-height:72px}.logo .symbol{width:49px;height:48px}.logo b{font-size:10px}.logo strong{font-size:17px}.logo small{font-size:7px;letter-spacing:1.6px}.hamb{display:block;margin-left:auto}.navlinks{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;box-shadow:0 15px 25px #0d2b4318;padding:18px 24px;flex-direction:column;align-items:stretch;gap:0}.navlinks.open{display:flex}.navlinks a{padding:11px 0;border-bottom:1px solid var(--line)}.hero-grid{grid-template-columns:1fr;padding-top:46px;padding-bottom:52px;gap:30px}.hero h1{font-size:clamp(37px,9.2vw,50px);letter-spacing:-1.5px}.hero .intro{font-size:15px;margin:19px 0}.hero-buttons .btn{flex:1}.contact-panel{padding:25px}.trust-grid{grid-template-columns:1fr 1fr;gap:20px;padding:22px 0}.trust-item{align-items:start}.trust-item .ico{width:36px;height:36px;font-size:18px}.section{padding:56px 0}.head{display:block}.head .link{display:inline-block;margin-top:17px}.cards{grid-template-columns:1fr}.route-visual{height:110px}.route-body p{min-height:0}.two,.faq-grid{grid-template-columns:1fr;gap:28px}.illustration{min-height:285px}.service-grid{grid-template-columns:1fr 1fr;gap:11px}.service{padding:19px 16px}.service h3{font-size:14px}.service p{font-size:12px}.pricehead{display:block;padding:23px}.pricehead .btn{margin-top:18px}.price-table{min-width:550px}.price-table td,.price-table th{padding:15px}.cta-band{display:block;padding:28px}.cta-band h2{font-size:27px}.cta-actions{margin-top:24px}.cta-actions .btn{flex:1}.footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-grid>div:first-child{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{display:block}.footer{padding-bottom:115px}.mobilebar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:9px 13px calc(9px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -8px 28px #0d2b4322;z-index:60}.mobilebar .btn{font-size:13px;min-height:48px;padding:10px 8px}.preview-flag{bottom:95px;left:10px;font-size:10px;padding:5px 9px}}
@media(max-width:390px){.hero-buttons .btn{font-size:12px;padding:12px 10px}.logo .symbol{width:42px}.logo strong{font-size:15px}.trust-grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.route{transition:none}}

/* V2.3: large, accessible Vietnamese-first typography */
:root{--muted:#425b6b}
body{font-family:"Be Vietnam Pro",Arial,system-ui,sans-serif;font-size:17px;line-height:1.8}
h1,h2,h3,.logo{font-family:"Be Vietnam Pro",Arial,sans-serif}
h1{font-size:clamp(40px,5.2vw,72px);line-height:1.19;letter-spacing:-1.5px;font-weight:900}
h2{font-size:clamp(31px,3.25vw,46px);line-height:1.3;letter-spacing:-.7px;font-weight:800}
h3{font-size:23px;line-height:1.45;font-weight:800}
p{color:#435d6c}
.eyebrow{font-size:13px;letter-spacing:1.2px}
.btn{font-size:16px;min-height:56px}
.navlinks{font-size:15px}
.top{font-size:13px}
.hero .intro{font-size:19px;line-height:1.85}
.hero-chips span,.trust-item p,.route-body p,.service p,.step p,.faq-list details p,.contact-panel>p,.pricehead p,.pricefoot,.footer p,.footer a{font-size:15px}
.trust-item b,.step b,.faq-list summary,.route-meta,.route-meta a{font-size:16px}
.route-body h3{font-size:21px}
.service h3{font-size:19px}
.route-body p{min-height:70px}
.route-meta span{font-size:13px}
.contact-panel h2{font-size:31px}
.contact-panel .mini{font-size:14px}
.price-table th{font-size:14px}
.price-table td{font-size:16px}
.faq-list details{padding:23px 25px}
.faq-list details p{line-height:1.9}
.footer h3{font-size:18px}
.detail-panel{background:white;border:1px solid var(--line);border-radius:20px;padding:30px}
.detail-panel h3{margin-bottom:12px}
.detail-panel p{font-size:16px;line-height:1.9}
.detail-panel ul{padding-left:22px;color:#435d6c;font-size:16px}
.detail-panel li{margin:10px 0}
.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.info-strip{margin-top:25px;border-left:4px solid var(--teal);background:#eef8f7;padding:18px 23px;border-radius:0 12px 12px 0;font-size:15px;color:#335565}
@media(max-width:760px){
body{font-size:16px}
h1{font-size:clamp(36px,9vw,48px);line-height:1.23}
h2{font-size:clamp(29px,7vw,36px)}
h3{font-size:20px}
.hero .intro{font-size:17px}
.btn{font-size:15px}
.hero-buttons .btn{font-size:14px}
.trust-item b{font-size:14px}
.trust-item p{font-size:13px}
.service h3{font-size:16px}
.service p{font-size:14px}
.route-body p{min-height:0}
.info-grid{grid-template-columns:1fr}
.detail-panel{padding:23px}
.detail-panel p,.detail-panel ul{font-size:15px}
.navlinks{font-size:16px}
}

/* Production: existing WordPress data and semantic content */
.lk-live-routes{margin-top:28px}.lk-wp-content{padding-top:30px;padding-bottom:30px}.entry-content{max-width:1100px}.entry-content p{margin:0 0 1em}.entry-content a{text-decoration:underline;color:var(--teal)}
@media(max-width:760px){.lk-live-routes{margin-top:20px}}

/* Contrast correction — preserve approved V2.5 layout */
.btn:not(.teal):not(.white):not(.ghost):not(.secondary):not(.outline):not(.dark) {
  color: #102B42;
}

@media (max-width:760px) {
  .mobilebar .btn:not(.teal):not(.white):not(.ghost) {
    color: #102B42;
  }
}

/* V2.5.3 — Contrast only, preserve approved layout */
.hero h1,
.hero h1 span:first-child {
  color: #102B42;
}

.hero h1 span:last-child {
  color: #087D85;
}

.hero .intro,
.hero p {
  color: #355467;
}

.hero .contact-panel p,
.contact-panel > p {
  color: #425B6B;
}

.hero .contact-panel h2,
.contact-panel h2 {
  color: #102B42;
}

.hero-buttons .btn.teal,
.contact-panel .btn.teal,
.cta-actions .btn.teal {
  background: #087D85;
  color: #FFFFFF;
}

.hero-buttons .btn:not(.teal),
.contact-panel .btn:not(.teal) {
  background: #EE792B;
  color: #102B42;
}


/* V2.6 production-snapshot patch: typography, CTA contrast, mobile price cards */
body,h1,h2,h3,button,.logo{font-family:Inter,Arial,sans-serif}
.hero h1,.hero h1 span{color:#102B42}
.hero .hero-tagline{font-size:clamp(20px,2.4vw,29px);font-weight:700;line-height:1.35;color:#087D85;margin-top:15px;letter-spacing:-.5px}
.hero .intro,.hero p.intro{color:#355467}
.hero .contact-panel>p{color:#425B6B}
.hero .hero-buttons a.btn[href^="tel:"],.hero .contact-panel a.btn[href^="tel:"],.cta-actions a.btn[href^="tel:"],.mobilebar a.btn[href^="tel:"],.pricehead a.btn[href^="tel:"]{background:#EE792B;color:#102B42;border-color:#EE792B}
.hero .hero-buttons a.btn[href*="zalo.me"],.hero .contact-panel a.btn[href*="zalo.me"],.cta-actions a.btn[href*="zalo.me"],.mobilebar a.btn[href*="zalo.me"],a.btn.teal[href*="zalo.me"]{background:#087D85;color:#fff;border-color:#087D85;box-shadow:none}
.price-call{color:#087D85;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.footer-bottom a{color:#fff;text-decoration:underline}
@media(max-width:760px){.table-scroll{overflow:visible}.price-table{display:block;width:100%;min-width:0}.price-table thead{display:none}.price-table tbody{display:grid;gap:12px;padding:14px}.price-table tr{display:grid;background:#fff!important;border:1px solid #d7e6e9;border-radius:14px;padding:14px;gap:7px}.price-table td{display:block;padding:0;border:0;font-size:14px;overflow-wrap:anywhere}.price-table td:first-child{font-weight:800;color:#102B42;font-size:16px}.price-table td:nth-child(2):before{content:"Hình thức: ";font-weight:700;color:#355467}.price-table td:last-child{margin-top:4px}.price-table td:last-child:before{content:"Tư vấn giá: ";font-weight:700;color:#355467}.hero .hero-tagline{font-size:20px}}
