/* An opaque header keeps the existing white identity readable on every page. */
body { --k-admin-offset: 0px; }
body.admin-bar { --k-admin-offset: 32px; }
.l-header.p-header,
.l-header.p-header.is-on {
    top: var(--k-admin-offset);
    background-color: #1c2c4a;
    box-shadow: 0 1px 8px rgba(12, 28, 48, .12);
}
.p-header .p-header__logo,
.p-header.is-on .p-header__logo { transform: none; }
.p-header .p-header__logo img,
.p-header.is-on .p-header__logo img { display: block; max-height: 56px; width: auto; filter: brightness(0) invert(1); }
.p-header .p-header__item-link { color: #fff; }
.p-header .p-header__hamburger .line,
.p-header.is-on .p-header__hamburger .line { background-color: #fff; }
.p-header__hamburger-trigger { appearance: none; padding: 0; border: 0; background: transparent; cursor: pointer; }
.p-header__hamburger-trigger:focus-visible,
.p-header__item-link:focus-visible,
.p-header__logo a:focus-visible { outline: 3px solid #b9d8ed; outline-offset: 4px; }
@media (min-width: 768px) {
    .p-header .p-header__logo,
    .p-header.is-on .p-header__logo { width: 90px; flex-shrink: 0; }
    .p-header .p-header__menu { gap: 16px; }
    .p-header .p-header__item + .p-header__item { margin-left: 0; }
    .p-header .p-header__item-link { font-size: 13px; white-space: nowrap; }
}
@media (min-width: 1024px) {
    .p-header .p-header__menu { gap: 22px; }
    .p-header .p-header__item-link { font-size: 14px; }
}
@media (max-width: 782px) {
    body.admin-bar { --k-admin-offset: 46px; }
}
@media (max-width: 600px) {
    body.admin-bar #wpadminbar { position: fixed; top: 0; }
}
@media (max-width: 767px) {
    .p-header .p-header__logo { height: auto; width: 66px; }
    .p-header .p-header__logo img { max-height: 48px; }
    .p-header .p-header__hamburger { position: absolute; top: 8px; right: 12px; width: 44px; height: 44px; }
    .p-header .p-header__hamburger-trigger { width: 44px; height: 44px; align-items: center; justify-content: center; }
    .p-header__hamburger-line { display: block; }
    .p-header .p-header__nav {
        top: var(--k-admin-offset);
        height: calc(100vh - var(--k-admin-offset));
        height: calc(100dvh - var(--k-admin-offset));
        overflow-y: auto;
        visibility: hidden;
        background-color: #1c2c4a;
    }
    .p-header .p-header__nav.is-active { visibility: visible; }
    .p-header .p-header__overlay { top: var(--k-admin-offset); width: 100%; height: calc(100vh - var(--k-admin-offset)); }

    /* Use the containing block, not 100vw, which includes desktop scrollbars. */
    .p-service__business-cont,
    .p-service__strength-visual { width: 100%; margin-left: 0; margin-right: 0; }
}
