/* Content.com.vn — Plus Jakarta Sans / UTF-8 Vietnamese, 300–800.
   Loaded after Impact per-route CSS without changing module grids or imagery.
   Exempt icon font glyphs to preserve dropdown symbols, Dashicons and FA icons. */
:root, body.ds {
  --font: 'Plus Jakarta Sans', Arial, sans-serif;
  --impact-font-body: 'Plus Jakarta Sans', Arial, sans-serif;
  --impact-font-heading: 'Plus Jakarta Sans', Arial, sans-serif;
}
html body.ds,
body.ds .navigationcontainer,
body.ds .impact-builder-output,
body.ds .red-builder-output,
body.ds #footer {
  font-family: 'Plus Jakarta Sans', Arial, sans-serif !important;
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
}
/* Original source styles include old font stacks with high selector specificity. */
body.ds :is(h1,h2,h3,h4,h5,h6,p,li,dt,dd,label,button,input,textarea,select,blockquote,figcaption,summary,td,th),
body.ds :is(a,span,strong,em,small,b):not(.dashicons):not(.material-icons):not(.material-symbols-outlined):not(.fa):not(.fas):not(.far):not(.fab):not([class*="fa-"]):not([class*="icon-"], [class^="icon"]),
body.ds .impact-builder-output :is(h1,h2,h3,h4,h5,h6,p,a,button,label,input,textarea,select),
body.ds .red-builder-output :is(h1,h2,h3,h4,h5,h6,p,a,button,label,input,textarea,select) {
  font-family: 'Plus Jakarta Sans', Arial, sans-serif !important;
}
body.ds :is(h1,h2,h3,h4,h5,h6) {
  overflow-wrap:break-word;
  word-break:normal;
  text-wrap:balance;
}
body.ds .navigationcontainer :is(a,button,input),
body.ds #footer :is(a,button,input){font-family:'Plus Jakarta Sans', Arial, sans-serif!important;}
/* Explicitly normalize inherited chrome text stacks from the 8 distinct Impact CSS routes. */
body.ds #navigation-wrapper,
body.ds #impact-primary-navigation,
body.ds #impact-primary-navigation .drop-nav,
body.ds #navigation-mobile,
body.ds .contentcv-mobile-search,
body.ds #footer :is(nav,div,ul,li) {
  font-family:'Plus Jakarta Sans',Arial,sans-serif!important;
}
/* Header mobile logo must never shrink to 44px or cover the search field. */
@media(max-width:991px){
  body.ds #navigation-wrapper{display:flex!important;align-items:center!important;gap:8px!important;padding-inline:12px!important;box-sizing:border-box!important;}
  body.ds #navigation-wrapper>a.logo {
    flex:0 0 clamp(108px,30vw,124px)!important;
    width:clamp(108px,30vw,124px)!important;
    max-width:clamp(108px,30vw,124px)!important;
    min-width:0!important;
    overflow:visible!important;
    margin:0!important;
  }
  body.ds #navigation-wrapper .impact-text-logo{
    height:auto!important;
    display:block!important;
    margin:0!important;
    font-family:'Plus Jakarta Sans',Arial,sans-serif!important;
    font-size:clamp(12px,3.45vw,15px)!important;
    font-weight:700!important;
    letter-spacing:-.045em!important;
    line-height:1.3!important;
    white-space:nowrap!important;
  }
  body.ds #navigation-wrapper .contentcv-mobile-search {
    flex:1 1 0!important;
    width:auto!important;
    min-width:86px!important;
    margin:0!important;
  }
  body.ds #navigation-wrapper #navigation-mobile__control {
    flex:0 0 36px!important;
    margin:0!important;
  }
}
/* Clipped full-width source carousels must not create desktop page-level horizontal scroll. */
html:has(body.ds){overflow-x:clip;}
