/* =========================================
   VIVEXA INMOBILIARIA
========================================= */


/* =========================================
   HERO
========================================= */

.realestate-hero{

    min-height:90vh;

    display:flex;

    align-items:center;

    padding:150px 0 90px;

    background:#081A38;

    color:white;

}


.realestate-hero-content{

    max-width:850px;

}


.realestate-label{

    display:inline-block;

    color:#F68B1F;

    font-size:11px;

    font-weight:800;

    letter-spacing:2px;

    margin-bottom:18px;

}


.realestate-hero h1{

    color:#ffffff !important;

    font-size:52px;

    line-height:1.1;

    font-weight:800;

    max-width:750px;

    margin:0 0 22px;

}


.realestate-hero p{

    max-width:650px;

    color:#D7E2ED;

    font-size:16px;

    line-height:1.8;

    margin-bottom:30px;

}


.realestate-hero-buttons{

    display:flex;

    gap:12px;

    flex-wrap:wrap;

}


.btn-realestate{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:9px;

    padding:14px 24px;

    background:#F68B1F;

    border:1px solid #F68B1F;

    border-radius:10px;

    color:white;

    text-decoration:none;

    font-size:12px;

    font-weight:700;

    transition:.2s;

}


.btn-realestate:hover{

    background:#FF9C32;

    border-color:#FF9C32;

    color:white;

    transform:translateY(-2px);

}


.btn-realestate-outline{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:9px;

    padding:14px 24px;

    background:transparent;

    border:1px solid rgba(255,255,255,.35);

    border-radius:10px;

    color:white;

    text-decoration:none;

    font-size:12px;

    font-weight:600;

    transition:.2s;

}


.btn-realestate-outline:hover{

    background:white;

    border-color:white;

    color:#081A38;

}


/* =========================================
   INTRO
========================================= */

.realestate-intro{

    padding:100px 0;

    background:#ffffff;

}


.realestate-section-label{

    display:inline-block;

    color:#F68B1F;

    font-size:10px;

    font-weight:800;

    letter-spacing:2px;

}


.realestate-intro h2{

    color:#081A38;

    font-size:38px;

    line-height:1.2;

    font-weight:800;

    margin:12px 0 20px;

}


.realestate-intro p{

    color:#667085;

    font-size:14px;

    line-height:1.85;

}


.realestate-highlight{

    padding:45px;

    background:#F5F7FA;

    border:1px solid #E1E6EC;

    border-radius:22px;

}


.realestate-highlight-icon{

    width:58px;

    height:58px;

    display:flex;

    align-items:center;

    justify-content:center;

    background:#FFF1E3;

    color:#F68B1F;

    border-radius:15px;

    font-size:23px;

    margin-bottom:20px;

}


.realestate-highlight h3{

    color:#081A38;

    font-size:23px;

    font-weight:800;

    margin-bottom:12px;

}


.realestate-highlight p{

    margin:0;

}


/* =========================================
   SIMULADOR
========================================= */

.realestate-simulator{

    padding:100px 0;

    background:#12385F;

}


.realestate-heading{

    max-width:800px;

    margin:0 auto 55px;

}


.realestate-heading h2{

    color:#ffffff;

    font-size:38px;

    line-height:1.2;

    font-weight:800;

    margin:12px 0 15px;

}


.realestate-heading p{

    color:#D7E2ED;

    font-size:14px;

    line-height:1.8;

}


.realestate-simulator
.realestate-section-label{

    color:#F68B1F;

}


/* =========================================
   TARJETA SIMULADOR
========================================= */

.simulator-card{

    height:100%;

    padding:35px;

    background:#ffffff;

    border-radius:22px;

    border:1px solid rgba(255,255,255,.15);

    box-shadow:
        0 20px 50px rgba(0,0,0,.12);

}


.simulator-card-header{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:20px;

    margin-bottom:30px;

}


.simulator-card-header h3{

    color:#081A38;

    font-size:23px;

    font-weight:800;

    margin:0;

}


.simulator-card-header span{

    padding:6px 11px;

    background:#FFF1E3;

    color:#F68B1F;

    border-radius:20px;

    font-size:9px;

    font-weight:800;

    letter-spacing:1px;

}


/* =========================================
   INPUTS
========================================= */

.simulator-label{

    display:block;

    color:#081A38;

    font-size:11px;

    font-weight:700;

    margin-bottom:8px;

}


.simulator-input-wrapper{

    display:flex;

    align-items:center;

    min-height:48px;

    padding:0 14px;

    background:#F8FAFC;

    border:1px solid #DDE3EA;

    border-radius:10px;

    transition:.2s;

}


.simulator-input-wrapper:focus-within{

    border-color:#F68B1F;

    box-shadow:
        0 0 0 3px rgba(246,139,31,.10);

}


.simulator-input-wrapper span{

    color:#7A8491;

    font-size:12px;

    font-weight:600;

}


.simulator-input-wrapper input{

    width:100%;

    height:46px;

    padding:0 7px;

    background:transparent;

    border:0;

    outline:0;

    color:#081A38;

    font-family:inherit;

    font-size:13px;

    font-weight:600;

}


.simulator-input-wrapper input::-webkit-inner-spin-button,
.simulator-input-wrapper input::-webkit-outer-spin-button{

    -webkit-appearance:none;

    margin:0;

}


.simulator-input-wrapper input[type=number]{

    -moz-appearance:textfield;

}


.simulator-select{

    width:100%;

    min-height:48px;

    padding:0 14px;

    background:#F8FAFC;

    border:1px solid #DDE3EA;

    border-radius:10px;

    outline:none;

    color:#081A38;

    font-family:inherit;

    font-size:12px;

    font-weight:600;

    cursor:pointer;

}


.simulator-select:focus{

    border-color:#F68B1F;

    box-shadow:
        0 0 0 3px rgba(246,139,31,.10);

}


/* =========================================
   NOTA
========================================= */

.simulator-note{

    display:flex;

    align-items:flex-start;

    gap:10px;

    margin-top:28px;

    padding:14px;

    background:#F5F7FA;

    border-radius:10px;

    color:#667085;

    font-size:10px;

    line-height:1.6;

}


.simulator-note i{

    flex-shrink:0;

    color:#F68B1F;

    margin-top:2px;

}


/* =========================================
   RESULTADO
========================================= */

.simulator-result{

    height:100%;

    display:flex;

    flex-direction:column;

    padding:35px;

    background:#081A38;

    border:1px solid rgba(255,255,255,.10);

    border-radius:22px;

    color:white;

    box-shadow:
        0 20px 50px rgba(0,0,0,.18);

}


.simulator-result-label{

    color:#F68B1F;

    font-size:10px;

    font-weight:800;

    letter-spacing:2px;

}


.simulator-result h3{

    color:#ffffff;

    font-size:24px;

    font-weight:800;

    margin:8px 0 28px;

}


.result-row{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:15px;

    padding:12px 0;

    border-bottom:1px solid rgba(255,255,255,.08);

}


.result-row span{

    color:#B9C5D3;

    font-size:11px;

}


.result-row strong{

    color:#ffffff;

    font-size:12px;

}


.result-divider{

    height:1px;

    margin:15px 0 25px;

    background:rgba(255,255,255,.12);

}


.dividend-label{

    color:#B9C5D3;

    font-size:11px;

}


.dividend{

    color:#F68B1F;

    font-size:38px;

    font-weight:800;

    line-height:1.2;

    margin:6px 0 18px;

}


.simulator-status{

    padding:12px 14px;

    margin-bottom:25px;

    border-radius:9px;

    background:rgba(255,255,255,.07);

    color:#D7E2ED;

    font-size:10px;

    line-height:1.5;

}


.simulator-status.good{

    background:rgba(40,180,100,.12);

    color:#9BE7BC;

}


.simulator-status.warning{

    background:rgba(246,139,31,.12);

    color:#FFD09D;

}


.btn-simulator-contact{

    display:flex;

    align-items:center;

    justify-content:center;

    gap:8px;

    width:100%;

    margin-top:auto;

    padding:13px 20px;

    background:#F68B1F;

    color:white;

    border:1px solid #F68B1F;

    border-radius:10px;

    text-decoration:none;

    font-size:11px;

    font-weight:700;

    transition:.2s;

}


.btn-simulator-contact:hover{

    background:#FF9C32;

    border-color:#FF9C32;

    color:white;

    transform:translateY(-2px);

}


/* =========================================
   REQUISITOS
========================================= */

.realestate-requirements{

    padding:100px 0;

    background:#F5F7FA;

}


.realestate-requirements
.realestate-heading h2{

    color:#081A38;

}


.realestate-requirements
.realestate-heading p{

    color:#667085;

}


.requirement-card{

    height:100%;

    padding:30px;

    background:#ffffff;

    border:1px solid #E1E6EC;

    border-radius:18px;

    transition:.25s;

}


.requirement-card:hover{

    transform:translateY(-5px);

    border-color:#F68B1F;

    box-shadow:
        0 15px 35px rgba(8,26,56,.07);

}


.requirement-icon{

    width:54px;

    height:54px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin-bottom:20px;

    background:#FFF1E3;

    color:#F68B1F;

    border-radius:14px;

    font-size:21px;

}


.requirement-card h3{

    color:#081A38;

    font-size:18px;

    font-weight:800;

    margin-bottom:10px;

}


.requirement-card p{

    color:#667085;

    font-size:12px;

    line-height:1.75;

    margin:0;

}


/* =========================================
   DOCUMENTOS
========================================= */

.realestate-documents{

    padding:100px 0;

    background:#081A38;

}


.realestate-documents h2{

    color:#ffffff;

    font-size:38px;

    line-height:1.2;

    font-weight:800;

    margin:12px 0 20px;

}


.realestate-documents p{

    color:#CBD5E1;

    font-size:14px;

    line-height:1.8;

}


.documents-list{

    display:flex;

    flex-direction:column;

    gap:12px;

}


.documents-list div{

    display:flex;

    align-items:center;

    gap:13px;

    padding:17px 20px;

    background:#12385F;

    border:1px solid rgba(255,255,255,.09);

    border-radius:12px;

    color:#ffffff;

    font-size:12px;

    font-weight:600;

}


.documents-list i{

    flex-shrink:0;

    color:#F68B1F;

    font-size:16px;

}


/* =========================================
   GASTOS
========================================= */

.realestate-costs{

    padding:100px 0;

    background:#ffffff;

}


.realestate-costs
.realestate-heading h2{

    color:#081A38;

}


.realestate-costs
.realestate-heading p{

    color:#667085;

}


.cost-card{

    height:100%;

    padding:28px;

    background:#F5F7FA;

    border:1px solid #E1E6EC;

    border-radius:17px;

}


.cost-card > i{

    display:block;

    color:#F68B1F;

    font-size:25px;

    margin-bottom:18px;

}


.cost-card h3{

    color:#081A38;

    font-size:17px;

    font-weight:800;

    margin-bottom:9px;

}


.cost-card p{

    color:#667085;

    font-size:11px;

    line-height:1.7;

    margin:0;

}


.cost-warning{

    display:flex;

    align-items:flex-start;

    gap:12px;

    max-width:900px;

    margin:40px auto 0;

    padding:17px 20px;

    background:#FFF8F0;

    border:1px solid #F8DFC4;

    border-radius:12px;

}


.cost-warning i{

    color:#F68B1F;

    margin-top:2px;

}


.cost-warning p{

    margin:0;

    color:#79562F;

    font-size:10px;

    line-height:1.6;

}


/* =========================================
   PROPIEDADES
========================================= */

.realestate-properties{

    padding:90px 0;

    background:#12385F;

}


.realestate-properties h2{

    color:#ffffff;

    font-size:38px;

    line-height:1.2;

    font-weight:800;

    margin:12px 0 15px;

}


.realestate-properties p{

    max-width:650px;

    color:#D7E2ED;

    font-size:14px;

    line-height:1.8;

    margin:0;

}


.realestate-properties
.realestate-section-label{

    color:#F68B1F;

}


/* =========================================
   CTA FINAL
========================================= */

.realestate-cta{

    padding:100px 20px;

    background:
        linear-gradient(
            135deg,
            #F68B1F 0%,
            #D96F0B 45%,
            #081A38 100%
        );

    text-align:center;

}


.realestate-cta h2{

    max-width:750px;

    margin:12px auto 15px;

    color:#ffffff;

    font-size:42px;

    line-height:1.15;

    font-weight:800;

}


.realestate-cta p{

    max-width:620px;

    margin:0 auto 30px;

    color:rgba(255,255,255,.9);

    font-size:14px;

    line-height:1.8;

}


.btn-realestate-dark{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    gap:9px;

    padding:14px 25px;

    background:#081A38;

    border:1px solid #081A38;

    border-radius:10px;

    color:white;

    text-decoration:none;

    font-size:12px;

    font-weight:700;

    transition:.2s;

}


.btn-realestate-dark:hover{

    background:#ffffff;

    border-color:#ffffff;

    color:#081A38;

    transform:translateY(-2px);

}


/* =========================================
   RESPONSIVE
========================================= */

@media(max-width:991px){

    .realestate-hero{

        min-height:auto;

        padding:140px 0 80px;

    }


    .realestate-hero h1{

        font-size:44px;

    }


    .simulator-result{

        min-height:500px;

    }

}


@media(max-width:767px){

    .realestate-hero{

        padding:125px 20px 70px;

    }


    .realestate-hero h1{

        font-size:34px;

    }


    .realestate-hero p{

        font-size:14px;

    }


    .realestate-hero-buttons{

        flex-direction:column;

        align-items:stretch;

    }


    .btn-realestate,
    .btn-realestate-outline{

        width:100%;

    }


    .realestate-intro,
    .realestate-simulator,
    .realestate-requirements,
    .realestate-documents,
    .realestate-costs{

        padding:70px 0;

    }


    .realestate-heading h2,
    .realestate-intro h2,
    .realestate-documents h2,
    .realestate-properties h2{

        font-size:30px;

    }


    .realestate-highlight{

        padding:30px;

    }


    .simulator-card,
    .simulator-result{

        padding:25px;

    }


    .simulator-card-header{

        align-items:flex-start;

    }


    .dividend{

        font-size:32px;

    }


    .realestate-properties{

        padding:70px 0;

    }


    .realestate-properties
    .text-lg-end{

        margin-top:30px;

        text-align:left !important;

    }


    .realestate-cta{

        padding:75px 20px;

    }


    .realestate-cta h2{

        font-size:32px;

    }

}