@charset "utf-8";
/* CSS Document */

/***
*
* HTML Elements
*
*/

html, body {
	padding:0;
	margin:0;
	font-family:Verdana, Geneva, sans-serif;
	font-size:14px;
	color:#343434;
	text-align:center;
}
form {
	padding:0;
	margin:0;
}
h4 {
	color:#6b6a6a;
}
p {
	line-height:18px;
}
a img {
	border:0;
}
input, select {
	border:1px solid #6b6a6a;
}
input:focus {
	border:1px dotted #000;
}

/***
*
* IDs, IDs Elements, IDs Classes
*
*/

#background img {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
#wrapper {
	position:relative;
	z-index:1;
	width:1017px;
	margin:0px auto;
	text-align:left;
}

#page-top {
	width:1017px;
	height:48px;
	background:url('../images/slice-page-top.png') no-repeat;
}
#page-middle {
	width:917px;  /* wrapper width minus left and right padding */
	margin-top:-20px;  /* Note: background image has 20px of shadowing cut on each end */
	padding:10px 54px 10px 46px;
	background:url('../images/slice-page-middle.png') repeat-y;
}
#page-bottom {
	width:1017px;
	height:51px;
	text-align:center;
	background:url('../images/slice-page-bottom.png') no-repeat;
}
	#page-bottom p {
		margin:0px;
		padding:40px 0px;
		font-size:80%;
		color:#fff;
	}
	#page-bottom p a {
		color:#fff;
	}

#container-logo-title {
	float:left;
	position:relative;
	left:-55px;
	width:343px;
	margin-bottom:5px;
}
#logo {
	width:64px;
	height:81px;
	background:url('../images/logo-genealogical-research-library.png') no-repeat;
}
#title {
	float:right;
	width:259px;
	height:10px;
	margin-top:35px;
	background:url('../images/title-genealogical-research-library.jpg') no-repeat;
}
#login {
	float:left;
	width:574px;  /* page-middle width minus container-logo-title width */
	margin-top:20px;
	text-align:right;
}

#container-banner-nav {
	clear:left;
	margin-bottom:25px;
}

#content {
	float:left;
	width:630px;
	padding:10px 20px;
}
#content-wide {
	float:left;
	width:837px;  /* page-middle width minus content-wide padding*/
	padding:10px 40px;
}
#content-bottom {
	width:100%;
	height:16px;
	margin:50px 0px 5px 0px;
	background:url('../images/horizontal-line.jpg') no-repeat center;
}

#column {
	float:left;
	width:247px;  /* page-middle width minus (content width plus content padding) */
	text-align:right;
}
	#column input {
		border:0;
	}
#free-newsletter-header {
	float:right;
	width:216px;
	height:57px;
	margin-top:10px;
	background:url('../images/free-newsletter-header.jpg') no-repeat;
}
#free-newsletter {
	clear:right;
	float:right;
	width:191px;  /* free-newsletter-header width minus free-newsletter padding-left */
	padding: 5px 0px 15px 25px;
	text-align:left;
	color:#fff;
	background:#343434;
}
	#free-newsletter p {
		color:#8fc702;
		font-size:90%;
		font-style:italic;
		font-weight:bold;
	}
	#free-newsletter label {
		float:left;
		padding:10px 0px 5px 0px;
	}
	#free-newsletter input {
		clear:left;
		width:165px;
	}
#free-newsletter-bottom {
	clear:right;
	float:right;
	width:216px;
	height:43px;
	text-align:right;
	background:url('../images/free-newsletter-bottom.jpg') no-repeat;
}

#boxes-three {
	clear:left;
	width:897px;  /* page-middle width minus boxes-three padding */
	padding-left:20px;
}
#box {
	float:left;
	width:33%;
	padding-right:3px;
	color:#191516;
}
	#box h3, #box p {
		padding:0px 20px 0px 10px;
	}
	#box .link {
		margin:20px 0px;
		padding:0px 20px 0px 10px;
	}
	#box a {
		text-decoration:none;
		color:#000;
	}
	#box .link {
		width:50px;
		height:16px;
		cursor:pointer;
		background:url('../images/arrow-right-more.jpg') right center no-repeat;
	}

/***
*
* Navigation
*
*/

div#mainnav {
	width:917px;
	height:35px;
	border-bottom:4px solid #8ec702;
	background:#343434;
}

/*** Top Navigation ***/

div#mainnav ul {
	list-style-type:none;
	margin:0px;
	padding:0px;
}
div#mainnav ul li {
	margin:0px;
	padding:0px;
	float:left;
}
div#mainnav ul li a {
	display:block;
	padding:7px 19px 8px 20px;
	font-size:110%;
	color:#ffffff;
	text-decoration:none;
	background-color:#343434;
}
div#mainnav ul li a:hover {
	color:#8ec702;
}

/*** Drop Down ***/

#nav li:hover, #nav li.hover {  
	position: static;  
} 
#nav li ul {  /* second-level lists */
	position: absolute;
	left: -999em;
	z-index:2000;
	width:165px;
	margin-left:-25px;
	margin-top:0px;
	padding:0px 0px 5px 0px;
	text-align:center;
	background:url('../images/slice-nav-over-item.jpg') bottom center no-repeat;
}
#nav li ul ul {  /* third-and-above-level lists */
	left: -999em;
	margin-left:-5px;
}
#nav li ul li {
	clear:left;
}
#nav li ul a {
	display: block;
	width: 145px;
	color:#fff !important;
	background-color:#343434;
	text-decoration: none;
	padding:8px 10px !important;
	margin:0px;
}
#nav li ul a:hover {
	color:#343434 !important;
	background:url('../images/slice-nav-over-item.jpg') repeat-x !important;
}
#nav li:hover ul ul, #nav li:hover ul ul ul, #nav li.sfhover ul ul, #nav li.sfhover ul ul ul {
	left: -999em;
}
#nav li:hover ul, #nav li li:hover ul, #nav li li li:hover ul, #nav li.sfhover ul, #nav li li.sfhover ul, #nav li li li.sfhover ul { /* lists nested under hovered list items */
	left: auto;
}
#nav li li:hover ul, #nav li li li:hover ul, #nav li li.sfhover ul, #nav li li li.sfhover ul {
	left:165px;
	top:auto;
	margin-top:-31px;
}
#nav li:hover, #nav li.sfhover { 
	background:url('../images/slice-nav-item-over.jpg') repeat-x !important;
	color:#343434 !important;
}

/***
*
* Classes
*
*/

.png {
	/* see ie6fix.css */
}
.clear {
	clear:both;
}
.left {
	float:left;
}
.right {
	float:right;
}
.listing {
	margin-bottom:5px;
	padding:0px 20px;
}
.fifty-percent {
	width:50%;
}

/*
.button-big {
	width:400px;
	padding:10px;
	font-size:125%;
	font-weight:bold;
	text-align:center;
	border:1px solid #6b6a6a;
	background:#f0f0f0;
	cursor:pointer;
}
a .button-big {
	color:#000;
	text-decoration:none;
}
*/

div.error {
	display:none;
	margin-bottom:20px;
	padding:10px;
	border:solid 1px #cb2026;
	background:#f6cbca;
	color:#cb2026;
	text-align:center;
}
label.error {
	display: block;
	width: auto;
	margin-top:5px;
	color:#f00;
	font-size:90%;
	font-style:italic;
}
span.not-ok {
	display: block;
	width: auto;
	margin-top:5px;
	padding:3px;
	border:solid 1px #cb2026;
	background:#f6cbca;
	color:#cb2026;
	font-size:90%;
}

input.error, select.error {
	border:1px dotted #f00;
}
input.checkbox, input.radio {
	border:0;
}

table#shopping-cart {
	font-size:95%;
    border-collapse: collapse;
    empty-cells: show;
}
table#shopping-cart tr {
	border-bottom:1px solid #343434;
}
table#shopping-cart th {
	font-size:130%;
	padding:10px;
	background:#343434;
	color:#fff;
	text-align:center;
}
table#shopping-cart td {
	text-align:center;
}

