@font-face {
	font-family: 'Nunito-Bold';
	font-weight: normal;
	font-style: normal;
	src: url(/site/fonts/Nunito-Bold.woff) format('woff');
}

@font-face {
	font-family: 'Nunito-Regular';
	font-weight: normal;
	font-style: normal;
	src: url(/site/fonts/Nunito-Regular.woff) format('woff');
}

@font-face {
	font-family: 'Nunito-Light';
	font-weight: normal;
	font-style: normal;
	src: url(/site/fonts/Nunito-Light.woff) format('woff');
}

html, body{
	width: 100%;
	height: 100%;
	position: relative;
}

body{
	background-color: #fff;
	overflow-x:hidden;
	min-height: 100vh;
}

img{
	max-width: 100%;
}

.contentor_principal{
	min-height: Calc( 100vh - 257px );
}

.height-100{
	height: 100%;
}

.center_vertical{position:relative;top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%)}
.center_vertical img{
	max-width: 100%;
	max-height: 100%;
}


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

.row,
.form-group{
	margin: 0 !important;
	overflow: hidden;
}

.centralizar{
	float: none;
	display: inline-block;
}

/*COLORS---------*/
.white{
	color: #fff !important;
}

.grey{
	color: #707370 !important;
}

.blue_a a{
	color: #1b75bb !important;
}

.blue{
	color: #1b75bb !important;
}

.black{
	color: #000 !important;
}

a{
	color: #000;
}

a:hover{
	color: #000;
}
/*COLORS---------*/


/*TRANSFORM---------*/
.bold{
	font-weight: bold;
}

.caps{
	text-transform: uppercase;
}
/*TRANSFORM---------*/


/*TEXTOS---------*/


.txt_titulo_geral{
	font-size: 19px;
}

.txt_texto_geral{
	font-size: 14px;
}

.txt_titulo_geral_footer{
	font-size: 15px;
}

.txt_texto_geral_footer{
	font-size: 15px;
}

.txt_idioma{
	font-family: "Raleway-Medium";
	font-size: 18px;
	text-transform: uppercase;
}


/*TEXTOS---------*/


/*FONTS---------*/
.nunito-bold{font-family: "Nunito-Bold";}
.nunito-regular{font-family: "Nunito-Regular";}
.nunito-light{font-family: "Nunito-Light";}
/*FONTS---------*/

button,
input{
	outline: 0;
}
textarea { resize: vertical; }
input[type=file]{
	padding: 10px;
}

.relative{
	position: relative;
}

.absolute{
	position: absolute;
}

.disp_none{
	display: none;
}

.disp_block{
	display: block !important;
}

.disp_inline_flex{
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
}

#topcontrol{
	z-index: 99;
}

#googleMap{
	height: 575px;
}

.no_hover a:hover{
	text-decoration: none;
}

body::-webkit-scrollbar-track {
	-webkit-box-shadow: inset 0 0 6px rgba(85, 85, 85, .5);
	border-radius: 10px;
	background-color: transparent;
}

body::-webkit-scrollbar {
	width: 20px;
	background-color: transparent;
}

body::-webkit-scrollbar-thumb {
	border-radius: 30px;
	-webkit-box-shadow: inset 0 0 6px rgba(85, 85, 85, .5);
	background-color: #403e3e;
}


.change_page {
	position: fixed;
	width: 45px;
	height: 70px;
	text-align: center;
	color: white;
	top: calc(50% - 43px);
	z-index: 10;
}

.change_page img {
	max-width: 100%;
	width: 100%;
	cursor: pointer;
}

.change_page.right {
	right: 10px;
}

.change_page.left {
	left: 10px;
}


@media screen and (max-width: 992px){
	.mobile_disp_none{
		display: none;
	}

	.mobile_disp_block{
		display: block;
	}

	.fakebanner{
		display: none;
	}

	.mobile_margin_0{
		margin: 0 !important;
	}

	.mob_center{
		text-align: center !important;
	}

	.contentor_principal{
		min-height: unset;
	}


}

/*==================================================================================================*/
/*MENU*/
/*==================================================================================================*/


.menu_holder {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	/*background: rgba(0,0,0,0.0);*/
	/*background-image: linear-gradient(to bottom, #908f8f, rgba(255, 255, 255, 0));*/
	/*background-image: url('/site/imagens/degrade.png');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;*/
	background: transparent;
	padding: 20px 40px;
	width: 100%;
	z-index: 3;
}

.menu_holder .navbar-header {
	position: absolute;
	top: 20px;
	left: 40px;
	float: none;
}

.menu_holder .navbar-header img{
	width: 220px;
	margin-top: 40px;
}

.menu_holder .menu-toggler{
	position: absolute;
	background: transparent;
	border: 0;
	width: 35px;
	top: 43px;
	right: 2%;
	cursor: pointer;

	display: none;
}

.menu_holder .menu-toggler span {
	height: 3px;
	width: 100%;
	background-color: #e3861d;
	margin-top: 5px;
	display: block;
	border-radius: 2px;

	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
}

.menu_holder .menu-toggler:hover span {
	background-color: #808b92;
}

.menu_holder .menu{
	display: inline-block;
	margin: 10px 0 10px 50px;
	float: right;
	margin-top: 25px;
}

.menu_holder .menu-nav{
	list-style: none;
	margin: 0;
}

.menu_holder .menu-nav .dropdown{
	display: inline-block;
	margin: 0 3vw;
	cursor: pointer;
	color: #fff;
	font-size: 14px;
	vertical-align: middle;
	max-height: 61px;
}

.menu_holder .menu-nav .dropdown .menu_active{
	display: none;
}

.menu_holder .menu-nav li.active > a > img{
	display: none;
	cursor:pointer;
}

.menu_holder .menu-nav li.active > a > .menu_active{
	display: block;
}

.menu_holder .menu-nav .dropdown.linguas,
.menu_holder .menu-nav .dropdown.pesquisa{
	margin: 0 15px;
}

.menu_holder .menu-nav .dropdown a{
	text-transform: uppercase;
	color: #fff;
	font-size: 14px;
	font-family: "Nunito-Bold";

	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
}

.menu_holder .menu-nav .dropdown.language a{
	color: #298e2a;
}

.menu_holder .menu-nav .submenu.active a,
.menu_holder .menu-nav .dropdown a:hover,
.menu_holder .menu-nav .dropdown a:focus,
.menu_holder .menu-nav li:hover > a,
.menu_holder .menu-nav li:focus > a,
.menu_holder .menu-nav li.active > a,
.menu_holder .menu-nav li.active:hover > a {
	color: #1b75bb;
	text-decoration: none !important;
	background-color: transparent !important;
	-webkit-text-stroke: 0 #1b75bb !important;
	text-shadow: none;
	outline:none;
	border: 0;
}

.menu_holder .dropdown-menu {
	background-color: transparent;
	cursor: default;
	border: 0;
	box-shadow: none;
	/*left: Calc(50% - 350px - 20px );*/
	right: unset;
	padding-top: 15px;
	top: 50px;
	width: 700px;
}

.menu_holder .dropdown-menu.width_pt{
	left: Calc(50% - 350px - 20px );
}

.menu_holder .dropdown-menu.width_en{
	left: Calc(50% - 350px - 17px );
}

.menu_holder .dropdown-menu .submenu{
	vertical-align: middle;
	padding: 0 20px;
}

.open>.dropdown-menu {
	display: inline-flex;
}

.menu_holder .dropdown-menu.submenu_active {
	display: inline-flex;
}

.menu_holder .dropdown-menu hr{
	width: 80%;
	margin: 8px auto;
	border-top: 1px solid #ccc;
}

.menu_holder .menu-nav .dropdown-menu a {
	text-transform: uppercase;
	color: #fff;
	font-family: "Nunito-Bold";
	padding: 3px 3px;
    text-shadow: -1.5px 0 black, 0 1px black, 1.5px 0 black, 0 -1.5px black;

	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
}

.menu_holder .menu-nav .dropdown-menu a img{
	vertical-align: top;
	height: 27px;
}

.menu_holder .dropdown-menu a:hover{
	background-color: transparent;
}

.lang_separator {
	color: #fff;
	font-size: 20px;
	/*-webkit-text-stroke: 1px black;*/
    text-shadow: -1.5px 0 black, 0 1px black, 1.5px 0 black, 0 -1.5px black;
}

.lang_separator img{
	width: 18px;
	height: 25px !important;
	margin-right: -4px;
	margin-left: -4px;
}

#m1{
	display: none;
}

.box_idiomas a{
	/*border-right: 2px solid #fff;*/
	padding: 2px 5px;
	color: #fff;
}

.box_idiomas a:hover{
	color: #1b75bb;
	font-weight: bold;
}

.box_idiomas a:last-child{
	border-right: 0;
}

#pesq_img{
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;

	font-size: 20px;
}

#pesq_img:hover{
	transform: rotate(45deg) scale(1.7);
}

.text-stroke {
	/*-webkit-text-stroke: 1px black;*/
	/*text-shadow: -1.5px 0 black, 0 1px black, 1.5px 0 black, 0 -1.5px black;*/
	text-shadow: -1px 0 black, 0 1px black, 1.3px 0 black, 0 1px black;
}

.menu_holder .menu-nav .dropdown a.menu-big-text {
	font-size: 45px;
}

.menu_holder .menu-nav .dropdown a.menu-big-text img {
	vertical-align: top;
}

.menu_holder .menu-nav .dropdown.linguas a {
	font-size: 20px;
	/*-webkit-text-stroke: 1px black;*/
    text-shadow: -1.5px 0 black, 0 1px black, 1.5px 0 black, 0 -1.5px black;
}

.menu_holder .menu-nav .dropdown.linguas a.lingua_activa {
	color: #1b75bb;
	text-decoration: none !important;
	background-color: transparent !important;
	-webkit-text-stroke: 0 #1b75bb !important;
	text-shadow: none;
}

.menu_holder .menu-nav .dropdown.linguas a:hover {
	color: #1b75bb;
	text-decoration: none ;
	background-color: transparent ;
	text-shadow: none;
}

.menu_holder .menu-nav .dropdown.linguas a img{
	width: 20px;
	height: 20px;
}

.menu_holder .menu-nav .dropdown.linguas a{
	padding: 0;
}

@media screen and (min-width: 993px) {

	.menu_holder .menu {
		display: inline-block !important;
	}

}

@media screen and (max-width: 1500px) {

	.menu_holder .menu-nav .dropdown img{
		/*width: 230px;*/
		/*width: 75%;*/
		height: 50px;
	}

	.menu_holder .menu-nav .dropdown {
		max-height: 40px;
		margin: 0px 1vw;
		text-align: center;
	}

}

@media screen and (max-width: 1440px) {

	.menu_holder .menu-nav .dropdown a.menu-big-text {
		font-size: 33px;
	}
	
	.menu_holder .menu-nav .dropdown{
	    margin: 0px 30px;
	}

	.text-stroke {
		/*-webkit-text-stroke: 1px black;*/
		text-shadow: -1.5px 0 black, 0 1px black, 1.5px 0 black, 0 -1.5px black;
	}

	.menu_holder .navbar-header img {
		width: 160px;
		margin-top: 40px;
	}

}

@media screen and (max-width: 1350px) {

	.menu_holder .menu-nav .dropdown {
		margin: 0 30px;
	}

	.menu_holder .menu-nav .dropdown img {
		width: auto;
		max-height: 40px;
	}

}

@media screen and (max-width: 1280px) {

	.menu_holder .menu-nav .dropdown a.menu-big-text {
		font-size: 25px;
	}

	.menu_holder .navbar-header img {
		width: 160px;
		margin-top: 40px;
	}

	.menu_holder .dropdown-menu {
		right: unset;
		top: 20px;
		/*width: 650px;*/
		/*left: calc(50% - 325px);*/
	}

	.menu_holder .menu-nav .dropdown-menu a {
		font-size: 20px;
	}

}

@media screen and (max-width: 1200px) {

	.menu_holder .menu-nav .dropdown {
		margin: 0 20px;
	}

	.menu_holder .menu-nav .dropdown.linguas{
		margin: 0px;
	}

	.menu_holder .menu-nav .dropdown img {
		/*width: 190px;*/
	}

	.menu_holder .menu-nav .dropdown {
		/*max-width: 190px;*/
	}

}

@media screen and (max-width: 992px) {

    .menu_holder .dropdown .dropdown-menu.dropdown-menu-projs-cats {
		position: relative;
		top: unset;
		float: none;
		right: unset;
		left: unset;
	}

	.menu_holder .menu-nav .dropdown.linguas{
		margin: 10px 15px;
	}

	.menu_holder .container{
		padding: 0 20px;
		width: 90%;
	}

	.menu_holder .navbar-header {
		top: -15px;
	}

	.menu_holder .navbar-header img{
		width: 70px;
	}

	.menu_holder .menu-toggler{
		display:block;
	}

	.menu_holder .menu {
		margin: 54px 0 0;
		display: none;
		background-color: #000;
		border-radius: 25px;
		width: auto;
		border-bottom-left-radius: 0;
		border-top-right-radius: 0;
		text-align: center;
	}

	.menu_holder .menu-nav {
		padding: 0;
	}

	.menu_holder .menu-nav .dropdown {
		display: block;
		width: 100%;
		margin: 15px;
		position: relative;
		right: 15px;
	}

	.menu_holder .menu-nav .dropdown a{
		font-size: 14px;
	}

	.menu_holder.aberto{
		background-image: linear-gradient(to bottom, #cccccceb, #f9f9f9eb) !important;
	}

	.menu_holder .dropdown-menu {
		background-color: #000;
		border-radius: 25px;
		cursor: default;
		border-bottom-left-radius: 0;
		border-top-right-radius: 0;
		border: 0;
		box-shadow: unset;
		left: -235px;
		/*left: -118%;*/
		/*right: 88%;*/
		padding: 5px 0;
		top: 0;
		width: auto;
	}

	.open>.dropdown-menu {
		display: block;
	}

	.menu_holder .dropdown-menu.submenu_active {
		display: inherit;
	}

	.menu_holder .menu-nav .dropdown{
		text-align: left;
		padding-left: 20px;
	}

}

@media screen and (max-width: 768px) {
	.menu_holder .menu {
		margin: 0;
	}
}

@media screen and (max-width: 550px) {

	.menu_holder .dropdown-menu.submenu_active{
		position: relative;
		top: unset;
		float: none;
		right: unset;
		left: unset;
	}

	.menu_holder .menu-nav .dropdown {
		max-height: unset;
	}

}


/*==================================================================================================*/
/*BANNER*/
/*==================================================================================================*/



.banner{
	position: relative;
	width: 100%;
	height: 90vh;
	min-height: 650px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;

	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
}

.banner ul{
	width: 100%;
	padding: 0;
	margin: 0;
	list-style: none;
}

.banner ul img{
	width: 100%;
}

.banner ul li{
	width: 100%;
	height: 90vh;
	min-height: 650px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
.banner.internas li {
	height: 260px;
	background-position: top center;
}

.banner #slider_home .owl-controls {
	width: 100%;
	text-align: center;
	position: absolute;
	bottom: 0;
}

.banner #slider_home .owl-dots {
	position: absolute;
	bottom: 205px;
	text-align: right;
	margin: -25px auto 0;
	left: 60px;
	width: 29%;
	padding: 0 60px;
}

.banner #slider_home .owl-dots .owl-dot {
	width: 15px;
	height: 15px;
	display: inline-block;
	margin: 0 5px;
	border-radius: 100%;
	border: 2px solid #fff;
	background: transparent;
}

.banner #slider_home .owl-dots .owl-dot.active {
	background: #fff;
}

.banner #slider_home .owl-prev img,
.banner #slider_home .owl-next img {
	width: 32px !important;
}


.banner .conteudo{
	position: absolute;
	bottom: 170px;
	left: 59px;
	text-align: center;
	width: 29%;
	background-color: rgba(64, 64, 64, 0.7);
	margin: auto;
	padding: 35px 40px 60px;
	height: 175px;
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
}

.banner .conteudo .nome{
	color: #fff;
	font-size: 20px;
	margin-bottom: 25px;
	text-transform: uppercase;
	font-family: "Nunito-Regular";
	text-align: right;
	padding-right: 24px;
}

.banner .conteudo .descricao{
	color: #838383;
	font-size: 17px;
	margin-bottom: 50px;
}

.banner .conteudo button{
	color: #fff;
	font-size: 15px;
	background: #c18c58;
	border: 0;
	padding: 5px 45px;
	border-radius: 20px;
}

/*
.banner #slider_home .owl-dots {
	position: absolute;
	bottom: 185px;
	text-align: right;
	margin: -25px auto 0;
	left: 60px;
	width: 29%;
	padding: 0 60px;
}

.banner #slider_home .owl-dots .owl-dot {
	width: 15px;
	height: 15px;
	display: inline-block;
	margin: 0 5px;
	border-radius: 100%;
	border: 2px solid #fff;
	background: transparent;
}

.banner .conteudo{
	position: absolute;
	bottom: 156px;
	left: 59px;
	text-align: center;
	width: 29%;
	background-color: rgba(64, 64, 64, 0.7);
	margin: auto;
	padding: 30px 40px 50px;
	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
}
 */

@media screen and (max-width: 1200px) {

	.banner #slider_home .owl-dots {
		bottom: 165px;
	}

}

@media screen and (max-width: 992px) {

	.banner,
	.banner ul li {
		height: 400px;
		min-height: unset;
	}

	.banner.internas,
	.banner.internas li {
		height:200px;
	}

	.banner ul img{
		display: none;
	}
	.banner .conteudo .descricao {
		color: #333;
		font-size: 15px;
		margin-bottom: 20px;
	}

	.banner{
		background-color: #000000b0;
	}

	.banner .conteudo {
		bottom: 0;
		left: 0;
		width: 100%;
		height: 120px;
	}

	.banner #slider_home .owl-dots {
		/*text-align: center;*/
		width: 100%;
		left: unset;
		bottom: 10px;
		right: 20px;
	}

}

@media screen and (max-width: 470px) {

	.banner .conteudo{
		width: 100%;
		/*padding: 0 5%;*/
	}
	.banner .conteudo .nome {
		font-size: 18px;
	}
}


/*==================================================================================================*/
/*BLOCOS*/
/*==================================================================================================*/


.bloco{
	position: relative;
	width: 100%;
	padding: 85px 0;
	overflow: hidden;
}

.bloco.no-margin{
	padding: 0;
}

.bloco h2{
	font-size: 45px;
	color: #111;
	text-transform: uppercase;
	margin-bottom: 35px;
}

.bloco h3{
	font-size: 25px;
	color: #111;
	text-transform: uppercase;
	margin-bottom: 35px;
}

.bloco h4{
	font-size: 17px;
	color: #111;
}

.bloco p{
	font-size: 17px;
	color: #838383;
}

.bloco hr{
	border-top: 3px solid #dbdbdb;
	width: 400px;
}


@media screen and (max-width: 992px) {

	.bloco{
		padding: 40px 0;
	}

	.bloco hr{
		width: 100px;
	}

	.bloco h2{
		font-size: 25px;
	}

	.bloco p{
		font-size: 15px;
	}
}


/*==================================================================================================*/
/*MIDDER*/
/*==================================================================================================*/


.midder{
	width: 100%;
	height: 650px;
	position: relative;

	/*background-attachment: fixed;*/
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;

	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
}

.midder .conteudo {
	width: 30%;
	top: 20%;
	left: 0;
	text-align: left;
	position: absolute;
	padding: 0 2%;

	-webkit-transition: all .3s;
	-moz-transition: all .3s;
	transition: all .3s;
}

.midder .conteudo h2 {
	font-size: 48px;
	color: #111;
	text-transform: none;
}
.midder .conteudo p {
	font-size: 17px;
	color: #838383;
}


@media screen and (max-width: 992px) {

	.midder {
		height: 250px;
		background-attachment: initial;
	}
	.midder .conteudo h2 {
		font-size: 25px;
	}
}

/*@media screen and (max-width: 470px) {
	
	.midder {
		height: 250px;
	}
	.midder .conteudo h2 {
		font-size: 25px;
	}
}*/


/*==================================================================================================*/
/*HOMEPAGE*/
/*==================================================================================================*/



/*==================================================================================================*/
/*QUEM SOMOS*/
/*==================================================================================================*/

.banner_quem_somos{
	width: 100%;
	height: 50vh;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.txt_titulo_quem_somos{
	font-family: "Nunito-Bold";
	color: #000;
	font-size: 18px;
	text-align: right;
	text-transform: uppercase;
}

.txt_texto_quem_somos{
	font-family: "Nunito-Light";
	color: #000;
	font-size: 14px;
	text-align: justify;
}

.txt_texto_quem_somos a{
	font-family: "Nunito-Light";
	color: #1b75bb;
	font-size: 14px;
}






@media screen and (max-width: 992px){
	.txt_titulo_quem_somos{
		margin-bottom: 25px;
		text-align: left;
	}
}





/*==================================================================================================*/
/*PROJETOS*/
/*==================================================================================================*/

.proj_background{
	height: 300px;
	position: relative;
	background-size: cover;
	/*background-size: auto 100%;*/
	/*background-size: 100% auto;*/
	background-repeat: no-repeat;
	background-position: center center;
	cursor: pointer;
	/*border: 1px solid #cecece;*/

	-webkit-transition: all .4s;
	-moz-transition: all .4s;
	transition: all .4s;
}

.proj_background > img{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-height: 100%;
	max-width: 100%;
}

.proj_background .center_vertical{
	height: 100%;
	text-align: center;
}


.proj_background:nth-child(-n+3){
	border-top: 0;
}

.proj_background:hover .overlay_proj .txt_overlay_proj{
	display: block;
}

.proj_background:hover .overlay_proj{
	background-color: rgba(64, 64, 64, 0.7);
	transition-delay: .1s;
}

.overlay_proj{
	background-color: #29292900;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	padding: 20px;

	transition: 0s background-color;

	-webkit-transition: all .4s;
	-moz-transition: all .4s;
	transition: all .4s;
	z-index: 1;
}

.txt_overlay_proj{
	font-family: "Nunito-Bold";
	font-size: 14px;
	color: #fff;
	text-transform: uppercase;
	text-align: center;
	display: none;

	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

#imagem_principal{
	/*height: Calc( 100vh - 157px);*/
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: top center;
}

.box_detalhe{
	background-color: rgba(64, 64, 64, 0.7);
	width: 35%;
    padding: 55px;
	/*position: absolute;*/
	/*bottom: 40px;*/
	/*left: 40px;*/
	position: relative;
}

.box_detalhe.box_detalhe_desktop {
	margin-top: 260px;
	margin-left: 19px;
}

.txt_box_detalhe_titulo{
	font-family: "Nunito-Light";
	font-size: 16px;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 2px;
	margin-bottom: 5px;
}


.txt_box_detalhe_titulo.titulo_projecto{
	font-family: "Nunito-Regular";
	font-size: 19px;
}

.txt_box_detalhe_texto{
	font-family: "Nunito-Light";
	font-size: 13px;
	color: #fff;
	text-align: justify;
}

.btn_proj_voltar_atras{
	color: #fff;
	background-color: #1b75bb;
	position: absolute;
	right: 20px;
	top: 20px;
	width: 28px;
	text-align: center;
	font-size: 20px;
	cursor: pointer;

	-webkit-transition: all .4s;
	-moz-transition: all .4s;
	transition: all .4s;
}

.btn_proj_voltar_atras:hover{
	transform: scale(1.3);
	border-radius: 5px;
}

.btn_proj_voltar_atras a{
	color: #fff;
}

.rede_social{
	margin-right: 8px;
}

.rede_social a i{
    margin-right: 8px;
    width: 30px;
    height: 30px;
    text-align: center;
    padding: 5px 0px;
    font-size: 16px;
    border: 2px solid #fff;
    border-radius: 100%;
    color: #fff;
    
    -webkit-transition: all .4s;
    -moz-transition: all .4s;
    transition: all .4s;
}

.redes_sociais .texto_esquerdo{
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    font-family: "Nunito-Bold";
    display: inline-block;
    margin-right: 16px;
    vertical-align: middle;
}

.rede_social:hover a i{
	transform: rotate(45deg) scale(1.3);
	color: #1b75bb;
	border: 2px solid #1b75bb;
}

.box_detalhe.box_detalhe_mobile{
	display: none;
}

.block_project_images {
	position: relative;
	width: 100%;
	float: left;
    margin-top: 20px;
}

/*region Projects layout dimensions*/
.proj_background {
	float: left;
}

.proj_row {
	position: relative;
	float: left;
	width: 100%;
}

.proj_row_half {
	position: relative;
	float: left;
	width: calc(65% - 40px);
}

.proj_big {
	width: calc(65% - 40px);
}

.proj_small {
	width: 35%;
}

.proj_half_big {
	width: calc(65% - 40px);
}

.proj_half_small {
	width: 35%;
}

.proj_height_super_big {
	height: 970px;
}

.proj_height_big {
	height: 725px;
}

.proj_height_normal {
	height: 650px;
}

.proj_height_small {
	height: 465px;
}

.proj_margin_right {
	margin-right: 40px;
}

.proj_margin_left {
	margin-left: 40px;
}

.proj_margin_bottom {
	margin-bottom: 40px;
}

.proj_margin_top {
	margin-top: 40px;
}
/*endregion*/

.fancybox-close {
	top: 0;
	right: 0;
}


@media screen and (max-width: 1200px){
	.box_detalhe{
		width: 50%;
	}
}

#pagina_detalhe_projecto .imagem_aux_mobile{
    display: none;
}

@media screen and (max-width: 992px){
    
    #pagina_detalhe_projecto #imagem_principal{
        background-image: none !important;
        padding: 10px !important;
        height: auto;
    }
    
    #pagina_detalhe_projecto .imagem_aux_mobile{
        display: block;
    }
    
	.box_detalhe{
		width: 100%;
		padding: 40px;
		position: relative;
		bottom: unset;
		left: unset;
	}
	
	#pagina_detalhe_projecto .proj_background .overlay_proj {
        background-color: transparent;
	}

	.proj_background .overlay_proj{
		background-color: rgba(41, 41, 41, 0.2);
		transition-delay: .3s;
	}

	.proj_background .overlay_proj .txt_overlay_proj{
		display: block;
	}

	#imagem_principal{
		height: 415px;
	}

	.box_detalhe.box_detalhe_desktop{
		display: none;
	}

	.box_detalhe.box_detalhe_mobile{
		display: block;
	}

	/*region Projects layout dimensions*/
	
	
	.proj_row_half,
	.proj_big,
	.proj_small,
	.proj_half_big,
	.proj_half_small {
		width: 100%;
	    height: auto;
	}
	
	.proj_row_half,
	.proj_big,
	.proj_small,
	.proj_half_big{
		padding: 10px;
	}
	
	.proj_background > img{
	    position: relative;
	    top: unset;
        left: unset;
        transform: none;
        max-height: 100%;
        max-width: 100%;
        display: block;
        margin: 0 auto;
	}

	.proj_margin_top,
	.proj_margin_right,
	.proj_margin_bottom,
	.proj_margin_left {
		margin: 0;
	}

	.proj_height_big,
	.proj_height_normal,
	.proj_height_small {
		height: 300px;
	}
	/*endregion*/
}

@media screen and (max-width: 715px){}



/*==================================================================================================*/
/*PESQUISA*/
/*==================================================================================================*/

.input_pesq{
	width: 50%;
	margin: 10px -15px;
	height: 49px;
	padding: 6px 12px;
	font-size: 14px;
	line-height: 1.428571429;
	color: #555;
	vertical-align: middle;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 4px;
	-webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
	-webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
	transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}

#lista_resultados{
	font-size: 14px;
	font-family: 'Nunito-Bold';
	color: #1b75bb;
}

#lista_resultados .lista_resultados ul,
#lista_resultados .lista_resultados ul li{
	list-style: none;
}



@media screen and (max-width: 992px){
	.input_pesq{
		width: 100%;
	}
}




/*==================================================================================================*/
/*PRODUTOS*/
/*==================================================================================================*/


.produto .produto_imagem img{
	width: 100%;
}


/*==================================================================================================*/
/*CONTACTOS*/
/*==================================================================================================*/

.redes i{
	font-size: 20px;
	margin-right: 15px;
}

.bloco.page_contactos {
	padding-top: 150px;
}

.page_contactos .bloco_text_right {
	width: 100%;
	float: left;
	padding: 0 10px;
}

.page_contactos .txt_texto_geral {
	font-size: 16px;
    line-height: 26px;
}

#form_contactos {
	float: left;
	width: 100%;
	margin-top: 25px;
	max-width: 520px;
}

#form_contactos .form-control{
	margin: 10px 0;
	height: 55px;
	padding: 6px 25px;
	font-size: 14px;
	float: left;
	width: 100%;
	max-width: 516px;
}

#form_contactos .col-md-12 {
	float: left;
}

textarea.form-control {
	height: 123px !important;
}

#form_contactos button{
	padding: 10px 45px;
	font-family: "Nunito-Bold";
	color: #fff;
	background-color: #1b75bb;
	border: 0;
	border-radius: 4px;
	float: right;
	width: 160px;
	height: 50px;
}

#contactos_response {
	float: left;
	width: 100%;
	padding: 0 10px;
}

@media screen and (max-width: 992px){
	.redes i{
		font-size: 30px;
		margin-right: 15px;
	}

	#form_contactos .col-md-12 {
		width: 100%;
	}
}



/*==================================================================================================*/
/*CHECKOUT*/
/*==================================================================================================*/



/*==================================================================================================*/
/*FOOTER*/
/*==================================================================================================*/


.footer{
	position: relative;
	width: 100%;
	background: #403e3e;
	padding: 50px 0;
}

.footer h2{
	font-size: 25px;
	color: #fff;
	text-transform: uppercase;
	margin-bottom: 35px;
}

.footer h3{
	font-size: 19px;
	color: #fff;
	text-transform: uppercase;
	margin-bottom: 35px;
}

.footer p,
.footer label,
.footer a{
	font-size: 16px;
	color: #fff;
}

.footer #form_newsletter input {
	border: 1px solid #ccc;
}

.footer #form_newsletter button {
	background: #ccc;
	border: 1px solid #ccc;
	color: #fff;
}

.lower_footer {
	padding: 25px 0;
	background: #989898;
}

.lower_footer p,
.lower_footer a{
	font-size: 13px;
	color: #aaa;
}

.redes_footer{
	margin-right: 25px;
	font-size: 26px;
}

.redes_footer.no_margin {
	margin-right: 0;
}

.blocos_footer{
	float: left;
	padding: 0 30px;
}

.blocos_footer img{
	max-width: 209px !important;
}

.footer_margins{
	margin-left: 15px;
	margin-top: 10px;
}

.blocos_footer_redes_socias .holder_rede_social{
    display: inline-block;
    vertical-align: top;
}

@media screen and (max-width: 992px) {
	.blocos_footer {
		float: unset;
		width: 100% !important;
		margin: 45px 0;
		text-align: center;
	}

	.footer_margins{
		margin: 0;
		margin-top: 10px;
	}
}
