:root {
    --white: #FFF;
	--black: #000;
	--fontHighlight: "Fraunces", serif;
	--font: "Plus Jakarta Sans", sans-serif;
	--bgColor: #F1EBE3;
	--secondColor: #241E18;
	--secondColorBg: #7C7262;
}
  
html, body, div, span, applet, object, iframe,
p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend {
	margin: 0;
	padding: 0;
	border: none;
	outline: 0;
	font-weight: normal;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}
ol, ul {list-style: none;}
table {border-collapse: separate; border-spacing: 0;}
caption, th, td {text-align: left; font-weight: normal;}
blockquote:before, blockquote:after,
q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
img, picture, video, embed {max-width: 100%;}
*, *:before, *:after {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}

body {
	color: #1A1A1A;
	font-family: var(--font);
	background-color: var(--bgColor);
}

a {color: #1A1A1A; text-decoration: none;}
	
strong {font-weight: bold; font-family: var(--font-bold);}
em {font-style: italic;}
small {font-size: 0.7em;}
sub, sup {font-size: 75%; line-height: 0; position: relative; vertical-align: baseline;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}
img {max-width: 100%;}

.text-right {text-align: right;}

.img-button {cursor: pointer; background:none repeat scroll 0 0 transparent; border:medium none; padding:0; vertical-align:middle;}
.boxCenter {width: 96%; max-width: 1700px; margin: 0 auto; display: block; padding: 0;}

#header {
	width: 100%;
	position: relative;
	z-index: 9999;
	background-color: var(--black);
}
	#header.mainNav {height: 140px; background-color: var(--secondColorBg);}
#headerMain {
	padding: 1em 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
	.headerMain__slogan {
		width: calc(100% - 250px);
		color: var(--white);
		font-size: 0.9rem;
		text-align: center;
	}
	.headerMain__menu {
		width: 140px;
		cursor: pointer;
	}
		.headerMain__menu--action {
			color: var(--white);
			font-size: 0.9rem;
			cursor: pointer;
			display: flex;
			align-items: center;
			justify-content: space-between;
		}
			.headerMain__menu--action-item {
				max-width: 59px;
				display: flex;
				justify-content: center;
				flex-direction: column;
			}
				.headerMain__menu--action-item svg {margin: 0.1rem 0;}
				.mainNav .headerMain__menu--action-item svg {
					transform: rotate(20deg) translate(-8px, -2px);
				}
				.mainNav .headerMain__menu--action-item svg:first-child {
					transform: rotate(-20deg) translate(-5px, -1px);
				}
		.headerMain__menu--nav {
			display: none;
			width: 100%;
			height: calc(100vh - 140px);
			top: 140px;
			left: 0;
			position: absolute;
			background-color: var(--secondColorBg);
		}
			.mainNav .headerMain__menu--nav {display: block;}	
			.mainNav .headerMain__menu--nav .boxCenter {
				position: relative;
				display: flex;
				pad: 2rem 0;
				justify-content: space-between;
			}
			.headerMain__menu--navGallery {width: 40%;}
			.headerMain__menu__buttons {
				left: 25%;
				bottom: 8px;
				z-index: 9;
				position: absolute;
			}
				.headerMain__menu--navGallery .img img {max-height: calc(72vh);}
				.navGallery__item--info-acoes {
					font-size: 1.6rem;
					font-family: var(--fontHighlight);
					display: flex;
					align-items: center;
					padding-top: 1rem;
				}
					.navGallery__item--info-acoes .numbers {color: var(--white); width: 60px;}
					.navGallery__item--info-acoes .total {display: block;}
					.navGallery__item--info-acoes .barDetails {
						width: calc(80% - 250px);
						height: 2px;
						margin-left: 1rem;
						background-color: #F1EBE35E;
					}
						.navGallery__item--info-acoes .barDetails .percent {
							width: 25%;
							height: 2px;
							background-color: var(--white);
						}
			.headerMain__menu--navList {width: 59%;}
				.headerMain__menu--navList a {
					color: var(--white);
					font-size: 4rem;
					font-weight: 300;
					display: block;
					padding: 1rem 0;
					font-family: var(--fontHighlight);
				}
					.headerMain__menu--navList a:hover {color: var(--secondColor);}


@media screen and (max-width: 1300px) {
	.headerMain__menu--navGallery {width: 35%;}
}
@media screen and (max-width: 960px) {
	.headerMain__menu--nav {height: auto; min-height: 100vh; padding-bottom: 4rem;}
	.mainNav .headerMain__menu--nav .boxCenter {flex-direction: column;}
	.headerMain__menu--navGallery, .headerMain__menu--navList {width: 100%;}
	.headerMain__menu--navList {order: -1; margin-bottom: 2rem;}
		.headerMain__menu--navList a {font-size: 2rem; padding: 0.5rem 0;}
	.headerMain__menu__buttons {left: 80%;}
	.navGallery__item--info-acoes .barDetails {width: calc(90% - 250px);}
}
@media screen and (max-width: 700px) {
	.headerMain__slogan {display: none;}
}
@media screen and (max-width: 500px) {
	.headerMain__menu__buttons {left: 70%;}
}
@media screen and (max-width: 460px) {
	.headerMain__menu--navList a {font-size: 1.4rem;}
}
					
#banner {
	height: 80vh;
	padding-top: 1rem;
	background: var(--black);
	background: linear-gradient(180deg, var(--black) 0%, var(--black) 70%, var(--bgColor) 70%, var(--bgColor) 100%);
}
	#banner, #banner a {color: var(--white);}		
	#banner .boxCenter {
		height: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		background: url(../images/img-banner.png) no-repeat center transparent;
		background-size: cover;
	}
		#banner .boxCenter h1 {
			font-size: 2.5rem;
			font-weight: 300;
			text-align: center;
			letter-spacing: 3px;
		}
			#banner .boxCenter h1 span {
				font-size: 7rem;
				font-weight: 300;
				font-style: italic;
				display: block;
				letter-spacing: 0;
				font-family: var(--fontHighlight);
			}
				#banner .boxCenter h1 strong {font-weight: 400;}
		#banner .boxCenter a {
			width: 304px;
			height: 148px;
			display: block;
			text-align: center;
			padding-top: 1rem;
			letter-spacing: 2px;
			background: url(../images/bg-btn-banner.png) no-repeat center transparent;
		}
		
@media screen and (max-width: 991px) {
	#banner .boxCenter h1 {font-size: 1.8rem;}
		#banner .boxCenter h1 span {font-size: 5rem;}
}
@media screen and (max-width: 680px) {
	#banner {height: 60vh;}
		#banner .boxCenter h1 {font-size: 1.2rem;}
			#banner .boxCenter h1 span {font-size: 3rem;}
		#banner .boxCenter a {
			font-size: 0.8rem;
			width: 200px;
			padding-top: 2rem;
			background-size: contain;
		}
}

#about {
	display: flex;
	justify-content: space-between;
}
	.about__title {
		width: 50%;
		padding-top: 5rem;
	}
		.about__title h2 {
			font-size: 4rem;
			font-weight: 400;
			line-height: 1em;
			margin: 0;
			font-family: var(--fontHighlight);
		}
	.about__description {
		width: 50%;
		line-height: 1.6rem;
		padding: 5rem 4rem;
		border-left: solid 1px #D2C8BA;
		border-right: solid 1px #D2C8BA;
	}

@media screen and (max-width: 900px) {
	#about {text-align: center; flex-direction: column;}
		.about__title {width: 100%;}
			.about__title h2 {font-size: 4rem;}
		.about__description {
			width: 100%;
			padding: 1rem 2rem 5rem;
			border: none;
		}
}
@media screen and (max-width: 440px) {
	.about__title h2 {font-size: 3rem;}
}

#infoGDR{
	width: 100%;
	max-width: 2600px;
	margin: 0 auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	padding: 4rem 0;
	border-top: solid 1px #D2C8BA;
}
	.infoGDR__item {padding: 0 2rem;}
		.infoGDR__item h3 {
			font-size: 2.6rem;
			font-weight: 400;
			line-height: 1em;
			margin: 0 0 0.5rem;
			font-family: var(--fontHighlight);
		}

@media screen and (max-width: 1600px) {
	.infoGDR__item {padding: 0 1rem;}
	.infoGDR__item h3 {font-size: 2.1rem;}
}
@media screen and (max-width: 1180px) {
	#infoGDR{flex-wrap: wrap;}
	.infoGDR__item {width: 33%; padding: 1rem;}
}
@media screen and (max-width: 670px) {
	.infoGDR__item {width: 50%;}
}
@media screen and (max-width: 440px) {
	.infoGDR__item {width: 100%;}
}

#bannerExplore {
	color: var(--white);
	font-size: 2rem;
	font-weight: 300;
	text-align: center;
	font-family: var(--fontHighlight);
	width: 100%;
	height: 842px;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	overflow: hidden;
	background: url(../images/img-experiencia-global.jpg) no-repeat center transparent;
	background-size: cover;
}
	#bannerExplore h3 span {display: none;}
	#bannerExplore img {max-width: 90%;}
	.bannerExplore__action {
		top: -4rem;
		right: 2%;
		position: absolute;
	}

@media screen and (max-width: 840px) {
	#bannerExplore {height: 600px;}
	#bannerExplore .bannerExplore__action img {max-width: 200px;}
}
@media screen and (max-width: 500px) {
	#bannerExplore {height: 400px;}
	#bannerExplore h3 img {display: none;}
	#bannerExplore h3 span {display: block;}
}

#completedWorks {
	color: var(--white);
	width: 100%;
	padding: 4rem 0;
	background-color: var(--black);
}
#completedWorks__header {
	margin-bottom: 4rem;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
	#completedWorks__header h2 {
		width: 450px;
		font-size: 4rem;
		font-weight: 300;
		font-style: italic;
		padding: 0;
		margin: 0;
		font-family: var(--fontHighlight);
	}
    .completedWorks__header--div {
		width: calc(80% - 850px);
		height: 1px;
		background-color: #4E4E4E;
	}
	.completedWorks__header--desc {
		width: 400px;
		font-size: 0.8rem;
		line-height: 1.2rem;
		letter-spacing: 2px;
	}
	
@media screen and (max-width: 980px) {
	#completedWorks__header {flex-direction: column;}
	#completedWorks__header h2, 
	.completedWorks__header--desc {width: 100%; text-align: center;} 
	.completedWorks__header--div {width: 80%; margin: 1rem 0 1.6rem;}
}
@media screen and (max-width: 500px) {
	#completedWorks__header h2 {font-size: 3rem;}
}

#completedWorks__list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.completedWorks__list--item {
	width: 49%;
	padding: 10px;
	margin-bottom: 2rem;
	border: solid 1px #4E4E4E;
}
.itemWord {
	color: var(--white);
	width: 100%;
	height: 812px;
	padding: 2rem;
	display: flex;
	justify-content: space-between;
	flex-direction: column;
	position: relative;
	background: url(../images/img-terraza-softhouse.png) no-repeat;
	background-size: cover;
}
	.itemWord:hover::after {
		content: ' ';
		width: 100%;
		height: 100%;
		top: 1;
		left: 0;
		position: absolute;
		background: url(../images/img-ver-detalhes.png) no-repeat center transparent;
	}
.itemWord__tags span {
	font-size: 0.8rem;
	margin: 0 0.5rem 0.5rem 0;
	padding: 0.6rem 1rem;
	display: inline-block;
	border: solid 1px var(--white);
	border-radius: 250px;
}
.itemWord h3 {
	max-width: 500px;
	font-size: 3rem;
	font-weight: 400;
	margin: 0;
	font-family: var(--fontHighlight);
}

#completedWorks__more {
	color: var(--white);
	font-size: 0.8rem;
	text-align: center;
	margin-top: 4rem;
}
	#completedWorks__more a {color: var(--white);}
	#completedWorks__more span {
		width: 61px;
		height: 61px;
		line-height: 61px;
		display: block;
		margin: 0 auto 1rem;
		border: solid 1px #4E4E4E;
		border-radius: 300px;
	}

@media screen and (max-width: 991px) {
	.completedWorks__list--item {width: 100%;}
}
@media screen and (max-width: 500px) {
	.itemWord {height: 460px; padding: 1rem;}
	.itemWord h3 {font-size: 2rem;}
	#completedWorks__more {margin-top: 2rem;}
}

#retrofit {padding: 3rem 0;}

#retrofit__photo {
	margin-bottom: 2rem;
	position: relative;
}
	#retrofit__photo span {
		color: var(--white);
		font-size: 8rem;
		font-weight: 400;
		line-height: 1em;
		font-family: var(--fontHighlight);
		margin: 0;
		padding: 0;
		right: 20px;
		bottom: -14px;
		z-index: 9;
		position: absolute;
	}

#retrofit__description {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
	#retrofit__description h2, #retrofit__description p {width: 50%;}
	#retrofit__description h2 {
		font-size: 3rem;
		font-weight: 400;
		padding-right: 5rem;
		font-family: var(--fontHighlight);
	}
	#retrofit__description p {
		font-size: 1.1rem;
		line-height: 2rem;
	}

@media screen and (max-width: 1420px) {
	#retrofit__description h2 {font-size: 2.6rem;}
}
@media screen and (max-width: 991px) {
	#retrofit__photo span {display: none;}
	#retrofit__description {
		text-align: center;
		flex-direction: column;
	}
	#retrofit__description h2, #retrofit__description p {width: 100%;}
	#retrofit__description h2 {padding: 0 0 0.5rem;}
}

#news {
	width: 100%;
	padding: 4rem 0;
	background-color: var(--white);
}
	#news .boxCenter {position: relative;}

.newsGallery__buttons {
	left: calc(100% - 1000px);
	bottom: 8px;
	z-index: 9;
	position: absolute;
}

.newsGallery__item {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
	.newsGallery__item--info {
		width: calc(96% - 850px);
		display: flex;
		justify-content: space-between;
		flex-direction: column;
	}
		.newsGallery__item--info h3 {
			max-width: 450px;
			font-size: 4rem;
			font-weight: 400;
			line-height: 1.1em;
			margin-bottom: 2rem;
			font-family: var(--fontHighlight);
		}
		.newsGallery__item--info p {
			font-size: 1.2rem;
			line-height: 1.6em;
		}
		.newsGallery__item--info-acoes {
			font-size: 1.6rem;
			font-family: var(--fontHighlight);
			display: flex;
			align-items: center;
			padding-top: 1rem;
		}
			.newsGallery__item--info-acoes .numbers {width: 60px;}
			.newsGallery__item--info-acoes .total {display: block;}
			.newsGallery__item--info-acoes .barDetails {
				width: calc(100% - 250px);
				height: 2px;
				margin-left: 1rem;
				background-color: #F1EBE3;
			}
				.newsGallery__item--info-acoes .barDetails .percent {
					width: 25%;
					height: 2px;
					background-color: #1A1A1A;
				}
	.newsGallery__item--image {width: 844px;}
	
@media screen and (max-width: 1374px) {
	.newsGallery__item--info {width: 45%;}
	.newsGallery__item--image {width: 50%;}
	.newsGallery__buttons {
		left: 40%;
		bottom: 8px;
	}
	.newsGallery__item--info h3 {margin-top: 0;}
}
@media screen and (max-width: 991px) {
	.newsGallery__item {padding-bottom: 100px; flex-direction: column; position: relative;}
	.newsGallery__item--info, .newsGallery__item--image {width: 100%; text-align: center;}
	.newsGallery__item--info {padding-bottom: 2rem;}
	.newsGallery__item--image {min-height: 400px;}
	.newsGallery__item--info h3 {max-width: 100%;}
	.newsGallery__item--info-acoes {
		width: 100%;
		left: 0;
		bottom: 0;
		position: absolute;
	}
	.newsGallery__buttons {left: 85%;}
}
@media screen and (max-width: 620px) {
	.newsGallery__buttons {left: 80%;}
}
@media screen and (max-width: 500px) {
	.newsGallery__item--info h3 {font-size: 3rem;}
	.newsGallery__item--info-acoes .barDetails {display: none;}
	.newsGallery__buttons {left: 70%;}
}

#contact {
	width: 100%;
	padding: 4rem 0;
	position: relative;
	background: url(../images/img-contato.jpg) no-repeat right 0 var(--black);
	background-size: contain;
}

.contact__icon {
	top: 10%;
	right: 2%;
	z-index: 2;
	position: absolute;
}

#contact__form {
	color: #D2C8BA; 
	width: 40%;
	max-width: 556px;
}
	#contact__form h2 {
		font-size: 3rem;
		font-weight: 300;
		margin: 0 0 2rem;
		font-family: var(--fontHighlight);
	}
		#contact__form h2 strong {
			font-weight: 400;
			font-style: italic;
		}
	#contact__form p {
		line-height: 1.6rem;
		margin-bottom: 2rem;
	}
	#contact__form label.error {
		color: #d55d5d;
		font-size: 0.9rem;
		margin-bottom: 1rem;
		display: block;
		font-weight: bold;
	}
	#contact__form input {
		color: #D2C8BA; 
		width: 100%;
		font-size: 16px;
		font-weight: 500;
		font-family: var(--font);
		padding: 16px 20px;
		margin-bottom: 10px;
		background-color: var(--black);
		border: solid 1px var(--black);
		border-bottom: solid 1px #BFBFBF2B;
	}
	#contact__form button {
		font-size: 14px;
		font-weight: 700;
		text-align: center;
		margin-top: 20px;
		padding: 20px 50px;
		background-color: #F1EBE3;
	}
	
@media screen and (max-width: 1310px) {
	#contact__form {max-width: 400px;}
}
@media screen and (max-width: 1230px) {
	#contact {background-image: none;}
	.contact__icon {display: none;}
	#contact__form {width: 100%; max-width: 570px;}
}

.whereWeAre__description {
	width: 100%;
	text-align: center;
	padding: 4rem 0;
}
	.whereWeAre__description h2 {
		font-size: 4rem;
		font-weight: 400;
		margin: 0 0 1rem;
		font-family: var(--fontHighlight);
	}
	.whereWeAre__description p {
		width: 98%; 
		max-width: 800px; 
		line-height: 1.6rem;
		margin: 0 auto 2rem;
	}
	.whereWeAre__description a {
		color: var(--white);
		font-size: 0.9rem;
		letter-spacing: 1px;
		display: inline-block;
		padding: 1rem 2rem;
		background-color: #1A1A1A;
		border: solid 1px #1A1A1A;
	}

#whereWeAre iframe {width: 100%;}

@media screen and (max-width: 520px) {
	.whereWeAre__description h2 {font-size: 3rem;}
}

#footer {padding: 2rem 0;}
#footer .boxCenter {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

@media screen and (max-width: 991px) {
	#footer .boxCenter {line-height: 1.4em; flex-direction: column;}
	#footer svg {order: -1; margin: 1rem;}
}

#projectGallery {position: relative; margin-bottom: -20px;}
#projectGallery .projectGallery__info {
	width: 100%;
	left: 0;
	bottom: 0;
	z-index: 2;
	position: absolute;
}
#projectGallery .boxCenter {
	color: var(--white);
	justify-content: space-between;
	display: flex;
}
	.projectGallery__titulo {
		width: 40%;
		font-size: 5rem;
		font-weight: 400;
		line-height: 1.1em;
		max-width: 516px;
		font-family: var(--fontHighlight);
	}
	.projectGallery__item--info-acoes {
		width: 50%;
		font-size: 1.6rem;
		font-family: var(--fontHighlight);
		display: flex;
		align-items: center;
		padding-top: 1rem;
	}
		.projectGallery__item--info-acoes .numbers {width: 60px;}
		.projectGallery__item--info-acoes .total {display: block;}
		.projectGallery__item--info-acoes .barDetails {
			width: calc(100% - 250px);
			height: 2px;
			margin: 0 2rem 0 1rem;
			background-color: #F1EBE330;
		}
			.projectGallery__item--info-acoes .barDetails .percent {
				width: 25%;
				height: 2px;
				background-color: #FFF;
			}
			
@media screen and (max-width: 1200px) {
	.projectGallery__titulo {font-size: 4rem;}
}
@media screen and (max-width: 991px) {
	#projectGallery .projectGallery__info {bottom: 50px;}
	.projectGallery__titulo {display: none;}
	.projectGallery__item--info-acoes {width: 100%;}
}
@media screen and (max-width: 760px) {
	#projectGallery .projectGallery__info {bottom: 30px;}
}
@media screen and (max-width: 500px) {
	.projectGallery__item--info-acoes .numbers {font-size: 1rem;}
}

#project {
	width: 100%;
	padding: 4rem 0;
	background-color: var(--black);
}
	#project, #project a {color: var(--white);}
.project__title {
	font-size: 3rem;
	font-weight: 400;
	font-family: var(--fontHighlight);
}
.project__description {
	line-height: 2em;
	columns: 2;
	column-gap: 100px;
}

#projectPictures {
	width: 100%;
	text-align: center;
	padding-bottom: 4rem;
	background: #000;
	background: linear-gradient(180deg, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 1) 70%, rgba(241, 235, 227, 1) 70%, rgba(241, 235, 227, 1) 100%);
}
.projectPictures__gallery img {max-width: 95%;}

@media screen and (max-width: 991px) {
	.project__description {columns: 1;}
}

#projectDetails {padding-bottom: 4rem;}
	.projectDetails__title {
		font-size: 3rem;
		font-weight: 400;
		text-align: center;
		font-family: var(--fontHighlight);
	}
	#projectDetails .boxCenter {
		display: flex;
		flex-wrap: wrap;
	}
	.projectDetails {
		width: 32%;
		padding: 3rem;
		margin: 0 2% 1rem 0;
		border-radius: 24px;
		border: solid 1px #7C7262;
	}
		.projectDetails:nth-child(3n) {margin-right: 0;}
		.projectDetails h3 {
			font-size: 2rem;
			font-weight: 400;
			margin: 0 0 1.6rem;
			font-family: var(--fontHighlight);
		}
		.projectDetails p {line-height: 1.6em;} 
		
@media screen and (max-width: 991px) {
	.projectDetails {width: 48%;}
		.projectDetails:nth-child(3n) {margin-right: 2%;}
		.projectDetails:nth-child(2n) {margin-right: 0;}
}	
@media screen and (max-width: 640px) {
	.projectDetails {width: 100%;}
		.projectDetails, .projectDetails:nth-child(3n) {margin-right: 0;}
}

#projectVideo {
	width: 100%;
	padding-bottom: 7rem;
	background: #F1EBE3;
	background: linear-gradient(180deg, rgba(241, 235, 227, 1) 0%, rgba(241, 235, 227, 1) 15%, rgba(0, 0, 0, 1) 15%, rgba(0, 0, 0, 1) 100%);
}
	#projectVideo iframe {
		width: 100%;
		height: 700px;
		border-radius: 20px;
	}
	
@media screen and (max-width: 1230px) {
	#projectVideo {padding-bottom: 2rem;}
	#projectVideo iframe {height: 500px;}
}