/* 
Tom Rose tom@slurve.com
24 June 2008
*/

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

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

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

body { font-family: "Lucida Grande", sans-serif; font-size: small; }
#container { color: #222; line-height: 160%; }
#sidebar { color: #777; font-size: 95%; line-height: 190%; }
input, textarea { font-family: "Lucida Grande", sans-serif; font-size: 13px; }
.description { font-size: 18px; line-height: 28px; color: #fff; }
.postmetadata { font-size: 95%; color: #999; }
#footer p { color: #333; font-size: 11px; margin: 10px 0 30px 0; }
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; }
#nav li li { font-size: 11px; }

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

a:link, a:visited, a:active { color: #960; text-decoration: none; outline: none; }
a:hover { text-decoration: underline; }
#footer a, #masthead a { color: #555; } 
#logo a { position: relative; width: 295px; height: 0px !important; display: block; background: url(images/logo.gif) top left no-repeat; overflow: hidden; padding: 120px 0 0 0; border: none; }
#logo a:hover { background-position: 0 -120px; border: none; }
#nav a, #nav a:visited { color: #ccc; text-transform: uppercase; padding: 5px 0 5px 0; display: block; margin: 0; }
#home .home a, #about .about a, #products .products a, #faq .faq a, #customers .customers a, #testimonials .testimonials a, #contact .contact a, #resources .resources a { color: #fff; text-decoration: none; }
#home .home a:hover, #about .about a:hover, #products .products a:hover, #faq .faq a:hover, #customers .customers a:hover, #testimonials .testimonials a:hover, #contact .contact a:hover, #resources .resources a:hover, #nav li:hover ul { color: #fff; }
#nav a:hover { color: #fff; text-decoration: none; }
#nav li li a, #nav li li a:visited, #products .products li a, #customers .customers li a { color: #ccc; text-transform: none; padding: 0; }
#nav li li a:hover { color: #fff; text-transform: none; }
#contactInfo a, #contactInfo a:visited { color: #dfd636; }

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

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

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

#logo { position: absolute; top: 20px; left: 40px; }
#nav { position: absolute; margin: 0; padding: 0; bottom: 0; left: 0; list-style-type: none; background: #426b8b url(images/bg_nav.gif); height: 31px; width: 100%; border-top: 2px solid #e0d736; border-bottom: 2px solid #e0d736; }
#nav li { position: relative; float: left; margin: 0; padding: 0 35px 0 0; }
#nav li ul { display: none; margin: 0; padding: 8px 0 8px 0; list-style-type: none; opacity: .95; position: absolute; top: 31px; left: -10px; width: 180px; background-color: #426B8B; border-top: 2px solid #e0d736; z-index: 2; }
#nav li li { margin: 0; padding: 0 0 0 10px; height: 23px; float: none; text-align: left; background-color: #426B8B; }
#contactInfo { position: absolute; top: 0; right: 0; background: url(images/bg_masthead_right.gif) right top no-repeat; padding: 60px 80px 0 0; }
#contactInfo div { margin: 4px 0; font-size: 12px; color: #ccc; margin: 0; }
#contactInfo em { font-style: normal; font-weight: bold; color: #fff; margin: 0; }
#contactInfo strong { font-size: 16px; }
#nav .home { padding-left: 35px; }

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

#container { position: relative; width: 950px; margin: 20px auto 0 auto; padding: 0; }
#masthead { position: relative; height: 194px; background: #1e3e70 url(images/bg_masthead_left.gif) 0 0 no-repeat; z-index: 2; }
#wrap { width: 100%; background: #ccc url(images/bg_wrap_int.jpg) 0 0 repeat-x; padding: 40px 0; }
#sidebar { position: relative; width: 120px; float: left; margin: 0 60px 0 20px; }
#main { position: relative; width: 720px; min-height: 490px; height: auto !important; height: 490px; float: left; margin: 0; }
#home #wrap { background: #1E3E71 url(images/bg_wrap.jpg) 0 230px repeat-x; }
#home #sidebar { width: 420px; }
#home #main { width: 370px; }
#footer { position: relative; width: 100%; text-align: center; }

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

#photoWrap { width: 445px; height: 310px; position: relative; background: url(images/bg_photos.jpg) 0 0 no-repeat; }
#photodiv { position: absolute; top: 8px; left: 46px; width: 380px; height: 253px; z-index: 1; }
#photodiv img { width: 380px; height: 253px; }

.buttonHowItWorks { width: 240px; margin: 20px 0 0 0; }
.buttonHowItWorks a { background-color: #e0d736; color: #005daa; width: 185px; display: block; border: 3px solid #005daa; padding: 8px 20px; font-size: 14px; }
.buttonHowItWorks a:hover { color: #000; background-color: #f0e852; text-decoration: none; }

.buttonFreeEstimate { background: url(images/bg_paws.png) bottom right no-repeat; width: 320px; height: 130px; margin: 20px 0 0 0; }
.buttonFreeEstimate a { background-color: #e0d736; color: #005daa; width: 185px; display: block; border: 3px solid #005daa; padding: 8px 20px; font-size: 14px; }
.buttonFreeEstimate a:hover { color: #000; background-color: #f0e852; text-decoration: none; }

.item { clear: both; margin: 0 0 90px 0; }
.item img { float: left; margin-right: 20px; }

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

fieldset { width: 80%; border: 1px solid #fff; padding: 0 20px 20px 20px; margin: 25px 0; display: block; position: relative; }
legend { font-size: 11px; text-transform: uppercase; border: 1px solid #fff; padding: 1px 10px; letter-spacing: 2px; color: #555; font-family: "Georgia", serif; background-color: #ccc; color: #444; }
label { display: block; margin: 15px 0 3px 0; }
input, textarea { border: 1px solid #ccc; padding: 3px 4px; color: #444; }
input:focus, textarea:focus, select:focus { background-color: #fffff2; }
textarea { width: 500px; height: 120px; }
.errorlist { color: #c30; font-weight: bold; }
.required { color: #444; margin-top: 20px; }
.ddfmerrors { color: #930; font-size: 130%; }
.errorlist { color: #930; font-weight: bold; }
label.error { font-size: 11px; color: #930; margin: 0 0 15px 0; }
.ddfm .submit { width: 100px; background-color: #426B8B; color: #fff; border: none; margin: 0; }
.ddfm .submit:hover { background-color: #386181; cursor: pointer; border: none; }
.hiddenChild, .hiddenChild1, .hiddenChild2, .hiddenChild3, .hiddenChild4 {display: none;}
.add { clear: both; }
.ddfm input { width: 95%; }
.formFirstName { width: 260px; float: left; margin: 0 20px 0 0; }
.formLastName { width: 260px; float: left; }
.formStreet { width: 205px; float: left; margin: 0 20px 0 0; }
.formTown { width: 166px; float: left; margin: 0 20px 0 0; }
.formZip { width: 120px; float: left; }
.formEmail { width: 260px; float: left; margin: 0 20px 0 0; }
.formPhone { width: 260px; float: left; }
.formDogName { width: 140px; float: left; margin: 0 20px 0 0; }
.formDogBreed { width: 120px; margin: 0 20px 0 0; float: left; }
.formDogGender { width: 75px; margin: 0 20px 0 0; float: left; }
.formDogAge { width: 30px; margin: 0 20px 0 0; float: left; }
.formDogSize { width: 110px; float: left; }
.formComments { margin: 10px 0 0 0; }
.ddfm label em { font-size: 10px; font-weight: normal; color: #999; }

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

.promoBox { background: #426B8B; padding: 10px 15px; text-align: center; border: 2px solid #eee; width: 100%; }
.promoBox a, .promoBox a:visited { color: #fff; }
.promoBox a:hover { color: #dfd636; text-decoration: none; }
.promoBox p { margin: 0; line-height: 18px; font-size: 14px; }

/* -------------------------------------------------------------------------- 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-left { background: transparent url(images/shadow_left.png) no-repeat 0 0; width: 13px; height: 203px; position: absolute; top: 3px; 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: 3px; right: -13px; z-index: 99; }
.hidden { display: none; }
.alignright { float: right; display: inline; margin: 15px 0 15px 25px; border: 3px solid #ddd; }
.alignleft { float: left; display: inline; margin: 15px 25px 0 15px; border: 3px solid #ddd; }

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

