
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	HTML TAGS

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


body {
	font-family:Verdana, Arial, Helvetica, sans-serif;
	background:#B3B3B3;
	margin:8px 0 30px 0;
	}

/* remove browser default borders on all linked images */
a img{
	border-width:0;
	}

/* make all horizontal lines light gray */
hr{
	color: #E5E5E5;
	background-color: #E5E5E5;
	height: 1px;
	border:0;
	margin:10px 0;
	}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	FONT-SIZES - LINE HEIGHTS - P MARGIN & PADDING

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


/* Firefox and probubly IE7 will add extra padding to first 
child <p> and <h2> tags of divs. So we remove them below.
Only FireFox and probubly IE7 use this rule */

div > p:first-child {
	margin-top:0;
	}

.module-container p {
	margin:0;
	padding:0 0 .4em 0;
	}
	
.three-column-container p, 
.three-column-container h3,
.bg-rounded-gray-content p {
	margin:0 0 1em 0;
	}

p, 
#module-column li,
.content-inner li,
legend {
	font-size:.7em;
	}
	
.content-inner li {
	font-size:.7em;
	line-height:1.2em;
	padding:0 0 .7em 0;
	}

#footer p {
	line-height:2em;
	}
	

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	DATA TABLES (tables are only used to hold data)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


table.data-table,
.forum-table {
	border-top:1px solid #666666;
	border-right:1px solid #666666;
	}

table.data-table  td, 
table.data-table  th,
.forum-table td,
.forum-table th {
	padding:4px;
	border-bottom:1px solid #666666;
	border-left:1px solid #666666;
	}

table.data-table  th {
	background:#E5E5E5;
	}
	
	
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	LINKS

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


a {
	font-weight:bold;
	color:#0030D9;
	}

a:visited {
	color:#006078;
	}
	
a:hover {
	text-decoration:none;
	}
	
a:active {
	color:#3F7EFF;
	}
	
#nav-login a{
	color:#000;
	}

#nav-login a:hover{

	}

.active-sub-nav {
	color:#4063E3;
	}

#footer a {
	color:#404042;
	}

.news-entry .news-links a {
	font-weightX:normal;
	}

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	HEADINGS

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


h1, h2, h3, h4 ,h5, h6 {
	font-family:Tahoma, "Arial Narrow", sans-serif;
	}

h1 {
	font-size:22px;
	}
	
h1.pseudo-legend {
	background:#FFF;
	position:absolute;
	top:-10px;
	left:25px;
	font-size:16px;
	color:#666666;
	padding:0 10px;
	margin:0;
	}

.heading-gray-content h1 {
	display:inline;
	font-size:18px;
	padding-right:30px;
	}

#blogs .heading-gray-content h1 {
	font-size:14px;
	}
	
.bg-rounded-gray-content h1 {
	font-size:16px;
	text-align:center;
	margin:0 0 10px 0;
	}

h2 {
	font-size:14px;
	}

#blogs .content-inner h2 {
	font-size:20px;
	}
	
.news-entry h2{
	margin:0;
	}

.news-entry h2 a{
	font-size:12px;
	}
	
.pseudo-fieldset-container h2 {
	font-size:12px;
	}

.module-header-content h2 {
	display:inline;
	}

.heading-gray-content h2 {
	display:inline;
	font-size:16px;
	}
	
h3 {
	font-size:12px;
	}

.tech-center-categories h3,
.module-content h3 {
	display:inline;
	}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	NAV LOGIN

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


#nav-login {
	width:960px;
	margin-left:auto;
	margin-right:auto;
	padding:0 16px 2px 15px;
	text-align:right;
	font-size:.65em;
	color:#444444;
	}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	HEADER

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


#header {
	background:url(bg-nav-main.png) no-repeat;
	position:relative;
	width:990px;
	height:70px;
	margin-left:auto;
	margin-right:auto;
	}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	MAIN NAV

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


ul#nav-main {
	position:absolute;
	top:20px;
	left:190px;
	text-align:center;
	margin:0;
	padding:0 0 .3em 0;
	width:770px;
	}

#nav-main li {	
	display:inline;
	list-style:none;
	}

#nav-main li a{
	text-decoration:none;
	color:#000;
	font-family:Tahoma, "Arial Narrow", sans-serif;
	font-size:12px;
	padding:.3em 1em;
	}

#nav-main li a:hover{
	color:#0030D9;
	}
	
/* add "class="active" to the <li> to show the active section */
#nav-main li.active a{
	color:#0030D9;
	background:url(bg-nav-active.gif) bottom center no-repeat;
	}

#nav-main li.active a:hover{
	color:#000;
	background:none;
	}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	SUB NAV

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


ul#nav-sub {
	position:absolute;
	top:47px;
	left:190px;
	text-align:center;
	margin:0;
	padding:0 0 .3em 0;
	width:770px;
	}

#nav-sub li {	
	display:inline;
	list-style:none;
	}

#nav-sub li a{
	text-decoration:none;
	color:#000;
	font-family:Tahoma, "Arial Narrow", sans-serif;
	font-size:11px;
	padding:.3em 1em;
	font-weight:normal;
	}

#nav-sub li a:hover{
	color:#0030D9;
	}

/* add "class="active" to the <li> to show the active page / section */
#nav-sub li.active a{
	color:#0030D9;
	background:url(bg-nav-active.gif) bottom center no-repeat;
	}

#nav-sub li.active a:hover{
	color:#000;
	background:none;
	}
	

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	LOGO

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
	

#logo {
	position:absolute;
	top:0;
	left:0;
	width:154px;
	height:66px;
	}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	POSTER PHOTO

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


#poster-photo {
	width:990px;
	height:310px;
	margin-left:auto;
	margin-right:auto;
	}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	NAV SHADOW

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


#bg-nav-shadow-with-modules,
#bg-nav-shadow-iis7-with-modules,
#bg-nav-shadow-without-modules {
	width:990px;
	height:12px;
	margin-left:auto;
	margin-right:auto;
	font-size:.1em;
	}

#bg-nav-shadow-with-modules {
	background:url(bg-nav-shadow-with-modules.jpg) no-repeat;
	}
	
#bg-nav-shadow-without-modules {
	background:url(bg-nav-shadow-without-modules.jpg) no-repeat;
	}

#bg-nav-shadow-iis7-with-modules {
	background:#797979 url(bg-nav-shadow-iis7.jpg) no-repeat;
	}
	
	
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	CONTENT CONTAINERS

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


/* outermost content container starts below nav & poster photo */
#home #content-container {
	padding-top:20px;
	}
	
#content-container {
	width:960px; /*width + l&r padding + &r margin must = 990px */
	margin-left:auto;
	margin-right:auto;
	padding:0 15px;
	position:relative;
	background:url(bg-shadow-page-sides.png) repeat-y;
	}

#content-container.with-modules{
	background:url(bg-shadow-page-sides-with-modules.png) repeat-y;
	}

/* width of left content area when using modules */
#content-outer.with-modules {
	width:670px;
	float:left;
	}

/* width of left content area when NOT using modules */
#content-outer.without-modules {
	width:960px;
	}
	
/* this div holds all body content EXCEPT the separator line */
.content-inner {
	padding:0 20px;
	}
	

/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	BREADCRUMB

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


#breadcrumb p{
	padding:10px 0 0 0;
	font-size:.6em;
	}
	
	
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	BANNER AD 
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


.banner-ad-horizontal {
	text-align:center;
	padding:0 0 30px 0;
	}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	CONTENT SEPARATOR LINE (USE SPARINGLY) 
 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


.content-separator {
	background:url(bg-content-separator.png) repeat-x;
	border-top:1px solid #CCCCCC;
	height:6px;
	width:100%;
	margin:25px 0 20px 0;
	font-size:.1em;
	padding:0;
	}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*

	FOOTER

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/


#footer {
	background:url(bg-footer.png) no-repeat;
	width:950px;
	height:75px; /* height + top padding must >= 93px; */
	text-align:center;
	margin-left:auto;
	margin-right:auto;
	font-size:.8em;
	padding:18px 20px 0 20px;
	color:#555555;
	}