/*-----
generic
-----*/

a:link, a:visited { color:#326b9d; text-decoration:none }
a:hover { color:#528bbd }
h1, h2, h3, h4, h5, h6 { margin:0; font-size:1em; font-weight:normal }
p, ul, ol { margin:0 0 20px; font-size:1.2em; line-height:20px }

#head, #banner, #buckets, #foot { clear:both }

 
/*-------------------------------
backgrounds / colors / typography
-------------------------------*/

html { background:url(../img/tile.gif) repeat 0 0 }

body {
background:#fff url(../img/texture.gif) repeat 0 0;
font-family:tahoma, verdana, sans-serif;
font-size:62.5%;
line-height:1em;
color:#666;
}

#body { border-right:1px solid #dfdfdf; }
  #top-gradient { position:absolute; top:0; left:0; display:block; background:#fff url(../img/body.gif) repeat-x 0 0; width:100%; height:188px }
  #content-base { background:url(../img/content-end.gif) repeat-x left bottom }
  #body p, #body ul, #body ol { font-size:1.3em }


.side p, .side ul, .side ol { font-size:1.3em }
  .side .quote { background:url(../img/quote-begin.gif) no-repeat 0 5px; padding:5px 0 0 26px; margin:0 0 0 0 }
  .side .quote p { color:#004785; font-family:georgia, serif; font-size:17px; line-height:25px }
  .side .quote p.cite { background:url(../img/quote-end.gif) no-repeat 100% 3px; padding:30px 0 0 0; font-size:1.1em; color:#959595; font-family:tahoma, verdana, sans-serif; color:#959595; margin-top:-40px; line-height: 13px}
  .side .quote p.cite em {display:block; padding:-10px 0 0 0}  
  .side .quote p.cite b {font-size:13px; font-weight: normal; display:block; padding:0 0 4px 0}
  .side .quote p.long {font-size:15px; line-height:22px }

.side .testimonials {position:relative;overflow:hidden;width:210px;margin:0 0 0 -15px;}
	.side .testimonials .quote {width:210px;}

#head h2, #banner h2, #content h2 { font-size:2.4em; }
#head h2, #content h2 { color:#004785 }
#head #logo h2 { font-size:13px }
#head #logo a { outline:0 }

/* banner */

#banner-content, #banner-slides .text { background:#034a88 url(../img/banner.gif) repeat-x 0 0 }
  #banner-slides { color:#fff }
  #banner-nav { font-size:1.1em }
  #banner-nav a { display:block; float:left; padding:10px 10px 20px; color:#bcc9d5; font-weight:bold }
  #banner-nav a.next { float:right }
  #banner-nav a:hover { color:#fff }
  #banner-nav a.activeSlide { color:#048; background:#a9c998 }
  #banner-nav a.activeSlide:hover { color:#048; background:#a9c998 }

/* side misc */

.services #side-right h2 { color:#afafaf; margin:0 0 20px }
.services #side-right h3 { color:#959595; font-size:11px; text-transform:uppercase; margin:25px 0 8px 0; width: 150px; border-bottom: solid 5px #DFDFDF; padding: 0 0 8px 0;}
.contact #side-right p { color:#004785; font-size:13px; margin:0; line-height:18px }
.contact #side-right a { color:#326b9d; }

.services #side-right a { border:1px solid #cecece; background:#cecece }
.services #side-left #side-photo { margin-bottom:35px }

/* services */

#side-gallery a { display:none; width:150px; height:80px; margin:0 0 15px }
#side-gallery a.category { display:block }

h3 { font-size:1.7em; color:#549534; font-weight:normal }

.news .post h4 { margin:20px 0 0; font-weight:bold; font-size:11px }
.news .post h3 { color:#549534; font-size:1.3em; line-height:17px; margin:5px 0 2px; font-weight:bold }
.news .post .post-date p { font-weight:bold; margin:0 0 3px; font-size:1.1em }
.news .post a.read-more { color:#707070; text-decoration:underline; font-size:10px; font-weight:bold }
.news .post a.read-more:hover { color:#808080 }
.news .post p { font-size:13px; line-height:17px }

.news-items .post h4 { margin:20px 0 0; font-weight:bold; font-size:11px }
.news-items .post h3 { color:#549534; font-size:1.3em; line-height:17px; margin:5px 0 2px; font-weight:bold }
.news-items .post .post-date p { font-weight:bold; margin:0 0 3px; font-size:1.1em }
.news-items .post a.read-more { color:#707070; text-decoration:underline; font-size:10px; font-weight:bold }
.news-items .post a.read-more:hover { color:#808080 }
.news-items p { font-size:13px; line-height:17px }

ul.bullets { font-size:1.4em; list-style:none; padding:0; margin-left:3px }
ul.bullets li { background:url(../img/li.gif) no-repeat 0 8px; line-height:30px; padding:0 0 0 30px }
.home #content { background:url(../img/banner-end.gif) no-repeat top center;  }

/* green button */
div.button a { background:#549534; font-size:11px; text-transform:uppercase; line-height:17px; display:block; float:left; cursor:pointer; clear:both;}
div.button a .button-text { color:#eee; height:18px; padding:0 10px  }
div.button a:hover { background:#64a544 }
div.button a:hover .button-text { color:#fff }
div.button a span { display:block; float:left }

div.button a span.button-side-a { background:#f8f8f8 url(../img/button-side-a.gif) no-repeat 0 0; width:6px; height:18px }
  div.button a:hover span.button-side-b { background-position:0 -18px }

.login div.button a span.button-side-b { background-color:#efefef }

div.button a span.button-side-b { background:#f8f8f8 url(../img/button-side-b.gif) no-repeat 0 0; width:18px; height:18px }
  div.button a:hover span.button-side-a { background-position:0 -18px }

/*
#head { border:1px solid red }
#banner { border:1px solid green }
#content { border:1px solid blue }
#buckets { border:1px solid red }
#foot { border:1px solid black }
#foot-nav, #foot-logo, #foot-copyright { border:1px solid #fff }
*/

/*-
nav
-*/

#nav, #foot-nav { text-transform:uppercase }
#nav li a { font-weight:bold }
#nav li { background:url(../img/nav-divide.gif) no-repeat right 4px }
#nav li.last { background:none }

#head #nav { float:right; padding:55px 0 0 }
#head .nav ul, #foot .nav ul { margin:0; padding:0; list-style:none } 
#head .nav ul li, #foot .nav ul li { float:left }
#head .nav ul li a { color:#326b9d }
#head .nav ul li a:hover { color:#124b7d }
#head .nav ul li a, #foot .nav ul li a { float:left; display:block; padding:5px 20px }
#foot .nav ul li a { padding:0 20px }
#head .nav ul li.on a { color:#549534 }
#foot .nav ul li.on a { color:#fff }
#head .nav ul li.last a, #foot .nav ul li.last a { padding-right:0 }

#foot { color:#ccd9e5; background:#004785 url(../img/foot.gif) repeat-x 0 0 }
  #foot-logo h2 a { background:url(../img/foot-logo.png) no-repeat 0 0; }
  #foot .nav ul li a { font-size:11px; font-weight:normal; color:#bcc9d5; border-right:2px solid #9ca9b5 }
  #foot .nav ul li a:hover { color:#eee }
  #foot .nav ul li.on a { color:#fff }
  #foot .nav ul li.last a { border:0 }
  #foot-copyright p { line-height:1.2em }

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


.contact #side-right #contact-info {margin:0 0 24px 0;}
.contact #side-right h2 { color:#afafaf; margin:0 0 25px 0}
.contact #side-right h3{ color:#959595; font-size:11px; text-transform:uppercase; margin:20px 0 4px 0; width: 150px;}
.contact #side-right p { color:#004785; font-size:13px; margin:0; line-height:18px }
.contact #side-right a { color:#326b9d; }

.about #side-left #contact-info {margin:0 0 24px 14px;}
.about #side-left h2 { color:#afafaf; font-size:20px;line-height:22px; margin:0 0 17px 0}
.about #side-left h3{ color:#959595; font-size:11px; text-transform:uppercase; margin:17px 0 4px 0; width: 150px;}
.about #side-left p { color:#004785; font-size:13px; margin:0; line-height:16px }
.about #side-left a { color:#326b9d; }




.contact form { font-family:'lucida grande', 'lucida sans unicode', sans-serif; font-size:11px }
.contact form { margin:25px 0 }
.contact form label { color:#666; float:left; width:130px; padding:5px 0 0 }
.contact form input, form textarea { padding:5px; border:0; border-top:1px solid #cecece; border-bottom:1px solid #e4e4e4; background:#eee; color:#575757; font-size:12px }
.contact form input { width:315px }
.contact form textarea { width:314px; height:100px }
.contact form label.comments { display:block; clear:both; float:left; width:100%; font-size:12px }
.contact form label, form input { margin:0 0 10px }
.contact form button {
display:block; margin:22px 0 0;
background:url(../img/submit.gif) no-repeat 0 0;
width:96px; height:18px; border:0; text-indent:-9999px
}
.contact form .contact-error { width:305px; margin:0 0 15px; padding:0 10px 10px; background:#f6f6f6; border-bottom:1px solid #ddc; border-top:1px solid #eed }
.contact form .contact-error h4 { margin:12px 0 7px; padding:0; font-size:13px; font-weight:bold }
.contact form .contact-error ul { margin:0; padding:0 0 0 18px }
.contact form .contact-error ul li, .contact form .contact-error p { font-size:12px }
#directions { padding:23px 0 0 }
#directions p { margin:0 0 3px }
#directions h3 { margin-top:20px; margin-bottom:8px }

/*--
misc
--*/

hr.divide { display:none }
.clear { clear:both }
img { border:0 }
img.image { border:5px solid #eee }
.hide { display:none }

/*----
layout
----*/

body { margin:0 }

#head-content { position:relative }
#head-content, #banner-content, #foot-content, #content { width:900px; margin:0 auto; padding:0 30px }

#banner h2 { margin:0 0 17px }
#head h2,
#banner h2,
h2 { margin:0 0 13px }
h3 { margin:25px 0 5px }

#head { float:left; width:100% }
  #head #logo { float:left; width:320px; padding:30px 0; height:90px }
  #head #logo h1 { }
  #head #logo h2 { color:#549534; margin:9px 0 0 80px }
  #head #logo h2 strong { color:#004785; font-weight:normal }
  #head .login { position:absolute; top:1px; right:25px }

#banner #banner-content { padding:0 0 0 5px; height:310px; overflow:hidden; width:900px; position:relative }
#banner-content .text { width:309px; height:250px; padding:54px 40px 0; float:right; position:relative; z-index:4 }
  #banner-content .text h2 { font:normal 20px/24px verdana, helvetica, sans-serif; color:#fff;} 
  #banner-content .text p { font:normal 11px/19px verdana, helvetica, sans-serif; color:#fff;} 

  #banner-slides .slide { width:511px; height:310px; float:left; clear:both; position:relative; }
  #banner-slides .slide .photo { width:511px; height:310px; position:relative; z-index:1; float:left }
  #banner-slides .slide .photo img { display:block; float:left; width:509px; height:310px }
  #banner-nav { position:absolute; bottom:0; left:545px; z-index:5 }

#content-base { float:left; clear:both; width:100% }
  #content { width:900px; padding-bottom:55px; padding-top:45px; position:relative; z-index:1 }
  #content #body table ul {margin:0 0 20px 0; padding:0;}
  #content table li {background:url(../img/li.gif) no-repeat 0 8px; list-style:none;padding:1px 0 0 16px;}
    #content #body { width:400px; float:left; padding:7px 30px 0 0 }
    #content #side-left { float:left; width:220px; padding:0 30px 0 0;min-height:370px; }
    .contact #content #side-left { left:-18px; margin-top:-12px; position:relative; z-index:1 }  
    #content #side-right { float:right; width:190px; padding:10px 0 0 27px }
    .services #side-photo { margin:0 0 0 -28px }
    #side-photo img { position:relative; z-index:2 }
  .home #content { padding-top:0 }

#home-banner { width:900px; height:215px; margin:0; background: url(../img/home-banner.jpg) top left no-repeat;}

#buckets { float:left; width:100%; margin:50px 0 0 0;}
  #buckets h2 {font-size:20px;line-height:22px;margin:0 0 10px 0; padding:0;}
  #bucket-adv, #bucket-serv, #bucket-news { float:left; padding:0 13px }
  #bucket-adv { width:265px; padding:0 45px 0 0; margin:0;}
  #bucket-serv { width:550px; padding:0 0 0 10px; margin:0; }
  #bucket-serv .bucket-photo { margin:0;}
  #bucket-news .bucket-text { width:260px; padding-left:25px }
  #bucket-news div.button { margin-left:24px }
  #buckets .bucket-photo { padding:60px 0 0; height:210px }
  #buckets .button { padding:10px 0 0 0 }
  #buckets h3 {margin:2px 0; font-size: 14px;}
  #buckets p {margin:4px 0;}
  #buckets p em {font-size:14px; font-style: normal; line-height: 24px;}
  #buckets table ul {margin:0 0 20px 0; padding:0;}

#foot { position:relative; float:left; width:100%; z-index:0; padding:33px 0 40px }
  #foot-logo { float:left; width:350px }
  #foot-logo h2 a { display:block; width:209px; height:52px } 
  #foot-nav { float:right; clear:right }
  #foot-nav ul { margin:0 }
  #foot-copyright { float:right; clear:right; width:380px; padding:20px 0 0 }
  #foot-copyright p { margin:0; text-align:right }
  #foot h2 a span { text-indent:-9999px; display:block }
  #foot .login { display:none }
  

