/**************************************************************************/
/*Removed Elements*/
.woocommerce-result-count,
.woocommerce-ordering,
.product_meta,
.tabs.wc-tabs,
.related.products,
.woocommerce-product-gallery__trigger,
.stock.in-stock{
    display: none;
}
.woocommerce .products ul::after, .woocommerce .products ul::before, .woocommerce ul.products::after, .woocommerce ul.products::before,
.woocommerce ul.products::after, .woocommerce ul.products::before, .woocommerce-page ul.products::after, .woocommerce-page ul.products::before{
    display: none !important;
    content: none !important;
}
.woocommerce #content div.product .woocommerce-tabs, .woocommerce div.product .woocommerce-tabs, .woocommerce-page #content div.product .woocommerce-tabs, .woocommerce-page div.product .woocommerce-tabs{
    display: none !important;
}

/**************************************************************************/
/*Allgemeine Elemente*/

/*Zurück Zur Startseite Button*/
div.backtohome button{
    cursor: pointer;
    width: 100%;
    background-color: var(--co-freecolor);
    color: var(--co-negativ);
    font: var(--f-headline-s);
    padding: 1em;
    border: none;
    text-align: center;
}
div.backtohome button:hover{
    filter: brightness(0.8);
}
/*Table*/
.woocommerce-page table,
.woocommerce-page tr,
.woocommerce-page th,
.woocommerce-page td,
.woocommerce-page ul,
.woocommerce-page ol{
    border-collapse: collapse !important;
    font: var(--f-text);
    box-sizing: border-box;
    letter-spacing: 1.2px;
}
.woocommerce-page table{
    /*border: 1px solid var(--co-freecolor) !important;*/
    border: none !important;
    border-radius: 0px !important;
}
.woocommerce-page table th,
.woocommerce-page table td{
    border: 1px solid var(--co-freecolor) !important;
}
@media only screen and (max-width: 414px) {
    .woocommerce-page table th,
    .woocommerce-page table td{
        /*border: none !important;*/
        border: 1px solid var(--co-freecolor) !important;
        margin-top: -1px;
    }
}
/*Buttons*/
.woocommerce-page .button{
    font: var(--f-headline-s);
}
/*Input*/
.woocommerce-page *:focus{
    outline: none;
}
/*Messages*/
.woocommerce-message,
.woocommerce-error, 
.woocommerce-info{
    border-top: none !important;
    font: var(--f-textbold) !important;
    background-color: var(--co-freecolor) !important;
    color: var(--co-negativ) !important;
    box-sizing: border-box;
    text-align: left;
}
.woocommerce-message::before,
.woocommerce-error::before,
.woocommerce-info::before{
    color: var(--co-negativ) !important;
}

/**************************************************************************/
/*Shopnavigation*/
.woocommerce-page section.shopnavigation ul{
    list-style-type: none;
    padding: 0 0;
    text-align: left;
    /*Box*/
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
    align-items: center;
    /*Schirft*/
    font: var(--f-headline-s);
}
body.single.woocommerce-page section.shopnavigation ul{
    margin-top: var(--ga-top-l);
    justify-content: center;
}
.woocommerce-page section.shopnavigation ul li{
    padding-right: 20px;
}
body.single.woocommerce-page section.shopnavigation ul li{
    padding: 0 5px;
}
.woocommerce-page section.shopnavigation ul li:not(:last-of-type)::after{
    content: ' | ';
}
@media only screen and (max-width: 414px) {
    .woocommerce-page section.shopnavigation ul {
        font: var(--f-textsmall);
    }
    .woocommerce-page section.shopnavigation ul li{
        padding-right: 5px;
    }
}


/**************************************************************************/
/*Shop-Seite*/
.woocommerce-page ul.products{
    display: grid !important;
    grid-gap: var(--ga-inner);
    grid-template-columns: var(--gr-standart);
}
.woocommerce-page ul.products li.product{
    float: unset !important;
    margin: 0 0 !important;
    width: 100% !important;
}
.woocommerce-page ul.products li.product .button{
    width: 100%;
    color: var(--co-negativ);
    background-color: var(--co-freecolor);
    box-sizing: border-box;
    border-radius: 0px;
    margin-top: 5px !important;
}
.woocommerce-page .added_to_cart.wc-forward{
    background-color: var(--co-freecolor);
    opacity: 0.6;
    padding: 8px 17px;
    width: 100%;
    box-sizing: border-box;
}
.woocommerce-page .woocommerce-Price-amount.amount{
    color: var(--co-freecolor);
}
.woocommerce-page main{
            max-width: 60vw;
            margin: auto !important;
}

@media only screen and (max-width: 1024px) {
.woocommerce-page main {
        max-width: 100%;
        margin: auto !important;
    }
}

/**************************************************************************/
/*Warenkorb-Seite*/
.woocommerce-page .checkout-button.button.wc-forward{
    background-color: var(--co-freecolor);
    border-radius: 0px;
}
.woocommerce-page .checkout-button.button.wc-forward:hover{
    filter: brightness(0.8);
    background-color: var(--co-freecolor);
}
#add_payment_method table.cart input, 
.woocommerce-cart table.cart input, 
.woocommerce-checkout table.cart input{
    border: 1px solid var(--co-freecolor);
    border-radius: 0px;
}
.woocommerce-page .cart_totals.calculated_shipping{
    width: 70% !important;
}
.woocommerce-page .cart-subtotal,
.woocommerce-page .product-remove{
    margin-top: 2px;
}
@media only screen and (max-width: 1024px) {
    .woocommerce-page .cart_totals.calculated_shipping{
        width: 100% !important;
    }
    .woocommerce-page .woocommerce-shipping-totals.shipping *{
        text-align: left !important;
    }
    .woocommerce .cart-collaterals .cart_totals, 
    .woocommerce-page .cart-collaterals .cart_totals{
        width: 100% !important;
    }
}

/**************************************************************************/
/*Kassen-Seite*/
@media only screen and (max-width: 414px) {
    .woocommerce-page table.shop_table{
        display: block;
        overflow: hidden;
    }
    div#order_review{
        overflow: hidden;
    }
    .woocommerce-page table.shop_table thead{
        display: none;
    }
    .woocommerce-page .woocommerce-terms-and-conditions-checkbox-text{
        margin-top: 20px;
        line-height: 120% !important;
    }
    .woocommerce-page form .form-row label{
        line-height: 120% !important;
    }
    .woocommerce-page .form-row.validate-required{
        margin-top: 20px;
    }
    .woocommerce-page #add_payment_method #payment ul.payment_methods li, 
    .woocommerce-page .woocommerce-cart #payment ul.payment_methods li, 
    .woocommerce-page .woocommerce-checkout #payment ul.payment_methods li{
        line-height: 120%;
        margin-bottom: 20px;
    }
    .woocommerce-page table.shop_table thead>tr>*{
        width: 100% !important;
    }
}
.woocommerce-page form .form-row input.input-text, 
.woocommerce-page form .form-row textarea{
    border-radius: 0px !important;
    border: 1px solid lightgrey;
    padding: 6px;
    box-sizing: border-box;
}
.woocommerce-page .select2-container--default .select2-selection--single{
    border-radius: 0px !important;
    border: 1px solid lightgrey;
    box-sizing: border-box;
    font: var(--f-text) !important;
}
.woocommerce-page form .form-row{
    padding: 0 0 !important;
}
.woocommerce-page .woocommerce-checkout-payment{
    border-radius: 0px !important;
}
.woocommerce-page .woocommerce-terms-and-conditions-wrapper{
    padding: 1em !important;
}
.woocommerce-page button#place_order{
    margin: 1em !important;
    background-color: var(--co-freecolor);
    color: var(--co-negativ);
}
.woocommerce-page button#place_order:hover{
    filter: brightness(0.8);
    background-color: var(--co-freecolor);
}
.woocommerce #payment #place_order, .woocommerce-page #payment #place_order{
    width: auto !important;
}

/**************************************************************************/
/*Produkt-Seite*/

/*Produkttitel*/
.woocommerce-page.single-product div.infos{
    padding-top: 10px;
    padding-bottom: 10px;
}
/*Grid*/
.woocommerce-page div.product{
    display: grid;
    grid-gap: var(--ga-inner);
    grid-template-columns: repeat(2, 1fr);
    padding: 0 var(--ga-side-s) var(--ga-top-l) var(--ga-side-s);
}
.woocommerce-page.single-product .woocommerce-notices-wrapper{
    padding: 20px var(--ga-side-s);
}
@media only screen and (max-width: 414px) {
    .woocommerce-page div.product{
        display: block;
    }
    .woocommerce-page.single-product .woocommerce-notices-wrapper{
        padding: 0 var(--ga-side-s);
    }
}
/*Bild*/
.woocommerce-page .woocommerce-product-gallery{
    width: 100% !important;
}
.woocommerce-page .woocommerce-product-gallery__wrapper{
    /*height: 400px;*/
    width: 100%;
    object-fit: cover;
    object-position: center center;
    overflow: hidden;
}
@media only screen and (max-width: 414px) {
    .woocommerce-page .woocommerce-product-gallery__wrapper{
        height: auto;
    }
}
/*Gallerie*/
.woocommerce-page div.product .woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1){
    clear: unset !important;
}
.woocommerce-page div.product div.images .flex-control-thumbs li{
    width: 20% !important;
}
@media only screen and (max-width: 414px) {
    .woocommerce-page div.product div.images .flex-control-thumbs li{
        width: 20% !important;
    }
}
/*Grössenauswahl*/
.woocommerce-page div.product form.cart .variations td.label{
    padding-right: 0px;
    padding: 10px;
    vertical-align: middle;
}
.woocommerce-page div.product form.cart .variations td.value{
    padding: 10px;
}
.woocommerce-page div.product form.cart .variations td.value select{
    width: 100%;
    margin-right: 0px;
}
/*Text*/
.woocommerce-page .summary.entry-summary{
    width: 100% !important;
    float: none !important;
    text-align: left !important;
}
.woocommerce-page .summary.entry-summary .price{
    font: var(--f-headline);
    padding-bottom: 20px;
    color: var(--co-freecolor);
}
.woocommerce-page .summary.entry-summary .woocommerce-product-details__short-description{
    padding-bottom: 20px;
}
.woocommerce-page .summary.entry-summary form.cart{
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
}
.woocommerce-page .summary.entry-summary form.cart .qty{
    height: 40px !important;
    font: var(--f-headline-s);
    border: 1px solid var(--co-font);
    border-radius: 0px;
    box-sizing: border-box;
}
.woocommerce-page .summary.entry-summary form.cart button{
    background-color: var(--co-freecolor);
    color: var(--co-negativ);
    height: 40px;
    border-radius: 0px;
    box-sizing: border-box;
}
.woocommerce-page .summary.entry-summary form.cart button:hover{
    background-color: var(--co-freecolor);
    filter: brightness(0.8);
}


/**************************************************************************/
/*Bestellen-Seite*/
.woocommerce-page ul.order_details{
    margin-top: 20px !important;
    padding: 0 0 !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
}
@media only screen and (max-width: 414px) {
    .woocommerce-page ul.order_details{
        background-color: lightgrey;
        padding: 10px !important;
        flex-direction: column !important;
    }
    .woocommerce-page ul.order_details li{
        border-right: none !important;
        border: none !important;
    }
    .woocommerce-order-details{
        overflow: hidden;
    }
    /*General*/
    .woocommerce table.shop_table tbody th, 
    .woocommerce table.shop_table tfoot td, 
    .woocommerce table.shop_table tfoot th{
        border-top: none !important;
        border: none !important;
    }
    .woocommerce-order-details table td,
    .woocommerce-order-details table tr{
        float: left !important;
        width: 100% !important;
        border: none !important;
    }
    /*TBody*/
    .woocommerce-order-details table tbody td{
        background-color: lightgrey !important;
    }
    .woocommerce-order-details table tbody td:last-of-type{
        margin-bottom: 20px !important;
    }
    /*TFoot*/
    .woocommerce-order-details table tfoot td{
        padding: 0 0 !important;
        margin-bottom: 10px !important;
    }
    .woocommerce-order-details table tfoot th{
        padding: 0 0 !important;
    }
    /*THead*/
    .woocommerce-order-details table thead{
        display: none;
    }
}