.skip-link {
    position: absolute;
    left: -9999px;
    top: 1rem;
    z-index: 10000;
    padding: .75rem 1rem;
    background: #0056b3;
    color: #fff;
    text-decoration: none;
    border-radius: .25rem;
}

.skip-link:focus,
.skip-link:focus-visible {
    left: 1rem;
}

/* Footer social icons: theme forces width/height:auto for this icon style,
   which collapses them to bare small glyphs. Give them a proper circular button. */
footer .elements-social.social-icon-style-02 li a {
    width: 44px !important;
    height: 44px !important;
    font-size: 18px !important;
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 50%;
}

footer .elements-social.social-icon-style-02 li a:hover {
    border-color: #DDB66C;
}

/* Sitewide keyboard focus indicator. The theme strips the native outline
   (:focus-visible{outline:0} in style.min.css) and most plain links/buttons
   have no visible alternative, so keyboard users can lose track of focus.
   This ring uses only existing brand colors (teal + white) in a double-ring
   so it stays visible on both light sections and dark/teal hero sections. */
a:focus-visible,
button:focus-visible,
.btn:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
[role="button"]:focus-visible,
[tabindex]:focus-visible {
    outline: 2px solid #045453;
    outline-offset: 2px;
    box-shadow: 0 0 0 4px #fff, 0 0 0 5px #045453;
    border-radius: 2px;
}