html,body{
    scroll-behavior: smooth;
}

.navbar-default .nav li a{
    font-family: Oswald;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 0.64px;
    color: #fff;
}
.navbar.navbar-default.navbar-fixed-top{
    background-color: transparent;
}
.navbar.navbar-default.navbar-fixed-top.navbar-shrink{
    background-color: #fff;
}
.navbar.navbar-default.navbar-fixed-top.navbar-shrink .logotipo .default-logo, .logotipo .scrolling-logo{
    display: none;
}
.navbar.navbar-default.navbar-fixed-top.navbar-shrink .logotipo .scrolling-logo{
    display: inline;
}
.navbar.navbar-default.navbar-fixed-top.navbar-shrink .nav li a{
    color: #000;
}
section.banner{
    padding-top: 0;
}
.banner .carousel {
    height: 100vh;
}
.banner .overlay{
    background: rgba(0, 0, 0, 0.3);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}
h2{
    font-family: Oswald;
    font-size: 55px;
    font-style: normal;
    font-weight: 300;
    line-height: 40px;
    letter-spacing: 2.2px;
    text-transform: uppercase;
}
h3{
    font-family: Oswald;
    font-size: 30px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    letter-spacing: 1.2px;
}
h4{
    font-family: Oswald;
    font-size: 25px;
    font-style: normal;
    font-weight: 300;
    line-height: 40px;
    letter-spacing: 1px;
}
p{
    font-family: Montserrat;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px;
    letter-spacing: normal;
}
a:hover{
    text-decoration: none;
}
a:hover, a:focus, a:active, a.active {
    color: unset;
    text-decoration: none;
}
.px-5{
    padding-left: 3rem;
    padding-right: 3rem;
}
footer{
    padding: 0;
}
.py-5{
    padding-top: 3rem;
    padding-bottom: 3rem;
}
.cta{
    color: #FFF;
    text-align: center;
    font-family: Oswald;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 0.64px;
    border: 2px solid #FFF;
    padding: .5rem 3.5rem;
}
.cta.cta-2{
    color: #BA7100;
    border-color: #BA7100;
}
.cta:hover{
    color: #fff;
    background-color: #BA7100;
}
section#localizacao{
    background-image: url('/themes/front/img/quinta_village.jpg');
    background-attachment: fixed;
    background-size: cover;
    padding: 6rem 0;
}
section#localizacao .section-heading{
    color: #BA7100;
}
section#localizacao .container{
    width: 100%;
    background: linear-gradient(0deg, rgba(207, 186, 155, 0.27) 0%, rgba(207, 186, 155, 0.27) 100%), #FFF;
    padding: 7rem 0 4rem;
}
section#contactos{
    background-color: #000;
}
section#contactos .section-heading{
    color: #fff;
    font-family: Oswald;
    font-size: 30px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 1.2px;
}
.carousel-indicators li{
    width: 40px;
    height: 2px;
    background-color: #fff;
    margin: 0 4px;
    border: none;
}
.carousel-indicators li.active{
    width: 40px;
    height: 2px;
    background-color: #BA7100;
    margin: 0 4px;
    border: none;
}
section h2.section-heading{
    text-align: center;
    font-family: Oswald;
    font-size: 40px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    letter-spacing: 1.6px;
}
section h2.section-heading.section-heading-portfolio{
    font-family: Oswald;
    font-size: 55px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;
    letter-spacing: 2.2px;
}
.main-color{
    color: #BA7100;
}
#projeto{
    background: rgba(207, 186, 155, 0.27);
}
section h3.section-subheading p{
    text-align: center;
}
.mt-4{
    margin-top: 1rem;
}
.bg-main{
    background-color: #CFBA9B;
}
section {
    padding-top: 20px;
}
.pt-5{
    padding-top: 3rem;
}
.galeriaalvenaria{
    background-color: #CFBA9B;
}
.galeriaalvenaria.revertida {
    border-top: 15px solid #CFBA9B;
}
.mt-6{
    margin-top: 6rem;
}
.text-white{
    color: #fff;
}
.portfolio-modal .modal-content{
    background-color: #CFBA9B;
}
.portfolio-item{
    margin-bottom: 4rem;
}
.portfolio-item:nth-child(odd) .portfolio-link, .portfolio-item:nth-child(odd) .portfolio-caption{
    margin-left: 0;
}
.portfolio-item:nth-child(even) .portfolio-link, .portfolio-item:nth-child(even) .portfolio-caption{
    margin-right: 0;
}
.portfolio-item .portfolio-caption{
    background-color: transparent;
}
.portfolio-item .portfolio-caption h4{
    color: #FFF;
    font-family: Oswald;
    font-size: 25px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px; /* 120% */
    letter-spacing: 1px;
}
.portfolio-item .portfolio-caption p{
    color: #FFF;
    font-family: Montserrat;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px;
}
.portfolio-item .portfolio-link .portfolio-hover{
    z-index: 9;
}
.portfolio-item .portfolio-link .portfolio-hover .cta, .portfolio-item .portfolio-link .portfolio-hover .cta:hover{
    background-color: transparent;
    text-transform: uppercase;
}
.portfolio-modal .modal-content h2{
    color: #FFF;
    font-family: Oswald;
    font-size: 30px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px; /* 100% */
    letter-spacing: 1.2px;
}
.portfolio-modal .modal-content p{
    color: #FFF;
    font-family: Montserrat;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px;
}
.portfolio-modal .close-modal .lr, .portfolio-modal .close-modal .lr .rl{
    background-color: #fff;
    height: 30px;
}
.justify-content-center{
    justify-content: center;
}
.carousel-control .icon-next:before, .carousel-control .icon-prev:before{
    font-size: 70px;
}
.banner .carousel .item{
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.carousel-caption{
    bottom: 50%;
    transform: translateY(50%);
}
section[id^="portfolio"]{
    background-color: #c8c3af;
}
.banner .carousel.visible-xs-block .item{
    background-size: contain;
}
.position-relative{
    position: relative;
}
.portfolio-modal .modal-content img{
    margin-bottom: 0;
}
.portfolio-modal .modal-content .gallery-item{
    margin-right: 1rem;
}
.portfolio-modal .modal-content .gallery-item .fancybox-effects-d{
    cursor: pointer;
}
.mb-6{
    margin-bottom: 6rem;
}
.slick-dots li button:before{
    content: unset;
}
.slick-dots li button{
    background-color: #fff;
    width: 40px;
    height: 2px;
    padding: 0;
}
.slick-dots li.slick-active button{
    background-color: #BA7100;
}
.slick-dots{
    bottom: -40px;
}
.slick-dots li{
    margin: 0 .7rem;
    width: 40px;
    height: 2px;
}
.bg-gradient{
    background: rgba(207, 186, 155, 0.27);
    padding: 2rem 0;
}
.copyright a{
    color: #000;
    font-weight: 700;
}
.d-flex{
    display: flex;
}
.navbar-toggle{
    border-radius: 0;
}
.contactodiv{
    color: #fff;
    border: 2px solid #FFF;
    padding: .55rem 3rem;
    margin: 0 1rem;
    min-width: 217px;
}
.contactodiv.active{
    border: 2px solid #BA7100;
    background: #CFBA9B;
}
.contactodiv:hover, .contactodiv:hover a, .contactodiv:hover button, .contactodiv.active:hover a, .contactodiv.active:hover button{
    background-color: #BA7100;
    color: #fff;
    border-color: #fff;
}
.contactodiv.active a, .contactodiv.active button{
    color: #BA7100;
    background-color: transparent;
}
.contactodiv button,.contactodiv a{
    color: #fff;
    background-color: transparent;
    border: none;
    font-family: Oswald;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 0.64px;
    padding: 0;
    display: block;
    text-transform: uppercase;
    text-align: center;
}
.container-backup{
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}
.map iframe{
    position: static;
    width: 100%;
    height: 100vh;
}
.tabela{
    display: table;
}
.linha{
    display: table-row;
}
.celula{
    display: table-cell;
}
.tabela h6{
    color: #BA7100;
    font-family: Oswald;
    font-size: 25px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px; /* 120% */
    letter-spacing: 1px;
}
.tabela .celula{
    padding: .25rem 1.5rem;
    min-width: 75px;
    max-width: 252px;
}
.tabela .count{
    color: #BA7100;
    font-family: Oswald;
    font-size: 25px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px; /* 120% */
    letter-spacing: 1px;
}
.tabela .line-item{
    color: #000;
    font-family: Montserrat;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px;
}
.back-to-top{
    position: fixed;
    bottom: 5%;
    right: 5%;
    border: 2px solid #BA7100;
    color: #BA7100;
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    font-size: 26px;
    cursor: pointer;
}
.back-to-top:hover{
    background-color: #BA7100;
    color: #fff;
}

@media (min-width: 576px){

    .d-sm-flex{
        display: flex;
    }

}

@media (min-width: 768px){

    .banner .carousel{
        height: 100vh;
    }
    .container-backup{
        width: 750px;
    }
    .navbar-default .navbar-nav>.active>a{
        border-radius: 0;
    }
    .d-md-flex{
        display: flex;
    }

}

@media (min-width: 992px){

    .d-lg-flex{
        display: flex;
    }
    .portfolio-item .portfolio-link{
        max-width: 100%;
        display: flex;
    }
    .portfolioflexrow .img-responsive{
        width: auto;
    }
    .align-items-lg-center{
        align-items: center;
    }
    .container-backup{
        width: 970px;
    }

}

@media (min-width: 1200px){

    .pl-xl-5{
        padding-left: 4rem;
    }

}

@media (min-width: 1500px) {
    .container, .container-backup {
        width: 85%;
    }
}

@media (max-width: 575px){

    .logotipo img{
        max-width: 300px;
    }
    .banner .carousel {
        height: auto;
    }
    h2{
        font-size: 42px;
    }
    h4{
        font-size: 23px;
    }
    .tabela h6, .tabela .count{
        font-size: 21px;
    }
    .tabela .line-item{
        font-size: 15px;
    }
    .mt-mb-6{
        margin-top: 6rem;
    }
    section h2.section-heading{
        font-size: 32px;
    }

}