/* CSS RESET =============================================== */
body,div,dl,dt,dd,ul,ol,li,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,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; margin:0;}
q:before,q:after { content:'';}
abbr,acronym { border:0;}



/* GLOBAL CSS =============================================== */
html {
	height: 100%;
}
  

body {
	background: url(../images/bg.jpg) top center no-repeat #141414;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 14px;
	line-height: 22px;
	color: #8c8c8c;
	padding: 0px;
	margin: 0px;
	height: 100%;
}

p {
	margin: 0px 0px 20px;
}

a:link, a:visited, a:active {
	padding: 0px;
	margin: 0px;
	background: none;
	color: #D31000;
	text-decoration: none;
}
a:hover {
	color: #910b00;
	text-decoration: none;
}

img {
	border: 0px;
}


/********************/

.left {
	float: left;
	margin-right: 50px;
}

.right {
	float: right;
	margin-left: 20px;
}

.column.left {
	width: 425px;
	margin: 0;
}
.column.right {
	width: 430px;
	text-align: right;
}
.gallery-column.right {
	width: 485px;
	position: relative;
	text-align: right;
	margin: 0 -25px 0 -20px;
	padding-top: 10px;
}
.column.right p {
	margin-bottom: 10px;
}

.toggle img {
	filter:progid:DXImageTransform.Microsoft.Alpha(opacity=100);
	-moz-opacity: 1;
	opacity:1;
	/*margin: 5px 7px;*/
}

.toggle img:hover {
	filter:progid:DXImageTransform.Microsoft.Alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity:0.8;
}
	
/* TEXTSTYLE CSS upwards =============================================== */

h1 {
	font-family: 'AvenirLight', Calibri, Arial, San-serif;
	color: #fff;
	font-size: 26px;
	line-height: 30px;
	margin: 10px 0 25px;
}
h1 strong {
	font-family: 'AvenirRoman';
	font-weight: bolder;
}
h2 {
	font-family: 'AvenirLight', Calibri, Arial, San-serif;
	color: #ccc;
	font-size: 18px;
	line-height: 24px;
	margin-bottom: 30px;
}
h3 {
	font-family: 'AvenirLight', Calibri, Arial, San-serif;
	color: #707070;
	font-size: 16px;
	line-height: 30px;
	margin-bottom: 20px;
}

h3 span {
	color: #bbb;
}

/* divs */


#wrapper {
	width: 100%;
	position: relative;
	margin: 0px 0px -142px;
	min-height: 100%; 
	min-width: 960px;
	background: url(../images/gen-page-bg.png) repeat-x;
}
#wrapper.homepage {
	background: none;
}
#content-wrapper {
	width: 900px;
	margin: 0px auto;
	position: relative;
	z-index: 5;
}

#logo {
	position: relative;
	top: 25px;
	left: -51px;
	width: 319px;
	float: left;
}

#banner {
	margin: 30px 0px -30px;
	padding: 0px;
	width: 900px;
	height: 300px;
	z-index: -1;
	overflow: hidden;
}

#content {
	margin: 30px 0 0;
	padding: 30px 0px;
	text-align: left;
}

#content ul {
	margin: 0px 0px 20px 35px;
	padding: 0px;
}

#content li {
	list-style: url(../images/content-li.png) outside;
	padding-left: 4px;
	margin: 0px;
}

/* Portfolio */

#portfolio-items {
	margin: 0 -15px;
	float: left;
}
.portfolio-item p {
	font-size: 12px;
}
.portfolio {
	width: 415px;
	height: 150px; 
	padding: 5px 15px 5px 5px;
	margin: 8px 15px;
	overflow: hidden;
	background: #0f0f0f;
	float: left;
	font-size: 11px;
	color: #ababab;
	line-height: 18px;
}
.portfolio img {
	float: left; 
	margin-right: 20px;
	width: 230px !important;
	height: 150px !important;
}
.portfolio p {
	margin-bottom: 5px;
}
.portfolio p.title {
	color: #fff;
	font-size: 14px;
	padding-top: 5px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.portfolio p.read-more {
	text-align: right;
	font-size: 12px;
	color: #D31000;
}

/* footer */

.clear {
	clear: both;
}
	
.push {
	height: 142px;
	}


#footer {
	margin: 0px;
	padding: 0px 0px;
	width: 100%;
	font-size: 11px;
	line-height: 16px;
	background: #0d0d0d;
	border-top: 1px solid #3f3f3e;
	height: 130px;
	position:absolute;
	bottom:0px;
	color: #777;
}

#footer table {
	margin-top: -12px;
}
#footer table td {
	padding: 20px 0px;
	vertical-align: top;
}
#footer table td.with-border {
	border-top: 3px solid #a0a0a0
}
#footer table table, #footer table table td {
	margin: 0;
	padding: 0;
	text-align: right;
}
#footer table table td.title {
	color: #c0c0c0;
	font-weight: bold;
	text-align: left;
}
#footer .foot_content {
	width: 900px;
	padding: 0px 0px;
	margin: 10px auto;
}

#footer p.copyright {
	text-align: right;
}

#footer p {
	padding: 0px;
	margin: 0px;
}

#footer h3 {
	padding: 0px;
	margin: 0px;
	color: #d31000;
	font-size: 14px;
	line-height: 18px;
}


#footer a {
	color: #777;
}

#footer a:hover {
	color: #555;
}



/* Top Nav elements enclosed down ================================*/

#nav { /* all lists */
	padding: 0px;
	margin: 0px auto;
	z-index: 100;
}

#nav ul {
	float: right;
	padding: 0px;
	margin: 0 -17px 0 0;
	z-index: 100;
}

#nav li { /* all list items */
	float: left;
	margin:0;
	padding:0;
	width:auto; /* width needed or else Opera goes nuts */
}


/* first level */
#nav li a:link, #nav li a:visited {
	display:block;
	text-decoration:none;
	padding: 126px 17px 9px;
	color: #fff;
	font-family: Tahoma, Arial;
	font-size: 14px;
	text-shadow: 2px 2px #000;
	margin-right: 5px;
}

#nav li a.first:link, #nav li a.first:visited {
	border: 0px;
}

#nav li a:hover, #nav li a.active:link, #nav li a.active:visited {
	color: #fff;
	background: url(../images/menu-hover-bg.png) bottom left no-repeat;
	filter:progid:DXImageTransform.Microsoft.Alpha(opacity=100);
	-moz-opacity: 1;
	opacity:1;
}

/* second level - dropdown menu */
#nav li ul {
	background: url(../images/blank.gif) repeat;
	position: absolute;
	width: 10em;
	left: -999em;
	padding: 0px;
	margin: 0px;
}

#nav li:hover ul {
	left: auto;
}


#nav li ul a{
	background: #5b5b5b;
	filter:progid:DXImageTransform.Microsoft.Alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;
	width:195px;
	height:25px;
	padding-left:18px;
	line-height: 25px;
	color:#fff;
	text-decoration:none;
	font-size:13px;
	margin-bottom: 1px;
}


/* Top Nav elements enclosed up */

@font-face {
    font-family: 'AvenirLight';
    src: url('ael____-webfont.eot');
    src: url('ael____-webfont.eot?#iefix') format('embedded-opentype'),
         url('ael____-webfont.woff') format('woff'),
         url('ael____-webfont.ttf') format('truetype'),
         url('ael____-webfont.svg#AvenirLight') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'AvenirRoman';
    src: url('aer____-webfont.eot');
    src: url('aer____-webfont.eot?#iefix') format('embedded-opentype'),
         url('aer____-webfont.woff') format('woff'),
         url('aer____-webfont.ttf') format('truetype'),
         url('aer____-webfont.svg#AvenirRoman') format('svg');
    font-weight: normal;
    font-style: normal;
}

/* Contact form */
form table {
	float: right;
}

input[type="text"], textarea {
	margin: 5px 0px;
	width: 330px;
	padding: 12px 20px;
	color: #c0c0c0;
	font-family: Arial, Helvetica, sans-serif;
	text-align: left;
	/*border: 1px solid #CCC;*/
	border: none;
	font-size: 14px;
	background: #3e3e3e;
}

select {
	margin: 5px 0px;
	padding: 0px 0px 0px 8px;
	height: 25px;
	color: #fff;
	font-family: Arial, Helvetica, sans-serif;
	text-align: left;
	/*border: 1px solid #CCC;*/
	border: none;
	font-size: 12px;
	background: #5c5c56;
}

input.medium {
	width: 100px;
}
input.short {
	width: 60px;
}

input[type="submit"] {
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	padding: 15px 20px;
	background: #e1000f;
	border: 0px;
	float: left;
}

input[type="submit"]:hover {
	background: #a6000b;
}

input[type="image"] {
	margin-top: 5px;
	float: right;
}

input[type="image"]:hover {
	filter:progid:DXImageTransform.Microsoft.Alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity:0.8;
}

textarea {
	margin-bottom: 12px;
	height: 140px;
}

.required {
	color: red;
}