@charset "iso-8859-1";

/* No IE hacks are permited in this file in order for it to validate
 * If an IE hack is required, included it in ie.css instead
 * Only IE will see that css file because of the use of the conditional comments
*/

/* begin with generic selectors so that they can be overridden if needed
 * by classes deeper in the stylesheet
 */
.clear
{
	clear: both;
	padding-bottom: 1px;	/* for Gecko-based browsers */
	margin-bottom: -1px;	/* for Gecko-based browsers */
}
.hide
{
	display: none !important;
}
.inside
{
	/* glitch in IE caused by vertical padding in this class, so 0 padding is
	 * set here and those blocks that need the vertical padding must be 
	 * applied to the parent element. the purpose of this class is to provide
	 * horizontal padding without using hacks to get around IE's broken box 
	 * model. so it's okay to apply vertical padding to the parent element, 
	 * just not horizontal padding.
	 */
	padding: 0 1em;
}

/* now we craft the core layout of the page. this includes positioning and
 * gutter space. colors and fonts should not come into play at this point.
 * when defining a border, default its color to white which is probably
 * the safest thing to do.
 */
body
{
	margin: 1% 4% 1% 4%;	/* margin instead of padding for the gutterspace around 
	 			   the layout because IE breaks the layout when 
	 			   horizontal padding is applied to the body element.
	 			   % over pixels for that horizontal gutterspace so that
	 			   it automatically goes below 20px on low-res browsers
	 			   to create more space for the content. */
	font-size: 100.1%;	/* resolve some font size issues in some layouts for
				   some browsers. (in other words, i got no clue.) */
}
#pageWrapper
{

	min-width: 30em;	/* IE doens't understand this property. EMs are used
				   so that as the font size increases, the proportional
				   limitations (min-width) increase with it, rather
				   than creating a middle column that can only fit
				   3 or 4 characters in it. */
	width: auto;
}

#masthead
{

	padding: 0.5em;
}
#masthead h1
{
	padding: 0;
	margin: 0;
}
#outerColumnContainer
{
	/* reserves space for the left and right columns. you can use either
	 * padding, margins, or borders, depending on your needs. however you
	 * can use the border method to create a background color for both left
	 * and right columns
	 */
	border-left: solid 12em; /*set the color else where*/
	border-right: solid 12em; /*set the color else where*/
}
#innerColumnContainer
{
	margin: 0 -1px;		/* compensate for the borders because of
				   100% width declaration */
	width: 100%;
	z-index: 1;
}
#leftColumn, #middleColumn, #rightColumn
{
	overflow: visible;	/* fix for IE italics bug */
	position: relative;	/* fix some rendering issues */
}

#SOWrap
{
	float: left;
	margin: 0 -1px 0 0;
	width: 100%;
	z-index: 3;
}
#middleColumn
{
	float: right;
	margin: 0 0 0 -1px;
	width: 100%;
	z-index: 5;	
}
#leftColumn
{
	float: left;
	margin: 0 1px 0 -11em;
	width: 10em;
	z-index: 4;
	margin-bottom:100px;
}
#rightColumn
{
	float: right;
	width: 10em;
	margin: 0 -11em 0 1px;
	z-index: 2;
	margin-bottom:40px;
}
#footer
{

	padding: 0.5em;
}

/* vertical navigation stuff. mostly exactly as seen in the vnav.css styleheet
 * in the original skidoo layout.
 */
.vnav
{
	margin: 1em 0;
}
.vnav ul, .vnav ul li
{
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: block;
}

.vnav ul li, .vnav ul li a
{
	margin: 0;
	display: block;
	padding: 0;
	line-height: normal;
}
.vnav ul li a
{
	display: block;
	padding: 2px 5px 3px 5px;
}
.vnav ul li a, .vnav ul li a:link, .vnav ul li a:visited, .vnav ul li a:active, .vnav ul li a:hover
{
	text-decoration: none;
	cursor: pointer;
}
.vnav h3
{
	margin-bottom: 0;
	padding-bottom: 0;
	font-size: 126%;
}


/* horizontal navigation elements. create a DIV element with the class hnav
 * and stick one unordered list inside it to generate a horizontal menu.
 */
.hnav
{

	text-align: center;
}
.hnav, .hnav ul li a
{
	/* need to middor veritcal padding on .hnav and child anchor elements
	 * because the anchors are _not_ block elements. since they are not
	 * block elements web browsers will not expand .hnav to contain them
	 * even with the extra padding. by applying the same padding to both
	 * the parent .hnav _looks_ like its containing the child anchor
	 * elements. 
	 */
	padding-top: 3px;
	padding-bottom: 4px;
}
.hnav ul, .hnav ul li
{
	display: inline;
	list-style-type: none;
	margin: 0;
	padding: 0;
}
.hnav ul li a
{
	margin: 0 -1px 0 0;
	padding-left: 10px;
	padding-right: 10px;	/* short-hand padding attribute would overwrite
				   top/bottom padding set in a previous rule */

	white-space: nowrap;
}
.hnav ul li a:link, .hnav ul li a:visited, .hnav ul li a:active, .hnav ul li a:hover
{
	text-decoration: none;
}
.hnav ul li span.divider
{
	display: none;
}

/* area for extra footer colums */

.fc-left {		
	width: 12em; 
	height: 100px; 
	z-index: 7;
	float: left;
	margin: -101px 1em 0 0em;
	padding: 0 0em 0em 0em;
}

.fc-right {
	width: 12em; 
	height: 40px; 
	z-index: 7;
	float: right;
	margin: -41px 0 0 0em;
	padding: 0 0em 0 0em;
}

.fc-inside {
	margin-left: 1em;
}

#contentHeader {
	padding: 1em 0 1em 0;
}

.hiddenHeading h2 {
	position: absolute;
	left: -9999px;
}

/******************************************************************************/


