:root {
    --gris: #606060;
    --pop: 'Poppins', sans-serif !important;
    --azul: #0455BF;
    --azulo: #1A317C;
}

header .menu-item {
    font-family: var(--pop);
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0px;
    line-height: 26px;
    color: var(--gris);
}

#header_col2 {
    align-items: center;
}

#header_col2 li>a:hover {
    color: var(--azulo);
}

header .module-logo {
    padding-block: 10px;
}

#f2>div {
    height: 990px;
    border: 3px solid #00CC67;
    border-radius: 29px;
    padding-inline: 75px;
    padding-top: 62px;
}

.azul28 {
    font-family: var(--pop);
    font-weight: 700;
    font-size: 28px;
    letter-spacing: 0px;
    line-height: 36px;
    color: var(--azul);
}

#f2c1 {
    max-width: 612px;
}

.azulo18 {
    font-family: var(--pop);
    font-weight: 400;
    font-size: 18px;
    letter-spacing: 0px;
    line-height: 26px;
    color: var(--azulo);
}

.azulo18>img {
    margin-right: 5px;
}

#tht-gp {
    display: flex;
    column-gap: 50px;
}

.azul22 {
    font-family: var(--pop);
    font-weight: 600;
    font-style: italic;
    font-size: 22px;
    letter-spacing: 0px;
    line-height: 28px;
    color: var(--azul);
}

.btn318 {
    width: 318px;
    height: 54px;
    background-color: white;
    color: var(--azulo);
    font-family: var(--pop);
    font-weight: 700;
    font-size: 20px;
    letter-spacing: 0px;
    border: 2px solid var(--azulo);
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 10px;
}

.btn318:before {
    content: url(/wp-content/uploads/2025/08/arrow_right_azul.svg);
}

.btn318:hover {
    background-color: var(--azulo);
    color: white;
}

.btn318:hover::after {
    content: url(/wp-content/uploads/2025/08/arrow_right_blanca.svg);
}

#f2>div {
    background-image: url(/wp-content/uploads/2025/08/Fondo-ondas.jpg);
    background-position: center;
}

#proximos_pasos {
    margin-top: 90px;
}

#features svg {
    height: 55px;
}

#features .contents {
    width: 250px;
    min-width: unset !important;
    padding-inline: 22px;
    padding-top: 20px;
    min-height: 263px;
    padding-bottom: 0px;
    box-shadow: 0px 10px 10px #00000057;
}

#features .lqd-iconbox-title {
    font-family: var(--pop);
    font-weight: 700;
    font-size: 18px;
    letter-spacing: 0px;
    line-height: 22px;
    color: var(--azulo);
    height: 44px;
}

#features .contents p {
    font-family: var(--pop);
    font-weight: 400;
    font-size: 18px;
    letter-spacing: 0px;
    line-height: 22px;
    color: var(--azulo);
}

@media only screen and (max-width:900px) {

    #f2>div>div {
        display: flex;
        flex-direction: column;
    }

    #f2c1,
    #f2c2 {
        max-width: unset;
        width: 100%;
    }

    #f2>div {
        height: 1500px;
    }

    #f2>div {
        background-position: bottom;
        background-repeat: no-repeat;
    }

    #features>div>div {
        justify-content: center;
    }
}

@media only screen and (max-width:600px) {
    #f1 figure {
        justify-content: center;
        margin-bottom: 15px;
    }

    #f2>div {
        padding-inline: 15px;
        padding-top: 35px;
    }

    .azul28 {
        font-size: 23px;
        line-height: 31px;
    }

    .azulo18 {
        font-size: 16px;
        line-height: 21px;
    }

    #tht-gp {
        column-gap: 20px;
    }

    .azul22 {
        font-size: 18px;
        line-height: 25px;
    }

    .btn318 {
        width: 285px;
        font-size: 17px;
    }

    #features .lqd-iconbox-title {
        font-size: 16px;
    }

    #features .contents p {
        font-size: 15px;
    }

    #features .contents {
        min-height: 245px;
    }
}



/* AGUS *- VIDEO*/


/* 1) Fija dimensiones del contenedor de vídeo */
#video-web {
    position: relative;
    width: 414px !important;
    height: 740px !important;
    overflow: hidden;
    background: transparent !important;
    /* por si el theme pone fondo negro */
    margin-left: auto;
}

/* 2) Asegura que el wrapper del vídeo ocupe todo el contenedor */
#video-web .lqd-vbg-wrap,
#video-web .lqd-vbg-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* 3) El truco: “min-” + translate para cover completo */
#video-web .lqd-vbg-inner video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    object-fit: cover;
    /* refuerzo moderno */
}


/* ———————  MÓBILE  ——————— */

@media only screen and (max-width: 900px) {
    #video-web {
        width: 100% !important;
        /* ocupa todo el ancho disponible */
        max-width: 290px;
        /* nunca más ancho que el diseño original */
        height: auto !important;
        /* alt auto según la proporción */
        margin: 35px auto;
        /* centrado horiz. */
    }

    /* Ajusta también el spacer vacío que controla la altura */
    .video-spaceHeight {
        height: auto !important;
        aspect-ratio: 414 / 740 !important;
        padding: 0 !important;
    }
}


@media only screen and (max-width: 380px) {
    #video-web {
        max-width: 270px;
    }
}


/* ——————— TABLET ——————— */
@media only screen and (min-width: 715px) and (max-width: 1000px) {
    #video-web {
        max-width: 324px;
    }
}

@media only screen and (min-width: 815px) and (max-width: 1000px) {
    #video-web {
        max-width: 313px;
    }
}

/* FIN AGUS *- VIDEO /


/*FORMULARIO 2*/

#fila_form2 {
    height: fit-content;
    background-repeat: no-repeat;
    background-size: cover;
    padding-bottom: 94px;
    background-position: right;
}

#col_form2>div {
    padding-inline: 68px;
    max-width: 1124px;
    margin-inline: auto;
    padding-top: 77px;
    background: linear-gradient(123deg, #0455bfb5, #ffffff59);
}

#col_form2 label {
    width: 100%;
}


#col_form2 .lqd-contact-form select,
#col_form2 .lqd-contact-form input,
#col_form2 .lqd-contact-form textarea,
#col_form2 .lqd-contact-form .ui-button.ui-selectmenu-button {
    border: none !important;
}

#col_form2 label:has(>span.wpcf7-form-control-wrap) {
    border: 2px solid #FFFFFF;
    margin-bottom: 15px;
    /* height: 50px;*/
    padding-block: 9px;
    align-items: center;
}

.labelChecks {
    display: flex;
    padding-inline-start: 2em;
    justify-content: space-between;
    padding-inline-end: 2em;
}


#col_form2 span.wpcf7-form-control-wrap {
    margin-bottom: 0px;
    align-self: center;
}

#col_form2 span,
#col_form2 input,
#col_form2 label {
    color: white !important;
    font-family: var(--pop);
    font-weight: 400;
    font-size: 16px;
    letter-spacing: 0px;
    line-height: 21px;
}

#col_form2 br {
    display: none;
}

.facta>span {
    max-width: 48%;
}

#col_form2 .lqd-contact-form input,
#col_form2 .ui-selectmenu-button {
    height: unset;
    padding-block: 0px;
}

#col_form2 .wpcf7-submit {
    width: 100%;
    height: 49px !important;
    background: linear-gradient(267deg, #0579FC, #0579fcab);
    font-family: 'Poppins';
    font-weight: 700;
    margin-top: 12px;
}

#col_form2 .wpcf7-spinner {
    position: absolute;
}

@media only screen and (max-width: 835px) {

    .labelChecks>span {
        text-align: right;
        min-width: 50%;
    }
}








#col_form2 span.wpcf7-not-valid-tip {
    color: #ffd600 !important;
    font-size: 11px !important;
    position: absolute;
    bottom: -29px;
}



label.label_largo {
    font-size: 0px !important;
    height: 43px;
}

label.label_largo input {
    top: -20px;
}


@media only screen and (max-width: 500px) {


    label.label_largo {
        height: unset;
    }

    label.label_largo input {
        top: unset;
    }

    #col_form2>div {
        padding-inline: 25px;
        padding-top: 35px;
    }

    #col_form2 span,
    #col_form2 input,
    #col_form2 label {
        font-size: 12px !important;
        line-height: 16px;
    }

    #col_form2 label.label_largo {
        border: none !important;
    }

    #col_form2 label.label_largo input {
        border: 2px solid white !important;
        height: 38px !important;
    }

    #col_form2 label.label_largo {
        margin-top: -14px;
    }

    #col_form2 label.label_largo>span {
        margin-top: 10px;
    }

    #col_form2 .label_largo input::placeholder {
        color: transparent;
    }

}