/*   
Author: Tom Rose (tom@slurve.com)
Author URI: http://slurve.com
Date: 1 June 2008
*/

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

body { margin: 0; padding: 0; line-height: 160%; background: #fff url(images/bg.gif) 0 0 repeat-x; }
html, body, #wrapper { min-height: 100%; width: 100%; height: 100%; }
html>body, html>body #wrapper { height: auto; }

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

body { font-family: "Lucida Grande", Verdana, sans-serif; font-size: small; }
#container, #footer { color: #222; font-size: 95%; }
#sidebar { font-size: 95%; color: #888; }
#footer em { font-size: 220%; display: block; font-weight: normal; font-family: "Tahoma", sans-serif; color: #888; font-style: normal; letter-spacing: -1px; margin-bottom: 7px; }

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

a, a:visited, a:active { color: #c50; text-decoration: none; outline: none; }
a:hover { text-decoration: none; color: #c10; }
#logo a { position: relative; width: 489px; height: 0px !important; display: block; background: url(images/logo.png) top left no-repeat; overflow: hidden; padding: 56px 0 0 0; border: none; }
.toplinks a, .toplinks a:visited { color: #eee; }

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

h1, h2, h3, h4, h5, h6 { font-weight: normal; margin: 0; }
h1 { font-size: 230%; line-height: 200%; margin: 0 0 10px 0; font-family: "Tahoma", sans-serif; color: #ccc; letter-spacing: -1px; }
h2 { font-size: 180%; color: #999; margin: 15px 0; }
h2.title { font-size: 100%; text-transform: uppercase; letter-spacing: 1px; color: #999; margin: 5px 0 10px 0; }
h2.headline { font-size: 170%; text-transform: none; letter-spacing: 0; margin: 5px 0; }

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

#masthead { position: relative; height: 140px; }
#logo { position: absolute; top: 41px; left: 70px; }
#toplinks { position: absolute; top: 2px; left: 60px; color: #ccc; z-index: 1000; }
#toplinks strong { text-transform: uppercase; color: #fff; }
#toplinks ul { width: 100%; float: left; margin: 0; padding: 0; list-style-type: none; position: relative; }
#toplinks li { font-size: 95%; float: left; margin: 0 13px; padding: 0 0 8px 0; position: relative; }
#toplinks li a, #toplinks li a:visited { margin: 0; border: none; color: #fff; }
#toplinks li a:hover { color: #ccc; }
#nav { margin: 0; padding: 0; position: absolute; top: 116px; right: 20px; list-style-type: none; }
#nav li { float: left; margin: 0 25px 0 0; }
#nav li a, #nav li a:visited { color: #fff; font-size: 140%; text-decoration: none; border: none; }
#nav li a:hover { color: #ccc; }
#nav li.current_page_item a, #nav li.current_page_item a:visited { color: #ccc; }
#nav li.current_page_item a:hover { color: #ccc; }

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

#container { position: relative; margin: 0 auto 0 auto; width: 990px; height: auto; padding: 0 0 120px 0; }
#wrapper { position: absolute; top: 0; left: 0; }
#wrap { position: relative; width: 100%; padding: 25px 0; margin: 0; }
#main { position: relative; width: 665px; float: left; display: inline; margin: 0 0 0 30px; }
#main.wide { width: 100%; float: none; display: inline; margin: 0; }
#sidebar { position: relative; width: 234px; border-left: 1px dotted #ccc; padding: 0 20px; float: left; display: inline; margin: 0 0 0 20px; text-align: left; }

/* -------------------------------------------------------------------------- photos */

.lead { height: 247px; }
.lead .text { float: left; }
.lead .photo { float: right; margin-top: -21px; }

/* -------------------------------------------------------------------------- interior and homepage */

.colA { width: 425px; float: left; display: inline; margin: 0 0 25px 25px; position: relative; }
.colB { width: 480px; float: left; display: inline; margin: 0 25px 25px 35px; position: relative; }

.moduleSlides { position: relative; z-index: 1; margin: 0; }
.moduleSlides img { width: 416px; height: 311px; display: none; }
.moduleNews .placeholder { width: 100%; height: 200px; background-color: #eee; padding-top: 50px; text-align: center; }
.modulePhotos { margin: 20px 0 0 0; }
.moduleIntro { font-family: "Georgia"; font-size: 150%; color: #999; line-height: 140%; margin: 0 0 20px 0; }
.moduleBlog h3 { margin: 0 0 4px 0; }

.post { margin: 10px 0 25px 0; }

.headlines { padding: 0; margin: 0; }
.headlines li { line-height: 24px; margin: 0; padding: 0; list-style-type: none; }
.headlines li a { margin: 4px 0; }
.headlines .more { border: none; font-size: 90%; }

.modulePhotos { margin: 0; }
.modulePhotos .more { margin: 10px 0; }
.modulePhotos a { border: none; }
.modulePhotos img { margin: 0 4px 0 0; border: 4px solid #fff !important; float: left; width: 75px; height: 55px; }
.modulePhotos img:hover { border: 4px solid #ddd !important; }

.blogA { float: left; width: 250px; margin-top: -10px; }
.blogB { float: right; width: 250px; margin-top: -10px; }

.ngg-widget { margin: -25px 0 0 -5px !important; padding: 0 !important; }

.slideshowlink { display: none; }

/* -------------------------------------------------------------------------- blog */

#category_cloud { text-transform: lowercase; }
#category_cloud a, #category_cloud a:visited { color: #c50; }
#category_cloud a:hover { color: #c10; }
#blog .post { padding: 0 0 15px 0; }
#blog #sidebar h2 { font-size: 18px; text-transform: none; letter-spacing: 0; color: #c50; margin: 15px 0 5px 0; }
#blog #sidebar h2:hover { cursor: pointer; color: #c10; }
.postmetadata { color: #888; font-size: 11px; border-top: 1px dotted #ddd; border-bottom: 1px dotted #ddd; padding: 3px 0 5px 0; margin: 0 0 30px 0; }
#blog .post img, #blogs .single img { margin: 25px; border: 4px solid #ccc; }
#blog .navigation { margin: 20px 0; }
#blog .navigation .alignleft { float: left; }
#blog .navigation .alignright { float: right; }
.categories { text-transform: lowercase; }
.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; }

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

#footer { position: absolute; bottom: 0; background-color: #edebdc; border-bottom: 1px dotted #c5c2ae; border-top: 1px dotted #c5c2ae; width: 100%; margin: 20px 0; padding: 20px 0; text-align: center; \width: 100%; w\idth: 100%; }
#footer p { margin: 5px 0; color: #666; }

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

font { /* to override any font tags created by tinymce */ font-family: "Lucida Grande", Verdana, sans-serif; font-size: small; line-height: 130%; }
a img, a.imglink:link, a.imglink:visited { border: none; }
a.imglink:hover { background: transparent; }
p { margin: 0 0 15px 0; } 
a img { border: 0; }
dl, dd { margin: 0; padding: 0; }
dt { font-weight: bold; color: #999; }
ol { margin: 0 0 0 20px; padding: 0 0 0 20px; position: relative; }
li { margin: 10px 0; }
ul { list-style-type: circle; margin: 0; padding: 0 0 0 15px; }
.clear { clear: both; }
.icon { vertical-align: middle; margin: -3px 2px 0 2px; }
.inside { text-align: left; }
.shadow-left { background: transparent url(images/shadow_left.png) no-repeat 0 0; width: 13px; height: 203px; position: absolute; top: -8px; left: -13px; z-index: 99; }
.shadow-right { background: transparent url(images/shadow_right.png) no-repeat 0 0; width: 13px; height: 203px; position: absolute; top: -8px; right: -13px; z-index: 99; }

/* -------------------------------------------------------------------------------- form elements */

.navigation { height: 30px; font-size: 11px; }
.navigation .alignleft { float: left; }
.navigation .alignright { float: right; }
.ddfmwrap { margin: 0; }
label { font-size: 90%; text-transform: uppercase; display: block; margin: 20px 3px 0 0; }
select { width: 300px; font-size: 95%; color: #555; border: 1px solid #ccc; padding: 3px; }
option { border-top: 1px dotted #ccc; }   
input, textarea {  width: 300px; border: 1px solid #ccc; padding: 3px; color: #444; }
input:focus, textarea:focus, select:focus { background-color: #ffc; }
textarea { width: 400px; height: 200px; font: normal 12px "Lucida Grande", Verdana, sans-serif; }
.required { color: #444; margin-top: 20px; }
.ddfmerrors { color: #930; font-size: 130%; }
.errorlist { color: #930; font-weight: bold; }
.submit { width: 100px; background-color: #803A34; color: #fff; border: none; }
.submit:hover { background-color: #681A14; cursor: pointer; border: none; }
.fmradio input { width: 12px; height: 12px; margin-right: 4px; border: none; }