.facf-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin: 0 0 32px;
}

.facf-tab {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px solid #707a60;
    border-radius: 20px;
    background: #707a60;
    color: #fff;
    font: inherit;
    font-weight: 700;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    min-height: 44px;
    padding: 10px 20px;
    transition: none;
}

.facf-tab:hover,
.facf-tab:focus,
.facf-tab:active {
    background: #707a60;
    color: #fff;
    border-color: #707a60;
    text-decoration: none;
}

.facf-tab.is-active,
.facf-tab.is-active:hover,
.facf-tab.is-active:focus,
.facf-tab.is-active:active {
    background: #fff;
    color: #707a60;
    border-color: #707a60;
}

.facf-tab:focus-visible {
    outline: 3px solid #111;
    outline-offset: 3px;
}

.facf-is-loading {
    opacity: .55;
    pointer-events: none;
    transition: opacity .15s ease;
}

@media (max-width: 767px) {
    .facf-tabs {
        flex-wrap: nowrap;
        justify-content: flex-start;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding: 0 0 10px;
        margin-bottom: 24px;
        scroll-snap-type: x proximity;
    }

    .facf-tab {
        flex: 0 0 auto;
        min-height: 44px;
        padding: 10px 18px;
        white-space: nowrap;
        scroll-snap-align: start;
    }
}


/* Turns Divi's Next pagination into a centered Load More button for this filtered list. */
.facf-results-target.facf-pagination-target,
.facf-pagination-target {
    width: 100%;
}

.facf-results-target.facf-pagination-target .et_pb_column,
.facf-pagination-target .et_pb_column {
    width: 100%;
}

.facf-results-target .et_pb_posts_nav,
.facf-results-target .nav-single,
.facf-pagination-target .facf-pagination-nav,
.facf-pagination-target .et_pb_posts_nav,
.facf-pagination-target .nav-single {
    float: none !important;
    clear: both !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 32px auto 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

.facf-results-target .nav-previous,
.facf-pagination-target .nav-previous {
    display: none !important;
}

.facf-results-target .nav-next,
.facf-pagination-target .nav-next,
.facf-load-more-wrap {
    float: none !important;
    clear: both !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
}

.facf-results-target .facf-load-more-link,
.facf-pagination-target .facf-load-more-link,
.facf-results-target .nav-next > a,
.facf-pagination-target .nav-next > a {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px;
    padding: 10px 20px !important;
    border: 2px solid #707a60 !important;
    border-radius: 20px !important;
    background: #707a60 !important;
    color: #fff !important;
    font: inherit !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: none !important;
}

.facf-results-target .facf-load-more-link *,
.facf-pagination-target .facf-load-more-link *,
.facf-results-target .nav-next > a *,
.facf-pagination-target .nav-next > a * {
    color: #fff !important;
    text-decoration: none !important;
}

.facf-results-target .facf-load-more-link:hover,
.facf-results-target .facf-load-more-link:focus,
.facf-results-target .facf-load-more-link:active,
.facf-pagination-target .facf-load-more-link:hover,
.facf-pagination-target .facf-load-more-link:focus,
.facf-pagination-target .facf-load-more-link:active,
.facf-results-target .nav-next > a:hover,
.facf-results-target .nav-next > a:focus,
.facf-results-target .nav-next > a:active,
.facf-pagination-target .nav-next > a:hover,
.facf-pagination-target .nav-next > a:focus,
.facf-pagination-target .nav-next > a:active {
    background: #707a60 !important;
    color: #fff !important;
    border-color: #707a60 !important;
    text-decoration: none !important;
}

.facf-results-target .facf-load-more-link:focus-visible,
.facf-pagination-target .facf-load-more-link:focus-visible,
.facf-results-target .nav-next > a:focus-visible,
.facf-pagination-target .nav-next > a:focus-visible {
    outline: 3px solid #111;
    outline-offset: 3px;
}

.facf-results-target.facf-no-more,
.facf-pagination-target.facf-no-more {
    display: none !important;
}


/* v1.0.4: extra-specific Load More button match for Divi post nav overrides. */
.facf-pagination-target .et_pb_posts_nav.nav-single,
.facf-pagination-target .et_pb_posts_nav,
.facf-results-target.facf-pagination-target .et_pb_posts_nav.nav-single,
.facf-results-target.facf-pagination-target .et_pb_posts_nav {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
}

.facf-pagination-target .et_pb_posts_nav .facf-load-more-wrap,
.facf-results-target.facf-pagination-target .et_pb_posts_nav .facf-load-more-wrap,
.facf-pagination-target .et_pb_posts_nav .nav-next,
.facf-results-target.facf-pagination-target .et_pb_posts_nav .nav-next {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: auto !important;
}

.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link,
.facf-results-target.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link,
.facf-pagination-target .et_pb_posts_nav .nav-next > a.facf-load-more-link,
.facf-results-target.facf-pagination-target .et_pb_posts_nav .nav-next > a.facf-load-more-link {
    background-color: #707a60 !important;
    background-image: none !important;
    border: 2px solid #707a60 !important;
    border-radius: 20px !important;
    box-shadow: none !important;
    color: #ffffff !important;
    font-family: var(--et_global_body_font, Arial), Arial, sans-serif !important;
    font-size: var(--et_global_body_font_size, 14px) !important;
    font-style: normal !important;
    font-weight: 700 !important;
    letter-spacing: normal !important;
    line-height: 1.2 !important;
    min-height: 44px !important;
    padding: 10px 20px !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;
}

.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link .nav-label,
.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link span,
.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link *,
.facf-results-target.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link .nav-label,
.facf-results-target.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link span,
.facf-results-target.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link * {
    color: #ffffff !important;
    font-family: var(--et_global_body_font, Arial), Arial, sans-serif !important;
    font-size: var(--et_global_body_font_size, 14px) !important;
    font-style: normal !important;
    font-weight: 700 !important;
    letter-spacing: normal !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
    text-transform: none !important;
}

.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link:hover,
.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link:focus,
.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link:active,
.facf-results-target.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link:hover,
.facf-results-target.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link:focus,
.facf-results-target.facf-pagination-target .et_pb_posts_nav a.facf-load-more-link:active {
    background-color: #707a60 !important;
    border-color: #707a60 !important;
    color: #ffffff !important;
}

/* v1.0.5: mobile category carousel controls. Desktop keeps normal wrapped buttons. */
.facf-mobile-carousel-controls {
    display: none;
}

@media (max-width: 767px) {
    .facf-tabs {
        scrollbar-width: none;
        -ms-overflow-style: none;
        scroll-behavior: smooth;
        cursor: grab;
        user-select: none;
        -webkit-user-select: none;
        margin-bottom: 10px;
    }

    .facf-tabs::-webkit-scrollbar {
        display: none;
    }

    .facf-tabs.is-dragging {
        cursor: grabbing;
        scroll-snap-type: none;
        scroll-behavior: auto;
    }

    .facf-tabs.is-dragging .facf-tab {
        pointer-events: none;
    }

    .facf-mobile-carousel-controls {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        width: 100%;
        margin: 0 0 24px;
        padding: 0;
    }

    .facf-mobile-carousel-controls.is-hidden {
        display: none !important;
    }

    .facf-carousel-arrow {
        appearance: none;
        -webkit-appearance: none;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        min-width: 44px;
        height: 44px;
        border: 2px solid #707a60;
        border-radius: 20px;
        background: #707a60;
        color: #ffffff;
        font-family: var(--et_global_body_font, Arial), Arial, sans-serif;
        font-size: 24px;
        font-weight: 700;
        line-height: 1;
        text-align: center;
        cursor: pointer;
        transition: none;
    }

    .facf-carousel-arrow:hover,
    .facf-carousel-arrow:focus,
    .facf-carousel-arrow:active {
        background: #707a60;
        border-color: #707a60;
        color: #ffffff;
    }

    .facf-carousel-arrow:focus-visible {
        outline: 3px solid #111;
        outline-offset: 3px;
    }

    .facf-carousel-arrow[disabled] {
        opacity: .45;
        cursor: default;
    }

    .facf-carousel-dots {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
        gap: 7px;
        max-width: calc(100% - 108px);
    }

    .facf-carousel-dot {
        appearance: none;
        -webkit-appearance: none;
        display: block;
        width: 10px;
        height: 10px;
        min-width: 10px;
        min-height: 10px;
        padding: 0;
        border: 1px solid #707a60;
        border-radius: 999px;
        background: #ffffff;
        cursor: pointer;
        transition: none;
    }

    .facf-carousel-dot.is-active,
    .facf-carousel-dot:hover,
    .facf-carousel-dot:focus,
    .facf-carousel-dot:active {
        background: #707a60;
        border-color: #707a60;
    }

    .facf-carousel-dot:focus-visible {
        outline: 3px solid #111;
        outline-offset: 3px;
    }
}

/* v1.0.8: generic Divi loop styling fallback for AJAX-appended archive/search items. */
.facf-archive-post-target .et_pb_group[data-loop-item],
.facf-results-target .et_pb_group[data-loop-item] {
    margin-bottom: 30px;
}

.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_row_nested,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_row_nested {
    --horizontal-gap: 2%;
    --horizontal-gap-parent: 2%;
    flex-wrap: nowrap;
}

.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_image_wrap,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_image_wrap {
    border-radius: 20px;
    overflow: hidden;
}

.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_image_wrap img,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_image_wrap img {
    border-radius: inherit;
}

.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h1,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h2,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h3,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h4,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h5,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h6,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h1,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h2,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h3,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h4,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h5,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h6 {
    font-size: var(--gvid-kx58osmldr, clamp(32px, 29.33px + 0.833vw, 40px));
}

.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_text,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_text {
    text-align: start;
}

.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_text_inner a,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_text_inner a {
    font-weight: 600;
    text-decoration-line: underline;
    text-decoration-style: solid;
}

@media only screen and (max-width: 767px) {
    .facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_row_nested,
    .facf-results-target .et_pb_group[data-loop-item] .et_pb_row_nested {
        flex-wrap: wrap;
    }
}

/* v1.0.9: keep AJAX-appended archive/search items from inheriting unrelated Divi numbered module styles. */
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container {
    text-align: left !important;
    text-shadow: none !important;
}

.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h1,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h2,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h3,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h4,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h5,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_heading_container h6,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h1,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h2,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h3,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h4,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h5,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_heading_container h6 {
    color: #1f2839 !important;
    text-align: left !important;
    text-shadow: none !important;
    background: transparent !important;
    -webkit-text-fill-color: #1f2839 !important;
}

.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_text,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_text,
.facf-archive-post-target .et_pb_group[data-loop-item] .et_pb_text_inner,
.facf-results-target .et_pb_group[data-loop-item] .et_pb_text_inner {
    text-align: left !important;
    text-shadow: none !important;
}
