/* Styles scoped from Advisory Static HTML V4.0.0, zero RED demo design CSS. */
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700&display=swap");
@import url("v4-home.css");
@import url("v4-core-inner.css");
@import url("v4-legacy-inner.css");
@import url("v4-inner.css");
.rvb-section-shell[data-rvb-template-id^="adv4-"]{padding:0!important;margin:0!important;min-height:0!important;max-width:none!important;width:100%!important;border:0!important;background:transparent;box-shadow:none}
.rvb-section-shell[data-rvb-template-id^="adv4-"]>.rvb-advisory{padding:0;margin:0;max-width:none;width:100%;}
.rvb-section-shell[data-rvb-template-id^="adv4-"] .advisory-page-main{display:contents}
.rvb-advisory .hero-main h2{font-size:49px;line-height:1.22;letter-spacing:-.045em;color:#fff;font-weight:600}
.rvb-advisory .hero-banner>.adv4-hero-picture{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.rvb-advisory .hero-banner>.hero-tag,.rvb-advisory .hero-banner>.hero-main{z-index:1}
.rvb-advisory .hero-banner{background:#0759BD}
.rvb-advisory [data-bvb-repeat-group]{min-width:0}
@media(max-width:1150px){.rvb-advisory .hero-main h2{font-size:clamp(34px,4vw,49px)}}
@media(max-width:880px){.rvb-advisory .hero-main h2{font-size:clamp(38px,6vw,50px)}}
@media(max-width:640px){.rvb-advisory .hero-main h2{font-size:clamp(37px,8.5vw,48px)}}
@media(max-width:380px){.rvb-advisory .hero-main h2{font-size:35px}}

/* /nguyentactheh semantic parent heading; never changes V4 visual */
.rvb-advisory .adv-semantic-heading{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;white-space:nowrap!important;clip-path:inset(50%)!important;margin:-1px!important;padding:0!important;border:0!important}

/* Agento palette / image banner contrast rules - scoped by .rvb-advisory. */
/* Advisory V4 / Agento AI PALETTE ONLY.
   Keeps V4 markup, photos, font, spacing, WordPress menus and editor untouched.
   No overlay or opacity layer is permitted over background images. */
:root{--adv-agento-bg:#F5F9FF;--adv-agento-light:#E9F6FE;--adv-agento-accent:#00B9DB;--adv-agento-ink:#103B9F;--adv-agento-hover:#0759BD;--adv-agento-border:#D4E7F7;--adv-agento-muted:#536B89;}
/* On photos, remove every theme-layer pseudo overlay (desktop and mobile). */
:is(.adv-theme,.rvb-advisory) :is(.hero-banner,.hero-panel,.hero-section .hero-panel,.page-hero,.hero,.video-banner,.impact-video,.quote-person,.business-graphic,.showcase-art,.cta-art)::before,
:is(.adv-theme,.rvb-advisory) :is(.hero-banner,.hero-panel,.hero-section .hero-panel,.page-hero,.hero,.video-banner,.impact-video,.quote-person,.business-graphic,.showcase-art,.cta-art)::after,
.rvb-advisory.advisory-inner :is(.hero,.page-hero,.impact-video,.quote-person,.business-graphic,.showcase-art,.cta-art)::before,
.rvb-advisory.advisory-inner :is(.hero,.page-hero,.impact-video,.quote-person,.business-graphic,.showcase-art,.cta-art)::after {content:none!important;opacity:0!important;background:none!important;background-image:none!important;box-shadow:none!important;}
:is(.adv-theme,.rvb-advisory) .video-banner>img{opacity:1!important;filter:none!important;mix-blend-mode:normal!important;}
:is(.adv-theme,.rvb-advisory) :is(.hero-banner,.hero-panel,.page-hero,.impact-video,.video-banner,.hero-section .hero-panel,.cta-art,.business-graphic) {background-blend-mode:normal!important;}
/* All text sitting DIRECTLY on photo backgrounds must be pure white (not translucent). */
:is(.adv-theme,.rvb-advisory) :is(.hero-banner,.hero-panel,.page-hero,.video-banner,.impact-video,.hero-section .hero-panel,.cta-art,.business-graphic,.quote-person) :is(h1,h2,h3,h4,h5,h6,p,small,span,b,strong,.eyebrow,.kicker,.hero-tag,.hero-top,.hero-copy,.hero-bottom,.video-content,.video-content .eyebrow,.symbol){color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;opacity:1;}
:is(.adv-theme,.rvb-advisory) :is(.hero-banner,.hero-panel,.page-hero,.video-banner,.impact-video,.hero-section .hero-panel,.cta-art,.business-graphic) :is(h1,h2,h3,h4,h5,h6,p,.eyebrow,.kicker,.hero-tag,.video-content) {text-shadow:0 2px 5px rgba(0,34,84,.28);}
/* White text on every DARK/navy primary button; white SVGs follow currentColor. */
:is(.adv-theme,.rvb-advisory) :is(a.button,button.button,a.btn,button.btn,a.btn-primary,button.btn-primary,.button-primary,.button-dark,.button.black,.button.purple,.btn-purple,.nav-contact,.adv-contact,.search-submit),
:is(.adv-theme,.rvb-advisory) :is(a.button,button.button,a.btn,button.btn,a.btn-primary,button.btn-primary,.button-primary,.button-dark,.button.black,.button.purple,.btn-purple,.nav-contact,.adv-contact,.search-submit):is(:hover,:focus-visible,:active){background-color:#103B9F!important;color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;fill:currentColor;}
:is(.adv-theme,.rvb-advisory) :is(a.button,button.button,a.btn,button.btn,a.btn-primary,button.btn-primary,.button-primary,.button-dark,.button.black,.button.purple,.btn-purple,.nav-contact,.adv-contact,.search-submit):is(:hover,:focus-visible){background-color:#0759BD!important;}
/* Explicit light-background buttons stay dark-navy: never black text on dark-purple. */
:is(.adv-theme,.rvb-advisory) :is(.button.white,.button.neutral,.button-light,.button-white,.btn-light,.btn-outline,.button-outline,.pill,.adv-pill),
:is(.adv-theme,.rvb-advisory) :is(.button.white,.button.neutral,.button-light,.button-white,.btn-light,.btn-outline,.button-outline,.pill,.adv-pill):is(:hover,:focus-visible,:active){background:#E9F6FE!important;color:#103B9F!important;-webkit-text-fill-color:#103B9F!important;}
:is(.adv-theme,.rvb-advisory) :is(.button.white,.button-white,.btn-light){background:#ffffff!important;}
:is(.adv-theme,.rvb-advisory) :is(.button, .btn, .pill, .adv-pill, .nav-contact, .adv-contact) :is(span,small,b,strong,i,svg),
:is(.adv-theme,.rvb-advisory) :is(.button, .btn, .pill, .adv-pill, .nav-contact, .adv-contact) :is(span,small,b,strong,i,svg):is(:hover,:focus-visible){color:inherit!important;fill:currentColor!important;stroke:currentColor!important;-webkit-text-fill-color:currentColor!important;}
:is(.adv-theme,.rvb-advisory) :is(.play,.play-button){background:#ffffff!important;color:#103B9F!important;-webkit-text-fill-color:#103B9F!important;}
:is(.adv-theme,.rvb-advisory) a:focus-visible,:is(.adv-theme,.rvb-advisory) button:focus-visible{outline:3px solid #00B9DB;outline-offset:3px;}
/* Source small header badges on images also remain pure white. */
:is(.adv-theme,.rvb-advisory) .hero-tag{color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;}

/* SEO.com.vn image contrast and mobile heading adjustment – scoped, no DOM change. */
.rvb-advisory:not(.advisory-inner) .hero-main h2,.rvb-advisory:not(.advisory-inner) .hero-right p{color:#fff!important;text-shadow:0 2px 9px rgba(0,17,46,.84),0 0 2px rgba(0,17,46,.7)}
@media(max-width:420px){.rvb-advisory:not(.advisory-inner) .hero-main h2{font-size:clamp(30px,8vw,34px)!important;line-height:1.16!important}}
