/* General CSS code */

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}
.clearfix {
	display: inline-block;
}
html[xmlns] .clearfix {
	display: block;
}
* html .clearfix {
	height: 1%;
}


/* Site-specific code */

body
{
	background-color: #FFF;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 100%;
	height: 100%;
	color: #000;
	margin: 25px 0;
}

a:link
{
	color: #000;
	text-decoration: underline;
}
a:visited
{
	color: #333;
	text-decoration: underline;
}
a:hover
{
	color: #ED008C;
	text-decoration: none;
	border-bottom: 0;
}

h1
{
	color: #ED008C;
	font-size: 24px;
	margin: 0 0 8px 0;
}
h2
{
	font-size: 20px;
	margin: 0 0 8px 0;
}
p
{
	font-size: 16px;
	line-height: 20px;
	margin: 0 0 8px 0;
}

ul
{
	list-style: disc inside;
	margin: 0 0 8px 20px;
}
ol
{
	list-style: decimal outside;
	margin: 0 0 8px 20px;
}
li
{
	font-size: 16px;
	line-height: 20px;
	margin: 2px 0;
}

.cursor { cursor: pointer; }

.offset
{
	position: absolute;
	top: -9000px;
	left: -9000px;
}

.img_left { float: left; }

#shell
{
	display: block;
	position: relative;
	width: 960px;
	margin: 0 auto 0 auto;
	padding: 0;
}

#header
{
	width: 100%;
	height: 198px;
	margin-bottom: 22px;
}

#sidebar
{
	width: 240px;
	float: right;
	background-color: #4AA6D9;
}
.sidepanel
{
	border-bottom: 7px #FFF solid;
	background-image: url(../images/sidebar_bg.jpg);
	background-repeat: repeat-x;
	padding: 14px;
}
.sidepanel h1
{
	color: #000;
	font-size: 16px;
}
.sidepanel h2
{
	color: #000;
	font-size: 14px;
}
.sidepanel ul
{
	list-style: disc inside;
	margin: 0;
}
.sidepanel li
{
	font-size: 15px;
	line-height: 15px;
	font-weight: bold;
	margin: 5px 0;
}

.sb_img
{
	float: right;
	margin-left: 10px;
}


.home_page td {
	padding: 10px 0;
}
.home_page .table_text h1 {
	text-align: center;
	font-size: 24px;
	line-height: 27px;
}
.home_page .table_text h2 {
	text-align: center;
	font-size: 16px;
	line-height: 21px;
}
.home_page .table_text p {
	text-align: center;
}
.home_page img {
	margin-left: 20px;
}


.main_pane
{
	padding: 10px 0 27px 25px;
}

.content_pane
{
	width: 584px;
	padding: 27px 55px;
}

.book
{
	position: absolute;
	width: 186px;
	margin-right: 7px;
}
.book p
{
	font-size: 12px;
	line-height: 14px;
	margin: 0 20px;
}

.look_inside
{
	margin: 0 0 10px 40px;
}

.book_info
{
	width: 470px;
	margin-left: 195px;
}
.book_info p
{
	font-size: 13px;
	line-height: 16px;
}
.book_info p.news
{
	font-size: 18px;
	line-height: 24px;
}
.book_info ul
{
	list-style: square outside;
	margin: 0 0 8px 20px;
}
.book_info li
{
	font-size: 13px;
	line-height: 16px;
	margin: 2px 0;
}

.content_pane p a:link, .book_info p a:link, .content_pane li a:link, .book_info li a:link
{
	text-decoration: none;
	border-bottom: 1px #ED008C solid;
}
.content_pane p a:visited, p .book_info a:visited, .content_pane li a:visited, li .book_info a:visited
{
	text-decoration: none;
	border-bottom: 1px #ED008C solid;
}
.content_pane p a:hover, .book_info p a:hover, .content_pane li a:hover, .book_info li a:hover
{
	text-decoration: none;
	border-bottom: 0;
}

.site_map ul
{
	list-style: square outside;
	margin: 16px 0 16px 60px;
}
.site_map li
{
	font-size: 20px;
	line-height: 22px;
	font-weight: bold;
	margin: 16px 0;
}

.add_to_cart { margin: 15px 15px; }

.otherprod img
{
	float: left;
	margin: 10px 20px 0 0;
}

.separator
{
	border-top: 5px #4AA6D9 solid;
}
.quotebg
{
	background-image: url(../images/quote_bg.gif);
	background-repeat: no-repeat;
	background-position: 540px 20px;
}

p.review
{
	font-size: 20px;
	line-height: 26px;
	margin: 25px 0 0 0;
}
p.reviewer
{
	font-size: 14px;
	margin: 4px 0 0 20px;
}

img.right_image
{
	float: right;
	margin-right: 20px;
	margin-left: 5px;
}

.download_items td
{
	font-size: 12px;
	line-height: 14px;
	text-align: center;
	padding: 10px 30px 20px 0;
}
.download_items img
{
	display: block;
	border: 1px #999 solid;
	margin-bottom: 5px;
}

div#footer
{
	width: 100%;
	margin-top: 25px;
}
div#footer p
{
	text-align: center;
	font-size: 12px;
	line-height: 25px;
	color: #4AA6D9;
	margin: 0 0 16px 0;

}

div#menu
{
	width: 100%;
	margin-bottom: 7px;
	background-image: url(../images/menu_bg.gif);
	background-repeat: repeat-x;
	z-index: 8888;
	position: relative;
}


/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu *
{
	margin: 0;
	padding: 0;
	list-style: none;
}
.sf-menu { line-height: 1.0; }
.sf-menu ul
{
	position: absolute;
	top: -999em;
	width: 225px;
	/* left offset of submenus need to match (see below) */
}
.sf-menu ul li {
	width: 100%;
}
.sf-menu li:hover
{
	visibility: inherit;
	/* fixes IE7 'sticky bug' */
}
.sf-menu li
{
	float: left;
	position: relative;
}
.sf-menu a
{
	display: block;
	position: relative;
}
.sf-menu li:hover ul,
.sf-menu li.sfHover ul
{
	left: 0;
	top: 31px; /* match top ul list item height */
	z-index: 8888;
}
ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul { top: -999em; }
ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul
{
	left: 225px;
	/* match ul width */
	top: 0;
}
ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul { top: -999em; }
ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul
{
	left: 10em;
	/* match ul width */
	top: 0;
}

/*** Menu skin ***/
.sf-menu
{
	float: left;
	margin-bottom: 7px;
}
.sf-menu a
{
	text-decoration: none;
	border-bottom: 0;
}
.sf-menu a, .sf-menu a:visited
{
	/* visited pseudo selector so IE6 applies text colour*/
	color: #FFF;
	text-decoration: none;
	border-bottom: 0;
}
.sf-menu li
{
	color: #FFF;
	font-size: 16px;
	font-weight: bold;
	line-height: 31px;
	padding: 0 9px 0 9px;
	border-right: 2px #FFF solid;
}
.sf-menu li li
{
	border-right: 0;
	background-color: #3d89b3;
}
.sf-menu li:hover, .sf-menu li.sfHover
{
	outline: 0;
	background-color: #3d89b3;
}
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active
{
	color: #DDD;
}
.sf-menu li.current { background-color: #ED008C; }


/* Form styling */

label
{
	display: block;
	font-size: 12px;
	margin-top: 8px;
	margin-bottom: 2px;
}
label.invalid { color: #D00; }
select
{
	display: block;
	width: 260px;
}
input[type=text], input[type=password]
{
	background-color: #EEE;
	display: block;
	font-size: 12px;
	font-style: normal;
	width: 200px;
	border: 0;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	padding: 4px;
}
textarea
{
	background-color: #EEE;
	display: block;
	font-size: 12px;
	font-style: normal;
	width: 470px;
	height: 150px;
	border: 0;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	padding: 5px;
}
input[type=submit]
{
	font-size: 12px;
	font-style: normal;
	border: none;
	text-decoration: none;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	background-color: #FF0;
	color: #000;
	padding: 5px;
	margin: 10px 0 5px 0;
}
input[type=submit]:hover, form a:hover
{
	background: #FF8;
	cursor: pointer;
}

div.cbox { margin: 15px 0; }
div.cbox label { font-size: 15px; }
div.cbox input { float: left; margin-right: 10px; }

#contact input[type=text] { width: 300px; }
#contact form { margin-top: 25px; }

.postit
{
	background-color: #FCEE13;
	background-image: url(../images/postit.jpg);
	background-repeat: no-repeat;
	background-position: left bottom;
	padding: 20px;
	margin: 30px;
	color: #444;
	font-family: "Comic Sans MS" "Brush Script MT" cursive;
	font-size: 18px;
	line-height: 28px;
	width: 150px;
}

.pagemsg
{
	color: #F00;
	font-weight: bold;
}


/* Blog sidepanel */

#blogside h2 { margin-top: 10px; }
#blogside ul { list-style: none; }
#blogside ul ul { margin-left: 10px; }
#blogside p { font-size: 14px; line-height: 22px; margin-top: 12px; }
#blogside .blognav { line-height: 15px; font-weight: normal; margin-bottom: 15px; }


/* Blog content */

.post { margin-bottom: 30px; }
.entry { margin: 15px 0; }
.postmetadata { font-size: 12px; }
.navigation { font-size: 12px; padding-bottom: 40px; }
.more-link { }
.commentmetadata { font-size: 12px; margin: 6px 0; }
.commentlist li { margin-bottom: 20px; }
.comment-author { font-weight: bold; }

.alignright { float: right; }
.alignleft { float: left; }

