/* Hoang Sa release palette. Digital reference from the supplied RAL 5015 swatch. */
:root{--brand:#2671b2;--blue:#2671b2;--brand-dark:#174b78;--navy:#174b78;--brand-light:#eef5fb;--pale:#eef5fb;--red:#2671b2;--ink:#172f43;--muted:#526c80;--line:#d8e5f0}
body{background:#fff;color:#172f43}
header,header nav,header .links,header .sub-menu,header .inside-mobile .links{background:#fff;color:#174b78;border-color:#d8e5f0}
header a,header summary,header .menu{color:#174b78}header a:hover,header .current-menu-item>a{color:#2671b2}
h1,h2,h3,.eyebrow,.crumb a,.textlink{color:#174b78}.eyebrow:before{background:#2671b2}
.btn:not(.light),.button,.filter.active{background:#2671b2;border-color:#2671b2;color:#fff}.btn:not(.light):hover,.button:hover{background:#174b78;border-color:#174b78;color:#fff}.btn.light{background:#fff;color:#174b78;border:1px solid #d8e5f0}.btn.light:hover{background:#eef5fb;color:#174b78;border-color:#2671b2}
.card,.hs-card,.facts,.logo-card,.service-card,.service-item,.contact-form{background:#fff;border-color:#d8e5f0}.facts h3,.facts dt,.scope li:before{color:#174b78}
.hero:not(#home),.cta,.about-proof{background:#eef5fb;color:#172f43}.hero:not(#home) p,.cta p,.about-proof p{color:#526c80}.hero:not(#home) h1,.cta h2,.about-proof h2{color:#174b78}
.contact{background:#eef5fb!important;color:#172f43;border-block:1px solid #d8e5f0}.contact h2,.contact .eyebrow,.contact p{color:#174b78}.contact .btn:not(.light){background:#2671b2;color:#fff;border-color:#2671b2}.contact .btn.light{background:#fff;color:#174b78;border-color:#d8e5f0}
footer,.hs-footer{background:#fff!important;color:#526c80!important;border-top:1px solid #d8e5f0}.hs-site-footer{padding:36px 0 20px}.hs-site-footer .footer-row{display:flex;justify-content:space-between;align-items:flex-start;gap:28px}.hs-site-footer .footer-brand{max-width:360px}.hs-site-footer img{display:block;width:210px;height:auto}.hs-site-footer p{font-size:12px;margin:12px 0}.hs-site-footer .footer-links{display:flex;flex-wrap:wrap;gap:16px;max-width:480px}.hs-site-footer a,footer a,.hs-footer a{color:#174b78}.hs-site-footer a:hover{color:#2671b2;text-decoration:underline}.hs-site-footer .bottom{border-top:1px solid #d8e5f0;margin-top:24px;padding-top:16px;font-size:11px;color:#526c80}.hs-footer-top p{color:#526c80}
.article-body{color:#243e52;line-height:1.85}.article-body p,.article-body li{max-width:78ch}.article-source,.form-help{font-size:12px;color:#526c80;line-height:1.7}.article-source{margin-top:28px;padding-top:16px;border-top:1px solid #d8e5f0}.article-source a{color:#2671b2;text-decoration:underline}
.project .project-photo-link img,.hs-card img{background:#eef5fb}.card:not(:has(>img)){border-top:3px solid #2671b2}.card .photo-note:empty{display:none}
a:focus-visible,button:focus-visible,summary:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #2671b2;outline-offset:3px}input,textarea,select{accent-color:#2671b2}
@media(max-width:760px){.hs-site-footer .footer-row{flex-direction:column;gap:20px}.hs-site-footer .footer-links{gap:12px 18px}.hs-site-footer{padding-bottom:110px}.hs-site-footer img{width:180px}.hero{scroll-margin-top:78px}.article-body{line-height:1.8}}

/* Contact band retains the supplied logo blue. Project section uses its original pale background. */
#contact.contact{background:#0578be!important;color:#fff;border-color:#0578be}
#contact.contact h2,#contact.contact .eyebrow,#contact.contact p{color:#fff}
#contact.contact .eyebrow:before{background:#fff}
#contact.contact .btn:not(.light){background:#fff;border-color:#fff;color:#0578be}
#contact.contact .btn:not(.light):hover{background:#eef5fb;border-color:#eef5fb;color:#174b78}
#contact.contact .btn.light{background:transparent;border-color:#ffffffb3;color:#fff}
#contact.contact .btn.light:hover{background:#fff;border-color:#fff;color:#0578be}
#contact.contact .btn:focus-visible{outline-color:#fff}

/* Large vector activity illustrations replace the solid blue card panels. */
#services .service-cards{gap:22px}
#services .service-card{background:transparent;border:0;border-radius:0;padding:12px 8px 18px;min-height:242px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;color:#174b78;box-shadow:none}
#services .service-card strong{font-size:16px;line-height:1.4;color:#174b78}
#services .service-card>span{color:#0578be;margin:0}
#services .service-card .icon-shell{display:flex;align-items:center;justify-content:center;width:100%;max-width:230px;height:170px;margin:0;background:transparent;border:0;border-radius:0;box-shadow:none}
#services .service-card .service-illustration{display:block;width:200px;height:160px;max-width:100%;object-fit:contain;transition:transform .18s ease}
#services .service-card>span:last-child{font-size:12px;margin:0;color:#0578be}
#services .service-card:hover{background:transparent;border:0;box-shadow:none;transform:translateY(-3px)}
#services .service-card:hover .service-illustration{transform:scale(1.03)}
#services .service-card:focus-visible{outline:3px solid #0578be;outline-offset:4px;border-radius:6px}
@media(max-width:760px){#services .service-cards{gap:12px}#services .service-card{padding:8px 2px 14px;min-height:196px;gap:9px}#services .service-card .icon-shell{height:126px}#services .service-card .service-illustration{width:150px;height:120px}#services .service-card strong{font-size:13px}#services .service-card>span:last-child{font-size:11px}}
@media(prefers-reduced-motion:reduce){#services .service-card .service-illustration{transition:none}#services .service-card:hover,#services .service-card:hover .service-illustration{transform:none}}

/* Engineering service icons 1.6.4 */
#services .service-card .icon-shell{max-width:210px;height:158px}
#services .service-card .service-illustration{width:150px;height:150px}
@media(max-width:760px){#services .service-card .icon-shell{height:128px}#services .service-card .service-illustration{width:122px;height:122px}}

.hs-icon-credit{font-size:12px;line-height:1.6;text-align:center;margin:18px auto 0;padding:0 16px 16px;color:#526C80}.hs-icon-credit a{color:inherit;text-decoration:underline}

/* Refined unified icons 1.6.8 */
#services .service-card .icon-shell{max-width:180px;height:124px}
#services .service-card .service-illustration{width:104px;height:104px}
@media(max-width:760px){#services .service-card{min-height:176px}#services .service-card .icon-shell{height:104px}#services .service-card .service-illustration{width:88px;height:88px}}

/* EPC photographic service cards 1.7.0 */
#services .service-cards{gap:24px}
#services .service-card{padding:0 0 18px;min-height:0;align-items:stretch;gap:13px;text-align:left;border-radius:10px;overflow:hidden;background:#fff;border:1px solid #DFE9F2}
#services .service-card .icon-shell{width:100%;max-width:none;height:auto;aspect-ratio:3/2;display:block;border-radius:0;overflow:hidden;flex-shrink:0}
#services .service-card .service-illustration{display:block;width:100%;height:100%;max-width:none;object-fit:cover}
#services .service-card strong{padding:0 16px;font-size:15px;line-height:1.45}
#services .service-card>span:last-child{padding:0 16px;margin-top:auto}
#services .service-card:hover{background:#fff;border:1px solid #B9D6E9;box-shadow:0 8px 24px #174B780D}
@media(max-width:760px){#services .service-cards{gap:14px}#services .service-card{padding:0 0 14px;gap:10px;min-height:0}#services .service-card .icon-shell{height:auto;max-width:none;aspect-ratio:3/2}#services .service-card .service-illustration{width:100%;height:100%}#services .service-card strong{font-size:13px;padding:0 10px}#services .service-card>span:last-child{padding:0 10px}}

/* EPC line illustrations 1.7.1 */
#services .service-card .service-illustration{object-fit:contain;background:#fff}

/* Contact details copied from hoangsame.com/lien-he — 1.7.2 */
.hs-company-contact{padding:28px 0;color:#174b78}.hs-company-contact h2{font-size:26px;margin:0 0 20px}.hs-contact-locations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.hs-contact-location{min-width:0}.hs-contact-location h3{font-size:17px;margin:0 0 8px}.hs-contact-location p{font-size:14px;line-height:1.7;margin:0 0 14px;min-height:72px}.hs-contact-location iframe{display:block;width:100%;height:240px;border:1px solid #d8e5f0;border-radius:8px}.hs-contact-channels{line-height:1.9;font-size:15px}.hs-company-contact.compact{padding:12px 0 0}.compact .hs-contact-locations{display:block}.compact .hs-contact-location h3{font-size:12px;margin:10px 0 2px}.compact .hs-contact-location p{font-size:12px;min-height:0;margin:0;max-width:520px}.hs-footer-top>div{min-width:0}.hs-footer-top a{overflow-wrap:anywhere}@media(max-width:600px){.hs-contact-locations{grid-template-columns:1fr;gap:22px}.hs-contact-location p{min-height:0}.hs-company-contact h2{font-size:23px}}

/* Compact social footer 1.7.3 */
.hs-social-links{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:16px}.hs-social-icon{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;flex:0 0 42px;border:1px solid #c8dce9;border-radius:50%;background:#fff;color:#0578be;line-height:1;text-decoration:none}.hs-social-icon svg{display:block;width:24px;height:24px}.hs-social-icon[href]:hover{background:#0578be;color:#fff;border-color:#0578be}.hs-social-icon:focus-visible{outline:3px solid #0578be;outline-offset:3px}.hs-social-icon.is-unconfigured{opacity:.65;cursor:default}.hs-footer-top .hs-social-links{margin-top:14px}

/* Footer QR disclosure 1.7.4 */
.hs-qr-menu{position:relative;display:inline-block}.hs-qr-menu summary{list-style:none;cursor:pointer}.hs-qr-menu summary::-webkit-details-marker{display:none}.hs-qr-menu summary::after{content:none!important}.hs-qr-menu[open] summary{background:#0578be;color:white}.hs-qr-card{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);width:244px;max-width:calc(100vw - 32px);padding:16px;background:#fff;color:#174b78;border:1px solid #c8dce9;border-radius:12px;box-shadow:0 10px 30px #174b7822;text-align:center;z-index:80}.hs-qr-card strong{font-size:15px}.hs-qr-card img{display:block;width:100%;height:auto;max-width:212px;margin:8px auto;image-rendering:pixelated}.hs-qr-card p{font-size:12px;line-height:1.5;margin:6px 0}.hs-qr-card a{font-size:13px;overflow-wrap:anywhere}@media(max-width:480px){.hs-qr-card{left:auto;right:-16px;transform:none}}

/* Native app colors 1.7.5 */
.hs-social-icon[data-social]{background:var(--social-color);border-color:var(--social-color);color:#fff;opacity:1;border-radius:11px}
.hs-social-icon[data-social="zalo"]{--social-color:#0068ff}.hs-social-icon[data-social="facebook"]{--social-color:#1877f2}.hs-social-icon[data-social="whatsapp"]{--social-color:#25d366}.hs-social-icon[data-social="youtube"]{--social-color:#ff0000}
.hs-social-icon[data-social="youtube"] svg path{fill:#ff0000}
.hs-social-icon[data-social][href]:hover{background:var(--social-color);border-color:var(--social-color);color:#fff;filter:brightness(.9)}
.hs-qr-menu summary.hs-social-icon,.hs-qr-menu[open] summary.hs-social-icon{background:#fff;color:#111;border-color:#b8c1ca;border-radius:11px}
.hs-qr-menu summary.hs-social-icon:hover{background:#f3f5f7}

/* Hide the separate tour caption; embedded provider controls are untouched. */
.hero-mecart-credit{display:none!important}

/* About EPC illustrations aligned with homepage 1.7.9 */
/* EPC photographic service cards 1.7.0 */
.about-services .service-cards{gap:24px}
.about-services .service-card{padding:0 0 18px;min-height:0;align-items:stretch;gap:13px;text-align:left;border-radius:10px;overflow:hidden;background:#fff;border:1px solid #DFE9F2}
.about-services .service-card .icon-shell{width:100%;max-width:none;height:auto;aspect-ratio:3/2;display:block;border-radius:0;overflow:hidden;flex-shrink:0}
.about-services .service-card .service-illustration{display:block;width:100%;height:100%;max-width:none;object-fit:cover}
.about-services .service-card strong{padding:0 16px;font-size:15px;line-height:1.45}
.about-services .service-card>span:last-child{padding:0 16px;margin-top:auto}
.about-services .service-card:hover{background:#fff;border:1px solid #B9D6E9;box-shadow:0 8px 24px #174B780D}
@media(max-width:760px){.about-services .service-cards{gap:14px}.about-services .service-card{padding:0 0 14px;gap:10px;min-height:0}.about-services .service-card .icon-shell{height:auto;max-width:none;aspect-ratio:3/2}.about-services .service-card .service-illustration{width:100%;height:100%}.about-services .service-card strong{font-size:13px;padding:0 10px}.about-services .service-card>span:last-child{padding:0 10px}}


.about-services .service-card .service-illustration{object-fit:contain;background:#fff}
