/* AUCEA public-site typography. Five sizes only; loaded after page styles.
   The important layer takes precedence over legacy unlayered !important rules.
   Admin interfaces and embedded documents are deliberately outside this scope. */
@layer aucea-type {
  :root {
    --type-meta: 14px;
    --type-body: 16px;
    --type-title: 20px;
    --type-section: 32px;
    --type-display: 48px;
  }
  :is(body.nav-concept-v4, body:has(> .query-header)) {
    --home-type-caption: var(--type-meta) !important;
    --home-type-small: var(--type-meta) !important;
    --home-type-body: var(--type-body) !important;
    --home-type-card: var(--type-title) !important;
    --home-type-section: var(--type-section) !important;
    --home-type-display: var(--type-display) !important;
    --site-type-caption: var(--type-meta) !important;
    --site-type-small: var(--type-meta) !important;
    --site-type-body: var(--type-body) !important;
    --site-type-card: var(--type-title) !important;
    --site-type-subtitle: var(--type-title) !important;
    --site-type-section: var(--type-section) !important;
    --site-type-display: var(--type-display) !important;
    font-size: var(--type-body) !important;
  }
  :is(body.nav-concept-v4, body:has(> .query-header)) *,
  :is(body.nav-concept-v4, body:has(> .query-header)) *::before,
  :is(body.nav-concept-v4, body:has(> .query-header)) *::after {
    font-size: inherit !important;
  }
  :is(body.nav-concept-v4, body:has(> .query-header)) :is(h1,h2,h3,h4,h5,h6) {
    font-family: inherit !important;
    font-weight: 600 !important;
    line-height: 1.45 !important;
    overflow-wrap: break-word;
  }
  :is(body.nav-concept-v4, body:has(> .query-header)) h1 {
    font-size: var(--type-display) !important;
    line-height: 1.3 !important;
  }
  :is(body.nav-concept-v4, body:has(> .query-header)) h2 {
    font-size: var(--type-section) !important;
  }
  :is(body.nav-concept-v4, body:has(> .query-header)) :is(h3,h4,h5,h6) {
    font-size: var(--type-title) !important;
  }
  :is(body.nav-concept-v4, body:has(> .query-header)) :is(p,li,dd,td,th,label,input,select,textarea,button,.btn,.editorial-btn) {
    font-size: var(--type-body) !important;
  }
  :is(body.nav-concept-v4, body:has(> .query-header)) :is(p,li,dd,td,th) { line-height: 1.8; }
  :is(body.nav-concept-v4, body:has(> .query-header)) :is(small,time,figcaption,sup,sub,.eyebrow,.breadcrumb,.tag,.badge,.meta,.article-meta,.news-meta,.page-meta,.ec-breadcrumb,.af-breadcrumb,.ec-card-role,.ec-card-participation,.ec-profile-meta,.ec-sample-label,.ec-pagination,.af-pagination,.pagination,.whitepaper-meta,.whitepaper-status,.rde-topic-meta,.rde-footnote,.rde-path small,.query-status,.result-label,.field-hint) {
    font-size: var(--type-meta) !important;
  }
  body.nav-concept-v4 :is(.card h2,.cms-project-card h2,.news-row h2,.news-item h2,.news-card h2,.editorial-feature h2,.editorial-lead-news h2,.whitepaper-card h2,.af-record-links h2,.search-result h2,.ec-sidebar h2,.sidebar h2) {
    font-size: var(--type-title) !important;
  }
  body.nav-concept-v4 :is(.article-headline h1,.article-header h1,.af-record-head h1,.detail-title) {
    font-size: var(--type-section) !important;
  }
  body.nav-concept-v4 :is(.news-article-page,.association-article-page) .article-body h2 {
    font-size: var(--type-title) !important;
    line-height: 1.5 !important;
  }
  body.nav-concept-v4 :is(.editorial-section-label strong,.editorial-publications strong,.editorial-news-list strong,.editorial-project-copy li strong,.ec-disclosure summary strong,.ec-seats summary strong,.ec-diagram-core strong,.rde-material summary,.af-faq summary,.org-node strong) {
    font-size: var(--type-title) !important;
  }
  body.nav-concept-v4 :is(.association-list strong,.news-item strong,.news-archive-date strong,.list .row strong,.scope-item strong,.charter-card strong,.flow-grid strong,.feature-row strong,.member-type b,.member-overview-card strong,.membership-path strong,.membership-stat-grid strong,.pool-core strong,.committee-process strong,.expert-highlight strong,.research-principles strong,.research-process li>strong,.research-output-list strong,.research-boundary-note strong,.research-resource-row strong,.whitepaper-empty strong,.outcome-query-result strong,.criteria-grid strong,.notice-panel strong,.verify-result-head strong,.quick-links strong,.article-pager strong) {
    font-size: var(--type-title) !important;
    line-height: 1.5 !important;
  }
  body.nav-concept-v4 :is(.association-list span,.news-tabs,.cms-pagination,.pagination-lite,.news-pagination,.article-pager span,.org-node small,.expert-directory-card dt,.research-kicker,.research-principles dt,.whitepaper-state,.outcome-query-panel form>p,.verify-note) {
    font-size: var(--type-meta) !important;
  }
  body.nav-concept-v4 :is(.steps>li::before,.research-process>li>span,.rde-process>li>span,.af-steps>li>span,.af-flow>li>strong,.ec-review-path>li>span,.ec-role-symbol,.review-step-number,.step-number) {
    font-size: var(--type-title) !important;
    font-family: inherit !important;
    line-height: 1.5 !important;
    font-variant-numeric: tabular-nums;
  }
  body.nav-concept-v4 :is(.editorial-metrics strong,.stat strong,.stats strong,.metric strong,.af-archive-date strong) {
    font-size: var(--type-section) !important;
    font-family: inherit !important;
    font-variant-numeric: tabular-nums;
  }
  body.nav-concept-v4 :is(.brand-word,.nav-links>a,.nav-group>a,.editorial-link,.editorial-text-link,.editorial-network a) {
    font-size: var(--type-body) !important;
  }
  body.nav-concept-v4 :is(.brand small,.concept-query,.concept-language,.menu-toggle span,.dropdown a,.current-section-label,.topbar,.editorial-hero-index,.editorial-alert,.editorial-metrics span,.editorial-publications em,.ec-nav a,.af-nav a,.member-nav a,.expert-subnav a) {
    font-size: var(--type-meta) !important;
  }
  /* Footer contrast is a global rule, not a homepage-only override. */
  body.nav-concept-v4 .site-footer {
    background: #17212b !important;
    color: #fff !important;
    border: 0 !important;
  }
  body.nav-concept-v4 .site-footer :is(p,a,span,small,div) {
    color: #d7dfe3 !important;
    font-size: var(--type-meta) !important;
    opacity: 1 !important;
  }
  body.nav-concept-v4 .site-footer :is(h3,strong) {
    color: #fff !important;
    font-size: var(--type-body) !important;
    opacity: 1 !important;
  }
  body.nav-concept-v4 .site-footer h3 { color: #d9bd82 !important; }
  body.nav-concept-v4 .site-footer a:hover { color: #d9bd82 !important; }
  body.nav-concept-v4 .site-footer a:focus-visible { outline: 2px solid #d9bd82; outline-offset: 4px; }
  body:has(> .query-header) :is(.query-brand small,.header-actions,.eyebrow,.panel-index,.query-footer,.query-guide small) { font-size: var(--type-meta) !important; }
  @media(max-width:760px) {
    :is(body.nav-concept-v4, body:has(> .query-header)) h1 { font-size: var(--type-section) !important; }
    :is(body.nav-concept-v4, body:has(> .query-header)) h2 { font-size: var(--type-title) !important; }
    body.nav-concept-v4 .brand-word { font-size: var(--type-meta) !important; }
  }
}
/* Vietnamese and English names share the same two-row desktop header. */
@media(min-width:1021px) {
  body.nav-concept-v4 { padding-top:130px; }
  body.nav-concept-v4 .site-header { height:130px; }
  body.nav-concept-v4 .nav { height:130px; min-height:130px; grid-template-columns:minmax(0,1fr) auto; grid-template-rows:76px 54px; gap:0 24px; padding-top:0; }
  body.nav-concept-v4 .brand { max-width:620px; grid-row:1; grid-column:1; }
  body.nav-concept-v4 .brand-word { display:block; max-width:540px; }
  body.nav-concept-v4 .nav-concept-utilities { grid-column:2; grid-row:1; }
  body.nav-concept-v4 .current-section-label { display:none; }
  body.nav-concept-v4 :is(.nav-links,.nav-links.open) { position:absolute; inset:76px 0 auto; transform:none; grid-row:auto; grid-column:auto; width:100%; max-width:none; height:54px; padding:0 24px; border:0; gap:clamp(4px,1.1vw,18px); justify-content:center; }
  body.nav-concept-v4 .nav-links>.nav-group { min-width:min-content; flex:0 1 auto; }
  body.nav-concept-v4 .nav-links>.nav-group>a { min-height:54px; height:54px; padding:0 10px; white-space:normal; text-align:center; justify-content:center; line-height:1.4; }
  body.nav-concept-v4 .nav-links>.menu-concept-intro+.nav-group>.dropdown { left:0; right:auto; transform:none; }
  @layer aucea-type { body.nav-concept-v4 .nav-links>.nav-group>a { font-size:var(--type-meta)!important; } }
}
@media(max-width:760px) {
  body.nav-concept-v4 .brand-word { display:none; }
  body.nav-concept-v4 :is(input,select,textarea) { max-width:100%; }
  body.nav-concept-v4 .current-section-label { max-width:46vw; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
}

@media(max-width:1020px){html[lang="vi"] body.nav-concept-v4 .menu-toggle{width:110px!important;min-width:110px!important}}

@media(max-width:1020px){body.nav-concept-v4 .nav{grid-template-columns:minmax(0,1fr) auto auto}body.nav-concept-v4 .current-section-label,body.nav-concept-v4 .concept-query{display:none}}
/* Bilingual content must reflow naturally within the shared site grid. */
body.nav-concept-v4 :is(main,section,article,aside,nav,div,li,dl,dd){min-width:0}
body.nav-concept-v4 :is(p,h1,h2,h3,h4,li,td,th,dd,dt,a,button,label){overflow-wrap:break-word;word-break:normal}
body.nav-concept-v4 :is(.cms-page-content,.article-body) img{max-width:100%;height:auto}
body.nav-concept-v4 .cms-page-content .section-head{display:block}
body.nav-concept-v4 .cms-page-content .section-head p{max-width:76ch;margin-top:12px}
body.nav-concept-v4 .cms-page-content .scope-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 36px}
body.nav-concept-v4 .cms-page-content .scope-item{padding:0;border:0;background:transparent;box-shadow:none}
body.nav-concept-v4 .cms-page-content .scope-item h3{margin:0 0 10px}
body.nav-concept-v4 .about-introduction{grid-template-columns:minmax(0,1.75fr) minmax(0,1fr);gap:40px;padding:0;border:0;background:transparent;box-shadow:none}
body.nav-concept-v4 .association-facts{margin:0;padding:24px;background:#eaf0ee}
body.nav-concept-v4 .association-facts div+div{margin-top:20px}
body.nav-concept-v4 .association-facts dt{font-weight:600;color:#8d641f}
body.nav-concept-v4 .association-facts dd{margin:5px 0 0}
body.nav-concept-v4 .association-timeline{list-style:none;padding:0;margin:30px 0 0}
body.nav-concept-v4 .association-timeline>li{display:grid;grid-template-columns:112px minmax(0,1fr);column-gap:32px;padding:0 0 32px;position:relative}
body.nav-concept-v4 .association-timeline>li:before{content:'';position:absolute;left:127px;top:12px;bottom:-12px;width:1px;background:#bccbcd}
body.nav-concept-v4 .association-timeline>li:last-child:before{display:none}
body.nav-concept-v4 .association-timeline>li:after{content:'';position:absolute;left:123px;top:10px;width:9px;height:9px;border-radius:50%;background:#a47b36}
body.nav-concept-v4 .association-timeline time{font-weight:600;color:#8d641f;padding-top:2px;white-space:nowrap}
body.nav-concept-v4 .association-timeline h3{margin:0 0 8px}
body.nav-concept-v4 .association-timeline p{margin:0;max-width:78ch}
body.nav-concept-v4 .governance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 36px}
body.nav-concept-v4 .governance-grid>.scope-item:first-child{grid-column:1/-1;max-width:78ch}
body.nav-concept-v4 .review-process{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 36px}
body.nav-concept-v4 .review-process li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px}
body.nav-concept-v4 .review-process h3{margin:0 0 8px}
body.nav-concept-v4 .review-process p{margin:0}
body.nav-concept-v4 .review-process li>span{font-weight:600;color:#8d641f}
body.nav-concept-v4 .info-table{width:100%;table-layout:fixed}
body.nav-concept-v4 .info-table :is(th,td){white-space:normal;overflow-wrap:anywhere}
body.nav-concept-v4 :is(.intro-panel,.member-overview,.membership-tier-grid,.grid-3,.scope-grid,.program-row,.flow-grid){max-width:100%}
body.nav-concept-v4 :is(.btn,.whitepaper-download,.editorial-btn){white-space:normal;height:auto;text-align:center}
body.nav-concept-v4 :is(.news-tabs,.sub-nav,.member-nav,.expert-subnav){flex-wrap:wrap}
@layer aucea-type{body.nav-concept-v4 :is(.association-timeline time,.review-process li>span){font-size:var(--type-title)!important}}
@media(max-width:760px){
 body.nav-concept-v4 :is(.about-introduction,.governance-grid,.review-process,.cms-page-content .scope-grid){grid-template-columns:minmax(0,1fr)}
 body.nav-concept-v4 .association-timeline>li{grid-template-columns:112px minmax(0,1fr);column-gap:24px;padding-bottom:28px}
 body.nav-concept-v4 .association-timeline>li:before{left:123px}
 body.nav-concept-v4 .association-timeline>li:after{left:119px}
 body.nav-concept-v4 .association-facts{padding:20px}
 body.nav-concept-v4 .article-pager{grid-template-columns:minmax(0,1fr)}
 body.nav-concept-v4 .membership-tier-grid{grid-template-columns:minmax(0,1fr)}
 body.nav-concept-v4 .info-table :is(td,th){padding:10px 8px}
}
/* Match section reading order and remove empty decorative columns. */
body.nav-concept-v4 .research-section-head{display:block}
body.nav-concept-v4 .research-section-head>p{max-width:78ch;margin-top:12px}
body.nav-concept-v4 .research-principles>div{display:block}
body.nav-concept-v4 .research-principles dd{margin:0}
body.nav-concept-v4 .ec-role-card:not(:has(.ec-role-symbol)){grid-template-columns:minmax(0,1fr)}
@media(max-width:760px){
 body.nav-concept-v4 .ec-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible;gap:6px;white-space:normal}
 body.nav-concept-v4 .ec-nav a{min-width:0;white-space:normal;justify-content:center;text-align:center;padding:12px 10px}
 body.nav-concept-v4 .ec-nav a:last-child{grid-column:1/-1}
}
/* Give technical tables the full content width at tablet breakpoints. */
@media(max-width:1020px){
 body.nav-concept-v4 .ec-layout{display:block}
 body.nav-concept-v4 .ec-sidebar{position:static;margin-bottom:28px}
 body.nav-concept-v4 :is(.ec-sidebar-title,.ec-sidebar-note){display:none}
 body.nav-concept-v4 .ec-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:6px}
 body.nav-concept-v4 .ec-nav a{white-space:normal;text-align:center;justify-content:center;min-width:0}
}
body.nav-concept-v4 .ec-table{min-width:0;width:100%;table-layout:fixed}
body.nav-concept-v4 .ec-table :is(th,td){overflow-wrap:break-word}
@media(max-width:760px){body.nav-concept-v4 .ec-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
