body { background:#FFF; overflow-x:hidden; cursor: default; }
body, td { font-family:'Open Sans', sans-serif; font-size:20px; color:#231f20 }
.center { max-width:1360px; padding:0 40px; margin:auto }
.flex-center { display:flex; align-items:center }
.flex-justify { display:flex; justify-content:space-between }
.br6 { border-radius:6px }
.fab { font-style:normal }
.to-top, .to-whats { position:fixed; right:2%; bottom:2%; background:#04f0f0; border-radius:50%; width:48px; height:48px; color:#0587d1; text-align:center; margin:4px 4px 0 0; display:none }
.to-top .fa { font-size:40px; line-height:42px }
.to-whats { right:2%; display:block; background:#4dc247; transition:linear 0.3s }
.to-whats.m { right:5% }
.to-whats .fab { font-size:30px; line-height:48px; color:#FFF }
.swiper-container { padding-bottom:15px!important }
.swiper-wrapper { padding:10px 50px!important }
.swiper-wrapper .swiper-slide { cursor:grab }
.swiper-wrapper .swiper-slide:active { cursor:grabbing }
.swiper-slide img { box-shadow:0px 0px 6px 0px #CCC; border-radius:25px }
.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction { bottom:0px !important }
.fancybox-caption { text-align:center }
.fancybox-caption:after { border:none!important }
.upper { text-transform:uppercase }
.resp-container { position: relative; overflow: hidden; padding-top: 56.25%; width: 100%; }
.resp-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: 0; }

h1 { font-weight: 300; font-size: 1.8em }
h2 { font-weight: 300; font-size: 1.4em }
h3 { font-weight: 600; font-size: 1.2em }
hr { border:none; background:none; border-bottom:3px solid #d3d3d1; margin:20px 0 }

form button.aguarde { display:none; cursor:default; background:none; border:none }
form .retorno { background:#C7D5B9; color:#360; border:1px solid #390; padding:2%; width: 96%; text-align:center; margin:20px 0; border-radius:3px; }
form .retorno.erro { background:#F1C7B9; color:#C00; border-color:#C60 }
form .obrigatorio, form .obrigatorio label { color:#C30!important; transition:0.5s }
form .obrigatorio input, form .obrigatorio select, form .obrigatorio textarea { border-color:#C30!important }
form .campo_off { display: none }

input, select, textarea { border:1px solid #7c7c7c; padding:2%; width: 96%; background-color:#eeeeee; font-size:16px; font-family:'Open Sans', sans-serif; color:#313131 }
form .campo { margin:10px 0; display:flex; align-items:center }
form .campo .left, form .campo .right { display:inline-block; width:70%; float:none; vertical-align:top }
form .campo .left { width:20%; margin-right:1%; text-align:right }
form .obrigatorio .opcional { border-color:#999 }

form .campo.align-top { align-items:normal }
form .campo.align-top .left { padding-top:10px }

button.hamburger { display:none }
form button, .btn1, .btn2 { background:#3e3e3e; display:inline-block; color:#FFF!important; border:1px solid #2e2e2e; padding:5px 30px; font-weight:200; text-align:center; line-height:100%; transition:1s }
.btn2 { background:#231f20; color:#FFF!important; text-transform:none; font-size:0.8em; padding:8px 30px 8px 30px; border:1px solid #FFF; font-weight:600; font-style:normal }
.btn3, .filterable-nav a, .filter-buttons a { background:#FFF; color:#818181!important; font-weight:300; padding:7px 20px 8px; border:1px solid #818181; display:inline-block; font-size: 0.9em }
.btn4 { background:#ff0000; display:inline-block; color:#FFF!important; border:1px solid #ff0000; padding:10px 35px; font-weight:200; text-align:center; line-height:100%; transition:1s }
/*.btn4 { background:#fee100; border-color:#fee100; border-radius:15px; color:#0e0e10!important; font-style:normal; font-weight:800; text-transform:uppercase; font-size:1.5em; padding:16px 70px; box-shadow:3px 3px 10px 0px #666; display:inline-block }*/
.btn1:hover, .btn2:hover, .btn4:hover { zoom:108% }
.btn3:hover, .filterable-nav a.current, .filterable-nav a:hover, .filter-buttons a.current, .filter-buttons a:hover { background-color: #818181; color: #FFFFFF!important }


header { background:#303030; padding:15px 0; font-size:0.9em }
header .group { display: flex; align-items: center }
header nav { float: right }
header nav li, footer nav li { display:inline-block }
header nav li a, footer nav li a { color:#FFF; text-transform:uppercase; display:block; margin-left:40px; transition:color 0.5s; line-height:25px }
header nav li a:hover, footer nav li a:hover { color:#FF0000 }
.menu1009 a, .menu1010 a { display: inline-block; width: 32px; height: 32px; text-indent: -999em; background-repeat: no-repeat; position: relative; top: -4px }
.menu1009::before { content: ''; display: inline-block; width: 2px; height: 30px; background-color: #FFFFFF; margin:0 40px; position: relative; top:8px }
.menu1009 a { background-image: url("../img/ico-facebook.png"); margin-left: 0 }
.menu1010 a { background-image: url("../img/ico-instagram.png"); margin-left: 20px }

footer { background-color:#3e3e3e; padding:50px 0 0 0; color:#FFF; font-weight:200; font-size:0.9em }
footer h4 { text-transform: uppercase; font-size: 1.4em; padding-top: 8px }
footer h5 { text-transform: uppercase; font-size: 1.1em; font-weight: 300 }
footer img { vertical-align: middle; margin-left: 20px }
footer img.logo { margin: 0 20px 0 0 }
footer form { position: relative }
footer input { width: 75%; float: right; font-family: 'Open Sans', sans-serif; border:none; font-size: 1.1em; padding: 16px 130px 16px 30px; border-radius: 4px }
footer button { position: absolute; right: 12px; top: 10px; border-radius: 4px; padding: 0 }
footer button img { margin: 0 }
footer .ico-newsletter { background: url("../img/ico-newsletter.png") left center no-repeat; padding-left: 100px; min-height: 78px }
footer .info { border-top: 2px solid #333333; margin-top: 30px; padding-top: 10px }
footer .info a { color: #FFFFFF }
footer .info p { text-align: justify;}
footer .info p, footer .info ul { font-size:0.9em }
footer .info h4 { font-weight: 800; margin-bottom: 20px }
footer .info .fab { font-size:1.3em; position:relative; top:3px; margin-right:5px }
footer .copy { background:#303030; color:#818285; font-size:0.7em; text-align:center; margin-top:50px; padding: 15px 0 }
footer .copy a { color:#818285; transition:0.5s }
footer .copy a:hover { color:#FF0000 }

#head-banner { width: 100%; height: 400px; background-size: cover; background-position: center }

h1 { display: inline-block }
h1::after { content: ''; border-bottom: 1px solid #231f20; display: block; width: 82% }
#home .imoveis-list { text-align: center }
#home .imoveis-list .grid3 { display: inline-block; float: none; text-align: left }
#home .video { text-align: center; margin: 60px 0 100px 0 }
.historia { margin: 60px auto 100px }
.historia .group { display: flex; align-items: center; margin: 30px 0 }

#numeros { background: url("../img/bg-numeros.webp") center no-repeat; background-size: cover; height: 280px; color:#FFFFFF; text-align:center }
#numeros .group { display:flex; align-items:center; height:100% }
#numeros img { max-height:80px; width:auto; margin-right:15px; position:relative; top:8px }
#numeros big { font-weight:700; font-size:4em }
#numeros p { font-size:1.5em }

.avenda { margin-bottom:60px }
.preco { font-size:1.5em; font-weight:700; transition:0.3s }
.preco big { font-size:1.4em }
.preco small { font-size:0.6em }

.imoveis-list { margin-top:30px }
.imoveis-list a { color:#231f20 }
.imoveis-list .item { position: relative }
.imoveis-list .item .info { line-height:200%; font-size: 0.8em; padding:20px 0; position: absolute; left: 0; bottom: 0; background-color: rgba(50,50,50,0.75); color: #FFFFFF; width: 100%; text-align: center}
.imoveis-list .info h5 a { color: #FFFFFF; font-weight: 600; letter-spacing: 0.05em; font-size: 1.5em; line-height: 120% }
.imoveis-list .info h5 + div { margin: 8px 0 12px; font-size: 0.9em }
.imoveis-list .info .btn1 { background-color:#F00; border:none; padding:6px 20px 8px }
.imoveis-list a figure { position:relative }
.imoveis-list a figure img { transition:0.2s }
/*.imoveis-list a figure img + img { position:absolute; left:0; top:0 }
.imoveis-list a:hover .preco { color:#FF0000 }
.imoveis-list a:hover figure img + img { zoom:110%; max-width:106%; margin:-3% 0 0 -3%; box-shadow:3px 3px 10px 0px #666 }*/
.imoveis-list .group { margin-bottom:50px }

#obras h1 { margin-top: 50px }

#obra h1 { margin: 50px 0; font-size: 2.5em }
#obra h1 img { max-height: 400px }
#obra h1 img { max-width: 1200px }
#obra h2 { font-size: 1.5em; border-bottom: 1px solid #dbdbdb; margin-top: 80px }
#obra small { font-size: 0.7em; font-weight: 300 }
#obra .intro { margin-bottom: 20px; text-align:center }
#obra .caracteristicas a { color:#FF0000 }
#obra .caracteristicas a:hover { color:#CC0000 }
#obra .project-images { margin-top: 30px }
#obra .project-images .thumbs { text-align: center }
#obra .project-images .thumbs a { margin: 0.8% }
#obra .project-detail { margin-top: 30px }
#obra .project-tour h2 { margin-bottom: 30px }
#obra .separator { display: none }
#obra .video { margin-top: 20px }
#obra .filterable-nav, #obra .filter-buttons { text-align: left }
#obra .bgcinza1 { background-color: #4d4d4d; color: #FFFFFF; padding-top: 1px; margin-top: 80px }
#obra .bgcinza1 td { color: #FFFFFF }
#obra .status-obra { margin-top: 15px }
#obra .status-obra th { text-align: right; padding: 10px 0 }
#obra .status-bar { height: 18px; background-color: #FF0000; margin-left: 2% }
#obra .local { margin-bottom: 30px }
#obra #contato { margin: 0 }
#obra .info-box { margin-top: 30px }
.info-box { background:#3e3e3e; display:inline-block; float:right; text-align:center; padding:30px; position:relative; min-width:400px; color: #FFFFFF }
.info-box h3 { font-size: 1.5em; margin-bottom: 20px }
.info-box a { display:block; margin-bottom:15px; text-transform:uppercase; font-weight:700; font-size: 0.9em; color:#FFF; padding:10px 0 }
.info-box i { font-weight: normal; margin-right: 8px; font-size: 1.5em; position: relative; top: 4px; line-height: 12px }
.info-box .whats { background-color:#2d915f }
.info-box .email { background-color:#929292 }
.info-box .vendido { background-color:#FF0000; padding:10px 0; font-size:1.9em; line-height: 60px; }
.info-box .vendido i { background: url(../img/ico-vendido.png); width: 60px; height: 60px; display: inline-block; vertical-align: middle; top: 0; }
.info-box .venda { background-color:#929292; padding:20px 0; font-size:1.2em }

#quem-somos { text-align: center; padding-bottom: 50px }
#quem-somos p { text-align: justify; max-width: 800px; margin: auto }
#quem-somos div { margin: 50px 0 }
#quem-somos h1 { margin-top: 20px }

#contato { padding: 70px 0 80px; background-color: #e6e6e6 }
#contato h1 + p { margin: 40px 0 }
#contato form { margin-top:25px }
#contato .grid4 input { width:81.5% }
#contato .grid4 select { width:88.5% }
#contato .grid3 select { width:84% }
#contato textarea { height:150px }
#contato button { height:40px; margin-top:5px }
#contato .group .grid5 input { width:84.5% }
#contato a { color: #FF0000; font-weight: 700 }
#contato p { margin-top: 35px }
#contato .info-box { padding: 0; background: none; color: #231f20; float: none; margin-top: 35px }
#contato .info-box h2 { margin-bottom: 25px }
#contato .info-box a { color: #FFFFFF }


.hero-slider {
	margin-bottom: 50px;
  position: relative; }
  .hero-slider .slides {
	margin:0;
    list-style: none;
    zoom: 1; }
    .hero-slider .slides:after {
      content: " ";
      clear: both;
      display: block;
      overflow: hidden;
      height: 0; }
    .hero-slider .slides li {
      height: 680px;
      background-size: cover;
      background-position: center center; 
	  overflow: hidden; }
	  .hero-slider .slides li a {
	    display:block; 
		height:70vh; }
  .hero-slider .slide-title {
    font-size: 36px;
    font-size: 2.2em;
    margin: 4% 8% 0 0 ;
    letter-spacing: 1px;
	float: right;
	text-align: right }
	.hero-slider .slide-title small {
		font-size: 0.6em;
		text-transform: none;
	}
    .hero-slider .slide-title span {
      display: inline-block;
      padding: 10px 15px;
      text-transform: uppercase;
      background: #212121;
      color: white;
      margin-bottom: 10px; }
  .hero-slider .flex-direction-nav {
    position: absolute;
    bottom: 200px;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 99;
    height: 40px;
    list-style: none;
    padding: 0 15px; 
	width: auto;
    position: absolute;
    right: 8%;
    text-align: right;
    bottom: 5%;
}
    .hero-slider .flex-direction-nav li {
      display: inline-block;
      margin-right: 10px; }
      .hero-slider .flex-direction-nav li a {
        width: 32px;
        height: 32px;
        display: block;
        color: white;
        text-align: center;
        font-size: 32px;
		font-weight: normal }
        .hero-slider .flex-direction-nav li a.flex-prev, 
        .hero-slider .flex-direction-nav li a.flex-next {
          background: rgba(0,0,0,0.5) }


.filterable-nav, .filter-buttons {
  margin: 40px 0 60px; text-align: center}
  .filterable-nav .mobile-filter, .filter-buttons .mobile-filter {
    display: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 2px solid #818181;
    padding: 10px 20px;
    color: #818181;
    border-radius: 0;
    background: none;
    text-transform: uppercase;
    outline: none; 
    width: 100%;}
    @media screen and (max-width: 768px) {
      .filterable-nav .mobile-filter, .filter-buttons .mobile-filter {
        display: block; } }
  .filterable-nav a, .filter-buttons a {
    display: inline-block;
    padding: 10px 20px;
    margin-right: 10px;
    position: relative;
    text-transform: uppercase;
    -webkit-transition: .3s ease;
            transition: .3s ease; }
    @media screen and (max-width: 768px) {
      .filterable-nav a, .filter-buttons a {
        display: none; } }
    
    /*.filterable-nav a.current, .filterable-nav a:hover, .filter-buttons a.current, .filter-buttons a:hover {
      border-color: #999B37;
      color: #999B37; }*/

.filterable-items {
  *zoom: 1; }
  .filterable-items:after {
    content: " ";
    clear: both;
    display: block;
    overflow: hidden;
    height: 0; }
.filterable-item { display: inline-block; float: none; margin: 0 0.3% 50px; }