:root {
    --focus-ring-outer: #232323; /* Asphalt    */
    --focus-ring-inner: #F8F8F6; /* Cloud-white */
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible,
[role="button"]:focus-visible,
[role="link"]:focus-visible,
[role="checkbox"]:focus-visible,
[role="radio"]:focus-visible,
[role="switch"]:focus-visible,
[role="tab"]:focus-visible,
[role="menuitem"]:focus-visible,
[role="option"]:focus-visible,
[tabindex]:not([tabindex="-1"]):focus-visible {
    outline: 2px solid var(--focus-ring-outer) !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 4px var(--focus-ring-inner) !important;
}

a:focus:not(:focus-visible),
button:focus:not(:focus-visible),
input:focus:not(:focus-visible),
select:focus:not(:focus-visible),
textarea:focus:not(:focus-visible),
summary:focus:not(:focus-visible),
[role="button"]:focus:not(:focus-visible),
[tabindex]:focus:not(:focus-visible) {
    outline: none;
    box-shadow: none;
}

#legacyFooter .mobile-menu a,
#legacyFooter .accordion-body a {
    display: block;
    width: fit-content;
}

#legacyFooter .contact-methods > a:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}
#legacyFooter .contact-methods > a:focus-visible > p {
    outline: 2px solid var(--focus-ring-outer);
    outline-offset: 2px;
    box-shadow: 0 0 0 4px var(--focus-ring-inner);
}

.cc-window .cc-btn:focus-visible,
.cc-window a:focus-visible,
.cc-window button:focus-visible,
.cc-window [tabindex]:not([tabindex="-1"]):focus-visible,
#securitiCmpCookiePrefBtn:focus-visible,
.cmp-body a:focus-visible,
.cmp-body button:focus-visible,
.cmp-body input:focus-visible,
.cmp-body [role="button"]:focus-visible,
.cmp-body .cmp-save-btn:focus-visible {
    outline: 2px solid var(--focus-ring-outer) !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 4px var(--focus-ring-inner) !important;
}

@media (forced-colors: active) {
    a:focus-visible,
    button:focus-visible,
    input:focus-visible,
    select:focus-visible,
    textarea:focus-visible,
    summary:focus-visible,
    [role="button"]:focus-visible,
    [tabindex]:not([tabindex="-1"]):focus-visible,
    .cc-window .cc-btn:focus-visible,
    #securitiCmpCookiePrefBtn:focus-visible {
        outline: 3px solid Highlight !important;
        box-shadow: none !important;
    }
}
