:root {
  --microsite-primary: #1769e0;
  --microsite-secondary: #0e3b78;
  --microsite-accent: #20c7b7;
  --microsite-surface: #06172f;
  --microsite-text: #10243e;
  --microsite-heading-font: Inter, sans-serif;
  --microsite-body-font: Inter, sans-serif;
}

html[data-publication-microsite-resolving="true"] {
  visibility: hidden !important;
}

body.publication-microsite { color: var(--microsite-text); font-family: var(--microsite-body-font); }
body.publication-microsite h1, body.publication-microsite h2, body.publication-microsite h3, body.publication-microsite strong { font-family: var(--microsite-heading-font); }
body.publication-microsite [data-publication-dock], body.publication-microsite .reader-account-link, body.publication-microsite #researchMethodology, body.publication-microsite #researchNewsletter { display: none !important; }
body.publication-microsite.microsite-hide-page-hero .hero-shell,
body.publication-microsite.microsite-hide-page-hero .research-masthead,
body.publication-microsite.microsite-hide-page-hero .topics-hero,
body.publication-microsite.microsite-hide-page-hero .microsite-topics-hero,
body.publication-microsite.microsite-hide-page-hero .events-hero,
body.publication-microsite.microsite-hide-page-hero .podcast-hero,
body.publication-microsite.microsite-hide-page-hero .insights-masthead,
body.publication-microsite.microsite-hide-page-hero .discovery-hero,
body.publication-microsite.microsite-hide-page-hero .report-hero { display: none !important; }
.microsite-shell { width: min(1220px, calc(100% - 40px)); margin-inline: auto; }
.microsite-header { position: relative; z-index: 50; border-bottom: 1px solid color-mix(in srgb, var(--microsite-primary) 18%, #d9e2ee); background: #fff; color: var(--microsite-text); }
.microsite-header__inner { min-height: 78px; display: flex; align-items: center; gap: 32px; }
.microsite-header__brand { display: flex; min-width: 170px; align-items: center; color: var(--microsite-text); text-decoration: none; }
.microsite-header__brand img { display: block; width: auto; max-width: 210px; height: 42px; object-fit: contain; object-position: left center; }
.microsite-header__brand strong { font-size: 20px; }
.microsite-header nav { display: flex; flex: 1; align-items: center; gap: 25px; }
.microsite-header nav a { color: var(--microsite-text); font-size: 14px; font-weight: 700; text-decoration: none; }
.microsite-header nav a:has(.microsite-header__nav-logo) { display: inline-flex; align-items: center; }
.microsite-header__nav-logo { display: block; width: auto; max-width: 150px; height: 28px; object-fit: contain; }
.microsite-header nav a:hover, .microsite-header nav a:focus-visible, .microsite-header nav a[aria-current="page"] { color: var(--microsite-primary); }
.microsite-header nav a[aria-current="page"] { font-weight: 800; }
.microsite-header__library { padding: 12px 18px; border-radius: 8px; background: var(--microsite-primary); color: #fff; font-size: 13px; font-weight: 800; text-decoration: none; }
.microsite-footer { padding: 42px 0; background: var(--microsite-surface); color: #fff; }
.microsite-footer__inner { display: grid; grid-template-columns: minmax(240px, 1fr) auto auto; align-items: center; gap: 36px; }
.microsite-footer__logo { display: block; width: auto; max-width: 220px; height: 44px; object-fit: contain; object-position: left center; }
.microsite-footer p { max-width: 560px; margin: 8px 0 0; color: color-mix(in srgb, #fff 72%, var(--microsite-surface)); }
.microsite-footer nav { display: flex; gap: 18px; }
.microsite-footer a, .microsite-footer small { color: #fff; }
.microsite-footer__disclaimer { width: min(1220px, calc(100% - 40px)); margin: 24px auto 0 !important; padding-top: 18px; border-top: 1px solid color-mix(in srgb, #fff 18%, transparent); font-size: 12px; line-height: 1.6; }
.publication-microsite .research-masthead { background: radial-gradient(circle at 72% 22%, color-mix(in srgb, var(--microsite-accent) 28%, transparent), transparent 35%), linear-gradient(135deg, var(--microsite-surface), var(--microsite-secondary)); }
.publication-microsite .research-kicker, .publication-microsite .research-masthead__copy h1 span { color: var(--microsite-accent); }
.publication-microsite .hub-filter, .publication-microsite .research-topic-bar button.is-active, .publication-microsite .button-primary { border-color: var(--microsite-primary); background: var(--microsite-primary); color: #fff; }
.publication-microsite .published-card:hover { border-color: color-mix(in srgb, var(--microsite-primary) 55%, #d6e0ec); }
.publication-microsite .publication-report__hero, .publication-microsite .publication-report__gate { --report-accent: var(--microsite-primary); }
body.publication-microsite.microsite-hide-latest-research .research-editorial-grid,
body.publication-microsite.microsite-hide-research-filters #researchSearchForm,
body.publication-microsite.microsite-hide-research-categories .research-topic-bar,
body.publication-microsite.microsite-hide-save-buttons [data-published-save] { display: none !important; }
body.publication-microsite.microsite-hide-latest-research .research-masthead__grid { grid-template-columns: minmax(0, 860px); justify-content: center; }
body.publication-microsite.microsite-hide-latest-research .research-masthead__copy { max-width: 860px; }
body.publication-microsite.microsite-hide-card-summaries .published-card-copy > p { display: none; }
body.publication-microsite.microsite-compact-cards .published-grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
body.publication-microsite.microsite-compact-cards .published-card-copy { padding: 16px; }
body.publication-microsite.microsite-compact-cards .published-card-copy h3 { font-size: 17px; }

@media (max-width: 760px) {
  .microsite-shell { width: min(100% - 24px, 1220px); }
  .microsite-header__inner { min-height: 68px; gap: 12px; }
  .microsite-header nav { display: none; }
  .microsite-header__brand { min-width: 0; flex: 1; }
  .microsite-header__brand img { max-width: 160px; height: 34px; }
  .microsite-header__library { padding: 10px 12px; }
  .microsite-footer__inner { grid-template-columns: 1fr; align-items: start; gap: 20px; }
  .microsite-footer__disclaimer { width: min(100% - 24px, 1220px); }
}
