.elementor-5539 .elementor-element.elementor-element-3f1b2c7{--display:flex;--background-transition:0.3s;--margin-block-start:0px;--margin-block-end:0px;--margin-inline-start:0px;--margin-inline-end:0px;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:15px;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-15px;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-labels-inline .elementor-field-group > label{padding-left:10px;}body:not(.rtl) .elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-labels-inline .elementor-field-group > label{padding-right:10px;}body .elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-labels-above .elementor-field-group > label{padding-bottom:10px;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group > label, .elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-subgroup label{color:#000000;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group > label{font-family:"Inter", Sans-serif;font-size:14px;font-weight:600;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group .elementor-field{color:#000000;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group .elementor-field, .elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-subgroup label{font-family:"Inter", Sans-serif;font-size:14px;font-weight:400;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group:not(.elementor-field-type-upload) .elementor-field:not(.elementor-select-wrapper){background-color:#F3F3F3;border-color:#D2D2D2;border-width:1px 1px 1px 1px;border-radius:10px 10px 10px 10px;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group .elementor-select-wrapper select{background-color:#F3F3F3;border-color:#D2D2D2;border-width:1px 1px 1px 1px;border-radius:10px 10px 10px 10px;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group .elementor-select-wrapper::before{color:#D2D2D2;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-button{font-family:"Inter", Sans-serif;font-size:18px;font-weight:600;border-radius:18px 18px 18px 18px;padding:20px 30px 20px 30px;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .e-form__buttons__wrapper__button-next{background-color:#C03000B0;color:#ffffff;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-button[type="submit"]{background-color:#C03000B0;color:#ffffff;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .e-form__buttons__wrapper__button-next:hover{background-color:#A01F00B0;color:#ffffff;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-button[type="submit"]:hover{background-color:#A01F00B0;color:#ffffff;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-5539 .elementor-element.elementor-element-b6c3c13 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-5539 .elementor-element.elementor-element-b6c3c13{--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;}.elementor-5539 .elementor-element.elementor-element-b9a2534{text-align:justify;color:#000000;font-family:"Inter", Sans-serif;font-size:13px;font-weight:500;}.elementor-5539 .elementor-element.elementor-element-b9a2534 > .elementor-widget-container{margin:0px 0px -20px 0px;padding:20px 10px 20px 10px;}@media(max-width:767px){.elementor-5539 .elementor-element.elementor-element-3f1b2c7{--margin-block-start:20px;--margin-block-end:0px;--margin-inline-start:0px;--margin-inline-end:0px;--padding-block-start:0px;--padding-block-end:0px;--padding-inline-start:0px;--padding-inline-end:0px;}.elementor-5539 .elementor-element.elementor-element-b9a2534{text-align:justify;}}/* Start custom CSS for form, class: .elementor-element-b6c3c13 *//* ================= VARIABLES ================= */
.elementor-5539 .elementor-element.elementor-element-b6c3c13 {
    --glass-bg: rgba(255, 255, 255, 0.14);
    --glass-blur: blur(14px) saturate(120%);
    --color-brand: #D84514;
    --border-color-fields: rgba(0, 0, 0, 0.15);
}

/* ================= 1. CONTENEDOR PRINCIPAL ================= */
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-widget-container {
    background: var(--glass-bg);
    backdrop-filter: var(--glass-blur);
    -webkit-backdrop-filter: var(--glass-blur);
    border: 1px solid rgba(255, 255, 255, 0.38);
    box-shadow: 0 8px 20px rgba(15, 23, 42, 0.12);
    border-radius: 14px;
    padding: 15px;
}

/* ================= 2. ETIQUETAS Y ASTERISCOS ================= */
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-group .elementor-field-label {
    text-align: left; width: 100%; display: block; margin-bottom: 8px;
}
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-required .elementor-field-label::after,
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-mark-required .elementor-field-label::after {
    content: '*'; color: var(--color-brand); font-weight: bold; margin-left: 5px; display: inline-block;
}

/* ================= 3. INPUTS DE TEXTO ================= */
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-textual {
    background: rgba(255, 255, 255, 0.4);
    backdrop-filter: blur(10px);
    border: 1px solid var(--border-color-fields);
    transition: all 0.3s ease;
}
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-textual:focus {
    background: rgba(255, 255, 255, 0.8);
    border-color: var(--color-brand);
}
.elementor-5539 .elementor-element.elementor-element-b6c3c13 select.elementor-field-textual { -webkit-appearance: none; appearance: none; }
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-select-wrapper::after {
    content: "\f078"; font-family: "Font Awesome 5 Free"; font-weight: 900;
    position: absolute; top: 50%; right: 15px; transform: translateY(-50%);
    pointer-events: none; color: #333; font-size: 12px;
}

/* ================= 4. ADJUNTAR ARCHIVO (ESTADO INICIAL) ================= */
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-type-upload {
    position: relative; display: flex; flex-direction: column;
}

/* CAJA GRIS INICIAL */
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-type-upload::after {
    content: '\f093   Seleccionar Archivo (JPG, PNG, PDF)';
    font-family: "Font Awesome 5 Free", "Roboto", sans-serif;
    font-weight: 900;
    display: flex; align-items: center; justify-content: center; gap: 10px;
    background-color: #f1f1f1; 
    border: 1px solid var(--border-color-fields);
    border-radius: 8px;
    color: #555; font-size: 14px;
    height: 50px; width: 100%; margin-top: 5px;
    pointer-events: none; box-sizing: border-box; transition: all 0.3s;
}

/* INPUT REAL */
.elementor-5539 .elementor-element.elementor-element-b6c3c13 input[type="file"].elementor-field {
    opacity: 0; height: 50px; margin-top: 5px;
    z-index: 10; cursor: pointer;
    position: absolute; bottom: 0; left: 0; width: 100%;
}

/* ================= 5. ESTADO: ARCHIVO CARGADO (CORREGIDO - NO DISPLAY NONE) ================= */

/* Ocultamos la caja gris inicial */
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-type-upload.has-file::after {
    display: none;
}

/* CORRECCIÓN CRÍTICA: 
   En lugar de display:none, lo hacemos transparente y lo mandamos al fondo.
   Así el formulario SI lo envía.
*/
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-field-type-upload.has-file input[type="file"].elementor-field {
    display: block !important; /* Asegura que exista */
    opacity: 0 !important;
    z-index: -1 !important; /* Detrás de la vista previa */
    width: 1px; height: 1px; /* Mínimo tamaño */
    position: absolute;
}

/* ESTILO PREVIEW (ANCHO COMPLETO Y GRIS) */
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .glass-file-preview {
    display: flex; align-items: center; justify-content: space-between;
    background-color: #f1f1f1; 
    border: 1px solid var(--border-color-fields);
    border-radius: 8px;
    width: 100%; height: 50px;
    padding: 0 15px; margin-top: 5px;
    box-sizing: border-box; animation: fadeIn 0.3s ease;
    position: relative; z-index: 20; /* Encima de todo */
}

.elementor-5539 .elementor-element.elementor-element-b6c3c13 .file-info {
    display: flex; align-items: center; gap: 10px;
    color: #333; font-weight: 600; font-size: 14px; 
    overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .file-info i { color: #4CAF50; font-size: 1.1em; }

.elementor-5539 .elementor-element.elementor-element-b6c3c13 .file-remove-btn {
    color: #fff; background-color: #ff4d4d;
    border-radius: 50%; width: 24px; height: 24px; min-width: 24px;
    display: flex; align-items: center; justify-content: center;
    cursor: pointer; font-size: 12px; transition: all 0.2s;
}
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .file-remove-btn:hover { background-color: #d32f2f; transform: scale(1.1); }

@keyframes fadeIn { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }

/* ================= 6. BOTÓN ENVIAR ================= */
.elementor-5539 .elementor-element.elementor-element-b6c3c13 .elementor-button {
    backdrop-filter: blur(10px);
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.15);
    background-image: linear-gradient(to bottom, rgba(255,255,255,0.2), rgba(255,255,255,0));
    border: none;
}/* End custom CSS */