/* 
Tom Rose tom@slurve.com
13 Feb 2008
*/

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

body { margin: 0; padding: 0; background: #f9f8f4 url(images/bg.jpg) 0 0 repeat-x; }

/* -------------------------------------------------------------------------- typography */

body { font-family: "Lucida Grande", "Lucida Sans Unicode", sans-serif; font-size: 12px; color: #333; line-height: 22px; }
#sidebar { color: #777; font-size: 11px; line-height: 20px; }
input, textarea { font-family: "Lucida Grande", "Lucida Sans Unicode", sans-serif; }
.description { font-family: "Georgia"; font-size: 140%; line-height: 160%; color: #afaa8f; }
.postmetadata { font-size: 95%; color: #999; }
#footer p { color: #fff; font-size: 95%; line-height: 160%; margin: 30px 0 30px 22px; }
em { font-style: normal; font-size: 140%; font-weight: bold; }
#masthead em { font-size: 100%; }
blockquote { margin: 0 0 20px 0; font-style: italic; }
blockquote strong { font-style: normal; color: #555; }

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

a:link, a:visited, a:active { color: #960; text-decoration: none; outline: none; }
a:hover { text-decoration: underline; }
#footer a { color: #ffdead; } 

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

h1, h2 { margin: 0; font-weight: normal; font-family: "Georgia"; }
h1 { font-size: 200%; margin: 0 0 22px 0; color: #555; }
h2 { font-size: 160%; margin: 30px 0 10px 0; }
#resources h2 { font-size: 120%; margin: 10px 25px; }
h3 { font-size: 110%; margin: 0 0 5px 0; color: #555; }

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

#logo { position: absolute; top: 23px; left: 40px; }
#logo a { position: relative; width: 240px; height: 0px !important; display: block; background: url(images/logo.gif) top left no-repeat; overflow: hidden; padding: 65px 0 0 0; border: none; }
#logo a:hover { background-position: 0 0; border: none; }
#nav ul { position: absolute; top: 119px; right: 0; list-style-type: none; }
#nav li { position: relative; float: left; text-align: center; margin: 0 0 0 35px; }
#nav a, #nav a:visited { color: #eee; text-transform: uppercase; font-weight: bold; }
#nav li.current_page_item a, #nav a:hover { color: #fff; }
#contactInfo { position: absolute; top: 23px; right: 0; text-align: right; display: none; }
#home #contactInfo { display: block; }
#contactInfo p { margin: 4px 0; font-size: 95%; color: #444; }
#contactInfo em { font-style: normal; font-weight: bold; color: #555; margin: 0 4px 0 10px; }

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

#container { position: relative; width: 950px; margin: 0; padding: 0; }
#masthead { position: relative; height: 146px; z-index: 5000; }
#wrap { width: 100%; background: url(images/bg_wrap.jpg) -250px 0 no-repeat; }
#main { position: relative; width: 700px; min-height: 490px; float: left; margin: 30px 0 0 0; padding-bottom: 30px  ; }
#sidebar { position: relative; width: 170px; float: left; margin: 16px 60px 0 20px; }
#home #wrap { background: url(images/bg_wrap.jpg) 0 0 no-repeat; }
#home #main { width: 420px; margin-left: 30px; }
#search-local #wrap { background: url(images/bg_wrap.jpg) -550px 0 no-repeat; }
#search-local #main { width: 100%; padding-left: 40px; }
#home #sidebar { width: 420px; margin-right: 30px; }
#footer { position: relative; background-color: #7a7b75; border-top: 4px solid #afab90; border-bottom: 4px solid #afab90; width: 100%; }

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

.kwContact { margin: 15px auto; width: 205px; }
.searchButton { float: left; margin: 0 20px 0 0; text-align: center; }
.searchButton p { margin: 0; font-size: 95%; color: #666; }
.searchButton a, .searchButton a:visited { position: relative; width: 175px; height: 37px; padding: 8px 0 0 0; font-size: 120%; color: #fff; display: block; background: url(images/bg_button.gif) top left no-repeat; overflow: hidden; border: none; }
.searchButton a:active, .searchButton a:hover { background-position: 0 -45px; text-decoration: none; color: #fff; }

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

.idx { width: 950px; height: 530px; border: none; }

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

#sidebar ul { margin: 0 0 30px 0; padding: 0; }
#sidebar li { margin: 0 0 5px 0; padding: 0; list-style-type: none; }

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

a img, a.imglink:link, a.imglink:visited { border: none; }
a.imglink:hover { background: transparent; }
p { margin: 0 0 15px 0; } 
a img { border: none; }
ol { margin: 0 0 0 20px; padding: 0 0 0 20px; position: relative; }
li { margin: 10px 20px; }
ul { list-style-type: circle; margin: 0 0 25px 0; padding: 0 0 0 15px; }
.clear { clear: both; margin: 0; height: 0; }
.shadow-right { background: transparent url(images/shadow_right.png) no-repeat 0 0; width: 13px; height: 203px; position: absolute; top: -8px; right: -18px; z-index: 99; }
.hidden { display: none; }

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

#contactForm { margin: 20px 0; }
#contactForm p { margin: 10px 0; clear: both; }
#contactForm label { display: block; font-size: 11px; color: #888; margin: 2px 12px 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: 450px; height: 190px; }
#contactForm label.error { text-transform: none; font-size: 12px; font-weight: normal; line-height: 14px; margin: 4px 0 0 0; color: #930; }
#contactForm .required { font-style: italic; font-family: "Georgia", serif; font-size: 11px; margin: 20px 0; color: #930; }
#contactForm .submit { clear: both; margin: 20px 0 0 0; }
#contactForm .submit input { width: 130px; height: 28px; background-color: #da6332; 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; }