/*   
Author: Tom Rose (tom@slurve.com)
Author URI: http://slurve.com
Date: 16 December 2009
*/

/* -------------------------------------------------------------------------- global */

body { margin: 0; padding: 0; background: #fff url(images/bg.jpg) 0 0 repeat-x; font-family: "Lucida Grande", "Lucida Sans Unicode", sans-serif; font-size: .9em; line-height: 1.8em; color: #333; }
body#home { background: #fff url(images/bg_home.jpg) 0 0 repeat-x; }
html, body, #wrap { min-height: 100%; width: 100%; height: 100%; }
html>body, html>body #wrap { height: auto; }
a img { border: none; }
p { margin: 0 0 15px 0; }

/* -------------------------------------------------------------------------- headers */
	

/* -------------------------------------------------------------------------- links */

a, a:visited { color: #e63829; text-decoration: none; outline: none; }
a:hover, a:active { color: #000; }

/* -------------------------------------------------------------------------- masthead */

#masthead { position: relative; height: 115px; z-index: 2; margin: 0 0 31px 0; background: url(images/bg_joshbraff.png) top right no-repeat; }
#logo { position: absolute; top: 42px; left: 0; }
#logo a { position: relative; width: 458px; height: 0px !important; display: block; background: url(images/logo.png) top left no-repeat; overflow: hidden; padding: 38px 0 0 0; border: 0; outline: none; }
#nav { position: absolute; bottom: 0; left: 0; z-index: 2; }
#nav ul { margin: 0; padding: 0; z-index: 2; }
#nav li { margin: 0 25px 0 0; padding: 0; float: left; display: inline; position: relative; list-style-type: none; }
#nav li.lastItem { margin-right: 0; }
#nav li a, #nav li a:visited { position: relative; height: 0px !important; display: block; overflow: hidden; padding: 16px 0 0 0; border: 0; outline: none; }
#nav li#navHome a { background: url(images/nav_home.gif); width: 54px; }
#nav li#navBooks a { background: url(images/nav_books.gif); width: 62px; }
#nav li#navAbout a { background: url(images/nav_about.gif); width: 64px; }
#nav li#navBlog a { background: url(images/nav_blog.gif); width: 48px; }
#nav li#navEvents a { background: url(images/nav_events.gif); width: 226px; }
#nav li#navPress a { background: url(images/nav_press.gif); width: 55px; }
#nav li#navContact a { background: url(images/nav_contact.gif); width: 84px; }
#nav li:hover a, #nav li a:hover, #nav li.current_page_item a { background-position: 0 -16px !important; }
#nav li.current_page_parent li a, #nav li.current_page_parent li a:visited { color: #fff; }
#nav ul ul { display: none; width: 210px; position: absolute; top: 15px; left: -15px; padding: 22px 0 0 0; margin: 0; z-index: 999; border-bottom: 4px solid #5b5a56; background: url(images/bg_nav.gif) 0 0 repeat-x; }
#nav li li { float: none; display: block; list-style-type: none; width: 210px; padding: 0; margin: 0 0 8px 6px; border: none; text-align: left; position: relative; }
#nav li li a, #nav li:hover li a , #nav li li a:visited, #nav li:hover li a:visited { font-size: 12px; line-height: 15px; color: #ffdead !important; height: auto !important; margin: 0 8px 0 8px; padding: 0; text-transform: none; width: auto !important; border: none; background: none !important; cursor: pointer; letter-spacing: 0px; }
#nav li li a:hover, #nav li:hover li a:hover { border: none; color: #fff !important; }

.tools { position: absolute; top: 15px; right: 20px; font-size: 11px; line-height: 11px; }
.tools #searchForm { display: inline; margin: 0 0 0 20px; }
.tools input { width: 120px; border: 1px solid #ccc; padding: 2px 3px; color: #444; }
.tools .submit { width: 55px; height: auto; background: none; color: #ffe850; border: none; }
.tools .submit:hover { color: #fff; cursor: pointer; }
.fontResizer { margin: 0 0 0 10px; color: #fff; }
.fontResizer a, .fontResizer a:visited { margin: 0 2px 0 4px; color: #ffe850; }
.fontResizer a:hover { color: #fff; }
.smallFont { font-size: 12px; }
.medFont { font-size: 14px; }
.largeFont { font-size: 16px; }

/* -------------------------------------------------------------------------- containers */

html.hide #container { display: none; }
#wrap { position: absolute; top: 0; left: 0; }
#container { position: relative; margin: 0 auto 0 auto; width: 960px; height: auto; padding: 0 0 200px 0; }
#main { float: left; display: inline; width: 670px; margin: 15px 30px 30px 0; padding: 0; z-index: 0; }
#main.wide { float: none; display: block; width: 960px; padding: 0; margin: 0; }

/* -------------------------------------------------------------------------------- contact */

#contactForm { margin: 20px 0; }
#contactForm img { vertical-align: middle; margin: 0 0 0 10px; } /* verification image */
#contactForm label { text-transform: uppercase; display: block; color: #999; margin: 0 3px 0 0; }
#contactForm input, textarea { width: 300px; border: 1px solid #ccc; padding: 4px; color: #444; font: normal 12px "Lucida Grande", "Lucida Sans Unicode", Verdana, sans-serif; }
#contactForm textarea { width: 400px; height: 200px; }
#contactForm label.error { text-transform: none; margin: 4px 0 0 0; color: #930; }
#contactForm .required { font-style: italic; font-family: "Georgia", serif; font-size: 11px; margin: 20px 0; color: #ccc; }
#contactForm .submit input { width: 130px; height: 28px; background-color: #d95734; color: #fff; border: none; font-size: 11px; }
#contactForm .submit input:hover { background-color: #0c5053; cursor: pointer; border: none; }
#contactForm label.over-apply { top: 2px; }
p.success { font-size: 18px; color: #999; }

/* -------------------------------------------------------------------------- interior */

#main h1 { margin: 0 0 25px 0; font-size: 2.5em; line-height: 1.1em; font-weight: normal; color: #999; }
#subnav { margin: 0 0 20px 0; }
#subnav ul { margin: 0; padding: 0; height: 30px; }
#subnav li { margin: 0 20px 0 0; padding: 0; list-style-type: none; float: left; display: inline; }
#subnav li a, #subnav li a:visited { font-size: 16px; }
#subnav li.current_page_item a { color: #333; cursor: text; }
.post { margin-bottom: 30px; }
.post h2 { margin-bottom: 10px; }
.postmeta { color: #999; }
.reviewsWrap { font-style: italic; width: 80%; }
.reviewsWrap em {  display: block; color: #999; font-style: normal; text-transform: uppercase; font-size: 90%; }
.bookDetails { float: right; display: inline; margin: 30px 0 30px 30px; }
.commentlist { margin: 0; padding: 0; list-style-type: none; }
.commentlist li { margin: 0; padding: 15px 25px; }
.commentlist .alt { background-color: #eee; }
.commentlist cite { font-size: 14px; font-style: normal; }
.downloads { width: 200px; float: right; display: inline; background-color: #eee; padding: 15px 15px 5px 15px; margin: 0 0 20px 20px; }
.downloads ul { margin: 0; padding: 0; }
.downloads li { margin: 0 0 10px 15px; padding: 0; list-style-type: disc; color: #999; line-height: 18px; }

/* -------------------------------------------------------------------------- homepage */

#homeLead { position: relative; }
#homeLeadItem { position: absolute; top: 0; right: 0; background: rgb(255, 255, 255); background: rgba(255, 255, 255, 0.1); width: 590px; padding: 20px; }
#homeLeadItem p { margin: 0 20px 0 0; color: #888; font-size: 1.2em; line-height: 1.8em; }
#homeLeadItem img { float: left; display: inline; margin: 0 24px 0 0; }
#homeLeadItem .leadText { float: left; display: inline; width: 430px; }
#homeLeadItem .links { font-size: 14px; color: #ea3829; border-top: 1px solid #444; margin: 15px 0 0 0; padding-top: 10px; }
#homeLeadItem a, #homeLeadItem a:visited { color: #ea3829; }
#homeLeadItem a:hover { color: #fff; }
#homeLeadItem .availability { position: absolute; top: -30px; right: -60px; }
#homeReviews { height: 85px; }
#homeReviews h2 { float: left; display: inline; margin: 24px 30px 0 0; }
#homeReviews #txtReviews a { position: relative; width: 123px; height: 0px !important; display: block; background: url(images/txt_reviews.gif) top left no-repeat; overflow: hidden; padding: 20px 0 0 0; border: 0; outline: none; }
#homeReviews .leadReview { float: left; display: inline; margin: 15px 40px 0 0; width: 640px; }
#homeReviews blockquote { color: #fff; margin: 0 0 4px 0; font-size: 1.1em; line-height: 1.4em; font-style: italic; }
#homeReviews cite { font-style: normal; font-size: .8em; line-height: 1.5em; color: #ccc; }
#homeReviews cite em { font-style: normal; font-size: 1.2em; line-height: 1.5em; color: #999; }
#homeAudio { width: 400px; float: left; display: inline; margin: 8px 0 0 0; }
#homeAudio #txtAudio a { position: relative; width: 92px; height: 0px !important; display: block; background: url(images/txt_audio.gif) top left no-repeat; overflow: hidden; padding: 21px 0 0 0; border: 0; outline: none; }
#homeAudio ul { margin: 0; padding: 0; }
#homeAudio ul li { margin: 0; padding: 0; list-style-type: none; font-family: "Lucida Grande", "Lucida Sans Unicode", sans-serif !important; }
#homeAudio ul li a, .audioplayer_container a, .audioplayer_container a:visited { font-family: "Lucida Grande", "Lucida Sans Unicode", sans-serif !important; color: #ffe850 !important; font-weight: normal !important; text-decoration: none !important; outline: none !important; font-size: 12px !important; }
#homeAudio ul li a:hover, .audioplayer_container a:hover { color: #fff !important; }
#homeAudio .wpaudio { font-family: "Lucida Grande", "Lucida Sans Unicode", sans-serif !important; }
#homeAudio ul li p.audioplayer_container { margin: 0; }
#homeAudio .wpa_bar { margin: 4px 0 !important; }
#homeAudio .wpa_sub { color: #fff !important; margin: 4px 0 !important; }
#homeEvents { height: 145px; width: 560px; float: left; display: inline; margin: 0 0 35px 0; }
#homeEvents h2 { margin: 24px 40px 15px 0; }
#homeEvents #txtAppearances a { position: relative; width: 345px; height: 0px !important; display: block; background: url(images/txt_appearances.gif) top left no-repeat; overflow: hidden; padding: 20px 0 0 0; border: 0; outline: none; }
#homeEvents .eventItem { float: left; display: inline; width: 180px; margin: 0 25px 0 0; font-size: .95em; line-height: 1.8em; color: #fff; }
#homeEvents .eventItem h3, #homeEvents .eventItem h3 { margin: 0; }
#homeEvents .eventItem h3 a, #homeEvents .eventItem h3 a:visited { color: #fff; }
#homeEvents .eventItem h3 a:hover { color: #ccc; }
#homeBottom { clear: both; margin: 20px 0 0 0; }
#homeBottom p { margin: 10px 0 0 0; font-size: .95em; line-height: 1.5em; }
#homeBottom em { font-style: normal; }
#homeBottom .promoFacebook { float: left; display: inline; width: 220px; margin: 0 20px 0 0; }
#homeBottom .promoFacebook img { float: left; display: inline; margin: -8px 5px 0 0; }
#homeBottom .promoMySpace { float: left; display: inline; width: 220px; }
#homeBottom .promoMySpace img { float: left; display: inline; margin: -8px 10px 0 0; }
#homeBottom .promoNewsletter { float: left; display: inline; width: 260px; }
#homeBottom .promoNewsletter img { float: left; display: inline; margin: -10px 10px 0 0; }
#homeBottom .siteCredit { float: left; display: inline; width: 240px; }
#homeBottom .siteCredit p { font-size: 0.9em; line-height: 1.5em; color: #777; }
p.moreLink { margin: 30px 0 0 0; float: left; display: inline; }
p.moreLink a, p.moreLink a:visited { color: #ffe850; font-size: 1.0em; line-height: 1.6em; }
p.moreLink a:hover { color: #fff; }

/* -------------------------------------------------------------------------- sidebar */

#sidebar { position: relative; float: left; display: inline; width: 170px; padding: 0; margin: -25px 0 0 40px; padding: 35px 0 0 30px; color: #555; }
#sidebar h2 { font-size: 1.4em; line-height: 1.8em; margin: 0 0 4px 0; font-weight: normal; color: #999; }
#sidebar h3 { font-size: 1.0em; line-height: 1.8em; margin: 0; font-weight: normal; }
#sidebar ul { margin: 0 0 20px 0; padding: 0; }
#sidebar ul li { margin: 0; padding: 6px 0; list-style-type: none; border-bottom: 1px dotted #ccc; }

/* -------------------------------------------------------------------------- footer */

#footer { position: absolute; bottom: 0; width: 100%; padding: 20px 0 10px 0; height: 50px; margin: 0; background: #38393b; \width: 100%; w\idth: 100%; border-top: 6px solid #737475; }
#footer .footerWrap { position: relative; width: 960px; margin: 0 auto; }
#footer .footerWrap p { color: #fff; position: absolute; top: 0; right: 60px; font-size: .8em; line-height: 1.6em; }

/* -------------------------------------------------------------------------- utility */

div.label { position: relative; margin: 0 0 10px 0; }
label.over-apply { font-size: 11px; color: #999; position: absolute; top: 1px; left: 6px; padding: 0; margin: 0; }
a.imglink:link, a.imglink:visited { border: none; }
.alignright { float: right; display: inline; margin: 15px 0 15px 15px; }
.alignleft { float: left; display: inline; margin: 15px 15px 15px 0; }
.clear { clear: both; }
.shadow-left { background: transparent url(images/shadow_left.png) no-repeat 0 0; width: 13px; height: 203px; position: absolute; top: 0px; left: -13px; z-index: 99; }
