body.ce-kit-1{color:#2C2C2C;font-family:"Inter", sans-serif;font-size:16px;background-color:#FFFFFF;}a, .elementor a{color:#C3694C;font-family:"Inter", sans-serif;}a:hover, .elementor a:hover{color:#B55641;}body.ce-kit-1 h1{font-family:"Inter", sans-serif;font-size:52px;font-weight:600;}body.ce-kit-1 h2{font-family:"Lexend", sans-serif;font-weight:500;}body.ce-kit-1 h3{font-family:"Lexend", sans-serif;font-weight:500;}body.ce-kit-1 h4{font-family:"Lexend", sans-serif;font-weight:500;}body.ce-kit-1 h5{font-family:"Lexend", sans-serif;font-weight:500;}body.ce-kit-1 h6{font-family:"Lexend", sans-serif;font-weight:500;}body.ce-kit-1 .ce-display-small{font-family:"Inter", sans-serif;font-size:16px;}body.ce-kit-1 .ce-display-medium{font-family:"Inter", sans-serif;font-size:24px;}body.ce-kit-1 .ce-display-large{font-family:"Inter", sans-serif;font-size:31px;}body.ce-kit-1 .ce-display-xl{font-family:"Inter", sans-serif;font-size:38px;line-height:1.4em;}body.ce-kit-1 .ce-display-xxl{font-family:"Inter", sans-serif;font-size:45px;}.elementor-button, a.elementor-button:not(#e){color:#FFFFFF;}.elementor-button{background-color:#C97B5C;}.elementor-button:hover, .elementor-button:focus{background-color:#B55641;}.elementor-button.elementor-size-sm{border-radius:50px 50px 50px 50px;}.elementor-button.elementor-size-md{font-size:16px;border-radius:15px 15px 15px 15px;}.elementor-button.elementor-size-lg{border-radius:15px 15px 15px 15px;}.elementor-button.elementor-size-xs{border-radius:15px 15px 15px 15px;}.elementor-button-primary .elementor-button, .elementor-button-primary a.elementor-button:not(#e){color:#FFFFFF;}.elementor-button-primary .elementor-button{background-color:#C97B5C;}.elementor-button-primary .elementor-button:hover, .elementor-button-primary .elementor-button:focus, .elementor-button-primary a.elementor-button:not(#e):hover, .elementor-button-primary a.elementor-button:not(#e):focus{color:#FFFFFF;}.elementor-button-primary .elementor-button:hover, .elementor-button-primary .elementor-button:focus{background-color:#B55641;}.elementor-button-primary .elementor-button.elementor-size-sm{border-radius:50px 50px 50px 50px;}.elementor-button-primary .elementor-button.elementor-size-md{border-radius:15px 15px 15px 15px;}.elementor-button-primary .elementor-button.elementor-size-lg{border-radius:15px 15px 15px 15px;}.elementor-button-primary .elementor-button.elementor-size-xs{border-radius:15px 15px 15px 15px;}.elementor-button-secondary .elementor-button, .elementor-button-secondary a.elementor-button:not(#e){color:#FFFFFF;}.elementor-button-secondary .elementor-button{background-color:#7A8462;border-style:solid;border-width:0px 0px 0px 0px;}.elementor-button-secondary .elementor-button:hover, .elementor-button-secondary .elementor-button:focus, .elementor-button-secondary a.elementor-button:not(#e):hover, .elementor-button-secondary a.elementor-button:not(#e):focus{color:#FFFFFF;}.elementor-button-secondary .elementor-button:hover, .elementor-button-secondary .elementor-button:focus{background-color:#49503B;}.elementor-button-secondary .elementor-button.elementor-size-sm{border-radius:50px 50px 50px 50px;}.elementor-button-secondary .elementor-button.elementor-size-md{border-radius:15px 15px 15px 15px;}.elementor-button-secondary .elementor-button.elementor-size-lg{border-radius:15px 15px 15px 15px;}.elementor-button-secondary .elementor-button.elementor-size-xs{border-radius:15px 15px 15px 15px;}.btn:not(.btn-primary, .btn-secondary), a.btn:not(.btn-primary, .btn-secondary){color:#FFFFFF;}.btn:not(.btn-primary, .btn-secondary){background-color:#C97B5C;border-radius:50px 50px 50px 50px;}.btn:not(.btn-primary, .btn-secondary):hover, .btn:not(.btn-primary, .btn-secondary):hover:active, .btn:not(.btn-primary, .btn-secondary):focus, a.btn:not(.btn-primary, .btn-secondary):hover, a.btn:not(.btn-primary, .btn-secondary):focus{color:#FFFFFF;}.btn:not(.btn-primary, .btn-secondary):hover, .btn:not(.btn-primary, .btn-secondary):hover:active, .btn:not(.btn-primary, .btn-secondary):focus{background-color:#B55641;}.btn-primary{text-transform:none;background-color:#C97B5C;padding:15px 30px 15px 30px;border-radius:50px 50px 50px 50px;}.btn-primary, a.btn-primary{color:#FFFFFF;}.btn-primary:hover, .btn-primary:hover:active, .btn-primary:focus, a.btn-primary:hover, a.btn-primary:focus{color:#FFFFFF;}.btn-primary:hover, .btn-primary:hover:active, .btn-primary:focus{background-color:#B55641;}.btn-secondary{text-transform:none;background-color:#7A8462;border-radius:50px 50px 50px 50px;}.btn-secondary, a.btn-secondary{color:#FFFFFF;}.btn-secondary:hover, .btn-secondary:hover:active, .btn-secondary:focus, a.btn-secondary:hover, a.btn-secondary:focus{color:#FFFFFF;}.btn-secondary:hover, .btn-secondary:hover:active, .btn-secondary:focus{background-color:#49503B;}.elementor-view-stacked .elementor-icon{background-color:#FFFFFF;}.elementor-view-framed .elementor-icon, .elementor-view-default .elementor-icon{color:#FFFFFF;}body.ce-kit-1 img{filter:brightness(100%) contrast(100%) saturate(100%) blur(0px) hue-rotate(0deg);}body.ce-kit-1 label{font-family:"DM Sans", sans-serif;font-weight:500;}body.ce-kit-1 .form-control, body.ce-kit-1 .elementor-field-textual{background-color:#F8F8F8;border-style:solid;border-width:0px 0px 0px 0px;border-radius:3px 3px 3px 3px;padding:17px 17px 17px 17px;}body.ce-kit-1 .form-control:focus, body.ce-kit-1 .elementor-field-textual:focus{background-color:#F8F8F8;box-shadow:0px 0px 0px 1px rgba(0, 0, 0, 0.1) inset;outline-style:solid;border-style:solid;border-width:0px 0px 0px 0px;border-color:rgba(0, 0, 0, 0);}select.form-control:not([size]):not([multiple]){height:auto;}body.ce-kit-1 #wrapper{background-color:#FFFFFF;}body.ce-kit-1 .container{width:1600px;max-width:100%;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1600px;}.elementor-lightbox .elementor-lightbox-image{box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);}@media(max-width:1024px){body.ce-kit-1 .ce-display-xl{font-size:30px;}body.ce-kit-1 .ce-display-xxl{font-size:38px;}}/* Start custom CSS for page-settings */:root {

    /* -------------------------------
        Primary
    --------------------------------*/
    --color-primary-50:  #FAF6EC;
    --color-primary-100: #F2EACF;
    --color-primary-200: #E7D6A1;
    --color-primary-300: #D9BA6B;
    --color-primary-400: #CD9F42;
    --color-primary-500: #BE8A34;
    --color-primary-600: #A36C2B;
    --color-primary-700: #835125;
    /* Brand color */
    --color-primary-800: #6A4024;
    --color-primary-900: #5E3925;
    --color-primary-950: #361D12;

    /* -------------------------------
        Secondary
    --------------------------------*/

    --color-secondary-50:  #F4F5F0;
    --color-secondary-100: #E6E8DF;
    --color-secondary-200: #D0D3C3;
    --color-secondary-300: #B1B89E;
    --color-secondary-400: #949E7D;
    /* Brand color */
    --color-secondary-500: #7A8462;
    --color-secondary-600: #5D664A;
    --color-secondary-700: #49503B;
    --color-secondary-800: #35392E;
    --color-secondary-900: #30322F;
    --color-secondary-950: #1B1D16;

    /* -------------------------------
        Terciary
    --------------------------------*/

    --color-tertiary-50:  #FBF5F1;
    --color-tertiary-100: #F5E8DF;
    --color-tertiary-200: #EACFBE;
    --color-tertiary-300: #DCAD95;
    /* Brand color */
    --color-tertiary-400: #C97B5C;
    --color-tertiary-500: #C3694C;
    --color-tertiary-600: #B55641;
    --color-tertiary-700: #974337;
    --color-tertiary-800: #7A3832;
    --color-tertiary-900: #63302B;
    --color-tertiary-950: #351715;

    /* -------------------------------
        Neutral
    --------------------------------*/
    --color-neutral-50:  #FDFCFB;
    --color-neutral-100: #FAF8F6;
    --color-neutral-200: #F7F4F0;
    --color-neutral-300: #E8DED3;
    --color-neutral-400: #D9CDB8;
    --color-neutral-500: #CBB49A;
    --color-neutral-600: #B89B7A;
    --color-neutral-700: #9B8B7A;
    --color-neutral-800: #6E5F52;
    --color-neutral-900: #4A3F36;
    --color-neutral-950: #2C2520;

    /* -------------------------------
        Success
    --------------------------------*/
    --color-success-400: #E6F9F0;
    --color-success-500: #64E1AC;
    --color-success-600: #17B072;
    --color-success-700: #0A6B48;
    --color-success-800: #073F2A;

    /* -------------------------------
        Warning
    --------------------------------*/
    --color-warning-400: #E8E5D3;
    --color-warning-500: #E6BD3B;
    --color-warning-600: #DC8807;
    --color-warning-700: #993E04;
    --color-warning-800: #5F1F08;

    /* -------------------------------
        Error
    --------------------------------*/
    --color-error-400: #D3C8C7;
    --color-error-500: #D27E80;
    --color-error-600: #C1222C;
    --color-error-700: #8F020D;
    --color-error-800: #5C090D;

    /* -------------------------------
        Shades
    --------------------------------*/
    --color-white: #FFFFFF;
    --color-black: #000000;
    
    /* -------------------------------
        Border Radius
    --------------------------------*/
      --radius-s: 4px;     /* Tags, contadores pequeños */
      --radius-m: 8px;     /* Botones, inputs */
      --radius-l: 16px;    /* Cards, modals, banners */
      --radius-full: 999px; /* Avatares, botones circulares */
    
    /* -------------------------------
        Border Width
    --------------------------------*/
  --border-width-1: 1px; /* Default para la mayoría */
  --border-width-2: 2px; /* Estado de focus */

    /* -------------------------------
        Border Colors
        (usa valores de la paleta)
    --------------------------------*/
    --color-border-default: var(--color-neutral-200);
    --color-border-subtle: var(--color-neutral-100);
    --color-border-interactive: var(--color-primary-600);
    --color-border-error: var(--color-error-500);
    --color-border-success: var(--color-success-500);

    /* -------------------------------
        Spacing System
    --------------------------------*/
  --space-xxs: 4px;   /* Icono con texto, elementos muy pequeños */
  --space-xs: 8px;    /* Texto con etiqueta, botones pequeños */
  --space-s: 12px;    /* Padding en botones grandes (L), componentes medios */
  --space-m: 16px;    /* Padding botones medianos (M), listas, cards */
  --space-l: 24px;    /* Padding botones grandes (L), grids de productos */
  --space-xl: 32px;   /* Secciones pequeñas */
  --space-xxl: 48px;  /* Secciones grandes */
  --space-xxxl: 64px; /* Hero, secciones principales */
}
body {
    background-color: var(--color-white) !important; /* Usar !important para asegurar que se aplique en todas las páginas */
}


.show-in-column{
    display: flex;
    flex-direction: column;
}
.show-in-row{
    display: flex;
    flex-direction: row;
}
.border-card {
    border-radius: var(--radius-l);
    border: solid var(--border-width-1) var(--color-neutral-200);
}

.custom_card, #dataFormDatafast .wpwl-form-card {
    background-color: var(--color-neutral-50);
    border-radius: var(--radius-l);
    box-shadow: none;
}

.slider_button{
    background-color: var(--color-primary-100);
    border-radius: var(--radius-full);
    color: var(--color-primary-600);
    border: none;
    display: flex;
    justify-content: center;
    align-items: center;
}
.slider_button:hover {
    background-color: var(--color-primary-200);
    color: var(--color-primary-700);
    cursor:pointer;
}

/* -------------------------------
        Datafast
    --------------------------------*/

#dataFormDatafast .wpwl-form-card{
    border: 0px;
    padding: 34px 24px;
    margin: 0 0 24px 0;
    box-sizing: content-box;
    max-width: 100%;
}

#dataFormDatafast .wpwl-wrapper{
    width: 100%;
}


.custom-input, #dataFormDatafast .wpwl-control,
#dataFormDatafast select {
    border-radius: var(--radius-m);
    background: var(--color-white);
    border: 0px;
    appearance: none;
    height: 3rem;
    padding: 0 1rem;
    width: 100%;
}
#dataFormDatafast .wpwl-group{
    display: flex;
    flex-wrap: wrap;
}
#dataFormDatafast .wpwl-label-brand{
    min-width: 100%;
}
#dataFormDatafast .wpwl-label {
    width: 100%
}

#dataFormDatafast .wpwl-wrapper-submit{
    min-width: 100%;
    display: flex;
    flex-direction: column;
}
#dataFormDatafast .wpwl-group{
    margin-bottom: 25px;
}
#dataFormDatafast .wpwl-wrapper-brand{
    width: 64%;
    min-width: 50%;
}
#dataFormDatafast .wpwl-brand-card{
    width: 33.33%;
}
#dataFormDatafast .datafast-footer-logos {
    display: flex;
    gap: 10px;
    align-items: start;
    margin-top: 52px;
    flex-wrap: wrap;
    border-top: solid var(--border-width-1) var(--color-neutral-200);
    padding-top: 12px;
}

#dataFormDatafast .datafast-footer-logos .logo-box {
    width: 60px;
    min-width: 15%;
    max-height: 40px;
    display: flex;
    align-content: center;
    justify-content: center;
    margin: 2%;
}
#dataFormDatafast .datafast-footer-logos .logo-box img {
  max-width: 100%; max-height: 100%; object-fit: contain;
}

#dataFormDatafast .datafast-footer-logos .custom_card{
    min-width: 30%;
    min-height: 46px;
    background-color: var(--color-white);
    justify-content: space-evenly;
    align-items: center;
    flex-wrap: wrap;
}

#dataFormDatafast .datafast-footer-logos .images{
    display: flex;
    width: 100%;
    justify-content: space-between;
}
#dataFormDatafast div.images.show-in-row > div:nth-child(1){
    max-width: 30%;
}
#dataFormDatafast div.images.show-in-row > div:nth-child(2){
    width: 66%;
}

#dataFormDatafast div.images.show-in-row > div:nth-child(1) > div{
    width: 100%;
}

/* -------------------------------
        Checkout
    --------------------------------*/
body#checkout main{
    background: var(--color-neutral-50);
}
body#checkout #wrapper {
    margin-top: 5%;
    background: transparent;
}
body#checkout .cart-grid-right .card{
    border-radius: var(--radius-l);
}
/*Encabezado de cada seccion*/
body#checkout section.checkout-step .step-title{
    color: var(--color-primary-950);
}
body#checkout section.checkout-step span.step-number{
    background: var(--color-success-500);
    border: none;
}
/*Navs*/
body#checkout .nav-item .nav-link.active{
    color: var(--color-neutral-950);
}
body#checkout .nav-item .nav-link{
    color: var(--color-neutral-700);
    font-weight: 400;
}
/*Forms*/
body#checkout .checkout-step .form-group.row {
    display: flex;
    flex-direction: column;
}
body#checkout .checkout-step .form-group.row .form-control{
  background: var(--color-white);
  border-radius: var(--radius-m);
}

body#checkout .checkout-step .form-group.row .form-control:not(#field-password){
  margin: 6px 0 10px 0;
}
/*body#checkout .checkout-step .form-group.row .input-group .input-group-btn>.btn
{
    border-radius: var(--radius-m);
    text-transform: capitalize;
    background: var(--color-neutral-800);
}*/
body#checkout .checkout-step .form-group.row .form-control-label{
    font-size: 16px;
    font-weight: 500;
    color: var(--color-primary-950);
}
body#checkout .checkout-step .form-group.row .form-control-comment{
    font-size: 12px;
    font-weight: 400;
    color: var(--color-neutral-700);
}

body#checkout .checkout-step .form-informations{
    color: var(--color-neutral-700);
}
body#checkout .checkout-step .form-group.row .custom-checkbox span{
    background: var(--color-white);
    border: none;
}
body#checkout .checkout-step .form-group.row .custom-checkbox label{
    font-size: 14px;
    font-weight: 400;
    padding-left: 28px;
}
body#checkout section.checkout-step form .form-footer{
    text-align: start;
}
body#checkout section.checkout-step form .form-footer .btn-primary{
    border-radius: var(--radius-full);
}

/*Lateral card Checkout*/
body#checkout #js-checkout-summary a, body#checkout #js-checkout-summary .block-promo .promo-name .cart-summary-line span,body#checkout #js-checkout-summary a:focus{
    color: var(--color-neutral-950);
    text-decoration: none;
}
body#checkout #js-checkout-summary a:hover, body#checkout #js-checkout-summary .block-promo .promo-name .cart-summary-line span:hover{
    color: var(--color-primary-600);
}

body#checkout section.checkout-step article.address-item.selected{
    border: var(--color-primary-600) 1px solid;
}
body#checkout section.checkout-step article.address-item{
    background: var(--color-white);
    border-radius: var(--radius-l);
}

/*--------------------------------
    LoginForm
--------------------------------*/
body#authentication {
    background: var(--color-white);
}
body#authentication #wrapper{
    background: transparent;
}
body#authentication #wrapper div#content{
    background: var(--color-neutral-50);
    color: var(--color-primary-950);    
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: var(--radius-l);
    max-width: 450px;
    padding: var(--space-xl);
}
form#login-form{
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    margin-top: 24px;
    max-width: 450px
}
form#login-form .form-group.row {
    display: flex;
    flex-direction: column;
}
form#login-form .form-group.row .form-control{
  background: var(--color-white);
  border-radius: var(--radius-m);
  border: none;
}

form#login-form .custom_login_form_fields{
    display: flex;
    flex-direction: column;
    
}

form#login-form .form-group.row div{
    width: 100%;
}
form#login-form .form-group.row label{
    width: 100%;
    text-align: start;
    font-size: 12px;
    font-weight: 500;
    color: var(--color-primary-950);
}
body#authentication h1.login-form-title{
    text-align: center;
    font-size: 24px !important;
    font-weight: 500 !important; /* Semi-bold */
    color: #6A4024 !important;
    line-height: 1.2 !important;
    margin-bottom: 24px !important;
        letter-spacing: -0.8px !important; /* Reduce el espacio entre caracteres */

}

form#login-form .btn.btn-primary{
    border-radius: var(--radius-full);
    width: 100%;
}
form#login-form footer.form-footer{
    width: 100%;
}
form#login-form .forgot-password,body#checkout section.checkout-step form#login-form .forgot-password{
    text-align: center;
    margin-bottom: 1rem;
    margin-left: 0px;
}
/*Eye ojo password*/
.form-group.row .password span{
    position: absolute;
    height: 100%;
    right: 10px;
    z-index: 3;
}

.form-group.row .password span .toggle-password {
  background: transparent;
  border: none;
  padding: 0 8px;
  cursor: pointer;
}

.form-group.row .password span .toggle-password svg {
  opacity: 0.6;
  transition: opacity 0.2s;
}

.form-group.row .password span .toggle-password:hover svg {
  opacity: 1;
}


/* Espaciado para el enlace de crear cuenta en login */
body#authentication .no-account,
body#authentication a[href*="registro"],
body#authentication a[data-link-action="display-register-form"],
form#login-form .no-account {
    display: block !important;
    margin-top: 16px !important; /* o usa padding-top: 16px !important; */
    text-align: center !important;
}

/*--------------------------------
    Minicart Lateral
--------------------------------*/
header#header .elementor-cart__container .elementor-cart__main{
    background: var(--color-neutral-50);
    width: 35%;
}

@media (max-width: 768px){
    header#header .elementor-cart__container .elementor-cart__main{
        width: 75%;
    }
}

header#header .elementor-cart__container .elementor-cart__main .elementor-cart__title{
    border-bottom: var(--border-width-1) solid var(--color-neutral-200);
        min-height: 94px;
}

header#header .elementor-cart__container .elementor-cart__main .elementor-cart__product{
    min-height: 212px;
    display: grid;
    grid-template-columns: 150px auto 5%;
    padding: 24px;
}

header#header .elementor-cart__container .elementor-cart__main .elementor-cart__product .elementor-cart__product-image{
    display: flex;
    justify-content: center;
    align-items: center;
}
header#header .elementor-cart__container .elementor-cart__main .elementor-cart__product .elementor-cart__product-image img{
    height: 150px;
    width: 150px;
    border: var(--border-width-1) solid var(--color-neutral-200);
    border-radius: var(--radius-l);
}

header#header .elementor-cart__container .elementor-cart__main .elementor-cart__footer-buttons .elementor-button.elementor-button--view-cart{
    border-radius: var(--radius-full);
}

header#header .elementor-cart__container .elementor-cart__main .elementor-cart__footer-buttons .elementor-button.elementor-button--checkout{
    border-radius: var(--radius-full);
}

header#header .elementor-cart__container .elementor-cart__main .elementor-cart__close-button{
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-full);
    background: var(--color-white);
    color: var(--color-primary-400);
    font-weight: 100;
}

header#header .elementor-cart__container .elementor-cart__main .elementor-cart__product .elementor-cart__product-price{
    color: var(--color-primary-500);
    
}

/*Cart page*/
body#cart #wrapper{
    background: var(--color-white);
}
body#cart .card.cart-container .cart-overview .cart-item .product-line-grid{
    display: flex;
    align-items: center;
}
body#cart .card.cart-container .cart-overview .cart-item .product-description-quantity{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

body#cart .card.cart-container .cart-overview .cart-item.header-car-items .col-md-1{
    padding-left: 0px; 
}

body#cart .card.cart-container .cart-overview{
    border: var(--border-width-1) solid var(--color-neutral-200);
    border-radius: var(--radius-l);
}

body#cart .card.cart-container{
    background: transparent;
}
body#cart .card.cart-container .cart-overview hr.product-separator:last-child{
    display: none;
}

body#cart .card.cart-container .cart-overview .cart-item .product-line-grid .input-group{
    display: flex;
    border-radius: var(--radius-m);
    border: var(--border-width-1) solid var(--color-neutral-100);
}
body#cart .card.cart-container .cart-overview .cart-item .product-line-grid .input-group button.btn, body#cart .card.cart-container .cart-overview .cart-item .product-line-grid .input-group input.form-control{
    background: transparent;
    color: var(--color-neutral-800);
    border:none;
    padding: 0;
    text-align: center;
}

body#cart .card.cart-container .cart-overview .cart-item .product-line-grid .cart-line-product-actions .remove-from-cart i{
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--radius-full);
    width: 36px;
    height: 36px;
    color: var(--color-primary-950);
    border: var(--border-width-1) solid var(--color-neutral-200);
}
body#cart .card.cart-container .cart-overview .cart-item .product-line-grid .discount.discount-percentage{
    border-radius: var(--radius-full);
}
body#cart .cart-grid-body .continue-shopping a.label{
    color:var(--color-primary-600);
}
/*Cart summary*/
body#cart .cart-grid-right .card.cart-summary{
    background: var(--color-neutral-50);
    padding: 54px 32px;
    border-radius: var(--radius-l);
}

body#cart .cart-grid-right .card.cart-summary .summary-title{
    color: var(--color-primary-950);
    font-size: 14px;
    font-weight: 500;
}

body#cart .cart-grid-right .card.cart-summary .btn.btn-primary{
    padding: var(--space-xs);
    border-radius: var(--radius-full);
}

@media(max-width:768px){
    body#cart .card.cart-container .cart-overview .cart-item.header-car-items{
        display: none;
    }
}

/*--------------------------------
    Megamenu wrap name
--------------------------------*/

#header .ce-user-menu .menu-item a.elementor-item.has-submenu span:before {
    content: "Hello, ";
}

#header #custom-user-name nav.ce-user-menu ul li.menu-item a span{
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
}


/*--------------------------------
    Blog
--------------------------------*/
body#ybc_blog_page #wrapper{
    background: var(--color-neutral-50);
}

body#ybc_blog_page #left-column .ybc_blog_sidebar .block{
    background: var(--color-white);
    box-shadow: none;
    border-radius: var(--radius-l);
}

body#ybc_blog_page #left-column .ybc_blog_sidebar .block.ybc_block_rss.ybc_blog_ltr_mode{
    background: var(--color-primary-200);
    height: 75px;
    padding: 0px;
    display:flex;
    align-items: center;
    justify-content: center;
}

body#ybc_blog_page #left-column .ybc_blog_sidebar .block.ybc_block_rss.ybc_blog_ltr_mode h4{
    color: var(--color-primary-600);
    margin:0px;
}

body#ybc_blog_page #left-column .ybc_blog_sidebar .block.ybc_block_rss.ybc_blog_ltr_mode h4 a i{
    background: transparent;
    color: var(--color-primary-600);
    
}

body#ybc_blog_page #left-column .ybc_blog_sidebar .block.ybc_block_rss.ybc_blog_ltr_mode h4 a{
    display: flex;
    align-items: center;
    color: var(--color-primary-600);
}

body#ybc_blog_page #left-column .ybc_blog_sidebar .block.ybc_block_rss.ybc_blog_ltr_mode h4.title_blog.title_block{
    background: var(--color-primary-200);
}

body#ybc_blog_page #left-column .ybc_blog_sidebar .block.ybc_block_search form input{
    border-radius: var(--radius-l);
    color: var(--color-neutral-700);
}

body#ybc_blog_page #left-column .ybc_blog_sidebar .block a{
    border-radius: var(--radius-l);
}
body#ybc_blog_page #left-column .ybc_blog_sidebar .block a.read_more{
    border-radius: 0px;
}
body#ybc_blog_page #content-wrapper .ybc_blog_layout_list.ybc-blog-wrapper{
    background: transparent;
}

body#ybc_blog_page #content-wrapper .ybc_blog_layout_list.ybc-blog-wrapper .bybc-blog-slider #ybc_slider, body#ybc_blog_page #content-wrapper .ybc_blog_layout_list.ybc-blog-wrapper .bybc-blog-slider #ybc_slider img{
    border-radius: var(--radius-l);
}

body#ybc_blog_page #content-wrapper .ybc_blog_layout_list.ybc-blog-wrapper .bybc-blog-slider #ybc_slider .nivo-caption{
    border-radius: var(--radius-l);
    margin: var(--space-s);
    width: auto;
}

body#ybc_blog_page #content-wrapper .ybc-blog-list .post-wrapper .ybc_item_img img{
    border-radius: var(--radius-l);
}

/* ===================================================================
   ESTILOS PERSONALIZADOS PARA MODAL DE WISHLIST (LISTA DE DESEOS)
   
   Descripción: Personaliza el título del modal que aparece al hacer 
   clic en el ícono de wishlist/favoritos
   
   Modificaciones:
   - Fuente: Inter
   - Tamaño: 26px
   - Peso: 600 (Semibold)
   - Color: var(--color-primary-950)
   - Tracking: -0.3px (separación entre caracteres reducida)
   
   Fecha: 01/10/2025
   =================================================================== */

/* Importar fuente Inter desde Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@600&display=swap');

/* Aplicar estilos al título del modal de wishlist */
.wishlist-modal .modal-title,
.modal-dialog .modal-header .modal-title,
h5.modal-title {
    font-family: 'Inter', sans-serif !important;
    font-size: 26px !important;
    font-weight: 600 !important; /* Semibold */
    color: var(--color-primary-950) !important;
    line-height: 1.3 !important;
    letter-spacing: -0.3px !important; /* Tracking reducido */
}

/* Fin de estilos del modal de wishlist */

/* Ícono y texto del mismo color */
a.wishlist-add-to-new.text-primary,
a.wishlist-add-to-new.text-primary .material-icons {
    color: var(--color-primary-400) !important; /* Cambia por el color exacto de tu enlace */
}

/* ===================================================================
   ESTILOS HOVER PARA ITEM DE LISTA EN MODAL DE WISHLIST
   
   Descripción: Cambia el color de fondo al pasar el mouse sobre
   "Mi lista de deseos" dentro del modal
   
   Color hover: #EDF2FF
   
   Fecha: 01/10/2025
   =================================================================== */

/* Estilos base del item */
.wishlist-list-item {
    padding: 12px 16px !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease !important;
}

.wishlist-list-item:hover p.wishlist-list-item-title{
    color: var(--color-neutral-900);
}

/* Hover sobre el item - SOLO EN EL CONTENEDOR */
.wishlist-list .wishlist-list-item:hover,
ul.wishlist-list li.wishlist-list-item:hover {
    background-color: var(--color-neutral-200);
}

/* Asegurar que los hijos NO tengan background propio */
.wishlist-list-item p,
.wishlist-list-item a {
    background-color: transparent !important;
}

/* Fin de estilos hover */

/* ===================================================================
   ESTILOS PARA MODAL DE WISHLIST - BORDES DELGADOS
   
   Descripción: Ajusta el grosor de las líneas divisorias del modal
   
   Border-radius: 16px
   Color de borde: #E7E6EE
   Grosor de líneas divisorias: 1px
   
   Fecha: 01/10/2025
   =================================================================== */

/* Estilos para el contenedor del modal */
.wishlist-modal .modal-content,
.modal-dialog.modal-dialog-centered .modal-content {
    border-radius: 16px !important;
    border: 1px solid #E7E6EE !important;
}

/* Header con borde inferior delgado */
.wishlist-modal .modal-header,
.modal-dialog.modal-dialog-centered .modal-header {
    border-top-left-radius: 16px !important;
    border-top-right-radius: 16px !important;
    border-bottom: 1px solid #F8F8FF !important;
}

/* Body sin bordes adicionales */
.wishlist-modal .modal-body,
.modal-dialog.modal-dialog-centered .modal-body {
    border: none !important;
}

/* Footer con borde superior delgado */
.wishlist-modal .modal-footer,
.modal-dialog.modal-dialog-centered .modal-footer {
    border-bottom-left-radius: 16px !important;
    border-bottom-right-radius: 16px !important;
    border-top: 1px solid #F8F8FF !important;
}

/* Fin de estilos del modal */

/* ===================================================================
   ESTILOS PARA MODAL "CREAR LISTA DE DESEOS"
   
   Descripción: Personalización completa del modal de creación
   
   Fecha: 01/10/2025
   =================================================================== */

/* Título del modal */
.wishlist-create .modal-title,
.wishlist-modal .modal-title {
    font-family: 'Inter', sans-serif !important;
    font-size: 26px !important;
    font-weight: 600 !important;
    letter-spacing: -0.3px !important;
    color: var(--color-primary-950) !important;
}

/* Campo de input - hacer visible y estilizado */
.wishlist-create input[type="text"],
.wishlist-create .form-control,
input[placeholder="Añadir nombre"] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    padding: 12px 16px !important;
    border: 1px solid #F2F1F6 !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    background-color: #FFFFFF !important;
    transition: border-color 0.2s ease !important;
}

/* Focus en el input */
.wishlist-create input[type="text"]:focus,
.wishlist-create .form-control:focus,
input[placeholder="Añadir nombre"]:focus {
    outline: none !important;
    border-color: var(--color-primary-800) !important;
}

/* Contenedor de botones del footer */
.wishlist-create .modal-footer {
    display: flex !important;
    gap: 12px !important;
    padding: 16px 24px !important;
    border-top: none !important;
}

/* Botón Cancelar - SOLO en el footer, no afecta el botón X */
.wishlist-create .modal-footer .modal-cancel,
.wishlist-create .modal-footer button[data-dismiss="modal"]:not(.close),
.modal-footer button.modal-cancel.btn.btn-secondary {
    background-color: transparent !important;
    color: var(--color-primary-800) !important;
    border: 1px solid var(--color-primary-800) !important;
    border-radius: 50px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 10px 24px !important;
    transition: all 0.2s ease !important;
}

/* Hover Botón Cancelar */
.wishlist-create .modal-footer .modal-cancel:hover,
.wishlist-create .modal-footer button[data-dismiss="modal"]:not(.close):hover,
.modal-footer button.modal-cancel.btn.btn-secondary:hover {
    background-color: rgba(86, 74, 235, 0.05) !important;
}

/* Botón Crear lista de deseos */
.wishlist-create .modal-footer .btn-primary,
.wishlist-create .modal-footer button[type="submit"],
.modal-footer button.btn.btn-primary {
    background-color: var(--color-primary-800) !important;
    color: #FFFFFF !important;
    border: 1px solid var(--color-primary-800) !important;
    border-radius: 50px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 10px 24px !important;
    transition: all 0.2s ease !important;
}

/* Hover Botón Crear */
.wishlist-create .modal-footer .btn-primary:hover,
.wishlist-create .modal-footer button[type="submit"]:hover,
.modal-footer button.btn.btn-primary:hover {
    background-color: var(--color-primary-400) !important;
    border-color: var(--color-primary-400) !important;
}

/* Estilos para el modal content */
.wishlist-create .modal-content {
    border-radius: 16px !important;
    border: 1px solid #E7E6EE !important;
}

/* Label del campo */
.wishlist-create label,
.wishlist-create .modal-body label {
    font-size: 14px !important;
    color: var(--color-primary-950) !important;
    font-weight: 500 !important;
    margin-bottom: 8px !important;
}

/* Fin de estilos del modal crear */




/*
 * ESTILOS PARA LOS ENLACES DE LA PÁGINA "MI CUENTA"
 */

/* 1. Estilo para el contenedor de cada enlace - múltiples body.ce-kit-1es */
.page-my-account .links a.link-item,
.page-my-account .links a,
.page-my-account a.link-item,
a.link-item,
.links a.link-item {
    border-radius: 16px !important;
    padding: 20px 15px !important;     /* Ajuste de padding vertical a 20px */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
    min-height: 150px !important;      /* Altura mínima para dar más espacio */
    margin-bottom: 10px !important;    /* Añadir margen inferior para equilibrar la separación vertical */
}

/* Si los cards están dentro de otro contenedor */
.page-my-account .links .link-item,
.page-my-account .links > * {
    border-radius: 16px !important;
    padding: 20px 15px !important;
    margin-bottom: 10px !important;
    box-shadow: none !important;          /* Aseguramos que no tenga sombras extrañas */
}
/* Apuntando específicamente al SPAN interno que actúa como tarjeta */
.page-my-account .links a span.link-item,
span.link-item {
    background-color: #FBF5F1 !important;  /* El color crema */
    
    /* Propiedades vitales para que el SPAN se comporte como caja */
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 150px !important;          /* Altura mínima consistente */
    
    border-radius: 16px !important;        /* Bordes redondeados */
    padding: 20px 15px !important;
}

/* 2. Estilo para TODOS los iconos (Círculo + Icono) */
.page-my-account .links .link-item > *:first-child,
.links .link-item > *:first-child {
    /* --- NUEVO COLOR --- */
    background-color: #C97B5C !important; 
    color: white !important;
    fill: white !important;
    
    border-radius: 50% !important;
    background-image: none !important;
    
    /* --- NUEVO TAMAÑO DEL CÍRCULO (Más pequeño) --- */
    width: 48px !important;           /* Antes 60px */
    height: 48px !important;          /* Antes 60px */
    min-width: 48px !important;
    min-height: 48px !important;
    max-width: 48px !important;
    max-height: 48px !important;
    
    /* --- NUEVO TAMAÑO DEL ICONO (Más pequeño) --- */
    font-size: 24px !important;       /* Antes 28px */
    line-height: 1 !important;
    
    /* Centrado y Márgenes */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 15px !important;   /* Ajustado proporcionalmente */
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
    
    flex-shrink: 0;
    flex-grow: 0;
    padding: 0 !important;
    text-align: center;
    position: relative;
    z-index: 1;
}

/* Ajuste también para iconos si son formato SVG */
.page-my-account .links .link-item > *:first-child svg,
.links .link-item > *:first-child svg {
    width: 24px !important;
    height: 24px !important;
    fill: white !important;
}

/* CÓDIGO CORREGIDO: Ahora estas propiedades tienen dueño */
.page-my-account .links .link-item > *:first-child,
.links .link-item > *:first-child {
    /* Tamaño y espaciado del icono */
    font-size: 28px !important;
    line-height: 1 !important;
    margin-bottom: 20px !important;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0;
    
    /* Previene deformación */
    flex-shrink: 0;
    flex-grow: 0;
    padding: 0 !important;
    text-align: center;
    
    /* Asegura que no se corte */
    position: relative;
    z-index: 1;
}

/* Cambio de color de fondo al hacer hover sobre el card */
.page-my-account .links .link-item:hover > *:first-child,
.links .link-item:hover > *:first-child {
    background-color: var(--color-primary-800) !important; /* Fondo al hacer hover */
}

/* Asegura que los contenedores padre no corten el contenido */
.page-my-account .links {
    overflow: visible !important;
}

/* Asegura que los SVG dentro también sean blancos y del tamaño correcto */
.page-my-account .links .link-item > *:first-child svg,
.links .link-item > *:first-child svg {
    width: 28px !important;
    height: 28px !important;
    fill: white !important;
}

.page-my-account .links .link-item svg path,
.links .link-item svg path {
    fill: white !important;
}

/* 3. Estilo para el texto debajo del icono */
.page-my-account .links .link-item span:not(.material-icons):not(:first-child),
.links .link-item span:not(.material-icons):not(:first-child),
.page-my-account .links .link-item .link-item,
.links a span {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    
    /* --- TUS CAMBIOS AQUÍ --- */
    font-size: 16px !important;          /* Tamaño reducido a 16px */
    font-weight: normal !important;      /* Peso normal (sin negrita) */
    color: #4A3F36 !important;           /* Color Marrón Oscuro */
    letter-spacing: normal !important;   /* Espaciado de letras proporcional/natural */
    /* ------------------------ */
    
    text-align: center !important;
    width: 100% !important;
    text-transform: none !important;
    line-height: 1.3 !important;
    margin-top: 0 !important;
}

/* Asegura que todo el texto dentro del link tenga el estilo correcto */
.page-my-account .links a.link-item,
.links a.link-item {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
    font-size: 22px !important;
    font-weight: 500 !important;
    color: #554D65 !important;
    text-transform: none !important;
}

/* --- NUEVO ESTILO PARA TÍTULO 'YOUR ACCOUNT' (Igual a Mixbox) --- */

/* --- ESTILO DE TÍTULO EXCLUSIVO PARA LA PÁGINA 'MI CUENTA' --- */

/* 1. La Caja Contenedora (Solo en Mi Cuenta) */
body#my-account .page-header {
    background-color: #F7F4F0 !important;  /* Fondo Crema */
    padding: 20px 0 !important;
    text-align: center !important;
    border-radius: 5px !important;
    margin-bottom: 30px !important;
    display: block !important;
}

/* 2. El Texto (Solo en Mi Cuenta) */
body#my-account .page-header h1 {
    font-family: "Rietage", sans-serif !important;
    color: #6A4024 !important;
    font-size: 32px !important;
    font-weight: normal !important;
    text-transform: none !important;
    margin: 0 !important;
    line-height: 1.2 !important;
    display: inline-block !important;
}

/* Aseguramos que la primera letra no se fuerce en otras páginas si no queremos */
body#my-account .page-header h1::first-letter {
    text-transform: none !important;
}

/* Primera letra en mayúscula */
.page-header h1::first-letter {
    text-transform: none !important;
}

/* Fondo blanco SOLO para la página de Mi Cuenta */
body#my-account,
body#my-account #wrapper, 
body#my-account main {
    background-color: #FFFFFF !important;
}

/* Ocultar breadcrumbs solo en la página de Mi Cuenta */
body#my-account .breadcrumb,
body#my-account nav.breadcrumb {
    display: none !important;
}

/* ===================================================================
   ESTILOS PARA TÍTULO "PRODUCTOS VISTOS"
   
   Descripción: Personalización del título del módulo
   
   Font: Inter
   Tamaño: 42px
   Color: var(--color-primary-950)
   Peso: 700 (bold)
   Text-transform: Solo primera letra en mayúscula
   
   Fecha: 01/10/2025
   =================================================================== */

/* Título Productos Vistos - Selectores más específicos */
h4[class*="ets_crosssell_title"],
.ets_crosssell_list_blocks .ets_crosssell_title,
.block h4.ets_crosssell_title {
    font-family: 'Inter', sans-serif !important;
    font-size: 42px !important;
    font-weight: 700 !important;
    color: var(--color-primary-950) !important;
    line-height: 1.2 !important;
    margin-bottom: 70px !important; /* Distancia al carousel */
    margin-top: 24px !important;
    text-transform: none !important;
    position: relative !important;
    padding-top: 24px !important; /* Espacio para la línea superior */
    padding-bottom: 0 !important;
    border-bottom: none !important; /* Eliminar borde inferior si existe */
}

/* Tablet: 32px */
@media screen and (max-width: 1024px) and (min-width: 769px) {
    h4[class*="ets_crosssell_title"],
    .ets_crosssell_list_blocks .ets_crosssell_title,
    .block h4.ets_crosssell_title {
        font-size: 32px !important;
    }
}

/* Mobile: 28px */
@media screen and (max-width: 768px) {
    h4[class*="ets_crosssell_title"],
    .ets_crosssell_list_blocks .ets_crosssell_title,
    .block h4.ets_crosssell_title {
        font-size: 28px !important;
        margin-bottom: 24px !important; /* Reducir distancia en mobile */
        padding-top: 20px !important; /* Espacio entre línea y título en mobile */
    }
}

/* Línea ANTES del título (arriba) */
h4[class*="ets_crosssell_title"]::before,
.ets_crosssell_list_blocks .ets_crosssell_title::before,
.block h4.ets_crosssell_title::before {
    content: '' !important;
    display: block !important;
    width: 100% !important;
    height: 1px !important;
    background: #E0E0E0 !important; /* Color gris de la línea */
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
}

/* Eliminar la línea que aparece después del título */
h4[class*="ets_crosssell_title"]::after,
.ets_crosssell_list_blocks .ets_crosssell_title::after,
.block h4.ets_crosssell_title::after {
    display: none !important;
}

/* Fin de estilos título productos vistos */



/* ===================================================================
   OCULTAR SOLO TABS DE CATEGORÍAS (mantener productos)
   
   Descripción: Oculta únicamente el menú de navegación,
                mantiene visibles los productos
   
   Fecha: 01/10/2025
   =================================================================== */

/* Ocultar solo el menú de tabs */
ul.ets_cs_sub_categories.index {
    display: none !important;
}

/* Alternativa más específica si la anterior no funciona */
.ets_crosssell_list_blocks > ul.ets_cs_sub_categories {
    display: none !important;
}

/* Asegurar que el contenedor de productos permanezca visible */
.tab_content.ets_crosssell_has_sub {
    display: block !important;
}

.featured-products.product_list {
    display: block !important;
}

/* Fin de estilos */

/* ===================================================================
   ESTILOS PARA FLECHAS DE NAVEGACIÓN - PRODUCTOS VISTOS (SLICK SLIDER)
   
   Descripción: Flechas dentro del carousel con margen ajustado
   
   Fecha: 01/10/2025
   =================================================================== */

/* Selectores base para flechas Slick */
.slick-prev.slick-arrow,
.slick-next.slick-arrow,
button.slick-prev,
button.slick-next {
    background: var(--color-neutral-300) !important;
    box-shadow: none !important;
    border-radius: 50% !important;
    width: 50px !important;
    height: 50px !important;
    border: none !important;
    transition: all 0.3s ease !important;
    z-index: 10 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

/* Posicionamiento dentro del carousel con más separación del borde */
.slick-next.slick-arrow,
button.slick-next {
    right: 25px !important;
}

.slick-prev.slick-arrow,
button.slick-prev {
    left: 25px !important;
}

/* Ocultar contenido por defecto */
.slick-prev.slick-arrow::before,
.slick-next.slick-arrow::before,
button.slick-prev::before,
button.slick-next::before {
    display: none !important;
    content: '' !important;
}

/* SVG para NEXT (flecha derecha) */
.slick-next.slick-arrow::after,
button.slick-next::after {
    content: '' !important;
    width: 16px !important;
    height: 16px !important;
    background-color: var(--color-primary-700);
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M16.1716 10.9999L10.8076 5.63589L12.2218 4.22168L20 11.9999L12.2218 19.778L10.8076 18.3638L16.1716 12.9999H4V10.9999H16.1716Z'/%3E%3C/svg%3E") center / contain no-repeat;

    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    display: block !important;
}

/* SVG para PREV (flecha izquierda) */
.slick-prev.slick-arrow::after,
button.slick-prev::after {
    content: '' !important;
    width: 16px !important;
    height: 16px !important;
    background-color: var(--color-primary-700);
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7.8284 12.9999L13.1924 18.3639L11.7782 19.7781L4 11.9999L11.7782 4.2218L13.1924 5.636L7.8284 10.9999H20V12.9999H7.8284Z'/%3E%3C/svg%3E") center / contain no-repeat;

    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    display: block !important;
}

/* Hover en las flechas */
.slick-prev.slick-arrow:hover,
.slick-next.slick-arrow:hover,
button.slick-prev:hover,
button.slick-next:hover {
    background: #C5D0FF !important;
    box-shadow: none !important;
}

/* Mantener el transform de centrado en hover */
.slick-prev.slick-arrow:hover,
.slick-next.slick-arrow:hover {
    transform: translateY(-50%) scale(1.05) !important;
}

/* Hover iconos NEXT */
.slick-next.slick-arrow:hover::after,
button.slick-next:hover::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%234233CF'%3E%3Cpath d='M16.1716 10.9999L10.8076 5.63589L12.2218 4.22168L20 11.9999L12.2218 19.778L10.8076 18.3638L16.1716 12.9999H4V10.9999H16.1716Z'/%3E%3C/svg%3E") !important;
}

/* Hover iconos PREV */
.slick-prev.slick-arrow:hover::after,
button.slick-prev:hover::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%234233CF'%3E%3Cpath d='M16.1716 10.9999L10.8076 5.63589L12.2218 4.22168L20 11.9999L12.2218 19.778L10.8076 18.3638L16.1716 12.9999H4V10.9999H16.1716Z'/%3E%3C/svg%3E") !important;
}

/* Fin de estilos flechas slick slider */

/* ===================================================================
   GAP ENTRE CARDS Y MÁRGENES DEL MÓDULO EN MOBILE - SOLUCIÓN FINAL
   
   Descripción: Gap de 8px centrado entre cards, respetando
                los 16px de margen a ambos lados
   
   Fecha: 03/10/2025
   =================================================================== */

@media screen and (max-width: 768px) {
    /* MÁRGENES DEL MÓDULO COMPLETO - 16px a los lados */
    .ets_crosssell_list_blocks,
    .block.ets_crosssell_list_blocks,
    #ets_crosssell_list_blocks {
        padding-left: 16px !important;
        padding-right: 16px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    /* Contenedor del título también respeta los 16px */
    .ets_crosssell_list_blocks .ets_crosssell_title,
    h4[class*="ets_crosssell_title"] {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    /* Contenedor del slider respeta los 16px del módulo */
    .ets_crosssell_list_blocks .tab_content,
    .ets_crosssell_list_blocks .slick-slider {
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    /* GAP DE 8PX ENTRE CARDS - CENTRADO */
    /* Ajustar el contenedor de la lista */
    .slick-slider .slick-list,
    .ets_crosssell_list_blocks .slick-slider .slick-list,
    .tab_content .slick-slider .slick-list {
        margin-left: -4px !important;
        margin-right: -4px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }
    
    /* Track del slider */
    .slick-slider .slick-track,
    .ets_crosssell_list_blocks .slick-slider .slick-track,
    .tab_content .slick-slider .slick-track {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    
    /* Slides con padding simétrico: 4px a cada lado = 8px de gap */
    .slick-slider .slick-slide,
    .ets_crosssell_list_blocks .slick-slider .slick-slide,
    .tab_content .slick-slider .slick-slide {
        padding-left: 4px !important;
        padding-right: 4px !important;
    }
    
    /* El contenido interno del slide */
    .slick-slider .slick-slide > div,
    .ets_crosssell_list_blocks .slick-slider .slick-slide > div,
    .tab_content .slick-slider .slick-slide > div {
        margin: 0 !important;
    }
    
    /* Si usa grid en lugar de slick */
    .product_list.grid {
        gap: 8px !important;
        grid-gap: 8px !important;
    }
}

/*--------------------------------
    Installments
--------------------------------*/
/*Best installment*/
.installments-best-only {
    color: var(--color-primary-950);
    font-weight: 500;
    border-left: var(--border-width-2) solid var(--color-primary-500);
    background: var(--color-primary-50);
    padding: 0.75rem 0.5rem;
}

.installments-best-only h4{
    color: var(--color-primary-500);
    font-size: 0.875rem;
}

.installments-best-only span,.installments-best-only p{
    margin-bottom: 0px;
    font-size: 0.75rem;
}

/*INSTALLMENTS PRODUCT PAGE*/
#installments-container.installments-block {
    display: flex;
    flex-direction: column;
    padding: 1.2rem;
    margin: 1.5rem 0;
    background: var(--color-neutral-50);
    border-radius: var(--radius-l);
}

#installments-container .installments-body {
    display: flex;
    flex-direction: column;
}

#installments-container .installments-body__label {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 0.4rem;
    font-size: 0.95rem;
    font-weight: 500;
}
#installments-container .installments-body__label h5 {
    color: var(--color-neutral-700);
    font-weight: 600;
    font-size: 0.875rem;
}

#installments-container .installments-body__label p{
    color: var(--color-neutral-600);
    font-weight: 400;
    font-size: 0.75rem;
    
}

#installments-container .installments-body__select {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: var(--border-width-1) solid var(--color-neutral-200);
    border-radius: var(--radius-s);
    background: var(--color-white);
    font-size: 0.75rem;
}

#installments-container .see-more-installments {
    margin-top: 1.2rem;
}

#installments-container .see-more-installments a.installments-modal__trigger{
    color:var(--color-primary-800);
    text-decoration: underline;
    cursor: pointer;
    font-size: 0.75rem;
}

#installments-container .see-more-installments a.installments-modal__trigger:hover {
    color: var(--color-primary-900);
}

.installments-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 1000;
}

.installments-modal.is-open {
    display: flex;
}

.installments-modal__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
}

.installments-modal__dialog {
    position: relative;
    background: #fff;
    padding: 1.5rem;
    border-radius: 6px;
    max-width: 520px;
    width: 90%;
    z-index: 1001;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.2);
}

.installments-modal__close {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    border: none;
    background: transparent;
    font-size: 1.5rem;
    cursor: pointer;
}

.installments-modal__title {
    margin-top: 0;
    margin-bottom: 1rem;
    font-size: 1.2rem;
    font-weight: 600;
}

.installments-modal__table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.95rem;
}

.installments-modal__table th,
.installments-modal__table td {
    padding: 0.5rem;
    text-align: left;
    border-bottom: var(--border-width-1) solid var(--color-neutral-200);
}

.installments-modal__table th {
    background: var(--color-primary-100);
    font-weight: 600;
}

@media (max-width: 575px) {
    .installments-block {
        padding: 1rem;
    }
}


#pack_addtocart {
    border-radius: 50px !important; /* Valor alto para efecto píldora */
}
/* Estado Normal (Sin fondo, con borde y texto color C97B5C) */
button[onclick="clearBox()"] {
    border-radius: 50px !important;       /* Estilo píldora */
    background-color: transparent !important; /* Sin fondo */
    border: 1px solid #C97B5C !important; /* Borde del color deseado */
    color: #C97B5C !important;            /* Texto del color deseado */
    transition: all 0.3s ease;            /* Suaviza el cambio de color */
}

/* Estado Hover (Fondo C97B5C, texto blanco) */
button[onclick="clearBox()"]:hover {
    background-color: #C97B5C !important; /* Fondo sólido al pasar el mouse */
    color: #ffffff !important;            /* Texto blanco */
    border-color: #C97B5C !important;     /* Mantiene el borde del mismo color */
}


/* Estilos cotizador drodown */
/* Cambiar color del precio en el carrito/cotizador */
.price_cart_product, 
.price_cart_product span {
    color: #C97B5C !important;
}

.ce-filters .elementor-field-type-color a.elementor-field-option i[title="Bicolor"]{
    background-repeat: no-repeat;
    background-size: contain;
}



/* Linea horizontal entre tipos y colores de flores - menu */
/* Espaciado simétrico arriba y abajo de la línea */
a[href*="piccolini-roses"] {
  position: relative;
  padding-bottom: 20px !important; /* Espacio total debajo del item */
}

a[href*="piccolini-roses"]::after {
  content: "";
  position: absolute;
  bottom: 10px; /* Mitad del padding-bottom para centrar la línea */
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #ddd;
}

/* Espacio arriba del siguiente elemento (Red roses) */
a[href*="piccolini-roses"] + li {
  margin-top: 10px !important;
}

/* Espaciado simétrico arriba y abajo de la línea en Luxury spray roses */
a[href*="luxury-spray-roses"] {
  position: relative;
  padding-bottom: 20px !important;
}

a[href*="luxury-spray-roses"]::after {
  content: "";
  position: absolute;
  bottom: 10px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #ddd;
}

a[href*="luxury-spray-roses"] + li {
  margin-top: 10px !important;
}

/* Custom filter categories pictures*/
img.ce-category-thumb.custom-img-filter {
    width: 30px;
    height: 30px;
    border-radius: 50%;
}




/* 1. Estilos del Contenedor (Caja) */
div.ps-ups-suggestions.alert.alert-info {
    background-color: #FDFAF7 !important;  /* Fondo Crema */
    border: 1px solid #E7CFBE !important;  /* Borde suave */
    border-radius: 16px !important;        /* Esquinas redondeadas */
    color: #8A5840 !important;             /* Color base del texto */
    box-shadow: none !important;           /* Quitar sombras de Bootstrap si las hay */
}

/* 2. Estilos del Título (Etiqueta Strong) */
div.ps-ups-suggestions.alert.alert-info strong {
    color: #633C23 !important;             /* Color Marrón Oscuro */
    font-weight: 700 !important;
}

/* 3. Estilos del Texto Descriptivo */
div.ps-ups-suggestions.alert.alert-info > div {
    color: #8A5840 !important;             /* Color Marrón Medio */
}

/* 4. Estilos de los Enlaces */
div.ps-ups-suggestions.alert.alert-info ul li a {
    color: #B56849 !important;             /* Color Teja/Terracota */
    text-decoration: underline !important; /* Subrayado obligatorio */
    font-weight: 600 !important;           /* Un poco de peso para que se lea bien */
    transition: opacity 0.3s ease;
}

div.ps-ups-suggestions.alert.alert-info ul li a:hover {
    opacity: 0.8 !important;               /* Efecto suave al pasar el mouse */
}

/* 5. Icono de Flecha después del enlace */
div.ps-ups-suggestions.alert.alert-info ul li a::after {
    content: "\2192";                      /* Código Unicode para flecha derecha (→) */
    display: inline-block !important;
    margin-left: 6px !important;           /* Espacio entre texto y flecha */
    text-decoration: none !important;      /* Intentar que la flecha no se subraye */
    color: #B56849 !important;             /* Mismo color que el enlace */
}



/* --- ESTADO DE ÉXITO (VERDE) --- */
/* Aplicar solo si la caja NO contiene una lista de enlaces (ul) */
div.ps-ups-suggestions.alert.alert-info:not(:has(ul)) {
    background-color: #DEF7EC !important;  /* Verde menta muy suave */
    border: 1px solid #84E1BC !important;  /* Borde verde */
    color: #03543F !important;             /* Texto verde oscuro */
}

/* Estilo del Texto (Strong) en estado de éxito */
div.ps-ups-suggestions.alert.alert-info:not(:has(ul)) strong {
    color: #046C4E !important;             /* Verde más fuerte para el título */
    display: flex !important;              /* Para alinear icono y texto */
    align-items: center !important;
    font-size: 1.1rem !important;
}

/* AÑADIR ICONO DE CHECK (Antes del texto) */
div.ps-ups-suggestions.alert.alert-info:not(:has(ul)) strong::before {
    content: "\2714";                      /* Símbolo de Check (✔) */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    
    /* Diseño del círculo del icono */
    background-color: #31C48D !important;  /* Verde vibrante */
    color: #ffffff !important;             /* Check blanco */
    width: 26px !important;
    height: 26px !important;
    border-radius: 50% !important;         /* Círculo perfecto */
    margin-right: 12px !important;         /* Espacio entre icono y texto */
    font-size: 14px !important;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1) !important; /* Sombra suave */
}



/* Hacer visibles los bordes de los campos del formulario siempre */
#checkout-addresses-step .form-control, 
.form-control {
    border: 1px solid #c0c0c0 !important; /* Borde gris visible */
    background-color: #ffffff !important; /* Fondo blanco */
    padding: 10px 15px; /* Un poco de espacio interno si hace falta */
}

/* Opcional: Cambiar el color cuando se selecciona para dar feedback */
#checkout-addresses-step .form-control:focus,
.form-control:focus {
    border: 1px solid #2fb5d2 !important; /* Color de tu marca al escribir */
    outline: none;
}



/* Forzar todo a minúscula primero */
.ce-product-name a {
    text-transform: lowercase !important;
    display: inline-block; /* Necesario para que funcione el first-letter */
}

/* Forzar solo la primera letra a mayúscula */
.ce-product-name a::first-letter {
    text-transform: uppercase !important;
}






/* ========================================
   SOLUCIÓN FINAL: COMPATIBILIDAD TOTAL (WRAPPER ABSOLUTO)
   ======================================== */

/* 1. ELIMINAR INPUT NATIVO */
body .custom-checkbox input[type="checkbox"] {
    display: none !important;
    position: absolute !important;
    z-index: -1 !important;
}

/* 2. LIMPIEZA Y POSICIONAMIENTO DEL CONTENEDOR SPAN */
/* AQUÍ ESTÁ EL TRUCO: Hacemos el contenedor absoluto también. 
   Así deja de empujar el texto hacia abajo en la página problemática. */
body .custom-checkbox label > span {
    position: absolute !important; /* Sacarlo del flujo */
    left: 0 !important;
    top: 3px !important;           /* Alineación óptica vertical global */
    
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 !important;
    outline: none !important;
    width: 20px !important;        /* Ancho fijo del icono */
    height: 20px !important;       /* Alto fijo del icono */
    z-index: 1 !important;
}

/* 3. CONFIGURACIÓN DEL LABEL (EL CARRIL DE TEXTO) */
.custom-checkbox label {
    display: block !important;
    position: relative !important;
    padding-left: 32px !important;   /* Espacio reservado para el checkbox */
    text-align: left !important;
    cursor: pointer !important;
    min-height: 24px !important;
    margin-bottom: 0 !important;     /* Evitar márgenes extraños */
}

/* 4. EL CHECKBOX (ICONO) */
/* Como el padre (span) ya es absoluto y está posicionado, 
   el icono solo necesita llenar ese espacio. */
.custom-checkbox i.material-icons,
.custom-checkbox .material-icons {
    position: static !important;     /* Ya no necesita ser absoluto, su padre lo es */
    width: 100% !important;          /* Llenar el span padre */
    height: 100% !important;
    
    border: 2px solid #ccc !important;
    border-radius: 3px !important;
    background-color: #fff !important;
    
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    
    font-size: 0 !important;
    color: transparent !important;
    box-sizing: border-box !important;
}

/* 5. ESTADO MARCADO (ROJO) */
.custom-checkbox input[type="checkbox"]:checked + span i.material-icons,
.custom-checkbox input[type="checkbox"]:checked + span .material-icons,
.custom-checkbox input[type="checkbox"]:checked ~ span i.material-icons {
    background-color: #751F1F !important;
    border-color: #751F1F !important;
    color: #ffffff !important;
    opacity: 1 !important;
}

/* 6. EL CHECK (✓) */
.custom-checkbox input[type="checkbox"]:checked + span i.material-icons::after,
.custom-checkbox input[type="checkbox"]:checked + span .material-icons::after,
.custom-checkbox input[type="checkbox"]:checked ~ span i.material-icons::after {
    content: "" !important;
    display: block !important;
    width: 5px !important;
    height: 10px !important;
    border: solid white !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) !important;
    margin-top: -2px !important;
}

/* 7. ARREGLO DE TEXTOS Y DESCRIPCIÓN */

/* Ocultar <br> */
.custom-checkbox label br {
    display: none !important;
}

/* Resetear estilos de texto */
.custom-checkbox label > span:not(:first-child), /* Si el texto está en un span */
.custom-checkbox label {                         /* Si el texto está suelto */
    line-height: 1.5 !important;
}

/* Descripción (em) */
.custom-checkbox label em {
    display: block !important;
    width: 100% !important;
    margin-top: 2px !important;
    padding: 0 !important;
    font-style: normal !important;
    color: #666 !important;
    line-height: 1.4 !important;
}

/* Reset párrafos internos */
.custom-checkbox label em p {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
}

/* Hover */
.custom-checkbox label:hover i.material-icons {
    border-color: #999 !important;
}



/* Ocultar el ítem del menú que lleva a Descuentos (el que no tiene texto) */
a[href*="discount"] {
    display: none !important;
}

/* Ocultar también el contenedor de la lista (el renglón 4) para que no quede un hueco vacío */
li.menu-item-account-4 {
    display: none !important;
}




/* Forzar ancho completo del footer solo en la página de Checkout */
body#checkout #footer {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    background: transparent !important; /* Quita el fondo blanco por defecto si estorba */
}

/* En caso de que el tema tenga un contenedor interno limitando el ancho */
body#checkout #footer > .container {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/**
Packs cart-item
*/
/* Base container */
.upp_cart_pack {
  position: relative;
  width: 500px;
  max-width: 500px;
  transform: translateX(-450px);
}

/* Grid base */
.upp-pack-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(110px, 1fr));
  gap: var(--space-s);
  padding: var(--space-xs);
  background: var(--color-white);
  border: var(--border-width-1) solid var(--color-border-subtle);
  border-radius: var(--radius-m);
}

/* Card */
.upp-pack-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  padding: var(--space-xs);
  background: var(--color-neutral-50);
  border: var(--border-width-1) solid var(--color-border-default);
  border-radius: var(--radius-s);
  text-align: center;
}

/* Image */
.upp-pack-image img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: var(--radius-s);
  border: var(--border-width-1) solid var(--color-border-subtle);
}

/* Text */
.upp-pack-name {
  font-size: 12px;
  font-weight: 600;
  color: var(--color-neutral-900);
  line-height: 1.2;
}

.upp-pack-variant {
  font-size: 11px;
  color: var(--color-neutral-700);
}

/* Hover */
.upp-pack-card:hover {
  border-color: var(--color-primary-400);
  background: var(--color-primary-50);
}

/* ===================== */
/* 📱 TABLET (≤ 992px)   */
/* ===================== */
@media (max-width: 992px) {
  .upp-pack-grid {
    grid-template-columns: repeat(auto-fill, minmax(96px, 1fr));
    gap: var(--space-xs);
  }

  .upp-pack-name {
    font-size: 11px;
  }
}

/* ===================== */
/* 📱 MOBILE (≤ 768px)   */
/* ===================== */
@media (max-width: 768px) {
  .upp_cart_pack {
    max-width: 100%;
  }

  .upp-pack-grid {
    grid-template-columns: repeat(auto-fill, minmax(88px, 1fr));
    gap: var(--space-xs);
  }

  .upp-pack-card {
    padding: var(--space-xxs);
  }

  .upp-pack-name {
    font-size: 11px;
  }

  .upp-pack-variant {
    font-size: 10px;
  }
}

/* ===================== */
/* 📱 MOBILE PEQUEÑO     */
/* ===================== */
@media (max-width: 480px) {
  .upp-pack-grid {
    grid-template-columns: repeat(3, 1fr);
  }

  .upp-pack-name {
    font-size: 10px;
  }

  .upp-pack-variant {
    display: none; /* ultra compacto */
  }
}



/* 1. Forzar que los elementos dentro del formulario de registro ocupen todo el ancho */
#registration .register-form .form-group .col-md-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;       /* Fuerza al elemento a no encogerse y ocupar 100% */
    max-width: 100%;      /* Asegura que no tenga límites de ancho */
    width: 100%;
    text-align: left;     /* Alinea el texto a la izquierda (seguro ahora está a la derecha) */
}

/* 2. Ajustar el espaciado del Label (Título) */
#registration .register-form .form-control-label {
    padding-top: 0;       /* Quita el relleno superior que lo centraba verticalmente */
    padding-bottom: 5px;  /* Da un pequeño respiro antes del input */
    font-weight: bold;    /* Opcional: Hace que se vea más claro */
    text-align: left !important; /* Fuerza bruta para alinear a la izquierda si el anterior falla */
}

/* 3. (Opcional) Ajustar el input para que no se pegue con el siguiente campo */
#registration .register-form .form-control {
    margin-bottom: 10px;
}


/* Quitar padding izquierdo en la información extra del transportista */
.carrier-extra-content .col-lg-12 {
    padding-left: 0 !important;
}

/* Opcional: Si todavía ves mucho espacio, puede ser culpa del "container" anidado */
.carrier-extra-content .container {
    padding-left: 0 !important;
    width: 100% !important; /* Asegura que ocupe todo el ancho disponible */
    max-width: 100% !important;
}


/* 1. Resetear el contenedor 'intruso' dentro de las opciones de envío */
.carrier-extra-content .container {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    width: 100% !important;
    max-width: 100% !important; /* Evita que se centre o limite el ancho */
}

/* 2. Quitar márgenes negativos de la fila (row) para evitar desbordes */
.carrier-extra-content .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

/* 3. Quitar el relleno izquierdo de la columna para alinear el texto */
.carrier-extra-content .col-lg-12 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.forgotten-password .form-fields .center-email-fields button{
        padding: 0.5rem 1.25rem;
        margin-left: 1rem;
}/* End custom CSS */