.elementor-511 .elementor-element.elementor-element-10d45e2{--display:flex;--position:absolute;--min-height:100vh;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;top:0px;}body:not(.rtl) .elementor-511 .elementor-element.elementor-element-10d45e2{left:0px;}body.rtl .elementor-511 .elementor-element.elementor-element-10d45e2{right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-511 .elementor-element.elementor-element-dd44f0f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:center;}.elementor-511 .elementor-element.elementor-element-dd44f0f.elementor-element{--align-self:center;}.elementor-511 .elementor-element.elementor-element-dd44f0f .elementor-heading-title{font-family:"Inter", Sans-serif;font-size:173px;font-weight:700;color:#FFFFFF;}.elementor-511 .elementor-element.elementor-element-ec5edec{text-align:center;}.elementor-511 .elementor-element.elementor-element-ec5edec .elementor-heading-title{font-family:"Inter", Sans-serif;font-weight:700;color:#FFFFFF;}.elementor-511 .elementor-element.elementor-element-67e2097{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-511 .elementor-element.elementor-element-ab98176{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-511 .elementor-element.elementor-element-5f27028{margin:0% 0% calc(var(--kit-widget-spacing, 0px) + 0%) 0%;padding:0px 0px 0px 0px;--e-form-steps-indicators-spacing:22px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:20px;--e-form-steps-divider-gap:10px;}.elementor-511 .elementor-element.elementor-element-5f27028.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-group{padding-right:calc( 11px/2 );padding-left:calc( 11px/2 );margin-bottom:11px;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-form-fields-wrapper{margin-left:calc( -11px/2 );margin-right:calc( -11px/2 );margin-bottom:-11px;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-511 .elementor-element.elementor-element-5f27028 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-511 .elementor-element.elementor-element-5f27028 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-511 .elementor-element.elementor-element-5f27028 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-type-html{padding-bottom:0px;color:#7A7A7A;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#FFFFFF00;border-color:#FFFFFF;border-width:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-group .elementor-select-wrapper select{background-color:#FFFFFF00;border-color:#FFFFFF;border-width:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-group .elementor-select-wrapper::before{color:#FFFFFF;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-button{font-family:"Inter", Sans-serif;font-weight:700;border-radius:15px 15px 15px 15px;}.elementor-511 .elementor-element.elementor-element-5f27028 .e-form__buttons__wrapper__button-next{background-color:#FFFFFFCC;color:#000000;transition-duration:300ms;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-button[type="submit"]{background-color:#FFFFFFCC;color:#000000;transition-duration:300ms;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-button[type="submit"] svg *{fill:#000000;transition-duration:300ms;}.elementor-511 .elementor-element.elementor-element-5f27028 .e-form__buttons__wrapper__button-previous{color:#FFFFFF;transition-duration:300ms;}.elementor-511 .elementor-element.elementor-element-5f27028 .e-form__buttons__wrapper__button-next:hover{background-color:#FFFFFF;color:#000000;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-button[type="submit"]:hover{background-color:#FFFFFF;color:#000000;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-button[type="submit"]:hover svg *{fill:#000000;}.elementor-511 .elementor-element.elementor-element-5f27028 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-message{font-family:"Roboto", Sans-serif;font-weight:400;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}:root{--page-title-display:none;}@media(min-width:768px){.elementor-511 .elementor-element.elementor-element-ab98176{--content-width:100vw;}}@media(max-width:1024px){.elementor-511 .elementor-element.elementor-element-ec5edec{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}}@media(max-width:767px){.elementor-511 .elementor-element.elementor-element-dd44f0f{margin:-100px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-511 .elementor-element.elementor-element-dd44f0f .elementor-heading-title{font-size:112px;}.elementor-511 .elementor-element.elementor-element-ec5edec{margin:-15vw 0vw calc(var(--kit-widget-spacing, 0px) + 0vw) 0vw;text-align:center;}.elementor-511 .elementor-element.elementor-element-5f27028{width:var( --container-widget-width, 236.469px );max-width:236.469px;margin:-30vw 0vw calc(var(--kit-widget-spacing, 0px) + 0vw) 0vw;padding:0vw 0vw 0vw 0vw;--container-widget-width:236.469px;--container-widget-flex-grow:0;}.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-button span{justify-content:center;}.elementor-511 .elementor-element.elementor-element-ae8b634{width:100%;max-width:100%;margin:0vw 0vw calc(var(--kit-widget-spacing, 0px) + 0vw) 0vw;padding:0px 0px 0px 0px;text-align:center;}.elementor-511 .elementor-element.elementor-element-ae8b634.elementor-element{--align-self:center;--flex-grow:1;--flex-shrink:0;}}/* Start custom CSS for heading, class: .elementor-element-dd44f0f *//* --- COREOGRAFÍA: CALIDAD IPHONE (Sin pixelado) --- */

.nulo-salvacion {
    /* Mantenemos tus 5 segundos de elegancia */
    animation: nuloAscension 5s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
    opacity: 0;
    /* Añadimos 'text-shadow' a will-change para que el móvil se prepare */
    will-change: transform, opacity, filter, letter-spacing, text-shadow;
    /* Truco para iPhone: suavizado de fuentes */
    -webkit-font-smoothing: antialiased;
}

@keyframes nuloAscension {
  /* FASE 1: APARICIÓN */
  0% {
    opacity: 0;
    filter: blur(20px);
    transform: scale(1.1) translateY(0);
    letter-spacing: 25px;
    text-shadow: 0 0 40px rgba(255, 255, 255, 0.8);
  }
  
  /* LLEGA AL CENTRO RÁPIDO (Al 15% = 0.75s) */
  15% {
    opacity: 1;
    filter: blur(0);
    transform: scale(1) translateY(0);
    letter-spacing: 0px;
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.8), 0 0 30px rgba(255, 255, 255, 0.3);
  }

  /* ESPERA CORTA (Solo hasta el 25% = 1.25s en total) */
  /* Aquí es donde ganamos ese medio segundo de agilidad */
  25% {
    transform: scale(1) translateY(0); 
    text-shadow: 0 0 10px rgba(255, 255, 255, 0.8), 0 0 30px rgba(255, 255, 255, 0.3);
  }

  /* FASE 3: ASCENSIÓN */
  100% {
    opacity: 1;
    filter: blur(0);
    transform: scale(0.9) translateY(-40vh); 
    text-shadow: 0 0 15px rgba(255, 255, 255, 0.2);
    color: #ffffff;
  }
}
/* --- LATIDO DE DIOS (Para el Logo NULO) --- */
/* Añade esta clase al widget del Logo en Elementor */

.nulo-salvacion {
    /* Mantenemos tu animación de entrada original... */
    /* Y le añadimos esta segunda animación que empieza CUANDO TERMINA la primera */
    animation: 
        nuloAscension 5s cubic-bezier(0.2, 0.8, 0.2, 1) forwards, 
        nuloLatido 6s ease-in-out infinite 5.5s; /* Empieza a los 5.5s y no para nunca */
}

@keyframes nuloLatido {
    0%, 100% {
        text-shadow: 0 0 15px rgba(255, 255, 255, 0.2); /* Brillo normal */
        opacity: 1;
    }
    50% {
        /* Brillo un poco más fuerte (INHALAR) */
        text-shadow: 0 0 25px rgba(255, 255, 255, 0.5);
        opacity: 0.95; /* Un pelín menos opaco para dar efecto de "gas" */
    }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-ec5edec *//* --- EL SLOGAN: SUSURRO EN EL PIE DE PÁGINA --- */

.slogan-nulo {
    /* POSICIÓN: Fija abajo, no se mueve con el logo */
    position: fixed;
    /* Lo ponemos un poco por encima de los enlaces legales (que están a 20px) */
    bottom: 10vh; 
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 5;
    
    /* ESTILO ULTRA-MINIMALISTA */
    color: #333333; /* Gris muy oscuro, casi se funde con el negro */
    font-size: 9px; /* Minúsculo */
    text-transform: uppercase;
    /* Mucha separación para que parezca una textura, no una frase */
    letter-spacing: 6px; 
    font-weight: 400;
    
    /* ANIMACIÓN: Aparición fantasmal muy lenta */
    opacity: 0;
    /* Tarda 5 segundos en aparecer y empieza tarde (a los 3s) */
    animation: aparicionSloganFooter 5s ease-in forwards;
    animation-delay: 3.0s;
}

/* Quitamos cualquier negrita o color extra a la palabra NULO */
.slogan-nulo strong,
.slogan-nulo b {
    color: inherit; /* Hereda el mismo gris oscuro */
    font-weight: normal; /* Quitamos la negrita */
}

@keyframes aparicionSloganFooter {
    0% { 
        opacity: 0; 
        filter: blur(2px); /* Empieza un poco borroso */
    }
    100% { 
        opacity: 1; 
        filter: blur(0);
    }
}
.slogan-nulo {
    /* ... resto de cosas ... */
    
    /* AHORA MISMO PARECE QUE ESTÁ EN #FFFFFF (Blanco) */
    /* PRUEBA CON ESTE GRIS PARA QUE SEA MÁS SUTIL: */
    color: #666666; 
    
    /* ... resto de cosas ... */
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-5f27028 *//* --- 1. ENTRADA CON EFECTO NIEBLA (Sincronizada a 1.25s) --- */
.entrada-form {
    opacity: 0;
    
    /* ANIMACIÓN: 3.5s de subida con efecto de enfoque (blur) */
    animation: aparecerDesdeNiebla 3.5s cubic-bezier(0.2, 0.8, 0.2, 1) forwards;
    
    /* PUNTO DULCE: Arranca exacto cuando el logo NULO empieza a moverse */
    animation-delay: 1.25s;
    
    /* Optimización para móviles */
    will-change: transform, opacity, filter;
}

@keyframes aparecerDesdeNiebla {
    0% { 
        opacity: 0; 
        /* Empieza más abajo y un pelín más pequeño */
        transform: translateY(15vh) scale(0.98); 
        /* Empieza borroso (niebla) */
        filter: blur(10px); 
    }
    
    /* Al 40% ya enfocamos para leer bien */
    40% {
        opacity: 1;
        filter: blur(0px); 
    }

    100% { 
        opacity: 1; 
        transform: translateY(0) scale(1); 
        filter: blur(0);
    }
}


/* --- 2. CONTENEDOR Y BARRA BLANCA (ANIMADA) --- */
.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-group:not(.elementor-field-type-submit) {
    position: relative;
    overflow: hidden;
}

/* La barra blanca que se llena (Encima de la gris) */
.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-group:not(.elementor-field-type-submit)::after {
    content: '';
    position: absolute;
    /* AJUSTE: Pegada a la base. Si no tapa la gris, ajusta a 24px o 26px */
    bottom: 25px; 
    left: 0;
    width: 0%; 
    height: 2px; /* Un poco más gruesa para destacar */
    background-color: #ffffff; /* BLANCO PURO */
    transition: width 0.5s cubic-bezier(0.25, 0.8, 0.25, 1);
    z-index: 10;
    pointer-events: none;
}

/* Lógica: Se llena al tocar o si hay texto */
.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-group:not(.elementor-field-type-submit):focus-within::after,
.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-group:has(.elementor-field-textual:not(:placeholder-shown))::after {
    width: 100%;
}


/* --- 3. INPUTS (CON LÍNEA BASE FINA SIEMPRE VISIBLE) --- */
.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-textual {
    background-color: transparent !important;
    border: none;
    
    /* LÍNEA BASE FIJA: Fina y sutil (25% opacidad) */
    border-bottom: 1px solid rgba(255, 255, 255, 0.25) !important; 
    
    border-radius: 0px;
    color: #ffffff;
    
    padding-top: 15px; 
    padding-bottom: 0px !important; 
    padding-left: 0px;
    padding-right: 0px;
    
    margin-bottom: 25px; 
    font-size: 16px;
    transition: all 0.4s ease;
    width: 100%;
}

.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-field-textual:focus {
    outline: none !important;
    box-shadow: none !important;
}


/* --- 4. PLACEHOLDER (Texto de ayuda) --- */
.elementor-511 .elementor-element.elementor-element-5f27028 ::placeholder {
    color: #888888; 
    text-transform: uppercase; 
    font-size: 11px; 
    letter-spacing: 3px; 
    font-weight: 400;
}


/* --- 5. BOTÓN (AHORA CON EFECTO DE CRECIMIENTO) --- */
.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-button {
    background-color: #ffffff !important;
    color: #000000 !important;
    border-radius: 50px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
    margin-top: 10px;
    width: 100%;
    border: none;
    
    /* ACTIVAMOS LA TRANSICIÓN PARA QUE CREZCA SUAVE */
    transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), box-shadow 0.3s ease !important;
}

/* Estado Hover: Crece un 5% al pasar el ratón */
.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-button:hover {
    background-color: #ffffff !important;
    color: #000000 !important;
    transform: scale(1.05) !important; /* AQUÍ ESTÁ EL CRECIMIENTO */
   
}

/* Estado Click: Se encoge un poco al pulsar */
.elementor-511 .elementor-element.elementor-element-5f27028 .elementor-button:active {
    transform: scale(0.95) !important;
}


/* --- 6. FIX AUTOCOMPLETAR (Evita fondo azul) --- */
.elementor-511 .elementor-element.elementor-element-5f27028 input:-webkit-autofill,
.elementor-511 .elementor-element.elementor-element-5f27028 input:-webkit-autofill:hover, 
.elementor-511 .elementor-element.elementor-element-5f27028 input:-webkit-autofill:focus {
    -webkit-text-fill-color: #ffffff !important;
    -webkit-box-shadow: 0 0 0px 1000px #000000 inset !important;
    transition: background-color 5000s ease-in-out 0s;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ae8b634 *//* --- FOOTER FANTASMA (Legalidad Invisible con Fade-In) --- */

.legal-fantasma {
    /* Posición fija abajo */
    position: fixed;
    bottom: 20px; 
    left: 0;
    width: 100%;
    text-align: center;
    z-index: 5; 

    /* --- ANIMACIÓN DE ENTRADA --- */
    opacity: 0; /* Empieza invisible */
    
    /* Duración: 4s (Muy lento para ser sutil)
       Delay: 3.0s (Espera a que NULO suba y el formulario empiece) */
    animation: aparicionFantasma 4s ease-in forwards;
    animation-delay: 3.0s;
}

/* Definimos el Fade-In suave */
@keyframes aparicionFantasma {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

/* Estilos del texto (Tus estilos originales) */
.legal-fantasma a, 
.legal-fantasma p,
.legal-fantasma span {
    color: #333333; /* Gris casi negro */
    font-family: inherit; 
    font-size: 10px; 
    text-transform: uppercase;
    letter-spacing: 2px;
    text-decoration: none; 
    transition: all 0.3s ease;
}

/* Hover para hacerlo legible si lo buscan */
.legal-fantasma:hover a,
.legal-fantasma:hover p {
    color: #666666; 
}/* End custom CSS */