/*
Theme Name: San Cristobal Child
Theme URI: https://example.com/twenty-twenty-five-child
Description: A child theme of Twenty Twenty-Five.
Author: VórticeSoft
Author URI: https://vorticesoft.com
Template: twentytwentyfive
Version: 1.0
*/

/* Custom styles for the child theme can be added below this line */

@font-face {
    font-family: 'Epilogue';
    src: url('assets/fonts/Epilogue-VariableFont_wght.ttf') format('truetype-variations');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
}

@import "assets/css/carousel.css";

:root {
    --wp--style--global--content-size: clamp(320px, 80vw, 1500px);
    --wp--preset--font-family--epilogue: 'Epilogue', sans-serif;
}

body {
    font-family: var(--wp--preset--font-family--epilogue);

    &.home header {
        #btn_presupuesto_cabecera {
            a {
                padding: .5rem 1rem !important;
            }
        }
    }
}

a {
    text-decoration: none !important;
    text-decoration-thickness: 0 !important;
}

main {
    margin-block-start: 0;
    /*padding-block-end: 2rem;*/
}

:root :where(.wp-element-button:hover, .wp-block-button__link:hover) {
    border: 1px solid var(--wp--preset--color--dark);
    color: var(--wp--preset--color--dark);
}

.page-template-default {
    .wp-site-blocks {
        &>header {
            position: absolute;
            height: 7rem;
            top: 0;
            left: 0;
            right: 0;
            background: transparent;
            z-index: 10;
        }
    }

    #navigation-global-wrapper {
        height: 7rem;
        justify-content: space-between;
        display: flex;
    }
}

/* Mantener formato móvil (hamburguesa) hasta 1023px */
@media (min-width: 600px) and (max-width: 1023px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: flex;
    }

    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: none;
    }
}

/* A partir de 1024px vuelve al menú de escritorio */
@media (min-width: 1024px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: none !important;
    }

    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: block !important;
    }
}

/**
 * En móvil, en la home, hay que subir el main para que se vea el menú por encima del slider
 */
@media screen and (max-width: 767px) {
    body.home {
        main {
            margin-top: -7rem;
        }
    }
}

.navigation-wrapper {
    width: 100%;

    .wp-block-search.wp-block-search__button-only .wp-block-search__button {
        background: transparent !important;
    }

    svg {
        height: 3rem;
        width: 3rem;
    }

    .wp-block-buttons {
        .wp-block-button {
            a.wp-block-button__link.wp-element-button {
                font-weight: 600;
                text-transform: uppercase;
                font-family: var(--wp--preset--font-family--epilogue);
            }
        }
    }

    /*@media screen and (min-width: 768px) and (max-width: 1279px) {

        .wp-block-buttons,
        .wp-block-woocommerce-customer-account {
            display: none;
        }
    }*/

    @media screen and (max-width: 768px) {
        margin-top: 2rem;

        .wp-block-buttons {
            /*position: absolute;
            top: -1.95rem;
            left: 5px;
            width: calc(100vw - 10px);*/
            display: none;
        }

    }
}

.wp-block-search.wp-block-search__button-only .wp-block-search__input {
    padding: .5rem;
    margin-left: 2rem;

    @media screen and (max-width: 1023px) {
        margin-left: 0;
        position: absolute;
        left: 1rem;
        right: 1rem;
        top: 5.5rem;
    }
}

.wp-block-navigation {
    flex-grow: 1;

    ul {
        padding-left: 5rem;
    }

    li {
        text-transform: uppercase;
    }
}
.wp-block-navigation-item.has-child .wp-block-navigation__submenu-container {
	gap: 0;
	padding: .5rem;

	.wp-block-navigation-item__label 
	{
		color: var(--wp--preset--color--dark);
		font-size: 1rem;
	}
}
h1.wp-block-post-title,
h1.wp-block-query-title {
    font-size: var(--wp--preset--font-size--x-large);
    text-align: center;
    color: var(--wp--preset--color--dark);
    text-transform: capitalize;
}

.wp-singular .wp-site-blocks,
.archive,
.page-template-pagina-simple .wp-site-blocks {
    .wp-block-buttons {
        .wp-block-button {
            &>header {
                a.wp-block-button__link.wp-element-button {
                    background: var(--wp--preset--color--primary);
                    color: var(--wp--preset--color--contrast);
                }
            }
        }
    }

    header.wp-block-template-part {
        &>.wp-block-group {
            border-bottom: 2px solid var(--fbc-gray-20);
        }

        .wp-block-woocommerce-customer-account a {
            color: black !important;
        }

        svg {
            fill: black;
            color: black;
        }

        ul {
            border-left: 2px solid black;

            &.wp-block-navigation__submenu-container {
                border-left: none;
                padding-left: 0;
                gap: .5rem;

                li a {
                    color: var(--wp--preset--color--dark);
                    font-size: 1.2rem;
                    padding: .25rem 1.5rem;
                }
            }
        }

        li {
            color: black;
        }
    }

    .wpforms-container {
        margin: 0;
        width: 100%;
    }
}

body.search {
    header.wp-block-template-part {
        svg {
            fill: black;
            color: black;
        }
    }
}

:root :where(.wp-element-button, .wp-block-button__link) {
    font-family: var(--wp--preset--font-family--epilogue) !important;
    font-weight: 600 !important;
    letter-spacing: 1px;
}

body .wp-block-navigation {
    ul {
        padding: 1rem 3rem;

        @media screen and (min-width: 1280px) {
            gap: 2rem;
            font-size: 1.25rem;
        }
    }
}

body header.wp-block-template-part {
    .wp-block-woocommerce-customer-account a {
        padding: 0;
        font-size: 2rem;
    }
}


body.home .wp-site-blocks {
    &>header {
        background: color-mix(in srgb, var(--wp--preset--color--primary) 50%, transparent);

        .wp-block-site-logo img {
            filter: brightness(0) invert(1);
        }

        #btn_presupuesto_cabecera {
            a {
                color: var(--wp--preset--color--black) !important;
                background: white;
            }
        }

        .wp-block-group {
            border: none !important;
        }

        @media screen and (max-width: 767px) {
            padding-top: 0;

            .wp-container-core-group-is-layout-df81c40a {
                padding-bottom: 0 !important;
            }

            /*.wp-block-buttons {
                height: 3rem;
                margin-top: -1rem;
            }*/
        }
    }

    #necesitas-proximo-evento {
        min-height: 500px;

        strong {
            font-weight: 600;
            font-style: italic;
        }
    }

    .wp-block-buttons {
        .wp-block-button {
            &>header {
                a.wp-block-button__link.wp-element-button {
                    background: white;
                    color: black;
                }
            }
        }
    }

    .wp-block-navigation {
        .wp-block-woocommerce-customer-account a {
            color: white !important;
        }

        svg {
            fill: white;
            color: white;
        }

        ul {
            border-left: 2px solid white;
        }

        li {
            color: white;
        }
    }

    .navigation-wrapper {
        svg {
            color: white;
            fill: white;
        }
    }
}

#envios-wrapper {
    background-color: white;
    padding: 0;

    @media screen and (max-width: 1024px) {
        flex-direction: column-reverse;
    }

    &>div:first-child {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
}

.flex-control-thumbs {
    display: flex;
    margin-top: 1rem;
    gap: 1rem;
}

.wp-block-cb-carousel-v2,
.wp-block-cb-carousel-v2 .wp-block-cover {
    min-height: 50rem;

    h1 strong {
        font-weight: 400;
    }
}

.product-list-name {
    font-weight: 500;
    letter-spacing: .7px;
    color: var(--fbc-secondary-text);
}

.woocommerce ul.products li.product .button {
    display: inline-block;
    margin-top: 1em;
    border-radius: 9999px;
    font-size: 1rem;
    padding: 10px 15px;
    text-align: center;
}

footer.wp-block-template-part {
    background: var(--wp--preset--color--neutral);
    margin-block-start: 0;

    a,
    p {
        color: var(--fbc-primary-text) !important
    }

    strong {
        font-weight: 600;
    }
}

.wp-block-cb-carousel-v2 {
    margin-bottom: 5rem;
}

.wp-block-cb-carousel-v2 .cb-button-next,
.wp-block-cb-carousel-v2 .cb-button-prev {
    outline: none;
}

.wp-block-cb-carousel-v2 .cb-button-next::after,
.wp-block-cb-carousel-v2 .cb-button-prev::after {
    font-size: var(--wp--custom--carousel-block--navigation-size, 30px);
    font-weight: 900;
}

.wpforms-container {

    input,
    textarea {
        border-radius: 10px !important;
    }

    .wpforms-submit-container {
        button.wpforms-submit {
            background-color: var(--wp--preset--color--primary) !important;
            border-width: 0;
            border-radius: 9999px;
            padding: 1rem 2.25rem;
            color: var(--wp--preset--color--contrast);
            font-size: var(--wp--preset--font-size--medium);
            font-weight: 900;
            letter-spacing: -0.36px;
            height: auto;

            &:hover {
                background-color: color-mix(in srgb, var(--wp--preset--color--contrast) 85%, transparent) !important;
                border-color: transparent !important;
                color: var(--wp--preset--color--base) !important;
            }
        }
    }
}

/** Newsletter de la página de inicio */
#newsletter-wrapper {
    li {
        justify-content: center;
    }

    .wpforms-submit-container {
        text-align: center;
    }
}

/** ESTILOS PAGINAS DE PRODUCTOS (CATEGORÍAS) */
body.sc-product-category {
    main {
        margin-bottom: 4rem;
    }

    .wc-block-product-categories-list {
        display: flex;
        flex-wrap: wrap;
        gap: 2rem;
        justify-content: center;

        li {
            list-style: none;
        }
    }

    /* Contenedor del bloque */
    .wc-block-catalog-sorting {
        margin: 1rem 0 2rem;
    }

    /* Ocultar label "Ordenar por" si aparece */
    .wc-block-catalog-sorting label {
        display: none;
    }

    /*.wc-block-catalog-sorting select {
        appearance: none;
        -webkit-appearance: none;
        -moz-appearance: none;
        background-color: #009fe3;
        color: #fff;
        font-weight: 600;
        font-size: 1rem;
        padding: 0.75rem 2.5rem 0.75rem 1rem;
        border-radius: 12px;
        border: none;
        outline: none;
        cursor: pointer;
        line-height: 1.2;
        min-width: 180px;
        text-align: left;
    }

    .wc-block-catalog-sorting {
        position: relative;
        display: inline-block;
    }

    .wc-block-catalog-sorting::after {
        content: "▾";
        position: absolute;
        right: 1rem;
        top: 50%;
        transform: translateY(-50%);
        color: #fff;
        font-size: 0.9rem;
        pointer-events: none;
    }

    .wc-block-catalog-sorting select:hover {
        background-color: #0086c1;
    }

    .wc-block-catalog-sorting select:focus {
        box-shadow: 0 0 0 3px rgba(0, 159, 227, 0.3);
    }*/

    li.product {
        @media screen and (max-width: 1023px) {
            width: 100%;

            /* Botón circular arriba a la derecha */
            .sc-card .sc-quote-btn {
                position: absolute;
                top: 10px;
                right: 10px;
                width: 20px;
                height: 20px;
            }

            .sc-card .sc-quote-btn .wp-block-button__link {
                width: 40px;
                height: 40px;
                border-radius: 50%;
                padding: 0;
                font-size: 0;
                background-color: #009fe3;
                background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zm10 0c-1.1 0-1.99.9-1.99 2S15.9 22 17 22s2-.9 2-2-.9-2-2-2zM7.17 14.75l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49A1.003 1.003 0 0 0 20.25 4H5.21L4.27 2H1v2h2l3.6 7.59-1.35 2.44C4.52 15.37 5.48 17 7 17h12v-2H7c-.55 0-1-.45-1-1 0-.05.01-.1.03-.15l.14-.25z'/%3E%3C/svg%3E");
                background-repeat: no-repeat;
                background-position: center;
                background-size: 60%;
            }
        }
    }

    /* Producto dentro del loop */
    .sc-card {
        border: none;
        padding: 12px;
        position: relative;
        height: 100%;
        display: flex;
        flex-direction: column;

        .wp-block-post-title {
            text-align: left;
            margin: 10px 0 0 !important;
            color: var(--wp--preset--color--dark);
            font-weight: 300;
        }

        .wp-block-buttons {
            width: 100%;
            margin-top: 10px;
        }

        .wp-block-button {
            width: 100%;
        }

        .wp-block-buttons .wp-block-button__link,
        .wc-block-grid__product-add-to-cart .add_to_cart_button {
            font-size: 1rem;
            padding: 7px 15px;
        }

        .sc-badge {
            top: -12px;
            background: transparent;
            color: var(--fbc-secondary-text);
            border: 1px solid var(--fbc-gray-20);
            padding: 3px 5px;
        }

        figure {
            margin-block-start: 0;
            flex-grow: 1;

            @media screen and (max-width: 1023px) {
                max-width: 80vw;
                width: 80vw;

                img {
                    object-fit: contain;
                }
            }
        }
    }
}

.woocommerce div.product div.images .flex-control-thumbs {
    margin-top: 1rem;
}

.single_add_to_cart_button {
    background: #10b4e6;
    color: #fff;
    border-radius: 24px;
    padding: .6rem 1rem;
    font-weight: 700;
    font-size: 1rem;
    border-radius: 9999px;
    text-align: center;

    &:hover {
        background-color: color-mix(in srgb, var(--wp--preset--color--contrast) 85%, transparent) !important;
        color: var(--fbc-primary-text);
    }

    @media screen and (max-width: 768px) {
        position: absolute;
        top: 5px;
        right: 5px;
        width: 44px;
        height: 44px;
        border-radius: 50%;
        padding: 0;
        font-size: 0;
        background-color: #009fe3;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zm10 0c-1.1 0-1.99.9-1.99 2S15.9 22 17 22s2-.9 2-2-.9-2-2-2zM7.17 14.75l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49A1.003 1.003 0 0 0 20.25 4H5.21L4.27 2H1v2h2l3.6 7.59-1.35 2.44C4.52 15.37 5.48 17 7 17h12v-2H7c-.55 0-1-.45-1-1 0-.05.01-.1.03-.15l.14-.25z'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-position: center;
        background-size: 60%;
    }
}

/** ESTILOS PAGINA DE PRODUCTO INDIVIDUAL */
.sc-single-product {
    .sc-product {
        padding-block: 24px 64px;
    }

    .sc-product h3 {
        display: block;
        margin: 32px 0 16px;
        font-weight: 600;
        color: var(--wp--preset--color--dark);
        font-size: 1.25rem;

        @media screen and (max-width: 767px) {
            margin-top: -3rem;
        }
    }

    .sc-accordions>h3 {
        margin-top: 24px;
    }

    .sc-rating {
        display: flex;
        align-items: center;
        gap: .5rem;
        margin: .25rem 0 1rem;
    }

    .sc-rating .star-rating {
        margin: 0;
    }

    .sc-specs,
    .sc-faqs {
        margin: .5rem 0 1.5rem;

	@media screen and (max-width: 767px) {
		margin-top: 3rem;
	}
    }

    .sc-faqs p,
    .sc-specs p {
        margin: .4rem 0;
    }

    .sc-accordions .sc-acc {
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        margin: 12px 0;
        overflow: hidden
    }

    .sc-accordions .sc-acc>summary {
        list-style: none;
        cursor: pointer;
        padding: 14px 16px;
        font-weight: 600;
        display: flex;
        align-items: center;
        gap: 2rem;
    }

    .sc-accordions .sc-acc>summary::before {
        content: '>';
        transition: transform 0.2s ease-in-out;
        font-weight: 700;
    }

    .sc-accordions .sc-acc[open]>summary::before {
        transform: rotate(90deg);
    }

    .sc-accordions .sc-acc>summary::-webkit-details-marker {
        display: none
    }

    .sc-accordions .sc-acc[open]>summary {
        border-bottom: 1px solid #e5e7eb
    }

    .sc-accordions .sc-acc>*:not(summary) {
        padding: 16px
    }

    form.cart {
        display: flex;
        align-items: center;

        &.variations_form {
            flex-wrap: wrap;

            table.variations {
                width: 100%;

                td {
                    line-height: 1rem !important;
                }
            }

            .woocommerce-variation-add-to-cart {
                display: flex;
            }
        }
    }

    form.cart div.quantity .qty {
        padding: 1rem .5rem;
    }

    #related-products {
        margin: 2rem 0;

        h2 {
            text-transform: capitalize;
            color: var(--wp--preset--color--dark);
            font-weight: 300;
            font-size: 1.1rem;
            letter-spacing: 1px;
        }

        h2:not(.woocommerce-loop-product__title) {
            font-weight: 600;
            font-size: 1.25rem;
            margin-bottom: 2rem;
        }

        ul.products li.product {
            display: flex;
            flex-direction: column;
        }
    }

    .wp-block-woocommerce-product-reviews {
        h2 {
            display: none;
        }
    }

    .commentlist {
        display: none;
    }

    .comment-respond {
        text-align: center;
        border: 1px solid var(--fbc-gray-20);
        padding: 2rem;

        #reply-title {
            display: none;
        }
    }
}

/** ESTILOS PAGINA DE CARRITO */
body.woocommerce-cart.woocommerce-page {

    /* contenedor principal de la página */
    .sc-cart-page {
        max-width: 1200px;
        margin: 0 auto;
        padding: 11rem 1rem 2rem;

        @media screen and (max-width: 767px) {
            padding-top: 7rem;
        }
    }

    .sc-cart-page-title {
        font-size: 2rem;
        font-weight: 700;
        margin-bottom: 2rem;
        text-align: center;
    }

    /* listado de productos */
    .sc-cart-products {
        display: grid;
        gap: 1.5rem;
        margin-bottom: 2.5rem;

        .sc-product-box {
            background: #fff;

            @media screen and (min-width: 1280px) {
                border: 1px solid #ddd;
                border-radius: 8px;
                padding: 1rem;
            }

            .sc-product-info {
                display: flex;
                align-items: center;
                gap: 1rem;

                img {
                    max-width: 80px;
                    border-radius: 6px;
                }

                div {
                    flex-grow: 1;
                    display: flex;
                    flex-direction: column;
                    gap: .5rem;

                    .sc-product-name {
                        font-size: 1.1rem;
                        font-weight: 600;
                    }

                    a {
                        font-size: 0.9rem;
                        color: #666;
                        font-weight: 300;
                    }

                    &.sc-product-actions {
                        flex-direction: row;
                        justify-content: flex-end;
                        gap: 1rem;
                    }
                }

                input[type="number"] {
                    width: 70px;
                    padding: 0.25rem;
                    font-size: 1rem;
                    border: 1px solid #ccc;
                    border-radius: 4px;
                }
            }
        }

        .sc-product-actions {
            display: flex;
            align-items: center;
            gap: 0.75rem;
        }

        .sc-remove-from-cart {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 28px;
            height: 28px;
            background-color: #009fe3;
            color: white !important;
            border-radius: 50%;
            font-size: 2rem !important;
            padding: .15rem;
            cursor: pointer;
            line-height: 1;
            text-decoration: none !important;
            transition: all 0.2s;

            &:hover {
                background-color: #e5e7eb;
                color: #6b7280;
            }
        }
    }

    /* formulario */
    .sc-cart-form {

        .sc-form-section {
            border-radius: 8px;
            padding: 2rem 0;

            p {
                margin: 0;
            }

            .sc-form-section-filled {
                border: 1px solid #ddd;
                background: #fafafa;
            }

            h3 {
                font-size: 1.2rem;
                padding-bottom: 0.25rem;
                color: var(--wp--preset--color--dark);
            }

            label {
                display: block;
                margin-bottom: 0.5rem;
                font-size: 0.95rem;
            }

            input[type="text"],
            input[type="email"],
            input[type="date"],
            input[type="tel"],
            input[type="number"] {
                display: block;
                width: 100%;
                padding: 0.5rem 0.75rem;
                margin-bottom: 0.75rem;
                border: 1px solid #ccc;
                border-radius: 4px;
                font-size: 1rem;
                border-radius: 9999px;

                @media screen and (max-width: 767px) {
                    max-width: calc(100% - 2rem);
                }
            }

            input[type="radio"],
            input[type="checkbox"] {
                margin-right: 0.5rem;
            }

            @media screen and (max-width: 767px) {
                padding: .5rem;
            }
        }

        button {
            background: #0073aa;
            color: #fff;
            font-size: 1rem;
            font-weight: 600;
            padding: 0.75rem 1.5rem;
            border: none;
            border-radius: 4px;
            cursor: pointer;
            transition: background 0.2s;

            &:hover {
                background: #005c87;
            }
        }

        @media screen and (min-width: 768px) {
            .sc-form-grid {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 1rem;
                width: calc(100% + 1rem);
                margin-bottom: .75rem;

                input {
                    width: calc(100% - 1rem) !important;
                    margin-bottom: 0 !important;
                }
            }
        }

    }

    .sc-event-date-box {
        display: flex;
        justify-content: space-between;
        align-items: center;
        border: 1px solid #ddd;
        border-radius: 8px;
        padding: 1rem 1.25rem;
        background: #fff;

        .sc-event-date-info {
            flex-grow: 1;

            .sc-event-date-label {
                font-size: 1rem;
                font-weight: 600;
            }

            .sc-event-date-value {
                font-size: 1rem;
                color: #555;

                &+p {
                    display: none;
                }
            }
        }

        .sc-event-date-action {
            width: fit-content;
            margin-right: 2rem;

            a {
                color: #009fe3;
                text-decoration: none;
                font-weight: 500;
                cursor: pointer;
                font-size: 1rem;
                transition: color 0.2s;

                &:hover {
                    text-decoration: underline;
                    color: var(--wp--preset--color--dark)
                }
            }

            input[type="date"] {
                font-size: 1rem;
                padding: 0.25rem 0.5rem;
                border: 1px solid #ccc;
                border-radius: 4px;
            }

            input[type="date"].is-hidden {
                display: none;
            }

            @media screen and (max-width: 767px) {
                margin-right: 0;
            }
        }
    }

    .sc-form-section-buttons {
        display: flex;
        flex-direction: row;
        gap: 1rem;
        justify-content: space-between;
        padding: 0 2rem;

        button {
            flex-grow: 1;
            text-align: center;
            padding: 1.5rem 1rem;
            font-size: 1rem;
            border: 1px solid #ccc;
            border-radius: 6px;
            background: transparent;
            cursor: pointer;
            transition: all 0.2s;
            color: var(--fbc-secondary-text);

            &.active {
                background: #009fe3;
                color: #fff;
                border-color: #009fe3;
            }

            &:hover:not(.active) {
                background: #e9e9e9;
            }
        }
    }

    .sc-options {
        display: flex;
        gap: 2rem;
        flex-wrap: wrap;
        margin-bottom: 2rem;

        .sc-option-block {
            flex: 1;
            min-width: 250px;

            .sc-option-label {
                font-weight: 600;
                margin-bottom: 0.5rem;
            }

            .sc-option-content {
                display: flex;
                gap: 1rem;
                margin-bottom: 2rem;

                @media screen and (min-width: 1280px) {
                    margin-bottom: 0;
                }

                .sc-option-disabled {
                    flex: 1;
                    text-align: center;
                    padding: 0.75rem 1rem;
                    border: 1px solid #ccc;
                    border-radius: 6px;
                    font-style: italic;
                    color: #777;
                    background: #fafafa;
                }

                .sc-checkbox {
                    display: flex;
                    align-items: center;
                    gap: 0.5rem;
                    font-size: 1rem;
                }
            }

            /* Botones de envío */
            .sc-shipping-btn {
                flex: 1;
                padding: 0.75rem 1rem;
                border: 1px solid #ccc;
                border-radius: 6px;
                background: #fff;
                cursor: pointer;
                transition: all 0.2s;
                font-size: 0.95rem;
                color: var(--fbc-secondary-text);

                &.active {
                    background: #009fe3;
                    color: #fff;
                    border-color: #009fe3;
                }

                &:hover:not(.active) {
                    background: #f2f2f2;
                }
            }
        }
    }

    @media (max-width: 768px) {
        .sc-options {
            flex-direction: column;
            margin-bottom: -3rem;
        }
    }

    a.resalted {
        color: var(--wp--preset--color--primary);
    }

    .sc-cart-form button.sc_submit_button {
        background: var(--wp--preset--color--primary);
        color: var(--wp--preset--color--contrast);
        font-size: 1rem;
        font-weight: 600;
        padding: 0.75rem 1.5rem;
        width: 60%;
        margin: 0 auto;
        display: block;
        border: 1px solid var(--wp--preset--color--primary);
        border-radius: 4px;
        cursor: pointer;
        transition: background 0.2s;

        &:hover {
            color: var(--wp--preset--color--dark);
            background: color-mix(in srgb, var(--wp--preset--color--contrast) 85%, transparent);
            border-color: var(--wp--preset--color--dark);
        }

        @media screen and (max-width: 767px) {
            width: 100%;
            padding: 1rem;
            font-size: 1.1rem;
        }
    }

    .sc-toast {
        position: fixed;
        bottom: 2rem;
        right: 2rem;
        background: #009fe3;
        color: #fff;
        padding: 0.75rem 1.25rem;
        border-radius: 6px;
        font-size: 0.95rem;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
        opacity: 0;
        transform: translateY(20px);
        transition: opacity 0.3s ease, transform 0.3s ease;
        z-index: 9999;
        pointer-events: none;
    }

    .sc-toast.show {
        opacity: 1;
        transform: translateY(0);
    }

    br {
        display: none;
    }
}

/** ESTILOS PROPIOS DE DISTINTAS RESOLUCIONES */
@media screen and (max-width: 1023px) {
    /*body {
        margin-top: 2rem;
    }*/

    .wp-block-navigation__container.is-responsive {
        border-left: 5px solid black;
        padding-left: 1rem;
        font-size: 1.1rem;

        li {
            line-height: 2.5rem;
        }
    }

    .wp-block-spacer {
        max-height: 2rem !important;
    }

    h2.wp-block-heading {
        text-align: center;
    }

    .wpforms-submit {
        width: 100%;
    }

    .wp-block-navigation__responsive-container {
        ul {
            padding-left: 2px;

            li {
                padding-left: 5px;
            }
        }

        .wp-block-navigation-item__label {
            color: var(--wp--preset--color--dark);
        }
    }

    .wp-block-navigation__responsive-container-close {
        position: absolute;
        left: 0;
        right: auto;

        svg {
            color: black !important;
            fill: black !important
        }
    }

    .wp-block-navigation__responsive-dialog {
        margin-top: 0 !important;
    }

    #contact-lateral-image {
        display: none;
    }

    .add_to_cart_button {
        padding: 7px 5px;
    }

    body:not(.archive).add_to_cart_button {
        font-size: 0 !important;
        border-radius: 9999px;
    }

    body:not(.archive).add_to_cart_button::after {
        content: "";
        font-size: 1rem;
        display: inline-block;
        width: 100%;
        text-align: center;
    }

    footer.wp-block-template-part {
        &>div>div:last-child>div {
            display: flex;
            flex-direction: column;
        }
    }

    .woocommerce-ordering {
        text-align: center;
    }
}

@media screen and (min-width: 1024px) and (max-width: 1480px) {
    h3 {
        font-size: 3rem;
        font-weight: 600;
    }

    #envios-wrapper {
        padding: 0;
        display: flex;
        flex-direction: column-reverse;


        /*&>div:first-child {
            flex-direction: row;
            justify-content: space-between;
        }*/
    }

}

/* Para que el slider de la home no se ponga por encima del menú */
body.menu-open .swiper,
body.menu-open .swiper-wrapper,
body.menu-open .slick-slider,
body.menu-open .splide,
body.menu-open .splide__track {
    transform: none !important;
    will-change: auto !important;
    filter: none !important;
}

body.menu-open .swiper-button-prev,
body.menu-open .swiper-button-next,
body.menu-open .slick-arrow,
body.menu-open .splide__arrow,
body.menu-open .swiper-pagination,
body.menu-open .slick-dots,
body.menu-open .splide__pagination {
    z-index: 1 !important;
}

.sc-popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sc-popup-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
}

.sc-popup-content {
    position: relative;
    background: white;
    border-radius: 12px;
    padding: 0;
    max-width: 400px;
    width: 90%;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    animation: scPopupFadeIn 0.3s ease-out;
}

@keyframes scPopupFadeIn {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.sc-popup-header {
    background: #10b4e6;
    color: white;
    padding: 20px;
    border-radius: 12px 12px 0 0;
    text-align: center;
}

.sc-popup-header h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    color: white;
}

.sc-popup-body {
    padding: 30px 20px;
    text-align: center;
    font-size: 16px;
    color: #333;
}

.sc-popup-footer {
    padding: 0 20px 20px;
    display: flex;
    gap: 10px;
    justify-content: center;
}

.sc-popup-btn {
    padding: 12px 20px;
    border: none;
    border-radius: 6px;
    font-weight: 400;
    font-size: 1rem;
    cursor: pointer;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    transition: all 0.3s ease;
}

.sc-popup-btn-primary {
    background: #10b4e6;
    color: white;
}

.sc-popup-btn-primary:hover {
    background: #0d9bc7;
}

.sc-popup-btn-secondary {
    background: #f0f0f0;
    color: #333;
}

.sc-popup-btn-secondary:hover {
    background: #e0e0e0;
}
