html{
    scroll-behavior: smooth;
}
body{
    font-family: 'Montserrat', sans-serif;
}

/*--------------- Estilos del menú PC ---------------*/
.menu-container{
    height: 14vh;
    width: 100%;
    position: fixed;
    top: 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
    z-index: 100;
    transition: height .5s ease, background-color .5s ease;
}
.menu-scroll{
    height: 9vh;
    background-color: #FFFFFF;
    box-shadow: 4px 4px 8px 0px rgba(50, 50, 50, 0.3);
}
.logo-menu{
    height: 45px;
    width: 180px;
    transition: height .3s ease;
}
.logo-scroll{
    height: 35px;
}
.logo-menu img{
    height: 100%;
}
.items-menu-container{
    display: flex;
}
.items-menu-container li{
    list-style-type: none;
    margin: 0 12px;
}
.items-menu-container a{
    padding: 6px 20px;
    text-decoration: none;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 1px;
    position: relative;
    color: #FF5F62;
    transition: background-color .3s ease;
}
.items-menu-container a::after{
    content: '';
    position: absolute;
    height: 2px;
    width: 106%;
    background-color: rgba(255, 95, 98, .7);
    left: -3%;
    bottom: -5px;
    transform: scaleX(0);
    transition: transform .25s ease;
}
.items-menu-container a:hover::after{
    transform: scaleX(1);
}
@media screen and (max-width: 1030px){
    .menu-container{
        display: none;
    }
}
/*--------------- Estilos Menú Móvil ---------------*/
.menu-container-mobile{
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: space-between;
    height: 10vh;
    width: 100%;
    background-color: #FFFFFF;
    box-shadow: 5px 6px 9px 0px rgba(50, 50, 50, 0.3);
}
.logo-menu-mobile{
    margin-left: 30px;
    height: 50px;
}
.logo-menu-mobile img{
    height: 100%;
}
.items-menu-container-mobile{
    position: absolute;
    width: 100%;
    background-color: #E5E5E5;
    flex-direction: column;
    margin: 0;
    top: 10vh;
    transform: translateX(101%);
    transition: transform .4s ease-out;
}
.hide-menu-mobile{
    transform: translateX(0%);
}
.items-menu-container-mobile li{
    height: 12vh;
    display: flex;
    justify-content: center;
    align-items: center;
}
.items-menu-container-mobile a{
    width: 100%;
    margin-left: -80px;
    padding: 7px 10px;
    text-align: center;
    color: #FF5F62;
    text-decoration: none;
    font-size: 12px;
    font-weight: bold;
    letter-spacing: 2px;
    opacity: 0;
    transition: background-color .3s ease;
}
.hamburger-icon{
    height: 40px;
    width: 40px;
    margin-right: 30px;
    z-index: 102;
}
.hamburger-icon span{
    transform: translateX(10%);
    display: block;
    height: 4px;
    width: 90%;
    margin: 7px 0;
    background-color: #FF5F62;
    transition: transform .2s ease;
}
.line2{
    transition: transform .8s ease;
}
.change .line1{
    transform: rotate(38deg) translate(10px, 6.4px);
}
.change .line2{
    transform: scaleX(0);
}
.change .line3{
    
    transform: rotate(-38deg) translate(10px, -6.4px);
}

@keyframes entry {
    0%{
        transform: translateX(80px);
        opacity: 0;
    }
    100%{
        transform: translateX(0);
        opacity: 1;
    }
}
@media screen and (min-width: 1029px){
    .menu-container-mobile{
        display: none;
    }
}


/*--------------- Scroll Top ---------------*/
.scroll-top{
    position: fixed;
    background-image: url(/img/scrolltop.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 101;
    cursor: pointer;
    opacity: 0;
    transition: opacity .6s ease;
}
.active-top{
    opacity: .75;
}
@media (max-width: 419px){
    .scroll-top{
        height: 35px;
        width: 35px;
        bottom: 15px;
        right: 15px;
    }    
}
@media (min-width: 420px){
    .scroll-top{
        height: 40px;
        width: 40px;    
        bottom: 5vh;
        right: 5vh;
    }
}

/*--------------- Estilos de la sección principal ---------------*/
.main-container h1{
    font-size: 50px;
}
.main-container h2{
    font-size: 35px;
}

.heroe-container{
    height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 0;
    position: relative;
}
.heroe-container h1{
    color: #ffffff;
    font-size: 50px;
}
.heroe-container h2{
    color: #FF5F62;
}
.heroe-container p{
    width: 40%;
    font-size: 19px;
    color: #FFFFFF;
    letter-spacing: 1px;
    text-align: center;
}
.heroe-container h1,
.heroe-container h2,
.heroe-container h3,
.heroe-container p{
    text-align: center;
}
.button-container{
    margin-top: 35px;
}
.heroe-button{
    text-decoration: none;
    padding: 15px 60px;
    background-color: #FF5F62;
    border: 1px solid #FF5F62;
    color: #FFFFFF;
    font-size: 14px;
    font-weight: bolder;
    border-radius: 10px;
    letter-spacing: 2px;
    transition: all .5s ease;
}
.heroe-button:hover{
    background-color: transparent;
    color: #FF5F62;
}
.express-button{
    margin-bottom: 5vh;
}
.link-site{
    color: #FF5F62;
    font-weight: bolder;
}
/*--------------------Estilos del botón hipotecario----------------------*/
.terms-mortgage{
    width: 60%;
}
@media screen and (max-width: 425px){
    .button-container{
        margin-top: 10px;
    }
    .heroe-button{
        padding: 8px 30px;
        font-size: 12px;
        font-weight: normal;
    }
}
.heroe-slider{
    position: absolute;
    height: inherit;
    width: inherit;
    z-index: -1;
    overflow: hidden;
}
.heroe-slider h3{
    position: absolute;
    left: 0;
    right: 0;
    font-size: 22px;
    bottom: 9vh;
    margin: auto;
    animation: textFade 2s ease forwards;
}
@keyframes textFade {
    0%{
        transform: translateY(7vh);
        opacity: 0;
    }
    100%{
        transform: translateY(0);
        opacity: 1;
    }
}
@media screen and (max-width: 768px){
    .heroe-container h2{
        width: 80%;
    }
    .heroe-container p{
        width: 70%;
    }
}
@media screen and (max-width: 425px){
    .heroe-container h1,
    .heroe-container h2,
    .heroe-container h3,
    .heroe-container p{
        width: 90%;
    }
    .heroe-container h1{
        font-size: 24px;
    }
    .heroe-container h2{
        font-size: 20px;
    }
    .heroe-container h3{
        font-size: 16px;
    }
    .heroe-container p{
        font-size: 16px;
    }
}
.slide{
    position: absolute;
    height: inherit;
    width: inherit;
    opacity: 0;
    transition: opacity 2.5s ease;
}
.slide-active{
    opacity: 1;
}
@keyframes imageFade {
    0%{
        transform: scale(1.16);
    }
    100%{
        transform: scale(1);
    }
}
.slide::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(39, 34, 54, .85);
    z-index: 1;
}
.slide img{
    width: 100%;
    height: auto;
}
@supports(object-fit: cover){
    .slide img{
      height: 100%;
      object-fit: cover;
      object-position: center center;
    }
}
.slide h3{
    z-index: 10;
    letter-spacing: 1px;
    color: #FF5F62;
}

/*--------------- Estilos Generales del Container ---------------*/
.container,
.container-white{
    min-height: 35vh;
    width: 100%;
    padding: 11vh 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}
.container h2,
.container h4,
.container p{
    color: #3A3351;
}
.container h3{
    color: #FF5F62;
}
.container-white h2,
.container-white h3{
    color: #FF5F62;
}
.container-white li,
.container-white {
    color: #FFFFFF;
}
.container h2{
    width: 45%;
}
.container-white p,
.container p{
    width: 65%;
}
@media (max-width: 419px){
    .container,
    .container-white{
        padding: 11vh 5vw;
        box-sizing: border-box;
    }
    .container h2,
    .container-white h2{
        font-size: 16px;
        width: 90%;
    }
    .container h3,
    .container-white h3{
        font-size: 15px;
    }
    .container p,
    .container-white p{
        font-size: 15px;
        width: 90%;
    }
    .container li,
    .container-white li{
        font-size: 14px;
    }
}
@media (min-width: 420px) and (max-width: 1030px){
    .container,
    .container-white{
        padding: 11vh 10vw;
        box-sizing: border-box;
    }
    .container h2,
    .container-white h2{
        width: 100%;
    }
    .container p,
    .container-white p{
        width: 100%;
    }
}

/*---------------- SECCIÓN DE CARACTERÍSTICAS ---------------*/
.features-section{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 80%;
}
.feature{
    margin: 5px 20px;
    height: 38vh;
    width: 23vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.feature-img{
    height: 70px;
    width: 70px;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}
@media (max-width: 419px){
    .feature-img{
        height: 30px;
        width: 30px;
    }
}
@media (max-width: 1030px){
    .features-section{
        width: 90%;
    }
    .feature{
        margin: 7px 0;
        width: 100%;
        height: auto;
    }
    .feature h3{
        margin: 5px 0 0 0;
    }
}
.img1{
    background-image: url(/img/customer.png);
}
.img2{
    background-image: url(/img/folder.png);
}
.img3{
    background-image: url(/img/analytics.png);
}
.img4{
    background-image: url(/img/flexibility.png);
}
.img5{
    background-image: url(/img/efectivity.png);
}

.process-container{
    width: 80%;
    margin: 25px 0;
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
}
.steps{
    min-height: 30vh;
    width: 30vw;
    margin: 38px 0;
    display: flex;
    align-items: center;
}
.step-img{
    height: 20vh;
}
.step-img img{
    height: 100%;
    border-radius: 50%;
    box-shadow: 0 16px 38px -12px rgba(0,0,0,.56),0 4px 25px 0 rgba(0,0,0,.12),0 8px 10px -5px rgba(0,0,0,.2);
}
.step-text-container{
    width: 100%;
    padding: 0 20px;
}
.step-text-container p,
.step-text-container h3{
    width: 100%;
    text-align: center;
}
.mailpreca {
    color: #FF5F62;
    font-size: 20px;
}
@media (max-width: 1024px){
    .process-container{
        width: 90%;
    }
    .steps{
        flex-direction: column;
        width: 100%;
        margin: 15px 0;
    }
    .step-img{
        height: 10vh;
    }
    .mailpreca{
        font-size: 18px;
    }
}
/*------------------ SECCIÓN CREDITO BANCARIO ----------------*/
.fourth-container,
.sixth-container,
.eigth-container{
    position: relative;
    overflow: hidden;
}
.fourth-container img,
.sixth-container img,
.eigth-container img{
    position: absolute;
    width: 100%;
    height: auto;
    z-index: -2;
}
@supports(object-fit: cover){
    .fourth-container img,
    .sixth-container img,
    .eigth-container img{
      height: 100%;
      object-fit: cover;
      object-position: center center;
    }
}
.fourth-container::before,
.sixth-container::before,
.eigth-container::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: rgba(39, 34, 54, .85);
    z-index: -1;
}
.bank-features,
.financial-features{
    width: 27%;
    text-align: left;
    display: flex;
}
.bank-feature h3,
.financial-feature h3{
    text-align: center;
}
.subtitle-product{
    letter-spacing: 3px;
}
.bank-feature,
.financial-feature{
    width: 100%;
    padding: 0 15px;
}
.bank-feature li,
.financial-feature li{
    list-style: square;
    line-height: 1.5;
}
.financial-feature li{
    color: #3A3351;
}
.fifth-container small{
    color: #3A3351;
}
.simulator-container{
    min-height: 25vh;
    width: 60%;
    border: 4px solid #FF5F62;
    border-radius: 10px;
    padding: 15px 0;
    box-sizing: border-box;
}
.terms-info{
    margin-top: 15px;
    color: #FFFFFF;
}
@media (max-width: 420px){
    .bank-feature li,
    .financial-feature li{
        font-size: 14px;
    }
    .fifth-container small{
        font-size: 11px;
    }
    .terms-info{
        font-size: 11px;
    }
    .simulator-container,
    .terms-info{
        width: 95%;
    }
    .simulator-container big{
        font-size: 14px;
    }
    .input-range-container input{
        margin-left: 0;
        margin-right: 0;
    }
    .span-movil{
        display: none;
    }
    .tool-tip{
        font-size: 13px;
        letter-spacing: 1px;
    }
}
@media (min-width: 1030px) {
    .subtitle-product{
        font-size: 24px;
    }
}
@media (min-width: 421px) and (max-width: 1030px){
    .simulator-container{
        width: 90%;
    }
}
@media (max-width: 1030px){
    .bank-features,
    .financial-features{
        width: 90%;
        display: block;
    }
    .bank-feature,
    .financial-feature{
        width: 100%;
        padding: 0;
    }
}

/*--------------- ESTILOS DEL INPUT RANGE ---------------*/
.simulator-container{
    margin-bottom: 3vh;
}
.simulator-container big{
    display: block;
    margin: 15px 0 5px 0;
}
.simulator-container h3{
    letter-spacing: 2px;
}
.input-range-container{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin-top: 35px;
}
.tool-tip{
    display: block;
    position: absolute;
    transform: translateY(-130%);
    height: 30px;
    width: 120px;
    border: 1px solid #FFFFFF;
    border-radius: 10px;
    background-color: #FF5F62;
    display: flex;
    align-items: center;
    justify-content: center;
}
.tool-tip span{
    margin: 0 3px;
}
.input-range-container input{
    -webkit-appearance: none;
    background: #FF5F62;
    width: 70%;
    border: 1px solid #FFFFFF;
    border-radius: 5px;
    height: 12px;
    margin: 30px 15px;
}
.input-range-container input:focus{
    outline: none;
}
.input-range-container input::-ms-track{
    width: 100%;
    cursor: pointer;
    background: transparent; 
    border-color: transparent;
    color: transparent;
}
.input-range-container input::-webkit-slider-thumb{
    -webkit-appearance: none;
    border: 2px solid #FF5F62;
    height: 26px;
    width: 28px;
    border-radius: 50%;
    background: #FCFCFC;
    cursor: pointer;
    margin-top: 0px;   
}
.input-range-container input::-moz-range-thumb{
    border: 2px solid #FF5F62;
    height: 26px;
    width: 28px;
    border-radius: 50%;
    background: #FCFCFC;
    cursor: pointer;
}

/*--------------- SECCIÓN CRÉDITO FINANCIERA ---------------*/
.financial-feature li{
    list-style-image: linear-gradient(#FF5F62, #FF5F62);
}

.fifth-container small{
    margin-top: 15px;
}
.fifth-container big,
.fifth-container span{
    color: #3A3351;
}
.fifth-container span.tool-tip *{
    color: #FFFFFF;
}

/*--------------- IMAGENES DE ENCABEZADO LAS SECCIONES ----------------*/

.bancario{
    background-image: url(/img/requisitos-credito-bancario.png);
}
.financiera{
    background-image: url(/img/requisitos-credito-financiera.png);
}
.express{
    background-image: url(/img/requisitos-credito-express.png);
}
.constructores{
    background-image: url(/img/requisitos-credito-constructores.png);
}
.inicia{
    background-image: url(/img/inicia-tramite.png);
}

/*--------------- SECCIÓN DE PREGUNTAS Y RESPUESTAS ---------------*/
.answer-section{
    text-align: left;
    width: 65%;
}
.answer-section h3,
.answer-section h4,
.answer-section p{
    width: 100%;
}
@media (max-width: 420px){
    .answer-section{
        width: 95%;
    }
    .answer-section h4{
        font-size: 14px;
    }
}
@media (min-width: 421px) and (max-width: 1030px){
    .answer-section{
        width: 80%;
    }
}
/*-------------------- SECCIÓN DE TRÁMITE --------------------*/
.form-container {
    border: 2px solid #FF5F62;
    border-radius: 15px;
    padding: 30px 20px 10px 20px;
    margin-top: 4vh;
}
.form-container form{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.form-label{
    color: #FFFFFF;
    letter-spacing: 2px;
    padding: 8px 0;
    margin-top: 20px;
    font-size: 13px;
}
.form-label:nth-child(1){
    margin-top: 0;
}
.input-form{
    height: 33px;
    width: 30vw;
    background-color: rgba(255, 255, 255, .1);
    outline: none;
    border: none;
    border-bottom: 2px solid #FF5F62;
    color: #FFFFFF;
    font-size: 14px;
    padding: 0 10px;
}
.form-button{
    margin-top: 30px;
    background-color: #FF5F62;
    outline: none;
    border: 1px solid #FF5F62;
    border-radius: 10px;
    color: #FFFFFF;
    padding: 9px 30px;
    font-size: 14px;
    letter-spacing: 2px;
    cursor: pointer;
    transition: background-color .3s ease;
}
@media screen and (min-width: 1024px){
    .form-button:hover{
        background-color: rgba(255, 111, 97, .3);
    }
}
.message{
    width: 90%;
    background-color: #ffffff;
    min-height: 30px;
    margin-top: 10px;
    border-radius: 5px;
    display: flex;
    align-items: center;
}
.active{
    opacity: 0;
}
.message p{
    width: 100%;
    font-size: 14px;
    font-weight: bold;
    margin: 0;
}
.error{
    color: red;
}
.processing{
    color: #3A3351;
}
.success{
    color: green;
}
@media (max-width: 419px){
    .form-container{
        width: 90%;
        padding-left: 5px;
        padding-right: 5px;
    }
    .input-form{
        width: 90%;
    }
    .form-label{
        font-size: 11px;
    }
    .form-button{
        font-size: 11px;
    }
    .input-form{
        height: 30px;
    }
    .message p{
        font-size: 11px;
    }
}
@media (min-width: 420px) and (max-width: 1030px){
    .form-container{
        width: 70%;
        padding-left: 7px;
        padding-right: 7px;
    }
    .input-form{
        width: 80%;
    }   
}

/*--------------- ESTILOS DE SECCIÓN DE CONTACTO ---------------*/
.contact-way-container{
    margin-top: 15px;
    width: 65%;
    display: flex;
}
.contact-way{
    min-height: 20vh;
    width: 33.33333%;
    display: flex;
    line-height: .4;
    flex-direction: column;
    align-items: center;
}
.contact-way-img{
    height: 60px;
    width: 60px;
    background-size: contain;
    background-position: center;
    opacity: .8;
}
.whatsapp{
    background-image: url(/img/whatsapp.png);
}
.phone{
    background-image: url(/img/phone.png);
}
.mail{
    background-image: url(/img/envelope.png);
    margin-top: 12px;
}
.contact-way a{
    color: #3A3351;
    margin-top: 15px;
}
.contact-way p{
    width: 100%;
}
@media (max-width: 420px){
    .contact-way-img{
        height: 30px;
        width: 30px;
    }
    .contact-way a{
        font-size: 14px;
    }
}
@media (max-width: 800px){
    .contact-way-container{
        display: block;
        width: 100%;
    }
    .contact-way{
        width: 100%;
        margin-top: 15px;
    }
}

/*--------------- ESTILOS DEL FOOTER ---------------*/
.footer-container{
    padding: 30px 20px;
    box-sizing: border-box;
    min-height: 27vh;
    width: 100%;
    display: flex;
    background-color: #272236;
}
.footer-column{
    display: flex;
    flex-direction: column;
    height: auto;
    width: 33.33%;
    color: #FF5F62;
    padding: 20px 30px;
    box-sizing: border-box;
    border-right: 2px solid #FF5F62;
}
.footer-column:nth-child(3){
    border-right: none;
}
.footer-column small{
    margin: 6px 0;
}
.footer-column small:nth-child(1){
    color: #FFFFFF;
}
.footer-column a{
    color: #FF5F62;
    text-decoration: none;
}
.footer-column a:hover{
    opacity: .7;
}
@media (max-width: 419px){
    .footer-container{
        flex-direction: column;
    }
    .footer-column{
        width: 100%;
        border: none;
        padding: 10px 15px;
    }
    .footer-column small{
        font-size: 11px;
    }
}
@media (min-width: 420px) and (max-width: 1030px){
    .footer-container{
        flex-direction: column;
    }
    .footer-column{
        width: 100%;
        border: none;
        padding: 10px 10vw;
    }    
}

/*---------- ESTILOS SECCIÓN LEGAL ----------*/
.main-legal-container{
    min-height: 100vh;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 21vh 0;
    z-index: -1;
}
.legal-container{
    height: auto;
    line-height: 1.5;
    text-align: justify;
    color: #3A3351;
}
@media screen and (min-width: 1024px){
    .legal-container{
        width: 55%;
    }
}
@media (min-width: 420px ) and (max-width: 1023px){
    .legal-container{
        width: 70%;
    }
}
@media (max-width: 419px){
    .legal-container{
        width: 90%;
        text-align: left;
        box-sizing: border-box;
    }
    .legal-container h1{
        font-size: 16px;
    }
    .legal-container p{
        font-size: 12px;
    }
    .legal-container li{
        font-size: 11px;
    }
}
.legal-container h1{
    color: #FF5F62;
}
.legal-container a{
    text-decoration: none;
    color: #FF5F62;
}
.legal-container small{
    display: block;
    margin: 12px 0;
}

/*---------------- ESTILOS 404 ---------------*/
.main-not-found{
    min-height: 100vh;
    background-image: url('/img/not-found.jpg');
    background-position: top;
    background-size: cover;
    color: #FF5F62;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.main-not-found p{
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    width: 95%;
}
.main-not-found a{
    text-decoration: none;
    margin-top: 22px;
    padding: 10px 50px;
    background-color: #FF5F62;
    border: 1px solid #FF5F62;
    color: #FFFFFF;
    font-weight: bold;
    border-radius: 7px;
    letter-spacing: 2px;
    transition: background-color .3s ease;
}
@media (min-width: 1030px){
    .main-not-found a:hover{
        background-color: rgba(255, 111, 97, .3);
    }
}
