:root{

--principal:#e95f2a;
--oscuro:#181818;
--gris:#777;
--claro:#f6f6f6;

}

*{

border-radius:0!important;

font-family:Montserrat;

}

section{

position:relative;

}

section::after{

content:"";

position:absolute;

left:50%;

bottom:0;

width:70px;

height:2px;

background:#e95f2a;

transform:translateX(-50%);

opacity:.15;

}

body{

overflow-x:hidden;

background:#fff;

}

a{

text-decoration:none;

}

header{

position:fixed;

left:0;

top:0;

width:100%;

z-index:999;

transition:.4s;

padding:0px 0;

}

header.scrolled{

background:#fff;

box-shadow:0 5px 30px rgba(0,0,0,.08);

padding:0px 0;

}

.logo img{

height:90px;

transition:.3s;

}

header.scrolled .logo img{

height:55px;

}

.navbar-nav{

gap:20px;

}

.navbar-nav a{

color:#fff;

font-size:12px;

font-weight:600;

letter-spacing:1px;

}

.dropdown-item {
    color: #000 !important;

}

.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {
    color: rgb(233 95 42);
}


header.scrolled .navbar-nav a{

color:#222;

}


.btn-whatsapp {
    border: 1px solid #fff;
    background: transparent;
    color: #fff;
    font-size: 12px;
    padding: 10px 15px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: .3s;
}

.scrolled .btn-whatsapp{
border: 1px solid var(--principal);
background:var(--principal);

color:#fff;
    font-size: 12px;
    padding: 10px 15px;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: .3s;

}

.btn-whatsapp:hover{
border: 1px solid #000;;
background:#000;

color:#fff;

}


.scrolled .instagram, .scrolled .facebook {
    color: #e95f2a!important;
}


.hero{

height:100vh;

position:relative;

/*overflow:hidden;*/

display:flex;

align-items:center;

}

.hero-video{

    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;

    /*animation:heroZoom 25s linear infinite alternate;*/

}

@keyframes heroZoom{

    from{

        transform:scale(1.05);

    }

    to{

        transform:scale(1.15);

    }

}
.overlay{

    position:absolute;
    inset:0;

background: linear-gradient(to bottom, rgba(0, 0, 0, 0.62) 0%, rgba(0, 0, 0, .0) 45%, rgb(0 0 0 / 0%) 100%);

    z-index:1;

}

.hero-content{

    position:relative;

    z-index:2;

    color:#fff;

}
.subtitulo{

color:var(--principal);

font-weight:600;

letter-spacing:5px;

}

.hero h1{

font-family:Playfair Display;

font-size:65px;

margin:25px 0;

}

.hero p{

font-size:20px;

margin-bottom:50px;

}

.search-box{

background:#fff;

padding:15px;

margin-top:20px;

}

.search-box select, .search-box input{

height:65px;

border:none;

padding-left:25px;

box-shadow:none;
    background: #f7f7f7;
}

.search-box button{

height:65px;

width:100%;

background:var(--principal);

border:none;

color:#fff;

font-weight:700;

letter-spacing:2px;

transition:.3s;

}

.search-box button:hover{

background:#111;

}
.map-card{
    position:sticky;
    top:120px;
    overflow:hidden;
    border-radius:24px;
    box-shadow:0 20px 60px rgba(0,0,0,.08);
}

#map{
    height:100vh;
    background:#e9ecef;
}





.featured{

padding:110px 0;

background:#f8f8f8;

}

.section-title{

text-align:center;

margin-bottom:70px;

}

.section-title span{

letter-spacing:4px;

font-weight:700;

color:#e95f2a;

}

.section-title h2{

font-family:Playfair Display;

font-size:52px;

margin:15px 0;

}

.section-title p{

color:#666;

font-size:18px;

}

.property-card{

background:#fff;

margin:15px 15px;

transition:.35s;

cursor:pointer;

}

.property-image{

height:250px;

overflow:hidden;

position:relative;

}

.property-image img{

width:100%;

height:100%;

object-fit:cover;

transition:.6s;

}

.property-card:hover img{

transform:scale(1.08);

}

.badge{

position:absolute;

top:25px;

left:25px;

background:#e95f2a;

padding:12px 18px;

color:#fff;

font-size:13px;

letter-spacing:2px;

text-transform:uppercase;

}

.property-body{

padding:35px;
    min-height: 325px;
}

.property-body small{

color:#999;

letter-spacing:2px;

}

.property-body h3{

margin:18px 0;

font-size:21px;

font-family:Playfair Display;

}

.icons{

display:flex;

gap:25px;

margin:25px 0;

color:#666;

}

.bottom{

display:flex;

justify-content:space-between;

align-items:center;

padding-top:25px;

border-top:1px solid #eee;

}

.bottom strong{

font-size:24px;

color:#e95f2a;

}

.bottom a{

font-weight:600;

color:#111;

}

.property-card:hover{

box-shadow:0 25px 50px rgba(0,0,0,.12);

transform:translateY(-8px);

}


.numbers{

position:relative;

padding:140px 0;

background:url("../img/nosotros.png") center center;

background-size:cover;

background-attachment:fixed;

}

.numbers .overlay{

position:absolute;

inset:0;

background:rgba(0,0,0,.70);

}

.numbers .container{

position:relative;

z-index:5;

}

.counter-item{

text-align:center;

color:#fff;

border-right:1px solid rgba(255,255,255,.15);

}

.counter-item:last-child{

border:none;

}

.counter-item h2{

font-size:82px;

font-weight:700;

color:#e95f2a;

margin-bottom:12px;

}

.counter-item span{

font-size:16px;

letter-spacing:2px;

text-transform:uppercase;

color:#ddd;

}

@media(max-width:991px){

.counter-item{

margin-bottom:45px;

border:none;

}

.counter-item h2{

font-size:56px;

}

}

.projects{

    padding:120px 0;
    background:#f7f7f7;

}

.project-card{

    position:relative;
    height:560px;
    overflow:hidden;
    margin:0 0px;
    cursor:pointer;

}

.project-card img{

    width:100%;
    height:100%;
    object-fit:cover;

    transition:.7s;

}

.project-card:hover img{

    transform:scale(1.08);

}

.project-overlay{

    position:absolute;
    left:0;
    right:0;
    bottom:0;

    padding:35px;

    background:linear-gradient(to top,
        rgba(0,0,0,.88),
        rgba(0,0,0,.55),
        transparent);

    color:#fff;

}

.status{

    display:inline-block;

    padding:8px 16px;

    margin-bottom:18px;

    font-size:12px;

    font-weight:600;

    letter-spacing:2px;

    text-transform:uppercase;

}

.status.obra{

    background:#e95f2a;

}

.status.entrega{

    background:#1f8f5f;

}

.status.vendido{

    background:#444;

}

.project-overlay h3{

    font-family:Playfair Display;

    font-size:32px;

    margin-bottom:8px;

}

.project-overlay small{

    font-size:15px;

    letter-spacing:2px;

    opacity:.9;

}

.btn-principal{

display:inline-block;

background:#e95f2a;

padding:18px 30px;

color:#fff;

font-weight:600;

letter-spacing:2px;

transition:.3s;
border: none;

}

.btn-principal:hover{

background:#111;

color:#fff;

}


.about{

padding:130px 0;

background:#fff;

}

.about-image{

position:relative;

overflow:hidden;

}

.about-image img{

width:100%;

height:850px;

object-fit:cover;

transition:.7s;

}

.about-image:hover img{

transform:scale(1.05);

}

.experience-box{

position:absolute;

bottom:40px;

left:40px;

background:#e95f2a;

color:#fff;

padding:35px;

width:210px;

text-align:center;

}

.experience-box strong{

display:block;

font-size:70px;

line-height:1;

}

.experience-box span{

display:block;

margin-top:10px;

font-size:14px;

text-transform:uppercase;

letter-spacing:2px;

}

.about-content{

padding-left:70px;

}

.section-mini{

letter-spacing:4px;

font-weight:700;

color:#e95f2a;

}

.about-content h2{

font-family:Playfair Display;

font-size:42px;

margin:25px 0;

line-height:1.2;

}

.about-content p{

font-size:18px;

line-height:2;

color:#666;

margin-bottom:35px;

}

.about-content blockquote{

border-left:5px solid #e95f2a;

padding-left:30px;

font-size:24px;

font-family:Playfair Display;

font-style:italic;

margin-bottom:40px;

color:#222;

}

@media(max-width:991px){

.about-content{

padding:50px 0 0;

}

.about-image img{

height:450px;

}

}


.contact{

padding:120px 0;

background:#f8f8f8;

}

.contact-form{

padding:60px;

background:#fff;

height:100%;

}

.contact-form input,
.contact-form select,
.contact-form textarea{

width:100%;

border:1px solid #ddd;

padding:18px;

outline:none;

transition:.3s;

}

.contact-form input:focus,
.contact-form textarea:focus{

border-color:#e95f2a;

}

.contact-info{

height:100%;

background:#181818;

color:#fff;

display:flex;

flex-direction:column;

}

.contact-info iframe{

height:320px;

width:100%;

border:0;

}

.info-box{

padding:45px;

flex:1;

}

.info-box h4{

font-family:Playfair Display;

font-size:34px;

margin-bottom:25px;

}

.info-box p{

line-height:2;

color:#ccc;

}

.info-box ul{

padding:0;

margin-top:30px;

list-style:none;

}

.info-box li{

margin-bottom:20px;

display:flex;

align-items:center;

gap:15px;

}

.info-box i{

color:#e95f2a;

font-size:20px;

}


footer{

background:#111;

color:#ddd;

padding:0px 0 0px;

}

.footer-logo {
    height: auto;
    width: 80%;
    margin-bottom: 30px;
}
footer h5{

color:#fff;

margin-bottom:25px;

font-family:Playfair Display;

font-size:26px;

}

footer ul{

padding:0;

list-style:none;

}

footer li{

margin-bottom:18px;

display:flex;

gap:15px;

align-items:flex-start;

}

footer i{

color:#e95f2a;

margin-top:4px;

}
.instagram, .facebook {
    display: inline-flex;
    align-items: center;
    gap: 15px;
    color: #fff;
    font-size: 28px;
    margin-top: 0px;
    padding-right: 8px;
    transition: .3s;
}

.instagram:hover, .facebook:hover {

color:#e95f2a;

}

footer hr{

border-color:#333;

margin:60px 0 30px;

}

.copy{

background:#e95f2a ;
text-align:center;

font-size:14px;

color:#fff;

}



/* ======================================================
PAGE HEADER
====================================================== */

.page-header{

    position:relative;
    height:420px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:url("../img/nosotros-2.jpg") center center;
    background-size:cover;

    color:#fff;

}

.page-header .overlay{

    position:absolute;
    inset:0;

    background:rgba(0,0,0,.55);

}

.page-header .container{

    position:relative;
    z-index:2;

}

.page-header .subtitle{

    display:block;

    color:#e95f2a;

    font-size:14px;

    font-weight:700;

    letter-spacing:5px;

    margin-bottom:20px;

}

.page-header h1{

    font-family:"Playfair Display",serif;

    font-size:70px;

    font-weight:700;

    margin-bottom:15px;

}

.page-header p{

    font-size:20px;

    opacity:.9;

}



/* ======================================================
LAYOUT
====================================================== */

.properties-page{

    background:#f7f7f7;

    padding:90px 0;

}

.properties-page .container-fluid{

    max-width:1650px;

}



/* ======================================================
SIDEBAR
====================================================== */

.property-sidebar{

    background:#fff;

    border:none;

    padding:45px;

    position:sticky;
    top:120px;

    box-shadow:0 15px 60px rgba(0,0,0,.05);

}

.property-sidebar h4{

    font-family:"Playfair Display",serif;
    font-size:34px;
    font-weight:700;

    margin-bottom:40px;

    position:relative;

}

.property-sidebar h4::after{

    content:"";

    width:45px;
    height:3px;

    background:#e95f2a;

    display:block;

    margin-top:18px;

}

.property-sidebar label{

    font-size:11px;

    text-transform:uppercase;

    letter-spacing:3px;

    color:#999;

    margin-bottom:10px;

    font-weight:700;

}





/* ======================================================
PRECIO
====================================================== */

#sliderPrecio{

    margin:25px 10px 15px;

}



/* ======================================================
INPUTS
====================================================== */

.property-sidebar input{

    height:50px;

    border-radius:0;

    border:1px solid #ddd;

    box-shadow:none;

}

.property-sidebar input:focus{

    border-color:#e95f2a;

    box-shadow:none;

}



/* ======================================================
BOTONES
====================================================== */

.property-sidebar .btn-primary{

    height:55px;

    border:none;

    background:#e95f2a;

    font-weight:600;

    letter-spacing:2px;

    text-transform:uppercase;

}

.property-sidebar .btn-primary:hover{

    background:#222;

}

.property-sidebar .btn-light{

    height:55px;

    border:1px solid #ddd;

    background:#fff;

    text-transform:uppercase;

    letter-spacing:2px;

}

.property-sidebar .btn-light:hover{

    background:#f5f5f5;

}



/* ======================================================
RESULTS BAR
====================================================== */

.results-bar{

    display:flex;

    justify-content:space-between;

    align-items:center;

    background:#fff;

    border:1px solid #ececec;

    padding:25px 30px;

    margin-bottom:35px;

}

.results-left h5{

    margin:0;

    font-size:18px;

    font-weight:400;

}

.results-left strong{

    color:#e95f2a;

 

    font-weight:700;

}

.results-right{

    width:260px;

}

.results-right .form-select{

    height:52px;

    border-radius:0;

    box-shadow:none;

    border:1px solid #ddd;

}

.results-right .form-select:focus{

    border-color:#e95f2a;

    box-shadow:none;

}



.active>.page-link, .page-link.active {
    z-index: 3;
    color: var(--bs-pagination-active-color);
    background-color: #e95f2a;
    border-color: #e95f2a;
}

.page-link {

    color: #8b8b8b;}

@media(max-width:1600px){
.logo img {
    height: 65px;
}

.navbar-nav a {
    letter-spacing: normal;
}

.navbar-expand-lg .navbar-nav .nav-link {
        padding-right: 0;
        padding-left: 0;
    }

.navbar-nav a {
    font-size: 11px;}

.cont-div-hero{
    max-width: 100%;
}

}

@media(max-width:991px){


header {
    position: relative;
}

header.scrolled {
    position: fixed;
}
.hero-video {

    height: 40%;}

.logo img {
    height: 65px;
    transition: .3s;
}


.hero{

padding:0;

}

.cont-div-hero{
    margin-top:18vh;
}


.hero h1{

font-size:46px;

}

.search-box .row>*{

margin-bottom:0px;

}

.btn-whatsapp{

margin-top:20px;

justify-content:center;

}

.navbar{

background:#000;

padding:15px;

}

.navbar-toggler i{
    color: #fff!important;
}
.navbar-nav a{

color:#fff!important;

}

.slick-prev, .slick-next {
    display: none!important;
}

.property-card {
    margin: 15px 5px;}

    .page-header h1 {
    font-size: 47px;}


    .btn-whatsapp {
    border: 1px solid #e95f2a;
    background: #e95f2a;

}

.instagram, .facebook {

    color: #e95f2a;
    font-size: 50px;
    margin-top: 20px;

}

.about {
    padding: 0px 0;
}
.overlay {

    background: transparent;
  
}

.contact-form
 {
    padding: 20px;}

}

