/*----------------------- document setup/defaults --------------------------------- */
html, body, div, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, blockquote, pre, form, fieldset, table, th, td { margin: 0px; padding: 0px; }

p, h1, h2, h3 { margin-bottom: 10px; }

a img { border: 0px; }

a { text-decoration: none; color: #D61D23; }

a:hover { text-decoration: underline; }

body  {
	font-family: Helvetica, Arial, sans-serif;
	font-size:14px;
	background: url(/images/header-bg.jpg) repeat-x #ececec;
	margin: 0px;
	color: #000;
	line-height:19px;	
}

.spacer {
	clear: both;
	float: none;
	margin: 0;
	padding: 0;
	border: 0;
	height: 0;
	width: 0;
}

/*---------------------------- the layout -------------------------- */
#container { width: 990px; margin: 0px auto; background: url(/images/content-shadow-bg.jpg) 0px 404px no-repeat #ececec;}
#header { height: 77px; width: 960px; padding: 327px 15px 0px;}
#content-outer { width: 960px; margin: 15px; background: white;}
#content-inner { padding: 20px;}




/*------------------------------ menu ------------------------------ */
#menu a {
	float: left;
	width: 170px;
	height: 63px;
	padding: 10px 10px 0px;
	display: block;
	color: white;
	font-weight: bold;
	text-decoration: none;
	margin-right: 2px;
	font-size: 12px;
	line-height: 15px;
}

#menu h1 { margin: 0px 0px 3px; font-size: 22px; line-height: 19px; color: #ffd200; font-weight: bold;}
#menu a:hover h1 { color: black; }

#menu a.active { background: url(/images/menu-item-bg.png) no-repeat; color: #ec1c24;}
#menu a.active h1 { color: black; }

#menu a.last { margin-right: 0px; margin-left: 2px;}




/*----------------------------- columns ---------------------------- */
.column { float: left; }
.main { width: 595px; margin-right: 30px; }
.side { width: 287px; margin-top: 26px; background: #fff;}

.side-top, .side-bottom { width: 287px; height: 19px;}
.side-top { background: url(/images/side-top.gif) no-repeat;}
.side-bottom { background: url(/images/side-bottom.gif) no-repeat;}
.side-content { background: url(/images/side-bg.gif) repeat-y; padding: 15px;}
.side-content h2 { color: #ec1c24; }

.side .profile-info { margin-bottom: 15px; }




/*-------------------------- the profiles ----------------------- */
.profile { border-top: 1px dotted #bbbbbb; padding-top: 25px; margin-top: 15px; background: #fff; }
.profile-info, .profile-services, .profile-map { float: left; }
.profile-info { width: 254px; padding: 20px 13px; background: #ececec; margin-right: 30px; }
.profile-services { width: 275px; margin-right: 30px; }
.profile-map { width: 280px; }

.profile-info img { background: url(/images/headshot-bg.gif); padding: 11px 12px; }
.profile-info p, .profile-info h2 { padding-left: 6px; }

.profile-services h2 { color: #ec1c24; font-size: 16px; margin-bottom: 15px;}

.profile-map h2 { font-size: 16px; margin-bottom: 15px;}
.gmap { overflow: hidden; }

.steps { float: left; width: 500px;}
.steps h2 { font-weight: normal; }
.steps h2 strong { color: #ec1c24; }
.steps div { margin-bottom: 45px; }
.steps select { width: 215px;}


/*-------------------- recent posts ------------------ */
#recent-posts { width: 234px; margin: 20px 0px 0px 5px; padding: 65px 23px 20px; background: url(/images/recent-posts-bg.gif) top no-repeat #ececec;}
body #recent-posts ul { list-style-type: none; margin: 0px; padding-left: 0px; }
#recent-posts li { border-bottom: 1px solid #c6c6c6; margin-bottom: 10px; padding: 5px 10px; }
#recent-posts li a { color: black; }
#recent-posts li small { line-height: 14px; display: block; margin-top: 4px; }


/*-------------------- general styles ------------- */
#content-inner ol, #content-inner ul { padding-left: 30px; }
.post img { border: 1px solid silver; padding: 5px; margin-bottom: 17px;}
h2 { font-size: 16px;}
.dotline { border-top: 1px dotted #bbb; margin: 5px 0px 25px;}
h1 { line-height: 30px;}










/************* BEGIN FORGE DEFAULTS ***********/
/*--------------- forms ------------- */
table.form {
	font-size: 10px;
	border-top: 1px solid #BFBEAE;
	border-spacing: 0px;
	border-collapse: collapse;
	padding: 0px;
	margin: 0px;
	width: 100%;
}
table.form tr td {
	padding: 6px;
	border-bottom: 1px solid #d2d0bf;
	vertical-align: top;
}

table.form tr td img {
	vertical-align: middle;
}
table.form td.label {
	width: 20%;
	font-size: 9px;
	font-weight: bold;
	color: #665E59;
	text-transform: uppercase;
	vertical-align: top;
}
table.form td.control {
	width: 80%;
	vertical-align: top;
}


/*-------------- posts --------------- */
.pagination-info {
	line-height: 14px;
	border-top: 1px solid #DDD;
	border-bottom: 1px solid #DDD;
	padding: 10px;
	margin-bottom: 20px;
	font-size: 11px;
}

.post {
	margin-bottom: 20px;
}

.post h2, .post h3 {
	margin: 0px;
	padding: 0px;
}


/*------------- photo gallery ------------- */
#photo-thumbnails {
	list-style: none;
}

#photo-thumbnails li {
	float: left;
	margin: 0px 26px 25px 0px;
	width: 96px;
	text-align: center;
	font-size: 11px;
}

#photo-thumbnails li img {
	width: 90px;
	height: 90px;
	padding: 2px;
	border: 1px solid silver;
}

#photo-thumbnails li.last {
	margin-right: 0px;
}


/*------------- flash messages ------------- */
.flash-msg, .errorExplanation {
	padding: 5px 10px 5px 30px;
	margin-top: 10px;
	margin-bottom: 15px;
	font-weight: bold;
}
#flash-notice {
	color: #577700;
	border: 1px solid #658900;
	background: url(/images/icons/icon_accept.gif) #E9F1D5 no-repeat 6px 6px;
}
.errorExplanation, #flash-warning, #flash-error {
	color: red;
	border: 1px solid red;
	background: url(/images/icons/action_stop.gif) #FFC9C9 no-repeat 8px 6px;
}

.errorExplanation h2 {
	color: red;
	text-transform: none;
	margin-top: 2px;
}
div.fieldWithErrors {
	display: inline;
}