/* Layout */

* { margin: 0; padding: 0; }

body { 
	background: #000000 url(http://codex.pt/imagens/bg.gif) repeat-y 50% 0; 
	margin: 0 auto; 
	padding: 0; 
	text-align: center; 
	color: #333; 
	font-family: verdana, arial, tahoma, sans-serif; 
	font-size: 70%; 
	letter-spacing: 0;
}

div#container { 
	width: 760px; 
	background: #ffffff; 
	margin: 0 auto; 
	text-align: left; 
	height: 100%; 
	min-height: 100%; 
	padding: 0; 
	position: relative;
	display: table;
}

div#header { 
	width: 760px; 
	height: 119px; 
	background: url(http://codex.pt/imagens/header-bg.gif) repeat-x; 
	margin-bottom: -38px; 
	float: left; 
} 

div#header a { padding: 0; }

div.header-logo a { 
	width: 240px; 
	height: 80px; 
	background: url(http://codex.pt/imagens/codex.gif) no-repeat; 
	float: left; 
}

div.headerb { 
	float: left; 
	width: 518px; 
	padding-right: 10px; 
}

a:hover { cursor: pointer; }

a img { border: 0; }

div.branco { 
	width: 510px; 
	height: 28px; 
	background-color: #fff; 
	float: left; 
}

div.formulario a { 
	width: 134px; 
	height: 19px; 
	background: url(http://codex.pt/imagens/formulario.gif) bottom no-repeat; 
	float: left; 
	margin-left: 380px; 
	margin-top: 33px; 
}

div.formulario a:hover { background: url(http://codex.pt/imagens/formulario.gif) top no-repeat; }

div.telefone { 
	width: 209px; 
	height: 27px; 
	/*background: url(http://codex.pt/imagens/telefone.gif) center no-repeat; */
	float: left; 
	margin-left: 170px; 
	display: inline;  
}

	div.email a { width: 96px; height: 27px; background: url(http://codex.pt/imagens/email.gif) bottom no-repeat; float: right; }
		div.email a:hover { background: url(http://codex.pt/imagens/email.gif) top no-repeat; }

div#sidebar { float: left; width: 239px; color: inherit; margin: 0; background: #fff; position: relative; }
	.newsletter a { background: #fff url(http://codex.pt/imagens/newsletter.gif) no-repeat 0 0; width: 83px; height: 21px; display: block; text-indent: -9999px; overflow: hidden; }
	
	input#news-nome, input#news-email { margin: 1px 0; padding: 1px 6px; }

div#content { float: right; width: 510px; padding-right: 10px; background: #FFFFFF; }
	div#content p { margin: 5px 0; padding: 0; }
	div#content a, a:link, a:visited, a:active { color: #333; text-decoration: underline; font-weight: bold; background-color: inherit; }
		div#content a:hover { text-decoration: none; }
	.bold-destaque { background: #231f20; color: #fff; }
	strong, b { font-weight: bold; }
	.imagens { clear: both; padding: 2px 6px; margin: 2px 0; }
		.imagens img { margin: 1px -1px; }
	#imagensf { clear: both; padding: 2px 6px; padding-top: 70px; margin: 2px 0; text-align: center; background: #001530 url(../imagens/otic_fundo.jpg) 0 0 no-repeat; height: 220px; }
	img.news { float: right; display: inline; margin: 0; padding-bottom: 0; padding-left: 10px; }
	.bloco1 { clear: both; padding: 2px 6px; margin: 2px 0; position: relative; }
	.bloco2 { clear: both; color: inherit; background: #f0f0f0; padding: 6px 6px; margin: 2px 0 10px 0; position: relative; }
	.bloconews { float: left; clear: left; color: inherit; background: #f0f0f0; padding: 2px 2px 0 6px; margin: 2px 0 10px 0; position: relative; width: 500px; }
	.bloco3 { clear: both; color: inherit; background: #f8f5f5; padding: 2px 6px; margin: 2px 0; position: relative; }
		.alt { padding: 2px 0; margin: 0; position: relative; }
		.altmin { height: 127px; min-height: 127px; }
	.bloco4 { clear: both; color: inherit; background: #FFFFFF; padding: 0 6px; margin: 0; position: relative; }
		.alt { padding: 0 0; margin: 0; position: relative; }
	.coluna-esq { float: left; width: 50%; margin-bottom: 0; }
	.coluna-dir { float: right; width: 50%; margin-bottom: 0; }
	h1 { font-size: 13px; text-transform: uppercase; display: inline; color: #ff0066; background-color: inherit; }
		h1 span, div.email span, div.formulario span, div.header-logo span { display: none; }
	h2 { font-size: 13px; text-transform: uppercase; display: inline; color: #000; background-color: inherit; }
	div#content ul { list-style: none; margin: 0 0 10px 0; padding: 0; }
	table#colunas3 { padding: 0; margin: 0; }
		table#colunas3 td.c2 { padding-left: 8px; }
		table#colunas3 td.c3 { padding-left: 8px; }
	
	#content .news-eventos { width: 249px; float: right; }
	#content .news-eventos a, #content .categorias a, #content .clientes a  { text-decoration: none; font-weight: normal; background: #e9e9e9; color: inherit; }
	#content .categorias a.on { text-decoration: none; font-weight: normal; background: #000000; color: #FFFFFF; }
	#content span.on { font-weight: normal; background: #000000; color: #FFFFFF; }
	#content .news-eventos a:hover, #content .categorias a:hover, #content .clientes a:hover { text-decoration: none; font-weight: normal; background: #000000; color: #FFFFFF; }
	#newsletter-form { padding-left: 10px; float: left; }
	
	#content ul.categorias { width: 20em; }
	#content ul.categorias li { float: left; width: 10em; }

	#content ul.clientes { width: 40em; }
	#content ul.clientes li { float: left; width: 20em; margin-bottom: 0; }
	
	#vcard { background: url(http://codex.pt/imagens/contactos-icon-vcard.gif) no-repeat 0 10px; }
	#vcard a { text-indent: -9999px; display: block; width: 48px; height: 28px; overflow: hidden; }
	
	#vermapa { background: url(http://codex.pt/imagens/vermapa.gif) no-repeat -2px 10px; }
	#vermapa a { text-indent: -9999px; display: block; width: 55px; height: 28px; overflow: hidden; }
	
	.breadcrumbs { color: inherit; background: #f0f0f0; width: 500px; float: left; text-align: right; font-size: 10px; padding: 5px 10px 5px 0; margin-top: 40px; display: block; }
	#footer { color: inherit; background: #f0f0f0; width: 500px; float: left; margin: 2px 0 20px 0; padding: 2px 0 2px 10px; clear: both; display: block; }
	
	p.casestudies {
		background: url(http://codex.pt/imagens/casestudies.jpg) 0 18px no-repeat;
		width: 494px;
		height: 180px;
		margin-top: 60px;
	}
	
	p.casestudies a {
		display: block;
		text-indent: -999px;
		overflow: hidden;
		width: 494px;
		height: 160px;
	}

/* -----------menu-----------  */
div#menu-flash { height: 300px; margin-bottom: 55px; }

/* -----------form----------- */
#formulario { margin-left: 10px; margin-top: 0; }
#contacto-form input.submit, #proposta-form input.submit { width: 50px; margin: 5px 0; height: 18px; }

	input { background: #000000; color: #fff; border: none; padding: 2px 5px; height: 16px; font-size: 11px; }
	input.submit { background: #000000; color: #fff; text-align: center; width: 20px; height: 20px; }
		input:hover, input.submit:hover { background: #231f20; }
	input.submitnewsletter { background: #000000; color: #fff; text-align: center; width: 20px; height: 18px; line-height: 2px; }
	label { display: block; margin-top: 10px; }
	textarea { background: #000000; color: #fff; border: none; padding: 2px 5px; }
	
	.caixa { width: 480px; }

/* -----------geral----------- */
.bleft { float: left; height: 123px; background: #f0f0f0; width: 351px; padding-left: 6px; padding-top: 6px; } 
.cleft { float: left; height: 117px; background: #f0f0f0; width: 117px; padding: 6px 2px 6px 10px; margin-left: -3px; } 
.fleft { float: left; }
.fright { float: right; margin-top: 0; margin-bottom: 8px; }
.fright img { margin: 0; }
.clean { clear: both; }

/* Saltar para o conteúdo - Link invisivel - Para utilizadores de Screen Readers */
#skiptocontent a, #skiptocontent a:hover, #skiptocontent a:visited { position: absolute; left: 0; top: -1500px; width: 1px; height: 1px; overflow: hidden; }
	#skiptocontent a:active { width: auto; height: auto; } 

/* -----------sIFR----------- */
/* These are standard sIFR styles... do not modify */
.sIFR-flash { visibility: visible !important; margin: 0; }
.sIFR-replaced { visibility: visible !important; }
span.sIFR-alternate { position: absolute; left: 0; top: 0; width: 0; height: 0; display: block; overflow: hidden; }
/* These "decoy" styles are used to hide the browser text before it is replaced... the negative-letter spacing in this case is used to make the browser text metrics match up with the sIFR text metrics since the sIFR text in this example is so much narrower... your own settings may vary... any weird sizing issues you may run into are usually fixed by tweaking these decoy styles */
.sIFR-hasFlash h1 { visibility: hidden; }
.sIFR-hasFlash h2 { visibility: hidden; }
.sIFR-hasFlash .telefone p { visibility: hidden; letter-spacing: -6px; font-size: 14px; }
.sIFR-hasFlash h3 { visibility: hidden; letter-spacing: -6px; font-size: 25px; }
.sIFR-hasFlash h4 { visibility: hidden; letter-spacing: -5px; font-size: 21px; }
.sIFR-hasFlash h5#pullquote { letter-spacing: -4px; visibility: hidden; font-size: 24px; }