/*
Theme Name: Bongetta
Author: Servizi 3.0 Italia
Author URI: https://www.servizitrepuntozero.com/
Description: Tema per il sito di Bongetta Formaggi
Version: 1.0
License: GNU General Public License v3 or later
License URI: http://www.gnu.org/licenses/gpl-3.0.html
*/

*, *:after, *:before {
    box-sizing: border-box;
}

p {
    margin: 0;
}

.onsale {
    display: none!important;
}

body {
    font-family: 'Montserrat', 'ui-sans-serif', 'system-ui', 'sans-serif', "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    margin: 0;
    padding: 0;
    outline: 0;
}

body.woocommerce-account.woocommerce-page.woocommerce-lost-password {
    & .woocommerce-message, & .woocommerce-notices-wrapper {
        grid-column: 1/-1;
    }
}

td.hide-deco::before {
    display: none;
}

.woocommerce-NoticeGroup.woocommerce-NoticeGroup-checkout {
    grid-column: 1/-1!important;
}

.splide__arrow:disabled {
    display: none!important;
}

.woocommerce table.shop_attributes th {
    text-align: left;
}

.spinner-hide .wpcf7-spinner {
    display: none!important;
}

body.woocommerce-account main>.woocommerce {
    display: grid;
    flex-grow: 1;
    gap: 1rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.azienda-img img {
    aspect-ratio: 14/9!important;
    object-fit: cover;
    object-position: top;
}

button[name="apply_coupon"] {
    background-color: #F43535;
    border: none;
    border-radius: 8px;
    color: white;
    cursor: pointer;
    font-size: .75rem;
    font-weight: 600;
    padding: .625rem 2rem;
    width: fit-content;
}

button[name="apply_coupon"]:hover {
    background-color: #c52d2d;
}

.bgt-button>a {
    background-color: #ef1923!important;
    font-size: 1em!important;
    font-weight: bold;
}

.bgt-category-image img {
    aspect-ratio: 1!important;
    object-fit: cover!important;
}

.bgt-info-message.woocommerce-info {
    &:before {
        display: none;
    }

    background-color: #3372b8;
    border: solid 1px #20568f;
    border-radius: 10px;

    color: white!important;

    font-weight: 600;

    margin: 0 0 1rem!important;

    padding: 1rem!important;

    text-transform: uppercase;

    width: 100%;

    & a {
        color: white!important;
    }
}

.bgt-error-message.woocommerce-error {
    &:before {
        display: none;
    }

    background-color: #ef4444;
    border: solid 1px #991b1b;
    border-radius: 10px;

    color: white!important;


    margin: 0 0 1rem!important;

    padding: 1rem!important;

    text-transform: uppercase;

    width: 100%;
}

.bgt-success-message.woocommerce-message {
    &:before {
        display: none;
    }

    background-color: #16a34a;
    border: solid 1px #166534;
    border-radius: 10px;

    color: white!important;

    display: flex!important;
    align-items: center;
    justify-content: start;

    font-weight: 600;

    margin: 0 0 1rem!important;

    padding: 1rem!important;

    text-transform: uppercase;

    width: 100%;

    & a.button {
        background-color: white;
        border: solid 1px black;
        border-radius: 5px!important;

        color: black!important;

        font-size: .75rem!important;

        margin-left: auto!important;
        margin-right: 0!important;

        padding: .75rem 1.5rem!important;

        transition: all .15s linear;

        &:hover {
            background-color: #3372b8;
            border: solid 1px white;

            color: white!important;
        }
    }
}

input::-moz-placeholder, input:-ms-input-placeholder, input::-webkit-input-placeholder {
    color: #757575!important;
}
body.woocommerce-account main>.woocommerce::before, body.woocommerce-account main>.woocommerce::after {
    display: none;
}

body.woocommerce-account main>.woocommerce .myaccount-navigation li.is-active {
    position: relative;
    color: #3372b8!important;
}

body.woocommerce-account main>.woocommerce .myaccount-navigation li.is-active::before {
    display: block;
    position: absolute;
    left: -1.875rem;
    width: 1.625rem;
    height: 1.625rem;
    content: ' ';
    background-image: url('img/icons/price_filter.svg');
    background-size: contain;
}

body.woocommerce-account main>.woocommerce .myaccount-navigation li.is-active a {
    text-decoration: underline!important;
    text-underline-offset: 4px!important;
}

form.cart div.quantity {
    display: flex;
    float: none;
}

form.cart div.quantity input.qty {
    border: solid 2px #3372b8;
    border-radius: 5px;
    font-size: 1.125rem;
    padding: 0 .375rem;
}

form.cart div.quantity input.qty::-webkit-inner-spin-button, form.cart div.quantity input.qty::-webkit-outer-spin-button {
    opacity: 1;
}

form.cart [name="add-to-cart"] {
    background-color: #FF1624!important;
    border-radius: 5px!important;
    font-size: 1.125rem;
    font-weight: 500;
    padding: 1rem 1.5rem!important;
    text-transform: uppercase;
}

form.cart [name="add-to-cart"]:hover {
    background-color: #c41923 !important;
}

.inner-empty-padding .vc_column-inner{
    padding-left: 0!important;
    padding-right: 0!important;
}

.inner-border-radius .wpb_wrapper {
    border-radius: 10px;
    overflow: clip;
}

.full-height-childs * {
    height: 100%!important;
}

.round-cheese-icon figure {
    position: relative;
}

.round-cheese-icon figure::after {
    background-image: url('img/icons/bongetta.png');
    background-size: contain;
    background-repeat: no-repeat;
    content: ' ';
    display: flex;
    height: 4rem;
    position: absolute;
    top: calc(15% - 2rem);
    right: calc(15% - 2rem);
    width: 4rem;
}

.splide__pagination__page.is-active {
    background: #3372b8!important;
}

.rounded-accordion .vc_tta-panel {
    border-radius: 5px!important;
    overflow: hidden;
}

.rounded-accordion .vc_tta-panel-heading{
    border-radius: 5px!important;
    margin-bottom: 0!important;
}

.rounded-accordion .vc_tta-panel.vc_active .vc_tta-panel-heading {
    border-radius: 5px 5px 0 0!important;
}

.vc_tta-panel-heading

.hc_text {
    @supports not selector(::-webkit-scrollbar) {
        scrollbar-width: thin;
        scrollbar-color: white transparent;
    }

    &::-webkit-scrollbar-track {
        background-color: transparent;
        border: 3px solid transparent;
        border-radius: 10px;
        background-clip: padding-box;
    }

    &::-webkit-scrollbar {
        width: 12px;
    }

    &::-webkit-scrollbar-thumb {
        background-color: white;
        border: 3px solid transparent;
        border-radius: 10px;
        background-clip: padding-box;
    }
}

.select2.select2-container .selection {
    height: fit-content;
}

.select2-container--default .select2-selection--single {
    background-color: #f5f5f5;
    border: 2px solid #d1d5db;
    border-radius: 10px;
}

.select2.select2-container .selection .select2-selection {
    height: fit-content;
}

.attribute_select.wc-enhanced-select + .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #757575!important;
}

.attribute_select.wc-enhanced-select + .select2.select2-container .selection .select2-selection .select2-selection__rendered {
    color: black;
    font-size: 13px;
    height: fit-content;
    line-height: 1;
    padding: .75rem 1rem;
}

.category_attribute_select.wc-enhanced-select + .select2.select2-container{
    & .select2-selection--multiple {
        border-color: #EF1923;
    }

    & .selection .select2-selection .select2-selection__rendered {
        color: black;
        font-size: 14px;
        height: fit-content;
        line-height: 1;
        padding: .25rem .5rem;
    }

    & .select2-selection__choice {
        background-color: #3372b8;
        border: solid 1px #235891;
        color: white;
        padding: 4px 12px;
    }

    & .select2-selection__choice__remove {
        color: white;
    }

    & .select2-selection--multiple .select2-selection__rendered .select2-selection__choice + li {
        padding-top: 4px;
        width: initial!important;
    }

    & .select2-selection--multiple .select2-selection__rendered input.select2-search__field {
        width: fit-content!important;
    }
}

.select2 .select2-selection__arrow {
    height: 100%!important;
    top: 2px!important;
    bottom: 2px!important;
}

.wishlist_table tr th.product-thumbnail {
    width: 10%!important;
}

.wishlist_table {
    border: none!important;
    border-collapse: collapse!important;
    font-size: 100%!important;
}

.wishlist_table tr th {
    background: transparent!important;
    border: none!important;
}

.wishlist_table tr th span {
    font-size: 1rem!important;
}

.wishlist_table tr td {
    border: none!important;
}

.wishlist_table tr td .woocommerce-Price-currencySymbol {
    font-weight: 600!important;
}

.wishlist_table tr td.product-name a, .wishlist_table tr td.product-price span {
    color: #3372b8!important;
    font-weight: 600;
    font-size: 15px!important;
    text-decoration: none!important;
}

.wishlist_table tr td.product-add-to-cart a {
    background-color: #F43535!important;
    border-radius: 5px!important;
    color: #fff!important;
    display: block!important;
    margin-bottom: 0;
    padding: 0.75rem 1.25rem;
    text-decoration: none;
    transition: background-color .1s ease-in-out 0s;
}

.wishlist_table tr td.product-add-to-cart a:hover {
    background-color: #c41923!important;
}

.wishlist_table tr {
    border-bottom: solid 1px black!important;
}

.wishlist_table thead tr {
    border-bottom: none!important;
}

.wishlist-title h2 {
    color: #3372b8;
    font-size: 2rem;
    font-weight: 500;
}

.wrapper-height-full .wpb_wrapper {
    height: 100%;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    background-color: #3372B8;
    border: none;
    border-radius: 8px;
    color: white;
    cursor: pointer;
    margin-bottom: 0;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 600;
    padding: .625rem 2rem;
    text-decoration: none;
    width: 100%;

    transition: background-color .15s linear;

    &:hover {
        background-color: #246195!important;
    }
}

.woocommerce #content div.product div.images, .woocommerce div.product div.images, .woocommerce-page #content div.product div.images, .woocommerce-page div.product div.images {
    flex: none!important;
    width: unset!important;
}

.woocommerce-order-details .wc-item-meta {
    font-size: .875rem!important;
    margin-top: .5rem!important;
}

[name="bongetta_product_gallery"] {
    @supports not selector(::-webkit-scrollbar) {
        scrollbar-width: thin;
        scrollbar-color: #3372b8 white;
    }

    &::-webkit-scrollbar-track {
        background-color: rgb(245 245 245);
        border: 3px solid transparent;
        border-radius: 10px;
        background-clip: padding-box;
    }

    &::-webkit-scrollbar {
        width: 10px;
    }

    &::-webkit-scrollbar-thumb {
        background-color: #3372b8;
        border: 3px solid transparent;
        border-radius: 10px;
        background-clip: padding-box;
    }
}

.woocommerce-tabs ul.tabs.wc-tabs {
    display: flex;
    padding: 0!important;
    margin: 0!important;
}

.woocommerce-tabs ul.tabs.wc-tabs::before {
    display: none!important;
}

.woocommerce-tabs ul.tabs.wc-tabs li {
    border-radius: 0!important;
    border: solid 1px black!important;
    border-bottom: none!important;
    font-size: 1.125rem;
    margin: 0!important;
    padding: .75rem 1rem!important;
}

.woocommerce-tabs ul.tabs.wc-tabs li {
    color: black;
}

.woocommerce-tabs ul.tabs.wc-tabs li.active {
    background-color: #3372b8!important;
    color: white!important;
}

.woocommerce-tabs ul.tabs.wc-tabs li:not(.active) {
    background-color: white!important;
    color: black!important;
}

.woocommerce-tabs ul.tabs.wc-tabs li:not(.active) a {
    color: black!important;
}

.woocommerce-tabs ul.tabs.wc-tabs li::before, .woocommerce-tabs ul.tabs.wc-tabs li::after {
    display: none!important;
}

.woocommerce-tabs ul.tabs.wc-tabs li:first-of-type {
    border-radius: 5px 0 0 0!important;
}

.woocommerce-tabs ul.tabs.wc-tabs li:last-of-type {
    border-radius: 0 5px 0 0!important;
}

.woocommerce-tabs .wc-tab {
    border: solid 1px black!important;
    border-radius: 0 5px 5px 5px!important;
    padding: 3rem 1rem!important;
}

.woocommerce-tabs .wc-tab h2 {
    display: none;
}

body.single-product:has(main>div.product-type-variable) {
    & .select2-container {
        & .select2-results__option {
            padding: .5rem 1rem!important;
        }
    }

    span.selection .select2-selection.select2-selection--single {
        background-color: #f5f5f5;
    }
}

.woocommerce table.variations td.value>select:focus {
    border-color: black!important;
}

.woocommerce table.variations td.value>select:focus-visible {
    outline-width: 0;
    box-shadow: none;
}

.woocommerce div.product div.images .woocommerce-product-gallery__trigger {
    right: unset !important;
    left: .5rem;
}

.woocommerce div.product .woocommerce-variation-price del {
    text-decoration: none;

    & bdi {
        text-decoration: line-through;
        text-decoration-color: #3372b8!important;
    }
}

.woocommerce div.product .woocommerce-variation-price ins {
    text-decoration-color: #3372b8!important;
}

.woocommerce div.product .woocommerce-variation-price bdi {
    color: #3372b8!important;
    font-size: 1.25rem!important;
    font-weight: 600!important;
}

.yith-add-to-wishlist-button-block {
    margin-left: 0!important;
}

.yith-wcwl-add-to-wishlist-button {
    text-decoration: none;
}

.yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--anchor img {
    height: 2rem;
    width: 2rem;
    max-width: 2rem;
}

.yith-wcwl-add-to-wishlist-button__label {
    color: #3372b8!important;
    font-size: .875rem;
    font-weight: 600;
    text-transform: uppercase;
}

.contact-us-social-row .wpb_wrapper {
    display: flex;
    gap: 1rem;
}

.range_container {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0;
}

.range_container .sliders_control {
    display: flex;
    align-items: center;
    position: relative;
    min-height: 50px;
}

.range_container .form_control {
    position: absolute;
    display: flex;
    justify-content: space-between;
    font-size: 24px;
    color: #635a5a;
    bottom: -1.25rem;
    width: 100%;
}

.range_container .form_control .form_control_container {
    display: flex;
    gap: 4px;
}

.range_container input[type="range"] {
    -webkit-appearance: none;
    appearance: none;
    height: 2px;
    width: 100%;
    margin: 0;
    position: absolute;
    background-color: #C6C6C6;
    pointer-events: none;
}

.range_container input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    pointer-events: all;
    width: 2rem;
    height: 2rem;
    background-color: transparent;
    background-image: url('img/icons/price_filter.svg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    border-radius: 50%;
    box-shadow: none;
    cursor: pointer;
}

.range_container input[type=range]::-moz-range-thumb {
    -webkit-appearance: none;
    pointer-events: all;
    width: 2rem;
    height: 2rem;
    background-color: transparent;
    background-image: url('img/icons/price_filter.svg');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    border-radius: 50%;
    cursor: pointer;
}

.range_container input[type=range]::-webkit-slider-thumb:active,.range_container input[type=range]::-webkit-slider-thumb:hover {
    filter: drop-shadow(0 0 9px #387bbe);
}

.range_container [name="fromSlider"] {
    height: 0!important;
    z-index: 1;
}

.woocommerce div.products.bgt-loop {
    margin: 0;
    padding: 0;
    clear: both;
}

.woocommerce-ordering .orderby {
    padding: .5rem 1rem!important;
    font-size: .875rem;
}

.woocommerce nav.woocommerce-pagination {
    margin-top: 2rem;
}

div[data-role="content"] {
    @supports not selector(::-webkit-scrollbar) {
        scrollbar-width: thin;
        scrollbar-color: white transparent;
    }

    &::-webkit-scrollbar-track {
        background-color: transparent;
        border: 3px solid transparent;
        border-radius: 10px;
        background-clip: padding-box;
    }

    &::-webkit-scrollbar {
        width: 12px;
    }

    &::-webkit-scrollbar-thumb {
        background-color: white;
        border: 3px solid transparent;
        border-radius: 10px;
        background-clip: padding-box;
    }
}

.footer-widgets h3 {
    margin: 0;
    font-size: 1rem;
    font-weight: bold!important;
}

.footer-widgets ul {
    list-style: none inside none;
    padding: 0;

    & a {
        color: black!important;
        text-decoration: none!important;

        &:hover {
            color: #3372b8!important;
        }
    }

    & a:not(.text-xs) {
        font-weight: 400!important;
        font-size: .875rem!important;
    }
}

.guaven_woos_suggestion {
    border: solid 1px black!important;
    border-radius: 0.75rem!important;
    padding: 3px !important;
    color: #737373!important;
    font-family: arial, sans-serif!important;
    font-size: 13.3333px!important;
    font-weight: 600!important;
    margin-top: .5rem!important;

    & .guaven_woos_suggestion_list:last-of-type {
        margin-bottom: 0!important;
    }

    & .guaven_woos_suggestion_list {
        margin-bottom: 10px;
        background: #f5f5f5;
        border-radius: 5px;
        border: solid 1px #d4d4d4;
        display: flex;

        &>a {
            display: flex;
            width: 100%;
            align-items: center;
            text-decoration: none;

            & .guaven_woos_div {
                float: none;
                display: flex;
                height: 100%;
                line-height: 0;

                & img {
                    position: relative;
                }
            }

            & .guaven_woos_titlediv {
                margin-left: 0;
                font-weight: 600;
                flex-grow: 1;
                color: #3372b8;
            }
        }
    }

    & .guaven_woos_suggestion_list:hover {
        background: #3372b8;

        & .guaven_woos_titlediv {
            margin-left: 0;
            font-weight: 600;
            flex-grow: 1;
            color: white;
        }
    }
}

.woocommerce div.variations a.reset_variations {
    background-color: #FF1624!important;
    border-radius: 5px!important;
    color: white!important;
    display: block!important;
    margin-top: 1rem!important;
    font-size: .75rem!important;
    font-weight: 600!important;
    padding: .75rem 1.25rem!important;
    text-decoration: none!important;
    text-transform: uppercase!important;
    width: fit-content!important;
}

.devnet_fsl-free-shipping.fsl-center-text.bar-type-linear.fsl-layout-default {
    box-shadow: none!important;
    margin-top: 0!important;
    padding: 0!important;

    & .fsl-title.title {
        font-size: 1rem!important;
        text-transform: uppercase!important;
    }

    & .fsl-progress-bar {
        margin-top: .25rem!important;
        margin-bottom: .5rem!important;
    }

    & .fsl-description {
        font-size: .875rem!important;
    }

    & .fsl-progress-amount {
        height: .75rem!important;
    }
}

.woocommerce-pagination {
    &>.page-numbers {
        border: none!important;
        display: flex!important;
        justify-content: center!important;
        gap: .5rem;

        & li {
            height: 2.5rem;
            width: 2.5rem;

            border: none!important;
            align-items: center!important;
            display: flex!important;
            justify-content: center!important;

            & .page-numbers {
                color: #ff1624;

                display: flex;
                align-items: center;
                justify-content: center;

                border: solid 1px #3372b8!important;
                border-radius: 100%!important;

                height: 100%;
                width: 100%;

                font-size: 1rem!important;
                font-weight: 600;

                &.prev, &.next {
                    border: solid 1px #000000 !important;
                    background-color: #ffea66 !important;
                    color: #df860e !important;
                }

                &.current, &:not(.prev):not(.next):hover {
                    background-color: #3372b8!important;
                    color: white;
                }
            }
        }
    }
}

.bgt-cf {
    & input {
        &::placeholder {
            font-weight: 600;
        }
    }
}

.bgt-cf-button {
    margin-top: .5rem;
    border: none;
    border-radius: 0.75rem;
    padding: 1rem 2rem;
    width: fit-content;
    background-color: #FF1624;
    font-size: 1rem;
    color: white;
    font-weight: 600!important;
    cursor: pointer!important;
}

label[for="coupon_code"] {
    width: fit-content!important;
}

div:has(>div.custom-html-widget>div.title-center) h3 {
    text-align: center!important;
}

body.single-post {
    & a {
        text-decoration: none!important;
        font-weight: 600!important;
    }

    & ul {
        list-style-position: inside;
        padding: 0;
    }

    & .single-meta a {
        color: #E94F1D!important;
        text-transform: none!important;
    }
}

.custom-pagination {
    & nav.navigation.pagination {
        display: flex;
        justify-content: center;

        & div.nav-links {
            display: flex;
            justify-content: center;
            gap: .5rem;

            & .page-numbers {
                border-radius: 100%;
                height: 2.5rem;
                width: 2.5rem;
                align-items: center;
                display: flex;
                justify-content: center;
                text-decoration: none;

                color: #ff1624;
                border: solid 1px #3372b8;
                font-size: 1rem;
                font-weight: 600;
            }

            & .page-numbers.dots {
                border: none!important;
            }

            & .page-numbers:not(.dots):hover, & .page-numbers.current {
                background-color: #3372b8;
                color: white;
            }

            & .prev.page-numbers, & .next.page-numbers {
                border: solid 1px #000000 !important;
                background-color: #ffea66 !important;
                color: #df860e !important;
            }
        }
    }
}

#tab-reviews {
    padding-bottom: 1rem!important;
}

.woocommerce-Reviews {

    & ol.commentlist {
        padding-left: 0!important;

        & li.review {
            & img {
                width: 81.27px!important;
                height: 81.27px!important;
                border-radius: 5px!important;
                padding:0!important;
                border: solid 1px black!important;
            }

            & div.comment-text {
                margin-left: calc(81.27px + 1rem)!important;
                padding: 1rem!important;
                border: solid 1px black!important;
                border-radius: 5px!important;

                & .woocommerce-review__author {
                    color: #ff1624;
                    text-transform: uppercase!important;
                }

                & .woocommerce-review__published-date {
                    color: black!important;
                    font-weight: 500!important;
                }
            }

            & .star-rating, & .star-rating::before {
                font-size: 1.25rem!important;
            }

            & .star-rating>span::before {
                color: #ff1624!important;
                font-size: 1.25rem!important;
            }

            & div.description {
                font-size: .875rem!important;

                & p {
                    margin: 0!important;
                }
            }
        }
    }

    & .woocommerce-noreviews {
        text-transform: uppercase;
        font-size: 1.25rem!important;
        font-weight: 600!important;
    }

    & #review_form_wrapper {
        margin-top: 1rem;
    }

    & .comment-respond {
        margin-top: 2rem;
        border: solid 1px black!important;
        border-radius: 5px!important;

        & .comment-notes {
            font-size: .75rem!important;
            font-weight: 600!important;
            margin-bottom: 1rem!important;
        }

        & .comment-reply-title {
            display: block;
            padding: 1rem!important;
            background-color: #FF1624;
            color: white!important;
            font-size: 1.25rem!important;
            font-weight: 600;
            text-transform: uppercase;
        }

        & #commentform {
            padding: 1rem!important;

            & p.stars a {
                width: 1.5rem!important;
                height: 1.5rem!important;

                &::before {
                    width: 1.5rem!important;
                    height: 1.5rem!important;
                    font-size: 1.5rem!important;
                    color: #3372b8!important;
                }
            }

            & p.form-submit {
                margin: 0!important;
            }

            & p:not(.form-submit) {
                margin: 0 0 1rem!important;
            }

            & label {
                font-weight: 600;
                color: #3372b8;
                text-transform: uppercase;
                margin-bottom: .25rem;
                display: block;

                & .required {
                    color: #FF1624;
                }
            }

            & input[type="text"], & input[type="email"], & textarea {
                border: solid 1px black;
                border-radius: 5px!important;
                padding: .5rem 1rem!important;
                width: 100%!important;
                font-family: Arial, sans-serif!important;
            }

            & input[type="submit"] {
                margin-bottom: 0!important;
                margin-top: 1rem!important;
                background-color: #FF1624!important;
                color: white!important;
                border-radius: 5px!important;
                padding: .75rem 1.5rem!important;
                text-transform: uppercase!important;
                transition: background-color .15s ease-in-out;

                &:hover {
                    background-color: #d70000!important;
                }
            }

            & p.comment-form-cookies-consent {
                display: none!important;
            }
        }
    }
}

.newsletter-button input {
    background-color: #e94f1d;
    border-radius: 5px!important;

    color: white!important;
    cursor: pointer!important;

    font-size: 1rem!important;
    font-weight: 600!important;

    margin-top: 1rem!important;

    padding: .625rem 2rem!important;

    transition: background-color .25s ease-in-out;

    &:hover {
        background-color: #c52d2d;
    }
}

/*.woocommerce form.login, .woocommerce form.register {
    border: 0!important;
    padding: inherit!important;
    margin: inherit!important;
    text-align: inherit!important;
    border-radius: 0!important;
}*/

.review-slider-full rp-slider {
    padding-bottom: 0!important;

    & rp-rating {
        color: white!important;
    }

    & rp-header {
        & rp-stars svg use {
            fill: white!important;
        }

        & rp-name {
            color: white!important;
        }
    }

    & rp-review-inner {
        padding: 12px;

        & rp-flex {
            margin-bottom: .5rem;

            & img {
                width: 2.5rem;
                height: 2.5rem;
                margin-right: .5rem;
                margin-bottom: 0;
            }

            & rp-review-name a {
                font-size: .875rem;
            }
        }
    }

    & rp-reply {
        margin-left: 0;
        font-size: .75rem;
    }

    & rp-review-text {
        font-size: .875rem;
    }
}

@media (max-width: 1536px) {
    #main:not(:has(>div.wpb-content-wrapper)) {
        margin-top: .5rem;
        margin-bottom: 3rem;
    }
}

@media (max-width: 1280px) {
    form.cart [name="add-to-cart"] {
        font-size: 1rem;
        padding: .875rem 1.25rem!important;
    }

    #main:not(:has(>div.wpb-content-wrapper)) {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    body.woocommerce-wishlist {
        & .wishlist-title-container a.show-title-form {
            display: none;
        }

        & .wishlist-title h2 {
            font-size: 1.5rem!important;
        }

        ul.wishlist_table {
            padding-left: 0!important;
        }

        .wishlist_table.mobile li .item-wrapper {
            width: 100% !important;
            display: flex!important;

            & .product-thumbnail {
                max-width: 68px!important;
                margin-right: 16px!important;

                & a {
                    display: block;
                }
            }
        }

        .wishlist_table.mobile li div.additional-info-wrapper {

            & div.product-add-to-cart {
                margin-bottom: 2rem!important;
            }

            & a.add_to_cart_button {
                background-color: #ef1923!important;
                border-radius: 5px!important;
                color: white!important;
                display: block!important;
                font-size: .875rem!important;
                margin-bottom: 0!important;
                padding: .75rem 1.25rem!important;
                text-decoration: none!important;
                text-transform: uppercase!important;
            }
        }

        .wishlist_table.mobile li .item-wrapper .item-details {
            width: 100% !important;
            display: flex!important;
            flex-direction: column;
            justify-content: center;

            & .product-name h3 {
                margin-top: 0;
                font-size: 1rem!important;
                text-transform: uppercase!important;

                & a {
                    text-decoration: none!important;
                }
            }

            & table.item-details-table {
                border-collapse: collapse;

                & tr {
                    border: none!important;
                }

                & td {
                    padding: 0.25rem 0!important;
                }
            }
        }
    }

    body.woocommerce-account main>.woocommerce {
        padding: 8px;
    }

    body.woocommerce-checkout.woocommerce-page main>div>div.woocommerce {
        margin-top: 1rem !important;
        padding-left: 1rem !important;
        padding-right: 1rem !important;
    }

    .vc_tta-title-text {
        font-size: .875rem!important;
    }
}

@media (min-width: 768px) and (max-width: 1536px) {
    .range_container .sliders_control {
        min-height: 2rem!important;
    }
}

@media (max-width: 767px) {

    .review-slider-full rp-slider {
        padding-bottom: 0!important;

        & rp-reviews {
            margin: 0!important;
        }

        & rp-header {
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            gap: .25rem;

            & rp-name {
                font-size: 1rem!important;
            }
        }

        & rp-flex {
            margin-bottom: .375rem;

            & img {
                width: 2.5rem;
                height: 2.5rem;
                margin-right: .5rem!important;
                margin-bottom: 0;
            }

            & rp-review-name a {
                font-size: .875rem;
            }

            & rp-rating {
                font-size: 1.25rem!important;
            }
        }

        & rp-header rp-stars svg {
            width: 1rem;
        }

        & rp-based {
            display: none!important;
        }

        & rp-review_us {
            margin: 0!important;
        }
    }

    .woocommerce-Reviews {

        & ol.commentlist {

            & li.review {

                & .comment_container {
                    display: flex;
                    flex-direction: column;
                }

                & img {
                    position: relative!important;
                    margin-bottom: .5rem!important;
                    width: 2.5rem!important;
                    height: 2.5rem!important;
                }

                & div.comment-text {
                    margin-left: 0!important;
                }

                & .star-rating, & .star-rating::before {
                    font-size: .875rem!important;
                }

                & .star-rating>span::before {
                    color: #ff1624!important;
                    font-size: .875rem!important;
                }
            }
        }

        & .woocommerce-noreviews {
            text-transform: uppercase;
            font-size: 1rem!important;
            font-weight: 600!important;
        }

        & #review_form_wrapper {
            margin-top: .875rem!important;
        }

        & .comment-respond {
            margin-top: 1rem!important;

            & .comment-notes {
                font-size: .75rem!important;
            }

            & .comment-reply-title {
                font-size: 1rem!important;
            }

            & #commentform {

                & label {
                    font-size: .75rem!important;
                }
            }
        }
    }

    .inner-left-0 .vc_column-inner {
        padding-left: 0 !important;
    }

    .inner-right-0 .vc_column-inner {
        padding-right: 0 !important;
    }

    .bgt-cf-button {
        width: 100%;
        font-size: .75rem;
    }


    body:not(.woocommerce-page) main#main:not(:has(>div.wpb-content-wrapper)) {
        padding-left: 1rem!important;
        padding-right: 1rem!important;

        margin-top: 1rem!important;
        margin-bottom: 2rem!important;
    }

    body.woocommerce-checkout.woocommerce-page main>div>div.woocommerce {
        margin-top: 1rem!important;
        padding-left: 1rem!important;
        padding-right: 1rem!important;
    }

    body.woocommerce-account main>.woocommerce {
        display: grid;
        flex-grow: 1;
        gap: 0.5rem;
        grid-template-columns: repeat(1, minmax(0, 1fr));

        margin: 1.5rem 0;
    }

    body.woocommerce-account main>.woocommerce .myaccount-navigation li.is-active::before {
        display: block;
        position: absolute;
        left: -1.5rem;
        width: 1.25rem;
        height: 1.25rem;
        content: ' ';
        background-image: url('img/icons/price_filter.svg');
        background-size: contain;
        background-repeat: no-repeat;
    }

    .footer-widgets h3 {
        margin: 0;
        font-size: 1rem;
        font-weight: bold!important;
    }

    .footer-widgets div:has(>img.image) {
        display: flex;
        justify-content: center;
    }

    .footer-widgets ul {
        list-style-position: inside;
        padding: 0;

        & a {
            color: black!important;
            text-decoration: none!important;

            &:hover {
                color: #3372b8!important;
            }
        }
    }

    .footer-widgets ul:not(.font-semibold) a {
        font-weight: 400!important;
    }

    .mobile-accordion .vc_tta-panel:not(.vc_active) .vc_tta-panel-heading {
        margin-bottom: 10px!important;
    }

    .mobile-accordion .vc_tta-panel.vc_active .vc_tta-panel-heading, .mobile-accordion .vc_tta-panel:not(:first-child) .vc_tta-panel-heading {
        margin-top: 10px!important;
    }

    .mobile-accordion {
        & .vc_tta-title-text {
            font-size: .875rem!important;
        }
    }

    .woocommerce table.shop_table_responsive tr td.product-thumbnail::before, .woocommerce-page table.shop_table_responsive tr td.product-thumbnail::before, .cart_totals tr:last-of-type td::before  {
        display: none!important;
    }

    .woocommerce table.shop_table_responsive tr td.product-remove {
        position: relative;
        padding: 0!important;

        & a.remove {
            position: absolute;
            top: 2.625rem!important;
        }
    }

    .round-cheese-icon figure::after {
        background-image: url('img/icons/price_filter.svg');
        background-size: contain;
        background-repeat: no-repeat;
        content: ' ';
        display: flex;
        height: 2.875rem;
        position: absolute;
        top: calc(15% - 2rem);
        right: calc(30% - 2rem);
        width: 2.875rem;
    }

    .small-imgs .vc_single_image-wrapper {
        width: 60% !important;
    }

    .woocommerce-tabs ul.tabs.wc-tabs {
        flex-direction: column;
    }

    .woocommerce-tabs ul.tabs.wc-tabs li {
        font-size: 1rem!important;
        padding: .5rem 1rem!important;
    }

    .woocommerce-tabs .wc-tab {
        padding: 1rem!important;
        font-size: .875rem;
    }

    .woocommerce-tabs ul.tabs.wc-tabs li:first-of-type {
        border-radius: 5px 5px 0 0 !important;
    }

    .woocommerce-tabs ul.tabs.wc-tabs li:last-of-type {
        border-radius: 0!important;
    }

    .woocommerce-tabs .wc-tab {
        aspect-ratio: 0.75;
        overflow-y: auto;
        border-radius: 0 0 5px 5px !important;
    }

    form.cart [name="add-to-cart"] {
        padding: 1rem 1.25rem!important;
        font-size: 1rem!important;
        font-weight: 600!important;
    }

    .woocommerce div.variations div.value>select {
        font-size: .875rem!important;
    }

    .woocommerce div.product .woocommerce-variation-price bdi {
        font-size: 1.125rem!important;
    }
}


@keyframes progress {
    0% { background-position-x: 0; }
    10% { background-position-x: 100px; }
    20% { background-position-x: 200px; }
    30% { background-position-x: 300px; }
    40% { background-position-x: 400px; }
    48% { background-position-x: 440px; }
    50% { background-position-x: 450px; }
    52% { background-position-x: 440px; }
    60% { background-position-x: 400px; }
    70% { background-position-x: 300px; }
    80% { background-position-x: 200px; }
    90% { background-position-x: 100px; }
    100% { background-position-x: 0 }
}

/* Spaziatura descrizione categoria/archivio prodotti (woocommerce_archive_description) */
.woocommerce-products-header .term-description,
.term-description {
    margin-top: 0.75rem;
    margin-bottom: 2rem;
}
