@charset "utf-8";
/* CSS Document */


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

	
}

@media screen and (max-width: 1023px){
	html, body {min-width: 0;}
	.wrapper {width:auto; padding:0 20px;}
	.titulo-fundo {background: none !important; text-align: center !important;}
	.titulo-fundo .obj {float: none !important;}
	
	/*#############HEADER#################*/
	#header .wrapper {display: flex;}
	#header .wrapper .col-1, #header .wrapper .col-2, #header .wrapper .col-3 {float: none;}
	#header #menu ul {display: flex}
	#header #menu ul li{display: flex; float: none;}
	#header #menu ul li a {line-height: 62px;}
	#continuacao-logo {background-position:6px 0; top:0; }
	/*####################################*/
	
	/*#############RODAPE#################*/
	#rodape .wrapper {position: relative}
	#rodape .wrapper .col-1, #rodape .wrapper .col-2, #rodape .wrapper .col-3 {width: auto;}
	#rodape .wrapper .col-2 {position: absolute; left:50%; margin-left: -61px; top:0;}
	/*####################################*/
	
	#banner {position: relative;}
	#banner-nav {margin: 0; right: 20px; height: 100%; display: flex; flex-direction: column; justify-content: center;}
	#banner-slides li {display: flex; padding-right: 20%; justify-content: space-between; width: 100%;}
	#banner-slides li .col-1, #banner-slides li .col-2 {float:none;}
	#banner-slides li .col-1 {width:50%; margin-right: 0;}
	#banner-slides li .col-2 {width:auto; margin-right: 30px;}
	#banner-slides li .col-2 a {display: inline-block;}
	
	#banner-imagens li {display:flex; align-items: center; justify-content: center;}
	#banner-imagens li img {height: 100%; width: auto; }
	
	.colunas-2 .wrapper{display: flex; }
	.colunas-2 .wrapper .col-1 {width: 48% !important; margin-right:2%; float: none}
	.colunas-2 .wrapper .col-2 {width: 48% !important; margin-left: 2%; float: none;}
	
	#home-recentes ul {display: flex;}
	#home-recentes ul li {float: none; width: 33.33%; margin: 0; padding: 0 15px; }
	#home-recentes li a {position: relative; height:200px;display: flex; justify-content: center;}
	#home-recentes li a .canto {width:100%; height: 100%;}
	#home-recentes li img {width: auto; height: 100%;}
	#home-recentes li a .mascara {position: absolute; width: 100%; height: 100%;top:-200px;}
	#home-recentes li a:hover .mascara {top: 0}
	
	#home-clientes-lista .wrapper {width: auto; }
	#home-clientes-lista .wrapper, #sms-clientes-lista .wrapper {background-position: 10px 0; padding: 0 10px;}
	#home-clientes-lista li, #sms-clientes-lista li{display: flex; align-items: center;}
	#home-clientes-lista .marosca, #sms-clientes-lista .marosca {padding-right: 0}
	
	#sms-linha-1 .col-1 {display: flex; align-items: center;}
	#sms-linha-1 .col-1 img {width: 100%; height: auto;}
	
	#sms-carateristicas.colunas-2 .wrapper { flex-wrap: wrap;}
	#sms-carateristicas.colunas-2 .wrapper h2{width: 100%;}
	#sms-carateristicas .col-1 li {display: flex;}
	#sms-carateristicas .col-2 li {display: flex; flex-direction: row-reverse; }
	#sms-carateristicas .col-1a, #reducao-motivos .col-1a{width:30%; box-sizing: border-box; float:none; padding-right: 30px;}
	#sms-carateristicas .col-1a img, #reducao-motivos .col-1a img {width: 100%; height: auto; float: none;}
	#sms-carateristicas .col-2a, #reducao-motivos .col-2a {width: 70%; box-sizing: border-box;}
	#sms-carateristicas .col-2 .col-1a, #reducao-motivos .col-2 .col-1a {width:30%; box-sizing: border-box; float:none; padding-left: 30px; padding-right: 0;}
	#sms-carateristicas .col-2 .col-1a img, #reducao-motivos .col-2 .col-1a img {width: 100%; height: auto; float: none;}
	#sms-carateristicas .col-2a, #reducao-motivos .col-2a {width: 70%; box-sizing: border-box;}
	
	#sms-testemunhos-lista ul {display: flex; align-items: center;}
	#sms-testemunhos li {display: flex; box-sizing: border-box; margin: 0;}
	#sms-testemunhos .col-1a {box-sizing: border-box;width:20%; float: none; padding-left: 100px;}
	#sms-testemunhos .col-1a img {width:100%; height: auto;}
	#sms-testemunhos .col-2a {box-sizing: border-box;float: none; width: 80%; padding-left: 30px; padding-right: 100px; height:auto;}
	
	/*################ PORTFOLIO ################*/
	#portefolio-lista ul{display:flex; flex-wrap: wrap; margin-bottom: 30px;}
	#portefolio-lista ul li {float: none; width: 33.33%; margin: 0; box-sizing: border-box; padding: 13px;}
	#portefolio-lista ul li a{display: flex; align-items: center; justify-content: center; position: relative; height: 100%}
	#portefolio-lista li a:hover .mascara {top:0;}
	#portefolio-lista li a:hover .canto {background-position: right 250%;}
	#portefolio-lista ul li a .mascara {width: 100%; height: 100%; top:100%; position: absolute}
	#portefolio-lista ul li a .canto {width: 100%; height:100%; position: absolute;}
	#portefolio-lista li img {width: 100%; height: auto;}
	
	#portefolio-interior .wrapper {display: flex; flex-wrap: wrap;}
	#portefolio-interior .wrapper h2 {width: 100%;}
	#portefolio-interior .wrapper h2  .obj {text-align: left}
	#portefolio-interior .col-1 {width: 40%; padding-right: 40px; box-sizing: border-box; float: none}
	#portefolio-interior .col-2 {width:60%; float: none;}
	#portefolio-galeria img{width: 100%; height: auto;}
	
	/*################ SOBRE NOS ################*/
	#home-linha-1 .col-1, #home-linha-1 .col-2 {float: none; width: 50%; box-sizing: border-box; padding: 30px; display: flex; align-items: center; margin: 0}
	#sobre-linha-1.colunas-2 .wrapper { flex-wrap: wrap;}
	#sobre-linha-1.colunas-2 .wrapper h1{width: 100%;}
	#sobre-linha-1 h2 {width: 100%;}
	#sobre-linha-1 h2 .obj {text-align: center;}
	
	.saber-mais-mini {display: flex; box-sizing: border-box; justify-content: space-between; align-items: center; padding: 10px; height: 80px;}
	.saber-mais-mini span {width: 100%}
	
	/*################ CONTACTOS ################*/
	#contactos-form form {display: flex; justify-content: space-between; }
	#contactos-form form .col-1, #contactos-form form .col-2 {float: none; width: 48%;}
	#contactos-form input[type='text'] {width: 100%; box-sizing: border-box; height: 40px;}
	#contactos-form textarea {width: 100%; box-sizing: border-box; height: 196px;}
	
	#contactos-outros .wrapper {display: flex; flex-wrap: wrap;}
	#contactos-outros h2 {width: 100%; }
	#contactos-outros .col-1, #contactos-outros .col-2, #contactos-outros .col-3, #contactos-outros .col-4{width: 25% !important; box-sizing: border-box; padding-right: 26px; margin: 0; float: none;}
	#contactos-outros .col-4 {padding-right: 0;}
}

@media screen and (max-width: 960px){
	#topo {background-position: -35px;}
	#header {background-position: -35px;}
	#header .wrapper {padding: 0 0 0 20px;}
	#header a {font-size: 12px;}
	#header .col-1 {margin-right: 35px;}
	#header .col-3 a {padding: 0 40px 0 45px; font-size: 13px; line-height: 16px;}
	
	#portefolio-lista li a .mascara span, #home-recentes li a .mascara span {font-size: 14px;}
	
	#sms-form .col-1 {width:100%;padding-right: 0;}
	#sms-form .col-2 {width:100%;padding-left: 0;}
	#sms-form .col-2 textarea {height: 200px; box-sizing: border-box;}
	
	#portefolio-lista li {height: 160px;}
	#portefolio-lista li .canto {display: none;}
}

@media screen and (max-width: 768px){
	body{padding-top: 59px;}
	select {-webkit-appearance: none;font-size: 16px;}
	#topo {display: none;}
	#topo.active {background:#fff;box-shadow:0 0 3px #666; position: fixed; display: block; top: 0; left: 0; z-index: 1000001; height: 60px; width: 100%;}
	#topo.active #linguas {float: none;}
	#topo.active #linguas a {background:url(../imagens/hover-mobile-linguas.png) no-repeat center 65px; height: 60px; line-height: 60px; overflow: hidden}
	#topo.active #linguas a:hover, #topo.active #linguas a.inativo {background-position: center 55px; color:#0fa0c6; font-weight: bold}
	#header {background-color: #fff; background-position:-40px; position: fixed; width: 100%; z-index: 1000000; top:0;}
	#header .col-1 a {margin: 12px 0 0 -15px;}
	#header .col-2, #header .col-3 {display: none;}
	
	#mobile-menu-switch, #mobile-menu {display:block !important;}
	#mobile-menu-switch.active {background-position: 0 -60px;  z-index: 1000002;}
	
	
	#rodape .wrapper {display: flex; flex-direction: column; align-items: center; position: relative}
	#rodape .wrapper .col-1, #rodape .wrapper .col-3 {float: none;}
	#rodape .wrapper .col-1 {margin-top: 40px;}
	#rodape .wrapper .col-3 {margin-top: 5px;}
	
	#continuacao-logo {width: 100%;}
	#banner .bx-viewport {height: 370px !important;}
	#banner h2 {font-size: 25px; line-height: 30px;}
	
	#home-recentes ul li {height: 150px;}
	#home-recentes ul li a {height:150px;}
	#home-recentes li a .mascara {top:-150px}
	#home-recentes li a .mascara span {font-size: 13px; line-height: 16px;}
	#home-recentes li a .canto {display:none;}
	
	#sms-testemunhos .col-1a {display: none;}
	#sms-testemunhos .col-2a {width:100%; padding-left: 100px;}
	#sms-form .bloco:nth-child(5) {width:30%}
	#sms-form .bloco:nth-child(6) {width:70%}
	
	#contactos-outros .col-1, #contactos-outros .col-2, #contactos-outros .col-3, #contactos-outros .col-4{width: 50% !important; margin-bottom: 26px;}
	#contactos-outros .col-2, #contactos-outros .col-4 {margin-right: 0;}
	#contactos-outros .col-3, #contactos-outros .col-4 {margin-bottom: 0; }
	
	#portefolio-lista li img {width: auto; height: 100%;}
	#portefolio-lista li a .mascara span {font-size: 13px; line-height: 16px;}
	#portefolio-interior .wrapper {display: flex; flex-wrap: wrap; flex-direction: column;}
	#portefolio-interior .col-1 {width: 100%;}
	#portefolio-interior .url-prj {display: inline-block; word-break: break-all;height: auto;}
	#portefolio-interior .col-2 {width: 100%;}
}

@media screen and (max-width: 600px){
	#banner {height: 300px;}
	#banner-sombra {height: 300px}
	#banner-imagens {height: 300px;}
	#banner-imagens li {height: 300px; display: flex; justify-content: center;}
	#banner-imagens li img {height: 100%; width: auto;}
	#continuacao-logo {background-position:25px 0;background-size: auto 100%;  height: 80px; }
	#banner-slides li {flex-direction: column; padding-right: 0; height: 300px; justify-content: flex-start}
	#banner-slides li .col-1 {width: 80%; margin-top: 100px;}
	#banner-slides li .col-2 {width: 80%; margin-top: 10px;}
	#banner h2 {font-size: 18px; line-height: 22px;}
	.separador-1 {background-size:100%; background-position: center center;  margin: 30px 0; height: 66px;}
	
	.colunas-2 .wrapper {flex-direction: column;}
	#home-linha-1 .col-1, #sms-linha-1 .col-1, #reducao-linha-1 .col-1 {padding: 0; width: 100% !important; margin-bottom: 30px; padding: 30px; box-sizing: border-box;}
	#home-linha-1 .col-2, #sms-linha-1 .col-2, #reducao-linha-1 .col-2 {padding: 0; width: 100% !important;}
	
	#sms-carateristicas.colunas-2 .wrapper .col-1, #sms-carateristicas.colunas-2 .wrapper .col-2 {width: 100% !important; margin-right: 0;}
	#sms-carateristicas.colunas-2 .wrapper .col-1 li:nth-child(even){flex-direction: row-reverse;}
	#sms-carateristicas.colunas-2 .wrapper .col-1 li:nth-child(even) .col-1a {padding-right: 0; padding-left: 30px;}
	#sms-carateristicas.colunas-2 .wrapper .col-1 li:nth-child(even) .col-2a {text-align: right}
	#sms-carateristicas.colunas-2 .wrapper li h3 {font-size: 20px; line-height: 24px;}
	#sms-carateristicas.colunas-2 .wrapper .col-2 li {flex-direction: row}
	#sms-carateristicas.colunas-2 .wrapper .col-2 li .col-1a {padding-left:0 ; padding-right: 30px;}
	#sms-carateristicas.colunas-2 .wrapper .col-2 li .col-2a {text-align: left}
	#sms-carateristicas.colunas-2 .wrapper .col-2 li:nth-child(even) {flex-direction: row-reverse;}
	#sms-carateristicas.colunas-2 .wrapper .col-2 li:nth-child(even) .col-1a {padding-right: 0; padding-left: 30px;}
	#sms-carateristicas.colunas-2 .wrapper .col-2 li:nth-child(even) .col-2a {text-align: right}
	
	#home-recentes ul, #portefolio-lista ul {flex-direction: column;}
	#home-recentes ul li, #portefolio-lista ul li  {width: 100% !important; padding: 0;}
	#home-recentes li a, #portefolio-lista li a {align-items: center; justify-content: center;}
	#home-recentes li img, #portefolio-lista li img {width: 100%; height: auto;}
	
	#sms-testemunhos h3, #home-clientes h3, #sms-clientes h3, #reducao-clientes h3{background-size: 100%; height: 33px; line-height: 43px; font-size: 12px;}
	#sms-testemunhos .col-2a {padding:0 20px;}
	#sms-testemunhos .bx-wrapper .col-2a {font-size: 12px !important; line-height: 15px !important;}
	#sms-testemunhos .bx-wrapper .col-2a * {-webkit-appearance: none; font-size: 12px !important; line-height: 15px !important;}
	.bx-wrapper .bx-next {right:-20px !important;}
	.bx-wrapper .bx-prev {left:-20px !important;}
	
	#sms-form .bloco, #sms-form .bloco:nth-child(5), #sms-form .bloco:nth-child(6), #sms-form .bloco-interno {width: 100%; padding: 0 !important;}
	#sms-form .bloco.with-child {flex-direction: column;}
	#sms-form .bloco-interno {margin-bottom: 20px;}
	#sms-form .bottom-info {flex-direction: column;}
	#sms-form .bottom-info input {width: 100%;}
	
	#portefolio-interior  h2 a {background-size: 40px; padding-left: 50px; font-size: 18px;}
	
	#home-linha-1 .col-1, #home-linha-1 .col-2 {margin: 0; padding: 30px;}
	#sobre-linha-1 .texto {    -moz-column-count: 1;-webkit-column-count: 1;column-count: 1;-moz-column-gap: 0;-webkit-column-gap: 0;column-gap: 0;}
	#sobre-competencias .wrapper .col-1, #sobre-competencias .wrapper .col-2 {width: 100% !important; margin: 0;}
	#sobre-competencias .wrapper .col-1 {margin-bottom: 40px;}
	.saber-mais-mini span {background: none; text-align: center;}
	
	#gmaps {height:250px;}
	
	#contactos-form form {position: relative;}
	#contactos-form form {flex-direction: column;}
	#contactos-form form .col-1, #contactos-form form .col-2 {width: 100%;}
	#contactos-form form .col-1 p.leg {position: absolute; bottom:70px; }
	#contactos-form input[type='submit'] {float: none; width: 100%; margin-top: 30px;}
	
	#contactos-outros .col-1, #contactos-outros .col-2, #contactos-outros .col-3, #contactos-outros .col-4 {margin-bottom: 26px; padding-right: 0; width: 100% !important; text-align: center}
	#contactos-outros .col-1 p, #contactos-outros .col-2 p, #contactos-outros .col-3 p, #contactos-outros .col-4 p {background-position:center 0 ; padding: 0; padding-top: 40px;}
	#contactos-outros .col-2 p:nth-child(2) {display: none;}
	
}