/* -------------------------------------------------------------- 

Griffith Co Screen styles
Author:	Justin Pardee, Colective Industry
Date: 	Dec 04 2008

-------------------------------------------------------------- */

@import url("reset.css");

/* Typography
--------------------------------------------------*/

body {
	background: #dbd8c6 url(../img/bg.jpg) repeat-x;
	color: #5e584b;
	font: 13px/18px Garamond, Hoefler Text, Times New Roman, Times, serif;
	text-align: center;
}

/* Links -------------------*/
a { color: #5e584b; }
a:hover { color: #827864; }

a.more {
	font-weight: bold;
	text-transform: uppercase;
}
a.getquote {
	color: #ed1c24;
}

/* Headings ----------------*/
h1, h2, h3 {
	color: #ed1c24;
}
h1, h2, h3, h4, h5, h6 {
	font-family: Garamond, Hoefler Text, Palatino, Palatino Linotype, serif;
}

h1 {
	margin-bottom: 18px;
	font-size: 28px;
	line-height: 36px;
}
h2 {
	font-size: 21px;
	line-height: 36px;
}
h3 {
	font-size: 18px;
	line-height: 36px;
}
h3 a {
	color: #ed1c24;
	text-decoration: none;
	font-weight: bold;
}
h3 a:hover {
	color: #ed1c24;
	text-decoration: underline;
}

h4 {
	font-size: 14px;
	line-height: 27px;
	font-weight: bold;
}

img.frame {
	border: 1px solid #5e584b;
}
img.left {
	float: left;
	margin-right: 20px;
	margin-bottom: 9px;
}
img.right {
	float: right;
	margin-left: 20px;
	margin-bottom: 9px;
}


/* Text --------------------*/
p, ol, ul {
	font-size: 14px;
	margin-bottom: 18px;
}
ol {
	list-style: decimal;
}
ul {
	list-style: disc;
}

ul.cities {
	margin-left: 20px;
}

/* reduced font-size necessary for windows */
#home h1 { font-size: 26px; }
#home h2 { font-size: 18px; font-weight: bold; }


/* Structure
--------------------------------------------------*/
#wrap {
	position: relative;
	margin: 0 auto;
	width: 940px;
	text-align: left;
}
#mast {
	margin-bottom: 18px;
	padding-top: 18px;
}

/* Mast & Branding ---------*/
#logo a {
	display: block;
	float: left;
	margin: -1px 0 0 -2px;
	width: 224px; height: 45px;
	background: url(../img/logo-hifi.png) no-repeat;
	text-indent: -9999px; overflow: hidden;
}

#logo-foot {
	display: block;
	float: left;
	width: 154px; height: 27px;
	background: url(../img/logo-foot.png) no-repeat;
	text-indent: -9999px; overflow: hidden;
}

/* Utilities */
#util {
	float: right;
	margin-top: 9px;
}
#util h2 {
	float: left;
	font-size: 18px;
	line-height: 27px;
}

#nav_util {
	float: right;
	margin: 0 0 0 20px;
	list-style: none;
	background: #827864 url(../img/bg_woodBar.jpg) no-repeat bottom;
	-webkit-border-radius: 6px;
  	-moz-border-radius: 6px;

}
#nav_util li {
	float: left;
	font-size: 14px;
	line-height: 27px;
}
#nav_util li a {
	display: block;
	padding: 0 10px;
	color: #ecebe6;
	text-decoration: none;
	text-shadow: #4f493d 0px -1px 1px;
}



#util li a:hover {
	text-decoration: underline;
}

/* Content Area ------------*/
#blog {
	width: 460px;
	float: left;
}
#features {
	width: 460px;
	float: right;
}
#blog.wide {
	width: 620px;
}
#blog_tools {
	width: 300px;
	float: right;
}
#services #content {
	width: 620px;
}
#services #content.overview {
	width: 460px;
	float: left;
}
#page #content {
	width: 620px;
}

/* Footer ------------------*/
#foot {
	margin: 18px 0 14px;
	padding: 9px 10px;
	clear: both;
	background: #827864 url(../img/bg_woodBar.jpg) no-repeat bottom;
	color: #fff;
	border-bottom: 4px solid #dedcd7;
}

/* Contact -----------------*/
#contacts {
	width: 620px;
	float: left;
}
#contacts .col {
	width: 220px;
	float: left;
	margin-right: 20px;
}

#map {
	width: 620px; height: 288px;
	float: left;
	background: #827864;
	border: 1px solid #827864;
}

#contact_form {
	width: 300px;
	float: right;
}
#contact_form .input-area {
	height: 180px;
}

/* Navigation
--------------------------------------------------*/
#nav {
	position: relative;
	margin-bottom: 14px;
	background: #827864 url(../img/bg_woodBar.jpg) no-repeat bottom;
	border-bottom: 4px solid #dedcd7;
}
#nav_main {
	margin: 0;
	list-style: none;
}
#nav_main li {
	float: left;
	width: 220px;
	margin-right: 20px;
	font-size: 18px;
	line-height: 36px;
	text-align: center;
}
#nav_main li a,
.nav_sub li a {
	display: block;
	color: #fff;
	text-decoration: none;
	text-shadow: #4f493d 0px -1px 1px;
}
#nav_main li a:hover,
.nav_sub li a:hover {
	color: #ecebe6;
	text-decoration: underline;
	text-shadow: none;
}

#nav_main #getquote {
	position: absolute;
	top: 3px; right: 5px;
	margin: 0;
	width: 130px;
}

.nav_sub {
	clear: both;
	margin: 0;
	padding-left: 20px;
	list-style: none;
}
.nav_sub li {
	float: left;
	margin-right: 20px;
	font-size: 14px;
	line-height: 28px;
}

/* Active States */
#nav.residential #nav_main {
	background: url(/img/bg_navOn1.png) no-repeat left bottom;
}
#nav.commercial #nav_main {
	background: url(/img/bg_navOn2.png) no-repeat left bottom;
}
#nav_main li.on a:hover {
	cursor: default;
}

/* Footer Nav -------------*/
/*
#foot .nav {
	margin: 0 20px 18px 0;
	width: 140px;
	float: left;
}
#foot .nav a {
	color: #6d6d6d;
	text-decoration: none;
}
#foot .nav a:hover {
	text-decoration: underline;
}

#foot .nav dt a {
	color: #f25100;
	font-weight: bold;
}
#foot .nav dd {
	font-size: 10px;
}
*/


/* Widgets & Fixtures
--------------------------------------------------*/

/* Hero --------------------*/
#hero {
	margin-bottom: 18px;
	padding-bottom: 14px;
	border-bottom: 4px solid #cbc8be;
}
#hero h1 {
	margin-bottom: 9px;
	font-size: 30px;
}
#hero #show {
	float: left;
	margin-right: 20px;
	width:460px; height: 260px;
}
#hero p {
	margin-bottom: 9px;
	font-size: 16px;
	line-height: 27px;
	margin-left: 480px;
}
#hero .more * {
	vertical-align: middle;
}

/* Blog --------------------*/
.entry h3 {
	margin-bottom: 9px;
	line-height: 27px;
	font-weight: bold;
	border: 1px solid #d5d3c8;
	border-width: 1px 0;
}
.entry .meta {
	clear: both;
	line-height: 36px;
	border: 1px solid #c6c4b5;
	border-width: 1px 0 4px;
	font-size: 12px;
	text-transform: uppercase;
}
.entry .meta a.more {
	display:-moz-inline-box;
	display:inline-block;
	width: 319px;	
	border-right: 1px solid #c6c4b5;
}
.entry .meta em.date {
	display:-moz-inline-box;
	display:inline-block;
	width: 140px;
	text-align: right;
	font-weight: bold;
	font-style: normal;
}

/* Misc. Blog */
#subscribe {
	text-align: right;
}
#subscribe * {
	vertical-align: middle;
}

/* Featured Services -------*/
#featured_services {
	margin-bottom: 18px;
	padding:9px 0;
	-webkit-border-radius: 6px;
  	-moz-border-radius: 6px;
	background: #827864 url(../img/bg_2pxPipe.gif) repeat-y center;
	color: #fff;
}
.featured_service {
	float: left;
	width:210px;
	padding:0 10px;
}
.featured_service h2 a {
	color: #dddaca;
	text-decoration: none;
}
.featured_service p {
	margin-bottom: 9px;
}
.featured_service a.more {
	color: #fff;
}

/* Services ----------------*/
#service_list {
	width: 460px;
	float: right;
	list-style: none;
}
#service_list li {
	margin-bottom: 18px;
}
#service_list li a.thumb {
	display: block;
	width: 58px;
	height: 70px;
	float: left;
	margin-right: 20px;
	border: 1px solid #5e584b;
	text-indent: -9999px; overflow: hidden;
	background-position: 50% 50%;
}
#service_list li h2 {
/* 	margin-bottom: 9px; */
	font-size: 16px;
	line-height: 18px;
}
#service_list li h2 a {
	color: #ed1c24;
}
#service_list p {
	margin-bottom: 0;
	font-size: 13px;
}


/* Form --------------------*/
ul.form {
	list-style: none;
}
ul.form li {
	margin-bottom: 9px;
}
ul.form li label {
	display: block;
	line-height: 27px;
	font-weight: bold;
}

.input-txt,
.input-area {
	width: 290px;
}

/* Address Fields */
.input-city {
	width: 200px;
}
.input-zip {
	width: 60px;
}
.input-city {
	margin-right: 20px;
}

.input-txt {
	height: 18px;
}
.input-area {
	height: 90px;
}

.input-txt + .input-txt {
	margin-top: 9px;
}

.actn {
	clear: both;
	text-align: right;
}

input.error,
textarea.error {
	background-color: #ff9;
}
label.error {
	color: #ed1c24;
}


/* Get a Quote -------------*/
#getaquote ul.form li label {
	font-weight: normal;
}

#getaquote #contact_form {
	width: auto;
	float: none;
}
#getaquote ul.form {
	margin-right: 20px;
	float: left;
	width: 300px;
}
#getaquote #quote_job {
	width: 620px;
	margin-right: 0;
}
#getaquote #quote_job .input-area {
	width: 620px;
	height: 216px;
}

#cta-getquote {
	clear: both;
	margin-top: 36px; padding:9px 10px 8px;
	background: #dedcd7;
	border-bottom: 1px solid #afa798;
	font-size: 16px;
	text-align: center;
}
#cta-getquote a {
	margin-left: 20px;
}
#cta-getquote * {
	vertical-align: middle;
}

/* Miscellaneous
--------------------------------------------------*/

/* Self Clearing Floats ----*/
#wrap:after,
#mast:after,
#nav:after,
#nav_main:after,
.nav_sub:after,
#hero:after,
#content:after,
#featured_services:after,
#service_list li:after,
.entry:after,
#foot:after {
	clear: both;
	content: '.';
	display: block;
	visibility: hidden;
	height: 0;
}