/* 
TABLE OF CONTENTS

  HTML Elements
  Page Structure
  Navigation
  Headings
  Content Area
  Forms
  Clear
  Footer



/* ---------- @ HTML Elements -----------*/

* { 
	margin: 0;
	padding: 0;
} 

body, html {	
	color:#29261f;
	background: #35476B;
	min-height:101%;
	font-size: 100%;
}

body, input, textarea, select {	
	font-family: Arial,Verdana,sans-serif;
}

p {	
	margin: 15px 0;
}
		
a:link, a:visited {	
	text-decoration:underline;
	color:#27395a; 
}

a:hover, a:active {	
	text-decoration:none;
	color:#52617b;
}

*:focus { 
	outline: none 
}

.hidden {
	display:none;
}

/* ---------- @ Page Structure -----------*/


#main-wrapper {
	background:#fff url(/images/bg_main-wrapper.gif) repeat left top;
	padding-bottom:60px;
}

#main {
	margin: 0 auto;
	width: 820px;
	padding:12px 10px;
	font-size: .8em;
}

#masthead-wrapper {
	background:#293957;
	border-bottom:1px solid #C8B767;
}
	   
#masthead {
	background:#293957;
	margin:0px auto;
	padding-top:20px;
	width:840px;
	position:relative;
}

#slogan-wrapper {
	border-bottom:2px solid #C8B767;
}

#slogan {
	margin:0 auto;
	border-left:1px solid #C8B767;
	border-right:1px solid #C8B767;
	background:url(/images/bg_slogan.jpg) no-repeat left top;
	width:838px;
	height:178px;
	text-indent:-9000px;
}

.left {	
	float:left;
}

.right {	
	float:right
}

/* ---------- @ Navigation -----------*/


#nav {
	position:absolute;
	bottom:0px;
	right:0px;
}

#nav li {
	list-style:none;
	color:#fff;
	font-size:.9em;
	float:left;
	background:url(/images/nav_border.gif) no-repeat right top;
}

#nav li.last {
	background:none;
}

#nav li a {
	display:block;
	float:left;
	padding:2px 10px 5px;
	color:#f6f2e6;
	border-top:2px solid #293957;
	text-decoration:none;
}

#nav li a:hover,
#nav li a.on {
	background:#43577A;
	border-top:2px solid #C8B767;
	padding:2px 10px 5px 11px;
	margin-left:-1px;
}

/* ---------- @ Headings -----------*/

h1 {
	margin:0px 0px 14px 10px;
	border-top:2px solid #fcfaf3;
	background: url(/images/logo.gif) no-repeat left 7px;
}
		   
h1 a#logo {
	height: 61px;
	width: 216px;
	text-indent:-9000px;
	display:block;
}

h2 {	
	font-size: 1.6em
	}
	
#interior h2#hdr-charlottesville {
	background:url(/images/hdr_cville.gif) no-repeat left top;
	width:165px;
	height:17px;
	margin-left:280px;
	text-indent:-9000px;
}

#interior h2#hdr-culpeper {
	background:url(/images/hdr_culpeper.gif) no-repeat left top;
	margin-left:280px;
	width:121px;
	height:17px;
	text-indent:-9000px;
}

#interior.detail #location-full h2 {
	margin-left:320px;
}

#interior h2#hdr-staff {
	background:url(/images/hdr_staff.gif) no-repeat left top;
	width:36px;
	height:17px;
	text-indent:-9000px;
}

#interior h2#hdr-directions {
	background:url(/images/hdr_directions.gif) no-repeat left top;
	width:189px;
	height:17px;
	text-indent:-9000px;
}

h3 {
	font-size:1.4em;
}

#content.page h3 {	
	color:#555849;
	font-family:"Times New Roman", Times, serif;
	margin-top:30px;
}

h3#hdr-offices {
	background:url(/images/hdr_offices.gif) no-repeat left top;
	width:127px;
	height:12px;
	text-indent:-9000px;
}

h4 {
	font-size:1.2em;
}

#content.page h4 {
	color:#555849;
	padding-top:12px;
	font-family:"Times New Roman", Times, serif;
}


/* ---------- @ Content Area -----------*/

/*Home*/

#home #content {
	width:452px;
	line-height:1.6em;
	padding-top:10px;
}

#home #sidebar {
	width:294px;
	padding-top:10px;
}

#home #offices {
	list-style:none;
}

#home #offices h4 a {
	font-size:.9em;
	line-height:1.6em;
	text-decoration:none;
}

#home #offices li {
	width:289px;
	margin-top:28px;
	position:relative;
}

#home #offices li div.location {
	background:#D8D4C8;
	border:1px solid #B1ADA1;
	border-right:none;
	width:218px;
	padding:2px 0px 4px 10px;
	font-size:.94em;
}

#home #offices li a img {
	border:1px solid #979384;
	position:absolute;
	bottom:0px;
	right:0px;
}

/*Interior*/

#interior #breadcrumb-wrapper {
	height:15px;
	border-bottom:2px solid #C8B767;
}

#interior.detail #breadcrumb-wrapper {
	height:1.8em;
	border-bottom:2px solid #C8B767;
}

#interior.detail #breadcrumb {
	width:840px;
	height:inherit;
	margin:0 auto;
	border-left:1px solid #979384;
	border-right:1px solid #979384;
}

#interior.detail #breadcrumb p {
	font-size:.9em;
	color:#F6F2E6;
	margin:0px;
	width:820px;
	padding:4px 0px 6px 24px;
}

#interior.detail #breadcrumb a:link,
#interior.detail #breadcrumb a:visited {
	color:#FFF;
	text-decoration:underline;
}

#interior.detail #breadcrumb a:hover {
	text-decoration:none;
}

#interior #content {
	width:746px;
	padding:28px 0px 0px 40px;
}

#interior #content.page {
	padding:12px 0px 0px 20px;
}

#interior.detail #content {
	width:800px;
	padding:28px 0px 0px 24px;	
}

#interior .location-brief {
	padding-bottom:30px;
}

#interior #location-full {
	margin-top:20px;
}

#interior #staff-full {
	width:746px;
}

#interior #staff-full img,
#interior .location-brief img {
	float:left;
	border:4px solid #D9D5C8;
	margin-right:48px;
	display:inline;
}

#interior #content.page ul {
	list-style:none;
	padding:16px 0px 0px 30px;
	margin-bottom:20px;
}

#interior #content.page ul li {
	margin:8px 0px;
	padding-left:12px;
	background:url(/images/bullet.gif) no-repeat left 2px;
}

#interior .page img {
	border:3px solid #D9D5C8;
	padding:3px;
	background:#FFF;
}

#interior .page img.left {
	margin:0px 12px 12px 0px;
	display:inline;
	clear:left;
}

#interior .page img.right {
	margin:0px 0px 12px 12px;
	display:inline;
	clear:right;
}

#interior .page p.info {
	margin:4px 0px;
}

#interior #staff-full h2,
#interior .page h2 {
	font-family:"Times New Roman", Times, serif;
	font-size:1.6em;
	color:#555849;
	padding:12px 0px 4px;
	margin:0px 0px 20px 236px;
	border-bottom:1px solid #D9D5C8;
}

#interior .page h2 {
	margin-left:0px;
	font-size:1.8em;
}

#interior #location-full img {
	float:left;
	margin-top:-20px;
        display:inline;
	border:4px solid #D9D5C8;
}

#interior #location-staff {
	padding-top:20px;
	width:608px;
}

#interior .staff-brief {
	width:280px;
	font-size:.9em;
	margin:10px 16px 4px 0px;
	border:1px solid #b0aea6;
	background:#dcd9cd;
	padding:4px 3px;
}

#interior .staff-brief img {
	border:1px solid #7a7b7d;
	float:left;
	margin-right:10px;
}

#interior .staff-brief h3 {
	color:#585549;
	padding-top:20px;
	font-size:1.2em;
}

#interior .staff-contact {
	list-style:none;
	margin:6px 0px;
}

#interior .staff-contact li {
	margin:2px 0px;
}

#interior #staff-full-contact {
	list-style:none;
	margin:6px 0px 6px 236px;
}

#interior #staff-full-contact li {
	margin:2px 0px;
}

#interior #staff-full p {
	margin-left:236px;
	line-height:1.4em;
}

#interior .page p {
	line-height:1.4em;
}

#interior #location-directions {
	width:190px;
	float:right;
	padding-top:20px;
	color:#585549;
	font-size:.9em;
}

#interior #location-directions #map {
	border:1px solid #b0aea6;
	margin-top:10px;
	width:181px;
	height:181px;
}

#interior #location-directions #map div span {
	display:none;
}

#interior #location-directions .vcard {
	line-height:1.3em;
}

#interior #location-directions .vcard .org {
	font-weight:bold;
	font-size:1.2em;
	padding:8px 0px 4px;
}

#interior #location-directions a#directions {
	line-height:1.5em;
	padding-left:20px;
	margin-top:6px;
	background:url(/images/arrows.gif) no-repeat left top;
	display:block;
}

#interior .location-brief p {
	margin:3px 0px 3px 280px;
	line-height:1.4em;
}

#interior #location-full p {
	margin:6px 0px 15px 320px;
	line-height:1.4em;
	font-size:1.05em;
}

#interior .location-brief ul.location-contact {
	list-style:none;
	padding:6px 0px 0px 280px;
	font-size:.9em;
}

#interior .location-brief ul.location-contact li {
	margin:2px 0px;
	padding-left:18px;
	line-height:1.4em;
}

#interior .location-brief ul.location-contact li.street {
	background:url(/images/envelope.gif) no-repeat left 4px;
}

#interior .location-brief ul.location-contact li.phone {
	background:url(/images/phone.gif) no-repeat left 2px;
}

#interior .location-brief ul.location-contact li.profiles {
	background:url(/images/bust.gif) no-repeat left 4px;
	border-bottom:1px solid #D9D5C8;
	padding-bottom:10px;
}

#interior #main ul#steps {
	list-style:none;
	padding:0px;
}

#interior #main ul#steps li {
	display:block;
	width:700px;
	padding:0px;
	background:none;
}

#interior #main ul#steps li h4 {
	padding-top:0px;
}

#interior #main ul#steps li p {
	margin:6px 0px;
}

/* ---------- @ Forms -----------*/

form legend {
	font-size:1.3em;
	color:#555849;
	background:#F9F6ED;
	border:solid 2px #D9D5C8;
	border-top:solid 1px #D9D5C8;
	border-right:solid 1px #D9D5C8;
	font-family:"Times New Roman", Times, serif;
}

form .instruction {
	font-size:1.2em;
	color:#555849;
	padding-bottom:4px;
	margin-left:20px;
	font-family:"Times New Roman", Times, serif;
	font-weight:bold;
	display:inline;
}

.button {	
	background: #000 ! important;
	border:#F7ECD4 1px solid;
	padding: 2px;
	margin: 0 2px 0 0;
	color:#FFF;
}

.button:focus {	
	padding:2px;
	background: #000 ! important;
}
		
.button:hover {	
	background: #CCC ! important;
	color: #000;
}

.message {
	padding:15px;
	background:#381201;
	margin-bottom: 20px;
	border-bottom:1px solid #65483b
	}
	
.field {
	background:#a48c80;
	border:none;
	padding:2px;
	}	

.contacterror {
	background:#a48c80;
	border:1px solid #ddd5d0;
	padding:2px;
	}

#contactform label {
	display:block;
	margin-top:15px;
	}	
	
	

/*Clear*/

.clearfloat:after {
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
	}

.clearfloat {
	display: inline-block;
	}

/* Hides from IE-mac \*/
* html .clearfloat {
	height:1%;
	}

*+html .clearfloat {
	height:1%;
	}

.clearfloat {
	display:block;
	}
/* End hide from IE-mac */




/* ---------- @ Footer -----------*/

#footer {
	padding:16px 10px 40px;
	color:#AEB6C4;
	width:820px;
	margin:0px auto;
	font-size:.7em;
}

a#cat4 {
	display:block;
	width:33px;
	height:28px;
	float:right;
	background-image:url(/images/cat4.jpg);
	text-indent:-9000px;
}
