/*
Global Stylesheet
Version: 1
Author: Fred Maya
Date: 2009
*/

/* -- Reset -- */
div,dl,dt,dd,ul,ol,lu,pre,form,fieldset,blockquote,th,td,h1,h2,h3,h4,h5,p,hr {
    margin:0;
    padding:0;
    }
table{border-spacing:0;}
caption,th{text-align:left;}
fieldset,img{border:0;}

/* -- Images -- */
.imglt { float: left; margin: 0 0.6em 0.8em 0; }
.imgrt { float: right; margin: 0 0 0.8em 0.6em; }

/* -- Text Elements -- */
p { font-size: 1em; line-height: 1.5em; margin: 0 0 1.2em 0; }
a, a.link { color: #fff; outline: none; text-decoration: none;  }
a:visited { color: #ddd; text-decoration: underline; }
a:hover { color: #B3DEEF; border: 0; text-decoration: underline; }
.txtct { text-align: center; }
.txtrt { text-align: right; }
small { font-size: 90%; }
dl,ul,ol,h1,h2,h3,h4,h5,h6,pre,blockquote,table { margin-bottom: 1.0em; }


/* 1) Site Structure
--------------------------------------- */
body {
	background: #040C0E url(../images/starrylight_rgb_bg.jpg) 60% 0 no-repeat;
	margin: 0;
	padding: 0;
	font: normal 75%/120% Arial, Helvetica, Verdana, sans-serif;
	}
html>body {
	font-size: 12px;
	}
#container {
	position: relative;
	background: url(../images/footer_bg.jpg) center bottom no-repeat;
	}
#content {
	width: 840px;
	margin: 54px auto 0 auto;
	position: relative;
	font-size: 1em;
	}
#title_heading {
	width: 196px;
	color: #8f8f8f;
	position: absolute;
	left: -6px;
	top: 0;
	margin: 0;
	padding: 0;
	}
	#title_heading span {
		display: block;
		margin-top: -14px;
		}
#title_summary {
	width: 560px;
	color: #8f8f8f;
	position: absolute;
	left: 236px;
	top: 4px;
	}
	#title_summary p {margin-top: -2px; line-height: 150%; font-size: 14px;}
	#title_summary span {background: #043647; padding: 1px 3px; margin: 0 1px; color: #fff;}
	#title_summary strong {color: #fff; font-weight: normal;}
	#title_summary p.contact_info { font-size: 17px; margin-top: 16px; }

#nav {
	position: absolute;
	top: -54px;
	left: 402px;
	padding: 0;
	margin: 0;
	z-index: 100;
	}
	#nav li {
		margin: 0 2px 0 0;
		padding: 0;
		display: inline;
		}
	#contactLink {
		background: transparent url(../images/topnav_contact_bt_bg.png) left bottom no-repeat;
		display: block;
		width: 122px;
		height: 26px;
		text-indent:-9000px;
		right: 0;
		position: absolute;
		}
	#contactLink:hover {background-position: left top;}
	.es_lang #contactLink {background-position: right bottom;}
	.es_lang #contactLink:hover {background-position: right top;}

#lang {
	position: absolute;
	top: -54px;
	left: -4px;
	z-index: 100;
	}
	#lang a:link,
	#lang a:visited {
		background: url(../images/topnav_language_full_bg.gif) left bottom no-repeat;
		display: block;
		width: 84px;
		height: 27px;
		text-indent:-9000px;		
		}
	#lang a:hover {background-position: left top;}
	#lang a.english_lang:link,
	#lang a.english_lang:visited {background-position: right bottom;}
	#lang a.english_lang:hover {background-position: right top;}
	
h2.projects {
	margin: 0;
	position: relative;
	padding: 160px 0 0 236px; /* Clear positioned heading content */
	}
	h2.projects span {font-size: 12px; font-family: Georgia, "Times New Roman", Times, serif; position: absolute; right: 16px; bottom: 19px; color: #1e3540; font-weight: normal;}
	h2.projects span:hover {color: #606060 !important;}
ol {
	padding: 0;
	list-style: none;
	margin-top: 0;
	}
	ol li.project_info {
		float: left;
		position: relative;
		width: 193px;
		min-height: 236px;
		color: #808080;
		margin: 0 13px 0 0;
		padding: 40px 6px 0 12px;
		line-height: 150%;
		background: url(../images/recentprojects_info_bg.png) right bottom no-repeat;
		}
		.project_info h3 {
			font-size: 16px;
			color: #dcdcdc;
			margin: 0 0 12px 0;
			padding: 12px 0 0 0;
			}
		.project_info strong {
			color: #d6d58f;
			}
	ol li.project_images {
		margin: 0;
		padding: 40px 0 0 0;
		}
		li.project_images a:link,
		li.project_images a:visited {
			padding: 4px;
			background: #1b2f39;
			margin: 0 0 0 12px;
			display: block;

			width: 286px;
			float: left;
			}
		li.project_images a:hover {background: #24bed6;}
	.visit_bt {
		display: block;
		background: url(../images/visitbt_bg.gif) left bottom no-repeat;
		height: 25px;
		width: 74px;
		text-indent:-9000px;
		margin: 0;
		position: absolute;
		bottom: 22px;
		left: 12px;
		}
	.visit_bt:hover {background-position: left top;}
	.es_lang .visit_bt {background-position: right bottom;}
	.es_lang .visit_bt:hover {background-position: right top;}

#footer {
	margin: 40px 0 0 0;
	padding: 0 0 16px 0;
	border-top: 1px solid #000;
	position: relative;
	}
	#footer p {
		margin: 12px 0 0 242px;
		padding: 10px 0;
		font-size: 12px;
		width: 580px;
		color: #4c8090;
		}
	#footer p strong {
		position: absolute;
		right: 0;
		top: 14px;
		}
	#footer .reusable {position: absolute; top: -22px; left: -6px;}
	#footer ol {
		margin: 0;
		border-top: 1px solid #162f3b;
		}
		#footer ol .thanks,
		#footer ol .gracias {
			float: left;
			position: relative;
			width: 206px;
			min-height: 190px;
			margin: 24px 0 0 0;
			padding: 4px 6px 0 12px;
			line-height: 150%;
			}
			.thanks img,
			.gracias img {
				position: absolute;
				right: 22px;
				bottom: -12px;
				}
		#footer ol .otherstuff {
			margin: 30px 0 0 0;
			}
		.otherstuff ul {
			float: left;
			width: 292px;
			padding: 0;
			margin: 0 0 0 13px;
			list-style: none;
			}
		.otherstuff li {
			line-height: normal;
			position: relative;
			margin: 0 0 4px 0;
			padding: 0;
			}
			.otherstuff li a:link,
			.otherstuff li a:visited {
				display: block;
				color: #808080;
				padding: 8px 10px;
				background: transparent url(../images/footli_50_bg.png) left top repeat;
				border: none;
				text-decoration: none;
				height: 30px;
				}
			.otherstuff li a:hover {color: #fff; background: #07191D;}
			.otherstuff li strong {color: #fff; text-transform: uppercase;}
			.otherstuff li span {position: absolute; right: 10px; top: 12px; color: #d6d58f;}
		

/* Contact Form */
#contactFormContainer {
	position: absolute;
	width: 434px;
	top: 0;
	left: 0px; z-index: 1000;
	}
#contactForm {
	display: none;
	margin: 0;
	border: 1px solid #043545;
	border-top: 0;
	background: url(../images/footli_50_bg.png) left top repeat;
	width: 432px;
	height: 174px; 
	padding: 0;
	position: relative;
	z-index: 1000;
	}
	#contactForm form {
		margin: 0;
		padding: 0;
		height: 173px;
		border-bottom: 1px solid #021a22;
		border-left: 1px solid #021a22;
		border-right: 1px solid #021a22;
		}
#contactForm fieldset {
	padding: 0;
	margin: 0;
	position: relative;
	border: none;
	}     
#contactForm label {
	margin: 0; 
	color: #d6d58f;
	font-weight: bold;
	text-transform: uppercase;
	padding: 0;
	font-size: 10px;
	}
label.error { font-weight:normal;color:red;text-align:left;width:240px; padding-left:25px; background: transparent url(../images/cancel.png) no-repeat scroll left; }
input.text-input { margin: 4px 0; padding: 2px; color: #333; width: 182px; background: #eee !important; font-family: Arial, Helvetica, sans-serif; border: 1px solid #043545; font-size: 12px; }

label#name_label      { position:absolute; top:10px; left:20px; }
input#name            { position:absolute; top:22px; left:20px; }
label#name_error      { position:absolute; top: 10px; left:70px; text-indent: 20px; }

label#email_label     { position:absolute; top:10px; left:224px; }
input#email           { position:absolute; top:22px; left:224px; }
label#email_error      { position:absolute; top:10px; left:300px; text-indent: 20px; }

label#comment_label { position:absolute; top:60px; left:20px; }
textarea#comment {
	position:absolute;
	top: 76px;
	left: 20px;
	width: 270px;
	background: #ccc;
	font-family: Arial, Helvetica, sans-serif;
	height: 70px;
	border: 1px solid #043545;
	background: #eee;
	font-size: 12px;
	color: #333;
	padding: 2px;
	}
label#comment_error { position:absolute; top:60px; left: 200px; text-indent: 20px; }
input.button { 
	position: absolute; 
	top: 76px; 
	left: 310px; 
	padding: 3px 6px;
	border: 1px solid #0D597C;
	margin: 0;
	color: #fff;
	background: #043545;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	width: 100px;
	height: 76px;
	text-transform: uppercase;
	font-family: Georgia, "Times New Roman", Times, serif;
	}
input.button:hover { 
	background: #032631 none repeat scroll 0% 0%; 
	color: #ddd;
	border: 1px solid #053f52;
	cursor: pointer; 
	}

#message { padding-top: 60px; padding-left: 86px; width:270px; margin: 0; color: #fff !important; }
#message h2	{ font-size:150%; margin-top: 0; margin-bottom: 12px; }
#message p { margin: 0; }
#checkmark { position:relative; top:-54px; left: -48px; }

.totop { display: block; position: fixed; bottom: -2px; right: 0px; }


/*ColorBox Core Style
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative; overflow:visible;}
#cboxLoadedContent{overflow:auto;}
#cboxLoadedContent iframe{display:block; width:100%; height:100%; border:0;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
#cboxOverlay{background:#fff;}
#colorbox{}
    #cboxContent{margin-top:32px;}
        #cboxLoadedContent{background:#fff; padding:1px;}
        #cboxLoadingGraphic{background:url(../images/loading.gif) center center no-repeat;}
        #cboxLoadingOverlay{background:#000;}
        #cboxTitle{position:absolute; top:-22px; left:0; color:#000;}
        #cboxCurrent{position:absolute; top:-22px; right:205px; text-indent:-9999px;}
        #cboxSlideshow, #cboxPrevious, #cboxNext, #cboxClose{text-indent:-9999px; width:20px; height:20px; position:absolute; top:-20px; background:url(../images/controls.png) 0 0 no-repeat;}
        #cboxPrevious{background-position:0px 0px; right:44px;}
        #cboxPrevious.hover{background-position:0px -25px;}
        #cboxNext{background-position:-25px 0px; right:22px;}
        #cboxNext.hover{background-position:-25px -25px;}
        #cboxClose{background-position:-50px 0px; right:0;}
        #cboxClose.hover{background-position:-50px -25px;}
        .cboxSlideshow_on #cboxPrevious, .cboxSlideshow_off #cboxPrevious{right:66px;}
        .cboxSlideshow_on #cboxSlideshow{background-position:-75px -25px; right:44px;}
        .cboxSlideshow_on #cboxSlideshow.hover{background-position:-100px -25px;}
        .cboxSlideshow_off #cboxSlideshow{background-position:-100px 0px; right:44px;}
        .cboxSlideshow_off #cboxSlideshow.hover{background-position:-75px -25px;}

#colorbox .insidepage {
	width: auto;
	margin: 0;
	color: #ddd;
	padding: 22px 18px 16px 18px;
	background: #202022;
	font: 12px/130% normal Verdana, Geneva, sans-serif;
	}
	#colorbox .insidepage p { margin-bottom: 1.6em;}
	#colorbox .insidepage h3 {margin: 16px 0 0; font-size: 16px;}
	#colorbox .insidepage h2 {color: #fff; text-shadow: none;}*/


/* 1) Fixes:Global
--------------------------------------- */
.clear {
	clear: both;
	line-height: 0px;
	display: block;
	}
	
#js_lang_loadcheck {width: 2px;}

::-moz-selection{background: #24BED6;color: #111;}
::selection {background: #24BED6;color: #111;}
