/* === GLOBAL === */
/* --- MAIN --- */
@font-face {
    font-family: 'Swiss';
    src: url('/fonts/swiss-webfont.eot');
    src: url('/fonts/swiss-webfont.eot?#iefix') format('embedded-opentype'),
         url('/fonts/swiss-webfont.woff2') format('woff2'),
         url('/fonts/swiss-webfont.woff') format('woff'),
         url('/fonts/swiss-webfont.ttf') format('truetype'),
         url('/fonts/swiss-webfont.svg#SwissLT') format('svg');
}
@font-face {
    font-family: 'SwissBT';
    src: url('/fonts/swissbt-webfont.eot');
    src: url('/fonts/swissbt-webfont.eot?#iefix') format('embedded-opentype'),
         url('/fonts/swissbt-webfont.woff2') format('woff2'),
         url('/fonts/swissbt-webfont.woff') format('woff'),
         url('/fonts/swissbt-webfont.ttf') format('truetype'),
         url('/fonts/swissbt-webfont.svg#SwissBT') format('svg');
}
@font-face {
    font-family: 'SwissLT';
    src: url('/fonts/swisslt-webfont.eot');
    src: url('/fonts/swisslt-webfont.eot?#iefix') format('embedded-opentype'),
         url('/fonts/swisslt-webfont.woff2') format('woff2'),
         url('/fonts/swisslt-webfont.woff') format('woff'),
         url('/fonts/swisslt-webfont.ttf') format('truetype'),
         url('/fonts/swisslt-webfont.svg#SwissLT') format('svg');
}
* {
	padding: 0;
	margin: 0;
}
body {
	background: #000;
	font: 14px 'Trebuchet MS', sans-serif;
	color: #666;
}
p {
	padding-bottom: 6px
}
a {
	color: #666;
	text-decoration: none;
}
a:hover {
	color: #fff;
	text-decoration: none;
}
.link-red {
	color: rgb(215,5,10) !important;
	text-decoration: underline;
}
/* --- HEADS --- */
h2, h3, h4 {
	font-family: "SwissLT";
	color: #000;
	clear:both;
	font-weight: bold;
	text-align: left;
}
h2 {
	padding-bottom: 10px;
	font-size: 40px;
	line-height: 48px;
	letter-spacing: -1px
}
h2.under {
	border-bottom: 1px solid #ddd;
	margin-bottom: 20px;
}
h3 {
	padding-bottom: 15px;
	letter-spacing: -0.5px;
	overflow: hidden;
	font-size: 22px;
	line-height: 20px;
	text-align: left;
}
h3.under {
	padding-bottom: 8px;
	margin-bottom: 8px;
	border-bottom: 1px solid #ddd;
}
h3 a {
	display:inline-block;
	color: #000;
	padding-top: 8px;
}
h3 a:hover {
	color: rgb(215,5,10)
}

/* === OTHERS === */
.body {
	background-color: #fff;
	padding-top: 20px;
	padding-bottom: 20px;
}
.cell {
	position: relative;
	width: 960px;
	margin: 0 auto;
	padding: 10px;
	overflow: hidden;
}
.zeropad {
	padding:0px;
}
@media only screen and (min-width: 821px) and (max-width: 1000px) {
.cell {
	width: 768px;
}
}

@media only screen and (max-width: 820px) {
.body, header, footer {
	padding-right: 20px;
}
.cell {
	width: 100%;
}
}

#faixa {
	background-image: url(/images/bg_top_img.png), url(/images/bg_top2.png);
	background-position: center bottom;
	background-repeat: no-repeat, repeat;
	height: 20px;
}

/* --- DROPCAPS --- */
.dropcap {
	height: 56px;
	padding-left: 65px;
	background-size: 56px 56px;
	background-repeat: no-repeat;
}
.dc1 {
	background-image: url(/images/dropcap1.gif);
}
.dc2 {
	background-image: url(/images/dropcap2.gif);
}
.dc3 {
	background-image: url(/images/dropcap3.gif);
}
.dc4 {
	background-image: url(/images/dropcap4.gif);
}

/* --- IMAGES --- */
.fig-left {
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}
.fig-right {
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
}
@media only screen and (max-width: 500px) {
	.fig-350{
		width:auto;
		max-width: 100%;
		height: auto;
		display:block;
		float:none;
		margin-left:auto;
		margin-right:auto;
}
}

/* === HEADER === */
header {
	background: url(/images/bg.jpg) bottom center repeat;
	font-family: "Swiss";
	letter-spacing: -0.5px;
	text-align: center;
}
header .preload{
background-image:url(/images/menu_icon1.png), url(/images/menu_icon2.png), url(/images/menu_icon3.png), url(/images/menu_icon4.png),url(/images/menu_icon5.png),url(/images/menu_icon6.png),url(/images/menu_icon1_active.png),url(/images/menu_icon2_active.png), url(/images/menu_icon3_active.png),url(/images/menu_icon4_active.png),url(/images/menu_icon5_active.png),url(/images/menu_icon6_active.png);

}
header .cell {
	padding-top: 20px;
	padding-bottom:20px;
}
h1 {
	display: inline-block;
	float: left
}
h1 img {
	width:100%;
	max-width: 229px;
}
header ul {
	width: 600px;
	float: right;
	padding: 20px 0;
	list-style:none;
}
header li {
	width: 16.66%;
	height: 80px;
	float: left;
}
header li a {
	display: block;
	height: 100%;
	font-size: 20px;
	font-weight: 700;
	color: #bbb;
}
header li a span {
	display: block;
	color: #666;
	font-size: 13px;
	line-height: 15px;
	font-weight: normal
}
header li a:hover, header .active a {
	color: rgb(215,5,10)
}
header li a:hover span, header .active span {
	color: #fff
}

@media only screen and (max-width: 1000px) {
header ul {
	width: 320px;
	padding: 0;
}
header li {
	width: 33.33%;
	padding: 0;
}
#nav4, #nav5, #nav6 {
	padding-top: 20px;
}
}

@media only screen and (max-width: 620px) {
h1 {
	float: none;
}
header ul {
	width: 100%;
	max-width: 320px;
	padding-top: 20px;
	float: none;
	margin: 0 auto;
}
}

#nav1 {
	background: url(/images/menu_icon1.png) bottom center no-repeat;
	background-size: 30px 30px;
}
#nav1:hover, #nav1.active {
	background: url(/images/menu_icon1_active.png) bottom center no-repeat;
	background-size: 30px 30px;
}
#nav2 {
	background: url(/images/menu_icon2.png) bottom center no-repeat;
	background-size: 30px 30px;
}
#nav2:hover, #nav2.active {
	background: url(/images/menu_icon2_active.png) bottom center no-repeat;
	background-size: 30px 30px;
}
#nav3 {
	background: url(/images/menu_icon3.png) bottom center no-repeat;
	background-size: 40px 30px;
}
#nav3:hover, #nav3.active {
	background: url(/images/menu_icon3_active.png) bottom center no-repeat;
	background-size: 40px 30px;
}
#nav4 {
	background: url(/images/menu_icon4.png) bottom center no-repeat;
	background-size: 25px 30px;
}
#nav4:hover, #nav4.active {
	background: url(/images/menu_icon4_active.png) bottom center no-repeat;
	background-size: 25px 30px;
}
#nav5 {
	background: url(/images/menu_icon5.png) bottom center no-repeat;
	background-size: 30px 30px;
}
#nav5:hover, #nav5.active {
	background: url(/images/menu_icon5_active.png) bottom center no-repeat;
	background-size: 30px 30px;
}
#nav6 {
	background: url(/images/menu_icon6.png) bottom center no-repeat;
	background-size: 40px 30px;
}
#nav6:hover, #nav6.active {
	background: url(/images/menu_icon6_active.png) bottom center no-repeat;
	background-size: 40px 30px;
}

/* === INDEX:SLIDER === */
#slide-body {
	background: url(/images/bg_slider.gif) bottom repeat-x;
	background-size: 30px 100%;
}
#slide-img {
	list-style: none;
	position:relative;
	}
#slide-img img{
	display:block;
	position:absolute;
	left:0;
	top:0;
	width:100%;
}
#slide-img img:nth-of-type(1) {
	position:relative;
	opacity: 0;
	z-index:1;
}
#slide-img .next, #slide-img .prev{
	display:block;
	height:61px;
	width:38px;
	position:absolute;
	top:calc(50% - 30px);
	background: url(/images/themes.gif);
	z-index:2;
	opacity:0.5;
}
#slide-img .next{
	visibility:hidden;
	right:0;
	background-position:right;
}
#slide-img .prev{
	visibility:hidden;
	left:0;
}

/* === INDEX:VALE === */
#vale{
	color: #000;
	margin-bottom: 20px;
	margin-top: -10px;
	text-align:center;
	border-bottom: 1px solid #ddd;
	border-top: 1px solid #ddd;
}
#vale span {
	display:inline-block
}
#vale span:nth-of-type(1) {
	font-family: "SwissBT";
	font-size:38px;
}
#vale span:nth-of-type(2) {
	font-family: "SwissLT";
	font-size:32px;
}
#vale span:nth-of-type(3) {
	font-family: "Swiss";
	font-size:38px;
}

/* === INDEX:SERVICOS === */
.ind-ser {
	width: 25%;
	float: left;
	margin-bottom: 20px;
}

@media only screen and (min-width: 961px) {
.ind-ser .wrap-btw{
	margin-right:10px;	
}
.ind-ser:nth-of-type(5) .wrap-btw{
	margin-right:0px !important;	
}
}

@media only screen and (min-width: 421px) and (max-width: 960px) {
.ind-ser:nth-of-type(4) {
	clear: left;
}
.ind-ser {
	width: 50%;
}
.ind-ser:nth-of-type(2) .wrap-btw,.ind-ser:nth-of-type(4) .wrap-btw {
	margin-right: 10px;
}
.ind-ser:nth-of-type(3) .wrap-btw,.ind-ser:nth-of-type(5) .wrap-btw {
	margin-left: 10px;
}
}

@media only screen and (max-width: 420px) {
.ind-ser {
	float: none;
	width: 100%;
}
}

/* === INDEX:TEXTO === */
.text-wrap {
	width: calc(100% - 215px);
	float: left;
}
.text-wrap .wrap-btw {
	margin-right: 20px;
}

@media only screen and (max-width: 820px) {
.text-wrap {
	width: 100%;
}
.text-wrap .wrap-btw {
	margin: 0;
}
}

/* === INDEX:TESTEMUNHOS === */
.test-wrap {
	width: 215px;
	float: left;
}

#slide-test{
	height:215px;
	overflow:hidden;
    position:relative;
	list-style:none;	
}
#slide-test ul {
	position:absolute;
	width:100%;
}
#slide-test li div {
	height:100px;
	padding: 15px;
	padding-bottom: 20px;
	background: #eee;
	overflow:hidden;
}
#slide-test li span:before {
	display:block;
	background-image: url(/images/bg_testimonials.gif);
	background-repeat:no-repeat;
	background-size: 100% auto;
	height:21px;
	content:"";
}
#slide-test li span {
	display:block;
	height:80px;
	margin-left:10px;
}

#slide-test .prev, #slide-test .next {
	display: block;
	width: 32px;
	height: 32px;
	position: absolute;
	bottom: 5px;
	right: 0;
	z-index: 3;
}
#slide-test .prev {
	right: 33px;
	background: url(/images/marker_up.gif) 0 0 no-repeat
}
#slide-test .next {
	background: url(/images/marker_down.gif) 0 0 no-repeat
}
#slide-test .prev:hover, #slide-test .next:hover {
	background-position: bottom
}

@media only screen and (max-width: 820px) {
.test-wrap {
	width: 100%;
}
.test-wrap h2{
	margin-top:20px;
}
}

@media only screen and (min-width: 521px) and (max-width: 820px) {
#slide-test li div {
	height:40px;
}
#slide-test{
	height:155px;
}
}
@media only screen and (min-width: 401px) and (max-width: 520px) {
#slide-test li div {
	height:60px;
}
#slide-test{
	height:175px;
}
}
@media only screen and (max-width: 400px) {
#slide-test li div {
	height:80px;
}
#slide-test{
	height:195px;
}
}

/* === ARTIGOS === */
.tab-content > div + div {
	margin-top: 30px;
}
.artigos h3 a {
	line-height: 56px;
	font-size: 33px;
	padding: 0;
	font-weight: 400;
}

@media only screen and (min-width: 620px) and (max-width: 768px) {
.artigos h3 a {
	font-size: 27px;
}
}

@media only screen and (max-width: 620px) {
.artigos h3 a {
	line-height: 27px;
	font-size: 27px;
	padding: 1px 0;
}
}
.artigos img {
	height: 200px
}
.artigos .tab-post {
	height: 180px;
	overflow: hidden;
}
.artigos div + a {
	display: block;
	margin-top: 2px;
	color: rgb(215,5,10);
}
.artigos ul {
	float: left;
	padding-left: 10px;
	clear: both;
	list-style:none;
}
.artigos li {
	padding-right: 1px;
	float: left;
}
.artigos li a {
	display: block;
	width: 32px;
	height: 32px;
	font-family: "SwissLT";
	font-size: 19px;
	color: #fff;
	line-height: 32px;
	background: rgb(215,5,10);
	text-align: center
}
.artigos li a:hover, .tab-sel a {
	background: #696969 !important;
}

/* === POSTS === */
.post .under{
	margin-bottom: 5px;
}
.post h2 + p, .post-fonte{
	font-style:italic;
	font-size:12px;
	margin-bottom:5px;
}
.post h5{
	font-size:16px;
	color: #000;
}
.post a {
	color: rgb(215,5,10) !important;
	text-decoration:underline;
}
.post {
	text-align: justify;
	line-height:1.5em;
}
.post p, .post h5, .post li, .post blockquote {
	margin-bottom: 15px;
}
.post ol, .post ul {
	margin-left: 45px;
}
.post blockquote {
	padding-left: 15px;
	border-left: 3px;
	border-color: #ddd;
	border-left-style: solid;
}

/* === EMPRESA === */
.empresa ul {
	list-style: inside square !important;
}
.empresa li {
	line-height: 30px;
}
.empresa p {
	text-align: justify;
}
.empresa p + p {
	padding-top: 8px;
}
.empresa section {
	width: 100%;
	float: left;
}
#emp-mis {
	width: 66.66%
}
#emp-val {
	width: 33.33%
}
#emp-mis, #emp-val {
	margin-top: 20px;
}

@media only screen and (min-width: 620px) {
.empresa .wrap-btw {
	margin-right: 20px;
}
}

@media only screen and (max-width: 620px) {
#emp-mis, #emp-val {
	width: 100%;
}
#emp-val {
	text-align: center;
}
}
/* === SERVICOS:PAINEL === */
.serv-wrap {
	cursor:pointer;
	width: 50%;
	float: left;
	padding-bottom: 20px;
}
.serv-wrap:hover a {
	color: rgb(215,5,10);
}
.serv-wrap:nth-of-type(3) {
	clear: left;
}
.serv-wrap > div {
	margin: 0 15px
}
.serv-wrap img {
	width: 100%;
	max-width: 450px;
	padding-bottom: 10px;
}

@media only screen and (max-width: 620px) {
.serv-wrap {
	width: 100%;
	float: none;
	padding-bottom: 20px;
}
.serv-list {
	max-width: 450px;
}
}
/* === SERVICOS === */
.servicos {
	list-style:inside;
	line-height:22px;
	text-align:justify;
}
.servicos .head-img{
	height:186px;
	background-position:bottom center;
	background-size: auto 100%
}
#h-obra{
	background-image:url(/services/images/obra_1.jpg)
}
#h-topo{
	background-image:url(/services/images/topo_1.jpg)
}
#h-imob{
	background-image:url(/services/images/imob_1.jpg)
}
#h-proj{
	background-image:url(/services/images/proj_1.jpg)
}
#h-list{
	background-image:url(/services/images/list_1.jpg)
}
.servicos h2 ~ p:nth-of-type(1){
	padding-top:20px;	
}
.servicos section {
	overflow:hidden;
}
.servicos section + section {
	padding-top: 20px;
}
.servicos ul{
	width: calc(50% - 30px);
	float: left;
	list-style: disc outside;
	text-align: left;
	padding-left: 20px;
	padding-right:10px;
}
.servicos li {
	padding-top: 10px;
}
.servicos .list-serv{
	display:inline-block;
	background-color:#777;
	border-radius:4px;
	color:#fff;
	padding:0 5px;
	margin-top: 20px;
}
.servicos .list-serv:hover{
	background-color: #222;
}

@media only screen and (max-width: 500px) {
.servicos ul{
	width: 100%;
}
.servicos .head-img{
	height:130px; 
}
}
/* === CLIENTES === */
.clientes {
	text-align: center;
}
.clientes span {
	width: 33.33%;
	height: 140px;
	padding: 10px 20px;
}
.clientes .cli-last {
	width: 50%;
	height: 120px;
}
.clientes img {
	max-height: 100px;
	margin: 0 auto;
}
.clientes ul {
	width: calc(50% - 40px);
	float: left;
	list-style: disc outside;
	text-align: left;
	padding: 0 20px;
}
.clientes li {
	padding-top: 5px;
}

@media only screen and (min-width: 620px) and (max-width: 768px) {
.clientes span {
	width: 50%;
}
}

@media only screen and (max-width: 620px) {
.cli-imgs span {
	width: 100% !important;
	height: auto !important;
}
.cli-imgs span img {
	padding: 0 0 25px 0 !important;
}
.clientes ul {
	width: calc(100% - 40px);
}
}

/* === CONTATO === */
.cont-email {
	width: 66.66%;
	float: left;
}
.cont-email .wrap-btw {
	min-height: 400px;
	margin-right: 20px;
	position: relative;
	overflow:hidden;
	padding-bottom: 40px;
}
#ContactForm .cf-title {
	float: left;
	clear: left;
	line-height: 28px;
	width: 80px;
}
#ContactForm .cf-small {
	float: left;
	width: 200px;
	margin: 2px;
	padding: 2px;
}
#ContactForm textarea {
	float: left;
	overflow: auto;
	width: 98%;
	min-width:200px;
	height: 250px !important;
	padding: 3px;
	margin: 2px;
}
#ContactForm .cf-button {
	position: absolute;
	right: 0;
	bottom: 0;
	margin-right: 2px;
	width: 62px;
	height: 32px;
	font-weight: bold;
	color: #fff;
	background-color: rgb(215,5,10);
	border: 0;
}
#ContactForm .cf-button:hover {
	background: #080808;
}
.cont-end a:hover{
	color: #666;
}
.cont-end, .cont-map {
	width: 33.33%;
	height: 220px;
	float: left;	
}
.cont-end ul {
	list-style:none;
}
.cont-end li {
	overflow: hidden;
}
.cont-end li span {
	display: block;
	float: left;
}
.cont-end li span:nth-of-type(1) {
	width: 70px;
}
.cont-end li span:nth-of-type(2) {
	width: calc(100% - 70px);
}
.cont-map a {
	display: block;
	height: calc(100% - 79px);
	width: 100%;
	background: url(/images/mapa.png) bottom left no-repeat;
	background-size: auto 100%;
}

@media only screen and (max-width: 700px) {
.cont-email {
	width: 100%;
}
.cont-email .wrap-btw {
	margin: 0;
}
.cont-end {
	width: 240px;
}
.cont-end .wrap-btw {
	margin-right: 20px;
}
.cont-map {
	width: calc(100% - 240px);
}
}

@media only screen and (max-width: 500px) {
.cont-end {
	width: 100%;
}
.cont-end .wrap-btw {
	margin-right: 0px;
}
.cont-map {
	width: 100%;
}
}

@media only screen and (max-width: 330px) {
#ContactForm textarea, #ContactForm .cf-small {
	width: calc(100% - 10px);
}
}

/* === FOOTER === */
footer {
	background: url(/images/bg.jpg) bottom center repeat;
	padding-top: 30px;
	padding-bottom:30px;
	line-height: 29px;
}
.foot-wrap {
	float: left;
	width: 33.33%;
}
footer .wrap-btw{
	overflow:hidden;
	width:200px;
	margin:0 auto;
}
h4 {
	margin-bottom:8px;
	font-size: 26px;
	color: #fff !important;
	font-weight: 500;
}
footer ul {
	background: url(/images/line_hor1.png) bottom left no-repeat;
}
footer li {
	background: url(/images/line_hor1.png) no-repeat;
	overflow: hidden;
}
#foot-30 a {
	padding-left: 14px;
	background: url(/images/marker_1.gif) center left no-repeat;
}
#foot-cont-mob{
	visibility: hidden;
	width: 0;
	height:0;
}
footer span {
	display:inline-block;
	min-width: 51px;
	padding-left: 4px;
}
#foot-cont a,#foot-cont-mob a {
	color: #aaa;
}
#foot-soc img {
	width: 18px;
	height: 18px;
	padding: 6px 10px 0 0;
}

@media only screen and (max-width: 700px) {
#foot-30 {
	visibility: hidden;
	width: 0;
	height:0;
}
.foot-wrap {
	width: 50%;
}
}
@media only screen and (min-width: 361px) and (max-width: 500px) {
#foot-cont{
	width:220px;
}
#foot-soc{
	width:calc(100% - 220px);
}
#foot-soc .wrap-btw{
	width:calc(100% - 20px);
}
}
@media only screen and (max-width: 360px) {
#foot-soc{
	margin-top:20px;
	width:100%;
}
#foot-cont{
	visibility: hidden;
	width: 0;
	height:0;
}
#foot-cont-mob{
	visibility: visible;
	width: 100%;
	height: auto;
}
.foot-wrap .wrap-btw{
	width:100%;
	margin: 0 auto;
}
footer ul, footer li{
	background-size: 100% 1px;
}
}