/*   
Author: Tom Rose (tom@slurve.com)
Author URI: http://slurve.com
Date: 03 Mar 2010
*/

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

body { margin: 0; padding: 0; background: #fff url(images/bg.jpg) 0 -100px repeat-x; font-family: "Lucida Bright", "Georgia", "Palatino", serif; font-size: 12px; line-height: 20px; color: #222; }
a img { border: none; }
p { margin: 0 0 15px 0; }
blockquote { margin: 0 20px 20px 20px; font-family: "Georgia", serif; font-style: italic; }
blockquote em { color: #666; display: block; }

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

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

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

#masthead { position: relative; width: 960px; height: 61px; z-index: 2; margin: 0; position: absolute; top: 40px; left: 0; z-index: 9999; }
#logo { position: absolute; top: 0; left: 40px; }
#logo a { position: relative; width: 300px; height: 0px !important; display: block; background: url(images/logo.png) top left no-repeat; overflow: hidden; padding: 61px 0 0 0; border: 0; outline: none; }
#nav { position: absolute; top: 13px; right: 105px; height: 33px; z-index: 2; background: url(images/bg_nav_left.png) left top no-repeat; }
#nav ul { margin: 0 -80px 0 0; padding: 4px 35px 2px 60px; height: 28px; z-index: 2; position: relative; background: url(images/bg_nav_right.png) right top no-repeat; }
#nav li { margin: 0 18px 0 0; padding: 0; float: left; display: inline; list-style-type: none; }
#nav li a, #nav li a:visited { position: relative; height: 0px !important; display: block; overflow: hidden; padding: 25px 0 0 0; border: 0; outline: none; }
#nav li#navHome a { background: url(images/nav_home.png); width: 48px; }
#nav li#navAbout a { background: url(images/nav_about.png); width: 54px; }
#nav li#navTeam a { background: url(images/nav_team.png); width: 77px; }
#nav li#navPractices a { background: url(images/nav_practices.png); width: 83px; }
#nav li#navNews a { background: url(images/nav_news.png); width: 49px; }
#nav li#navContact a { background: url(images/nav_contact.png); width: 71px; }
#nav a:hover { background-position: 0 -26px !important; }
#nav li.current_page_item a, #nav li.current_page_item a:visited { background-position: 0 -26px !important; }
.tools { position: absolute; top: -90px; right: 0; }
.tools #searchForm { margin: 0; }
.tools #searchForm input { width: 130px; background: transparent; border: 0; border-bottom: 1px solid #828282; color: #828282; padding: 3px 0; margin: 0; }
.tools #searchForm .submit { width: 36px; height: 30px; background: url(images/submit.png) 0 -2px no-repeat; border: none; text-indent: -9999px; margin: 0 0 0 -5px; }
.tools #searchForm .submit:hover { color: #fff; cursor: pointer; }

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

#container { position: relative; margin: 75px auto 20px auto; width: 960px; min-height: 700px; height: auto !important; height: 700px; background-color: #fff; }
#home #container { min-height: 502px; height: auto !important; height: 502px; }
#main { width: 926px; padding: 17px 17px 17px 17px; position: relative; }
#photoWrap { height: 122px; }
#photoWrap div { width: 926px; min-height: 122px; height: auto !important; height: 122px; }
#photoWrap div.boat { background: url(images/boat.jpg) 0 -150px no-repeat; }
#photoWrap div.viking { background: url(images/viking.jpg) 0 0 no-repeat; }
#photoWrap div.beach { background: url(images/beach.jpg) 0 0 no-repeat; }
#photoWrap div.city { background: url(images/city.jpg) 0 -50px no-repeat; }
#photoWrap div.norfolk { background: url(images/norfolk.jpg) 0 -50px no-repeat; }
#home #photoWrap div.city { background-position: 0 0; }
#home #photoWrap div.boat { background-position: 0 0; }
#home #photoWrap div.norfolk { background-position: 0 0; }
#content { float: left; display: inline; width: 646px; padding: 20px 20px 40px 20px; }
#content.wide { float: none; display: block; width: 886px; padding: 20px; }

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

#footer { position: absolute; bottom: -160px; left: 0; font-size: 11px; line-height: 18px; color: #555; width: 960px; height: 100px; padding: 0 0 60px 0; border-top: 1px dotted #999; }
#footer #copyright { margin: 0; position: absolute; top: 20px; left: 40px; }
#footer #contact { margin: 0; position: absolute; top: 20px; right: 40px; text-align: right; }
#footer #contact .officeItem { float: left; display: inline; margin: 0 0 0 50px; }

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

#sidebar { float: left; display: inline; width: 180px; padding: 30px 20px; }
#sidebar h2 { margin: 0; font-size: 18px; line-height: 24px; color: #ccc; font-weight: bold; letter-spacing: 1px; text-transform: uppercase; font-family: "Lucida Grande", "Verdana", sans-serif; }
#sidebar ul#newsHeads, #sidebar ul#subNav { margin: 0 0 30px 0; padding: 0; }
#sidebar ul#newsHeads li, #sidebar ul#subNav li { margin: 0; padding: 8px 0; list-style-type: none; border-bottom: 1px dotted #ccc; line-height: 16px; }
#sidebar ul#subNav li.current_page_item a, #sidebar ul#subNav li.current_page_item a:visited { color: #666; }
#sidebar ul#subNav li.lastItem { border-bottom: none; }
#sidebar ul#newsHeads li.rssFeed { border-bottom: none; }
#sidebar ul#newsHeads li.rssFeed a, #sidebar ul#newsHeads li.rssFeed a:visited { background: url(images/rss.png) 0 0 no-repeat; padding-left: 20px; }
#sidebar form { margin: 10px 0 30px 0; }

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

#home #photoWrap { height: 502px; }
#home #photoWrap div { width: 926px; min-height: 502px; height: auto !important; height: 502px; }
#home #photoWrap div.boat { background: url(images/boat.jpg) 0 0 no-repeat; }
#home #footer { border-top: none; }
#leadWrap { width: 865px; position: absolute; top: 51%; left: 30px; z-index: 9999; background: url(images/bg_lead.png) 0 0 repeat-x; min-height: 200px; height: auto !important; height: 200px; margin: 0 17px; padding: 0; }
#overview { color: #fff; font-family: "Lucida Grande", "Verdana", sans-serif; font-size: 16px; line-height: 26px; position: absolute; top: 25px; left: 495px; width: 300px; border-left: 1px solid #666; padding: 0 0 0 30px; }
#news { width: 430px; position: absolute; top: 15px; left: 30px; }
#news .newsItem { background: none !important; }
#news .newsItem p { color: #fff; margin: 0; }
#news .newsItem a, #news .newsItem a:visited { color: #dcd2b7; }
#news .newsItem a:hover { color: #fff; }
#news .newsItem .thumbnail { float: left; display: inline; background: url(images/bg_photo.png) 0 0 no-repeat; width: 171px; height: 153px; margin: 10px 25px 0 0; }
#news .newsItem .thumbnail img { width: 150px !important; height: 130px !important; margin: 10px; }
#news .newsItem .text { float: left; display: inline; width: 234px; line-height: 18px; margin: 10px 0 0 0; }
#news .newsItem .text h2 { font-size: 16px; font-weight: bold; color: #ccc; margin: 0 0 5px 0; font-family: "MetaPlusBold-"; text-transform: uppercase; }
#news .newsItem .text h3 { color: #fff; margin: 0 0 8px 0; font-size: 16px; }

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

.post_column_1 { float: left; display: inline; margin: 0 30px 0 0; }
#main h1 { margin: 0 0 18px 0; font-size: 34px; line-height: 40px; color: #295d84; font-weight: normal; font-family: "Lucida Grande", "Verdana", sans-serif; }
#main h1.sectionHead, #main h2.sectionHead { margin: 0 0 15px 0; font-size: 34px; line-height: 40px; color: #ccc; font-weight: bold; letter-spacing: 2px; text-transform: uppercase; font-family: "Lucida Grande", "Verdana", sans-serif; }
.post { margin: 0 0 30px 0; }
.post h2 { margin: 0 0 5px 0; font-size: 22px; }
.postmeta { margin: 15px 20px 20px 0; padding: 4px 0; color: #777; text-transform: uppercase; border-top: 1px dotted #ccc; border-bottom: 1px dotted #ccc; }
.postmeta em { text-transform: none; color: #999; }
#colA { float: left; display: inline; width: 246px; margin: 0 40px 0 0; }
#colB { float: left; display: inline; width: 600px; }
.contentWrap { display: none; }

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

#contactForm { margin: 60px 0 0 0; }
#contactForm label { text-transform: uppercase; display: block; font-size: 11px; color: #999; margin: 0 3px 0 0; }
#contactForm input, textarea { width: 300px; padding: 4px; color: #444; font: normal 12px "Lucida Grande", "Lucida Sans Unicode", Verdana, sans-serif; -moz-border-radius: 5px; -webkit-border-radius: 5px; border: 1px solid #ccc; }
#contactForm textarea { width: 400px; height: 200px; }
#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: #ccc; }
#contactForm .submit input { width: 110px; height: 28px; background-color: #960; color: #fff; border: none; font-size: 11px; }
#contactForm .submit input:hover { background-color: #000; cursor: pointer; border: none; }
p.success { font-size: 18px; color: #999; }

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

a.pdf, a[href$=".pdf"] { background: url(images/icon_pdf.gif) top right no-repeat; padding: 0 18px 0 0; }
.backToTop { margin: 20px 0; font-size: 12px; border-top: 1px dashed #999; }
.backToTop a, .backToTop a:visited { color: #999; }
p.label { position: relative; margin: 0; display: inline; }
label.over-apply { font-size: 11px; color: #999; position: absolute; top: -4px; 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; }
