.elementor-3823 .elementor-element.elementor-element-0b4f74c{--display:flex;--min-height:197px;--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;--border-radius:11px 11px 11px 11px;box-shadow:0px 0px 10px 0px rgba(213, 0, 209.00000000000014, 0.5);}.elementor-3823 .elementor-element.elementor-element-0b4f74c:not(.elementor-motion-effects-element-type-background), .elementor-3823 .elementor-element.elementor-element-0b4f74c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2470D3;}.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-3823 .elementor-element.elementor-element-69146bb > .elementor-widget-container{margin:12px 0px 0px 0px;}.elementor-3823 .elementor-element.elementor-element-69146bb.elementor-element{--align-self:center;--order:-99999 /* order start hack */;}.elementor-3823 .elementor-element.elementor-element-69146bb{text-align:center;}.elementor-3823 .elementor-element.elementor-element-69146bb .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:60px;font-weight:600;color:#FFFFFF;}.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 );}.elementor-3823 .elementor-element.elementor-element-f08bb0e{text-align:center;color:#FFFFFF;}.elementor-3823 .elementor-element.elementor-element-6650450{--display:flex;--min-height:76px;--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;}.elementor-3823 .elementor-element.elementor-element-0cc33b0{--display:grid;--e-con-grid-template-columns:repeat(5, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}.elementor-3823 .elementor-element.elementor-element-903304e{--display:flex;--border-radius:10px 10px 10px 10px;box-shadow:6px 10px 10px 0px rgba(221.53125, 13.283853404418288, 77.34259107547733, 0.5);}.elementor-3823 .elementor-element.elementor-element-903304e:not(.elementor-motion-effects-element-type-background), .elementor-3823 .elementor-element.elementor-element-903304e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2470D3;}.elementor-3823 .elementor-element.elementor-element-488c837{text-align:center;}.elementor-3823 .elementor-element.elementor-element-488c837 .elementor-heading-title{color:#FFFFFF;}.elementor-widget-image .widget-image-caption{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-3823 .elementor-element.elementor-element-ca99ec2 > .elementor-widget-container{border-style:solid;border-color:#FFFFFF;border-radius:5px 5px 5px 5px;}.elementor-3823 .elementor-element.elementor-element-ae85565{text-align:center;color:#FFFFFF;}.elementor-3823 .elementor-element.elementor-element-ae85565 p{margin-block-end:28px;}.elementor-3823 .elementor-element.elementor-element-a213da4{--display:flex;--border-radius:10px 10px 10px 10px;box-shadow:6px 10px 10px 0px rgba(221.53125, 13.283853404418288, 77.34259107547733, 0.5);}.elementor-3823 .elementor-element.elementor-element-a213da4:not(.elementor-motion-effects-element-type-background), .elementor-3823 .elementor-element.elementor-element-a213da4 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2470D3;}.elementor-3823 .elementor-element.elementor-element-1014875{text-align:center;}.elementor-3823 .elementor-element.elementor-element-1014875 .elementor-heading-title{color:#FFFFFF;}.elementor-3823 .elementor-element.elementor-element-92c1d44 > .elementor-widget-container{border-style:solid;border-color:#FFFFFF;border-radius:5px 5px 5px 5px;}.elementor-3823 .elementor-element.elementor-element-40f9ef8{text-align:center;color:#FFFFFF;}.elementor-3823 .elementor-element.elementor-element-40f9ef8 p{margin-block-end:28px;}.elementor-3823 .elementor-element.elementor-element-5ba6056{--display:flex;--border-radius:10px 10px 10px 10px;box-shadow:6px 10px 10px 0px rgba(221.53125, 13.283853404418288, 77.34259107547733, 0.5);}.elementor-3823 .elementor-element.elementor-element-5ba6056:not(.elementor-motion-effects-element-type-background), .elementor-3823 .elementor-element.elementor-element-5ba6056 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2470D3;}.elementor-3823 .elementor-element.elementor-element-aebb605{text-align:center;}.elementor-3823 .elementor-element.elementor-element-aebb605 .elementor-heading-title{color:#FFFFFF;}.elementor-3823 .elementor-element.elementor-element-13c88fc > .elementor-widget-container{border-style:solid;border-color:#FFFFFF;border-radius:5px 5px 5px 5px;}.elementor-3823 .elementor-element.elementor-element-22fa389{text-align:center;color:#FFFFFF;}.elementor-3823 .elementor-element.elementor-element-22fa389 p{margin-block-end:28px;}.elementor-3823 .elementor-element.elementor-element-882b6ef{--display:flex;--border-radius:10px 10px 10px 10px;box-shadow:6px 10px 10px 0px rgba(221.53125, 13.283853404418288, 77.34259107547733, 0.5);}.elementor-3823 .elementor-element.elementor-element-882b6ef:not(.elementor-motion-effects-element-type-background), .elementor-3823 .elementor-element.elementor-element-882b6ef > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2470D3;}.elementor-3823 .elementor-element.elementor-element-7a53a2e{text-align:center;}.elementor-3823 .elementor-element.elementor-element-7a53a2e .elementor-heading-title{color:#FFFFFF;}.elementor-3823 .elementor-element.elementor-element-897b87d > .elementor-widget-container{border-style:solid;border-color:#FFFFFF;border-radius:5px 5px 5px 5px;}.elementor-3823 .elementor-element.elementor-element-9fbaeb3{text-align:center;color:#FFFFFF;}.elementor-3823 .elementor-element.elementor-element-9fbaeb3 p{margin-block-end:28px;}.elementor-3823 .elementor-element.elementor-element-e5102ef{--display:flex;--border-radius:10px 10px 10px 10px;box-shadow:6px 10px 10px 0px rgba(221.53125, 13.283853404418288, 77.34259107547733, 0.5);}.elementor-3823 .elementor-element.elementor-element-e5102ef:not(.elementor-motion-effects-element-type-background), .elementor-3823 .elementor-element.elementor-element-e5102ef > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#2470D3;}.elementor-3823 .elementor-element.elementor-element-ed1f7f6{text-align:center;}.elementor-3823 .elementor-element.elementor-element-ed1f7f6 .elementor-heading-title{color:#FFFFFF;}.elementor-3823 .elementor-element.elementor-element-f8d0d0d > .elementor-widget-container{border-style:solid;border-color:#FFFFFF;border-radius:5px 5px 5px 5px;}.elementor-3823 .elementor-element.elementor-element-dd797aa{text-align:center;color:#FFFFFF;}.elementor-3823 .elementor-element.elementor-element-dd797aa p{margin-block-end:28px;}.elementor-3823 .elementor-element.elementor-element-80398a0{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-3823 .elementor-element.elementor-element-3345bef{--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;}.elementor-3823 .elementor-element.elementor-element-0e7827f{width:initial;max-width:initial;}.elementor-3823 .elementor-element.elementor-element-0e7827f > .elementor-widget-container{box-shadow:22px 34px 29px -13px rgba(186.80521697998046, 0, 62.74218700740657, 0.5);}.elementor-3823 .elementor-element.elementor-element-9f590c5{--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;}.elementor-3823 .elementor-element.elementor-element-49d2d40{text-align:center;}.elementor-3823 .elementor-element.elementor-element-49d2d40 .elementor-heading-title{color:var( --e-global-color-ae3e2b2 );}.elementor-3823 .elementor-element.elementor-element-8b243bc{text-align:justify;font-family:"Roboto", Sans-serif;font-size:18px;font-weight:400;color:#1B1B1B;}.elementor-3823 .elementor-element.elementor-element-7283149{--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;}.elementor-3823 .elementor-element.elementor-element-8ffc881 iframe{height:463px;}@media(min-width:768px){.elementor-3823 .elementor-element.elementor-element-3345bef{--width:50%;}.elementor-3823 .elementor-element.elementor-element-9f590c5{--width:50%;}}@media(max-width:1024px){.elementor-3823 .elementor-element.elementor-element-0cc33b0{--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(4, 1fr);--grid-auto-flow:row;}}@media(max-width:767px){.elementor-3823 .elementor-element.elementor-element-0cc33b0{--e-con-grid-template-columns:repeat(1, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;}}/* Start custom CSS for shortcode, class: .elementor-element-0e7827f *//* --- Variables de Color Ambu Medic --- */
:root {
    --ambumedic-red: #8B008B; /* Púrpura oscuro / Magenta */
    --ambumedic-blue: #007BFF; /* Azul Brillante */
    --ambumedic-gradient: linear-gradient(90deg, #8B008B 0%, #007BFF 100%);
    --text-color: #333;
    --border-color: #ccc;
    --focus-color: #007BFF; /* Color principal de enfoque */
    --focus-glow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
    --input-background: #f9f9f9; /* Fondo gris claro, como en la imagen de referencia */
}

/* --- Estilos del Contenedor Principal del Formulario --- */
.wpcf7-form {
    max-width: 600px;
    margin: 20px auto;
    padding: 30px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}

/* --- Estilos de Etiquetas y Párrafos (títulos de campos) --- */
.wpcf7-form p {
    margin-bottom: 5px;
    font-weight: 700;
    font-size: 1em;
    color: var(--text-color);
}

/* Barra de color (degradado) SÓLO en títulos de campos individuales. */
.wpcf7-form p:not(.form-row-half p):before {
    content: '';
    display: inline-block;
    width: 4px;
    height: 100%; 
    background: var(--ambumedic-gradient);
    border-radius: 2px;
    margin-right: 8px;
    vertical-align: middle;
}
.wpcf7-form p:not(.form-row-half p) { 
    padding-left: 5px;
}

/* --- Estilo Base para Inputs, Selects y Textareas --- */
.wpcf7-form input:not([type="submit"]),
.wpcf7-form textarea,
.wpcf7-form select {
    width: 100%;
    padding: 12px 15px;
    margin-bottom: 15px;
    border: 1px solid var(--border-color);
    border-radius: 4px; 
    box-sizing: border-box;
    font-size: 1em;
    background-color: var(--input-background); 
    transition: border-color 0.3s, box-shadow 0.3s, background-color 0.3s;
}

/* Estado Focus (Al hacer clic en el campo) */
.wpcf7-form input:focus,
.wpcf7-form textarea:focus,
.wpcf7-form select:focus {
    border-color: var(--focus-color);
    box-shadow: var(--focus-glow);
    background-color: #fff; /* Fondo blanco al enfocar */
    outline: none;
}

/* Estilo para los campos de media columna */
.form-row-half {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 15px; 
}
.form-row-half p {
    padding-left: 0; /* Asegura que los títulos agrupados no tengan el padding de la barra */
}
.form-row-half > div { 
    flex: 1 1 48%; 
}

/* --- Botón de Enviar (Submit) --- */
.wpcf7-form .wpcf7-submit {
    display: block;
    width: 100%;
    padding: 15px;
    /* Degradado de Ambu Medic */
    background: var(--ambumedic-gradient); 
    color: white;
    font-size: 1.1em;
    font-weight: bold;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: transform 0.2s, opacity 0.2s;
}

.wpcf7-form .wpcf7-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
    opacity: 0.9;
}

/* --- Estilos del Campo de Archivo (Upload) - FUNCIONAL Y ESTILIZADO --- */
.file-label {
    display: block;
    cursor: pointer;
    padding: 15px 15px; /* Más padding para que la caja sea grande */
    margin-bottom: 5px;
    background: #f7f7f7;
    border: 1px dashed var(--ambumedic-blue);
    border-radius: 4px;
    text-align: center;
    transition: background 0.3s;
    position: relative; /* Necesario para posicionar el input */
}
.file-label:hover {
    background: #eef4ff;
}

/* Ocultar el input de archivo por defecto, pero dejarlo funcional */
.file-label input[type="file"] {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0; /* Lo hace invisible */
    width: 100%;
    height: 100%;
    cursor: pointer;
    z-index: 10;
}

.file-icon {
    font-size: 1.2em;
    margin-right: 5px;
    vertical-align: middle;
}
.file-link {
    color: var(--ambumedic-blue);
    font-weight: 600;
    text-decoration: underline;
}

/* Estilo para el nombre del archivo (para simular el "Sin archivos seleccionados") */
.file-name-display {
    display: block;
    font-size: 0.9em;
    color: var(--text-color);
    margin-bottom: 5px;
    text-align: center;
    padding: 5px 0;
}

.file-info {
    display: block;
    font-size: 0.8em;
    color: #666;
    margin-top: 5px;
    text-align: center;
}

/* --- Estilos del Checkbox (Política) --- */
.form-row-checkbox {
    margin-top: 15px;
    font-size: 0.9em;
}
.form-row-checkbox a {
    color: var(--ambumedic-red);
    text-decoration: none;
    font-weight: 600;
}

/* Estilo para dispositivos móviles */
@media (max-width: 500px) {
    .form-row-half {
        flex-direction: column;
        gap: 0;
    }
}/* End custom CSS */