html, body {
height:100%;
}

body {
background:white url(images/body_bg.gif) repeat-x top;
}

* {
margin:0;
padding:0;
border:0;
list-style:none;
font-family:verdana,arial,sans-serif;
color:#222;
}

#wrap {
min-height: 100%;
height: auto !important;
height: 100%;
width:85%;
margin: 0 auto -105px; /* the bottom margin is the negative value of the footer's height */
}

#footer {
height: 105px; /* .push must be the same height as .footer */
background:white url(images/footer_bg.gif) repeat-x;
text-align:center;
color:white;
}

#footer h2 {
font-size:14px;
font-weight:bold;
padding:25px 0 0 0;
letter-spacing:3.5px;
color:white;
margin:0;
border:0;
}

#footer p {
color:white;
font-size:11px;
margin:5px;
line-height:16px;
padding:0;
}

.push {
height:105px;
clear:both;
}

.clear {
height:1%;
clear:both;
padding-top:10px;
}

h1 {
width:354px;
height:100px;
}

p#headerP {
float:right;
color:white;
font-size:12px;
padding-top:6px;
margin:0;
line-height:14px;
}

p#headerP a {
text-decoration:underline;
color:white;
}

p#headerP a:hover {
text-decoration:none;
}

#mainMenu {
height:25px;
}

#mainMenu li {
float:left;
height:19px;
padding-top:6px;
font-size:12px;
background:transparent url(images/mainMenu_splitter.gif) no-repeat left;
padding-left:12px;
margin-right:10px;
}

#mainMenu li a {
color:#d00000;
text-decoration:none;
font-weight:bold;
}

#mainMenu li a:hover {
color:#222;
}

/* DROPDOWN STYLES */

#mainMenu li li {
background:transparent none;
float:none;
padding-left:0;
}

#mainMenu li li a {
background:transparent none;
color:#d00000;
padding:5px;
height: auto;
text-align: left;
}

#mainMenu li li a:hover {
color:#222;
}

li ul {
display: none;
position: absolute; 
margin-top:5px;
margin-left:-11px;
background:#e3e3e3 url(images/dropDown_Bg.gif) repeat-x;
border:1px solid;
border-color:#ccc #a0a0a0 #a0a0a0 #ccc;
border-top:0;
z-index:600;
}

*  + html li ul {
margin-left:-72px;
margin-top:19px;
}

li > ul {
top: auto;
left: auto;
}

li:hover ul, li.over ul{ 
display: block;
}

.rightBox {
float:right;
width:250px;
min-height:200px;
border:2px solid #424242;
background:white url(images/rightBox_list_bg.gif) repeat-x bottom;
margin:10px 20px;
}

* html .rightBox {
height:250px;
}

.rightBox h2 {
color:#d00000;
font-size:14px;
margin:5px;
}

.rightBox img {
width:220px;
margin:5px 15px;
vertical-align:bottom;
border:1px solid;
border-color:#777 #424242 #424242 #777;
}

.rightBox ul {
margin:5px 10px;
padding:2px;
}

.rightBox li {
font-size:11px;
margin:5px;
list-style:square inside;
}

.rightBox p {
margin:12px 0 0 10px;
}

.rightBox p#author {
color:white;
font-style:italic;
padding-bottom:3px;
}

.rightBox a {
color:#d00000;
text-decoration:underline;
}

.rightBox a:hover {
text-decoration:none;
}

* + html .rightBox li {
margin:0;
}

h2 {
font-size:16px;
margin:15px 20px;
color:#d00000;
border-bottom:1px dotted #424242;
padding:2px;
}

h3 {
color:#424242;
font-size:14px;
margin:10px 30px;
padding:2px;
text-decoration:underline;
}

p {
font-size:12px;
color:#222;
margin:10px 40px;
line-height:18px;
}

a {
color:#d00000;
text-decoration:underline;
}

a:hover {
text-decoration:none;
}

ul.productList {
margin:10px 8%;
width:80%;
min-height:30px;
border-bottom:1px solid #dcdcdc;
border-top:1px solid #dcdcdc;
padding:5px;
background:#eee url(images/prodList_bg.gif) repeat-x top;
}

ul.productList li {
list-style:square inside;
font-size:12px;
margin:2px;
width:48%;
float:left;
height:1%;
}

.productList li.prodListHeader {
list-style:none;
margin:4px 0;
width:100%;
clear:right;
}

.productList li h3 {
color:#424242;
font-size:14px;
margin:0;
padding:2px;
border-bottom:1px solid #d00000;
text-decoration:none;
}

#galleryList {
width:600px;
margin:15px 5px;
}

/*
* + html #galleryList {
width:600px;
}
*/

* html #galleryList {
margin-right:-5px;
}

#galleryList li {
float:left;
width:150px;
height:150px;
padding:5px;
margin:5px;
border:1px solid;
border-color:#777 #aaa #aaa #777;
background:#dedede;
}

* html #galleryList li {
margin:2px;
}


/* FORM STYLES */

.cssform {
position:relative;
margin:10px;
float:left;
}

.cssform p {
width: 300px;
clear: left;
margin: 0;
padding: 5px 0 8px 0;
padding-left: 155px; /*width of left column containing the label elements*/
border-top: 1px solid #bbb;
height: 1%;
}

.cssform label{
font-weight: bold;
float: left;
text-align:right;
margin-left: -155px; /*width of left column*/
width: 150px; /*width of labels. Should be smaller than left column (155px) to create some right margin*/
}

.cssform input[type="text"]{ /*width of text boxes. IE6 does not understand this attribute*/
width: 180px;
padding:2px;
border:1px solid;
border-color:#e5e5e5 #bbb #bbb #e5e5e5;
}


.cssform textarea{
width: 300px;
height: 100px;
border:1px solid;
border-color:#e5e5e5 #bbb #bbb #e5e5e5;
font-size:12px;
}

/*.threepxfix class below:
Targets IE6- ONLY. Adds 3 pixel indent for multi-line form contents.
to account for 3 pixel bug: http://www.positioniseverything.net/explorer/threepxtest.html
*/

* html .threepxfix{
margin-left: 3px;
}

.submitbutton {
color:white;
cursor:pointer;
background-color:#d00000;
font-weight:bold;
padding:2px;
float:right;
border:1px solid;
border-color:#e5e5e5 #bbb #bbb #e5e5e5;
}

/* LIGHTBOX STYLES */

#lightbox{
	position: absolute;
	left: 0;
	width: 100%;
	z-index: 100;
	text-align: center;
	line-height: 0;
	}

#lightbox a img{ border: none; }

#outerImageContainer{
	position: relative;
	background-color: #fff;
	width: 250px;
	height: 250px;
	margin: 0 auto;
	}

#imageContainer{
	padding: 10px;
	}

#loading{
	position: absolute;
	top: 40%;
	left: 0%;
	height: 25%;
	width: 100%;
	text-align: center;
	line-height: 0;
	}
#hoverNav{
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 10;
	}
#imageContainer>#hoverNav{ left: 0;}
#hoverNav a{ outline: none;}

#prevLink, #nextLink{
	width: 49%;
	height: 100%;
	background: transparent url(images/blank.gif) no-repeat; /* Trick IE into showing hover */
	display: block;
	}
#prevLink { left: 0; float: left;}
#nextLink { right: 0; float: right;}
#prevLink:hover, #prevLink:visited:hover { background: url(images/prevlabel.gif) left 15% no-repeat; }
#nextLink:hover, #nextLink:visited:hover { background: url(images/nextlabel.gif) right 15% no-repeat; }


#imageDataContainer{
	font: 10px Verdana, Helvetica, sans-serif;
	background-color: #fff;
	margin: 0 auto;
	line-height: 1.4em;
	overflow: auto;
	width: 100%	
	}

#imageData{	padding:0 10px; color: #666; }
#imageData #imageDetails{ width: 70%; float: left; text-align: left; }	
#imageData #caption{ font-weight: bold;	}
#imageData #numberDisplay{ display: block; clear: left; padding-bottom: 1.0em;	}			
#imageData #bottomNavClose{ width: 66px; float: right;  padding-bottom: 0.7em;	}	
		
#overlay{
	position: absolute;
	top: 0;
	left: 0;
	z-index: 90;
	width: 100%;
	height: 500px;
	background-color: #000;
	}


