/*
Theme Name: Divi Child
Template: Divi
Version: 1.0
*/

.zw-prodotti-lista ul.products {
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
}

.zw-prodotti-lista .zw-product-card {
    width: calc(33.333% - 20px) !important;
    margin: 0 !important;
}

@media (max-width: 767px) {
    .zw-prodotti-lista .zw-product-card {
        width: 100% !important;
    }
}

/* STICKY CATEGORY BAR */
.zw-category-bar {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
    padding: 0 !important;
    background: #003640 !important;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.12);
}

/* Remove Divi spacing */
.zw-category-bar .et_pb_row {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
}

.zw-category-menu {
    margin: 0 !important;
    background: transparent !important;
}

.zw-category-menu .et_pb_menu_inner_container {
    min-height: 54px !important;
}


@media only screen and (max-width: 980px) {

    /* Hide Divi mobile hamburger */
    .zw-category-menu .et_mobile_nav_menu {
        display: none !important;
    }

    /* Keep the desktop menu visible */
    .zw-category-menu .et_pb_menu__menu {
        display: block !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    .zw-category-menu .et-menu-nav {
        display: block !important;
        width: 100% !important;
    }

    /* Horizontally swipeable categories */
    .zw-category-menu ul.et-menu {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 8px 14px !important;
        box-sizing: border-box !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        gap: 8px !important;

        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .zw-category-menu ul.et-menu::-webkit-scrollbar {
        display: none;
    }

    .zw-category-menu ul.et-menu > li {
        display: block !important;
        flex: 0 0 auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Category pills */
    .zw-category-menu ul.et-menu > li > a {
        display: block !important;
        padding: 9px 15px !important;

        color: #ffffff !important;
        background: rgba(255, 255, 255, 0.08) !important;
        border: 1px solid rgba(255, 255, 255, 0.22) !important;
        border-radius: 50px !important;

        font-size: 13px !important;
        font-weight: 600 !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
        opacity: 1 !important;
    }

    .zw-category-menu ul.et-menu > li.current-menu-item > a,
    .zw-category-menu ul.et-menu > li > a:hover {
        color: #003640 !important;
        background: #ffffff !important;
        border-color: #ffffff !important;
    }
}

@media only screen and (max-width: 980px) {

    /* Remove hamburger */
    body #page-container
    .zw-category-menu .et_mobile_nav_menu {
        display: none !important;
    }

    /* Reset Divi wrappers */
    body #page-container
    .zw-category-menu .et_pb_menu_inner_container,
    body #page-container
    .zw-category-menu .et_pb_menu__wrap {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        overflow: visible !important;
    }

    /* This element becomes the scroll container */
    body #page-container
    .zw-category-menu .et_pb_menu__menu {
        display: block !important;
        width: 100% !important;
        max-width: none !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: none !important;
        -webkit-overflow-scrolling: touch;
    }

    body #page-container
    .zw-category-menu .et_pb_menu__menu::-webkit-scrollbar {
        display: none !important;
    }

    body #page-container
    .zw-category-menu .et-menu-nav {
        display: block !important;
        width: max-content !important;
        min-width: 100% !important;
    }

    body #page-container
    .zw-category-menu ul.et-menu {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: flex-start !important;

        width: max-content !important;
        min-width: 100% !important;
        margin: 0 !important;
        padding: 8px 12px !important;
        gap: 8px !important;
        box-sizing: border-box !important;
    }

    body #page-container
    .zw-category-menu ul.et-menu > li {
        display: block !important;
        position: relative !important;
        flex: 0 0 auto !important;
        width: auto !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    body #page-container
    .zw-category-menu ul.et-menu > li > a {
        display: block !important;
        width: auto !important;
        padding: 8px 14px !important;
        white-space: nowrap !important;
    }
}

body #page-container .zw-category-bar.et_pb_section {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
}