/*******             *******/
/*******     All     *******/
/*******             *******/

/*******             *******/
/*******     All     *******/
/*******             *******/







/*******             *******/
/*******   Classes   *******/
/*******             *******/
.store_product_element_container{

    position: relative; 
    display: inline-block; 
    width: 33.33%; 
    height: 560px;

}

.store_product_element_sub_container{

    position: absolute; 
    top: 20px; 
    left: 20px; 
    right: 20px; 
    bottom: 20px;

}

.store_product_element_photo{

    width: 100%; 
    height: 62%;

}

.store_product_element_information{

    width: 100%;

}

.store_product_element_divider{

    width: 30%; 
    height: 1px; 
    margin: auto; 
    margin-top: 5px; 
    background-color: #3f5689;

}

.store_product_element_name{

    padding: 20px 20px 8px 20px; 
    height: 45px; 
    font-size: 20px; 
    font-weight: 400; 
    text-align: center; 
    color: #3f5689;

}

.store_product_element_name > a{

    color: #3f5689;
    text-decoration: none;

}

.store_product_element_name > a:hover{

    border-bottom: 1px solid;

}

.store_product_element_price{

    padding: 0px 20px; 
    font-size: 25px; 
    font-weight: 200; 
    text-align: center; 
    color: #606179;

}

.store_product_element_promo_price{

    padding: 0px 20px; 
    font-size: 25px; 
    font-weight: 200; 
    text-align: center; 
    color: #0ee03c;

}

.store_product_element_promo_old_price{

    font-size: 18px; 
    color: #ff654e;
    text-decoration: line-through;

}

.store_page_filter_section{

    width: calc(100% - 40px); 
    padding: 10px 20px; 
    padding-bottom: 40px;
    
}

.store_page_filter_section div{

    margin: 10px 0px;

}

.store_page_filter_section div > label{

    font-size: 15px;
    cursor: pointer;
    color: #38444c;

}

.store_page_filter_section input[type="checkbox"] {

    appearance: none;
    background-color: #fff;
    margin: 0;
    font: inherit;
    color: #3f5689;
    width: 14px;
    height: 14px;
    border: 1px solid #3f5689;
    border-radius: 2px;
    display: grid;
    place-content: center;
    float: left;
    margin-right: 10px;
    margin-top: 3px;

}

.store_page_filter_section input[type="checkbox"]::before {
    content: "";
    width: 8px;
    height: 8px;
    transform: scale(0);
    transition: 120ms transform ease-in-out;
    box-shadow: inset 1em 1em #3f5689;
}

.store_page_filter_section input[type="checkbox"]:checked::before {
    transform: scale(1);
}




.store_page_add_to_cart_button_container{

    text-align: center; 
    position: absolute; 
    bottom: 0px; 
    left: 0px; 
    right: 0px;

}

.store_product_not_favorite_button,
.product_page_not_favorite_button{

    position: absolute; 
    display: none; 
    top: 20px; 
    right: 20px; 
    width: 30px; 
    height: 30px; 
    z-index: 10; 
    background-image: url('/imgs/icons/not_favorite.png');
    cursor: pointer;

}

.store_product_favorite_button,
.product_page_favorite_button{

    position: absolute; 
    display: none; 
    top: 20px; 
    right: 20px; 
    width: 30px; 
    height: 30px; 
    z-index: 10; 
    background-image: url('/imgs/icons/favorite.png');
    cursor: pointer;

}

.product_page_not_favorite_button,
.product_page_favorite_button{

    top: 10px; 
    right: 20px; 
    display: block;
    width: 35px; 
    height: 35px; 

}

.store_product_element_container:hover .store_page_add_to_cart_button,
.store_product_element_container:hover .store_page_more_info_button{

    visibility: visible;

    -webkit-transition: all ease-in-out .5s;
    -moz-transition: all ease-in-out .5s;
    transition: all ease-in-out .5s;

    top: 0px;

}

.store_product_element_container:hover .store_product_not_favorite_button{

    display: block;

}

.store_product_element_container:hover .store_product_favorite_button{

    display: block;

}

.store_product_with_stock{

    font-size: 15px; 
    text-align: center; 
    margin-top: 4px; 
    color: #0ee03c;

}

.store_product_without_stock{

    font-size: 15px; 
    text-align: center; 
    margin-top: 4px; 
    color: #ff654e;

}

.store_page_add_to_cart_button,
.store_page_more_info_button{

    width: 180px; 
    height: 18px;
    margin: auto;
    cursor: pointer; 
    text-align: center; 
    position: relative;
    top: 15px;
    visibility: hidden;
    background-color: #ff654e; 
    color: #fff; 
    padding: 10px 20px; 
    font-size: 16px; 
    font-weight: 400; 
    border-radius: 50px; 
    -webkit-box-shadow: 0px 9px 15px -5px rgb(38 38 38 / 15%); 
    -moz-box-shadow: 0px 9px 15px -5px rgba(38,38,38,0.15); 
    box-shadow: 0px 9px 15px -5px rgb(38 38 38 / 15%);

    -webkit-transition: all ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;

}

.store_page_add_to_cart_button:hover,
.store_page_more_info_button:hover{

    background-color: #fe6c56;

    -webkit-box-shadow: 0px 9px 15px 0px rgb(38 38 38 / 15%); 
    -moz-box-shadow: 0px 9px 15px 0px rgba(38,38,38,0.15); 
    box-shadow: 0px 9px 15px 0px rgb(38 38 38 / 15%);

}

.store_page_add_to_cart_button > .store_page_add_to_cart_text,
.store_page_more_info_button > .store_page_add_to_cart_text{

    float: left;

}

.store_page_add_to_cart_button > .contain_img,
.store_page_more_info_button > .contain_img{

    float: right; 
    background-image: url('/imgs/add-cart.png'); 
    width: 16px; 
    height: 16px;

}


.product_page_add_to_cart_button{

    float: left; 
    width: calc(60% - 60px); 
    cursor: pointer; 
    text-align: center; 
    background-color: #ff654e; 
    color: #fff; 
    padding: 15px 30px; 
    font-size: 18px; 
    font-weight: 400; 
    border-radius: 50px; 
    -webkit-box-shadow: 0px 9px 15px -5px rgb(38 38 38 / 15%); 
    -moz-box-shadow: 0px 9px 15px -5px rgba(38,38,38,0.15); 
    box-shadow: 0px 9px 15px -5px rgb(38 38 38 / 15%);

    -webkit-transition: all ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;

}

.product_page_add_to_cart_disable_button{

    float: left; 
    width: calc(60% - 60px); 
    cursor: pointer; 
    text-align: center; 
    background-color: #bbbdc1; 
    color: #fff; 
    padding: 15px 30px; 
    font-size: 18px; 
    font-weight: 400; 
    border-radius: 50px; 
    -webkit-box-shadow: 0px 9px 15px -5px rgb(38 38 38 / 15%); 
    -moz-box-shadow: 0px 9px 15px -5px rgba(38,38,38,0.15); 
    box-shadow: 0px 9px 15px -5px rgb(38 38 38 / 15%);

    -webkit-transition: all ease-in-out .2s;
    -moz-transition: all ease-in-out .2s;
    transition: all ease-in-out .2s;

}

.product_page_add_to_cart_button:hover{

    background-color: #fe6c56;

    -webkit-box-shadow: 0px 9px 15px 2px rgb(38 38 38 / 15%); 
    -moz-box-shadow: 0px 9px 15px 2px rgba(38,38,38,0.15); 
    box-shadow: 0px 9px 15px 2px rgb(38 38 38 / 15%);

}

.product_page_add_to_cart_button > .product_page_add_to_cart_text,
.product_page_add_to_cart_disable_button > .product_page_add_to_cart_text{

    float: left;

}

.product_page_add_to_cart_button > .contain_img,
.product_page_add_to_cart_disable_button > .contain_img{

    float: right; 
    background-image: url('/imgs/add-cart.png'); 
    width: 20px; 
    height: 20px;

}

.store_page_no_product_section{

    text-align: center; 
    padding: 150px 0px; 
    font-size: 30px; 
    color: #aaa;

}

.store_page_pagination_section{

    display: flex; 
    align-items: center; 
    justify-content: center; 
    margin-top: 100px;

}

.store_page_pagination_left_arrow{

    font-size: 14px; 
    margin-right: 10px; 
    padding: 10px; 
    color: #ff654e;

}

.store_page_pagination_right_arrow{

    font-size: 14px; 
    margin-left: 10px; 
    padding: 10px; 
    color: #ff654e;
    
}

.store_page_pagination_selected_number{

    font-size: 22px; 
    padding: 5px; 
    margin: 0px 5px; 
    color: #396bd7;

}

.store_page_pagination_number{

    font-size: 15px; 
    padding: 5px; 
    margin: 0px 5px; 
    color: #38444c;

}

.store_page_filter_main_section{

    width: 100%; 
    margin-top: 25px;

}

.store_page_filter_title{

    padding: 0px 20px; 
    font-size: 20px; 
    color: #606179;

}

.store_page_filter_divider{

    width: 20px; 
    height: 3px; 
    margin-top: 10px; 
    margin-left: 20px; 
    background-color: #606179;

}

.store_page_subcategory_div{

    width: calc(100% - 14px); 
    padding-left: 10px !important;
    padding: 5px 0px; 
    margin: 0px !important; 
    border-left: 1px solid #ddd;

}

.group_product_starting_price_title{

    font-size: 14px; 
    text-align: center; 
    margin-bottom: 5px; 
    color: #606179;

}
/*******             *******/
/*******   Classes   *******/
/*******             *******/







/*******            *******/
/*******    ID's    *******/
/*******            *******/
#store_page_body{

    margin: 0px; 
    font-family: arial; 
    background-color: #fff; 
    font-family: sans-serif;

}

#store_page_whole_page{

    position: relative;

}

#store_page_open_store_filters{

    position: fixed; 
    cursor: pointer; 
    margin-top: 10px; 
    left: 20px; 
    z-index: 10; 
    border: 1px solid #606179; 
    background-color: #fff; 
    padding: 10px;

}

#store_page_open_store_filters > .contain_img{

    background-image: url('/imgs/store_filters.png'); 
    width: 21px; 
    height: 21px;

}

#store_page_store_filters_container{

    position: fixed; 
    width: 0px; 
    max-width: 250px;
    height: calc(100% - var(--navbar-height)); 
    overflow-y: scroll; 
    z-index: 20; 
    background-color: #fff;

}

#store_page_store_filters_subcontainer{

    display: block; 
    overflow: hidden; 
    white-space: nowrap;

}

#store_page_name_search_container{

    padding: 10px 50px; 
    margin-top: 10px;

}

#store_page_close_store_filters{

    display: inline-block; 
    margin: 10px 20px; 
    margin-top: 20px; 
    font-size: 16px; 
    font-weight: 100; 
    color: #606179; 
    cursor: pointer;

}

#store_page_product_name_search_input{

    width: calc(100% - 20px - 2px); 
    padding: 7px 10px; 
    font-size: 18px; 
    border: 1px solid #ddd; 
    border-radius: 5px;

}

#store_page_name_search_button_div{

    font-size: 12px; 
    text-align: center; 
    margin: 15px 0px 20px 0px; 
    height: 23px;

}

#store_page_name_price_range_container{

    width: 100%; 
    margin-top: 10px;

}

#store_page_main_products_main_container{

    display: inline-block; 
    width: 100%;

}

#store_page_main_products_container{

    width: calc(100% - 50px); 
    margin-bottom: 180px; 
    padding: 50px 25px; 
    display: table; 
    background-color: #fff;

}

#store_page_name_price_range_input_div{

    padding: 10px 0px; 
    padding-top: 0px; 
    color: #141a25;

}

#store_page_name_price_range_text_inputs{

    overflow: hidden; 
    padding-bottom: 10px;

}

#store_page_name_price_range_text_inputs > #store_page_filters_min_price{

    width: calc(50% - 20px); 
    font-size: 15px; 
    padding: 5px 5px; 
    font-family: sans-serif; 
    border: 1px solid #bbb; 
    border-radius: 3px; 
    float: left;

}

#store_page_name_price_range_text_inputs > #store_page_filters_max_price{

    width: calc(50% - 20px); 
    font-size: 15px; 
    padding: 5px 5px; 
    font-family: sans-serif; 
    border: 1px solid #bbb; 
    border-radius: 3px; 
    float: right;

}

#store_page_filters_slider_div{

    position: relative;

}

#slider-range{

    border: 0px;
    background: #eee;
    height: 4px;
    width: calc(100% - 15px);
    margin: 10px 10px;

}

#slider-range > div{

    background: #141a25;
    top: -10px;

}

#slider-range > a{

    background: #141a25;
    border: 0px;
    cursor: pointer;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    top: -6px;

}

#slider-range > a:focus{

    outline: none;
    -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Safari */
    -khtml-user-select: none; /* Konqueror HTML */
    -moz-user-select: none; /* Old versions of Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none;

}

#store_page_search_text_button{

    display: inline-block; 
    padding-bottom: 5px; 
    cursor: pointer;
    color: #606179;

}

#store_page_search_text_button:hover{

    border-bottom: 1px solid;

}
/*******            *******/
/*******    ID's    *******/
/*******            *******/

@media (pointer: coarse) or (max-width: 900px){

    #store_page_store_filters_container{

        max-width: 60%;

    }

    #store_page_open_store_filters{

        margin-top: 25px;
        left: 40px;
        padding: 20px;

    }

    #store_page_open_store_filters > .contain_img {
        
        width: 50px;
        height: 50px;

    }

    #store_page_close_store_filters {

        display: inline-block;
        margin: 30px 40px;
        margin-top: 30px;
        font-size: 50px;
        cursor: pointer;

    }

    #store_page_store_filters_container input[type=text]{

        font-size: 35px !important;
        padding: 10px 20px !important;
        width: calc(100% - 40px - 2px);

    }

    #store_page_filters_min_price, #store_page_filters_max_price{

        width: calc(50% - 50px) !important;

    }

    #store_page_filters_slider_div #slider-range {

        height: 8px;

    }

    #store_page_filters_slider_div #slider-range a{

        width: 28px;
        height: 28px;

    }

    #slider-range > a {

        top: -8px;

    }

    #store_page_search_text_button{

        font-size: 28px;

    }



    .store_product_element_container{

        width: 100%;
        height: 800px;
        margin-bottom: 100px;

    }

    .store_product_element_name{

        font-size: 40px;

    }

    .store_product_element_divider {

        width: 30%;
        height: 2px;

    }

    .store_product_element_price {

        padding: 0px 20px;
        font-size: 40px;
        
    }

    .store_product_element_promo_price {
        
        padding: 0px 20px;
        font-size: 40px;

    }

    .store_product_element_promo_old_price {
        
        font-size: 30px;

    }

    .store_page_add_to_cart_button,
    .store_page_more_info_button {

        width: 400px;
        height: 30px;
        margin: auto;
        cursor: pointer;
        text-align: center;
        position: relative;
        top: 0px;
        visibility: visible;
        padding: 20px 40px;

    }

    .store_page_add_to_cart_text{

        font-size: 27px !important;

    }

    .store_page_add_to_cart_button > .contain_img,
    .store_page_more_info_button > .contain_img {
        width: 28px;
        height: 28px;
    }

    .store_product_with_stock,
    .store_product_without_stock {
        font-size: 30px;
        margin-top: 6px;
    }

    .store_page_pagination_left_arrow {
        font-size: 45px;
        margin-left: 40px;
        padding: 10px;
    }

    .store_page_pagination_selected_number {
        font-size: 60px;
        padding: 5px;
        margin: 0px 30px;
    }

    .store_page_pagination_number {
        font-size: 45px;
        padding: 5px;
        margin: 0px 30px;;
    }

    .store_page_pagination_right_arrow {
        font-size: 45px;
        margin-left: 40px;
        padding: 10px;
    }

    .store_page_pagination_section a{

        font-size: 45px;

    }


    .store_page_filter_title{

        font-size: 40px;
        padding: 0px 50px;

    }

    .store_page_filter_divider {

        width: 50px;
        height: 5px;
        margin-top: 20px;
        margin-left: 50px;
        
    }

    .store_page_filter_section > div {

        margin: 20px 30px;

    }

    .store_page_filter_section label{

        font-size: 35px !important;

    }

    .store_page_filter_section label input[type=checkbox]{

        width: 30px;
        height: 30px;

    }

    .group_product_starting_price_title{

        font-size: 25px;
        margin-bottom: 10px;
    
    }

    .product_page_not_favorite_button, .product_page_favorite_button {
        width: 70px;
        height: 70px;
        right: 30px;
    }

    .store_product_not_favorite_button, .store_product_favorite_button {
        display: block;
        top: 20px;
        right: 20px;
        width: 70px;
        height: 70px;
    }

    .store_page_subcategory_div{

        width: unset; 
        padding-left: 20px !important;
        padding: 15px 0px;
        margin: 0px 30px !important;
        border-left: 1px solid #ddd;
    
    }

    .store_page_filter_section input[type="checkbox"]::before {

        width: 18px;
        height: 18px;
        
    }

}