.elementor-1883 .elementor-element.elementor-element-110ba6f3{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:stretch;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--overlay-opacity:0.4;--padding-top:10em;--padding-bottom:10em;--padding-left:1em;--padding-right:1em;}.elementor-1883 .elementor-element.elementor-element-110ba6f3:not(.elementor-motion-effects-element-type-background), .elementor-1883 .elementor-element.elementor-element-110ba6f3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#020101;background-image:url("https://profertilidad.cl/wp-content/uploads/2025/05/Reinaldo-Gonzalez-scaled.jpg");background-position:top center;background-repeat:no-repeat;background-size:cover;}.elementor-1883 .elementor-element.elementor-element-110ba6f3::before, .elementor-1883 .elementor-element.elementor-element-110ba6f3 > .elementor-background-video-container::before, .elementor-1883 .elementor-element.elementor-element-110ba6f3 > .e-con-inner > .elementor-background-video-container::before, .elementor-1883 .elementor-element.elementor-element-110ba6f3 > .elementor-background-slideshow::before, .elementor-1883 .elementor-element.elementor-element-110ba6f3 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1883 .elementor-element.elementor-element-110ba6f3 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-1883 .elementor-element.elementor-element-75fe1698{--display:flex;--padding-top:1em;--padding-bottom:1em;--padding-left:1em;--padding-right:1em;}.elementor-1883 .elementor-element.elementor-element-75fe1698.e-con{--align-self:center;}.elementor-1883 .elementor-element.elementor-element-2a00fda2{text-align:center;}.elementor-1883 .elementor-element.elementor-element-2a00fda2 .elementor-heading-title{font-size:60px;color:#FFFFFF;}.elementor-1883 .elementor-element.elementor-element-7030700e{--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;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:4em;--padding-bottom:14em;--padding-left:1em;--padding-right:1em;}.elementor-1883 .elementor-element.elementor-element-7030700e:not(.elementor-motion-effects-element-type-background), .elementor-1883 .elementor-element.elementor-element-7030700e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F5F5F5;}.elementor-1883 .elementor-element.elementor-element-6c3c7d01{--display:flex;--min-height:93px;--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-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#D4D3D3;--border-color:#D4D3D3;--border-radius:13px 13px 13px 13px;--padding-top:3em;--padding-bottom:3em;--padding-left:3em;--padding-right:3em;}.elementor-1883 .elementor-element.elementor-element-6c3c7d01:not(.elementor-motion-effects-element-type-background), .elementor-1883 .elementor-element.elementor-element-6c3c7d01 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1883 .elementor-element.elementor-element-6c3c7d01.e-con{--align-self:center;}.elementor-1883 .elementor-element.elementor-element-9d88a25{--display:flex;--min-height:0px;}.elementor-1883 .elementor-element.elementor-element-369a8228.elementor-element{--order:99999 /* order end hack */;}.elementor-1883 .elementor-element.elementor-element-369a8228{border-style:none;border-radius:0px 0px 0px 0px;text-align:start;font-family:"Heebo", Sans-serif;font-size:16px;line-height:1.5em;color:var( --e-global-color-dea41e4 );}.elementor-1883 .elementor-element.elementor-element-5ab657f1.elementor-element{--order:-99999 /* order start hack */;}.elementor-1883 .elementor-element.elementor-element-5ab657f1{text-align:start;}.elementor-1883 .elementor-element.elementor-element-5ab657f1 .elementor-heading-title{font-family:"Lato", Sans-serif;font-size:39px;font-weight:600;line-height:1.1em;color:var( --e-global-color-dea41e4 );}.elementor-1883 .elementor-element.elementor-element-41b1c2e0{--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;border-style:none;--border-style:none;}.elementor-1883 .elementor-element.elementor-element-98a9dbf{width:var( --container-widget-width, 700px );max-width:700px;--container-widget-width:700px;--container-widget-flex-grow:0;}@media(min-width:768px){.elementor-1883 .elementor-element.elementor-element-75fe1698{--width:73%;}.elementor-1883 .elementor-element.elementor-element-7030700e{--content-width:750px;}.elementor-1883 .elementor-element.elementor-element-6c3c7d01{--width:700px;}.elementor-1883 .elementor-element.elementor-element-41b1c2e0{--width:1237px;}}@media(max-width:1024px){.elementor-1883 .elementor-element.elementor-element-110ba6f3{--padding-top:9em;--padding-bottom:9em;--padding-left:1em;--padding-right:1em;}.elementor-1883 .elementor-element.elementor-element-7030700e{--padding-top:1em;--padding-bottom:9em;--padding-left:1em;--padding-right:1em;}.elementor-1883 .elementor-element.elementor-element-369a8228{font-size:15px;}.elementor-1883 .elementor-element.elementor-element-5ab657f1 .elementor-heading-title{font-size:31px;}}@media(max-width:767px){.elementor-1883 .elementor-element.elementor-element-110ba6f3:not(.elementor-motion-effects-element-type-background), .elementor-1883 .elementor-element.elementor-element-110ba6f3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://profertilidad.cl/wp-content/uploads/2025/05/Reinaldo-Gonzalez-scaled.jpg");background-position:center right;}.elementor-1883 .elementor-element.elementor-element-110ba6f3{--min-height:226px;--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;--justify-content:center;--align-items:center;--padding-top:0em;--padding-bottom:0em;--padding-left:0em;--padding-right:0em;}.elementor-1883 .elementor-element.elementor-element-75fe1698{--width:95%;}.elementor-1883 .elementor-element.elementor-element-2a00fda2 .elementor-heading-title{font-size:35px;}.elementor-1883 .elementor-element.elementor-element-7030700e{--min-height:0px;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0em;--padding-bottom:0em;--padding-left:0em;--padding-right:0em;}.elementor-1883 .elementor-element.elementor-element-6c3c7d01{--min-height:0px;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:10px 10px;--row-gap:10px;--column-gap:10px;--border-radius:0px 0px 0px 0px;--padding-top:1em;--padding-bottom:1em;--padding-left:1em;--padding-right:1em;}.elementor-1883 .elementor-element.elementor-element-369a8228{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:8px 8px 8px 8px;font-size:16px;}.elementor-1883 .elementor-element.elementor-element-369a8228.elementor-element{--order:99999 /* order end hack */;}.elementor-1883 .elementor-element.elementor-element-369a8228 p{margin-block-end:20px;}.elementor-1883 .elementor-element.elementor-element-5ab657f1{margin:15px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:8px 8px 8px 8px;text-align:start;}.elementor-1883 .elementor-element.elementor-element-5ab657f1 .elementor-heading-title{font-size:27px;}.elementor-1883 .elementor-element.elementor-element-41b1c2e0{--min-height:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:17px;--padding-bottom:17px;--padding-left:17px;--padding-right:17px;}.elementor-1883 .elementor-element.elementor-element-41b1c2e0.e-con{--align-self:center;}}/* Start custom CSS for container, class: .elementor-element-110ba6f3 *//* Desktop */
.elementor-1883 .elementor-element.elementor-element-110ba6f3 {
    background-position: center calc(50% + 50px) !important;
}

/* Mobile */
@media (max-width: 767px) {
    .elementor-1883 .elementor-element.elementor-element-110ba6f3 {
        background-position: center calc(50% + 0px) !important;
    }
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-369a8228 */.intro-test {
    font-family: Roboto, sans-serif;
    font-size: 16px;
    line-height: 24px;
    color: #202124;
}

.intro-test > p {
    margin: 0 0 18px;
}

.intro-tip {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.intro-emoji {
    display: inline-block;
    flex: 0 0 auto;
    font-size: 16px !important;
    line-height: 24px !important;
    width: 20px;
    transform: translateY(1px);
}

.intro-time {
    margin-top: 30px !important;
    font-style: italic;
}

@media (max-width: 767px) {

    .intro-test {
        font-size: 16px;
        line-height: 24px;
    }

    .intro-emoji {
        font-size: 15px !important;
        line-height: 24px !important;
        width: 19px;
    }

    .intro-tip {
        gap: 7px;
    }
    .intro-test a {
    color: #1a73e8;
    text-decoration: underline;
}

}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-98a9dbf *//* ==================================================
   FORMULARIO - ESTILO TIPO GOOGLE FORMS
   Gravity Forms (markup nuevo / no-legacy)
   ================================================== */


/* ==================================================
   ESTRUCTURA GENERAL
   ================================================== */

.gform_wrapper.gform_wrapper {
    width: 100%;
    max-width: 100%;
    background: transparent;
    padding: 16px 0;
    font-family: Roboto, sans-serif;
    box-sizing: border-box;
}

/* Corrige los márgenes internos del contenedor de campos */
.gform_wrapper .gform_fields {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
    display: block !important;
}

/* Evita que cualquier campo sobresalga */
.gform_wrapper .gfield {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box;
}


/* ==================================================
   ENCABEZADOS DE SECCIÓN (campo "Section" de Gravity Forms)
   ================================================== */

/* El section break NO se convierte en tarjeta */
.gform_wrapper .gfield.gsection {
    width: 100% !important;
    padding: 22px 4px 10px !important;
    margin: 6px 0 0 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: none !important;
}

/* Título de cada sección */
.gform_wrapper .gsection_title {
    font-family: Roboto, sans-serif;
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    letter-spacing: 0;
    color: #202124;
    margin: 0;
}

/* Texto introductorio / descripción de sección */
.gform_wrapper .gsection_description,
.gform_wrapper .gfield_html .gform_html {
    font-family: Roboto, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0 !important;
    color: #202124;
    margin: 0 0 14px;
}

.gform_wrapper .gsection_description p,
.gform_wrapper .gfield_html p {
    margin: 0 0 10px;
}

/* Campo HTML (bloque de instrucciones, ej. "Exámenes y documentación") */
.gform_wrapper .gfield.gfield_html {
    width: 100% !important;
    padding: 22px 4px 10px !important;
    margin: 6px 0 0 !important;
    background: transparent !important;
    border: none !important;
}


/* ==================================================
   TARJETAS DE CADA PREGUNTA
   ================================================== */

/* Gravity Forms (tema Orbital) por defecto dibuja su propia caja
   blanca SOLO alrededor de las alternativas (radio/checkbox) y deja
   el label afuera, sobre el fondo de la página. Hay que anularla
   para que la única caja visible sea la que envuelve TODO el campo. */
.gform_wrapper .ginput_container_radio,
.gform_wrapper .ginput_container_checkbox,
.gform_wrapper .gfield_radio,
.gform_wrapper .gfield_checkbox,
.gform_wrapper .ginput_container_text,
.gform_wrapper .ginput_container_number,
.gform_wrapper .ginput_container_email,
.gform_wrapper .ginput_container_phone,
.gform_wrapper .ginput_container_fileupload,
.gform_wrapper .ginput_container_textarea,
.gform_wrapper .ginput_container,
.gform_wrapper .gfield_body,
.gform_wrapper .gfield_header {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.gform_wrapper .gfield:not(.gsection):not(.gfield_html):not(.gfield_hidden):not(.gform_hidden) {
    width: 100% !important;
    max-width: 100% !important;

    background: #ffffff !important;
    border: 1px solid #dadce0 !important;
    border-radius: 12px !important;
    box-shadow: none !important;

    padding: 24px !important;
    margin-bottom: 16px !important;

    box-sizing: border-box;
    overflow: visible;
}


/* ==================================================
   PREGUNTAS / LABELS
   ================================================== */

/* Asegura que el label (y su wrapper, en el markup nuevo de GF)
   quede contenido dentro de la tarjeta, no sobresaliendo de ella */
.gform_wrapper .gfield_header,
.gform_wrapper .gfield_body {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

.gform_wrapper .gfield_label,
.gform_wrapper legend.gfield_label {
    display: block;
    position: static !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;

    font-family: Roboto, sans-serif;
    font-size: 13px;
    font-weight: 600;
    line-height: 18px;
    letter-spacing: 0.2px;
    color: #202124;

    margin: 0 0 12px !important;
    padding: 0 !important;
}

/* FIX del bug nativo de <fieldset>/<legend>: cuando el label de una
   pregunta radio/checkbox es un <legend> (así lo genera Gravity Forms)
   y el texto ocupa varias líneas, el navegador lo dibuja superpuesto
   con el borde superior del fieldset, quedando la mayor parte del
   texto AFUERA de la caja. Flotarlo al 100% de ancho hace que se
   comporte como un bloque normal, contenido dentro de la tarjeta. */
.gform_wrapper legend.gfield_label {
    float: left;
    width: 100%;
}

.gform_wrapper fieldset.gfield {
    display: block;
    min-width: 0;
}

.gform_wrapper .ginput_container {
    clear: both;
    float: none;
    display: block;
    width: 100%;
}

.gform_wrapper .gfield_required {
    color: #d93025;
}

/* Descripción/ayuda debajo de la pregunta */
.gform_wrapper .gfield_description {
    font-family: Roboto, sans-serif;
    font-size: 13px;
    font-weight: 400;
    line-height: 18px;
    color: #5f6368;
    margin: -6px 0 14px;
}


/* ==================================================
   ALTERNATIVAS RADIO / CHECKBOX
   ================================================== */

.gform_wrapper .gfield_radio,
.gform_wrapper .gfield_checkbox {
    margin: 0 !important;
}

.gform_wrapper .gchoice {
    display: block;
    margin-bottom: 14px;
}

.gform_wrapper .gchoice:last-child {
    margin-bottom: 0;
}

.gform_wrapper .gchoice label {
    font-family: Roboto, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    letter-spacing: 0;
    color: #202124;
    margin: 0;
}

.gform_wrapper .gchoice input[type="radio"],
.gform_wrapper .gchoice input[type="checkbox"] {
    margin-right: 10px;
}


/* ==================================================
   CAMPOS DE TEXTO / TEXTAREA / SELECT
   ================================================== */

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="number"],
.gform_wrapper textarea,
.gform_wrapper select {
    width: 100%;
    max-width: 100%;

    font-family: Roboto, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;

    color: #202124;

    box-sizing: border-box;
}


/* ==================================================
   SUBIDA DE ARCHIVOS
   ================================================== */

.gform_wrapper .ginput_container_fileupload input[type="file"] {
    width: 100%;
    max-width: 100%;

    font-family: Roboto, sans-serif;
    font-size: 15px;
    font-weight: 400;

    color: #5f6368;
    background: transparent !important;

    border: none !important;
    padding: 0 !important;

    box-sizing: border-box;
}

/* Botón de selección de archivo */
.gform_wrapper .ginput_container_fileupload input[type="file"]::file-.elementor-1883 .elementor-element.elementor-element-98a9dbf-button {
    font-family: Roboto, sans-serif;
    font-size: 14px;
    font-weight: 500;

    color: #1a73e8;
    background: #ffffff;

    border: 1px solid #dadce0;
    border-radius: 6px;

    padding: 9px 14px;
    margin-right: 12px;

    cursor: pointer;

    transition: background 0.2s ease;
}

.gform_wrapper .ginput_container_fileupload input[type="file"]::file-.elementor-1883 .elementor-element.elementor-element-98a9dbf-button:hover {
    background: #f8f9fa;
}

/* Compatibilidad Safari / Chrome */
.gform_wrapper .ginput_container_fileupload input[type="file"]::-webkit-file-upload-button {
    font-family: Roboto, sans-serif;
    font-size: 14px;
    font-weight: 500;

    color: #1a73e8;
    background: #ffffff;

    border: 1px solid #dadce0;
    border-radius: 6px;

    padding: 9px 14px;
    margin-right: 12px;

    cursor: pointer;
}


/* ==================================================
   BOTÓN ENVIAR
   ================================================== */

.gform_wrapper .gform_footer {
    width: 100% !important;

    margin: 4px 0 0 0 !important;
    padding: 0 !important;

    display: flex;
    justify-content: flex-start;
}

/* Botón compacto tipo Google Forms */
.gform_wrapper .gform_footer input[type="submit"],
.gform_wrapper .gform_footer .gform_button {
    width: auto !important;

    min-width: 140px;
    min-height: 44px;

    padding: 11px 22px;

    font-family: Roboto, sans-serif;
    font-size: 15px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0.2px;

    text-transform: none;

    border-radius: 6px;

    transition: opacity 0.2s ease;
}

.gform_wrapper .gform_footer input[type="submit"]:hover,
.gform_wrapper .gform_footer .gform_button:hover {
    opacity: 0.90;
}


/* ==================================================
   MOBILE
   ================================================== */

@media (max-width: 767px) {

    /* Formulario */
    .gform_wrapper.gform_wrapper {
        padding: 10px 0;
    }


    /* ==================================================
       ENCABEZADOS DE SECCIÓN
       ================================================== */

    .gform_wrapper .gfield.gsection,
    .gform_wrapper .gfield.gfield_html {
        padding: 18px 4px 8px !important;
        margin: 0 !important;
    }

    .gform_wrapper .gsection_title {
        font-size: 20px !important;
        line-height: 28px !important;
        font-weight: 500 !important;
    }


    /* ==================================================
       TARJETAS - MOBILE
       ================================================== */

    .gform_wrapper .gfield:not(.gsection):not(.gfield_html):not(.gfield_hidden):not(.gform_hidden) {
        width: 100% !important;

        padding: 22px 16px !important;
        margin-bottom: 14px !important;

        border-radius: 10px;
    }


    /* ==================================================
       PREGUNTAS - MOBILE
       ================================================== */

    .gform_wrapper .gfield_header,
    .gform_wrapper .gfield_body {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .gform_wrapper .gfield_label,
    .gform_wrapper legend.gfield_label {
        display: block !important;
        position: static !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;

        font-family: Roboto, sans-serif !important;

        font-size: 12px !important;
        line-height: 17px !important;
        font-weight: 600 !important;
        letter-spacing: 0.2px !important;
        color: #202124 !important;

        margin: 0 0 12px !important;
        padding: 0 !important;
    }

    .gform_wrapper legend.gfield_label {
        float: left;
        width: 100%;
    }


    /* ==================================================
       CAMPOS DE TEXTO
       ================================================== */

    .gform_wrapper input[type="text"],
    .gform_wrapper input[type="email"],
    .gform_wrapper input[type="tel"],
    .gform_wrapper input[type="number"],
    .gform_wrapper select {
        font-size: 16px !important;
        line-height: 24px !important;

        min-height: 48px !important;
        height: 48px !important;

        padding: 10px 12px !important;
    }

    /* Textarea */
    .gform_wrapper textarea {
        font-size: 16px !important;
        line-height: 24px !important;

        min-height: 100px !important;

        padding: 12px !important;
    }


    /* ==================================================
       RADIO / CHECKBOX - MOBILE
       ================================================== */

    .gform_wrapper .gfield_radio,
    .gform_wrapper .gfield_checkbox {
        gap: 0 !important;
    }

    .gform_wrapper .gchoice {
        display: flex !important;
        align-items: flex-start;

        gap: 11px;

        margin-bottom: 18px !important;
    }

    .gform_wrapper .gchoice:last-child {
        margin-bottom: 0 !important;
    }

    .gform_wrapper .gchoice label {
        font-family: Roboto, sans-serif !important;

        font-size: 16px !important;
        font-weight: 400 !important;
        line-height: 24px !important;
        letter-spacing: 0 !important;

        color: #202124 !important;

        margin: 0 !important;
        padding: 0 !important;
    }

    .gform_wrapper .gchoice input[type="radio"],
    .gform_wrapper .gchoice input[type="checkbox"] {
        flex: 0 0 auto;

        margin: 4px 0 0 0 !important;
    }


    /* ==================================================
       SUBIDA DE ARCHIVOS
       ================================================== */

    .gform_wrapper .ginput_container_fileupload input[type="file"] {
        font-size: 14px !important;
        line-height: 20px !important;
    }

    .gform_wrapper .ginput_container_fileupload input[type="file"]::file-.elementor-1883 .elementor-element.elementor-element-98a9dbf-button {
        font-size: 14px !important;
        padding: 9px 12px !important;
    }


    /* ==================================================
       BOTÓN ENVIAR
       ================================================== */

    .gform_wrapper .gform_footer input[type="submit"],
    .gform_wrapper .gform_footer .gform_button {
        font-size: 15px !important;
        line-height: 20px !important;

        min-height: 44px;
        padding: 11px 20px;
    }


    /* ==================================================
       TEXTO INTRODUCTORIO
       ================================================== */

    .gform_wrapper .gsection_description,
    .gform_wrapper .gfield_html .gform_html {
        font-size: 16px !important;
        line-height: 24px !important;
    }
    
} /* CIERRA EL PRIMER @media MOBILE */
    
    /* ==================================================
   AJUSTES FINALES DE UX / COLORES
   ================================================== */


/* ==================================================
   1. LEYENDA "SEÑALA LOS CAMPOS OBLIGATORIOS"
   ================================================== */

.gform_wrapper .gform_required_legend {
    font-family: Roboto, sans-serif !important;
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 400 !important;
    color: #5f6368 !important;
    margin-bottom: 8px !important;
}

.gform_wrapper .gform_required_legend .gfield_required {
    font-size: 12px !important;
}


/* ==================================================
   2. PREGUNTAS
   ================================================== */

.gform_wrapper .gfield_label,
.gform_wrapper legend.gfield_label {
    font-size: 15px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    color: #202124 !important;

    margin-bottom: 12px !important;
}


/* ==================================================
   3. RESPUESTAS RADIO / CHECKBOX
   ================================================== */

.gform_wrapper .gchoice label {
    font-size: 15px !important;
    line-height: 22px !important;
    font-weight: 400 !important;
    color: #202124 !important;
}


/* ==================================================
   4. CAMPOS DE TEXTO
   ================================================== */

.gform_wrapper input[type="text"],
.gform_wrapper input[type="email"],
.gform_wrapper input[type="tel"],
.gform_wrapper input[type="number"],
.gform_wrapper textarea,
.gform_wrapper select {
    font-size: 15px !important;
    line-height: 22px !important;
}


/* ==================================================
   5. RADIO BUTTONS Y CHECKBOXES
   Más visibles + turquesa
   ================================================== */

.gform_wrapper .gchoice input[type="radio"],
.gform_wrapper .gchoice input[type="checkbox"] {
    -webkit-appearance: none !important;
    appearance: none !important;

    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;

    background: #ffffff !important;
    border: 2px solid #9aa0a6 !important;
    box-shadow: none !important;

    cursor: pointer;
    position: relative;

    transition:
        border-color 0.15s ease,
        background-color 0.15s ease;
}


/* Radio redondo */
.gform_wrapper .gchoice input[type="radio"] {
    border-radius: 50% !important;
}


/* Checkbox cuadrado */
.gform_wrapper .gchoice input[type="checkbox"] {
    border-radius: 4px !important;
}


/* RADIO SELECCIONADO */
.gform_wrapper .gchoice input[type="radio"]:checked {
    border-color: #16bfd1 !important;

    background:
        radial-gradient(
            circle at center,
            #16bfd1 0,
            #16bfd1 4px,
            #ffffff 5px,
            #ffffff 100%
        ) !important;
}


/* CHECKBOX SELECCIONADO */
.gform_wrapper .gchoice input[type="checkbox"]:checked {
    background-color: #16bfd1 !important;
    border-color: #16bfd1 !important;

    background-image:
        linear-gradient(45deg, transparent 45%, #ffffff 45%, #ffffff 55%, transparent 55%),
        linear-gradient(-45deg, transparent 40%, #ffffff 40%, #ffffff 50%, transparent 50%) !important;

    background-size: 7px 10px, 5px 7px !important;
    background-position: 7px 2px, 3px 6px !important;
    background-repeat: no-repeat !important;
}


/* Hover */
.gform_wrapper .gchoice input[type="radio"]:hover,
.gform_wrapper .gchoice input[type="checkbox"]:hover {
    border-color: #16bfd1 !important;
}


/* ==================================================
   6. BARRA DE PROGRESO
   ================================================== */

.gform_wrapper .gf_progressbar {
    background: #dfe5e7 !important;
}

.gform_wrapper .gf_progressbar_percentage {
    background: #16bfd1 !important;
}


/* Por si Gravity Forms usa la nueva barra de progreso */
.gform_wrapper .gf_progressbar_percentage span {
    color: #ffffff !important;
}


/* ==================================================
   7. BOTONES CONTINUAR / ENVIAR
   ================================================== */

.gform_wrapper .gform_page_footer .gform_next_button,
.gform_wrapper .gform_footer .gform_button,
.gform_wrapper .gform_footer input[type="submit"] {
    background: #16bfd1 !important;
    border: 1px solid #16bfd1 !important;
    color: #ffffff !important;

    border-radius: 6px !important;
    box-shadow: none !important;
}


/* Hover */
.gform_wrapper .gform_page_footer .gform_next_button:hover,
.gform_wrapper .gform_footer .gform_button:hover,
.gform_wrapper .gform_footer input[type="submit"]:hover {
    background: #10aebe !important;
    border-color: #10aebe !important;
    opacity: 1 !important;
}


/* ==================================================
   8. BOTÓN ANTERIOR
   ================================================== */

.gform_wrapper .gform_page_footer .gform_previous_button {
    background: #ffffff !important;
    color: #16bfd1 !important;

    border: 1px solid #16bfd1 !important;
    border-radius: 6px !important;

    box-shadow: none !important;
}

.gform_wrapper .gform_page_footer .gform_previous_button:hover {
    background: #f2fbfc !important;
}


/* ==================================================
   MOBILE
   ================================================== */

@media (max-width: 767px) {

    .gform_wrapper .gfield_label,
    .gform_wrapper legend.gfield_label {
        font-size: 15px !important;
        line-height: 20px !important;
    }

    .gform_wrapper .gchoice label {
        font-size: 15px !important;
        line-height: 22px !important;
    }

    .gform_wrapper .gform_required_legend {
        font-size: 11px !important;
        line-height: 15px !important;
    }

    .gform_wrapper .gchoice input[type="radio"],
    .gform_wrapper .gchoice input[type="checkbox"] {
        width: 19px !important;
        height: 19px !important;
        min-width: 19px !important;
    }

}


/* ==================================================
   AJUSTES DE ESPACIADO Y PROGRESO
   ================================================== */


/* 1. MÁS ESPACIO ENTRE PREGUNTA Y PRIMERA RESPUESTA */

.gform_wrapper .gfield_label,
.gform_wrapper legend.gfield_label {
    margin-bottom: 18px !important;
}

/* En preguntas radio/checkbox */
.gform_wrapper fieldset.gfield > .ginput_container {
    margin-top: 4px !important;
}


/* ==================================================
   2. TEXTO "SEÑALA LOS CAMPOS OBLIGATORIOS"
   ================================================== */

.gform_wrapper .gform_required_legend {
    font-size: 11px !important;
    line-height: 15px !important;
    font-weight: 400 !important;
    color: #777 !important;

    margin-top: 6px !important;
    margin-bottom: 14px !important;
}


/* ==================================================
   3. TÍTULO DEL PROGRESO
   ================================================== */

.gform_wrapper .gf_progressbar_title {
    font-family: Roboto, sans-serif !important;

    font-size: 20px !important;
    line-height: 28px !important;
    font-weight: 500 !important;

    color: #202124 !important;

    margin-bottom: 8px !important;
}


/* ==================================================
   AJUSTES MOBILE
   ================================================== */

@media (max-width: 767px) {

    .gform_wrapper .gfield_label,
    .gform_wrapper legend.gfield_label {
        margin-bottom: 18px !important;
    }

    .gform_wrapper .gf_progressbar_title {
        font-size: 20px !important;
        line-height: 28px !important;
    }

    .gform_wrapper .gform_required_legend {
        font-size: 11px !important;
        line-height: 15px !important;
    }

}
    /* ==================================================
   BOTONES ÚLTIMA PÁGINA
   ================================================== */

.gform_wrapper .gform_page_footer {
    display: flex !important;
    align-items: center;
    gap: 10px !important;
    margin-top: 14px !important;
}

/* ANTERIOR */
.gform_wrapper .gform_page_footer .gform_previous_button {
    min-height: 44px !important;
    padding: 10px 18px !important;

    background: #ffffff !important;
    color: #16bfd1 !important;

    border: 1.5px solid #16bfd1 !important;
    border-radius: 6px !important;

    font-size: 15px !important;
    font-weight: 500 !important;

    box-shadow: none !important;
}

/* ENVIAR */
.gform_wrapper .gform_page_footer input[type="submit"],
.gform_wrapper .gform_page_footer .gform_button {
    min-height: 44px !important;
    padding: 10px 22px !important;

    background: #16bfd1 !important;
    color: #ffffff !important;

    border: 1.5px solid #16bfd1 !important;
    border-radius: 6px !important;

    font-size: 15px !important;
    font-weight: 600 !important;

    box-shadow: none !important;
}

/* HOVER */
.gform_wrapper .gform_page_footer .gform_previous_button:hover {
    background: #f2fbfc !important;
}

.gform_wrapper .gform_page_footer input[type="submit"]:hover,
.gform_wrapper .gform_page_footer .gform_button:hover {
    background: #10aebe !important;
    border-color: #10aebe !important;
}

    /* ==================================================
   FIX RADIO / CHECKBOX MOBILE
   ================================================== */

@media (max-width: 767px) {

    .gform_wrapper .gchoice {
        display: grid !important;
        grid-template-columns: 20px 1fr !important;
        column-gap: 14px !important;
        align-items: start !important;

        margin-bottom: 16px !important;
    }

    .gform_wrapper .gchoice input[type="radio"],
    .gform_wrapper .gchoice input[type="checkbox"] {
        width: 19px !important;
        height: 19px !important;
        min-width: 19px !important;

        margin: 2px 0 0 0 !important;
        padding: 0 !important;

        position: static !important;
        transform: none !important;
    }

    .gform_wrapper .gchoice label {
        display: block !important;
        width: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        font-size: 15px !important;
        line-height: 22px !important;
    }
}/* End custom CSS */