
/**
 * Reset styles
 */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, code, del, dfn, em, img, q, dl, dt, dd, ol, ul, li,
fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	margin:0;
	padding:0;
	border:0;
	font-weight:inherit;
	font-style:inherit;
	font-size:100%;
	font-family:inherit;
	vertical-align:baseline;
}
a img {border:none;}


/**
 * Basics
 */

body {
	font-size: 75%;
	color: #000;
	background: #e2e2e2 url(/images/design/bg.jpg) repeat-x;
	font-family: verdana, Arial, sans-serif;
	margin: 1.5em 0;
	line-height: 1.5;
}
h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
	color: #ff7e00;
}
h1 {
	font-size: 3em;
	line-height: 1;
	margin-bottom: 0.5em;
}
h2 {
	font-size: 1.5em;
	margin-bottom: 0.5em;
	padding-top: 0.25em;
}
p {
	margin:0 0 1.5em;
}
p img {
	float: left;
	margin: 1.5em 1.5em 1.5em 0;
	padding:0;
}
p img.right {
	float: right;
	margin: 1.5em 0 1.5em 1.5em;
}
a:focus, a:hover {
	color: #000;
	text-decoration: underline;
}
a {
	color: #0784b4;
	text-decoration: underline;
}
strong {
	font-weight: bold;
}
em, dfn {
	font-style: italic;
}
li ul, li ol {
	margin: 0 1.5em;
}
ul, ol {
	margin: 0 1.5em 1.5em 1.5em;
}

blockquote {
	margin: -.5em 3em 1em;
	padding: 1px 2em;
	background: #d5e7f3 url(/images/design/double-quotes.gif) 5px 5px no-repeat;
}
blockquote  p {
	margin: 1em 0;
}

.clear { clear: both; }

.container {
	width: 960px;
	margin: 0 auto;
}


/**
 * Header
 */

#header {
	height: 101px;
}

#logo h1 a {
	display: block;
	height: 46px;
	width: 175px;
	background: url(/images/design/logo.gif) 0 0 no-repeat;
	margin: 15px 0 0 40px;
	text-indent: -3333em;
	position: absolute;
}
	
#search {
	width: 230px;
	height: 35px;
	display: block;
	margin: 15px 0 0 720px;
	position: absolute;
}
.search_btn {
	height: 21px;
	width: 70px;
	background: url(/images/design/search_btn.gif) no-repeat center top;
	font-size: 0px;
	border: none;
	position: absolute;
	margin: 0px 0 0 5px;
	text-indent: -1000em;
	cursor: pointer; /* hand-shaped cursor */
	cursor: hand; /* for IE 5.x */
}
#search_field {
	border:1px solid #1d3547;
	height: 17px;
}

#nav {
	overflow: hidden;
	height: 36px;
	background: url(/images/design/menu.gif) top right no-repeat;
	width: 754px;
	position: absolute;
	margin: 65px 0 0 190px;
}
#nav li {
	display:block;
	position: absolute;
	margin-left: 207px;
}
#nav li a {
	display: block;
	width: 100%;
	height: 100%;
	text-indent: -999em;
}

#area1 { left:   0px;  top: 0px;  width: 58px;  height: 36px;}
#area2 { left:  64px;  top: 0px;  width: 88px;  height: 36px;}
#area3 { left: 157px;  top: 0px;  width: 60px;  height: 36px;}
#area4 { left: 223px;  top: 0px;  width: 84px;  height: 36px;}
#area5 { left: 313px;  top: 0px;  width: 81px;  height: 36px;}
#area6 { left: 400px;  top: 0px;  width: 59px;  height: 36px;}
#area7 { left: 465px;  top: 0px;  width: 82px;  height: 36px;}

#nav li a:hover, #nav li a.active { background-image: url(/images/design/menu.gif); }
#area1 a:hover, #area1 a.active { background-position:    0px -36px; }
#area2 a:hover, #area2 a.active { background-position:  -64px -36px; }
#area3 a:hover, #area3 a.active { background-position: -157px -36px; }
#area4 a:hover, #area4 a.active { background-position: -223px -36px; }
#area5 a:hover, #area5 a.active { background-position: -313px -36px; }
#area6 a:hover, #area6 a.active { background-position: -400px -36px; }
#area7 a:hover, #area7 a.active { background-position: -465px -36px; }


/**
 * Content body
 */

#body {
	background-color: #fff;
	padding: 0 0 40px 20px;
}

#right_shadow {
	background: url(/images/design/right_shadow.gif) 0 0 no-repeat;
	display: block;
	margin-left: 960px;
	position: absolute;
	width: 13px; height: 626px;
}
#left_shadow {
	background: url(/images/design/left_shadow.gif) 0 0 no-repeat;
	display: block;
	margin-left: -13px;
	position: absolute;
	width: 13px; height: 626px;
}


/**
 * Pre-main: after the header but before the double column block (e.g. introduction)
 */

#premain.standard {
	height: 140px;
}
#premain.standard #slogan {
	position: relative;
	padding: 0;
	top: 51px; left: -33px;
	width: 973px; height: 89px;
	margin-bottom: 40px;
	margin-right: -40px;
	background: url(/images/design/premain-bottom.jpg) 0 0 no-repeat;
}

#premain.standard #slogan .text {
	position: relative;
	left: -706px; top: -69px;
	height: 70px;
	background: url(/images/design/premain-top.jpg) right top no-repeat;
	display: block;
	margin-left: -999em;
}

#introduction {
	position: relative;
	top: 0px; left: -53px;
	width: 973px; height: 309px;
	margin-right: -40px;
	background: url(/images/design/introduction.jpg) 0 0 no-repeat;
}

#introduction #companyslogan {
	position: relative;
	top: 29px; left: 493px;
	width: 387px; height: 46px;
	background: url(/images/design/slogan.gif) 0 0 no-repeat;
}
#introduction #companyslogan p {
	margin-left: -3333em;
}

#welcome {
	position: relative;
	top: 64px; left: 393px;
	width: 570px; height: 200px;
}

#main {
	position: relative;
	left: -20px;
	width: 570px;
	padding-bottom: 3px;
	padding-top: 30px;
	display: block;
	float: right;
}
#main h3 {
	height: 100%; /* Giving "layout" to the element, or IE6 will act weird */
	background: url(/images/design/arrow.gif) 0px 7px no-repeat;
	padding-left: 15px;
	font-size:1.25em;
	line-height:1.5em;
}

#left-block {
	width: 290px;
	position: relative;	
}

#subnav {
	list-style-type: none;
	background: #2f4b5d url(/images/design/submenu_bg.jpg) 0px 0px no-repeat;
	padding-top: 20px;
	padding-bottom: 3px;
	margin: 40px 0px 20px 0px;
}
#subnav ul li a {
	height: 100%; /* Giving "layout" to the element, or IE6 will act weird */
	background: url(/images/design/arrow.gif) 0px 2px no-repeat;
	padding-left: 15px;
	margin-left: 10px;
	line-height: 35px;
}
#subnav ul li {	
	list-style-type: none;
	width: 272px; height: 100%;
	background: url(/images/design/menu_item_bg.gif) 0px 0px no-repeat;
	margin-left: -8px;
	margin-right: -10px;
	margin-bottom: 15px;
}

#side-download {
	background-image: url(/images/design/side-download-back.jpg);
}
#side-download a {
	display: block;
	width: 220px; height: 87px;
	padding: 31px 30px 50px 40px;
	color: black;
	text-decoration: none;
	font-size: 1.1em;
	font-weight: bold;
}


/**
 * Bottom icons
 */

#icons {
	background: url(/images/design/icons_bg.gif) 0px 0px no-repeat;
	width: 934px;
	height: 135px;
	margin-left: -5px;
	display: block;
	position: relative;
	margin-top: 35px;
	padding-top: 30;
}
#icons li {
	display:inline;
	width: 400px;
}
#icons a {
	color:#ff7e00;
	text-decoration:none;
	font-size:1.2em;
}
#icons a#register {
	display: block;
	background: url(/images/design/register_full.gif) 0px 0px no-repeat;
	width: 243px;
	height: 79px;
	text-indent: -3333em;
	position: absolute;
	margin-top: 30px;
	margin-left: 20px;
}
#icons a#brochure {
	display: block;
	background: url(/images/design/brochure_full.gif) 0px 0px no-repeat;
	width: 243px;
	height: 79px;
	text-indent: -3333em;
	position: absolute;
	margin-top: 30px;
	margin-left: 315px;
}
a#ref_form {
	display: block;
	background: url(/images/design/download_full.gif) 0px 0px no-repeat;
	width: 243px;
	height: 79px;
	text-indent: -3333em;
	position: absolute;
	margin-top: 30px;
	margin-left: 630px;
}


/**
 * Footer
 */

#footer {
	position: relative;
	padding-top: 8px;
	padding-bottom: 8px;
	padding-left: 20px;
	padding-right: 0px;
	background: url(/images/design/footer_bg.gif) 0px 0px repeat-x;
	height: 51px;
	margin-left: 0px;
	margin-top: 0px;
	color:#fff;
	font-size: 0.9em;
}
#footer a {
	color:#fff;
}
#footer_nav li {
	display:inline;
	list-style-type: none;
}
#footer_nav {
	display: block;
	position: relative;
	float:right;
	margin: -40px 0px 0px 0px;
	word-spacing: 10px;
}
#footer_nav a {
	color:#fff;
	text-decoration:none;
	background: #3a5263;
	padding:3px 5px 3px 5px;
}


/**
 * Flash messages
 */

.flash-messages .notice {
	padding: .5em 3em;
	margin-bottom: 1em;
	border: 1px solid #B7FE1F;
	background-color: #e9fad4;
}
.flash-messages .notice p {
	margin: 0 1.5em;
}

.flash-messages .error {
	padding: .5em 3em;
	margin-bottom: 1em;
	border: 1px solid #ea6454;
	background-color: #f9d0d0;
}
.flash-messages .error p {
	margin: 0 1.5em;
}


/**
 * Form errors
 */

.contains-errors {
	background-color: #f9d0d0;
	padding: .5em;
	margin-left: -.5em;
	margin-right: -.5em;
}


/**
 * News
 */

.news-piece .date,
#latest-news .date {
	color: #84887d;
	margin-top: -10px;
}
.news-piece-summary .date {
	margin: 0;
}
#latest-news .date {
}
a.more-news {
	background: url(/images/design/more_news_btn.gif) 0px 0px no-repeat;
	border: 0px;
	text-indent: -3333em;
	float: right;
	height: 21px;	
	width: 96px;
	outline-style: none;
}
#latest-news a.more-news {
	margin-top: -15px;
}

.news-piece-summary {
	border-bottom: 1px solid #ccc;
	margin-top: 1em;
}
.news-piece-summary-last {
	border: none
}


/**
 * Search results
 */

.search-result .abstract {
	margin-bottom: 0;
}
.search-result .url {
	font-size: 83.33%;
	color: green;
}


/**
 * Misc elements
 */

p.highlight {
	margin: -.5em 3em 1em;
	padding: .5em;
	background-color: #d5e7f3;
}

form.contact {
	text-align: right;
	padding-right: 150px;
}
form.contact input.text, form.contact textarea {
	border: 1px solid #AAAAAA;
	margin-left: 1em;
	width: 320px;
	vertical-align: top;
}
form.contact textarea {
	height: 10em;
}

form.long-form {
	text-align: right;
	padding-right: 100px;
}
form.long-form input.text, form.long-form textarea {
	border: 1px solid #AAAAAA;
	margin-left: 1em;
	width: 300px;
	vertical-align: top;
}
form.long-form textarea {
	height: 10em;
}

.required {
	color: red;
}


/*
 * 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;
}

/* Hide Adblock Object tab: the text should show up just fine, not poorly with a tab laid over it. */
.sIFR-flash + div[adblocktab=true] {
  display: none !important;
}

/* 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 #welcome {
	position: relative;
	top: 70px;
}
.sIFR-hasFlash #main {
	padding-top: 38px;
}
.sIFR-hasFlash h2 {
	visibility: hidden;
	letter-spacing: -9px;
	font-size: 0.85em;
}
