.elementor-1554 .elementor-element.elementor-element-ee5fa09{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-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-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.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-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.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-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.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-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.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-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.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-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group.recaptcha_v3-bottomleft, .elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-labels-inline .elementor-field-group > label{padding-left:5px;}body:not(.rtl) .elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-labels-inline .elementor-field-group > label{padding-right:5px;}body .elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-labels-above .elementor-field-group > label{padding-bottom:5px;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group > label, .elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-html{padding-bottom:0px;font-family:"Anybody", Sans-serif;font-size:1.1rem;font-weight:400;line-height:1.2em;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group .elementor-field, .elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-subgroup label{font-family:"Anybody", Sans-serif;font-size:16px;font-weight:400;line-height:24px;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#F5F5F5;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group .elementor-select-wrapper select{background-color:#F5F5F5;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-button span{justify-content:center;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .e-form__buttons__wrapper__button-next{background-color:#002FE7;color:#ffffff;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-button[type="submit"]{background-color:#002FE7;color:#ffffff;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .e-form__buttons__wrapper__button-next:hover{background-color:#FFC400;color:#ffffff;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-button[type="submit"]:hover{background-color:#FFC400;color:#ffffff;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-button{border-radius:10px 10px 10px 10px;}.elementor-1554 .elementor-element.elementor-element-8d4b90e{--e-form-steps-indicators-spacing:20px;--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:1px;--e-form-steps-divider-gap:10px;padding:30px 30px 30px 30px;background-color:var( --e-global-color-0658370 );border-radius:30px 30px 30px 30px;}@media(max-width:1024px){.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}}@media(max-width:767px){.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-1554 .elementor-element.elementor-element-8d4b90e{padding:10px 10px 10px 10px;}}/* Start custom CSS for form, class: .elementor-element-8d4b90e *//* =======================================================
   0. VINCULACIÓN CON VARIABLES GLOBALES DE ELEMENTOR
   ======================================================= */
.elementor-1554 .elementor-element.elementor-element-8d4b90e {
    --color-principal: var(--e-global-color-fcb04a4); /* Azul oscuro */
    --color-hover: var(--e-global-color-secondary);    /* Azul claro */
    --color-acento: var(--e-global-color-accent);       /* Amarillo destacar */
    --fondo-check: var(--e-global-color-fc633bc);      /* Amarillo sutil */
}

/* =======================================================
   1. ESTILOS DE "TARJETAS" PARA RADIO BUTTONS (PREGUNTAS)
   ======================================================= */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-radio .elementor-field-option input[type="radio"] {
    display: none;
}

.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-radio .elementor-field-option label {
    display: block;
    position: relative;
    padding: 10px 16px; 
    margin-bottom: 6px;  
    background-color: #ffffff;
    border: 1px solid #dcdcdc;
    border-radius: 6px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 500;
    transition: all 0.25s ease;
    text-align: left;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-radio .elementor-field-option label:hover {
    border-color: var(--color-hover); 
    background-color: #ffffff;
    transform: translateY(-1px);
}

.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-radio .elementor-field-option input[type="radio"]:checked + label {
    background-color: var(--fondo-check); 
    border-color: var(--color-principal);   
    color: var(--color-principal);          
    font-weight: bold;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.06);
}

.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-radio .elementor-field-option input[type="radio"]:checked + label::after {
    content: "✓";
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 16px;
    font-weight: bold;
    color: var(--color-acento); 
}

/* =======================================================
   2. ESTILOS MODERNOS PARA INPUTS (NOMBRE, EMAIL...)
   ======================================================= */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group .elementor-field-textual {
    background-color: #ffffff;
    border: 1px solid #dcdcdc;
    border-radius: 6px;
    padding: 10px 16px; 
    font-size: 15px;
    color: #333;
    transition: all 0.25s ease;
}

.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group .elementor-field-textual:focus {
    border-color: var(--color-principal); 
    background-color: #ffffff;
    outline: none;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.05);
}

.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-label {
    margin-bottom: 4px; 
    font-weight: 600;
    font-size: 14px;
    color: #444;
}

.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-group .elementor-field-textual::placeholder {
    color: #b0b0b0;
    font-weight: 400;
}

/* =======================================================
   3. CHECKBOX DE POLÍTICA DE PRIVACIDAD (CENTRADO Y COMPACTO)
   ======================================================= */

/* 3.1 Ocultar el título "Acepto" superior */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance .elementor-field-label {
    display: none;
}

/* 3.2 Ocultar el checkbox nativo de Elementor */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance input[type="checkbox"] {
    display: none;
}

/* 3.3 Tarjeta del label (Centrada, con espacio arriba para el check de 20px) */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance label {
    display: block;
    position: relative;
    padding: 42px 16px 12px 16px; 
    background-color: #ffffff;
    border: 1px solid #dcdcdc;
    border-radius: 6px;
    cursor: pointer;
    font-size: 13px; 
    line-height: 1.4;
    color: #555;
    text-align: center !important; 
    transition: all 0.25s ease;
    user-select: none;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05);
}

/* 3.4 Hover en la tarjeta */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance label:hover {
    border-color: var(--color-hover);
    transform: translateY(-1px);
}

/* 3.5 La CAJITA del Check (Centrada arriba y escalada a 20px) */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance label::before {
    content: "";
    position: absolute;
    top: 12px;
    left: 50%;
    transform: translateX(-50%); 
    width: 20px;                 
    height: 20px;                
    border: 1px solid #cccccc; 
    border-radius: 4px;
    background-color: #ffffff;
    transition: all 0.2s ease;
}

/* 3.6 Hover sobre la tarjeta también ilumina la cajita */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance label:hover::before {
    border-color: var(--color-hover);
}

/* 3.7 El TICK amarillo (Centrado dentro de la cajita de 20px) */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance label::after {
    content: "✓"; 
    position: absolute;
    top: 11px; 
    left: 50%;
    transform: translateX(-50%) scale(0);
    font-size: 14px; 
    color: var(--color-acento); 
    font-weight: bold;
    opacity: 0; 
    transition: all 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

/* 3.8 ESTADO MARCADO */

/* La tarjeta cambia al fondo amarillo sutil */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance input[type="checkbox"]:checked + label {
    background-color: var(--fondo-check); 
    border-color: var(--color-principal);   
    color: var(--color-principal);          
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.06);
}

/* La cajita se rellena de azul oscuro */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance input[type="checkbox"]:checked + label::before {
    background-color: var(--color-principal);
    border-color: var(--color-principal);
}

/* El tick amarillo aparece */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance input[type="checkbox"]:checked + label::after {
    opacity: 1;
    transform: translateX(-50%) scale(1);
}

/* Ajuste del enlace legal dentro de la tarjeta */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance label a {
    color: var(--color-principal); 
    text-decoration: underline;
    font-weight: 600;
}

/* =======================================================
   4. ESPACIO VERTICAL PERFECTO (10px arriba y 50px abajo)
   ======================================================= */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-acceptance {
    margin-top: 10px !important;
    margin-bottom: 50px !important; 
}

/* =======================================================
   5. TIPOGRAFÍA UNIFICADA PARA TEXTOS GENERALES
   ======================================================= */
.elementor-1554 .elementor-element.elementor-element-8d4b90e p {
    font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-size: calc(var(--e-global-typography-accent-font-size) * 0.95);
    font-weight: var(--e-global-typography-accent-font-weight);
    line-height: 1.4;
    color: var(--e-global-color-primary);
}

/* =======================================================
   6. TÍTULOS EN CAMPOS HTML (PASOS DEL FORMULARIO)
   ======================================================= */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-html {
    text-align: center !important;     
    margin: 10px 0 8px 0 !important;   
    padding: 0 !important;             
}

.elementor-1554 .elementor-element.elementor-element-8d4b90e .elementor-field-type-html p {
    color: var(--color-principal) !important; 
    text-align: center !important;            
    margin: 0 !important;                     
    font-weight: 600;                         
}

/* Estilo específico para destacar la palabra ¡Listo! */
.elementor-1554 .elementor-element.elementor-element-8d4b90e .listo {
    display: block;                      /* Se comporta como bloque para saltar de línea */
    font-size: 20px !important;          /* Tamaño destacado */
    text-transform: uppercase !important;/* Todo en mayúsculas */
    font-weight: 800 !important;         /* Extra negrita (Bold) */
    margin-bottom: 4px !important;       /* Separación fina con la frase inferior */
}/* End custom CSS */