:root {
  --ude-global-font-en: "Gideon Roman", "Source Han Sans TC", sans-serif;
  --ude-global-font-zh: "Source Han Sans TC", sans-serif;
}

body { font-family: var(--ude-global-font-en); }

/* One extra class specificity beats component defaults without fixing controls. */
body .ude-architecture-slider {
  --font-body: var(--ude-global-font-en);
  --font-display: var(--ude-global-font-en);
  --font-zh: var(--ude-global-font-zh);
}

body .ude-portfolio {
  --ude-portfolio-serif: var(--ude-global-font-en);
  --ude-portfolio-chinese: var(--ude-global-font-zh);
}

body .ude-case-root {
  --ude-case-font-en: var(--ude-global-font-en);
  --ude-case-font-zh: var(--ude-global-font-zh);
}

/* External host properties and parts can cross the menu's Shadow DOM. */
ude-fullscreen-menu { --ude-menu-font-zh: var(--ude-global-font-zh); }
ude-fullscreen-menu::part(motto-text) { font-family: var(--ude-global-font-zh); }
ude-fullscreen-menu::part(menu-number) { font-family: var(--ude-global-font-en); }
ude-fullscreen-menu::part(primary-menu-label) { font-family: var(--ude-global-font-en); }
ude-fullscreen-menu::part(hover-menu-label) { font-family: var(--ude-global-font-zh); }
ude-fullscreen-menu::part(submenu-label) { font-family: var(--ude-global-font-en); }
ude-fullscreen-menu::part(social-heading) { font-family: var(--ude-global-font-en); }
ude-fullscreen-menu::part(social-link) { font-family: var(--ude-global-font-en); }
ude-fullscreen-menu::part(tagline) { font-family: var(--ude-global-font-en); }
ude-fullscreen-menu::part(footer-text) { font-family: var(--ude-global-font-en); }
