/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/


/*------------------------------------------------*/
/*---------------------- RESET --------------------*/
/*------------------------------------------------*/

h1,
h2,
h3,
h4,
h5,
h6 {
    -webkit-margin-before: 0;
    margin-block-start: 0;
    -webkit-margin-after: 0;
    margin-block-end: 0;
}


/*------------------------------------------------*/
/*---------------------- HEADER ------------------*/
/*------------------------------------------------*/

.elementor-nav-menu li a:hover,
.elementor-nav-menu .elementor-item-active {
    text-decoration: underline;
}

/*-- Botones menu ---*/
.bt-contacto::before {
    content: "";
    width: 100%;
    height: 1px;
    background: var(--e-global-color-secondary);
    position: relative;
    display: block;
    margin-bottom: 14px;
}

.elementor-nav-menu li.bt-b2b {
    width: 100%;
}

.bt-b2b a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4px;
}

.bt-b2b img {
    max-width: 14px;
}

/*-- Botón CART ---*/
.elementor-menu-cart__toggle .elementor-button:hover {
    border: 0;
}

/*-- Buscador AWS ---*/
.aws-container .aws-search-form .aws-search-btn svg {
    fill: var(--e-global-color-accent);
}

.aws-container .aws-search-form .aws-form-btn {
    background: transparent;
    border-top: 0;
    border-right: 0;
    border-left: 0;
    border-bottom: 1px solid var(--e-global-color-primary);
}

.aws-container .aws-search-form {
    height: auto;
}

.aws-search-result .aws_result_title,
.aws-search-result .aws_search_more a {
    color: var(--e-global-color-primary);
}

.aws-container .aws-search-form .aws-form-btn:hover {
    background: transparent;
}

.sec-header.menu-desktop:hover {
    background: #fff;
}

.sec-header .sub-menu a.elementor-sub-item {
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-weight: 500 !important;
}

/*------------------------------------------------*/
/*---------------------- FOOTER ------------------*/
/*------------------------------------------------*/

@media (max-width:1024px) {
    footer .elementor-nav-menu--main .elementor-item {
        text-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
}


/*------------------------------------------------*/
/*-------------------- FORMULARIOS ---------------*/
/*------------------------------------------------*/

/*--- Estructura ---*/
.row_inputs {
    margin-bottom: 24px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 16px;
}

.col_inputs {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 200px;
    flex-basis: 200px;
    padding: 0;
    border: unset;
}

.col_inputs > label {
    display: block;
}

/*--- FORM suscripcion ---*/
.form-suscripcion [data-name="email"] input {
    height: 100%;
}

.form-suscripcion .wpcf7-form-control.wpcf7-submit {
    padding: 0.5rem 1rem;
    width: 100%;
}

.form-suscripcion .col_inputs:nth-child(1) {
    -ms-flex-preferred-size: 60%;
    flex-basis: 60%;
}

.form-suscripcion .col_inputs:nth-child(2) {
    -ms-flex-preferred-size: 30%;
    flex-basis: 30%;
}

.form-suscripcion .row_inputs {
    gap: 16px;
}

/*--- Campos ---*/
.wpcf7-form span.etiqueta {
    display: block;
    font-weight: 600;
    font-size: 0.9rem;
}

.wpcf7-acceptance .wpcf7-list-item {
    display: inline-block;
    margin: 0;
}

.wpcf7-form-control.wpcf7-acceptance label {
    font-size: 0.875rem;
}

.wpcf7-spinner {
    position: absolute;
    left: 0;
}

.wpcf7-not-valid-tip {
    font-size: 0.85rem;
    background-color: #fff;
    padding: 0 0.5rem;
    margin-top: 5px;
}

.wpcf7 input[type="file"] {
    display: block;
    width: 100%;
}

.wpcf7 .wpcf7-submit {
    white-space: normal;
}


/*------------------------------------------------*/
/*----------------------- COOKIES ----------------*/
/*------------------------------------------------*/

#cmplz-manage-consent .cmplz-manage-consent {
    font-weight: bold;
    font-size: 1rem;
}

#cmplz-document {
    max-width: 100%;
}

#cmplz-document p,
#cmplz-document li,
#cmplz-document td {
    font-size: 1rem;
}


/*------------------------------------------------*/
/*------------------------ LEGALES ---------------*/
/*------------------------------------------------*/

.legal h2 {
    font-size: 1.5rem !important;
    margin-bottom: 8px;
    margin-top: 16px;
}


/*------------------------------------------------*/
/*------------------------ BLOG ------------------*/
/*------------------------------------------------*/

.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h1,
.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h2,
.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h3,
.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h4,
.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h5,
.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h6 {
    margin-bottom: 8px;
    margin-top: 20px;
}

.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h1,
.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h2 {
    font-size: 1.75rem;
}

.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h3 {
    font-size: 1.55rem;
}

.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h4 {
    font-size: 1.35rem;
}

.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h5 {
    font-size: 1.125rem;
}

.wp-singular.post-template-default.single.single-post .elementor-widget-theme-post-content h6 {
    font-size: 1.1rem;
}


/*------------------------------------------------*/
/*---------------------- PRODUCTOS ----------------*/
/*------------------------------------------------*/

.woocommerce div.product p.price ins {
    text-decoration: none;
}

.woocommerce div.product p.price del {
    font-size: 0.85em;
}


/*------------------------------------------------*/
/*----------------------- TABLAS -----------------*/
/*------------------------------------------------*/

.tabla-scroll {
    max-width: 100%;
    overflow-x: auto;
    margin-bottom: 20px;
}

.tabla-scroll table {
    border-collapse: collapse;
    min-width: 400px;
}

.tabla-scroll table th,
.tabla-scroll table td {
    border: 1px solid #ccc;
    padding: 8px 12px;
    text-align: center;
    white-space: nowrap;
}

.tabla-scroll table th {
    background-color: #f2f2f2;
}

.tabla-scroll table caption {
    text-align: left;
    font-weight: bold;
    margin-bottom: 8px;
}


/*------------------------------------------------*/
/*------------------ FICHA PRODUCTO --------------*/
/*------------------------------------------------*/
/*--- Opciones ---*/
@media (min-width:1025px) {
    .woocommerce div.product form.cart table td {
        padding-left: 20px;
    }

    .woocommerce form.cart table.variations tr th,
    .woocommerce form.cart table.variations tr td {
        padding-top: 0 !important;
        padding-bottom: 24px !important;
    }

    /* Oculta los labels nativos */
    .woocommerce div.product form.cart .variations label {
        display: none;
    }

    /* Base común para todas las etiquetas verticales */
    div[swatches-attr]:before {
        content: attr(data-label);
        position: absolute;
        left: -30px;
        /* margen fijo, pero sin calcular top */
        top: 50%;
        -webkit-transform: translateY(-50%) rotate(180deg);
        -ms-transform: translateY(-50%) rotate(180deg);
        transform: translateY(-50%) rotate(180deg);
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        font-size: 0.8rem;
        font-weight: 800;
        color: var(--e-global-color-text);
        letter-spacing: 2px;
    }

    /* ESTILO */
    div[swatches-attr^="attribute_pa_estilo-"]:before {
        content: "ESTILO";
    }

    /* TALLA */
    body.product-template-default div[swatches-attr="attribute_pa_talla"]:before {
        content: "TALLA";

    }

    /* COLOR */
    div[swatches-attr="attribute_pa_color"]:before {
        content: "COLOR";

    }

    /* APLIQUE */
    div[swatches-attr^="attribute_pa_apliques-"]:before {
        content: "APLIQUE";
    }
}



.cfvsw-label-stacked table.variations th,
.cfvsw-label-stacked table.variations td {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    text-transform: uppercase;
    padding: 0;
}

.cfvsw-label-option,
.cfvsw-image-option {
    color: var(--e-global-color-primary);
}

.variations.cfvsw-variation-disable-logic * {
    background: transparent;
    position: relative;
}

.woocommerce div.product form.cart .variations label {
    font-weight: bold !important;
}



.woocommerce div.product form.cart .reset_variations {
    font-size: .83em;
    padding: 0 5px;
    border: 1px solid var(--e-global-color-secondary);
    -ms-flex-item-align: center;
    align-self: center;
    margin: 0 auto;
    font-weight: 500;
    color: var(--e-global-color-text);
}

/*--- Miniaturas ---*/
.flex-control-nav.flex-control-thumbs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 4px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    margin-top: 4px !important;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}

.woocommerce div.product div.images .flex-control-thumbs li {
    width: 100%;
    max-width: 100px;
}

.woocommerce div.product div.images {
    margin-bottom: 0;
}


/*--- Botones compra y stock---*/
.woocommerce div.product form.cart .button {
    float: none !important;
    margin: auto !important;
    width: 100% !important;
    margin-top: 8px !important;
}


.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product .stock {
    color: #53750a;
    font-weight: bold;
}

.elementor-widget-woocommerce-product-add-to-cart span.price bdi {
    color: var(--e-global-color-text);
    margin-bottom: 16px;
    display: inline-block;
    font-size: 1.2em;
}


/*------------------------------------------------*/
/*------------------ LISTA DE DESEOS -------------*/
/*------------------------------------------------*/

.yith-wcwl-add-to-wishlist {
    margin-top: 0px;
}

.woocommerce .yith-wcwl-add-button a.button {
    font-family: var(--e-global-typography-cc79237-font-family), Sans-serif;
    font-size: var(--e-global-typography-cc79237-font-size);
    font-weight: var(--e-global-typography-cc79237-font-weight);
    line-height: var(--e-global-typography-cc79237-line-height);
    color: var(--e-global-color-text);
    text-transform: uppercase;
    background: transparent;
    padding: 0;
    border-radius: 0;
}

.woocommerce .yith-wcwl-add-button a.button:hover,
.woocommerce .yith-wcwl-add-button a.button:hover svg.yith-wcwl-icon-svg {
    color: var(--e-global-color-accent);
    background: transparent;
}

.yith-wcwl-add-to-wishlist svg.yith-wcwl-icon-svg,
.yith-wcwl-add-to-wishlist .add_to_wishlist img {
    width: 21px;
    color: var(--e-global-color-text);
}

.yith-wcwl-add-button .add_to_wishlist svg.yith-wcwl-icon-svg,
.yith-wcwl-add-button .add_to_wishlist img {
    margin-right: 0;
}

.yith-wcwl-wishlistaddedbrowse {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.yith-wcwl-wishlistaddedbrowse .feedback {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 5px;
    text-wrap: balance;
    padding: 5px;
    border: 1px solid var(--e-global-color-primary);
    color: var(--e-global-color-primary);
}

.yith-wcwl-wishlistaddedbrowse a {
    text-transform: uppercase !important;
    font-size: 0.8rem;
    margin-top: 8px;
}

/*------------------------------------------------*/
/*------------------ ARCHIVO PRODUCTOS -------------*/
/*------------------------------------------------*/
/*--- Filtro---*/
.wpfFilterButton.wpfButton,
.wpfClearButton.wpfButton {
    width: 100% !important;
}

/*------------------------------------------------*/
/*------------------ CARRITO -------------*/
/*------------------------------------------------*/
.ppc-button-wrapper {
    margin-top: 16px;
}

@media (max-width:1024px) {
    .elementor-widget-woocommerce-cart .woocommerce table.cart tr {
        padding: 0 !important;
    }

    .elementor-widget-woocommerce-cart .woocommerce table.cart td {
        padding-top: 8px;
        padding-bottom: 8px;
    }
}

.woocommerce ul#shipping_method {
    max-width: 100%;
    min-width: unset;
}

.elementor-widget-woocommerce-cart .paypal-button-container {
    max-width: 100% !important;
}

/*------------------------------------------------*/
/*--------- Ultimate Account Member -------------*/
/*------------------------------------------------*/
.um .um-cover-add:hover,
.um .um-field-checkbox.active:not(.um-field-radio-state-disabled) i,
.um .um-field-radio.active:not(.um-field-radio-state-disabled) i,
.um .um-item-meta a,
.um .um-member-less a:hover,
.um .um-member-more a:hover,
.um .um-member-name a:hover,
.um .um-members-pagi a:hover,
.um .um-profile-subnav a.active,
.um .um-tip:hover,
.um-account-name a:hover,
.um-account-nav a.current,
.um-account-side li a.current span.um-account-icon,
.um-account-side li a.current:hover span.um-account-icon,
.um-dropdown li a:hover,
i.um-active-color,
span.um-active-color {
    color: var(--e-global-color-text)!important;
}


.um a.um-button,
.um a.um-button.um-disabled:active,
.um a.um-button.um-disabled:focus,
.um a.um-button.um-disabled:hover,
.um input[type="submit"].um-button,
.um input[type="submit"].um-button:focus {
    background-color: #FFF!important;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif!important;
    font-size: var(--e-global-typography-accent-font-size)!important;
    font-weight: var(--e-global-typography-accent-font-weight) !important;
    text-transform: var(--e-global-typography-accent-text-transform) !important;
    line-height: var(--e-global-typography-accent-line-height) !important;
    letter-spacing: var(--e-global-typography-accent-letter-spacing) !important;
    color: var(--e-global-color-accent);
    border-style: solid !important;
    border-width: 2px 2px 2px 2px !important;
    border-color: var(--e-global-color-accent) !important;
    border-radius: 0px 0px 0px 0px !important;
    padding: 0.75rem 4rem 0.75rem 4rem !important;
}
.um a.um-button:hover,
.um input[type="submit"].um-button:hover {
    background-color: var(--e-global-color-accent)!important;
    color: var(--e-global-color-6395106)!important;
    border-style: solid!important;
    border-width: 2px 2px 2px 2px!important;
    border-color: var(--e-global-color-accent)!important;
    border-radius: 0px 0px 0px 0px!important;
    -webkit-border-radius: 0px 0px 0px 0px!important;
    -moz-border-radius: 0px 0px 0px 0px!important;
    -ms-border-radius: 0px 0px 0px 0px!important;
    -o-border-radius: 0px 0px 0px 0px!important;
}

.um a.um-link {
    color: var(--e-global-color-accent)!important;
}

.um-request-button {
    background-color: #FFF !important;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif !important;
    font-size: 0.8rem!important;
    font-weight: var(--e-global-typography-accent-font-weight) !important;
    text-transform: var(--e-global-typography-accent-text-transform) !important;
    line-height: var(--e-global-typography-accent-line-height) !important;
    letter-spacing: var(--e-global-typography-accent-letter-spacing) !important;
    color: var(--e-global-color-accent);
    padding: 0;
}

/*------------------------------------------------*/
/*--------- Whislist -------------*/
/*------------------------------------------------*/
.wishlist_table .product-add-to-cart a.button {
    background-color: #FFF !important;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif !important;
    font-size: 0.8rem !important;
    font-weight: var(--e-global-typography-accent-font-weight) !important;
    text-transform: var(--e-global-typography-accent-text-transform) !important;
    line-height: var(--e-global-typography-accent-line-height) !important;
    letter-spacing: var(--e-global-typography-accent-letter-spacing) !important;
    color: var(--e-global-color-accent);
    border-style: solid !important;
    border-width: 2px 2px 2px 2px !important;
    border-color: var(--e-global-color-accent) !important;
    border-radius: 0px 0px 0px 0px !important;
    padding: 0.5rem !important;
}

.wishlist_table .product-add-to-cart a.button:hover {
    background-color: var(--e-global-color-accent) !important;
    color: var(--e-global-color-6395106) !important;
    border-style: solid !important;
    border-width: 2px 2px 2px 2px !important;
    border-color: var(--e-global-color-accent) !important;
    border-radius: 0px 0px 0px 0px !important;
    -webkit-border-radius: 0px 0px 0px 0px !important;
    -moz-border-radius: 0px 0px 0px 0px !important;
    -ms-border-radius: 0px 0px 0px 0px !important;
    -o-border-radius: 0px 0px 0px 0px !important;
}

.woocommerce table.shop_table.wishlist_table .product-price span {
    color: var(--e-global-color-text);
    font-family: var(--e-global-typography-93490e1-font-family), Sans-serif;
    font-size: var(--e-global-typography-93490e1-font-size);
    font-weight: var(--e-global-typography-93490e1-font-weight);
    line-height: var(--e-global-typography-93490e1-line-height);
}
.woocommerce table.shop_table.wishlist_table .product-price span {
    color: var(--e-global-color-text);
    font-family: var(--e-global-typography-93490e1-font-family), Sans-serif;
    font-size: var(--e-global-typography-93490e1-font-size);
    font-weight: var(--e-global-typography-93490e1-font-weight);
    line-height: var(--e-global-typography-93490e1-line-height);
}

.woocommerce table.shop_table.wishlist_table .product-name a {
    font-family: var(--e-global-typography-48bd850-font-family), Sans-serif;
    font-size: 1rem;
    font-weight: var(--e-global-typography-48bd850-font-weight);
    line-height: var(--e-global-typography-48bd850-line-height);
    letter-spacing: var(--e-global-typography-48bd850-letter-spacing);
    color: var(--e-global-color-primary);
}