html {
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
}

body {
    font-size: 16px;
    line-height: 1.5;
}

main p:not(.eyebrow):not(.section-kicker):not(.result-label),
main li {
    font-size: 16px !important;
}

p,
li,
dd,
small,
figcaption {
    line-height: 1.55 !important;
}

label,
legend,
summary {
    font-size: 16px !important;
}

summary strong,
label strong {
    font-size: 1em !important;
}

dt,
th,
td {
    font-size: 15px !important;
    line-height: 1.45 !important;
}

input,
textarea,
select,
button {
    font-size: 16px !important;
    line-height: 1.35;
}

input::placeholder,
textarea::placeholder {
    font-size: 16px;
}

.skip-link {
    position: fixed;
    top: 12px;
    left: 12px;
    z-index: 10000;
    transform: translateY(-160%);
    border: 3px solid #ffffff;
    border-radius: 10px;
    background: #10251e;
    color: #ffffff;
    padding: 12px 16px;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    box-shadow: 0 8px 24px rgba(16, 37, 30, .28);
}

.skip-link:focus {
    transform: translateY(0);
    outline: 3px solid #c9ff55;
    outline-offset: 3px;
}

:where(a, button, input, textarea, select, summary, [tabindex]):focus-visible {
    outline: 3px solid #0874d4;
    outline-offset: 3px;
}

main[tabindex="-1"]:focus {
    outline: none;
}

.site-header nav a[aria-current="page"] {
    color: #1f5b47;
    font-weight: 800;
    text-decoration: underline;
    text-decoration-color: #1f5b47;
    text-decoration-thickness: 3px;
    text-underline-offset: 8px;
}

@media (max-width: 760px) {
    .site-header nav a[aria-current="page"] {
        background: #e6eedf;
        text-decoration: none;
    }
}
