/*
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 1.0.1
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/*
    Add your custom styles here
*/

span.custom_label.drint_alleen_offline {
    position: absolute;
    top: 20px;
    left: 0;
    background: #258E3B;
    color: #fff;
    padding: 0 15px 0 10px;
    border-radius: 0 5px 5px 0;
    font-size: 12px;
}

span.custom_label.drint_alleen_offline {
    top: 30px;
}

.elementor-item-active {
    color: #258E3B !important;
    font-weight: bold !important;
}

ul.wc-brand-list-layered-nav-product_brand {
    padding-inline-start: 0px;
}

.usp-title {
    width: auto !important;
}

.woocommerce a img {
    margin: 0 !important;
}

.product-categories {
    margin-left: -40px;
}

.product_img_spacer {
    height: 175px;
    display: flex;
    justify-content: center;
}

.product_img_spacer img {
    align-self: center;
    flex: 0 0 auto;
    object-fit: contain;
    max-height: 100%;
}

.elementor-widget-wc-categories ul.products li.product a img {
    object-fit: cover;
    max-height: 200px;
    min-height: 200px;
}

td, th {
    border: 0px solid black !important;
}

.wc-proceed-to-checkout a,
#place_order {
    background-color: #038D36 !important;
}

.woocommerce-checkout-review-order {
    width: 48%;
    position: relative;
    top: 10px;
}

#order_review_heading {
    display: none !important;
}

.menu-item {
    padding-right: 10px !important;
}

.woocommerce .widget_price_filter .ui-slider .ui-slider-range,
.woocommerce .widget_price_filter .ui-slider .ui-slider-handle,
.woocommerce .widget_price_filter .price_slider_wrapper .ui-widget-content {
    background-color: #038D36;
}

.current-cat a {
    font-weight: bold !important;
}

.children {
    margin-left: -25px;
}

.elementor-sub-item {
    background-color: white !important;
}

.elementor-sub-item:hover {
    color: green !important;
}

.archive .product {
    padding-bottom: 120px !important;
}

.archive .product_type_simple {
    position: absolute !important;
    top: 260px;
}

.added_to_cart {
    margin-top: 70px;
}

.woocommerce-product-gallery__image {
    height: 100%;
    text-align: center;
}

.woocommerce .woocommerce-product-gallery__image a img {
    max-height: 100%;
    width: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 10px 0;
}

.woocommerce div.product div.images .flex-control-thumbs li {
    width: calc(25% - 10px);
    margin-right: 10px;
    border: solid 1px #eaeaea;
}

#homepr > .attachment-woocommerce_thumbnail {
    width: 1000px !important;
    height: 1100px !important;
}

#relatedpr img {
    max-width: 60%;
    max-height: 70%;
}

.elementor-element-18b8fa1,
.elementor-element-c57daf3 {
    /* hide 'online te koop' en 'alleen in de winkel' filters */
    display: none;
}

#filters_button {
    display: none;
}

.pickup_only_badge {
    position: absolute;
    top: 30px;
    left: 0;
    background: #258E3B;
    color: #fff;
    padding: 0 15px 0 10px;
    border-radius: 0 5px 5px 0;
    font-size: 12px;
}

.fusion-woo-badges-wrapper + .pickup_only_badge {
    top: 45px;
}

.single-product .elementor-add-to-cart .pickup_only_badge {
    position: relative;
    right: 0;
    top: -12px;
}

.woocommerce-cart-form__cart-item.cart_item .pickup_only_badge {
    position: relative;
    right: 0;
    width: 89px;
    padding-top: 0;
    padding-bottom: 0;
    display: block;
    margin-top: 5px;
}

.woocommerce-cart-form__cart-item.cart_item .product-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.pickup-location-field.pickup-location-cart-item-field {
    display: none;
}

table.shop_table.woocommerce-checkout-review-order-table .pickup_only_badge {
    display: none !important;
}

/* Responsive adjustments */
@media only screen and (max-width: 768px) {
    #filters_button {
        display: block;
        height: 38px;
        line-height: 38px;
        padding-left: 15px;
        margin: 20px 0 10px;
        background: #fbfaf9;
        border: solid 1px #eaeaea;
        font-size: 12px;
        cursor: pointer;
    }

    #filters_button svg {
        position: relative;
        top: 10px;
        margin-right: 10px;
        float: right;
    }

    #filters_button svg g#Categorie-320 {
        stroke: #000;
    }

    .tax-product_cat #woo_sidebar {
        position: fixed;
        top: 0;
        margin-top: 0 !important;
        left: -100%;
        height: 100%;
        background: #fff !important;
        padding: 20px 30px !important;
        overflow-y: scroll;
        transition: all .35s ease;
    }

    .tax-product_cat #woo_sidebar.active {
        left: 0;
    }

    .sidebar-closer,
    .tttax-product_cat #woo_sidebar.active:before {
        position: fixed;
        bottom: 10px;
        background: limegreen;
        width: calc(100% - 130px);
        height: 30px;
        text-align: center;
        color: #fff;
        font-weight: 900;
        font-size: 12px;
        padding-top: 6px;
        left: 25px;
    }

    .sidebar-cross {
        content: 'X';
        position: fixed;
        top: 20px;
        right: 20px;
        background: red;
        width: 30px;
        border-radius: 50%;
        color: #fff;
        text-align: center;
        height: 30px;
        line-height: 30px;
    }

    .elementor-40 .elementor-element.elementor-element-74eccb5 > .elementor-container {
        min-height: 230px !important;
    }

    .elementor-element.elementor-element-22b4ceb.elementor-widget.elementor-widget-wp-widget-woocommerce_product_categories {
        display: none;
    }

    p.woocommerce-result-count {
        display: none;
    }

    .woocommerce-cart-form__cart-item.cart_item .pickup_only_badge {
        margin-left: 0;
        margin-top: 10px;
    }
}

/* -------------------------------------------------- */
/* Z-Index Layer Management                         */
/* Define meaningful stacking context using CSS vars */
:root {
    --z-aws-container:       1;
    --z-search-result:       2;
    --z-menu-cart:           2;
    --z-menu-item:          10;
    --z-sub-menu:           400;
    --z-sidebar-cross:     100;
    --z-sidebar-closer:    101;
    --z-woo-sidebar:       200;
}

.aws-container {
    z-index: var(--z-aws-container) !important;
}

#aws-search-result-1 {
    z-index: var(--z-search-result) !important;
}

.elementor-menu-cart__main {
    z-index: var(--z-menu-cart) !important;
}

.menu-item-120 {
    z-index: var(--z-menu-item) !important;
}

.sub-menu {
    z-index: var(--z-sub-menu) !important;
}

.sidebar-cross {
    z-index: var(--z-sidebar-cross);
}

.sidebar-closer,
.tttax-product_cat #woo_sidebar.active:before {
    z-index: var(--z-sidebar-closer);
}

.tax-product_cat #woo_sidebar {
    z-index: var(--z-woo-sidebar);
}

/* End of Z-Index Layer Management */
