:root {
    scrollbar-color: var(--color500) var(--color100);
}

#Content {
    padding-top: var(--shop-header-height) !important;
}

#ShopIntro {
    overflow: hidden;
}

#Subheader {
    display: none;
}


/*********************************\
              HEADER
\*********************************/
/* Shop menu */
.shop-menu .mfn-header-menu {
    & > li > a {
        .menu-label {
            transition: transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
            -webkit-transition: transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
            -moz-transition: transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
            -ms-transition: transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
            -o-transition: transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
        }

        &:before {
            content: '';
            position: absolute;
            width: 100%;
            height: 1px;
            background: currentColor;
            top: 100%;
            left: 0;
            transform-origin: 50% 100%;
            clip-path: polygon(0% 0%, 0% 100%, 0 100%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%, 100% 100%, 100% 0%);
            transition: clip-path 0.3s, transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
            -webkit-transition: clip-path 0.3s, transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
            -moz-transition: clip-path 0.3s, transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
            -ms-transition: clip-path 0.3s, transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
            -o-transition: clip-path 0.3s, transform 0.3s cubic-bezier(0.2, 1, 0.8, 1);
        }

        &:hover {
            .menu-label {
                transform: translate3d(0, -2px, 0);
                -webkit-transform: translate3d(0, -2px, 0);
                -moz-transform: translate3d(0, -2px, 0);
                -ms-transform: translate3d(0, -2px, 0);
                -o-transform: translate3d(0, -2px, 0);
            }

            &:before {
                clip-path: polygon(0% 0%, 0% 100%, 50% 100%, 50% 0, 50% 0, 50% 100%, 50% 100%, 0 100%, 100% 100%, 100% 0%);
                transform: translate3d(0, 2px, 0) scale3d(1.08, 3, 1);
                -webkit-transform: translate3d(0, 2px, 0) scale3d(1.08, 3, 1);
                -moz-transform: translate3d(0, 2px, 0) scale3d(1.08, 3, 1);
                -ms-transform: translate3d(0, 2px, 0) scale3d(1.08, 3, 1);
                -o-transform: translate3d(0, 2px, 0) scale3d(1.08, 3, 1);
            }
        }
    }
}

/* Megamenu */
.mfn-header-menu li.mfn-menu-item-has-megamenu {
    .mfn-menu-item-megamenu {
        padding-top: 13px !important;
    
        .mfn-megamenu-overlay {
            background: rgba(255, 255, 255, 0);
        }
    }

    &.hover-megamenu {
        .mfn-menu-item-megamenu {    
            .mfn-megamenu-overlay {
                background: rgba(255, 255, 255, 0.16);

                @starting-style {
                    backdrop-filter: blur(0px);
                    background: rgba(255, 255, 255, 0);
                }
            }
        } 
    }
}

/* My account modal */
.mfn-header-login {
    margin-top: 41px;
    position: fixed;
    box-shadow: 0 4px 8px 4px rgb(46 46 46 / 10%);
}

.admin-bar {
    .mfn-header-login {
        top: calc(var(--shop-header-height) + var(--admin-bar-height)) !important;
    }
}

/* Searcg */
.mfn-header-tmpl .column_header_icon {
    .search_wrapper {
        width: 100%;
        max-width: 100%;
        height: 100%;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, 0);
        backdrop-filter: blur(0px);
        box-shadow: none;
        border-radius: 0;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        -ms-border-radius: 0;
        -o-border-radius: 0;
        transition: background .6s ease, backdrop-filter .6s ease, display .6s ease allow-discrete;
        -webkit-transition: background .6s ease, backdrop-filter .6s ease, display .6s ease allow-discrete;
        -moz-transition: background .6s ease, backdrop-filter .6s ease, display .6s ease allow-discrete;
        -ms-transition: background .6s ease, backdrop-filter .6s ease, display .6s ease allow-discrete;
        -o-transition: background .6s ease, backdrop-filter .6s ease, display .6s ease allow-discrete;

        .form-searchform {
            max-width: 80%;
            width: 600px;
            background: var(--color100);
            border-radius: 8px;
            -webkit-border-radius: 8px;
            -moz-border-radius: 8px;
            -ms-border-radius: 8px;
            -o-border-radius: 8px;
            box-shadow: 0 0 15px rgb(0 0 0 / 50%);
            opacity: 0;
            transition: opacity .6s ease;
            -webkit-transition: opacity .6s ease;
            -moz-transition: opacity .6s ease;
            -ms-transition: opacity .6s ease;
            -o-transition: opacity .6s ease;
        }
    }

    .mfn-searchbar-active {
        .search_wrapper {
            display: flex;
            background: rgba(255, 255, 255, 0.16);
            backdrop-filter: blur(8px);

            .form-searchform {
                opacity: 1;

                @starting-style {
                    opacity: 0;
                }
            }

            @starting-style {
                backdrop-filter: blur(0px);
                background: rgba(255, 255, 255, 0);
            }
        }
    }
}

/*********************************\
          FICHA PRODUCTO
\*********************************/
.woocommerce.single-product .product {
    .delivery-info-link {
        display: inline-block;
        margin-left: var(--size-psmall);
        font-weight: 700;
        text-decoration: underline;
        color: var(--color400);
    
        &:hover {
            color: var(--orange);
        }
    }

    .single_variation_wrap {
        .woocommerce-variation {
            display: none !important;
        }
    }

    .woocommerce-product-rating .star-rating > span {
        color: var(--color600);

        &:before {
            color: var(--yellow-strong);
        }
    }

    .stock {
        display: none !important;
    }

    /* Galería de imágenes */
    .woocommerce-product-gallery {
        .mfn-product-badges {
            display: none;
        }

        .mfn-wish-button {
            right: auto;
            left: 0;
            top: 0;
            background: rgba(46, 46, 46, 0.6);
            backdrop-filter: blur(8px);
            font-size: round(calc( var(--size-p) * 1.72 ), 1px);
            width: 1.6em;
            height: 1.6em;
            display: flex;
            align-items: center;
            justify-content: center;
            color: var(--color100);
            transition: all 0.3s ease-in-out;
            -webkit-transition: all 0.3s ease-in-out;
            -moz-transition: all 0.3s ease-in-out;
            -ms-transition: all 0.3s ease-in-out;
            -o-transition: all 0.3s ease-in-out;

            &:hover {
                background: rgba(20, 20, 20, 0.6);
            }

            i.frinsasolo-love-fill {
                display: none;
            }

            &.loved {
                i.frinsasolo-love {
                    display: none;
                }

                i.frinsasolo-love-fill {
                    display: block;
                    animation: love-fill 0.2s ease-in-out;
                    -webkit-animation: love-fill 0.2s ease-in-out;
                }
            }
        }

        .mfn-flex-control-thumbs-wrapper {
            .flex-control-nav {
                li {
                    background: var(--color125);
                    border-radius: 28px;
                    -webkit-border-radius: 28px;
                    -moz-border-radius: 28px;
                    -ms-border-radius: 28px;
                    -o-border-radius: 28px;
                    position: relative;
    
                    img {
                        opacity: .4 !important;
                        z-index: 1;
                        transition: all 0.3s ease-in-out;
                        -webkit-transition: all 0.3s ease-in-out;
                        -moz-transition: all 0.3s ease-in-out;
                        -ms-transition: all 0.3s ease-in-out;
                        -o-transition: all 0.3s ease-in-out;
                        position: relative;
                        width: 100%;
                        aspect-ratio: 1;
                        object-fit: cover;
    
                        &.flex-active {
                            opacity: 1 !important;
                        }
                    }
    
                    &:before {
                        content: '';
                        position: absolute;
                        top: 0;
                        left: 0;
                        width: 100%;
                        height: 100%;
                        background: var(--color100);
                        opacity: .6;
                        z-index: 0;
                    }
    
                    &:hover img {
                        opacity: 1 !important;
                    }
                }
            }

            .mfn-swiper-arrow {
                cursor: pointer;

                i {
                    font-size: round(calc( var(--size-p) * 1.42 ), 1px);
                }
            }
        }
    }

    /* Valoraciones */
    .woocommerce-product-rating {
        display: flex;
        align-items: center;
        line-height: 1.2;
        gap: 12px;
        margin: 0 0 24px;

        .star-rating {
            margin: 0;
        }
    
        .woocommerce-review-link {
            text-decoration: underline;
    
            &:hover {
                color: var(--orange) !important;
                text-decoration: none;
            }
        }
    
        &:before,
        &:after {
            content: none;
        }
    }
    
    /* Metas */
    .column_product_meta {
        & > .mcb-column-inner {
            display: flex;
            justify-content: space-between;
            gap: 16px;
        }
    
        .posted_in {
            margin: 0 !important;
    
            a:hover {
                color: var(--orange) !important;
            }
        }
    
        .share-social-links {
            display: flex;
            align-items: center;
            gap: 12px;
    
            .label {
                margin-right: 4px;
                color: var(--color300);
            }
    
            a {
                color: var(--color400);
                font-size: var(--size-price);
                line-height: 1;
                transition: all 0.3s ease-in-out;
                -webkit-transition: all 0.3s ease-in-out;
                -moz-transition: all 0.3s ease-in-out;
                -ms-transition: all 0.3s ease-in-out;
                -o-transition: all 0.3s ease-in-out;
    
                &:hover {
                    color: var(--orange);
                }
            }
        }
    }
    
    /* Contenedor de precio y pesos */
    .price-container {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        background: var(--color125);
        border-radius: 24px;
        -webkit-border-radius: 24px;
        -moz-border-radius: 24px;
        -ms-border-radius: 24px;
        -o-border-radius: 24px;
        padding: 24px;
        margin: 0 0 24px;
    
        .price {
            display: flex;
            flex-wrap: wrap;
            align-items: flex-end;
            font-variant-numeric: lining-nums proportional-nums;
            color: var(--color300);
            gap: 0 8px;
            flex-grow: 1;
    
            & > .amount,
            ins .amount {
                font-size: var(--size-h3);
                line-height: 1.4;
                font-weight: 600;
                color: var(--color600);
                letter-spacing: 0;
            }
    
            ins {
                text-decoration: none;
            }
    
            del {
                color: var(--red);
                font-size: var(--size-plead);
                line-height: 1.4;
                font-weight: 600;
                letter-spacing: 0;
                margin-bottom: .25em;
            }
    
            .woocommerce-price-suffix {
                font-size: var(--size-psmall);
                line-height: 1.4;
                width: 100%;
            }
        }
    
        .weights {
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            gap: 4px;
            color: var(--color300);
            font-size: var(--size-psmall);
            line-height: 1.4;
        
            .value {
                color: var(--color500);
            }
    
            .price-per-kg {
                margin-top: 4px;
            }
        }
    }

    /* Cantidad y botón de añadir al carrito */
    .quantity {
        margin-right:24px !important;

        input {
            border-radius: 100px;
            -webkit-border-radius: 100px;
            -moz-border-radius: 100px;
            -ms-border-radius: 100px;
            -o-border-radius: 100px;
            font-variant-numeric: lining-nums proportional-nums;
            font-size: var(--size-plead);
            font-weight: 500;
        }
    }

    .ppcp-messages, .ppc-button-wrapper {
        display: none !important;
    }

    /* Variaciones */
    .variation-option {
        display: flex;
        flex-direction: column;
        gap: 8px;
        color: var(--color300);
        margin: 0 0 24px;

        .variation-values {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 8px 24px;

            .variation-value {
                display: flex;
                gap: 16px;
                align-items: center;
                cursor: pointer;
                transition: all 0.3s ease-in-out;
                -webkit-transition: all 0.3s ease-in-out;
                -moz-transition: all 0.3s ease-in-out;
                -ms-transition: all 0.3s ease-in-out;
                -o-transition: all 0.3s ease-in-out;
                outline: solid 1px var(--color200);
                border-radius: 16px;
                -webkit-border-radius: 16px;
                -moz-border-radius: 16px;
                -ms-border-radius: 16px;
                -o-border-radius: 16px;
                padding: 10px 16px;

                &:hover {
                    outline-color: var(--orange-strong);
                }

                &.selected {
                    outline-color: var(--orange-strong);
                    outline-width: 3px;

                    .variation-info {
                        color: var(--color600);
                        font-weight: 600;
                    }
                }
                
                .variation-image {
                    line-height: 0;

                    img {
                        width: 80px;
                        aspect-ratio: 1;
                        object-fit: cover;
                    }
                }

                .variation-info {
                    display: flex;
                    flex-direction: column;
                    gap: 4px;
                    color: var(--color400);
                    transition: all 0.3s ease-in-out;
                    -webkit-transition: all 0.3s ease-in-out;
                    -moz-transition: all 0.3s ease-in-out;
                    -ms-transition: all 0.3s ease-in-out;
                    -o-transition: all 0.3s ease-in-out;

                    .variation-price {
                        font-size: var(--size-price);
                        line-height: 1.4;
                        font-weight: 600;
                        color: var(--color600);
                        letter-spacing: 0;
                        font-variant-numeric: lining-nums proportional-nums;
                    }
                }
            }
        }
    }

    /* Contenido packs */
    .woosb-bundled{
        .woosb-products {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 8px 24px;
            margin: 0 0 28px;
            
            .woosb-item-product {
                margin: 0;
                width: 100%;
                padding: 0;
                gap: 6px;
                align-items: center;
                border: 0;
                flex-direction: row;

                .woosb-thumb {
                    width: 60px !important;
                    margin: 0;

                    img {
                        width: 100%;
                        aspect-ratio: 1;
                        object-fit: cover;
                    }
                }

                .woosb-title {
                    width: auto !important;
                    flex: 1 !important;
                    color: var(--color300);
                    font-size: var(--size-p);
                    line-height: 1.4;
                    margin: 0;
                    padding: 0;
                    text-align: left;

                    .woosb-name {
                        font-weight: 400;

                        a {
                            color: var(--color300);
                        }
                    }
                }
            }
        }

        .woosb-before-text {
            color: var(--color600);
            font-weight: 600;
            margin: 34px 0 6px;
        }
    }
}

.pswp__bg {
    background: rgba(0, 0, 0, .6);
    backdrop-filter: blur(16px);
}

/* Pestaña de ingredientes */
.mfn-woocommerce-tabs-content > .section_wrapper {
    flex-grow: 1;
}

.ingredients-container {
    display: flex;
    width: 100%;

    & > div {
        width: 50%;
    }

    .ingredients-left {
        padding-right: 64px;
        display: flex;
        flex-direction: column;
        gap: 24px;

        .title,
        .desc p:last-child {
            margin: 0;
        }

        .ingredients-list {
            display: flex;
            flex-direction: column;
            gap: 16px;

            .ingredient {
                display: flex;
                align-items: center;
                gap: 8px;

                .icon {
                    width: round(calc( var(--size-p) * 1.78 ), 1px);
                    height: round(calc( var(--size-p) * 1.78 ), 1px);
                    line-height: 0;

                    img {
                        width: 100%;
                        height: 100%;
                        object-fit: contain;
                    }
                }

                .more-info {
                    margin-left: 10px;
                    font-style: italic;
                    color: var(--color300);
                }
            }
        }

        .otros-mensajes {
            color: var(--color300);
            font-style: italic;
        }
    }

    .nutritional-info {
        .lead {
            text-align: right;
            font-weight: 600;
            color: var(--color300);
            margin: 0 0 8px;
        }

        .nutritional-table {
            display: flex;
            flex-direction: column;
            width: 100%;
            border-top: solid 1px var(--color150);

            .row {
                display: flex;
                flex-wrap: wrap;
                align-items: center;
                justify-content: space-between;
                width: 100%;
                padding: 8px 0;
                border-bottom: solid 1px var(--color150);

                .value {
                    font-weight: 600;
                    color: var(--color600);
                }

                .inside-row {
                    width: 100%;
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    padding: 0 0 0 16px;

                    .label {
                        color: var(--color300);
                        font-style: italic;
                    }
                }
            }
        }
    }
}

/* Pestaña de otra información */
.other-info-container {
    display: flex;
    width: 100%;

    & > div {
        width: 50%;
    }

    .other-info-left {
        padding-right: 64px;
        display: flex;
        flex-direction: column;
        gap: 24px;

        .title {
            margin: 0;
        }
    }

    .other-info-right {
        display: flex;
        flex-direction: column;
        gap: 32px;

        .sanitary-info {
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            border-top: solid 1px var(--color150);
            border-bottom: solid 1px var(--color150);
            padding: 12px 0;

            p {
                margin: 0;

                &.content {
                    font-weight: 600;
                }
            }
        }

        .icons {
            display: flex;
            flex-wrap: wrap;
            gap: 24px;
            align-items: center;
            justify-content: flex-end;

            .icon {
                width: 80px;
                height: 80px;
                line-height: 0;

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: contain;
                }
            }
        }
    }
}

/* Pestaña de FAQs */
.faqs-container {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 64px;

    & > .title {
        width: 100%;
        margin: 0;
        text-align: center;
    }
    
    .faqs-list {
        width: calc(50% - 32px);

        .toggle-bar {
            padding: 0;

            .toggle-heading {
                color: var(--color600);
            }

            .toggle-icon i {
                font-size: round(calc( var(--size-p) * 1.78 ), 1px);
                color: var(--color600);
            }
        }

        .toggle-content {
            margin: 12px 0 0;
        }

        .toggle-divider {
            margin: 24px 0;
            background-color: var(--color150);
        }
    }
}

/* Pestaña de valoraciones */
.mfn-woocommerce-tabs-nav .number {
    font-size: var(--size-psmall);
    line-height: 1;
    vertical-align: super;

    &:before {
        content: "(";
    }

    &:after {
        content: ")";
    }
}

.mfn-header-login {
    p.lead {
        font-weight: 600;
    }

    .woocommerce-form .form-row.form-row-first .input-text,
    .woocommerce-form .form-row.form-row-last .input-text {
        padding: 10px 10px 10px 40px;
    }
}

/* Añadir al carrito en el footer */
.fixed-add-to-cart {
    position: fixed;
    bottom: 0;
    left: 0;
    background: var(--color125);
    z-index: 10000;
    width: 100%;
    padding: 6px 0;
    border-top: solid 1px var(--color150);
    transform: translateY(100%);
    -webkit-transform: translateY(100%);
    -moz-transform: translateY(100%);
    -ms-transform: translateY(100%);
    -o-transform: translateY(100%);
    transition: all .8s ease-in-out;
    -webkit-transition: all .8s ease-in-out;
    -moz-transition: all .8s ease-in-out;
    -ms-transition: all .8s ease-in-out;
    -o-transition: all .8s ease-in-out;

    .content {
        max-width: calc(2 * var(--halfSection));
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: center;

        .left {
            display: flex;
            align-items: center;
            gap: 16px;
            flex: 1;

            .image {
                width: 100px;
                height: 100px;
                line-height: 0;

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                }
            }

            .info {
                display: flex;
                flex-direction: column;
                gap: 4px;

                .price {
                    font-size: var(--size-price);
                    line-height: 1.4;
                    font-weight: 600;
                    color: var(--color600);
                    letter-spacing: 0;

                    .woocommerce-price-suffix {
                        display: none;
                    }
                }
            }
        }

        .right {
            display: flex;
            align-items: center;
            gap: 24px;

            .quantity {
                display: flex;
                align-items: center;
                width: auto;

                .quantity-btn {
                    background: var(--color100);
                    font-size: round(calc( var(--size-p) * 1.39 ), 1px);
                    line-height: 1;
                    padding: 3px;
                    border: solid 1px var(--color200);
                    border-radius: 50px;
                    -webkit-border-radius: 50px;
                    -moz-border-radius: 50px;
                    -ms-border-radius: 50px;
                    -o-border-radius: 50px;
            
                    i {
                        color: var(--color600); 
                    }
            
                    &:hover {
                        background-color: var(--color600);
            
                        i {
                            color: var(--color100);
                        }
                    }
                }

                .qty {
                    background: none;
                    border: 0;
                    text-align: center;
                    width: 3em;
                    padding: 0 12px !important;
                    box-shadow: none;
                    font-weight: 500;
                    appearance: textfield;
                    -moz-appearance: textfield;
                    font-size: var(--size-plead);
                    line-height: 1.4;
            
                    &::-webkit-outer-spin-button,
                    &::-webkit-inner-spin-button {
                        -webkit-appearance: none;
                        margin: 0;
                    }
                }
            }

            .button {
                margin-left: 10px;
            }
        }
    }

    &.active {
        transform: translateY(0);
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
    }
}


/*********************************\
           CUSTOM PACK
\*********************************/
.woocommerce.single-product .product .custom-pack {
    .custom-pack-container {
        display: none;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: space-between;

        .custom-pack-title {
            order: 1;
            width: 50%;
            margin: 0 0 9px;
        }

        .price-container {
            order: 3;
            width: fit-content;
            background: none;
            border-radius: 0;
            -webkit-border-radius: 0;
            -moz-border-radius: 0;
            -ms-border-radius: 0;
            -o-border-radius: 0;
            padding: 0;
            margin: 0 0 0 24px;

            .price {
                flex-direction: column;
                text-align: right;
            }

            .weights {
                display: none;
            }
        }

        .woosb-wrap {
            order: 4;
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: flex-end;

            .woosb-products {
                grid-template-columns: repeat(5, 1fr);
                gap: 12px;
                margin: 0;
                order: 3;
                width: 100%;

                .woosb-item-product {
                    flex-direction: column;
                    background: var(--color125);
                    border-radius: 24px;
                    -webkit-border-radius: 24px;
                    -moz-border-radius: 24px;
                    -ms-border-radius: 24px;
                    -o-border-radius: 24px;
                    padding: 12px 24px 24px;
                    gap: 0;
                    border: solid 2px var(--color600);
                    transition: all 0.3s ease;
                    -webkit-transition: all 0.3s ease;
                    -moz-transition: all 0.3s ease;
                    -ms-transition: all 0.3s ease;
                    -o-transition: all 0.3s ease;

                    .woosb-thumb {
                        width: 100% !important;
                    }

                    .woosb-title {
                        text-align: center;
                        margin: 0 0 12px;

                        a {
                            color: var(--color600);
                            font-weight: 600;
                        }
                    }

                    .quantity {
                        margin: 0 !important;
                        width: 100%;

                        input {
                            background: none;
                            border: 0;
                            text-align: center;
                            padding: 0 calc( var(--size-p) * 2 ) !important;
                            box-shadow: none;
                            font-weight: 500;
                            appearance: textfield;
                            -moz-appearance: textfield;
                            font-size: var(--size-plead);
                            line-height: 1.4;
                            height: calc( var(--size-p) * 1.5 );
                        }

                        .quantity-change {
                            font-size: var(--size-p);
                            width: 1.5em;
                            height: 1.5em;
                            background: var(--color100);
                            line-height: 1;
                            border: solid 1px var(--color200);
                            border-radius: 50px;
                            -webkit-border-radius: 50px;
                            -moz-border-radius: 50px;
                            -ms-border-radius: 50px;
                            -o-border-radius: 50px;
                            top: 0;

                            &.minus {
                                left: 0;
                            }

                            &.plus {
                                right: 0;
                            }

                            &:hover {
                                background: var(--color600);
                                color: var(--color100);
                            }
                        }
                    }

                    &[data-qty="0"] {
                        border-color: var(--color125);
                    }
                }
            }

            .woosb-summary {
                order: 2;

                .woosb-total {
                    display: none !important;
                }
            }

            .woosb-alert {
                order: 1;
                width: 100%;
            }
        }

        .button-step-wrapper {
            order: 10;
            width: 100%;
            display: flex;
            align-items: center;
            padding: 24px 0 0;

            .button {
                &.disabled {
                    pointer-events: none;
                }
            }
        }

        &.step-1 {
            .button-step-wrapper {
                order: 2;
                justify-content: flex-end;
                padding: 10px 0 0;
                width: auto;
                flex: 1;
            }
        }

        &.active {
            display: flex;
        }

        .cart {
            order: 2;
            flex: 1;
            justify-content: flex-end;
            padding-top: round(calc(var(--size-p) * 0.4), 1px);

            .quantity {
                margin-right: 12px !important;
            }

            .button {
                width: auto;
            }
        }

        .summary {
            order: 4;
            width: 100%;
            background: var(--color125);
            border-radius: 24px;
            -webkit-border-radius: 24px;
            -moz-border-radius: 24px;
            -ms-border-radius: 24px;
            -o-border-radius: 24px;
            padding: 24px;
            margin: 0;

            .products-list {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 8px 24px;

                li {
                    display: flex;
                    align-items: center;
                    gap: 6px;

                    .product-image {
                        width: 60px;
                        height: 60px;

                        img {
                            width: 100%;
                            height: 100%;
                            object-fit: cover;
                        }
                    }
                }
            }
        }
    }

    /* Categoría y compartir */
    .mcb-item-product_meta-inner {
        justify-content: flex-end;

        .product_meta {
            display: none;
        }
    }
}

.frinsa-pack-builder .frinsa-pack-price-amount {
    font-size: var(--size-price);
    font-weight: 600;
}


/*********************************\
        LISTADO DE PRODUCTOS
\*********************************/
@keyframes l20-1{
    0%    { clip-path: polygon(50% 50%,0       0,  50%   0%,  50%    0%, 50%    0%, 50%    0%, 50%    0% ); }
    12.5% { clip-path: polygon(50% 50%,0       0,  50%   0%,  100%   0%, 100%   0%, 100%   0%, 100%   0% ); }
    25%   { clip-path: polygon(50% 50%,0       0,  50%   0%,  100%   0%, 100% 100%, 100% 100%, 100% 100% ); }
    50%   { clip-path: polygon(50% 50%,0       0,  50%   0%,  100%   0%, 100% 100%, 50%  100%, 0%   100% ); }
    62.5% { clip-path: polygon(50% 50%,100%    0, 100%   0%,  100%   0%, 100% 100%, 50%  100%, 0%   100% ); }
    75%   { clip-path: polygon(50% 50%,100% 100%, 100% 100%,  100% 100%, 100% 100%, 50%  100%, 0%   100% ); }
    100%  { clip-path: polygon(50% 50%,50%  100%,  50% 100%,   50% 100%,  50% 100%, 50%  100%, 0%   100% ); }
}

@keyframes l20-2{ 
   0%    { transform:scaleY(1)  rotate(0deg); -webkit-transform:scaleY(1)  rotate(0deg); -moz-transform:scaleY(1)  rotate(0deg); -ms-transform:scaleY(1)  rotate(0deg); -o-transform:scaleY(1)  rotate(0deg); }
   49.99%{ transform:scaleY(1)  rotate(135deg); -webkit-transform:scaleY(1)  rotate(135deg); -moz-transform:scaleY(1)  rotate(135deg); -ms-transform:scaleY(1)  rotate(135deg); -o-transform:scaleY(1)  rotate(135deg); }
   50%   { transform:scaleY(-1) rotate(0deg); -webkit-transform:scaleY(-1) rotate(0deg); -moz-transform:scaleY(-1) rotate(0deg); -ms-transform:scaleY(-1) rotate(0deg); -o-transform:scaleY(-1) rotate(0deg); }
   100%  { transform:scaleY(-1) rotate(-135deg); -webkit-transform:scaleY(-1) rotate(-135deg); -moz-transform:scaleY(-1) rotate(-135deg); -ms-transform:scaleY(-1) rotate(-135deg); -o-transform:scaleY(-1) rotate(-135deg); }
}

.products {
    display: grid;
    gap: 34px;
    grid-template-columns: repeat(3, 1fr);
    margin: 0 !important;

    &:before,
    &:after {
        display: none !important;
    }

    &.columns-2 {
        grid-template-columns: repeat(2, 1fr);
    }

    &.columns-3 {
        grid-template-columns: repeat(3, 1fr);

        @media only screen and (max-width: 1239px) {
            grid-template-columns: repeat(2, 1fr);
        }
    
        @media only screen and (max-width: 580px) {
            grid-template-columns: repeat(1, 1fr);
        }
    }

    &.columns-4 {
        grid-template-columns: repeat(4, 1fr);
    }

    li.product {
        height: inherit;
        margin: 0 !important;
        width: auto !important;

        .woocommerce-placeholder {
            border: 0;
        }

        .product-loader {
            display: none;
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            align-items: center;
            justify-content: center;
            background: rgba(255, 255, 255, 0.2);
            backdrop-filter: blur(8px);
            z-index: 10;
            border-radius: 24px;
            -webkit-border-radius: 24px;
            -moz-border-radius: 24px;
            -ms-border-radius: 24px;
            -o-border-radius: 24px;

            &:before {
                content: '';
                width: 50px;
                aspect-ratio: 1;
                border-radius: 50%;
                border: 8px solid var(--color600);
                animation:
                  l20-1 0.8s infinite linear alternate,
                  l20-2 1.6s infinite linear;
            }

            &.active {
                display: flex;
            }
        }

        .mfn-product-badges {
            left: auto;
            right: 24px;
            top: 24px;

            span {
                background: var(--red);
                padding: 0.25em 0.625em;
                font-size: var(--size-button);
                line-height: 1.6;
                font-weight: 600;
                text-transform: uppercase;
                letter-spacing: -0.02em;
                border-radius: 50px;
                -webkit-border-radius: 50px;
                -moz-border-radius: 50px;
                -ms-border-radius: 50px;
                -o-border-radius: 50px;
            }
        }

        .frinsa-solo-variations-selector {
            margin: 0 0 24px;
        }

        .product-quantity-price {
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin: 0 0 34px;

            .product-price {
                font-size: var(--size-price);
                line-height: 1.4;
                font-weight: 600;
                font-variant-numeric: lining-nums proportional-nums;

                ins {
                    text-decoration: none;
                }

                del {
                    font-size: .7em;
                    font-weight: 600;
                    color: var(--red);
                }

                .woocommerce-price-suffix {
                    display: none;
                }
            }
        }

        .stock.out-of-stock{
            margin: 0 auto;
            background-color: var(--red);
            color: var(--color100) !important;
            line-height: 1.4;
            padding: 4px 16px;
            border-radius: 50px;
            -webkit-border-radius: 50px;
            -moz-border-radius: 50px;
            -ms-border-radius: 50px;
            -o-border-radius: 50px;
            text-transform: uppercase;
            font-weight: 600 !important;
        }

        .mfn-li-product-row,
        .mfn-after-shop-loop-item {
            display: flex;
            width: 100%;
            margin: 0 !important;
            padding: 0;

            .button {
                width: 100%;
                margin: 0 !important;

                .button_label_hover {
                    left: 50% !important;
                    transform: translate(-50%, 100%) !important;
                    -webkit-transform: translate(-50%, 100%) !important;
                    -moz-transform: translate(-50%, 100%) !important;
                    -ms-transform: translate(-50%, 100%) !important;
                    -o-transform: translate(-50%, 100%) !important;
                }

                &:hover .button_label_hover {
                    transform: translate(-50%, 0) !important;
                    -webkit-transform: translate(-50%, 0) !important;
                    -moz-transform: translate(-50%, 0) !important;
                    -ms-transform: translate(-50%, 0) !important;
                    -o-transform: translate(-50%, 0) !important;
                }
            }

            &.mfn-li-product-row-image {
                margin: 0;
            }

            &.mfn-li-product-row-title {
                flex-direction: column;
            }

            &.mfn-li-product-row-price {
                display: none;
            }
        }

        .mfn-after-shop-loop-item .button {
            display: block !important;
        }
        
        .star-rating {
            display: none !important;
        }

        .share-social-links {
            display: flex;
            gap: .2em;
            padding: .3em .6em;
            position: absolute;
            z-index: 20;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            -webkit-transform: translate(-50%, -50%);
            -moz-transform: translate(-50%, -50%);
            -ms-transform: translate(-50%, -50%);
            -o-transform: translate(-50%, -50%);
            align-items: center;
            justify-content: center;
            background: rgba(46, 46, 46, 0.6);
            backdrop-filter: blur(8px);
            overflow: hidden;
            font-size: round(calc(var(--size-p) * 2.13), 1px);
            line-height: 1;
            border-radius: 200px;
            -webkit-border-radius: 200px;
            -moz-border-radius: 200px;
            -ms-border-radius: 200px;
            -o-border-radius: 200px;

            a {
                color: var(--color100);
                display: block;

                &:hover {
                    color: var(--orange);
                }
            }
        }

        &.share-active .image_frame:hover .image-buttons {
            display: none;
        }

        &.mfn-product-li-item {
            & > div:not(.mfn-li-product-row-image) {
                padding: 0 24px;
            }
        }

        &.product-type-pack {
            .frinsa-pack-archive-form {
                flex-direction: column;
                width: 100%;

                .product-quantity-price {
                    width: 100%;
                }
            }

            .mfn-after-shop-loop-item-title {
                display: none;
            }
        }
        }

    .shop-banner {
        &:nth-child( 3n + 2 ) {
            grid-column: 2 / 4;

            @media only screen and (max-width: 1239px) {
                grid-column: 1 / 3;
                min-height: 550px;
            }

            @media only screen and (max-width: 580px) {
                grid-column: 1 / 2;
            }
        }

        a {
            color: var(--color400);
            display: flex;
            flex-direction: column;
            width: 100%;
            height: 100%;
            border-radius: 24px;
            -webkit-border-radius: 24px;
            -moz-border-radius: 24px;
            -ms-border-radius: 24px;
            -o-border-radius: 24px;
            overflow: hidden;

            &:hover {
                transform: scale(1.02);
                -webkit-transform: scale(1.02);
                -moz-transform: scale(1.02);
                -ms-transform: scale(1.02);
                -o-transform: scale(1.02);
                box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
            }
        }
	

        .shop-banner-content {
            padding: 34px;
            background-size: cover;
            background-position: center;
            background-color: var(--color200);
            display: flex;
            flex-direction: column;
            width: 100%;
            height: 100%;
            position: relative;
			color: white !important;

            &:before {
                content: '';
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                background: linear-gradient(180deg, rgb(0 0 0 / 80%) 0, #0000002b 50%);
                z-index: 1;
            }

            * {
                position: relative;
                z-index: 2;
            }
        }

        .link {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 6px;
            font-size: var(--size-button);
            line-height: 1.4;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: -0.02em;
            margin: 0 0 16px;

            .link-icon {
                font-size: round(calc( var(--size-p) * 1.875 ), 1px);
                line-height: 1;
            }
        }

        .title {
            margin: 0 0 24px;
			color: white !important;
        }
    }
}

.columns-2 .products {
    grid-template-columns: repeat(2, 1fr);
}

.columns-3 .products {
    grid-template-columns: repeat(3, 1fr);

    @media only screen and (max-width: 1239px) {
        grid-template-columns: repeat(2, 1fr);
    }

    @media only screen and (max-width: 580px) {
        grid-template-columns: repeat(1, 1fr);
    }
}

.columns-4 .products {
    grid-template-columns: repeat(4, 1fr);
}

/* Puntos de color productos */
.product-color-points {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--size-button);
    margin: 0 0 42px;

    .point {
        width: var(--size-p);
        height: var(--size-p);
        box-shadow: 0px 0px 2px 0px var(--color200) inset;
        border-radius: 50px;
        -webkit-border-radius: 50px;
        -moz-border-radius: 50px;
        -ms-border-radius: 50px;
        -o-border-radius: 50px;

        &.tuna {
            background: var(--blue-light);
        }

        &.bonito {
            background: var(--blue-dark);
        }

        &.salmon {
            background: var(--orange);
        }

        &.hake {
            background: var(--gray);
        }

        &.chicken {
            background: var(--yellow);
        }

        &.turkey {
            background: var(--pink);
        }

        &.tooltip {
            position: relative;
            cursor: help;
            border: 0;

            &:before,
            &:after {
                content: none;
            }

            .tooltiptext {
                --size-arrow: round(calc( var(--size-p) * 0.44 ), 1px);
                position: absolute;
                bottom: calc(100% + var(--size-arrow));
                left: 50%;
                width: max-content;
                max-width: 320px;
                background: var(--color400);
                color: var(--color100);
                padding: 0.33em 0.55em;
                font-size: var(--size-p);
                line-height: 1.6;
                border-radius: 16px;
                -webkit-border-radius: 16px;
                -moz-border-radius: 16px;
                -ms-border-radius: 16px;
                -o-border-radius: 16px;
                transform: translateX(-50%);
                -webkit-transform: translateX(-50%);
                -moz-transform: translateX(-50%);
                -ms-transform: translateX(-50%);
                -o-transform: translateX(-50%);
                box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
                opacity: 0;
                transition: all .4s ease;
                -webkit-transition: all .4s ease;
                -moz-transition: all .4s ease;
                -ms-transition: all .4s ease;
                -o-transition: all .4s ease;
                
                &:after {
                    content: '';
                    position: absolute;
                    top: 100%;
                    left: 50%;
                    width: 0;
                    height: 0;
                    border-left: calc( var(--size-arrow) / 2) solid transparent;
                    border-right: calc( var(--size-arrow) / 2) solid transparent;
                    border-top: var(--size-arrow) solid var(--color400);
                    transform: translateX(-50%);
                    -webkit-transform: translateX(-50%);
                    -moz-transform: translateX(-50%);
                    -ms-transform: translateX(-50%);
                }
            }

            &:hover {
                .tooltiptext {
                    opacity: 1;
                }
            }
        }
    }
}

/* Images hover */
@keyframes love-fill {
    0% { transform: scale(1); -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); }
    50% { transform: scale(1.3); -webkit-transform: scale(1.3); -moz-transform: scale(1.3); -ms-transform: scale(1.3); -o-transform: scale(1.3); }
    100% { transform: scale(1); -webkit-transform: scale(1); -moz-transform: scale(1); -ms-transform: scale(1); -o-transform: scale(1); }
}

.image_frame {
    .image-buttons {
        display: none;
        align-items: center;
        justify-content: center;
        gap: 24px;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);

        a {
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: round(calc( var(--size-p) * 2.13 ), 1px);
            line-height: 1;
            padding: 0.3em;
            margin: 0;
            color: var(--color100);
            border-radius: 50px;
            -webkit-border-radius: 50px;
            -moz-border-radius: 50px;
            -ms-border-radius: 50px;
            -o-border-radius: 50px;
            opacity: 0;
            background: rgba(46, 46, 46, 0);
            backdrop-filter: blur(0px);
            transition: all .4s ease;
            -webkit-transition: all .4s ease;
            -moz-transition: all .4s ease;
            -ms-transition: all .4s ease;
            -o-transition: all .4s ease;

            &:hover {
                transform: scale(1.05);
                -webkit-transform: scale(1.05);
                -moz-transform: scale(1.05);
                -ms-transform: scale(1.05);
                -o-transform: scale(1.05);
            }

            &.mfn-wish-button {
                i.frinsasolo-love-fill {
                    display: none;
                }

                &.loved {
                    i.frinsasolo-love {
                        display: none;
                    }

                    i.frinsasolo-love-fill {
                        display: block;
                        animation: love-fill 0.2s ease-in-out;
                        -webkit-animation: love-fill 0.2s ease-in-out;
                    }
                }
            }
        }
    }

    &:hover {
        .image-buttons {
            display: flex;

            a {
                backdrop-filter: blur(8px);
                background: rgba(46, 46, 46, 0.6);
                opacity: 1;

                @starting-style {
                    backdrop-filter: blur(0px);
                    background: rgba(46, 46, 46, 0);
                    opacity: 0;
                }
            }
        }
    }
}


/*********************************\
       POPUP COMPARTIR RRSS
\*********************************/
.mfn-share-popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    z-index: 999999;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);

    &.active {
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .mfn-share-popup-content {
        position: relative;
        background: var(--color100);
        padding: 32px;
        border-radius: 8px;
        -webkit-border-radius: 8px;
        -moz-border-radius: 8px;
        -ms-border-radius: 8px;
        -o-border-radius: 8px;
        max-width: 90%;
        width: 400px;
        animation: popup-fade-in 0.3s ease-out;
        -webkit-animation: popup-fade-in 0.3s ease-out;

        h3 {
            margin: 0 0 24px;
            text-align: center;
        }

        .mfn-share-buttons {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 16px;

            .mfn-share-link {
                display: flex;
                align-items: center;
                gap: 12px;
                padding: 12px;
                border-radius: 4px;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px;
                -ms-border-radius: 4px;
                -o-border-radius: 4px;
                color: var(--color100);
                text-decoration: none;
                transition: all 0.3s ease;
                -webkit-transition: all 0.3s ease;
                -moz-transition: all 0.3s ease;
                -ms-transition: all 0.3s ease;
                -o-transition: all 0.3s ease;

                i {
                    font-size: 20px;
                }

                span {
                    font-size: 14px;
                    font-weight: 500;
                }

                &.mfn-share-facebook {
                    background: #1877F2;
                    &:hover { background: darken(#1877F2, 10%); }
                }

                &.mfn-share-twitter {
                    background: #000000;
                    &:hover { background: darken(#000000, 10%); }
                }

                &.mfn-share-pinterest {
                    background: #E60023;
                    &:hover { background: darken(#E60023, 10%); }
                }

                &.mfn-share-linkedin {
                    background: #0A66C2;
                    &:hover { background: darken(#0A66C2, 10%); }
                }

                &.mfn-share-instagram {
                    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
                    &:hover { filter: brightness(0.9); }
                }
            }
        }

        .mfn-share-close {
            position: absolute;
            top: 16px;
            right: 16px;
            background: none;
            border: none;
            padding: 8px;
            cursor: pointer;
            color: var(--color400);
            transition: all 0.3s ease;
            -webkit-transition: all 0.3s ease;
            -moz-transition: all 0.3s ease;
            -ms-transition: all 0.3s ease;
            -o-transition: all 0.3s ease;

            &:hover {
                color: var(--color500);
                transform: rotate(90deg);
                -webkit-transform: rotate(90deg);
                -moz-transform: rotate(90deg);
                -ms-transform: rotate(90deg);
                -o-transform: rotate(90deg);
            }
        }
    }
}

@keyframes popup-fade-in {
    from {
        opacity: 0;
        transform: scale(0.9);
        -webkit-transform: scale(0.9);
        -moz-transform: scale(0.9);
        -ms-transform: scale(0.9);
        -o-transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
    }
}


/*********************************\
          INPUT CANTIDAD
\*********************************/
.woocommerce .quantity-input {
    display: flex;

    .quantity-btn {    
        background: var(--color100);
        font-size: round(calc( var(--size-p) * 1.39 ), 1px);
        line-height: 1;
        padding: 3px;
        border: solid 1px var(--color200);
        border-radius: 50px;
        -webkit-border-radius: 50px;
        -moz-border-radius: 50px;
        -ms-border-radius: 50px;
        -o-border-radius: 50px;

        i {
            color: var(--color600); 
        }

        &:hover {
            background-color: var(--color600);

            i {
                color: var(--color100);
            }
        }
    }

    input.qty {
        background: none;
        border: 0;
        text-align: center;
        width: 3em;
        padding: 0 12px !important;
        box-shadow: none;
        font-weight: 500;
        appearance: textfield;
        -moz-appearance: textfield;
        font-size: var(--size-plead);
        line-height: 1.4;

        &::-webkit-outer-spin-button,
        &::-webkit-inner-spin-button {
            -webkit-appearance: none;
            margin: 0;
        }
    }
}


/*********************************\
             CARRITO
\*********************************/
.woocommerce-cart {
    .woocommerce-cart-form .shop_table {
        .cart_item {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            margin: 0 0 24px;

            td {
                padding: 0;
                border: 0;
            }

            .product-thumbnail {
                width: fit-content;

                a img {
                    width: 120px;
                    aspect-ratio: 1;
                    object-fit: contain;
                    object-position: center;
                }
            }

            .product-name { 
                flex: 1;

                a {
                    font-size: var(--size-h4);
                    line-height: 1.4;
                    font-weight: 400;
                    color: var(--color600);
                    font-family: var(--font-titles);
                    letter-spacing: 0;
                }

                .variation {
                    font-size: var(--size-p);
                    line-height: 1.4;
                    font-weight: 400;
                    color: var(--color300);
                    margin: 0;

                    dt {
                        width: fit-content;
                    }

                    dd, p {
                        font-size: inherit;
                        line-height: inherit;
                        font-weight: inherit;
                        color: inherit;
                        margin: 0;
                        padding: 0;
                    }
                }
            }

            .product-quantity .qty {
                width: 3.2em;
            }

            .product-subtotal {
                min-width: 110px;
                text-align: right;

                .amount {
                    font-size: var(--size-price);
                    line-height: 1.4;
                    font-weight: 600;
                    color: var(--color600);
                    font-variant-numeric: lining-nums proportional-nums;
                }
            }

            .product-remove a {
                display: flex;
                align-items: center;
                justify-content: center;
                font-size: round(calc( var(--size-p) * 1.78 ), 1px);
                line-height: 1;
                transition: all 0.4s ease;
                -webkit-transition: all 0.4s ease;
                -moz-transition: all 0.4s ease;
                -ms-transition: all 0.4s ease;
                -o-transition: all 0.4s ease;

                .icon {
                    line-height: 0;
                    color: var(--color600);
                }
            }
        }

        .actions {
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            padding: 0;

            .coupon {
                display: flex;
                align-items: center;
                justify-content: space-between;
                flex-wrap: wrap;
                width: 100%;
                gap: 5px 12px;
                background: var(--color125);
                padding: 24px;
                margin: 46px 0 0;
                border-radius: 24px;
                -webkit-border-radius: 24px;
                -moz-border-radius: 24px;
                -ms-border-radius: 24px;
                -o-border-radius: 24px;

                label {
                    display: block;
                    width: 100%;
                    text-align: left;
                }

                .input-text {
                    flex: 1;
                    margin: 0;
                    font-size: var(--size-button);
                    text-transform: none;
                    letter-spacing: 0;
                    font-weight: 400;
                    text-align: left;
                    padding: 0.625em 1.5em;
                }

                @media only screen and (max-width: 465px) {
                    flex-direction: column;

                    .input-text {
                        width: 100%;
                    }

                    .button {
                        width: 100%;
                    }
                }
            }
        }
    }
}

.variation-Bundledproducts {
    display: block !important;
    width: 100% !important;

    ul {
        font-size: var(--size-psmall);
        margin-left: 24px;
    }
}

/* Resumen de compra */
.cart_totals {
    .title {
        text-align: left !important;
    }

    table.shop_table {
        th, td {
            padding: 0 0 24px;
            border: 0;
        }

        .order-total {
            th, td {
                padding: 24px 0;
                border-top: solid 1px var(--color200);
            }
        }
        
        .amount {
            font-size: var(--size-plead) !important;
            line-height: 1.4;
            font-weight: 600 !important;
            color: var(--color600) !important;
            font-variant-numeric: lining-nums proportional-nums;
        }

        ul#shipping_method li {
            display: flex;
            position: relative;
            padding: 0;
            margin: 0 0 5px;
            cursor: pointer;

            input {
                display: block;
                position: absolute;
                width: 100%;
                height: 100%;
                margin: 0;
                opacity: 0;
                left: 0;
                top: 0;
                cursor: pointer;

                &:checked {
                    & +label {
                        opacity: 1;
                        border-color: var(--color600);
                    }
                }

                &[type="hidden"] + label {
                    opacity: 1;
                    border: 0;
                    background: none;
                    padding: 0;
                    justify-content: flex-end;
                    gap: 5px;
                    cursor: text;
                    border-radius: 0;
                    -webkit-border-radius: 0;
                    -moz-border-radius: 0;
                    -ms-border-radius: 0;
                    -o-border-radius: 0;

                    .amount {
                        font-size: var(--size-plead) !important;
                    }
                }
            }

            label {
                flex: 1;
                display: flex;
                align-items: center;
                justify-content: space-between;
                padding: 5px 14px;
                margin: 0;
                color: var(--color400);
                background: var(--color100);
                border: solid 1px var(--color200);
                font-weight: 400;
                border-radius: 8px;
                -webkit-border-radius: 8px;
                -moz-border-radius: 8px;
                -ms-border-radius: 8px;
                transition: all .4s ease;
                -webkit-transition: all .4s ease;
                -moz-transition: all .4s ease;
                -ms-transition: all .4s ease;
                -o-transition: all .4s ease;
                opacity: .7;
                cursor: pointer;

                .amount {
                    font-size: var(--size-p) !important;
                }
            }

            &:hover {
                label {
                    opacity: 1;
                }
            }
        }
    }

    .woocommerce-shipping-destination {
        font-size: var(--size-psmall);
        line-height: 1.4;
        color: var(--color300);
    }

    .woocommerce-shipping-calculator {
        line-height: 1;

        .shipping-calculator-button {
            font-size: var(--size-psmall);
            line-height: 1.4;
            color: var(--color200);
            margin: 0;

            &:hover {
                color: var(--color600);
            }
        }
    }

    .wc-proceed-to-checkout {
        a.button.checkout-button {
            .button_label_hover {
                width: 100%;
                left: 50% !important;
                transform: translate(-50%, 100%) !important;
                -webkit-transform: translate(-50%, 100%) !important;
                -moz-transform: translate(-50%, 100%) !important;
                -ms-transform: translate(-50%, 100%) !important;
                -o-transform: translate(-50%, 100%) !important;
            }

            &:hover .button_label_hover {
                transform: translate(-50%, 0) !important;
                -webkit-transform: translate(-50%, 0) !important;
                -moz-transform: translate(-50%, 0) !important;
                -ms-transform: translate(-50%, 0) !important;
                -o-transform: translate(-50%, 0) !important;
            }
        }

        .ppcp-messages, .ppc-button-wrapper {
            display: none !important;
        }
    }
}


/*********************************\
          CARRITO LATERAL
\*********************************/
.mfn-cart-overlay {
    background: rgba(255, 255, 255, 0);
    backdrop-filter: blur(0px);
    transition: background .6s ease, backdrop-filter .6s ease, display .6s ease allow-discrete;
    -webkit-transition: background .6s ease, backdrop-filter .6s ease, display .6s ease allow-discrete;
    -moz-transition: background .6s ease, backdrop-filter .6s ease, display .6s ease allow-discrete;
    -ms-transition: background .6s ease, backdrop-filter .6s ease, display .6s ease allow-discrete;
    -o-transition: background .6s ease, backdrop-filter .6s ease, display .6s ease allow-discrete;
}

.mfn-cart-opened .mfn-cart-overlay {
    background: rgba(255, 255, 255, 0.16);
    backdrop-filter: blur(8px);

    @starting-style {
        backdrop-filter: blur(0px);
        background: rgba(255, 255, 255, 0);
    }
}

.mfn-cart-holder {
    --section-spacing: 49px;
    padding: 64px 34px;
    width: 460px;
    right: -460px;
    max-width: 100%;

    .mfn-ch-header {
        padding: 0;
        margin: 0 0 var(--section-spacing);
        border: 0;

        .mfn-close-icon {
            position: relative;
            width: fit-content;
            height: auto;
            top: 0;
            left: 0;
            gap: 8px;
            font-size: var(--size-plead);
            line-height: 1.4;
            font-weight: 600;
            color: var(--color500);
            text-transform: uppercase;
            transform: none;
            -webkit-transform: none;
            -moz-transform: none;
            -ms-transform: none;
            -o-transform: none;

            .icon {
                color: var(--color500);
                font-size: 1.4em;
                line-height: 0;
            }

            &:hover {
                color: var(--orange);

                .icon {
                    color: var(--orange);
                    transform: rotate(-360deg);
                    -webkit-transform: rotate(-360deg);
                    -moz-transform: rotate(-360deg);
                    -ms-transform: rotate(-360deg);
                    -o-transform: rotate(-360deg);
                }
            }
        }
    }

    .mfn-ch-content {
        padding: 0;
        overflow-x: hidden;
        scrollbar-width: thin;

        .mfn-ch-product {
            padding: 0;
            background: none;
            margin: 0 0 24px;
            gap: 12px;

            @media only screen and (max-width: 465px) {
                gap: 0;
            }

            .mfn-chp-image a img {
                width: 100px;

                @media only screen and (max-width: 465px) {
                    width: 80px;
                }
            }

            .mfn-chp-info {
                padding: 0;
                border: 0;
                gap: 12px;

                .mfn-chp-info-top {
                    display: flex;
                    gap: 12px;

                    .title {
                        flex: 1;
                        font-size: var(--size-h4);
                        line-height: 1.2;
                        font-family: var(--font-titles);
                        letter-spacing: 0;
                        margin: 0;

                        a {
                            color: var(--color600);
                            display: -webkit-box;
                            -webkit-line-clamp: 1;
                            -webkit-box-orient: vertical;
                            overflow: hidden;
                        }
                    }

                    .remove a {
                        display: flex;
                        align-items: center;
                        justify-content: center;
                        font-size: round(calc( var(--size-p) * 1.78 ), 1px);
                        line-height: 1;
                        color: var(--color600);
                        transition: all 0.4s ease;
                        -webkit-transition: all 0.4s ease;
                        -moz-transition: all 0.4s ease;
                        -ms-transition: all 0.4s ease;
                        -o-transition: all 0.4s ease;

                        &:hover {
                            transform: rotate(360deg);
                            -webkit-transform: rotate(360deg);
                            -moz-transform: rotate(360deg);
                            -ms-transform: rotate(360deg);
                            -o-transform: rotate(360deg);
                        }
                    }
                }

                .mfn-chp-info-bottom {
                    display: flex;
                    gap: 12px;
                    align-items: center;
                    justify-content: space-between;

                    .qty {
                        width: 3em;
                    }

                    .price {
                        font-size: var(--size-price);
                        line-height: 1.4;
                        font-weight: 600;
                        color: var(--color600);
                        font-variant-numeric: lining-nums proportional-nums;
                    }
                }
            }
        }
    }

    .mfn-ch-footer {
        background: none;
        padding: 34px 0 0;
        margin: 34px 0 0;
        border-top: solid 1px var(--color200);

        .mfn-ch-footer-totals {
            margin: 0;

            .mfn-chft-row {
                align-items: flex-end;

                .mfn-chft-subtotal-label p {
                    margin: 0;

                    &.title {
                        font-size: var(--size-plead);
                        line-height: 1.4;
                        font-weight: 600;
                        color: var(--color600);
                        text-transform: uppercase;
                    }
                }

                .mfn-chft-subtotal-amount {
                    font-size: var(--size-price);
                    line-height: 1.4;
                    font-weight: 600;
                    color: var(--color600);
                    font-variant-numeric: lining-nums proportional-nums;
                }
            }
        }

        .mfn-ch-footer-buttons {
            margin: var(--section-spacing) 0 0;
        }
    }

    @media only screen and (max-width: 465px) {
        padding: 32px 16px;
    }
}


/*********************************\
              CHECKOUT
\*********************************/
.mfn-be-checkout .woocommerce:not(.mfn-cart-tmpl-builder) {
    .woocommerce-form-coupon-toggle {
        display: none;
    }

    .woocommerce-checkout {
        margin-top: 0;

        h1 {
            margin: 0 0 46px;
        }

        #customer_details {
            flex-basis: 66.66%;
            max-width: 66.66%;
            padding-right: 46px;
            margin: 0;
        }

        #order_review {
            flex-basis: 33.33%;
            max-width: 33.33%;
            margin: 0;

            thead {
                display: none;
            }

            tr {
                display: flex;
                align-items: flex-start;
                justify-content: space-between;
                gap: 12px;

                td, th {
                    padding: 0;
                    border: 0;
                    flex: 1;

                    &.product-total {
                        max-width: 90px;
                        font-size: var(--size-p);
                        line-height: 1.4;
                        font-weight: 600;
                        color: var(--color600);
                        font-variant-numeric: lining-nums proportional-nums;
                    }

                    &.product-name {
                        padding: 0 0 24px;
                        font-size: var(--size-p);
                        line-height: 1.4;

                        .variation {
                            margin: 0;
                            font-size: var(--size-button);
                            line-height: 1.4;

                            dt {
                                width: auto;
                            }
                            
                            dd {
                                padding: 0;
                            }

                            p {
                                font-size: var(--size-button);
                                line-height: 1.4;
                            }
                        }
                    }
                }
            }

            tfoot {
                border-top: solid 1px var(--color200);

                tr {
                    padding: 0 0 5px;
                }

                tr:first-child {
                    th, td {
                        padding-top: 24px;
                    }
                }

                .amount {
                    font-size: var(--size-p);
                    line-height: 1.4;
                    font-weight: 600;
                    color: var(--color600);
                    font-variant-numeric: lining-nums proportional-nums;
                }

                #shipping_method label {
                    font-size: 0;
                    line-height: 0;
                }

                li {
                    margin: 0;
                }

                .order-total .amount {
                    font-size: var(--size-price);
                }
            }

            #payment {
                .place-order {
                    margin: 0;
                }

                .wc_payment_method {
                    background: var(--color100);

                    label {
                        font-size: var(--size-plead);
                        line-height: 1.4;
                        font-weight: 600;
                        color: var(--color600);
                    }

                    .payment_box p {
                        font-size: var(--size-button);
                        line-height: 1.6;
                        margin: 10px 0 0;
                    }

                    .stripe-icon {
                        display: none;
                    }
                }

                .woocommerce-privacy-policy-text p {
                    font-size: var(--size-psmall);
                    line-height: 1.4;
                }

                .woocommerce-terms-and-conditions-checkbox-text {
                    font-size: var(--size-p);
                    line-height: 1.4;
                }

                .woocommerce-form__label {
                    line-height: 1;
                }
            }
        }
    }
}


/*********************************\
          ORDER ERECEIVED
\*********************************/
.woocommerce-order-received {
    .column_thankyou_order table.shop_table {
        th, td {
            border: 0 !important;
            padding: 0 0 24px;

            a {
                font-size: var(--size-p);
                line-height: 1.4;
                font-weight: 600;
                color: var(--color600);                
            }

            .wc-item-meta,
            .wc-item-meta p,
            .wc-item-meta strong {
                font-size: var(--size-button);
                line-height: 1.4;
                font-weight: 400;
                color: var(--color300);
            }

            &.product-total {
                vertical-align: top;
                font-size: var(--size-plead);
                line-height: 1.4;
                font-weight: 600;
                color: var(--color600);
                font-variant-numeric: lining-nums proportional-nums;
            }
        }

        tfoot {
            border-top: solid 1px var(--color200);

            tr:first-child {
                th, td {
                    padding-top: 24px;
                }
            }

            .amount {
                font-size: var(--size-plead);
                line-height: 1.4;
                font-weight: 600;
                color: var(--color600);
                font-variant-numeric: lining-nums proportional-nums;
            }
        }
    }
    
    .column_thankyou_overview {
        .woocommerce-notice--success {
            display: none;
        }

        ul.order_details {
            flex-direction: column;
            margin: 0;

            li {
                display: flex;
                align-items: center;
                justify-content: space-between;
                border: 0;
                padding: 0 0 24px;
                font-size: var(--size-p);
                text-transform: none;
                letter-spacing: 0;
                font-weight: 400;

                strong {
                    font-weight: 600;
                    margin: 0;
                    font-size: inherit;
                    line-height: inherit;
                }

                &:last-child {
                    padding-bottom: 0;
                }
            }
        }
    }

    .woocommerce-columns--addresses {
        flex-direction: column;
        margin-top: 24px;
        gap: 24px;

        &:before, &:after {
            display: none;
        }

        .woocommerce-column {
            width: 100%;
            background: var(--color125);
            padding: 34px;
            margin: 0;
            border-radius: 24px;
            -webkit-border-radius: 24px;
            -moz-border-radius: 24px;
            -ms-border-radius: 24px;
            -o-border-radius: 24px;

            .woocommerce-column__title {
                font-size: var(--size-h4);
                line-height: 1.4;
                font-weight: 400;
                color: var(--color600);
                margin: 0 0 12px;
                text-align: left;
            }

            address {
                padding: 0;
                width: 100%;

                &:before {
                    content: none;
                }

                p {
                    margin: 0;
                }
            }
        }
    }
}


/*********************************\
            MY ACCOUNT
\*********************************/
.woocommerce-account {
    .woocommerce-MyAccount-content {
        width: calc(100% - 200px);
        padding-left: 64px;

        @media only screen and (max-width: 767px) {
            width: 100%;
            padding-left: 0;
        }

        .woocommerce-MyAccount-header {
            margin: 0 0 34px;
            width: 50%;

            @media only screen and (max-width: 959px) {
                width: 100%;
            }

            .woocommerce-MyAccount-title {
                margin: 0;
            }

            & > p:last-child {
                margin: 0;
            }
        }
    }
}

/* Orders */
.account-orders-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;

    @media only screen and (max-width: 959px) {
        grid-template-columns: repeat(1, 1fr);
    }

    .order {
        display: flex;
        flex-direction: column;
        gap: 8px;
        background: var(--color125);
        padding: 24px;
        border-radius: 24px;
        -webkit-border-radius: 24px;
        -moz-border-radius: 24px;
        -ms-border-radius: 24px;
        -o-border-radius: 24px;

        .order-header {
            display: flex;
            gap: 8px;
            align-items: flex-start;
            justify-content: space-between;

            .order-number {
                font-size: var(--size-plead);
                line-height: 1.4;
                font-weight: 600;
                color: var(--color600);
                transition: all .3s ease;
                -webkit-transition: all .3s ease;
                -moz-transition: all .3s ease;
                -ms-transition: all .3s ease;
                -o-transition: all .3s ease;

                &:hover {
                    color: var(--orange-strong);
                }
            }

            .order-status {
                background: var(--color150);
                font-size: var(--size-psmall);
                line-height: 1.4;
                font-weight: 500;
                text-transform: uppercase;
                color: var(--color600);
                padding: 4px 8px;
                border-radius: 50px;
                -webkit-border-radius: 50px;
                -moz-border-radius: 50px;
                -ms-border-radius: 50px;
                -o-border-radius: 50px;
            }
        }

        .order-content {
            p {
                margin: 0;
            }
        }

        .order-actions {
            display: flex;
            gap: 24px;
            align-items: center;
            justify-content: flex-end;
            border-top: solid 1px var(--color200);
            padding-top: 12px;
            margin-top: 12px;

            .button {
                background: none;
                padding: 0;
                border: 0;
                color: var(--color600);
                border-radius: 0;
                -webkit-border-radius: 0;
                -moz-border-radius: 0;
                -ms-border-radius: 0;
                -o-border-radius: 0;

                &:hover {
                    color: var(--orange-strong);
                }
            }
        }

        &.status-on-hold .order-status {
            background: var(--orange-strong);
            color: var(--color100);
        }

        &.status-processing .order-status {
            background: var(--yellow-strong);
            color: var(--color600);
        }

        &.status-completed .order-status {
            background: var(--green);
            color: var(--color600);
        }

        &.status-cancelled .order-status {
            background: var(--red);
            color: var(--color100);
        }
    }
}

/* Addresses */
.addresses {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;

    &:before, &:after {
        display: none !important;
    }

    .woocommerce-Address {
        width: 100% !important;
        background: var(--color125);
        padding: 24px;
        border-radius: 24px;
        -webkit-border-radius: 24px;
        -moz-border-radius: 24px;
        -ms-border-radius: 24px;
        -o-border-radius: 24px;

        .woocommerce-Address-title {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 8px;
            margin: 0 0 12px;

            &:before, &:after {
                display: none;
            }

            h2 {
                font-size: var(--size-plead);
                line-height: 1.4;
                font-weight: 600;
                color: var(--color600);
                margin: 0;
                letter-spacing: 0;
                font-family: var(--font-text);
            }

            .edit {
                margin: 0;
                font-size: var(--size-psmall);
                line-height: calc(var(--size-plead) * 1.4);
                font-weight: 400;
                color: var(--color600);
                text-transform: uppercase;

                &:hover {
                    color: var(--orange-strong);
                }
            }
        }

        address {
            padding: 0;

            &:before {
                content: none;
            }
        }
    }
}

/* Account menu */
.woocommerce .woocommerce-MyAccount-navigation {
    padding: 0;
    width: 200px;

    @media only screen and (max-width: 767px) {
        width: 100%;
        padding: 24px;
        border-radius: 24px;
        -webkit-border-radius: 24px;
        -moz-border-radius: 24px;
        -ms-border-radius: 24px;
        -o-border-radius: 24px;
        background: var(--color125);
    }

    ul {
        display: flex;
        flex-direction: column;
        gap: 12px;

        .woocommerce-MyAccount-navigation-link {
            a {
                color: var(--color600);
                font-size: var(--size-p);
                line-height: 1.4;
                font-weight: 400;
                background: none;
                padding: 0;
                border-radius: 0;   
                -webkit-border-radius: 0;
                -moz-border-radius: 0;
                -ms-border-radius: 0;
                -o-border-radius: 0;
                display: flex;
                align-items: center;
                gap: 12px;
    
                &:before {
                    font-family: 'frinsasolo' !important;
                    font-size: 1.2em;
                    width: 1em;
                    line-height: 1;
                    margin: 0;
                    color: var(--color300);
                    transition: all .3s ease;
                    -webkit-transition: all .3s ease;
                    -moz-transition: all .3s ease;
                    -ms-transition: all .3s ease;
                    -o-transition: all .3s ease;
                }
    
                &:hover {
                    background: none;
                    color: var(--orange-strong);
    
                    &:before {
                        color: var(--orange-strong);
                    }
                }
            }

            &.is-active {
                a {
                    color: var(--orange-strong);
                    background: none;

                    &:before {
                        color: var(--orange-strong);
                    }
                }
            }

            &.woocommerce-MyAccount-navigation-link--customer-logout {
                margin-top: 0;
                padding-top: 12px;
                border: 0;
            }
        
            &.woocommerce-MyAccount-navigation-link--dashboard {
                a:before {
                    content: "\e932";
                }
            }
        
            &.woocommerce-MyAccount-navigation-link--orders {
                a:before {
                    content: "\e931";
                }
            }
        
            &.woocommerce-MyAccount-navigation-link--subscription {
                a:before {
                    content: "\e90c";
                }
            }
        
            &.woocommerce-MyAccount-navigation-link--loyalty {
                a:before {
                    content: "\e936";
                }
            }
        
            &.woocommerce-MyAccount-navigation-link--edit-address {
                a:before {
                    content: "\e930";
                }
            }
        
            &.woocommerce-MyAccount-navigation-link--edit-account {
                a:before {
                    content: "\e92f";
                }
            }

            &.woocommerce-MyAccount-navigation-link--payment-methods {
                a:before {
                    content: "\e937";
                }
            }
        
            &.woocommerce-MyAccount-navigation-link--customer-logout {
                a:before {
                    content: "\e92e";
                }
            }
        }
    } 
}

.mfn-header-login .woocommerce-MyAccount-navigation ul .woocommerce-MyAccount-navigation-link.is-active a:not(:hover) {
    color: var(--color600);

    &:before {
        color: var(--color300);
    }
}

/* Frinsa Loyalty */
.frinsa-loyalty-profile { 
    .profile-status {
        background: var(--color125);
        color: var(--color500);

        .points h3 {
            color: var(--color600);
        }
    }

    .rewards-list {
        .voucher {
            border-bottom-color: var(--color150);

            .left-wrap .voucher-description {
                color: var(--color300);
            }

            .right-wrap .voucher-validity {
                color: var(--color300);
            }
        }
    }
}


/*********************************\
           SUBSCRIPTION
\*********************************/
.subscription-steps {
    position: relative;

    .subscription-line {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 50%;
        width: 1px;
        background-color: var(--color150);
        z-index: 1;

        &:before,
        &:after {
            content: "";
            position: absolute;
            left: 50%;
            width: 8px;
            height: 8px;
            background-color: var(--color150);
            border-radius: 50%;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            -ms-border-radius: 50%;
            -o-border-radius: 50%;
            transform: translateX(-50%);
            -webkit-transform: translateX(-50%);
            -moz-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            -o-transform: translateX(-50%);
        }
    
        &:before {
            top: -4px;
        }
    
        &:after {
            bottom: -4px;
        }
    }
    
    .subscription-dot {
        position: absolute;
        top: -10px;
        left: 50%;
        width: 20px;
        height: 20px;
        background-color: var(--orange-strong);
        z-index: 2;
        transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
    }
}

.be_button_sz9dw1qr {
    .button_label_hover {
        left: 0 !important;
    }

    .button_left {
        .button_label_hover {
            right: 0 !important;
            left: auto !important;
        }
    }
}


/*********************************\
               OTROS
\*********************************/
:root {
    --wc-form-border-radius: 16px;
}

.woocommerce {
    table.shop_table tr.order-total .includes_tax {
        display: block;

        .woocommerce-Price-amount {
            font-size: 1em;
            font-weight: 400;
            color: var(--color300);
        }
    }

    div.product form.cart .reset_variations,
    .sku_wrapper {
        display: none;
    }

    form .form-row {
        padding: 0 0 5px;

        .input-text, select, .select2-container--default .select2-selection--single {
            padding: 10px 16px;
            font-size: var(--size-p);
            line-height: 1.6;
            border-color: var(--color200);
            background: var(--color100);
            position: relative;

            .select2-selection__rendered {
                padding: 0;
                line-height: 1.6;
            }
        }
    }
}

.select2-container .select2-dropdown {
    margin-top: -30px;
    z-index: 2;
    border-color: var(--color200);
    background: var(--color100);
    overflow: hidden;
    border-radius: 0 0 var(--wc-form-border-radius) var(--wc-form-border-radius);
    -webkit-border-radius: 0 0 var(--wc-form-border-radius) var(--wc-form-border-radius);
    -moz-border-radius: 0 0 var(--wc-form-border-radius) var(--wc-form-border-radius);
    -ms-border-radius: 0 0 var(--wc-form-border-radius) var(--wc-form-border-radius);
    -o-border-radius: 0 0 var(--wc-form-border-radius) var(--wc-form-border-radius);
}

.mfn-header-login .mfn-close-icon{ top: 13px; color: var(--color500); font-size: 24px; }
.mfn-header-login .mfn-close-icon .icon{ color: var(--color500) !important; }
.mfn-header-login > p.lead{ font-weight: 700; margin-bottom: 12px; }
.mfn-header-login nav.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout{ border-top: 1px solid var(--color500) !important; }
.mfn-header-login nav.woocommerce-MyAccount-navigation ul li a, .mfn-header-login nav.woocommerce-MyAccount-navigation ul li.is-active a, .mfn-header-login nav.woocommerce-MyAccount-navigation ul li a:hover, .mfn-header-login nav.woocommerce-MyAccount-navigation ul li a:before{ color: var(--color500) !important; text-decoration: unset !important; }
.mfn-header-login .woocommerce-form .form-row.form-row-first:after{ content: ""; background-repeat: no-repeat; background-size: contain; background-position: center; background-image: url(../imagenes/icono-usuario.svg); width: 25px; height: 25px; }
.mfn-header-login .woocommerce-form .form-row.form-row-last:after{ content: ""; background-repeat: no-repeat; background-size: 20px; background-position: center; background-image: url(../imagenes/icono-candado.svg); width: 25px; height: 25px; }
.mfn-header-login .woocommerce-form .form-row.form-row-first label, .mfn-header-login .woocommerce-form .form-row.form-row-last label{ line-height: 120%; font-size: 16px; }
.mfn-header-login .woocommerce-form .form-row.form-row-first.active label, .mfn-header-login .woocommerce-form .form-row.form-row-last.active label{ top: 12px; left: 34px; font-size: 75%; }
.woocommerce form.checkout_coupon .form-row, .woocommerce form.login .form-row, .woocommerce form.lost_reset_password .form-row, .woocommerce form.register .form-row{ width: 100% !important; }
.woocommerce form .show-password-input, .woocommerce-page form .show-password-input{ top: 50%; transform: translateY(-50%); color: var(--color500); }
.mfn-header-login .lost_password{ margin: 0 !important; }
.mfn-header-login .create_account a, .mfn-header-login .lost_password a{ color: var(--color500) !important; padding: 8px 0; }
.mfn-header-login .create_account a:hover, .mfn-header-login .lost_password a:hover{ text-decoration: underline !important; }
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme{ position: relative; line-height: 100%; }
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme span{ font-size: 14px !important; line-height: 160%; color: var(--color500); font-weight: 600; }
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme input[type="checkbox"] { opacity: 0; margin: 0 8px 0 0px; }
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme span::before { content: ""; position: absolute; top: 50%; left: 0; transform: translate(0, -50%); width: 15px; height: 15px; border: 1px solid var(--color500); cursor: pointer; }
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme span::after { content: "\2713"; position: absolute; top: calc(50% - 1px); left: 3px; transform: translate(0, -50%); width: 15px; height: 15px; line-height: 15px; color: var(--color100); opacity: 0; font-size: 11px; }
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme input[type=checkbox]:checked + span:after { opacity: 1; } 
.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme input[type=checkbox]:checked + span:before{ background-color: var(--color500); }



/*********************************\
            COMPLIANZ
\*********************************/
/* Cookies button */
body #cmplz-manage-consent .cmplz-manage-consent {
    background: var(--color100);
    color: var(--color500) !important;

    &:before {
        content: "";
        background: transparent url(../imagenes/icono-ajustes.svg) center center / contain no-repeat;
    }
}

/* Complianz documents */
#cmplz-document {
    max-width: 100%;
    padding: 0 0 105px;
    text-align: justify;

    h2, h3, h4 {
        letter-spacing: 0px;
        font-weight: 400;
        border: 0;
        padding: 0;
        margin-bottom: 15px;
        line-height: 1.2;
    }

    h2 {
        font-size: var(--size-h2);
        margin-top: 60px;
    
        :first-child {
            margin-top: 0;
        }
    }
    
    h3 {
        font-size: var(--size-h3);
    }
    
    h4 {
        font-size: var(--size-h4);
    }

    p, li, td {
        font-size: var(--size-p);
        line-height: 1.6;
    }
}

/*********************************\
    RESPONSIVE
\*********************************/

@media(max-width: 1440px){

    /*FOOTER*/
    .mfn-footer .mcb-section-175540edb .mcb-wrap-562f5950b > .mcb-wrap-inner{
        gap: 24px;
    }
    .mfn-footer .mcb-section-175540edb .mcb-wrap-562f5950b > .mcb-wrap-inner > .one-fifth.column{
        width: calc(25% - 18px);
    }
}

@media(max-width: 1280px){


}

@media(max-width: 1239px){

    /*HEADER*/
    .mcb-section .mcb-wrap-3rvvzumq .mcb-wrap-inner-3rvvzumq{
        padding-left: 34px !important;
        margin-left: 44px !important;
    }
    .mcb-section .mcb-wrap-ejb0d86 .mcb-wrap-inner-ejb0d86 {
        padding-left: 0px !important;
    }
    .column.be_icon_box_2_iqs3s9st .desc{
        line-height: 1.4;
    }
    
    .mcb-section .mcb-wrap-409522fbe .mcb-wrap-inner-409522fbe{
        padding-left: 32px !important;
    }
    .mcb-section .mcb-wrap-210f5f6ea .mcb-wrap-inner-210f5f6ea {
        padding-left: 30px !important;
        margin-left: 40px !important;
    }

    /*FOOTER*/
    .mfn-footer .mcb-section-175540edb .mcb-wrap-562f5950b > .mcb-wrap-inner > .one-fifth.column{
        width: calc(50% - 12px);
    }

    /*SINGLE*/
    .woocommerce.single-product .product {
        & .variation-option {
            .variation-values {
                grid-template-columns: repeat(1, 1fr);
            }
        }
        & .column_product_meta {
            & > .mcb-column-inner {
                flex-wrap: wrap;
            }
        }
    }

    #tab-description > .mfn-builder-content > .mcb-section:first-child .one.mcb-wrap > .mcb-wrap-inner{
        gap: 32px;
    }
    #tab-description > .mfn-builder-content > .mcb-section:first-child .one.mcb-wrap > .mcb-wrap-inner .one-fifth.column {
        width: calc(50% - 16px);
    }

}

@media(max-width: 1024px){}

@media(max-width: 959px){

    /*HEADER*/
    #mfn-sidemenu-tmpl-1955 .mfn-sidemenu-closebutton{ 
        padding: 8px;
        border: 1px solid var(--color200);
        width: 62px;
        height: 62px;
        border-radius: 50%;
    }

    #mfn-sidemenu-tmpl-1955 .mcb-section{
        height: 100vh;
    }
    #mfn-sidemenu-tmpl-1955 .mcb-section > .section_wrapper{
        padding: 0 !important;
    }
    #mfn-sidemenu-tmpl-1955 .mcb-section > .section_wrapper, #mfn-sidemenu-tmpl-1955 .mcb-section > .section_wrapper .one.mcb-wrap,
    #mfn-sidemenu-tmpl-1955 .mcb-section > .section_wrapper .one.mcb-wrap > .mcb-wrap-inner{
        height: 100%;
    }
    #mfn-sidemenu-tmpl-1955 .mcb-section > .section_wrapper .one.mcb-wrap > .mcb-wrap-inner{
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }
    #mfn-sidemenu-tmpl-1955 .mcb-section > .section_wrapper .one.mcb-wrap > .mcb-wrap-inner .one.column{
        margin-top: auto;
    }

    /*SINGLE*/
    div.woocommerce-product-gallery{
        margin-bottom: 42px !important;
    }
    .woocommerce.single-product .product {
        & .variation-option {
            .variation-values {
                grid-template-columns: repeat(2, 1fr);
            }
        }
    }
    .mfn-woocommerce-tabs .mfn-woocommerce-tabs-nav{
        flex-wrap: nowrap;
        overflow-x: auto;
        justify-content: flex-start !important;
        padding: 0 64px !important;
        gap: 12px;
    }
    .mfn-woocommerce-tabs .mfn-woocommerce-tabs-nav li{
        margin: 0 !important;
        min-width: 165px;
        text-align: center;
    }
    .mfn-woocommerce-tabs .mfn-woocommerce-tabs-nav li a{
        padding:  8px 16px !important;
    }
    .ingredients-container {
        flex-wrap: wrap;
        gap: 24px;

        & > div {
            width: 100%;
        }
        .ingredients-left {
            padding-right: 0px;
        }
    }

    .other-info-container {
        flex-wrap: wrap;
        gap: 24px;

        & > div {
            width: 100%;
        }
        .other-info-left{
            padding-right: 0px;
        }
    }

    .faqs-container {
        gap: 24px;

        & > .title {
            margin-bottom: 20px;
        }

        .faqs-list {
            width: 100%;
        }
        .faqs-list:last-child{
            border-top: 1px solid var(--color150);
            padding-top: 24px;
        }
    }

    /*WOOCOMMERCE*/
    .woocommerce #customer_login .u-column1, .woocommerce #customer_login .u-column2{
        width: 100%;
        padding: 0 !important;
    }
    .woocommerce #customer_login .u-column1{
        margin-bottom: 32px;
        padding-bottom: 32px !important;
    }
    .woocommerce #customer_login .u-column1:after{
        width: 100%;
        height: 1px;
        top: unset;
        bottom: 0;
    }

    .woocommerce-cart {
        & .woocommerce-cart-form .shop_table {
            & .cart_item {
                flex-wrap: wrap;
                .product-quantity{
                    display: flex;
                    flex-direction: column;
                    min-width: 110px;
                    align-items: flex-end;
                }
                .product-subtotal {
                    min-width: 95px;
                    display: flex;
                    flex-direction: column;
                }
            }
        }
    }

    .mfn-be-checkout .woocommerce:not(.mfn-cart-tmpl-builder) {
        & .woocommerce-checkout {
            margin-bottom: 64px;
            #order_review {
                flex-basis: unset;
                max-width: 100%;
            }

            #customer_details {
                flex-basis: unset;
                max-width: 100%;
                padding-right: 0px;
            }
        }
    }
    .woocommerce form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-first, .woocommerce-page form .form-row-last{
        width: 100%;
    }
}

@media(max-width: 767px){

    /*HEADER*/
    #mfn-header-template .mcb-section-1k6sp7t{
        padding: 18px 16px 12px !important;
    }
    .mfn-header-login{
        margin-top: 0;
    }
    .mfn-header-login .mfn-close-icon{
        right: 15px;
        left: unset;
    }

    /*SINGLE*/
    .mfn-woocommerce-tabs .mfn-woocommerce-tabs-nav{ padding: 0 16px !important; }
    
    .fixed-add-to-cart {
        .content {
            max-width: 100%;
            padding: 0 16px;
            flex-direction: column;
            gap: 6px;

            .left {
                width: 100%;

                .image {
                    display: none;
                }

                .info {
                    flex-direction: row;
                    width: 100%;
                    align-items: center;
                    justify-content: space-between;
                }
            }

            .right {
                width: 100%;
                gap: 10px;

                .frinsa-solo-variations-selector {
                    flex: 1;

                    select {
                        max-width: 250px;
                        padding: 6px 10px;
                    }
                }

                .button {
                    margin-left: 0;
                }
            }
        }
    }
}
@media(max-width: 480px){

    /*FOOTER*/
    .mfn-footer .mcb-section-175540edb .mcb-wrap-562f5950b > .mcb-wrap-inner > .one-fifth.column {
        width: 100%;
    }
    .mfn-footer .mcb-section-175540edb .mcb-wrap-562f5950b > .mcb-wrap-inner > .one-fifth.column > .mcb-column-inner{
        margin: 0 !important;
    }

    /*SINGLE*/
    .woocommerce.single-product .product {
        & .variation-option {
            .variation-values {
                grid-template-columns: repeat(1, 1fr);
            }
        }
    }

    .mfn-woocommerce-tabs-content{
        padding: 64px 0 !important;
    }
    #tab-description > .mfn-builder-content > .mcb-section:first-child .one.mcb-wrap > .mcb-wrap-inner .one-fifth.column {
        width: 100%;
    }
    #tab-description > .mfn-builder-content > .mcb-section:first-child .one.mcb-wrap > .mcb-wrap-inner {
        gap: 12px;
    }
    .woocommerce .comment-form-rating p.stars>span {
        flex-wrap: wrap;
        gap: 6px;
    }
    .woocommerce .comment-form-rating p.stars a{
        margin: 0;
    }

    /*WOOCOMMERCE*/
    .woocommerce-cart {
        & .woocommerce-cart-form .shop_table {
            & .cart_item {
                .product-name {
                    width: 100%;
                    flex: unset;
                }
                .product-quantity{
                    flex-direction: row;
                    justify-content: space-between;
                    width: 100%;
                }
                .product-subtotal {
                    flex-direction: row;
                    justify-content: space-between;
                    width: 100%;
                }
            }
        }
    }

}

@media(max-width: 320px){
    
    /*HEADER*/
    .mcb-section .mcb-wrap .mcb-item-3kign4je .image_frame, .mcb-section .mcb-wrap .mcb-item-3kign4je .image_frame {
        width: 90px;
    }
} 

/*Cambios */

	.section-merch ul.products .shop-banner{display:none !important;}