@import url(http://fonts.googleapis.com/css?family=Play:400,700);

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { margin: 0; padding: 0; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset,img { border: 0; }
address,caption,cite,code,dfn,em,strong,th,var { font-style: normal; font-weight: normal; }
ol,ul { list-style: none; }
caption,th { text-align: left; }
h1,h2,h3,h4,h5,h6 { font-size: 100%; font-weight: normal; }
q:before,q:after { content: ''; }
abbr,acronym { border: 0; }

a { outline: none;}
em { font-style: italic;}
strong { font-weight: bold;}

* { margin: 0; }

html,
button,
input,
select,
textarea {
    color: #282828;
	font-family: 'Play', sans-serif;
}

::-moz-selection {
    background: #282828;
	color: #fff;
    text-shadow: none;
}

::selection {
    background: #282828;
	color: #fff;
    text-shadow: none;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

img {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
    z-index: 999;
    position: fixed;
}

html, body {
	background: #293433;
	margin:0; padding:0;
	height:100%;
}

html { overflow-y: scroll; }

#bg {
	position:fixed;
	top:-50%;
	left:-50%;
	width:200%;
	height:200%;
	z-index: 0;
}
#bg img {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	min-width:50%;
	min-height:50%;
}


#bg_grelha {
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background: url(../img/bg.png);
	z-index: 1;
}

#bg_loading {
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background: #090b0b;
	z-index: 100;
}

#fix-margin {
	position: relative;
	z-index: 0;
	width: 100%;
}

#idiomas {
	position: absolute;
	right: 45px;
	top: 70px;
	z-index: 10;
}

	#idiomas a {
		color: #a20000;
		text-decoration: none;
		font-size: 14px;
		font-weight: bold;
	}

	#idiomas a.sel {
		color: #fff;
	}

#centered {
	position:relative; clear:left;
	width:80%; max-width:1024px; min-width:1024px;
	margin:0 auto;
}

	#bgmain {
		background: url(../img/bgmain.png);
		position: fixed;
		top: 0;
		height: 100%;
		width: 1024px;
		box-shadow: 0px 0px 5px 0px #000;
		z-index: 0;
	}

	#content {
		position: relative;
		margin: 0 45px;
		padding-top: 50px;
		z-index: 1;
	}

		#content #logotipo {
			position: absolute;
			outline: none;
			top: 60px;
			z-index: 10;
		}

		#content #mainMenu {
			position: absolute;
			top: 60px;
			margin: 122px 0 0 130px;
			width: 800px;
			text-align: right;
		}

			#content #mainMenu ul li {
				display: inline-block;
				margin-left: 10px;
				font-size: 14.5px;
				text-transform: uppercase;
				font-weight: 700;
			}

			#content #mainMenu ul li a {
				text-decoration: none;
				color: #768a88;
				outline: none;
			}

			#content #mainMenu ul li a:hover {
				color: #90aba8;
			}

			#content #mainMenu ul li a.sel {
				text-decoration: none;
				color: #fff;
			}

	#content .content-main {
		margin: 130px 0 0 0;
		padding-bottom: 45px;
	}


/*PAGE HOME*/

#p_home {
	height: 400px;
	display: relative;
}

	#p_home .home-slide {
		float: left;
		width: 440px;
		margin-top: 62px;
	}

	#p_home .home-slide a {
		text-decoration: none;
	}

		#p_home .home-slide-title {
			width: 260px;
			margin: 0 0 8px 2px;
			color: #fff;
			font-size: 18px;
		}

			#p_home .home-slide-title span {
				font-size: 11px;
				display: block;
				color: #768A88;
			}

		#p_home .home-slide-img {
			position: absolute;
			z-index: -1;
			height: 172px;
			width: 287px;
			margin: 43px 0 0 65px;
			box-shadow: 0 0 5px 1px #111;
		}

		#p_home .home-slide-left {
			float: left;
			width: 25px;
			height: 38px;
			margin: 66px 40px 0 0;
			/*background: url(../img/slide-left.png) no-repeat;
			cursor: pointer;*/
		}

		#p_home .home-slide-left:hover {
			background-position: 0 -38px;
		}

		#p_home .home-slide-right {
			float: left;
			width: 25px;
			height: 38px;
			margin: 66px 0 0 40px;
			/*background: url(../img/slide-right.png) no-repeat;
			cursor: pointer;*/
		}

		#p_home .home-slide-right:hover {
			background-position: 0 -38px;
		}

		#p_home .home-slide-content {
			float: left;
			width: 287px;
			height: 215px;
			overflow: hidden;
			white-space: nowrap;
		}

			#p_home .panel {
				width: 287px;
				display: inline-block;
				vertical-align: top;
			}

				#p_home .panel img {
					width: 285px;
					height: 170px;
					border: 1px solid #444;
				}

	#p_home .home-map {
		float: left;
		width: 480px;
		margin-top: 80px;
	}

	.panelScrollBts-home {
		float: left;
		margin: 15px 0 20px 137px;
		width: 145px;
	}

/*PAGE APRESENTAÇÃO*/

#p_apresentacao {
	padding-bottom: 110px !important;
}

	#p_apresentacao .apresentacao-text {
		padding: 5% 0 0 0;
		color: #fff;
		font-size: 12.5px;
		line-height: 20px;
	}

	#p_apresentacao .column {
		 padding: 40px;
		 width: 380px !important;
	}

/*PAGE SERVICOS*/

#p_servicos {
	padding-bottom: 110px !important;
}

	#p_servicos .servicos-text {
		padding: 8% 78px 0 78px;
		color: #fff;
		font-size: 15px;
	}

		#p_servicos .servicos-text p {
			padding: 0 8px;
		}

		#p_servicos .servicos-text hr {
			display: block;
		    height: 1px;
		    border: 0;
		    border-top: 1px solid #343737;
		    margin: 11px 0;
		    padding: 0;
		}

/*PAGE PORTFOLIO*/

#p_portfolio {
	height: 500px;
}
	#p_portfolio .portfolio-head {
		position: absolute;
		margin: 65px 0 0 0;
		right: 5px;
		text-align: right;
		color: #fff;
		z-index: 1;
	}

		#p_portfolio .portfolio-head span {
			font-size: 12px;
			display: block;
			text-align: right;
		}

		#p_portfolio .portfolio-head div {
			font-size: 11px;
			display: inline-block;
			min-width: 188.5px;
			background: url(../img/combo_bg.jpg) repeat-x;
			padding: 2px 3px 2px 3px;
			border-radius: 2px;
			margin: 10px 0 0 10px;
			cursor: pointer;
			vertical-align: top;
		}

			#p_portfolio .portfolio-head label { cursor: pointer; text-transform: uppercase; }

			#p_portfolio .portfolio-head div span {
				background: url(../img/arrow-down.png) center right no-repeat;
				width: 15px;
				height: 15px;
				float: right;
			}

			#p_portfolio .portfolio-head div ul {
				display: none;
				background: #51615f;
				padding: 4px 0;
				margin: 4px -3px 0 -3px;
				border-bottom-right-radius: 2px;
				border-bottom-left-radius: 2px;
				width: 194px;
				max-height: 300px;
				overflow-y: auto;

			}

				#p_portfolio .portfolio-head div ul li {
					background: transparent;
					padding: 3px 10px 3px 3px;
					text-transform: uppercase;
				}

				#p_portfolio .portfolio-head div ul li:hover {
					background: #6e817f;
				}

				#p_portfolio .portfolio-head div ul li.sel {
					background: #333c3b;
				}

	#portfolio-maps {
		background: url(../img/map_bg.png) no-repeat;
		float: left;
		width: 345px;
		height: 345px;
		margin: 121px 0 0 -27px;
	}

		#portfolio-maps #map-title {
			color: #fff;
			font-size: 17.5px;
		    font-weight: 900;
		    margin: 60px 15px 0 34px;
		    text-align: center;
		    text-transform: uppercase;
		    display: none;
		}

		#portfolio-maps #map-image {
		    margin: 20px 15px 0 34px;
		    text-align: center;
		    display: none;
		}

		#portfolio-maps #map-default {
		    margin: 60px 15px 0 25px;
		    text-align: center;
		}

	#p_portfolio .portfolio-scroll {
		float: left;
		margin: 0;
		padding-top: 15%;
		color: #fff;
		overflow: hidden;
		white-space: nowrap;
		text-align: right;
		width: 616px;
	}

	#p_portfolio .panel {
		width: 616px;
		display: inline-block;
		vertical-align: top;
	}

		#p_portfolio .panel div {
			font-size: 12px;
			width: 149px;
			height: 100px;
			float: left;
			margin: 0 0 4px 4px;
		}

		#p_portfolio .panel a {
			text-decoration: none;
			opacity: 0.8;
		}

		#p_portfolio .panel a:hover {
			opacity: 1;
		}

			#p_portfolio .panel div img {
				border: 1px solid #444;
				width: 149px;
				height: 100px;
				box-shadow: 0 0 5px 1px #111;
			}

			#p_portfolio .panel div a div {
				position: relative;
				width: 133px;
				height: 30px;
				margin: -38px 0 0 1px;
				background: url(../img/item_bg.png);
				color: #fff;
				text-decoration: none;
				text-align: left;
				padding: 4px 8px;
				overflow: hidden;
			}

				#p_portfolio .panel div a div span {
					font-size: 11px;
					color: #768A88;
					display: block;
				}

	.panelScrollBts-portfolio {
		float: left;
		margin: 5px 0 20px 595px;
	}

/*PAGE EQUIPA*/

#p_equipa {
	padding-bottom: 90px !important;
}

	#p_equipa .equipa-scroll {
		margin: 0 40px 0 94px;
		padding-top: 100px;
		color: #fff;
		overflow: hidden;
		white-space: nowrap;
	}

		#p_equipa .panel {
			width: 800px;
			display: inline-block;
			vertical-align: top;
		}

			#p_equipa .panel div {
				font-size: 12px;
				width: 266px;
				height: 150px;
				float: left;
				cursor: default;
			}

			#p_equipa .panel div:hover > img {
				opacity: 1;

			}

				#p_equipa .panel img {
					width: 62px;
					height: 68px;
					float: left;
					opacity: .3;
					-moz-transition: opacity .7s;
					-webkit-transition: opacity .7s;
					-o-transition: opacity .7s;
				}

				#p_equipa .panel div span {
					width: 180px;
					margin: 0 0 0 10px;
					text-transform: uppercase;
					float: left;
					white-space: normal;
				}

					#p_equipa .panel div span p {
						color: #768a88;
						margin-bottom: 6px;
					}

					#p_equipa .panel div span a {
						color: #fff;
						font-size: 11px;
						text-decoration: none;
					}

					#p_equipa .panel div span a:hover {
						color: #768a88;
					}

/*PAGE PUBLICACOES*/

#p_publicacoes {
	padding-bottom: 90px !important;
}

	#p_publicacoes .publicacoes-scroll {
		margin: 0 40px 0 94px;
		padding-top: 100px;
		color: #fff;
		overflow: hidden;
		white-space: nowrap;
	}

		#p_publicacoes .panel {
			width: 800px;
			display: inline-block;
			vertical-align: top;
		}

		#p_publicacoes .panel a {
			text-decoration: none;
			color: #fff;
		}

			#p_publicacoes .panel div {
				background: url(../img/icon_publicacoes.png) no-repeat;
				padding: 0 0 0 35px;
				font-size: 12px;
				width: 165px;
				height: 150px;
				float: left;
			}

				#p_publicacoes .panel div span {
					width: 140px;
					margin: 0 0 0 10px;
					text-transform: uppercase;
					float: left;
					white-space: normal;
				}

					#p_publicacoes .panel div span p {
						color: #768a88;
					}

/*PAGE CONTACTO*/

#p_contacto {
	height: 390px;
}

	#p_contacto .contacto-text {
		padding: 70px 70px 0 70px;
		color: #768a88;
		font-size: 12.5px;
		float: left;
		width: 270px;
		line-height: 20px;
	}

		#p_contacto .contacto-text strong {
			color: #fff;
			font-weight: normal;
		}

		#p_contacto .contacto-text .title {
			color: #a20000;
			font-size: 16px;
			font-weight: 700;
		}

	#p_contacto .contacto-form {
		padding: 70px 60px 0 60px;
		color: #fff;
		font-size: 16px;
		float: left;
	}
		#p_contacto .contacto-form table th {
			font-size: 12.5px;
			font-weight: 700;
			padding: 4px 0;
		}

		#p_contacto .contacto-form table td {
			padding-bottom: 8px;
		}

		#p_contacto .contacto-form table input {
			font-size: 12.5px;
			background: #2b2f2f;
			color: #fff;
			padding: 4px;
			border: none;
			width: 177px;
			outline: none;
		}

		#p_contacto .contacto-form table textarea {
			font-size: 12.5px;
			background: #2b2f2f;
			color: #fff;
			padding: 4px;
			border: none;
			width: 382px;
			outline: none;
		}

		#p_contacto .contacto-form div {
			float: right;
			text-align: right;
		}

			#p_contacto .contacto-form #bt_send {
				background: #a20000;
				color: #fff;
				padding: 4px;
				font-size: 11px;
				text-transform: uppercase;
				cursor: pointer;
				margin-left: 10px;
			}

			#p_contacto .contacto-form #bt_send:hover {
				background: #fff;
				color: #a20000;
			}

			#p_contacto .contacto-form #contacto-msg {
				color: #fff;
				padding: 4px;
				font-size: 12px;
			}

			#p_contacto .error {
				background: #A20000 !important;
			}


#bottom_logos {
	width:100%;
	height:45px;
	position:absolute;
	bottom:10px;
	left:0;
	background: url(../img/bottom_logos.png) center center no-repeat;
	z-index: 10;
	text-align: center;
}

	#bottom_logos a {
		display: inline-block;
		width: 250px;
		height: 44px;
	}

#details {
	display: none;
}

	#details_content {
		background: #000;
		width: 600px;
		height: 450px;
		overflow-y: scroll;
		color: #fff;
		font-size: 12px;
		box-shadow:	0 0 3px 1px #111;
		padding: 40px;
		text-align: left;
	}


#panelScrollBts {
	text-align: center;
}

	#panelScrollBts div {
		text-align: center;
		margin: 0 auto;
		width: 100px;
	}

	#panelScrollBts span {
		background: url(../img/nav_bullets.png) no-repeat;
		width: 9px;
		height: 9px;
		display: inline-block;
		margin: 0 7px;
		cursor: pointer;
	}

	#panelScrollBts span.sel {
		background-position: 0 -9px;
	}




.facebox-controls {
	position: absolute;
	right: 0;
	margin: 20px 0 0 0;
	z-index: 6;
}

	.facebox-controls div {
		padding: 8px;
		width: 13px;
		height: 13px;
		cursor: pointer;
		margin: 3px 0;
	}

	.facebox-controls .close {
		background: #000 url(../img/box_close.png) center center no-repeat;
	}

	.facebox-controls .next {
		background: #000 url(../img/box_next.png) 10px center no-repeat;
	}

	.facebox-controls .prev {
		background: #000 url(../img/box_prev.png) center center no-repeat;
	}

	.facebox-controls .more {
		background: #000 url(../img/box_more.png) center center no-repeat;
	}

.facebox-detail {
	position: absolute;
	z-index: 6;
	width: 350px;
	height: 400px;
	overflow: hidden;
	display: none;
}
	.facebox-detail .pane_up, .facebox-detail .pane_down {
		position: absolute;
		right: 0;
		cursor: pointer;
		font-size: 30px;
		display: none;
	}

	.facebox-detail .pane_up {
		margin: 375px 22px 0 0;
	}

	.facebox-detail .pane_down {
		margin: 375px 5px 0 0;
	}

	.facebox-detail .facebox-detail-content {
		position: absolute;
		background: url(../img/bg_detail.png);
		width: 350px;
		height: 400px;
		color: #fff;
		left: -350px;
		overflow: hidden;
	}

		.facebox-detail .facebox-detail-content div {
			margin: 30px;
		}


.facebox-numfotos {
	color: #768A88;
	font-size: 13px;
	text-transform: uppercase;
	height: 25px;
	display: block;
	font-weight: bold;
}

.facebox-news
{
	width: 700px;
	display: block;
	color: #fff;
	text-align: left;
}

	.facebox-head {
		background: #840000;
		width: 700px;
		height: 8px;
	}

	.facebox-news .facebox-image {
		display: block;
		height: 400px;
		width: 700px;
		z-index: 5;
		background: #000;
	}
		.facebox-news .facebox-image img
		{
			position: absolute;
			width: 700px;
			height: 400px;
			display: none;
		}

		.facebox-news .facebox-image iframe
		{
			position: absolute;
			width: 700px;
			height: 400px;
			display: none;
		}

	.facebox-news .news-title
	{
		background: #840000;
		display: block;
		margin: 0;
		padding: 20px 30px;
		font-size: 18px;
		font-weight: bold;
		text-transform: uppercase;
	}

		.facebox-news .news-title p
		{
			float: left;
			width: 500px;
			padding: 0 0 10px 0;
			margin: 0;
		}

		.facebox-news .news-title span
		{
			font-size: 12px;
			color: #fff;
			float: right;
		}

			.facebox-news .news-title label
			{
				font-size: 12px;
				color: #768A88;
				margin-right: 5px;
			}

	.facebox-news .news-descr
	{
		display: block;
		margin: 15px 30px 0 30px;
		padding: 0 0 30px 0;
		font-size: 12px;
		text-align: justify;
	}

	.facebox-descr table
	{
		width: 100%;
		text-transform: uppercase;
		font-size: 12px;
	}

		.facebox-descr table th
		{
			color: #4a0000;
			font-weight: bold;
		}

		.facebox-descr table td
		{
			color: #fff;
			font-weight: bold;
		}

	.facebox-nav {
		display: none;
	}

	.facebox-nav span {
		color: #555;
		font-size: 11px;
		margin-top: 2px;
		cursor: pointer;
	}

	.facebox-nav span:hover {
		color: #768A88;
	}

		.facebox-nav .prev {
			float: left;
		}

		.facebox-nav .next {
			float: right;
		}

.tooltip{
    position:absolute;
    z-index:999;
    left:-9999px;
    border:1px solid #444;
}

.tooltip p{
    margin:0;
    padding:0;
    color:#fff;
    background-color:#111;
    padding:4px;
	font-size: 11px;
	text-transform: uppercase;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 100%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

.invisible {
    visibility: hidden;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}


/* ==========================================================================
   Print styles
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow:none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
