.wd-site-nav {
    box-sizing: border-box;
    margin: 0 0 8px;
    padding: 4px;
    border: 1px solid #c7d8e7;
    border-radius: 12px;
    background: #f7fbfe;
    font: 700 14px/1.15 Arial, Helvetica, sans-serif;
}
.wd-site-nav ul {
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.wd-site-nav li { min-width: 0; margin: 0; padding: 0; }
.wd-site-nav a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    min-height: 44px;
    padding: 0 15px;
    border-radius: 7px;
    color: #13466b;
    text-decoration: none;
    white-space: nowrap;
}
.wd-site-nav a:hover { background: #e0edf6; color: #103c5c; }
.wd-site-nav a[aria-current="page"] { background: #ddebf6; box-shadow: inset 0 -2px #196293; color: #102f50; }
.wd-site-nav a.wd-nav-home { background: #104c7c; color: #fff; }
.wd-site-nav a.wd-nav-home:hover { background: #0c3659; }
.wd-site-nav a.wd-nav-home[aria-current="page"] { box-shadow: inset 0 -2px #8ac9ec; }
.wd-site-nav a:focus-visible { outline: 2px solid #176797; outline-offset: 1px; }
.wd-site-nav svg { flex: none; }

.wd-site-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px 24px;
    box-sizing: border-box;
    margin-bottom: 10px;
    padding: 20px 22px;
    border-radius: 0 0 18px 18px;
    background: linear-gradient(120deg, #0f568c 0%, #147083 56%, #117f7a 100%);
    color: #fff;
    box-shadow: 0 12px 30px rgba(8, 42, 75, .14);
    font: 14px/1.45 Arial, Helvetica, sans-serif;
}
.wd-site-header-home { grid-template-columns: minmax(0, 1fr) auto auto; }
.wd-site-header a { color: #fff; overflow-wrap: anywhere; }
.wd-site-header a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.wd-header-kicker { font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; text-decoration: none; }
.wd-site-header .wd-header-brand h1 { margin: 3px 0 5px; color: inherit; font: 700 30px/1.1 "Trebuchet MS", Verdana, sans-serif; overflow-wrap: anywhere; }
.wd-site-header .wd-header-brand p { max-width: 72ch; margin: 0; }
.wd-site-header .wd-header-brand .wd-header-detail { margin-top: 5px; font-size: 12px; }
.wd-header-credit { display: grid; justify-items: end; text-align: right; }
.wd-header-credit a, .wd-header-source { font-weight: 700; }
.wd-header-source { display: inline-block; margin-top: 6px; text-underline-offset: 2px; }
.wd-header-logo { display: block; background: #f7fbfe; border-radius: 8px; padding: 7px 10px; }
.wd-header-logo img { display: block; width: clamp(140px, 17vw, 220px); height: auto; }
.wd-page-note { margin: 8px 0; padding: 8px 12px; border-left: 3px solid #196293; color: #294966; font: 13px/1.45 Arial, sans-serif; }

@media (max-width: 760px) {
    .wd-site-header { grid-template-columns: minmax(0, 1fr); gap: 7px 10px; padding: 11px 13px; border-radius: 0 0 13px 13px; font-size: 12px; }
    .wd-site-header-home { grid-template-columns: auto minmax(0, 1fr); }
    .wd-site-header-home .wd-header-brand { grid-column: 1 / -1; }
    .wd-site-header .wd-header-brand h1 { font-size: 22px; }
    .wd-header-kicker { font-size: 10px; }
    .wd-header-credit { justify-items: start; text-align: left; }
    .wd-site-header:not(.wd-site-header-home) .wd-header-credit { display: flex; flex-wrap: wrap; column-gap: 12px; }
    .wd-header-logo { padding: 5px 7px; }
    .wd-header-logo img { width: 104px; }
}

@media (max-width: 640px) {
    .wd-site-nav { margin-bottom: 6px; font-size: 13px; }
    .wd-site-nav ul { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .wd-site-nav a { padding: 0 3px; gap: 4px; }
    .wd-site-nav li:last-child { grid-column: span 2; }
}
