 @media (max-width: 1199px){
	.container, .container_ft{
		width: 100%;
		padding-right: 15px;
		padding-left: 0px;
		margin-left: 0px;
		margin-right: 0px;
	}

}


 @media (max-width: 1100px) {

	.col-md-12, .col-sm-6{
		padding-left: 0px;
		padding-right: 0px;
	}

	.content_banner h2{
		padding: 0px 50px;
		font-size: 24px;
	}
	.menu_dim li{
		padding:20px 30px;
	}
	.cont_txt h1{
		margin-top:5px;
		margin-bottom: 25px;
		font-size: 52px;
	}

	.cont_txt{
		padding:50px 60px;
	}

	.txt_box{
		padding:50px 70px;
		max-width: 800px;
		right: 0px;
		line-height: 30px;
	}
	.cont_2{
		padding-top: 16px;
		margin-top:-60px;
		padding-left: 20px;
		padding-right: 10px;
	}
	.cont_2 h2{
		line-height: 32px;
	    margin-bottom: 50px;
	    font-size:24px;
    }

    .serv_img h1{
    	padding:0px 40px;
    	font-size: 28px;
    }

    .contactos .ct_social span::before{
    	left:140px;
    }

    .logo_dim{
    	padding-left: 25px;
    }

    .servicos .cont_txt{
    	padding: 50px 170px 50px 60px;
    }

    .serv_cont_baixo{
	    padding: 30px 70px 30px;
	    width: 500px;
	    margin-top: 80px;
    }

    .container_ft{
    	padding-left: 55px;
    	padding-right: 55px;
    }

    .content_banner h2::before{
		height: 6px;
		width: 110px;
	}

	.content_banner h2::after{
		height: 1px;
		width: 110px;
		top:22px;
	}

	.cont_2 h2::before{
		width: 110px;
		height: 6px;
	}

	.cont_2 h2::after{
		width: 110px;
		height: 1px;
		top:22px;
	}

	.cont_txt h1::before{
		height: 6px;
		top:-10px;
		width: 110px;
	}

	.serv_cont_baixo h3::before{
		height: 6px;
		width: 110px;
	}

	.cont_2 .sub_tit{
		font-size: 14px;
	}

	.contactos{
		padding:65px 0px 50px 0px;
	}

	.servicos{
		padding-bottom: 52px;
	}

	.s2{
		margin-top: 150px;
	}

	.menu_dim{
		float: right;
	}

	.sobre_nos .cont_txt span{
		line-height: 30px;
	}

	.cont_txt h3{
		line-height: 30px;
	}

	.cont_txt{
		padding: 70px 60px 50px 60px;
	}

 }




 @media (max-width: 768px) {
	.col-md-12, .col-sm-6{
		padding-left: 0px;
		padding-right: 0px;
	}
	
	.menu_dim{
		padding-right: 10px;
	}

	.container, .container_ft{
		width: 753px;
		padding-right: 0px;
		padding-left: 0px;
		margin-left: 0px;
		margin-right: 0px;
	}

	.container_ft{
		padding-left: 25px;
		padding-right: 25px;
	}
	
	.logo_dim{
		padding-left:30px;
	}

	.menu_dim li{
		padding:20px 20px;
	}

	.content_banner h2{
		padding:0 15px;
		font-size: 24px;
	}
	.content_banner h2::before{
		height: 6px;
		width: 110px;
	}

	.content_banner h2::after{
		height: 1px;
		width: 110px;
	}
	
	.cont_txt{
		padding:20px 50px 10px 50px;
	}

    .servicos .cont_txt{
    	padding: 30px 40px 50px 40px;
    }

	.img_qd{
		float:left;
	}

	.txt_box{
		position: relative;
		padding: 50px 50px;
		float:left;
		right: 0px;
		line-height: 30px;
	}

	.cont_txt h1{
		margin-top:45px;
		font-size:30px;
		margin-bottom: 15px;
	}

	.cont_txt h1::before{
		height: 6px;
		top:-10px;
		width: 110px;
	}


	.sobre_nos .cont_txt span{
		line-height: 26px;
	}

	.cont_2{
		padding-top: 65px;
		padding-left: 20px;
		padding-right: 20px;
		margin-top: 0px;
	}

	.cont_2 h2{
		font-size: 22px;
		line-height: 32px;
		margin-top: 0px;
	}

	.cont_2 h2::before{
		width: 110px;
		height: 6px;
	}

	.cont_2 h2::after{
		width: 110px;
		height: 1px;

	}
	.servicos{
		margin-top: 0px;
		padding-top: 20px;
		padding-bottom: 0px; 
	}

	.cont_txt h3{
		line-height: 30px;
	}


	.s2{
		margin-top: 0px;
	}

	.row_moinho{
		margin-top:0px;
	}

	.img_esq{
		margin-top: 0px;
	}

	.serv_cont_baixo{
		width: 100%;
		position: relative;
		margin-top: 0px;
	}

	.last_col{
		margin-top:-783px;
	}
	.s7{
		margin-top: 0px;
	}

	.servicos .cont_txt{
		margin-bottom: 0px;
	}

	.serv_img h1{
		padding:0px 50px;
	}

	.contactos .ct_social span::before{
		left:88px;
	}

	.contactos{
		margin-top: 0px;
		padding:65px 0px 50px 0px;
	}

	.s6 h1{
		height: 60%;
    	transform: translateY(-100%);
	}

	.sobre_nos .cont_txt span {
	    line-height: 24px;
	}
 }

 @media (max-width: 480px) {

 	.logo_dim{
 		padding-left: 24px;
 	}

	.logo_dim img{
		width: 150px;
	}
	.header{
		height: 100px;
		padding:22px 0px;
	}
	.banner_dim{
		padding-top:100px;
	}
	.ban-padd{
		padding-top:256px;
	}

	.ban-padd .content_banner h2{
		top:65%;
	}

	.container, .container_ft{
		width: 100%;
		padding-left: 15px;
		padding-right: 15px;
	}	
	.banner_dim{
		position: relative;
	}

	.img_banner{
		display: block;
		position: relative;
		filter: brightness(60%);
		-moz-filter: brightness(60%);
	}
	
	.content_banner{
		display: block;
		background-color: transparent;
		top:0;
		position: absolute;

	}
	.content_banner h2{
		transform: none;
	}

	.cont_txt {
    	padding:25px 38px 50px 38px;
	}
	
	.txt_box{
		padding: 50px 38px;
		line-height: 24px;
	}

	.cont_txt h3{
		line-height: 24px;
	}

	.serv_img h1{
		font-size: 24px;
	}
	

	.servicos .cont_txt {
	    padding: 10px 38px 50px 38px;
	}	
	.copyright, .stlk, .signed{
		width: 100%;
		padding-bottom: 15px;
		text-align: center;
	}

	.signed img{
		float: none;
	}
	.ct{
		margin-top: 40px;
	}
	.ct_social img{
		float:none;
	}
	.contactos .ct_social span::before{
		left:0px;
	}

	.contactos{
		padding: 50px 0px;
	}

	.last_col{
		margin-top: 0px;
	}

	.cont_2{
		padding-top: 45px;
		padding-bottom: 25px;
		padding-left: 38px;
		padding-right: 38px;
	}
	
	.col-moinho{
		position: relative;
	}

	.col-descmoinho{
		position: absolute;
		margin-top: 8%;
	}

	.cont_2 h2{
		color: white;
		font-size: 18px;
		line-height: 26px;
		margin-bottom: 40px;
	}

	.cont_2 .sub_tit{
		color:white;
	}

	.cont_2 h2 span{
		color: white;
	}

	.cont_2 h2::before{
		background-color: white;
	}
	
	.cont_2 h2::after{
		background-color: white;
	}

	.img_esq{
		filter:brightness(60%);
		-moz-filter: brightness(60%);
	}

	.servicos{
		padding-top: 20px;
	}

	.container_ft{
		padding-left: 38px;
		padding-right: 38px;
	}
	.ct span{
		font-size: 11px;
	}

	.ct_dimcap{
		padding-right: 0px;
	}

 }

@media (max-width: 350px) {
	.cont_2 h2{
		font-size: 15px;
	}

 }
@media (max-width: 1400px) and (min-width: 1199px){
	.container, .container_ft{
		width: 1200px;
		padding-right: 15px;
		padding-left: 15px;
		margin-left: auto;
		margin-right: auto;
	}
	.txt_box{
		max-width: 950px;
		padding: 80px 120px;
	}

	.cont_2{
		padding-top: 0px;
	}

	.menu_dim li{
		padding: 20px 40px;
	}
	.cont_2 h2{
		margin-bottom: 50px;
	}


}
@media (max-width: 1700px) and (min-width: 1100px){
	.content_banner h2{
			font-size: 34px;
			padding:0 40px;
	}
}
@media (max-width: 1900px) and (min-width: 1701px){
	.content_banner h2{
			padding:0 80px;
	}
}

 @media (max-height: 450px) and (max-width: 786px) {
	.header{
		height: 100px;
		padding:22px 0px;
	}
	.logo_dim {
	    padding-left: 22px;
	}
	.logo_dim img {
    	width: 150px;
	}
	.banner_dim{
		padding-top:100px;
	}
	.ban-padd{
		padding-top:256px;
	}

	.ban-padd .content_banner h2{
		top:52%;
	}

 	.container, .container_ft {
	    width: 100%;
	    padding-right: 15px;
	    padding-left: 15px;
	    margin-left: 0px;
	    margin-right: 0px;
	}
	.sn_txt, .sn_img{
		width: 50%;
		float: left;
		position: relative;
	}

	.img_banner{
		width: 66.66666667%;
		/*float: left;*/
		position: relative;
	}

	.content_banner{
		width: 33.33333333%;
		/*float: left;*/
		position: relative;
	}
	.content_banner h2{
		padding: 0 20px;
	    font-size: 15px;
	}
	
	.cont_txt {
	    padding: 10px 32px 10px 32px;
	}

	.cont_txt h1 {
	    margin-top: 30px;
	    font-size: 26px;
	    margin-bottom: 10px;
	}

	.sobre_nos .cont_txt span {
	    line-height: 20px;
	        font-size: 11px;
	}

	.txt_box{
		padding:32px 32px;
		line-height: 20px;
		font-size: 11px;
	}

	.serv_img h1{
		font-size: 20px;
	}

	.first_col, .meio_col, .last_col{
		width: 50%;
		position: relative;
		float: left;
	}

	.last_col {
	    margin-top: -100%;
	}

	.ct {
	    margin-top: 40px;
	}

	.ct_social img{
		float:left;
	}

	.contactos .ct_social span::before {
	    left: 0px;
	}

	.cont_txt h3 {
    	line-height: 20px;
    	font-size: 11px;
	}

	.servicos .cont_txt {
	    padding: 0px 40px 20px 40px;
	}

	.container_ft {
	    padding-right: 37px;
	    padding-left: 37px;
	}

	.contactos{
		padding: 40px 0px 50px 0px;
	}
	.col-moinho {
	    position: relative;
	    height: 200px;
	}
	.img_esq{
	    filter: brightness(60%);
	    -moz-filter: brightness(60%);
	}
		.col-descmoinho {
	    position: absolute;
	    margin-top: 8%;
	}

	.img_esq img{
		width: 100%;
	    max-width: none;
	    height: 300px;
	    object-fit: cover;
	}

	.cont_2 {
	    padding-top: 45px;
	    padding-bottom: 25px;
	    padding-left: 38px;
	    padding-right: 38px;
	}

	.cont_2 h2 {
	    color: white;
	    font-size: 18px;
	    line-height: 26px;
	    margin-bottom: 40px;
	}

	.cont_2 h2 span {
	    color: white;
	}

	.cont_2 .sub_tit {
	    color: white;
	}

	.cont_2 h2::before {
	    background-color: white;
	}

	.cont_2 h2::after {
	    background-color: white;
	}

	.servicos{
		padding-top: 120px;
	}

	.signed{
		width: 50%;
	}
}

@media (max-height: 350px) and (max-width: 786px) {
	.cont_txt {
	    padding: 0px 32px 0px 32px;
	}

	.cont_txt h1{
		margin-bottom: 5px;
}

}