
/* WCAG 2.4.7 - Focus Visible */
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus,
[tabindex]:focus {
    outline: 3px solid #005fcc !important;
    outline-offset: 3px !important;
}

/* WCAG 2.1.1 - Show dropdown on keyboard open */
.sp-megamenu-parent > li.sp-kb-open > .sp-dropdown,
.sp-megamenu-parent > li.sp-kb-open > ul {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* WCAG - Dropdown toggle button */
.sp-has-child > a {
    position: relative;
}
.sp-dropdown-toggle {
    background: none;
    border: none;
    color: inherit;
    cursor: pointer;
    padding: 0 6px;
    font-size: 12px;
    line-height: 90px;
    vertical-align: middle;
}
.sp-dropdown-toggle:focus {
    outline: 3px solid #005fcc !important;
    outline-offset: 2px !important;
}

/* WCAG 1.4.10 - Reflow providers grid */
@media (max-width: 480px) {
    .sppb-col-sm-4 {
        width: 50% !important;
        flex: 0 0 50% !important;
        max-width: 50% !important;
        overflow: hidden;
    }
    .sppb-col-sm-4 .sppb-addon-text,
    .sppb-col-sm-4 p {
        word-wrap: break-word;
        overflow-wrap: break-word;
        white-space: normal;
    }
}

/* WCAG 1.4.10 - Reflow providers grid at 320px */
@media (max-width: 480px) {
    .sp-simpleportfolio-columns-3 .sp-simpleportfolio-item {
        width: 50% !important;
        float: left !important;
    }
    .sp-simpleportfolio-columns-3 .sp-simpleportfolio-item .sp-simpleportfolio-item-title {
        font-size: 11px !important;
        word-break: break-word !important;
    }
}

/* WCAG 2.3.3 - Respect prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
    #lhc-slider .lhc-slide {
        transition: none !important;
        animation: none !important;
    }
    .sppb-animate,
    .animated,
    [data-animation] {
        animation: none !important;
        transition: none !important;
    }
}
