:root {
    --primary: #037B3D;
    --primary-strong: #037B3D;
    --primary-light: #e6f4ed;
    --accent: #EC8D08;
    --accent-soft: #fff3e0;
    --green: #037B3D;
    --green-dark: #037B3D;
    --orange: #EC8D08;
    --text: #1a2433;
    --muted: #596272;
    --bg: #f4f6fb;
    --border: #e1e6ef;
    --text-base: 1rem;
    --text-sm: 1rem;
    --text-lg: 1.125rem;
    --line-height-body: 1.65;
    --line-height-heading: 1.3;
    --heading-1: 20px;
    --heading-2: 20px;
    --heading-3: 1.07rem;
    --heading-4: 1.125rem;
    --heading-5: 1.0625rem;
    --heading-6: 1rem;
    --text-nav: 17px;
    --text-nav-sub: 14px;
    --text-header-title: 1.625rem;
    --text-header-subtitle: 0.875rem;
    --text-footer-link: 1rem;
    --text-card-title: 1.125rem;
    --text-listing: 1rem;
    --text-btn: 1rem;
    --font-body: 'Calisto MT', 'Calisto', Georgia, 'Times New Roman', serif;
    --font-heading: 'Calisto MT', 'Calisto', Georgia, 'Times New Roman', serif;
    --font-nav: 'Calisto MT', 'Calisto', Georgia, 'Times New Roman', serif;
}

.primary-nav__list li,
.primary-nav__list a,
.primary-nav .nav-link,
.nav-submenu__toggle {
    font-family: var(--font-nav);
}
.primary-nav__list li {
    font-size: var(--text-nav);
}
.has-dropdown .nav-dropdown a,
.nav-dropdown a,
.nav-submenu__toggle,
.nav-submenu__panel a {
    font-size: var(--text-nav-sub);
}

h1, h2, h3, h4, h5, h6,
.page-hero h1,
.page-card h1, .page-card h2,
.site-main h1, .site-main h2, .site-main h3, .site-main h4, .site-main h5, .site-main h6,
.page-content h1, .page-content h2, .page-content h3, .page-content h4, .page-content h5, .page-content h6 {
    font-family: var(--font-heading);
}

.page-content {
    font-family: var(--font-body);
}
.page-content p,
.page-content li,
.page-content blockquote,
.page-content em,
.page-content strong {
    font-family: inherit;
}
.page-content p strong,
.page-content li strong {
    font-family: inherit;
    font-size: inherit;
    font-weight: 700;
    color: var(--primary-strong);
}

.page-content .lead {
    font-size: var(--text-lg);
    color: var(--muted);
    line-height: var(--line-height-body);
    margin-top: 0;
    margin-bottom: 1.5em;
    max-width: 820px;
}
.page-content small { font-size: var(--text-sm); }
.page-content mark { background-color: #fef3c7; color: inherit; padding: 0.1em 0.2em; border-radius: 2px; }
.page-content img { max-width: 100%; height: auto; }
.page-content table { width: 100%; border-collapse: collapse; margin: 1.25em 0; }
.page-content th, .page-content td { border: 1px solid var(--border, #d1d5db); padding: 0.6em 0.85em; vertical-align: top; }
.page-content th { background-color: var(--surface-muted, #f3f4f6); font-weight: 600; }
.page-content blockquote { margin: 1.25em 0; padding: 0.75em 1.25em; border-left: 4px solid var(--primary); color: var(--muted); background-color: var(--surface-muted, #f9fafb); }