@import url(http://fonts.googleapis.com/css?family=Lato:400,700,900);

html		{ width:100%; height:100%; }
body		{ min-width:965px; min-height:475px; margin:0; font-family:'Titillium Web', sans-serif; color:#000; background-color:#FFF; }

*			{ outline:none; }
img			{ border:0px; }
form		{ margin:0px; padding:0px; }

.clear		{ clear:both; }

body
{
	scrollbar-face-color:#000; 
	scrollbar-highlight-color:#000;
	scrollbar-shadow-color:#000; 
	scrollbar-3dlight-color:#000;
	scrollbar-arrow-color:#FFF; 
	scrollbar-track-color:#FFF;
	scrollbar-darkshadow-color:#000;
}
::-webkit-scrollbar              { width:8px; height:8px; }
::-webkit-scrollbar-button       {}
::-webkit-scrollbar-track        { background-color:#FFF; }
::-webkit-scrollbar-track-piece  {}
::-webkit-scrollbar-thumb        { background-color:#000; }
::-webkit-scrollbar-corner       {}
::-webkit-resizer                {}

/* -------------------| LINKS */
a:link						{ text-decoration: none; color:#ccc; }
a:visited					{ text-decoration: none; color:#ccc; }
a:hover						{ text-decoration: underline; color:#ccc; }
a:active					{ text-decoration: underline; color:#ccc; }

a.a-jAlert:link				{ text-decoration: none; color:#f08511; }
a.a-jAlert:visited			{ text-decoration: none; color:#f08511; }
a.a-jAlert:hover			{ text-decoration: underline; color:#f08511; }
a.a-jAlert:active			{ text-decoration: underline; color:#f08511; }




/***************************************************/
/********************* CONTENT *********************/
/***************************************************/
#body
{
	display:none;
}
#header
{
	min-width:985px;
	height:60px;
}
#logo
{
	float:left;
	width:245px;
	height:60px;
	padding-left:110px;
	background:url('../img/site/top-logo.jpg') no-repeat right center scroll transparent;
}
#logo a
{
	display:block;
	width:100%;
	height:100%;
}
#menu
{
	float:right;
	position:relative;
	width:565px;
	height:60px;
}
#topmenu
{
	position:absolute;
	bottom:3px;
	display:inline-block;
	width:565px;
	min-width:565px;
	margin:0;
	padding:0;
}
#topmenu li
{
	float:left;
	list-style:none;
	padding:0;
	margin:0 48px 0 0;
}
#topmenu li a
{
	color:#444;
	font-weight:400;
	text-transform:lowercase;
}
#topmenu li a:hover, #topmenu li a:active
{
	color:#000;
	text-decoration:none;
}
#topmenu li.current
{
	color:#000;
	border-bottom:2px solid #000;
}
#topmenu li.current a
{
	color:#000;
}
#langs
{
	float:right;
	position:relative;
	width:51px;
	min-width:51px;
	height:100%;
}
#langs > div
{
	position:absolute;
	bottom:0;
}
#langs a
{
	color:#000;
	font-weight:200;
	font-size:14px;
	text-transform:uppercase;
	padding:0 5px;
}
#langs a:hover
{
	color:#FFF;
	font-weight:400;
	background-color:#222;
	text-decoration:none;
}
#langs a.current
{
	color:#FFF;
	font-weight:700;
	background-color:#000;
}
#content
{
	position:relative;
	overflow:hidden;
	min-width:985px;
	height:650px;
	max-height:650px;
	min-height:400px;
	-webkit-background-size:cover;
	-moz-background-size:cover;
	-o-background-size:cover;
	background-size:cover;
}
/* HOME */
#content div.cycle-slideshow
{
	overflow:hidden;
	height:100%;
}
#content div.cycle-loading:after
{
	content: 'A carregar...';
	font-weight:700;
	text-transform:uppercase;
	color:#FFF;
	background:url('../img/site/bg-almostblack-70op.png') repeat;
	padding:10px;
	z-index:500;
	position:absolute;
	top:10px;
	right:10px;
}
#content #cycle-controls-wrapper
{
	position:absolute;
	right:0;
	bottom:110px;
	width:420px;
	height:180px;
	z-index:100;
}
#content #cycle-caption
{
	width:350px;
	height:120px;
	padding:10px;
	padding-right:200px;
	background:url('../img/site/bg-almostblack-70op.png') repeat;
	color:#FFF;
	font-size:12px;
}
#content #cycle-caption #text
{
	height:76px;
	overflow:auto;
}
#content #cycle-caption h1
{
	margin:0;
	font-size:29px;
	font-weight:900;
	text-transform:uppercase;
}
#content #cycle-caption p
{
	margin:0;
}
#content #cycle-prevnext-wrapper
{
	display:inline-block;
	background:url('../img/site/bg-almostblack-70op.png') repeat;
	margin-top:4px;
}
#content #cycle-prev
{
	float:left;
	width:40px;
	height:36px;
	cursor:pointer;
}
#content #cycle-prev img
{
	margin-top:6.5px;
	margin-left:8.5px;
}
#content #cycle-sep
{
	float:left;
	width:1px;
	height:36px;
	background:url('../img/site/arrow-sep.png') no-repeat center center scroll transparent;
}
#content #cycle-next
{
	float:left;
	width:40px;
	height:36px;
	text-align:right;
	cursor:pointer;
}
#content #cycle-next img
{
	margin-top:6.5px;
	margin-right:8.5px;
}
/* QUEM SOMOS */
#content-box-white
{
	position:absolute;
	top:125px;
	margin-left:300px;
	width:660px;
	height:250px;
	font-size:14px;
	background-color:#FFF;
	padding:5px 10px;
}
#content-box-white h1
{
	font-size:25px;
	font-weight:600;
	text-transform:uppercase;
	margin:0 0 10px 0;
	height:38px;
}
#content-box-white #text
{
	overflow:auto;
	height:202px;
}
#content-box-white #text p
{
	margin:0;
	padding:0;
}
#cycle-caption td:last-child
{
	padding-left:10px;
}
/* SERVIÇOS */
#content #cycle-controls-wrapper-serv
{
	position:absolute;
	top:125px;
	margin-left:300px;
	width:670px;
	height:210px;
	font-size:12px;
	z-index:100;
}
#content #cycle-caption-serv
{
	float:left;
	width:624px;
	height:200px;
	background-color:#FFF;
	color:#000;
	padding:5px;
}
#content #cycle-caption-serv h1
{
	font-size:25px;
	font-weight:600;
	text-transform:uppercase;
	margin:0 0 10px 0;
}
#content #cycle-caption-serv #text
{
	overflow:auto;
	height:152px;
}
#content #cycle-caption-serv p
{
	margin:0;
	padding:0;
}
#content #cycle-prevnext-wrapper-serv
{
	float:left;
	background:url('../img/site/bg-almostblack-70op.png') repeat;
	width:36px;
}
#content #cycle-prev-serv
{
	float:left;
	width:36px;
	height:40px;
	cursor:pointer;
}
#content #cycle-prev-serv img
{
	margin-top:8.5px;
	margin-left:6.5px;
}
#content #cycle-sep-serv
{
	float:left;
	width:36px;
	height:1px;
	background:url('../img/site/arrow-sep-horz.png') no-repeat center center scroll transparent;
}
#content #cycle-next-serv
{
	position:relative;
	float:left;
	width:36px;
	height:40px;
	cursor:pointer;
}
#content #cycle-next-serv img
{
	position:absolute;
	left:6.5px;
	bottom:8.5px;
}
/* PORTEFÓLIO */
#map-wrapper
{
	float:left;
	width:75%;
	height:100%;
}
#list-wrapper
{
	float:left;
	width:25%;
	height:100%;
	background-color:#FFF;
}
#list-wrapper #text
{
	height:100%;
	overflow:auto;
}
#list-wrapper ul
{
	margin:0;
	padding:5px 10px;
}
#list-wrapper li
{
	padding-left:23px;
	line-height:30px;
	list-style:none;
	background:url('../img/site/li-icon.png') no-repeat left 6px;
}
#list-wrapper a
{
	display:block;
	width:100%;
	height:100%;
	font-size:16px;
	color:#000;
}
#list-wrapper a:hover, #list-wrapper a:active
{
	font-weight:600;
	text-decoration:none;
}
#scroller
{
	position:relative;
	width:100%;
	height:100%;
	overflow-x:scroll;
    overflow-y:hidden;
	white-space:nowrap;
}
#scroller img
{
	height:100%;
	margin-right:5px;
}
#seemap
{
	height:36px;
}
#seemap a
{
	display:block;
	padding:0 8px;
	width:100%;
	height:100%;
	color:#FFF;
	font-size:14px;
	text-transform:uppercase;
	line-height:36px;
}
#seemap a:hover, #seemap a:active
{
	text-decoration:none;
}
/* CONTACTOS */
#map
{
	width:100%;
	height:100%;
}

#footer
{
	height:20px;
	line-height:20px;
	text-align:right;
	font-size:10px;
	color:#999;
}
#footer a
{
	font-weight:700;
	color:#999;
}


/***************************************************/
/********************* OTHERS **********************/
/***************************************************/

/* SHADOWBOX */
.shadowbox										{ margin:0; border-collapse:collapse; width:100%; }
.shadowbox td									{ margin:0; padding:0; }
.shadowbox .corner								{ width:32px; height:32px; background:url('../img/shadowbox/corner.png') no-repeat; }
.shadowbox .horizontal							{ background:url('../img/shadowbox/horizontal.png') repeat-x; }
.shadowbox .vertical							{ background:url('../img/shadowbox/vertical.png') repeat-y; }
.shadowbox .center-content						{ position:relative; background:url('../img/shadowbox/bgcolor.png'); }
/* -> Corner Shadow */
.shadowbox .corner.left_top						{ background-position:top left; }
.shadowbox .corner.right_top					{ background-position:top right; }
.shadowbox .corner.left_bottom					{ background-position:bottom left; }
.shadowbox .corner.right_bottom					{ background-position:bottom right; }
/* -> Horizontal Shadow */
.shadowbox .horizontal.top						{ background-position:top left; }
.shadowbox .horizontal.bottom					{ background-position:bottom left; }
/* -> Vertical Shadow */
.shadowbox .vertical.left						{ background-position:top left; }
.shadowbox .vertical.right						{ background-position:top right; }


/* Messages */
div.dialog										{ margin:10px 0; padding:10px; text-align:left; color:#333; }
div.dialog.done									{ background:#e2ebb9; border:1px solid #92a441; }
div.dialog.error								{ background:#f6d0cd; border:1px solid #ff331e; }
div.dialog.notes								{ background:#dfebff; border:1px solid #9fc0f5; }
div.dialog p									{ margin:5px 0; }

/* Confirmation */
#popup_wrapper									{ position:fixed; top:0; left:0; right:0; bottom:0; background:url('../dotcontrol/img/jquery_popup/bg-jquery.alert.png'); width:100%; z-index:99999; }
#popup_container								{ position:relative; font-family: Arial, sans-serif; font-size: 12px; min-width: 300px; max-width: 600px; background: #FFF; border: solid 5px #999; color: #000; -moz-border-radius: 5px; -webkit-border-radius: 5px; border-radius: 5px; }
#popup_title									{ font-size: 14px; font-weight: bold; text-align: center; line-height: 1.75em; color: #666; background: #CCC url('../dotcontrol/img/jquery_popup/title.gif') top repeat-x; border: solid 1px #FFF; border-bottom: solid 1px #999; cursor: default; padding: 0em; margin: 0em; } 
#popup_content									{ background: 16px 16px no-repeat url('../dotcontrol/img/jquery_popup/info.gif'); padding: 1em 1.75em; margin: 0em; }
#popup_content.alert							{ background-image: url('../dotcontrol/img/jquery_popup/info.gif'); } 
#popup_content.confirm							{ background-image: url('../dotcontrol/img/jquery_popup/important.gif'); }
#popup_content.prompt							{ background-image: url('../dotcontrol/img/jquery_popup/help.gif'); }
#popup_message									{ padding-left: 48px; }
#popup_panel									{ text-align: center;margin: 1em 0em 0em 1em; }
#popup_panel .btn								{ background:url('../dotcontrol/img/jquery_popup/bg-buttons.jpg') repeat-x; border:1px solid #c5c5c5; padding:3px 10px 3px 10px; font-size:9px; font-family:tahoma; text-transform:uppercase; cursor:pointer; }
#popup_panel .btn:hover							{ background:url('../dotcontrol/img/jquery_popup/bg-buttons.jpg') repeat-x; border:1px solid #a5a5a5; color:#343434; padding:3px 10px 3px 10px; font-size:9px; font-family:tahoma; text-transform:uppercase; cursor:pointer; }
#popup_prompt									{ margin: .5em 0em; }

/* Tooltips */
.tipsy											{ padding: 5px; font-size: 10px; position: absolute; z-index: 100000; }
.tipsy-inner									{ padding: 5px 8px 4px 8px; background-color:#FFF; color:#000; max-width: 200px; text-align: center; }
/*.tipsy-inner									{ border-radius: 3px; -moz-border-radius:3px; -webkit-border-radius:3px; }*/
.tipsy-arrow									{ position: absolute; background: url('../dotcontrol/img/tipsy_w.gif') no-repeat top left; width: 9px; height: 5px; }
.tipsy-n .tipsy-arrow							{ top: 0; left: 50%; margin-left: -4px; }
.tipsy-nw .tipsy-arrow							{ top: 0; left: 10px; }
.tipsy-ne .tipsy-arrow							{ top: 0; right: 10px; }
.tipsy-s .tipsy-arrow							{ bottom: 0; left: 50%; margin-left: -4px; background-position: bottom left; }
.tipsy-sw .tipsy-arrow							{ bottom: 0; left: 10px; background-position: bottom left; }
.tipsy-se .tipsy-arrow							{ bottom: 0; right: 10px; background-position: bottom left; }
.tipsy-e .tipsy-arrow							{ top: 50%; margin-top: -4px; right: 0; width: 5px; height: 9px; background-position: top right; }
.tipsy-w .tipsy-arrow							{ top: 50%; margin-top: -4px; left: 0; width: 5px; height: 9px; }



/* Pagination */
table.pagination								{ border-collapse:collapse; float:left; margin-top:10px; font:bold 11px; }
table.pagination td								{ border:1px solid #f4e0da; padding:0; text-align:center; width:20px; height:20px; }
table.pagination td.submit						{ cursor:pointer; }
table.pagination td.arrow						{ background-color:#ebc6ba; }
table.pagination td.arrow.submit				{ background-color:#bd411b; }
table.pagination td.arrow.init					{ background-image:url('http://www.dotpro.pt/img/initPag.gif'); }
table.pagination td.arrow.end					{ background-image:url('http://www.dotpro.pt/img/endPag.gif'); }
table.pagination td.number						{ background:#fff; color:#333; height:17px; }
table.pagination td.number.submit:hover			{ background:#f4e0da; }
table.pagination td.number.current				{ color:#fff; background:#bd411b; }
table.pagination td.more						{ padding-top:4px; height:16px; border:0; }
table.pagination td.comboPag					{ border:0; padding-left:5px; }

/* Scroll */
.jspContainer											{ overflow:hidden; position:relative; }
.jspPane												{ position:absolute; }
.jspVerticalBar											{ position:absolute; top:0; right:0; width:2px; height:100%; background:transparent; }
.jspHorizontalBar										{ position:absolute; bottom:0; left:0; width:100%; height:16px; background:transparent; }
.jspVerticalBar *, .jspHorizontalBar *					{ margin:0; padding:0; }
.jspCap													{ display:none; }
.jspHorizontalBar .jspCap								{ float:left; }
.jspTrack												{ background:url('../img/site/track-bg.png') center center repeat-y scroll; position:relative; }
.jspDrag												{ background:#000; position:relative; top:0; left:0; cursor:pointer; }
#cycle-caption .jspDrag									{ background:#FFF; }
.jspHorizontalBar .jspTrack, .jspHorizontalBar .jspDrag	{ float:left; height:100%; }
.jspArrow												{ background:#50506d; text-indent:-20000px; display:block; cursor:pointer; }
.jspArrow .jspDisabled									{ cursor:default; background:#80808d; }
.jspVerticalBar .jspArrow								{ height:16px; }
.jspHorizontalBar .jspArrow								{ width:16px; float:left; height:100%; }
.jspVerticalBar .jspArrow:focus							{ outline:none; }
.jspCorner												{ background:#eeeef4; float:left; height:100%; }
* html .jspCorner										{ margin:0 -3px 00; }