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

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

body { margin: 0; padding: 0; background: #fff url(images/bg.jpg) 0 0 repeat-x; }
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; }

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

body, #main font { font-family: "Lucida Grande", Verdana, sans-serif; font-size: small; line-height: 160%; }
#container, #main font { color: #333; }
#sidebar { font-size: 95%; }
#sidebar a { font-size: 105%; }
.lead p { font-size: 150%; line-height: 150%; color: #efe7d5; }
#footer p { color: #eee; font-size: 95%; line-height: 150%; }
.leadText { font-size: 140%; color: #999; line-height: 160%; width: 95%; margin: 20px 0 0 0; }

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

a:link, a:visited, a:active { color: #4283B1; text-decoration: none; outline: none; }
a:hover { text-decoration: underline; }
.logo a { position: relative; width: 231px; height: 0px !important; display: block; background: url(images/logo.gif) top left no-repeat; overflow: hidden; padding: 43px 0 0 0; border: none; }
.logo a:hover { background-position: 0 0; border: none; }
#masthead a:hover { border: none; }
#footer a { color: #ccc; }

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

h1, h2, h3, h4, h5, h6 { font-weight: normal; margin: 0; }
h1 { font-size: 160%; margin: 4px 0 10px 0; line-height: 200%; text-transform: lowercase; }
h1.sectionHead { text-transform: lowercase; margin: 0; color: #999; }
h2 { font-size: 150%; margin: 0 0 8px 0; }
h2.sectionHead { font-size: 160%; margin: 0; line-height: 200%; color: #999; text-transform: lowercase; }
h3 { font-size: 140%; margin: 15px 0 0 0; }
em { color: #ccc; font-style: normal; }

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

.logo { position: absolute; top: 0; left: 69px; }
#nav ul { margin: 0; padding: 0; position: absolute; top: 0; left: 360px; list-style-type: none; }
#nav ul li { float: left; margin: 0 20px 0 0; height: 28px; padding: 7px 0 0 0; }
#nav a, .nav a:visited { color: #fff; margin: 0 15px; }
#nav li.current_page_item { background: url(images/bg_nav_hover.gif) 0 0 repeat-x; }

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

#containerWrap { position: absolute; top: 56px; left: 0; width: 600px; height: 35px; background: url(images/bg_container.gif) 0 0 repeat-x; }
#container { position: relative; margin: 0 auto 0 auto; width: 900px; padding: 0; padding-top: 56px; }
#footerWrap { position: relative; margin: 25px auto 0 auto; width: 900px; padding: 0; }
#masthead { position: relative; height: 35px; background: url(images/bg_masthead.gif) 0 0 no-repeat; margin: 0 0 40px 0; }
#wrap { position: relative; width: 100%; min-height: 400px; padding: 0 0 35px 0; margin: 0; }
#main { position: relative; width: 625px; float: left; margin: 0 45px 0 10px; }
#main.wide { width: 100%; float: none; }
#sidebar { position: relative; width: 206px; float: left; margin: 5px 0 0 0; }
#home #main { width: 450px; margin-right: 0; margin-left: 20px; }
#home #sidebar { width: 406px; }
#footer { position: relative; background-color: #2f608c; border-top: 20px solid #4283B1; border-bottom: 4px solid #4283B1; width: 100%; height: 250px; margin: 0; padding: 0; }

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

.categoryDesc { margin: 20px 0; font-size: 130%; line-height: 150%; color: #999; }

.excerptItem ul { margin: 0; padding: 0; }
.excerptItem li { margin: 0 0 0 15px; padding: 0; list-style-type: square; }
.retreatDates { float: left; background-color: #eee; margin: 15px 20px 30px 0; padding: 15px 20px; width: 210px; height: 200px; border: 4px solid #ccc; }
.retreatLinks { float: left; background-color: #eee; margin: 15px 0 30px 0; padding: 15px 20px; width: 210px; height: 200px; border: 4px solid #ccc; }
.retreatDates li, .retreatLinks li { margin: 0; padding: 0; list-style-type: none; }
.retreatDates h2, .retreatLinks h2 { color: #999; } 
h3.retreatTitle { color: #888; clear: both; margin: 30px 0 25px 0; padding: 0 0 3px 0; border-bottom: 1px dotted #888; }
h4 { font-weight: bold; clear: both; font-size: 140%; font-weight: normal; text-transform: lowercase; color: #555; }
.retreatPhoto { float: right; border: 4px solid #ccc; margin: 15px 15px 30px 20px; }

.photoMain { margin: 6px 0 0 0; }
.photoMain img { border: 4px solid #2e6223; }
.flickr img { margin: 8px; border: 4px solid #4283b1; }
.flickr img:hover { border: 4px solid #2e6223; }
.flickr p a { margin: 0 0 0 8px; }
.excerptItem { margin: 10px 0 0 10px; }
.excerptItem p { margin: 8px 0 15px 0; }
.excerptItem img { float: right; margin: 0 0 15px 15px; border: 4px solid #ccc; }
.titleEvents { position: relative; width: 206px; height: 35px; background: #4283b1 url(images/bg_right_blue.gif) top right no-repeat; }
.titleEvents div { position: relative; width: 5px; height: 35px; background: url(images/bg_left_blue.gif) top left no-repeat; }
.titleEvents h2 { position: absolute; top: 6px; left: 10px; width: 102px; height: 0px !important; display: block; background: url(images/txt_myevents.gif) 0 0 no-repeat; overflow: hidden; padding: 23px 0 0 0; border: none; }
#home .titleEvents { width: 406px; }
  
.titleUpdates { position: relative; width: 206px; height: 35px; background: #2e6223 url(images/bg_right_green.gif) top right no-repeat; margin: 30px 0 0 0; }
.titleUpdates div { position: relative; width: 5px; height: 35px; background: url(images/bg_left_green.gif) top left no-repeat; }
.titleUpdates h2 { position: absolute; top: 6px; left: 10px; width: 118px; height: 0px !important; display: block; background: url(images/txt_myupdates.gif) 0 0 no-repeat; overflow: hidden; padding: 23px 0 0 0; border: none; }
#home .titleUpdates { width: 406px; }

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

.headlines { padding: 0; width: 100%; margin: 10px 0 30px 0; }
.headlines li { margin: 5px 0; padding: 0 0 0 10px; list-style-type: none; line-height: 24px; list-style-type: none; color: #999; }
.headlines li a { color: #a6975b; font-size: 100%; margin: 4px 0; }
.headlines li.more { text-transform: uppercase; font-size: 85%; }
.headlines .more { border: none; text-transform: uppercase; background: none; font-size: 90%; }

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

#footer .siteInfo { position: absolute; top: 0; right: 50px; }
#footer .contactInfo { position: absolute; top: 0; left: 50px; }
#footer .contactInfo img { float: left; margin: 5px 15px 0 0; }
#footer .contactInfo p { float: left; }

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

.contentOff { display: none; }
.contentOn { display: block; }
.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: 48px; 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: 135px; right: -13px; z-index: 99; }

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

#contactForm label { font-size: 90%; text-transform: uppercase; display: block; margin: 20px 3px 0 0; }
#contactForm select { width: 300px; font-size: 95%; color: #555; border: 1px solid #ccc; padding: 3px; }
#contactForm option { border-top: 1px dotted #ccc; }   
#contactForm input, #contactForm textarea {  width: 300px; border: 1px solid #ccc; padding: 3px; color: #444; }
#contactForm input:focus, #contactForm textarea:focus, #contactForm select:focus { background-color: #ffc; }
#contactForm textarea { width: 400px; height: 200px; font: normal 12px "Lucida Grande", Verdana, sans-serif; }
#contactForm .required { color: #444; margin-top: 20px; }
#contactForm .submit input { width: 100px; background-color: #4283B1; color: #fff; border: none; }
#contactForm .submit input:hover { color: #eee; cursor: pointer; border: none; }
#contactForm .fmradio input { width: 12px; height: 12px; margin-right: 4px; border: none; }