﻿body {
	background: #e5e5e5 url('images/body-background.jpg') repeat-x;
	font-family: Arial, Tahoma, Helvetica, sans-serif;
	font-size: 11px;
}
.alignTop {
	vertical-align:top;
}
.alignMiddle {
	vertical-align:middle;
}

.align-right {
    text-align: right;
}

.align-center {
    text-align: center !important;
}

.clear {
    clear: both;
}

/****************************************
 * Layout comum
 **/
#wrapper {
	width: 969px;
	margin: 15px auto;	
	position: relative;
}

    #logo {
        position: absolute;
        float: left;
        top: 0;
        margin: -6px 0 2px;
    }
    
	#banner-container {
		width: 969px;
		height: 128px;
		background: transparent url('images/banner-background.png') left top no-repeat;
		padding: 5px 0 0 6px;
		margin-bottom: -5px;
	}

/****************************************
 * Homepage layout
 **/			
#homepage-content {
	width: 969px;
	height: 425px;
	background: transparent url('images/homepage-content-background.png') left top no-repeat;
}

	#bottom-container #areas-menu-wrapper {	
	    padding-top: 13px;
	    margin-left: 14px;
	    margin-bottom: 8px;
	    width: 939px;	
	}
	
	#bottom-container ul.areas-menu {    
		position: relative
	}
	
	#bottom-container ul.areas-menu li.area-menu-item {
		display: block;
		width: 150px;
		height: 116px;
		margin: 10px 8px 8px 0;
		overflow: hidden;		
		cursor: pointer;
	}
    
    #bottom-container ul.areas-menu li.area-menu-item a {
		color:#FFF;
		text-decoration: none;
	}
    #bottom-container ul.areas-menu li.area-menu-item a:hover {
		color:#FFF;
		text-decoration: none;
    }    
#ofertas-container {
	float: left;
	width: 329px;
	height: 276px;
	margin-left: 8px;
}

#bottom-middle-container {
	float: left;
	width: 270px;
	height: 276px;
	margin-left: 8px;
}
	#parcerias-outer-container {	
		height: 123px;			
		width: 270px;
	}
	
		#parcerias-left-container {
			width: 131px;
			height: 123px;
			float: left;
		}
		
		#parcerias-right-container {
			width: 131px;
			height: 123px;
			float: left;
			margin-left: 8px;
		}
		
	#contactos-container {
		clear: left;
		height: 110px;
		margin-top: 8px;
	}
	
#noticias-container {
	float: left;
	width: 328px;
	height: 276px;
	margin-left: 8px;
}

/* Titulos das àreas da homepage (contactos, notícias, ofertas) */
h3.area-header span {
    display: none;
}

/****************************************
 * Inner page layout
 **/
#bottom-container-inner {
	padding: 0;
	margin: 0;
	width: 968px;
	background: white url('images/main-content-repeat.png') left top repeat-y;
}

	#bottom-container-inner #main-content-container {
		padding: 0;
		margin: 0;
		padding-top: 15px;
		width: 968px;
		background: transparent url('images/main-content-top.png') left top no-repeat;	}

		#bottom-container-inner #main-content-bottom {
			padding: 0;
			margin: 0;
			width: 968px;
			height: 15px;
			background: white url('images/main-content-bottom.png') left top no-repeat;
		}
		 
			#bottom-container-inner #sidebar {
				margin-left: 13px;
				width: 211px;	
				float: left;
				padding: 30px 0 0 10px;
			}

			#bottom-container-inner #main-content {
				margin: 0 13px 0 230px;
	            min-height: 420px;
			}

/****************************************
 * Main top menu
 **/
ul.main-menu {
	padding: 0; 
	width: 750px; 
	margin: 0px 0 0 220px; 
	list-style: none; 
	height: 28px; 
	position: relative;
	z-index: 500; 
	display: inline-block;
}

	ul.main-menu a:hover {
		visibility: visible; 
		position: relative; 
		z-index:200;
	}
	
	ul.main-menu li:hover {
		position: relative; 
		z-index:200;
	}
	
	ul.main-menu table {
		border-collapse: collapse; 
		width: 0; 
		height: 0; 
		position: absolute; 
		top: 0; 
		left: 0;
	}
	
	ul.main-menu li.main-top-item {
		display: block;
		float: left;
		width: 141px;
		height: 30px;
		margin-top: 2px;
	}
	
	ul.main-menu li.main-top-item a.top-link {
		display: block;
		font-size: 10px;	
		height: 29px; 
		width: 100px;	
		padding: 3px 20px 0 20px; 	
		line-height:30px; 
		float: left; 
		text-transform: uppercase;
		text-decoration: none;
		font-weight: bold;
		text-align: center;
		color: #333;
	}

	ul.main-menu li a.top-link:hover {
		color:#000; 
	}

    ul.main-menu li > a.top-link {       		
		background: url('images/top-menu-background.png') top left no-repeat; 
    }

	ul.main-menu li:hover > a.top-link {
		color:#000; 
		background: url('images/top-menu-background-hover.png') top left no-repeat;
	}

	ul.main-menu ul,
	ul.main-menu :hover ul ul {
		position: absolute; 
		left: -9999px; 
		top: -9999px; 
		height: 0; 
		margin: 0; 
		padding: 0; 
		list-style:none;
	}
			
		ul.main-menu :hover ul.sub-menu {
			left: 0; 
			margin-left: 1px;
			top: 32px; 
			white-space: nowrap; 
			width: 140px; 
			height: auto; 
			z-index: 300;  
		}
		
		ul.main-menu :hover ul.sub-menu li {
			display: block; 
			float: left; 
			width: 140px;
			background: url('images/sub-menu-background.png');
		}
		
		ul.main-menu :hover ul.sub-menu li.bottom-default {
		}
		
		ul.main-menu :hover ul.sub-menu li.bottom-end {
			background: url('images/sub-menu-background-bottom.png') left bottom no-repeat;
			width: 140px;
			padding-bottom: 8px;
		}
		
		ul.main-menu :hover ul.sub-menu li span {
			display: block; 
			float: left; 
			width: 110px; 
		}
		
		ul.main-menu :hover ul.sub-menu li a {
			display: block; 
			position: relative;
			width: 140px; 
			height: 12px;
			padding: 5px 0;
			margin-right: -30px;
			color: #333; 
			text-decoration: none;
			text-transform: none;
			font-weight: normal;
			text-align: center;			
		}
		
		ul.main-menu :hover ul.sub-menu li a:hover {
			color: #000;	
		}

/****************************************
 * Menu central das àreas
 **/
#bottom-container ul.areas-menu li.area-menu-item h2 {
    font-size: 13px;
    display: block; 
    width: 110px;
    float: left;
    text-align: left;
    height: 100%;
    color: #fff;
    padding: 0;
    margin: 70px 0px 0px 5px; 
    line-height: 1.7em;
}
    
#bottom-container ul.areas-menu li.area-menu-item ul {
    margin: 15px 0 15px 160px;
    padding-left: 10px;
    text-align: left;
    height: 85px;
    display: block;
}

.areas-menu ul {
    display: block;
}

.areas-menu ul li {
    height: 13px;
    font-size: 10px;       
    color: #fff;
}


.areas-menu li#systems-engineering { background: url('images/se-background.png') top left no-repeat; }

.areas-menu li#operations-support { background: url('images/os-background.png') top left no-repeat; }
        
.areas-menu li#application-management { background: url('images/am-background.png') top left no-repeat; }    

.areas-menu li#quality-management { background: url('images/qm-background.png') top left no-repeat; }

.areas-menu li#business-solutions { background: url('images/bs-background.png') top left no-repeat; }

.areas-menu li#software-consulting { background: url('images/sc-background.png') top left no-repeat; }

/****************************************
 * Ofertas de Emprego
 **/ 
#ofertas-container {
	margin-left: 14px; 
}
    
    #ofertas-container h3.area-header img {
        margin: 15px 0 10px 22px;
    }
    
	.anuncios-recrutamento-hp {
	    font-size: 11px;
	    width: 280px;
	    margin: 0 20px 0 25px;
	}

    .anuncios-recrutamento-hp tr.footer td {
        vertical-align: bottom;
        height: 30px;
    }
    
    .anuncios-recrutamento-hp td {
        font-size: 10px;
        color: #333;
        height: 25px;
        border-top: #ccc 1px solid;
        vertical-align: middle;
    }
    
        .anuncios-recrutamento-hp td a {
            color: #333;
            text-decoration: none;
        }
        
        .anuncios-recrutamento-hp td a:hover { text-decoration: underline; }
        
/****************************************
 * Contactos
 **/   
#contactos-container { 
    font-size: 9px;
    padding-left: 10px;
    line-height: 10px;
}
    
    #contactos-container h3.area-header img {
        margin-top: 8px;
        height: 27px;
        width: 75px;
    }
    
    #contactos-container h3 {
        text-transform: uppercase;
    }
    
        #contactos-container h3 a {
            font-weight: bold;
            color: #000;
            height: 18px;
            vertical-align: top;
        }
            #contactos-container h3 a img {
                margin-top: -3px;
            }
            
    #contactos-container p {            
        display: block;
        border-top: 1px solid #ccc;
        text-align: center;
        margin: 5px 10px 0 0;
        padding-top: 3px;
    }
 .contactos {
 	line-height:1.5em !important;
 }
 
 
 
 
/****************************************
 * Noticias
 **/    
#noticias-container h3.area-header {
    background: white;
    z-index: 100;
}

#noticias-container h3.area-header img {
    margin: 15px 0 10px 22px;
    overflow: hidden;
} 
 
#noticias-container #ticker-noticias {
    list-style-type: none;
    height: 205px;
    overflow: hidden;
}

#noticias-container #ticker-noticias li {
    margin: 0 10px; 
}

#noticias-container .block_noticia_hp {
    padding: 0 10px;
	width: 328px;
	height: 97px !important;
	overflow: hidden;
}

#noticias-container h4 {
	color: #1f5182;
}

#noticias-container h4 a {
	font-size: 13px;
	font-weight: bold;
	color: #1f5182;
}

#noticias-container .block-noticia-body {
	color: #333;
	font-size: 11px;
	margin: 10px 0 15px;
	width: 308px;
	text-align: justify;
}

#noticias-container .block-noticia-body a {
	color: #369;
	text-decoration: none;
	font-weight: bold;
}

#noticias-container .block-noticia-body a:hover {
	text-decoration: underline;
}

/****************************************
 * Parcerias Left
 **/   
#parcerias-left-container {
}

/****************************************
 * Parcerias Right
 **/
#parcerias-right-container {
}

/****************************************
 * Menus laterais das páginas secundárias
 **/ 
#sidebar p {
    color: #747474;
	font-size: 12px;
	font-weight: bold;
}
 
#sidebar ul {
	list-style: none;
	margin-top: 20px;
}

#sidebar ul li {
	list-style: none;
	font-size: 10px;
	width: 189px;
}

#sidebar ul li a,
#sidebar ul li a:hover {
    display: block;
	width: 189px;
	height: 17px;
	color: #747474;
	padding-top: 5px;	
	padding-left: 3px;
	text-decoration: none;
} 

#sidebar ul li a:hover,
#sidebar ul li.selected {
    background: #eaeaea url('images/sidebar-menu-background.png') left top no-repeat;
}

/****************************************
 * Conteúdos das páginas secundárias
 **/ 
#main-content {
	padding: 30px 15px 30px;	
}

#main-content p {
    color: #666;
    font-size: 11px;
	text-align: justify;
	margin: 15px 0;
	line-height: 1.5em;
}

#main-content ul  {	
	margin:20px;
	padding:0;
	margin-left:24px;
}

#main-content ul li {	
	color: #666;
	text-indent: 0px;
	line-height: 1.5em;
	list-style-image: url(images/bullet.png);
}


#main-content h1 {
	color: #1468b3;
	font-size:18px;
	margin-bottom:4px;
	font-weight:bold;
}


#main-content h2 {
	color: #66839e;
	font-size: 14px;
	padding: 20px 0 0;
	margin-bottom:-2px;
	font-weight:bold;
}

#main-content h3 {
	color: #666;
	font-size: 10px;
	padding: 20px 0 0;
	margin-bottom:-8px;
	font-size:11px;
	font-weight:bold;
}

#main-content h4 {
	color: #666;
	font-size: 11px;
}

#main-content a {
    color: #1468b3;
	text-decoration:none;
}

#main-content a:hover {
    color: #666;
}

/****************************************
 * Formulários
 **/
 .form {
     line-height: 30px;
     width: 500px; 
     margin: 0 auto;
 }
 
.form .form-label {
    font-weight: bold;
    display: inline-block;
    width: 100px;
	color: #333;
}

.form .form-field {
    font-size: 11px; 
    border: 1px solid #c3c3c3;
}


.form .button {
	font-weight: bold;
	color: #333;
	background: url(images/bg-botao.gif);
	padding: 3px 5px;
	border: 1px solid #ccc;
	font-size: 11px;
	margin-left: 10px;
}

.obs {
	font-size: 10px;
	font-weight: normal;
	color: #333;
}

.mensagem_erro {
	margin-top: 30px;
	padding: 6px;
	width: 510px;
	color: #f33;
	font-size: 11px;
	text-align: left;
}

.mensagem_erro ul li {
	list-style: none;
	background: url(images/bullet_seta_red.gif) left top no-repeat;
	padding-left: 15px;
}

.mensagem_obrigado {
	float: left;
	width: 650px;
	padding-top: 100px;
	font-weight: bold;
	text-align: center;
}

.form .buttons-panel {
    text-align: right;
    margin-right: 29px;
}
    
.form .nome-textbox { width: 363px; }
.form .email-textbox { width: 126px; }
.form .telemovel-textbox { width: 127px; }
.form .disponibilidade-select { width: 130px; }
.form .escritorio-select { width: 131px; }
.form .interesse-select { width: 367px; }
.form .sumario-textbox { width: 363px; }
.form .cv-fileupload { width: 367px; }

/*******************************/
.list_itens {
	text-indent: 0;
}

.list_itens a:hover {
	color: #000;
}

li.block-artigo,
li.block-revista,
li.block-noticia {
    height: 120px;
    display: block;
    margin-right: 20px;  
    text-indent: 0 !important; 
}

    li.block-artigo img.thumbnail-artigo,
    li.block-revista img.thumbnail-revista,
    li.block-noticia img.thumbnail-noticia {
	    float: left;
    }

    li.block-artigo .corpo-artigo,
    li.block-revista .corpo-revista,
    li.block-noticia .corpo-noticia {
        margin-left: 120px;   
    }

        li.block-artigo .corpo-artigo a,
        li.block-revista .corpo-revista a,
        li.block-noticia .corpo-noticia a {
            font-size: 13px;
            color: #999;
            text-decoration: none;
        }
        
        li.block-artigo .corpo-artigo a:hover,
        li.block-revista .corpo-revista a:hover,
        li.block-noticia .corpo-noticia a:hover {
            color: #000;
        }
        
        li.block-artigo h2.titulo-artigo,
        li.block-revista h2.titulo-revista,
        li.block-noticia h2.titulo-noticia {
            padding: 0 !important;
            margin: 0 0 0 2px !important;
            
        }

            li.block-artigo h2.titulo-artigo a,
            li.block-revista h2.titulo-revista a,
            li.block-noticia h2.titulo-noticia a {
                text-decoration: underline;
                color: #505050;
            }
            
        li.block-artigo span.data-artigo,
        li.block-revista span.data-revista,
        li.block-noticia span.data-noticia {
            font-size: 10px;
	        color: #999;
        }
		
		div.corpo-noticia span.data-noticia  {
			line-height:2.5em;
		}
        
.block-noticia h4 { margin-bottom: 3px; }
        
.texto-noticia img {
    float: left;
    margin: 0 10px 10px 0;
}

.texto-noticia {
    text-align: justify;
}

/*numeração de páginas*/
.page_number {
	clear: both;
	margin: 0 auto;
	text-align: center;
	font-size: 10px;
	color: #333;
	white-space: nowrap;
	margin-top: 30px;
}

.page_number a {
	color: #505050;
	text-decoration: underline;
	padding: 0 5px;
}

.page_number a:hover {
	color: #000;
}

.actual_page {
	color: #999;
	font-weight: bold;
	padding: 0 5px;
}



/****************************************
 * Ofertas de Emprego
 **/
.recrutamento_list {
	width: 100%;
	border: none;
}

.recrutamento_list tr td {
	padding: 6px 10px;
	border-top: 1px solid #f2f2f2;
}
.job_title {
	color: #505050;
	font-weight: bold;
	font-size: 12px;
	border-bottom: 1px dotted #ccc;
}

.job_details {
	text-align: right;
	border-bottom: 1px dotted #ccc;
}

.job_description_area {
	padding: 6px 10px;
}

ul.job_description {
	margin-left: 20px;
}

ul.job_description li {
	margin-bottom: 6px;
	list-style: url(images/bullet_seta.gif);
	text-align: justify;
}

.job_separator {
	height: 35px;
	vertical-align: top;
	text-align: right;
	padding-top: 0;
}


/****************************************
 * Buttons
 **/

a.button {
    background: transparent url('images/buttonRight.png') no-repeat scroll top right;
    color: #333;
    display: block;
    float: left;
    font: normal 10px;
	font-weight:bold;
    height: 21px;
    margin-right: 6px;
    padding-right: 15px; /* sliding doors padding */
    text-decoration: none;
}

a.button span {
    background: transparent url('images/buttonLeft.png') no-repeat;
    display: block;
    line-height: 10px;
    padding: 5px 0 6px 15px;
} 
a.button:active {
    background-position: bottom right;
    color: #000;
    outline: none; /* hide dotted outline in Firefox */
}

a.button:active span {
    background-position: bottom left;
    padding: 5px 0 6px 15px; /* push text down 1px */
} 

.link-colaborador {
    font-size: 9px;
    float: right;
    margin: -8px 7px 0 0;   
}
.link-colaborador a {
    color: #333;
    text-decoration: none;   
}
.link-colaborador a:hover {
    text-decoration: underline;
}

.footer {
    font-size: 9px;
    color: #333;
    padding: 0 5px;
}

.footer a {
    color: #333;
    text-decoration: none;
}

.footer a:hover {
    text-decoration: underline;
}

.footer div.copy {
    float: right;
}

.map_info_window
{
    width: 146px;
    height: 33px;
    background: #fff url(images/logo-noesis.png) top left no-repeat;
}
