/* Content.com.vn v1.3.2: chrome-only layout fixes; NEVER target Page Base module classes. */
@media (min-width: 992px){
 .navigationcontainer nav.main>.drop-nav {position:relative}
 .navigationcontainer nav.main>.drop-nav>.submenu{left:0!important;top:100%!important;transform:none!important;max-width:min(520px,90vw);margin-top:0!important}
 .navigationcontainer nav.main>.drop-nav::after{content:"";position:absolute;left:0;right:0;top:100%;height:12px;pointer-events:none}
 .navigationcontainer nav.main>.drop-nav:hover::after{pointer-events:auto}
 .navigationcontainer nav.main>.drop-nav>.submenu .sub-menu{position:static}
}
.navigationcontainer .contentcv-menu-plus{font-weight:500;font-size:16px;margin-left:8px}
body.ds .impact-custom-logo{width:auto!important;height:auto!important;object-fit:contain!important}

/* Mobile chrome only, scoped to header/footer, never to Page Base sections. */
.contentcv-mobile-search,.contentcv-mobile-bottom{display:none}
@media(max-width:991px){
 #navigation-wrapper{display:flex;align-items:center;gap:8px}
 #navigation-wrapper .contentcv-mobile-search{display:flex!important;align-items:center;flex:1 1 auto;min-width:0;max-width:340px;height:36px;border:1px solid #e3e6ea;border-radius:20px;background:#fafafa;overflow:hidden;margin:0 4px 0 auto}
 .contentcv-mobile-search input{flex:1 1 auto;width:100%;min-width:0;border:0!important;background:transparent!important;font:inherit;font-size:12px;box-shadow:none!important;outline:none!important;padding:7px 10px}
 .contentcv-mobile-search button{flex:0 0 30px;border:0;background:transparent;color:#222;font-size:23px;cursor:pointer}
 .contentcv-mobile-bottom{display:grid;position:fixed;bottom:0;left:0;right:0;z-index:9999;grid-template-columns:repeat(4,minmax(0,1fr));padding:8px max(8px,env(safe-area-inset-right)) calc(6px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -2px 20px rgba(0,0,0,.1);border-top:1px solid #eee}
 .contentcv-mobile-bottom>a{display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;text-decoration:none;color:#202020;font-size:11px;line-height:1.3;white-space:nowrap}
 .contentcv-mobile-bottom>a span{font-size:22px;line-height:1.1}
 body.ds{padding-bottom:65px}
 #footer{margin-bottom:0}
}

.contentcv-contact-wrap{max-width:1000px;margin:0 auto;padding:20px 0 80px}
.contentcv-contact-wrap h2{font-size:clamp(28px,5vw,54px);font-weight:600;letter-spacing:-.03em}
.contentcv-contact-wrap>p{font-size:18px;line-height:1.6;max-width:800px}
.contentcv-contact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:35px}
.contentcv-contact-form label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:500}
.contentcv-contact-form input,.contentcv-contact-form select,.contentcv-contact-form textarea{box-sizing:border-box;border:1px solid #ddd;border-radius:6px;padding:12px 14px;width:100%;font:inherit;font-size:16px;color:#141414;background:white}
.contentcv-contact-form .contentcv-message{grid-column:1/-1}
.contentcv-contact-form button{padding:16px 24px;background:var(--impact-accent,#e3343e);color:white;border:0;border-radius:5px;font-size:15px;cursor:pointer}
.contentcv-contact-form .contentcv-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:700px){.contentcv-contact-form{grid-template-columns:1fr}}

/* v1.3.4: remove extra chrome rows and keep the real WP menu single-line. */
body.ds .navigationcontainer .top-nav{display:none!important}
@media(min-width:992px){
 body.ds #navigation-wrapper{display:flex;align-items:center;justify-content:space-between;gap:12px;max-width:1250px;margin-inline:auto;min-width:0}
 body.ds #navigation-wrapper>a.logo{flex:0 0 auto;min-width:0}
 body.ds #navigation-wrapper nav.main.menu-primary__wrapper{min-width:0;display:flex;align-items:center;gap:clamp(8px,1.1vw,17px);flex-wrap:nowrap}
 body.ds #navigation-wrapper nav.main.menu-primary__wrapper>.drop-nav{flex:0 0 auto;white-space:nowrap}
 body.ds #navigation-wrapper nav.main.menu-primary__wrapper>.spacer{flex:1 1 5px;min-width:0}
 body.ds #navigation-wrapper nav.main.menu-primary__wrapper>.menu-actions{flex:0 0 auto;white-space:nowrap}
 body.ds #impact-primary-navigation>.drop-nav>a{font-weight:600!important;font-size:clamp(12px,.96vw,14px)!important;letter-spacing:-.015em;line-height:1.25!important}
 body.ds #impact-primary-navigation>.menu-actions>.cta-button{font-weight:600!important;font-size:13px!important;white-space:nowrap}
}
body.ds #impact-primary-navigation .drop-nav>.submenu{z-index:1040}

/* Stronger than source per-route Sarabun font selectors. */
body.ds #navigation-wrapper nav.main.menu-primary__wrapper>.drop-nav>a,
body.ds #navigation-wrapper nav.main.menu-primary__wrapper>.menu-actions>.cta-button,
body.ds #navigation-wrapper .impact-text-logo {font-family:'Plus Jakarta Sans',Arial,sans-serif!important;}


/* Content.com.vn v1.3.5 — targeted chrome repair; leaves source page sections untouched. */
:root { --contentcv-header-desktop: 68px; --contentcv-header-mobile: 60px; }
body.ds .navigationcontainer {height:var(--contentcv-header-desktop)!important;min-height:var(--contentcv-header-desktop)!important; padding:0!important; box-shadow:0 1px 0 rgba(20,25,35,.07);}
body.ds .navigationcontainer #navigation-wrapper {height:var(--contentcv-header-desktop)!important;min-height:var(--contentcv-header-desktop)!important;max-width:1250px!important;box-sizing:border-box!important;padding:0 16px!important;}
body.ds #navigation-wrapper>a.logo {height:100%!important; margin:0!important; align-items:center!important;}
body.ds #navigation-wrapper>a.logo>img.custom-logo,
body.ds #navigation-wrapper .logo img {margin:0!important;transform:none!important;max-height:42px!important;}
body.ds .navigationcontainer nav.main.menu-primary__wrapper {height:100%!important;align-items:center!important;}
body.ds #impact-primary-navigation>.drop-nav {height:100%!important;display:flex;align-items:center;}
body.ds #impact-primary-navigation>.drop-nav>a {display:inline-flex!important;align-items:center!important;justify-content:center;gap:5px;padding:0 8px!important;margin:0!important;height:100%!important;min-height:0!important;line-height:1.25!important;}
body.ds #impact-primary-navigation>.menu-actions {height:100%!important;align-items:center;}
body.ds #impact-primary-navigation>.menu-actions>.cta-button,
body.ds .navigationcontainer .cta-button.impact-red {height:auto!important;max-height:44px!important;min-height:36px!important;line-height:20px!important;padding:9px 16px!important;margin:0!important;border-radius:4px;}
/* Impact Source draws Font Awesome chevrons in ::after. Walker already outputs a single +. */
body.ds #impact-primary-navigation a.has-chevron::after {content:none!important;display:none!important;}
body.ds #impact-primary-navigation .contentcv-menu-plus {display:inline-flex!important;align-items:center;justify-content:center;margin-left:3px!important;font-family:'Plus Jakarta Sans',Arial,sans-serif!important;font-size:17px!important;line-height:1;font-weight:500!important;}
body.ds #impact-primary-navigation>.drop-nav>.submenu {top:100%!important;margin-top:0!important;}
/* Source full-canvas had a 95px upper spacer. Match it precisely to fixed header height. */
body.ds .impact-builder-full-canvas.impact-frontend-canvas.page-content {padding-top:var(--contentcv-header-desktop)!important;}
/* The original article templates need an offset as well. */
body.ds main.page-content:not(.impact-frontend-canvas) {padding-top:var(--contentcv-header-desktop)!important;}
/* Native pills are control labels, not multi-line explanatory paragraphs. */
body.ds .dynamic-tabs .tab-pill {white-space:normal;overflow-wrap:normal;word-break:normal;text-wrap:nowrap;}
/* Footer must remain visible even when no WordPress footer menus have been assigned. */
body.ds #footer.contentcv-footer {display:block!important;visibility:visible!important;opacity:1!important;background:#101114!important;color:#fff!important;margin:0!important;padding:0!important;position:relative;}
body.ds #footer.contentcv-footer a{color:#e7e7e7;text-decoration:none;}
body.ds #footer.contentcv-footer a:hover{color:#fff;}
body.ds #footer .contentcv-footer-inner{display:grid!important;grid-template-columns:minmax(200px,1.1fr) minmax(0,3fr);gap:45px!important;max-width:1250px;margin:0 auto;padding:56px 20px 44px!important;align-items:start;}
body.ds #footer .contentcv-footer-intro{max-width:300px;}
body.ds #footer .contentcv-footer-brand a{display:inline-block;color:#fff;font-size:22px;font-weight:700;letter-spacing:-.04em;line-height:1.25;}
body.ds #footer .contentcv-footer-intro p{margin:14px 0 20px;color:#b9bcc2;font-size:14px;line-height:1.65;}
body.ds #footer .contentcv-footer-contact{font-weight:600;font-size:14px;}
body.ds #footer #footerMenu.contentcv-footer-columns {display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:22px!important;padding:0!important;margin:0!important;width:100%;max-width:none!important;justify-content:initial!important;}
body.ds #footer #footerMenu .widgetBlock{min-width:0!important;}
body.ds #footer #footerMenu .widgetBlock .mainMenuItem{background:none;border:0;color:#fff;font-family:'Plus Jakarta Sans',Arial,sans-serif!important;font-weight:600!important;font-size:14px!important;text-align:left!important;margin:0 0 15px!important;padding:0!important;line-height:1.4!important;cursor:default!important;}
body.ds #footer #footerMenu .widgetBlock .submenu{display:block!important;position:static!important;visibility:visible!important;opacity:1!important;background:transparent!important;margin:0!important;padding:0!important;}
body.ds #footer #footerMenu .widgetBlock .submenu ul {margin:0!important;padding:0!important;list-style:none;}
body.ds #footer #footerMenu .widgetBlock .submenu ul li{list-style:none;margin:0 0 9px!important;padding:0!important;font-size:13px!important;line-height:1.6!important;}
body.ds #footer .contentcv-footer-bottom{border-top:1px solid rgba(255,255,255,.13);}
body.ds #footer .contentcv-footer-bottom>div{max-width:1250px;margin:auto;padding:17px 20px;display:flex;justify-content:space-between;gap:10px;color:#a4a7ae;font-size:12px;line-height:1.5;}
@media(max-width:1100px) and (min-width:992px){body.ds #footer .contentcv-footer-inner{gap:24px!important}body.ds #footer #footerMenu.contentcv-footer-columns{gap:15px!important;}}
@media(max-width:991px){
 body.ds .navigationcontainer {height:var(--contentcv-header-mobile)!important;min-height:var(--contentcv-header-mobile)!important;}
 body.ds .navigationcontainer #navigation-wrapper{height:var(--contentcv-header-mobile)!important;min-height:var(--contentcv-header-mobile)!important;padding:0 12px!important;}
 body.ds .navigationcontainer #navigation-wrapper .logo img{max-height:35px!important;}
 body.ds #navigation-wrapper #navigation-mobile__control {align-self:center!important;}
 body.ds .impact-builder-full-canvas.impact-frontend-canvas.page-content{padding-top:var(--contentcv-header-mobile)!important;}
 body.ds main.page-content:not(.impact-frontend-canvas){padding-top:var(--contentcv-header-mobile)!important;}
 body.ds #footer .contentcv-footer-inner{display:block!important;padding:38px 20px 25px!important;}
 body.ds #footer .contentcv-footer-intro{max-width:100%;margin-bottom:32px;}
 body.ds #footer #footerMenu.contentcv-footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 18px!important;}
 body.ds #footer .contentcv-footer-bottom>div{flex-wrap:wrap;padding:15px 20px 20px;}
}
@media(max-width:480px){body.ds #footer #footerMenu.contentcv-footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 13px!important;}body.ds #footer .contentcv-footer-brand a{font-size:20px;}}

/* SEO.com.vn branch — logo and media styling only; master header/footer geometry unchanged. */
body.ds .seo-text-logo{font:700 24px/1 'Plus Jakarta Sans',sans-serif;color:#1355B5;white-space:nowrap;letter-spacing:-.06em}
body.ds .seo-text-logo .seo-dot{font-size:18px;letter-spacing:-.065em}
body.ds .seo-hero-media{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border:0}
body.ds .seo-static-preview{display:block;width:100%;height:100%;position:relative}
body.ds .seo-static-preview img{object-fit:cover;object-position:center}
body.ds .seo-static-preview [id*="big_play_button"]{display:none!important}
body.ds .seo-static-preview [aria-label="Play"]{display:none!important}
body.ds .seo-source-copy img[data-seo-media]{object-fit:cover}
body.ds #impact-primary-navigation>.drop-nav>a{font-family:'Plus Jakarta Sans',Arial,sans-serif!important;font-weight:600!important}

body.ds .entry-content:has(.seo-support-hero),body.ds .seo-support-hero{font-family:'Plus Jakarta Sans',sans-serif}
body.ds .entry-content:has(.seo-support-hero){max-width:1250px;margin:0 auto;padding:18px 24px 80px}
body.ds .seo-support-hero{padding:65px 0 45px;max-width:1000px}
body.ds .seo-support-hero>p:first-child{color:#1258C4;font-size:13px;font-weight:700;letter-spacing:.12em}
body.ds .seo-support-hero h1{font-size:clamp(36px,5vw,66px);line-height:1.15;letter-spacing:-.05em;text-transform:none;color:#181B28;max-width:870px;margin:18px 0 24px}
body.ds .seo-support-hero p{font-size:18px;line-height:1.65;color:#566070}
body.ds .seo-support-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
body.ds .seo-support-grid>a,body.ds .seo-support-grid>div{display:block;padding:27px;border:1px solid #e7eaf0;border-radius:10px;background:#fff;text-decoration:none;transition:box-shadow .2s}
body.ds .seo-support-grid>a:hover{box-shadow:0 10px 30px rgba(11,45,110,.11)}
body.ds .seo-support-grid h2{font-size:21px;font-weight:600;letter-spacing:-.03em;text-transform:none;color:#162B4B;margin:0 0 12px}
body.ds .seo-support-grid p{font-size:14px;line-height:1.6;color:#596373;margin:0}
body.ds .seo-support-cta{padding:35px 0}
body.ds .seo-support-cta a{display:inline-block;background:#1258C4;color:#fff;padding:15px 25px;border-radius:5px}
@media(max-width:850px){body.ds .seo-support-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){body.ds .entry-content:has(.seo-support-hero){padding:10px 15px 48px}body.ds .seo-support-hero{padding:35px 0}body.ds .seo-support-grid{grid-template-columns:1fr}body.ds .seo-support-grid>a,body.ds .seo-support-grid>div{padding:22px}}

/* Corporate blue from SEO.com.vn photo identity; CSS stays scoped to chrome. */
body.ds .navigationcontainer .cta-button.impact-red,
body.ds #impact-primary-navigation .cta-button.impact-red {background:#1258c4!important;border-color:#1258c4!important;color:#fff!important}
body.ds #impact-primary-navigation .cta-button.impact-red:hover {background:#0d428f!important;border-color:#0d428f!important}

body.ds .impact-single-article{font-family:'Plus Jakarta Sans',Arial,sans-serif;max-width:1040px;margin:0 auto;padding:0 25px 80px}
body.ds .impact-single-article .article-hero{padding:60px 0 20px}
body.ds .impact-single-article .article-hero h1{font-size:clamp(35px,5vw,64px);line-height:1.2;font-weight:600;text-transform:none;letter-spacing:-.045em}
body.ds .impact-single-article .article-hero p{font-size:19px;line-height:1.65;max-width:820px}
body.ds .impact-single-article .article-hero img{width:100%;height:auto;max-height:560px;object-fit:cover;border-radius:6px;margin-top:28px}
body.ds .impact-single-article .article-meta{margin:18px 0;color:#6b7280;font-size:13px}
body.ds .impact-single-article .article-content{font-size:17px;line-height:1.85;color:#252b36;max-width:820px;margin:auto}
body.ds .impact-single-article .article-content img{width:auto;max-width:100%;height:auto}
body.ds .impact-single-article .article-content h2{font-size:32px;font-weight:600;text-transform:none;margin:35px 0 14px}
body.ds .impact-single-article .article-content h3{font-size:24px;font-weight:600;text-transform:none;margin:28px 0 10px}

/* Allow editor click-to-replace on photo inside source Wistia visual wrappers. */
body.ds .seo-static-preview img[data-bvb-image]{pointer-events:auto!important;cursor:pointer}
