@media(max-width:1280px){
	.container{
		width: 100%;
		padding: 0 30px;
	}


	header, header.fixed{
		padding: 20px 0;
	}
	a.logo img{
		width: 150px; height: auto;
	}


	a.showmenu{
		display: block;
		position: fixed;
		width: 42px; height: 42px; line-break: 42px;
		color: #fff;
		font-size: 42px;
		top: 35px;
		right: 30px;
	}
	a.hidemenu{
		display: none;
		position: fixed;
		width: 42px; height: 42px; line-break: 42px;
		color: #fff;
		font-size: 42px;
		top: 10px;
		right: 10px;
		z-index: 10;
	}
	nav{
		display: none;
		position: fixed;
		left: 0; top: 0;
		background: #0346FA;
		width: 100%; 
		z-index: 9;
		overflow-y: auto;
		padding: 140px 0;
	}
	nav ul{
		display: table;
		width: 240px;
		margin: 0 auto 0 auto;
		float: none;
	}
	nav ul li{
		float: left;
		width: 100%;
		margin-right: 0;
		margin-bottom: 30px;
	}
	nav ul li:last-of-type{
		margin-bottom: 0;
	}
	nav ul li a{
		float: left;
		width: 100%;
		text-align: center;
	}


	.banner{
		padding: 130px 0 70px 0;
	}
	.banner .visual{
		float: none;
		display: table;
		width: 500px;
		max-width: 100%;
		margin: 0 auto 50px auto;
	}
	.banner .text{
		float: left;
		width: 100%;
	}
	.banner .text h1{
		font-size: 48px;
		margin-bottom: 30px;
	}
	.banner .text p{
		font-size: 15px;
		margin-bottom: 30px;
	}




	.about{
		padding: 60px 0;
	}

	.about .text h2{
		width: 100%;
		font-size: 48px;
		color: #000;
		margin-bottom: 30px;
	}
	.about .text .para{
		width: 100%;
	}
	.about .visual{
		margin-top: 30px;
	}




	.services{
		padding: 60px 0;
	}
	.services h2{
		font-size: 48px;
		margin-bottom: 30px;
	}
	.services-items .item{
		width: 48%;
		margin-bottom: 40px;
		padding: 30px;
	}
	.services-items .item i{
		width: 52px; height: 52px;
		font-size: 36px;
	}
	.services-items .item h3{
		font-size:21px;
		margin-bottom: 20px;
	}
	.services-items .item p{
		font-size: 15px;
	}


	.projects-grid {
		gap:20px;
	}

	.projects-grid .item.large{
		width: 100%;
  		flex-wrap: wrap;
  		justify-content: space-between;
	}

	.projects-grid .column-small{
		width: 100%;
  		justify-content: space-between;
	}

	.projects-grid .item.small{
		width: 100%;
	}

	.projects{
		padding: 60px 0;
	}
	.project-item{
		margin-bottom: 60px;
	}
	.project-item .text h3{
		font-size: 36px;
		margin-bottom: 30px;
	}



	.contact{
		padding: 60px 0;
	}
	.contact h2{
		font-size: 48px;
		margin-bottom: 30px;
	}

	.gallery-row {
	width: 100%;
}

.gallery-item {
	width: 100%;
}
}




@media(max-width:540px){

	.services-items .item{
		width: 100%;
	}
	.team-items .item{
		width: 100%;
	}
	.bannervideo{
		width: 100%;
	}
	.map{
		width: 100%;
	}


	.project-item .text, .project-item .visual{
		width: 100%;
	}
	.project-item .text{
		margin-bottom: 20px;
	}


	.formarea{
		float: left;
		width: 100%;
		margin-bottom: 60px;
	}
	form.contactform fieldset.half{
		width: 100%;
	}
	form.contactform fieldset{
		margin-bottom: 20px;
	}
	.contact-info{
		float: left;
		width: 100%;
	}

	footer .copyright{
		float: left;
		width: 100%;
		margin-bottom: 20px;
	}
	footer .social{
		float: left;
	}
	footer .social a{
		margin-left: 0; margin-right: 10px;
	}
	footer .social a:last-of-type{
		margin-right: 0;
	}


	.gallery-row{
		width: 100%;
	}
	
	.gallery-item {
		width: 100%;
	}
	
	.orcamento{
		padding: 20px;
		width: 100%;
		display: flex;
		justify-content: center;
		gap: 40px;
	}

/* Esconde ambos por padrão no mobile */
.menublock nav,
.menublock .social {
    display: none;
}

.gallery-item {
	width: 100%;
}

}