/* Typography and link primitives */

body {
    font-family: var(--mh-font-sans);
    font-size: var(--mh-font-size-base);
    line-height: var(--mh-line-height-base);
    color: var(--mh-color-neutral-900);
    background-color: var(--mh-color-surface);
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--mh-font-display);
    font-weight: 600;
    line-height: 1.2;
    color: var(--mh-color-neutral-900);
}

h1 {
    font-size: clamp(2rem, 4vw, 2.75rem);
}

h2 {
    font-size: clamp(1.5rem, 3vw, 2rem);
}

h3 {
    font-size: 1.35rem;
}

h4 {
    font-size: 1.15rem;
}

h5,
h6 {
    font-size: 1rem;
}

.field__label,
.form-item__label {
    font-weight: 600;
    color: var(--mh-color-neutral-800);
}

a {
    color: var(--mh-color-brand-primary);
    text-decoration: none;
    transition: color var(--mh-transition-base);
}

a:hover,
a:focus {
    color: var(--mh-color-brand-primary-strong);
    text-decoration: underline;
}

button.btn.btn-primary a {
    color: var(--mh-color-surface);
}

.nav-link {
    color: var(--mh-color-neutral-800);
}

table th,
table th a,
table th a:hover,
table th a:focus {
    color: var(--mh-color-neutral-800);
}
