:root {
    --psa-blue: #073b9a;
    --psa-cyan: #009fe3;
    --psa-green: #18a83d;
    --psa-orange: #f97300;
    --psa-navy: #061b4b;
    --psa-focus: rgba(0, 159, 227, 0.26);
}

/*
 * The accessibility state is the single source of truth for the desktop
 * category menu. This overrides the legacy theme's :hover rule, which could
 * keep an already-dismissed overlay visible underneath the pointer.
 */
.megamenu-wrap[data-category-menu][aria-hidden="true"] {
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.megamenu-wrap[data-category-menu][aria-hidden="false"] {
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: 999 !important;
}

.psa-brand-logo {
    display: block;
    height: auto !important;
    object-fit: contain;
}

.psa-brand-logo--desktop {
    max-height: 62px;
    max-width: 210px;
    width: 210px !important;
}

.psa-brand-logo--mobile {
    max-height: 45px;
    max-width: 132px;
    width: 132px !important;
}

.btn--primary,
.btn-primary,
.subscribe-button {
    background-color: var(--psa-blue) !important;
    border-color: var(--psa-blue) !important;
}

.btn--primary:hover,
.btn--primary:focus-visible,
.btn-primary:hover,
.btn-primary:focus-visible,
.subscribe-button:hover,
.subscribe-button:focus-visible {
    background-color: #052d78 !important;
    border-color: #052d78 !important;
    box-shadow: 0 0 0 3px var(--psa-focus);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline-color: var(--psa-cyan);
}

.psa-footer-brand-card {
    background: #ffffff;
    border: 1px solid rgba(7, 59, 154, 0.12);
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(2, 18, 56, 0.14);
    display: inline-flex;
    padding: 0.85rem 1rem;
}

.psa-footer-brand-logo {
    height: auto !important;
    max-width: 220px;
    object-fit: contain;
    width: 100% !important;
}

@media (max-width: 767px) {
    .psa-brand-logo--desktop {
        max-width: 174px;
    }

    .psa-footer-brand-card {
        margin-bottom: 1.25rem;
    }
}
