.elementor-1570 .elementor-element.elementor-element-5a0ed5ba{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:-96px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1570 .elementor-element.elementor-element-104d80de{--display:flex;}.elementor-1570 .elementor-element.elementor-element-478855c2.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-1570 .elementor-element.elementor-element-2ebef893{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-1570 .elementor-element.elementor-element-22a17dce{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-1570 .elementor-element.elementor-element-6a9a83a7{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:-96px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-1570 .elementor-element.elementor-element-5efd1bc8{--display:flex;}.elementor-1570 .elementor-element.elementor-element-5efd1bc8:not(.elementor-motion-effects-element-type-background), .elementor-1570 .elementor-element.elementor-element-5efd1bc8 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-8320051 );}.elementor-widget-image .widget-image-caption{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 );}.elementor-1570 .elementor-element.elementor-element-f5040a2{--display:flex;}.elementor-1570 .elementor-element.elementor-element-df0a2b.elementor-element{--flex-grow:1;--flex-shrink:0;}.elementor-1570 .elementor-element.elementor-element-7729e572{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;}.elementor-1570 .elementor-element.elementor-element-53a6fed{--display:flex;--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;--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-1570 .elementor-element.elementor-element-5a21b7bc{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 20px 0px;}.elementor-1570 .elementor-element.elementor-element-15bcde08{z-index:0;}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(min-width:768px){.elementor-1570 .elementor-element.elementor-element-5a0ed5ba{--width:100%;}.elementor-1570 .elementor-element.elementor-element-104d80de{--width:75%;}.elementor-1570 .elementor-element.elementor-element-2ebef893{--width:25%;}.elementor-1570 .elementor-element.elementor-element-6a9a83a7{--width:100%;}.elementor-1570 .elementor-element.elementor-element-f5040a2{--width:75%;}.elementor-1570 .elementor-element.elementor-element-7729e572{--width:25%;}}@media(max-width:767px){.elementor-1570 .elementor-element.elementor-element-6a9a83a7{--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-1570 .elementor-element.elementor-element-5efd1bc8{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:16px;--padding-bottom:16px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-1570 .elementor-element.elementor-element-77126fa2{text-align:center;}.elementor-1570 .elementor-element.elementor-element-77126fa2 img{width:44%;}.elementor-1570 .elementor-element.elementor-element-f5040a2{--padding-top:15px;--padding-bottom:0px;--padding-left:23px;--padding-right:23px;}.elementor-1570 .elementor-element.elementor-element-df0a2b{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-1570 .elementor-element.elementor-element-7729e572{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:23px;--padding-right:23px;}.elementor-1570 .elementor-element.elementor-element-795058ba{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for shortcode, class: .elementor-element-22a17dce *//* --- CÓDIGO MAESTRO FLUENT FORMS (SORA + COMPACTO + CAJA FIJA) --- */

/* 1. Fuente Sora */
@import url('https://fonts.googleapis.com/css2?family=Sora:wght@400;600;800&display=swap');

/* 2. Contenedor Principal (Fondo Navy) */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform {
    background-color: #183054 !important; /* Azul Oscuro de Marca */
    padding: 35px !important; /* Reduje un poco el padding para que sea más compacto */
    border-radius: 30px !important;
    max-width: 470px !important;
    margin: 0 auto !important;
    box-sizing: border-box !important;
    font-family: 'Sora', sans-serif !important;
    
    /* AJUSTE DE TAMAÑO: */
    /* Bajamos de 680px a 540px para eliminar el espacio vacío excesivo */
    min-height: 540px !important; 
    
    /* Alineación: Ahora empieza arriba (flex-start) en lugar de centrar */
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important; 
}

/* 3. ETIQUETAS (LABELS) - BLANCO FORZADO */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .ff-el-form-label,
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform label {
    color: #ffffff !important;
    font-weight: 800 !important;
    font-size: 14px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    margin-bottom: 8px !important;
    display: block !important;
}

/* 4. Campos de Texto (Inputs) */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .ff-el-form-control {
    background-color: #ffffff !important;
    border: 2px solid transparent !important;
    border-radius: 16px !important;
    padding: 15px 20px !important;
    font-size: 16px !important;
    color: #183054 !important;
    font-family: 'Sora', sans-serif !important;
    font-weight: 400 !important;
    outline: none !important;
    min-height: 50px !important;
}

/* 5. Placeholder */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .ff-el-form-control::placeholder {
    color: #b5b5b5 !important;
    opacity: 1 !important;
}

/* 6. Focus (Borde Dorado) */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .ff-el-form-control:focus {
    border-color: #aa804a !important;
    box-shadow: 0 0 12px rgba(170, 128, 74, 0.25) !important;
}

/* 7. Eliminar flechas (spinners) del campo numérico */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform input[type=number]::-webkit-inner-spin-button,
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform input[type=number] {
    -moz-appearance: textfield;
}

/* 8. Menú Desplegable (Select) y Flecha */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform select.ff-el-form-control {
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23aa804a' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'%3E%3C/path%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 18px center !important;
    background-size: 16px !important;
    cursor: pointer !important;
}

/* 9. Opciones del Desplegable (Fondo Azul / Letra Blanca) */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform select option {
    background-color: #183054 !important;
    color: #ffffff !important;
    padding: 10px !important;
}

/* 10. Botón de Enviar */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .ff-btn-submit {
    background-color: #10233f !important;
    color: #ffffff !important;
    font-family: 'Sora', sans-serif !important;
    font-weight: 800 !important;
    font-size: 16px !important;
    text-transform: uppercase !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 16px 45px !important;
    width: 100% !important;
    cursor: pointer !important;
    margin-top: 15px !important; /* Un poco más de aire arriba del botón */
    transition: all 0.3s ease !important;
}

/* 11. Hover del Botón */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .ff-btn-submit:hover {
    background-color: #0d1b2e !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 6px 20px rgba(170, 128, 74, 0.4) !important;
}

/* 12. ELIMINACIÓN TOTAL DE ASTERISCOS ROJOS */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .ff-asterisk,
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .ff-el-form-label label span {
    display: none !important;
}

/* --- AJUSTES DE MENSAJES --- */

/* 13. MENSAJE DE ÉXITO (SUCCESS MESSAGE) */
/* El truco: margin: auto hace que este mensaje se centre verticalmente */
/* ocupando todo el espacio disponible de la caja fija */
.elementor-1570 .elementor-element.elementor-element-22a17dce .ff-message-success {
    color: #ffffff !important;
    font-family: 'Sora', sans-serif !important;
    font-size: 20px !important;
    line-height: 1.5 !important;
    text-align: center !important;
    border: 1px solid #aa804a !important;
    background: rgba(255, 255, 255, 0.05) !important;
    padding: 40px !important;
    border-radius: 20px !important;
    box-shadow: none !important;
    margin-top: auto !important;
    margin-bottom: auto !important;
    width: 100% !important;
}

/* 14. MENSAJES DE ERROR (VALIDACIÓN) */
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .text-danger,
.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .ff-el-is-error .error {
    color: #ff6b6b !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    margin-top: 5px !important;
}

.elementor-1570 .elementor-element.elementor-element-22a17dce .fluentform .ff-el-is-error .ff-el-form-control {
    border-color: #ff6b6b !important;
}/* End custom CSS */