/* Main Menu */
#main-menu .tw-menu:not([hidden]) {
    display: block;
}

#main-menu .tw-menu__toggle {
    background-color: transparent;
    border: none;
    cursor: pointer;
    font-weight: 600;
    text-align: left;
    width: 100%;
}

@media (min-width: 1025px) {
    #main-menu .tw-menu__toggle {
        text-align: center;
    }
}

#main-menu .tw-menu__link:focus-visible,
#main-menu .tw-menu__toggle:focus-visible {
    outline: 2px solid #fff;
    border-radius: 2px;
    outline-offset: 1px;
}

.navbar-toggler:focus-visible {
    outline: auto;
    border-radius: 2px;
    outline-offset: 1px;
}

.skip-link:focus-visible {
    clip: unset !important;
    right: 5px;
}

/* Carousel */
button.carousel-control-prev:focus-visible,
button.carousel-control-next:focus-visible,
button.close:focus-visible,
button.btn-plus:focus-visible {
    outline: 2px solid #FFD17C;
    border-radius: 2px;
    outline-offset: 4px;
}

.kb-button.dark:focus-visible {
    outline: 2px solid #FFD17C;
    border-radius: 2px;
    outline-offset: 4px;
}

/* Form */
.wpcf7 input:focus-visible,
.wpcf7 select:focus-visible,
.wpcf7 textarea:focus-visible {
    outline: 2px solid #FFD17C !important;
    border-radius: 2px !important;
    outline-offset: 4px !important;
}

/* Store Locator */
#wpsl-category-list:focus-visible,
#wpsl-search-input-zip:focus-visible,
#wpsl-search-input-street:focus-visible,
#wpsl-search-btn:focus-visible,
#wpsl-result-list .wpsl-directions:focus-visible {
    outline: 2px solid #FFD17C !important;
    border-radius: 2px !important;
    outline-offset: 4px !important;

}

#wpsl-wrap .tw-notice {
    border: 1px solid;
    margin-bottom: 2rem;
    padding: 0.5rem 1rem;
    color: #000;
}

#wpsl-wrap .tw-notice--info {
    background-color: #FFD17C;
    border-color: #FFD17C;
}

#wpsl-wrap .tw-notice--success {
    background-color: #9add9c;
    border-color: #9add9c;
}

#wpsl-wrap .tw-notice p {
    font-weight: normal;
    font-size: 0.8em;
    font-style: italic;
    margin: 0;
}

#wpsl-wrap .tw-notice a {
    color: #000;
    text-decoration: underline;
    font-weight: bold;
}

#wpsl-search-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
    pointer-events: none;
}

.wpsl-directions>span {
    display: inline-block;
    height: 0;
    font-size: 0;
    position: absolute;
    width: 0;
}

@media (max-width: 991px) {
    body:after {
        aspect-ratio: 1.77;
        max-height: 225px;
        width: auto !important;
        left: unset !important;
    }
}

.wpcf7 input[aria-invalid="true"],
.wpcf7 select[aria-invalid="true"],
.wpcf7 textarea[aria-invalid="true"] {
    outline: 2px solid #FFD17C !important;
    border-radius: 2px !important;
    outline-offset: 4px !important;
}

.tw-input__error {
    background: #ffd17c;
    color: #000000;
    display: none;
    font-size: 0.8em;
    font-style: italic;
    font-weight: normal;
    padding: 0.25rem 0.5rem;
}

#wpsl-search-form input[aria-invalid="true"]+.tw-input__error,
.wpcf7 .wpcf7-form-control-wrap:has(input[aria-invalid="true"])+.tw-input__error,
.wpcf7 .wpcf7-form-control-wrap:has(select[aria-invalid="true"])+.tw-input__error,
.wpcf7 .wpcf7-form-control-wrap:has(textarea[aria-invalid="true"])+.tw-input__error {
    display: block;
}

.wpcf7-not-valid-tip {
    display: none !important;
}