body, div, p, h1, h2, h3, h4, h5, h6, p, ul, ol, dl, dd, dt, li, td, blockquote, address, form, input, select, textarea { margin: 0; padding: 0; }
body { background: #E5DECB url(/images/bg_body.jpg) repeat-y top left; font: 62.5%/1.4em 'Trebuchet MS', 'Lucida Grande', Arial, Helvetica, sans-serif; }

ul {list-style: square outside; margin: 0 2.8em 0 3.8em; padding: 0;}
ol {list-style: decimal; margin: 0 2.8em 0 3.8em; padding: 0 0 1em 0;}
li {padding-bottom: .7em;}

h3 {
	font-size: 1.3em;
	margin-top: .8em;
	margin-bottom: .4em;
	color: #ee952d;
	}

h3.banners {
	font-size: 1.4em;
	line-height: 1.2em;
	color: #993300;
}

h3.banners span {
	font-weight: normal;
}
	
h5 {
	font-size: 1.1em;
	margin-top: 1em;
	margin-bottom: .4em;
	color: #b5aa8a;
	}

li.last {padding: 0;}

table {
	border-collapse: collapse;
	line-height: 1.4em;
	margin-bottom: 1em;
	}

th {
	text-align: left;
	font-weight: bold;
	border-bottom: 1px solid #000;
	padding: 0 15px 2px 0;
	}

tr {
	border-bottom: 1px solid #ccc;
	}
	
table.noborder tr {
	border-bottom: none;
	}
	
table.noborder td {
	padding: 2px 15px 2px 0;
	}

td {
	padding: 1em 15px 1em 0;
	vertical-align: top;
	}

td h6 {
	font-weight: bold;
	font-size: 1em;
	}

p.last {
	margin: 0;
	padding: 0;
	}
	
div.download {
	margin: 0 0 1em 30px;
	background: url(/images/bg_downloadpdf.jpg) no-repeat top left;
	height: 76px;
	width: 366px;
	}
	
div.download p {
	padding: 24px 0 0 93px;
	}
	
div.quicktime {
	margin: 0 0 1em 30px;
	background: url(/images/bg_quicktime.gif) no-repeat top left;
	height: 247px;
	width: 366px;
	}
	
div.quicktime p {
	padding: 24px 0 0 93px;
	}

div.downloadword {
	margin: 0 0 1em 30px;
	background: url(/images/bg_downloadword.jpg) no-repeat top left;
	height: 76px;
	width: 366px;
	}
	
div.downloadword p {
	padding: 24px 0 0 93px;
	}

div.callout {
	margin: 0 35px 1em 35px;
	padding: 1em 14px 1em 14px;
	background-color: #e1e9ef;
	}

span.details {
	font-size: .9em;
	}

span.highlight {
	border: 2px solid #ffc;
	background-color: #ffc;
}

/* left column */
#leftcolumn { float: left; width: 256px; padding: 34px 19px 30px 21px; font-size: 1.1em; voice-family: "\"}\""; voice-family:inherit; width: 216px; }
#leftcolumn h1 { margin: 0 0 20px 19px; }

#menu { margin-bottom: 10px; background: url(/images/bg_menu.gif) repeat-y top left; color: #385C76; }
#menu p { padding: 10px 20px 5px 33px; margin: 0; background: url(/images/bg_menu_top.gif) no-repeat top left; }
#menu ul { padding: 0 20px 15px 33px; margin: 0; background: url(/images/bg_menu_bottom.gif) no-repeat bottom left; list-style-type: none; }
#menu ul ul { padding: 3px 0 0; background: none; }
#menu li { padding: 5px 0 5px 12px; background: url(/images/bg_menu_item.gif) no-repeat 0 .7em; border-top: 1px solid #7FAFD0; .9em; font-weight: normal; line-height: 1.4em; font-size: 1.1em; }
#menu li li { padding: 3px 0; border: none; background: none; text-transform: none; font-size: 1em; letter-spacing: 0; line-height: 1.2em; font-size: .9em; font-weight: bold; }
#menu li li.tertiary { padding: 3px 0 2px 12px; border: none; background: none; text-transform: none; font-size: 1em; letter-spacing: 0; line-height: 1.2em; font-size: .9em; }
#menu li a { color: white; }
#menu li a.selected { color: #0a4b79; }
#menu li a:hover { color: #0a4b79; }
#menu li li a { color: #4C2F72; }
#menu li li a.selected { color: #0a4b79; }
#menu li li a:hover { color: #0a4b79; }

.leftpromo { display: block; margin-bottom: 0px; }

.downloads { display: block; margin-bottom: 10px; }

#shoppingcart-top {
	padding: 0 20px 0 40px;
	background: url(/images/bg_cart_top.gif) no-repeat top left;
}

#shoppingcart {
	padding: 0 20px 5px 40px;
	background: url(/images/bg_cart.gif) no-repeat bottom left;
}

#interested {
	margin: 25px 0 0 40px;
	}
	
#interested p {
	margin-left: 2px;
	}
	
#interested a {
	color: black;
	}

/* maincolumn */
#maincolumn { margin: 0; padding: 16px 0 0; width: 514px; float: left; }
#maincolumn .divider { margin-bottom: .3em; padding-top: 1.2em; clear: both; border-bottom: 1px solid #D8D4C5; } 

/* header for backpages */
#header { padding: 145px 0 15px; background-position: top left; background-repeat: no-repeat; background-color: transparent; }
#header h2 { font: normal 2.6em Georgia, Times, serif; padding: .4em 20px; color: white; }

/* content */
#content { padding: 30px 20px 30px 20px; font-size: 1.3em; line-height: 1.4em; }
.twocolumn #content { width: 312px; float: left; padding-right: 0; }

/* sidebars */
#sidebars { padding: 30px 12px 30px 0; width: 140px; float: right; font-size: 1.1em; line-height: 1.4em; }
#sidebars .divider { padding-top: 1.8em; margin-top: 2em; }

.sidebar dt { margin-top: .8em; font-weight: bold; }

/* forms */
label { font-weight: bold; }
.radiocheck { list-style-type: none; }
.radiocheck li { margin-left: 2em; margin-bottom: .3em; text-indent: -1.5em; }
.radiocheck input { vertical-align: 0; margin-right: .3em; }
.radiocheck input.other { margin: 0; }
.radiocheck label { font-weight: normal; }

/* footer */
#footer { clear: both; }
#footer p { padding: 0 0 30px 20px; color: #666; }

/* generalities */
p, ol, ul, dl { margin-bottom: .8em; }
p.intro { font-weight: bold; }
blockquote { font-size: 1em; line-height: 1.4em; padding: 1em 2.5em .2em 1.5em; margin: 0 -20px .8em 0; background: #F4F2EB; color: #70598A; }
img { border: none; }

a:link, a:visited { color: #468CBD; }
a:hover, a:active { color: #0a4b79; }

#leftcolumn a { text-decoration: none; }
#maincolumn a:link, a:visited { color: #468CBD; }
#maincolumn a:hover, a:active { color: #0a4b79; }

/* section specifics */
#process h2 { background-color: #EE952D; } /* orange */
#process #header { background-image: url(/images/header_process.jpg); }
#grade h2 { background-color: #419a66; } /* green */
#grade #header { background-image: url(/images/header_materials.jpg); }
#grade-elem h2 { background-color: #419a66; } /* green */
#grade-elem #header { background-image: url(/images/header_ms.jpg); }
#grade-high h2 { background-color: #419a66; } /* green */
#grade-high #header { background-image: url(/images/header_hs.jpg); }
#research h2 { background-color: #318ccd; } /* blue */
#research #header { background-image: url(/images/header_services.jpg); }
#success h2 { background-color: #f2c549; } /* yellow */
#success #header { background-image: url(/images/header_success.jpg); }
#news h2 { background-color: #785e99; } /* purple */
#news #header { background-image: url(/images/header_news.jpg); }
#about h2 { background-color: #cd3531; } /* red */
#about #header { background-image: url(/images/header_about.jpg); }
#contact h2 { background-color: #cd3531; } /* red */
#contact #header { background-image: url(/images/header_contact.jpg); }
#walkthrough h2 { background-color: #cd3531; } /* red */
#walkthrough #header { background-image: url(/images/header_walkthrough.jpg); }

/* product pages */
div.productcontainer {
	border-top: 1px solid #D8D4C5;
	padding: 10px 0;
	clear: both;
	}
	
div.productimage {
	float: right;
	width: 150px;
	margin: 8px 0 8px 0;
	padding: 0 0 0 15px;
	text-align: center;
	}

div.productdescription {
	padding-right: 165px;
	}

/* commerce styles */

table.cart { width: 100%; }
table.cart td, table.cart th { padding-right: 15px; }

/* tools */
.fl { float: left; }
.fr { float: right; }

img.fl { float: left; margin-bottom: .5em; margin-right: 1em; }
img.fr { float: right; margin-bottom: .5em; margin-left: 1em; }

span.ir { display: block; width: 0; height: 0; position: absolute; top: 0; left: 0; overflow: hidden; }
.skip { display: none; }

/* browser patches */
* html ol, * html ul, * html #menu { position: relative; }
* html #menu li {  }