/*
 1. body/container
 2. header
 3. content
 3.1 content - homepage
 3.2 content - secondary
 3.3 content - primary
 3.4 content - general elements
 5. clear & footer
*/

/* 1. body/container */
body {
	background: #1f381b url(/images/bg_body.png) center 0 no-repeat;
	color: #454545;
	font: 100%/1em Arial, Verdana, sans-serif;
	margin: 0;
}

div#bg_body {
  position: absolute;
  width: 100%;
  height: 7.4375em;
  background: #192314;
  left: 0;
  top: 426px;
  z-index: 1;
  opacity: 0.7;
}

div#container {
	width: 59.625em;
	margin: 0 auto;
	overflow: hidden;
  position: relative;
  z-index: 2;
}

/* 2. header */
div#header {
	width: 100%;
	position: relative;
  float: left;
  height: 6.75em;
  padding: 4.375em 0 0;
  background: url(/images/bg_header.gif) no-repeat;
}

div#header h1, div#header p.skip {
	margin: 0;
}

div#header h1 span, div#header p.skip a {
	position: absolute;
	overflow: hidden;
	width: 0;
}

div#header h1 a {
	position: absolute;
	left: 0;
	top: 0;
	width: 495px;
	height: 55px;
	background: 0;
}

div#header p.skip a {
	top: 0;
	left: 0;
	color: #fff;
	background: #101010;
	text-decoration: none;
	font-size: 1em;
	padding: 0.25em 0;
	text-align: center;
}

div#header p.skip a:active, div#header p.skip a:focus {
	overflow: visible;
	width: 100%;
}

div#header h2 {
  font-style: italic;
  font-weight: normal;
  font-family: Arial;
  font-size: 1.1em;
  margin: 0 0 1.95em 0.6em;
  color: #959d8e;
}

div#header ul.menu {
	margin: 0;
	list-style: none;
  background: #101010 url(/images/bg_menu_right.gif) right 0 no-repeat;
  float: left;
  width: 100%;
  height: 3.625em;
}

div#header ul.menu li {
	float: left;
  font-size: 0.8em;
  text-transform: uppercase;
  font-weight: bold;
  background: #101010;
}

div#header ul.menu li:first-child {
  background: #101010 url(/images/bg_menu_left.gif) left 0 no-repeat;
}

div#header ul.menu li a {
  display: block;
  padding: 1.56em 1.56em;
}

div#header ul.menu li a:link, div#header ul.menu li a:visited {
  color: #5f5f5f; 
  text-decoration: none;
}

div#header ul.menu li a:hover, div#header ul.menu li a:active, div#header ul.menu li a.active {
  color: #fff;   
  background: 0;
}

/* 3. content */
div#content {
	width: 59.625em;
  background: #fff url(/images/bg_content_left.gif) 0 bottom no-repeat;
  float: left;
  margin-bottom: 0.3125em;
}

div#content_wrapper {
  width: 57.125em;
  margin: 0 auto;
  padding: 1.25em 0;
}

div#bg_content {
  width: 100%;
  height: 5px;
  background: url(/images/bg_content_right.gif) right 0 no-repeat;
  float: left;
}

/* 3.1 content - homepage */
div#content.homepage {
  position: relative;  
}

div#spotlight {
  float: left;
  width: 914px;
  height: 347px;
  overflow: hidden;
  margin: 0 0 1.25em;
}

div#content div#spotlight h2 {
  background: 0;
  font-size: 1.875em;
  padding: 0;
  color: #fff;
  margin: 0 0 0.625em;
}

div#content div#spotlight p {
  color: #fff;
  font-size: 0.9375em;
  line-height: 1.5em;
}

div#content div#spotlight img {
  margin: 0;
  width: 914px;
  height: 347px;
}

div#spotlight div {
  background: url(/images/bg_spotlight.png);
  height: 79px;
  margin-top: -7.45em;
  position: relative;
  width: 894px;
  overflow: hidden;
  float: left;
  padding: 20px 10px;
}

div#action {
  width: 18em;
  background: #dcd9d5;
  float: right;
  padding: 1em 1em 0;
  margin: 0 0 0.625em;
}

div#action div {
  width: 272px;
  padding: 8px;
  height: 204px;
  margin: 0 0 0.625em;
  overflow: hidden;
  background: #b6b3af;
}

div#action p {
  font-size: 1em;
  color: #363636;
  font-weight: bold;
}

div#action div p {
  background: #0e4058;
  color: #fff;
  margin-top: -3.45em;
  padding: 0.625em;
  float: right;
  position: relative;
  font-weight: normal;
}

div#action div img {
  width: 272px;
  height: 204px;
}

div#action div strong {
  font-size: 1.75em;
}

div#content.homepage div#content_secondary h2 {
  background: 0;
  font-size: 1.375em;
  padding: 0;
  margin: 0 0 0.625em;
  font-weight: bold;
}

div#call_to_action {
  background: url(/images/bg_call_to_action.gif) center 0 no-repeat;
  padding: 1.65em 0 0;
  width: 16.5em;
  position: absolute;
  right: 100px;
  top: -10px;
}

div#call_to_action p {
  font: normal 1em Georgia;
  margin: 0;
}

div#call_to_action a {
  color: #fff;
  text-decoration: none;
  font-weight: normal;
  padding: 0.625em;
  background: #0e4058;
  display: inline-block;
}

/* 3.2  content - secondary */
div#content_secondary {
  float: right;
  width: 27.3125em;
}

div#content.homepage div#content_secondary {
  width: 20em; 
}

div#content.contact div#content_secondary {
  background: #0e4058;
  padding: 1.25em;
  width: 24.8125em;
}

div#content.contact div#content_secondary p {
  color: #fff;
}

div#content.contact div#content_secondary p.message {
  color: #3b73a7;
  margin: 0 0 1.25em;
}

div#content.contact div#content_secondary h3 {
  font-size: 1.5em;
  color: #fff;
  margin: 0 0 0.625em;
}

div#content_secondary ul.menu {
  margin: 0;
  list-style: none;
}

div#content_secondary ul.menu a:link, div#content_secondary ul.menu a:visited {
  text-decoration: none;  
}

div#content_secondary ul.menu a:hover, div#content_secondary ul.menu a:active, div#content_secondary ul.menu a.active {
  color: #fff;
  background: #000;  
}

/* 3.3 content - primary */
div#content_primary {
  float: left;
  width: 27.3125em;
  padding: 0 0.625em;
}

div#content.homepage div#content_primary {
  padding: 0;
  width: 35.625em; 
}

div#content h2 {
  background: #dedcd8;
  font-size: 1.5em;
  padding: 0.625em 0.3125em;
  margin: 0 0 0.625em;
}

div#content.contact h2 {
  margin-left: -0.4em;
  width: 100%;
}

div#content.homepage div#content_primary h2 {
  background: 0;
  font-size: 1.375em;
  padding: 0 0 0.9375em;
  margin: 0 0 0.9375em;
  font-weight: bold;
  border-bottom: 2px solid #c6c6c6;
}

div#content_projects {
  width: 58.625em;
  float: left;
  margin: 1.25em 0 0 -1.5em;
  overflow: hidden;
}

div.project {
  width: 445px;
  height: 21.25em;
  float: left;
  overflow: hidden;
  margin: 0 0 0.9375em 1.5em;
}

div.project img {
  margin: 0;
  width: 445px;
  height: 295px;
}

div.project p {
  background: #0e4058;
  color: #fff;
  padding: 0.625em;
  margin: 0;
  height: 2.25em;
  overflow: hidden;
  border-top: 2px solid #fff;
}

div#content_products {
  width: 59.4375em;
  float: left;
  margin: 1.25em 0 0 -2.3125em;
  overflow: hidden;
}

div.product {
  width: 280px;
  height: 15.25em;
  float: left;
  overflow: hidden;
  margin: 0 0 1.875em 2.3125em;
}

div.product img {
  margin: 0;
  width: 280px;
  height: 210px;
}

div.product p {
  background: #0e4058;
  color: #fff;
  padding: 0.625em;
  margin: 0;
  overflow: hidden;
  border-top: 2px solid #fff;
}

/* 3.4 content - general elements */
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 0.62em;
  font-weight: normal;
  color: #5e7746;
  font-family: Georgia;
}

h3 {
	font-size: 1.1em;
}

p {
	font-size: 0.75em;
	margin: 0 0 0.94em;
}

a:link, a:visited {
	color: #454545;
	text-decoration: underline;
  font-weight: bold;
}

a:hover, a:active {
  color: #4a7542;
}

img {
	display: block;
	margin: 0 0 0.94em;
	border: 0;
}

ul, ol {
	margin: 0 0 0.94em 1.56em;
	padding: 0;
}

ul li, ol li {
	font-size: 0.75em;
	margin: 0;
}

ul li ul li, ol li ol li {
	font-size: 1em;
}

table {
	margin: 0 0 0.94em;
}

table th, table td {
	font-size: 0.75em;
	text-align: left;
	vertical-align: top;
}

form, form p {
	border: 0;
	margin: 0;
	padding: 0;
}

label {
	width: 12.75em;
	padding-right: 0.5em;
	float: left;
  font-weight: bold;
  cursor: pointer;
}

input, textarea, select {
	background: #fff;
	border: 1px solid #454545;
	margin: 0 0 1em;
}

input:focus, input.focus, textarea:focus, select:focus {
	border: 1px solid #dedcd8;
}

p.submit input {
	color: #0e4058;
	cursor: pointer;
  background: #031026;
	margin-left: 23.5em;
  border: 0;
}

p.submit input:hover, p.submit input.hover {
	color: #fff;
}

ul.error_message {
  margin: 0 0 1.56em 1.56em;
}

ul.error_message li {
  color: #fff;
}

form p span {
  float: left;
  width: 18.75em;
}

form p span label {
  width: 250px;
  margin: 0 0 0 0.5em;
}

form p span input {
  clear: left;
  float: left;
}

h3.title {
  margin: 0 0 0.31em;
}

h3.title a {
  background: 0;
  color: #000;
  text-decoration: none;
}

p.date {
  font-size: 0.7em;
}

span.type {
  display: none;
}

.sIFR-replaced {
  overflow: hidden;
}

/* 4. footer */
div#footer {
	width: 100%;
	background: #162c15;
  float: left;
  position: relative;
  z-index: 2;
  padding: 1.56em 0;
}

div#footer div#footer_wrapper {
  margin: 0 auto;
  width: 57.125em;
  float: none;
}

div#footer h2 {
  color: #fefefe;
  font: normal 1.1em Arial;
  margin: 0 0 1.25em;
  text-transform: uppercase;
}

div#footer p {
  color: #29582c;
}

div#footer p a {
  color: #29582c;
  text-decoration: none;
}

div#footer ul.menu {
  margin: 0;
  list-style: none;
}

div#footer ul.menu li {
  margin-bottom: 0.3125em;
  font-size: 0.7em;
}

div#footer ul.menu li a {
  color: #fefefe; 
  text-decoration: none;
  font-weight: normal;
}

div#footer div {
  float: left;
  margin-left: 5em;
}

div#footer div:first-child {
  margin-left: 0;
}

div#footer address {
  font-size: 0.7em;
  color: #fff;
  font-style: normal;
}

div#footer a {
  font-weight: normal;
  text-decoration: none;
  color: #fff;
}

span.address, span.contact {
  float: left;
  width: 20em;
}

span.address span {
  width: 7.5em;
  float: left;
  color: #29582c;
}

span.contact span {
  width: 4em;
  float: left;
  color: #29582c;  
}
