/* Contact Form Styles */
.formulario_grupo-correcto .formulario_vali_estado,
.formulario_grupo-correcto .fa-estado {
    color: #1ed12d;
    opacity: 1;
}

.formulario_grupo-error .formulario_vali_estado,
.formulario_grupo-error .fa-estado {
    color: #bb2929;
    opacity: 1;
}

.formulario_input_error {
    font-size: 12px;
    margin-bottom: 0;
    display: none;
    color: #bb2929;
}

.formulario_input_error_activo {
    display: block;
}

.for_sele_error {
    font-size: 12px;
    margin-bottom: 0;
    display: none;
    color: #bb2929;
}

.formulario_grupo-error .for_sele_error {
    display: block;
}

.formulario_vali_estado,
.fa-estado {
    position: absolute;
    right: 10px;
    bottom: 15px;
    z-index: 100;
    font-size: 16px;
    opacity: 0;
}

.areTex {
    bottom: 25px;
}

.formulario_grupo_input {
    position: relative;
}

.formulario_input {
    width: 100%;
    background: #fff;
    border: 3px solid transparent;
    border-radius: 3px;
    height: 45px;
    line-height: 45px;
    padding: 0 40px 0 10px;
    transition: .3s ease all;
}

.formulario_input:focus {
    border: 3px solid #0075ff;
    outline: none;
    box-shadow: 3px 0px 30px rgba(163, 163, 163, 0.4);
}

.formulario_select {
    width: 100%;
    background: #fff;
    border: 3px solid transparent;
    border-radius: 3px;
    height: 45px;
    line-height: 45px;
    padding: 0 40px 0 10px;
    transition: .3s ease all;
}

.formulario_select:focus {
    border: 3px solid #0075ff;
    outline: none;
    box-shadow: 3px 0px 30px rgba(163, 163, 163, 0.4);
}

.formulario_grupo_select {
    position: relative;
}

.textArea {
    width: 100%;
    background: #fff;
    border: 3px solid transparent;
    border-radius: 3px;
    height: 150px;
    line-height: 1.5;
    padding: 10px;
    transition: .3s ease all;
}

.textArea:focus {
    border: 3px solid #0075ff;
    outline: none;
    box-shadow: 3px 0px 30px rgba(163, 163, 163, 0.4);
}

.msjError {
    height: 45px;
    line-height: 45px;
    background: #f66060;
    padding: 0 15px;
    border-radius: 3px;
    margin-bottom: 20px;
    display: none;
}

.msjError p {
    margin: 0;
    color: #fff;
}

.msjInfo {
    height: 45px;
    line-height: 45px;
    background: #0075ff;
    padding: 0 15px;
    border-radius: 3px;
    margin-bottom: 20px;
    display: none;
}

.msjInfo p {
    margin: 0;
    color: #fff;
}

.boton_submit_contac {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 20px;
}

.btn_contac {
    width: 30%;
    background: #000;
    color: #fff;
    font-weight: bold;
    border: none;
    border-radius: 3px;
    cursor: pointer;
    transition: .1s ease all;
}

.btn_contac:hover {
    box-shadow: 3px 0px 30px rgba(163, 163, 163, 1);
}

.reseteo {
    margin-bottom: 20px;
}

.titulo-seccion-general_fase2 {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
    text-align: center;
}

/* Responsive styles for the form */
@media screen and (max-width: 800px) {
    .btn_contac {
        width: 100%;
    }
}

/* Modal specific styles */

.body_pading {
    max-width: 90%;
    margin: 0 7%;
    padding-bottom: 3rem;
}

/* Form row layout */
.form-row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

.form-group {
    position: relative;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-bottom: 20px;
}

@media (min-width: 768px) {
    .form-group {
        flex: 0 0 50%;
        max-width: 50%;
    }
    
    #grupo_mensaje {
        flex: 0 0 100%;
        max-width: 100%;
    }
} 

.consultaContacto .modal-body.body_pading {
    max-width: 100%;
    margin: 0;
    overflow-y: auto;
}