.elementor-kit-9{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-8096473:#53998A;--e-global-color-3b92249:#FFFFFF33;--e-global-color-bca1c7a:#000000;--e-global-color-1a16530:#ED8A66;--e-global-color-e27375c:#5EBBEF;--e-global-color-d16b475:#94CE5B;--e-global-color-a330d04:#FFBD59;--e-global-color-d37cddf:#D66BF9;--e-global-color-e13a77a:#E5E7EB;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */.ancla {
    scroll-margin-top: 128px;
}

span.elementor-heading-title {
    display: block;
}

.elementor-heading-title {
    text-wrap: balance;
}

/*@media (max-width: 767px) {*/
/*    .elementor-heading-title {*/
/*        text-wrap: balance;*/
/*    }*/
/*}*/

/* =======================================================
   ALERTAS FLOTANTES MODERNAS (TOAST NOTIFICATIONS V2)
   ======================================================= */

/* Contenedor principal flotante */
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error {
    /* Posicionamiento flotante (Abajo a la derecha) */
    position: fixed !important;
    bottom: 30px !important;
    top: auto !important;
    right: 30px !important;
    z-index: 99999 !important; 
    width: calc(100% - 60px) !important;
    max-width: 420px !important;
    margin: 0 !important;
    overflow: hidden !important; /* Fundamental para que la barra del temporizador no se salga de las esquinas */

    /* Estilos visuales (Fondo blanco, sin borde, sombra suave) */
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px !important;
    font-weight: 400 !important; /* Nuevo peso para body */
    color: #4B5563 !important; /* Nuevo color de body */
    background-color: #FFFFFF !important;
    border-radius: 12px !important; 
    border: none !important; 
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.06) !important; /* Sombra muy sutil */
    padding: 20px 24px !important;

    /* Alineación con Flexbox */
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    outline: none !important; /* Sin borde de focus */

    /* Animación: Entra, espera 5s, y se desvanece (desaparece) */
    animation: slideUpBottomRight 0.5s cubic-bezier(0.25, 0.8, 0.25, 1) forwards,
               fadeOutToast 0.5s 5s forwards !important; 
}

/* =======================================================
   TEMPORIZADOR VISUAL (Barra de progreso)
   ======================================================= */
.woocommerce-notices-wrapper .woocommerce-message::after,
.woocommerce-notices-wrapper .woocommerce-info::after,
.woocommerce-notices-wrapper .woocommerce-error::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    height: 4px;
    background-color: #53998A; /* Nuevo color principal para la barra */
    width: 100%;
    animation: timerProgress 5s linear forwards;
}

/* Barra negra para los errores */
.woocommerce-notices-wrapper .woocommerce-error::after {
    background-color: #000000 !important; 
}

/* Títulos y textos en negrita */
.woocommerce-message strong,
.woocommerce-info strong,
.woocommerce-error strong {
    font-weight: 700 !important; /* Nuevo peso para strong */
    color: #000000 !important; /* Nuevo color para títulos/strong */
}

/* Ocultamos el icono antiguo */
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
    display: none !important; 
}

/* =======================================================
   BOTONES DENTRO DE LA ALERTA (Estilo Píldora)
   ======================================================= */

.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important; /* Nuevo peso para botón */
    font-size: 14px !important;
    background-color: #53998A !important; /* Nuevo color principal */
    color: #FFFFFF !important;
    border-radius: 100px !important; /* Estilo píldora */
    padding: 16px 24px !important; 
    border: none !important;
    outline: none !important; /* Sin outline al hacer click/focus */
    text-decoration: none !important;
    margin: 0 !important;
    float: none !important; 
    white-space: nowrap !important; 
    transition: transform 0.2s ease, background-color 0.3s ease, box-shadow 0.2s ease !important;
}

/* Evitar outline genérico en los enlaces */
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-error a {
    outline: none !important;
}

/* Efecto hover en el botón */
.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover {
    background-color: #000000 !important; /* Hover en negro */
    color: #FFFFFF !important;
    transform: translateY(-2px) !important; /* Se levanta un poco */
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2) !important; /* Sombra ajustada a negro */
}

/* =======================================================
   ANIMACIONES CLAVE
   ======================================================= */

/* Animación de entrada */
@keyframes slideUpBottomRight {
    0% { transform: translateY(100px); opacity: 0; }
    100% { transform: translateY(0); opacity: 1; }
}

/* Animación de salida (Desaparece de la vista y se desactiva) */
@keyframes fadeOutToast {
    0% { opacity: 1; visibility: visible; }
    100% { 
        opacity: 0; 
        visibility: hidden; 
        transform: translateY(20px); 
        pointer-events: none; /* Evita que estorbe aunque esté invisible */
        height: 0; padding: 0; margin: 0; /* Colapsa el espacio */
    }
}

/* Animación de la barra de progreso */
@keyframes timerProgress {
    0% { width: 100%; }
    100% { width: 0%; }
}

/* =======================================================
   RESPONSIVE (MÓVILES)
   ======================================================= */

@media (max-width: 768px) {
    .woocommerce-notices-wrapper .woocommerce-message,
    .woocommerce-notices-wrapper .woocommerce-info,
    .woocommerce-notices-wrapper .woocommerce-error {
        bottom: 20px !important; /* Espacio inferior para móviles */
        right: 20px !important;
        left: 20px !important;
        width: auto !important;
        max-width: 100% !important;
        padding: 16px 20px !important; 
    }
    
    /* Adaptamos el botón en móviles si fuera necesario */
    .woocommerce-message .button,
    .woocommerce-info .button,
    .woocommerce-error .button {
        padding: 12px 20px !important; 
        width: 100% !important; /* En móviles a veces es mejor que el botón ocupe todo el ancho */
        text-align: center !important;
    }
}/* End custom CSS */