/*
//////////////////////////////////////////////////////////////////////////////////////////////////
 // Kemper Consulting CSS/Layout													
 // ==============================================================================================	
 // Color Book										
 // #f0f0ec - Light putty, background on body	
 // #3a332d - Reddish brown, as in top bar      
 // #9eacb1 - Neutral blue						
 //////////////////////////////////////////////////////////////////////////////////////////////////
*/

@import url('nav.css');
@import url('mapping.css');
@import url('richmondmapping.css');
@import url('norfolkmapping.css');
html, body, div, h1, h2, h3, h4, h5, h6, ul, ol, dl, li, dt, dd, p, blockquote,
pre, form, fieldset, table, th, td {
	margin: 0; padding: 0;
}

body {
	font-family: Georgia, Times, serif;
	font-size: small;
	background: #3d4954;
	margin: -20px 0 0 0;
}

/* Containers
----------------------------------------*/
#main {
	width: 1010px;
	margin: 20px auto 0 auto;
	padding: 0 0 10px 0;
	overflow: auto;
}
#top-bar {
	width: 100%;
	padding: 0;
	margin: 0 0 -20px 0;
}
#content-bar {
	width: 100%;
	background: #fff url('/assets/images/content-bg.gif') top left repeat-x;
	border-bottom: 1px solid #37422d;
}
.logo {
	float: left;
	padding: 0;
}
#navigation {
	width: 1024px;
	margin: auto;
	clear: both;
	height: 110px;
	background: url('../assets/images/navigation-bg.gif') top left no-repeat;
}
#stage {
	width: 1000px;
	height: 240px;
	margin: 20px auto 20px auto;
	padding: 0 0 30px 0;
	background: #d8e9f1 url('/assets/images/stage.gif') top center no-repeat;
	border: 5px solid #fff;
}
.copy-frame {
	width: 1000px;
	margin: 10px auto;
}
.overview-copy-frame {
	width: 1000px;
	margin: 10px auto;
}

body#services .copy-frame,
body#contact .copy-frame {
	float: left;
	width: 1000px;
	padding: 0 10px 10px 0;
	margin: 10px 10px 0 0;
}
body#people .copy-frame {
	float: left;
	width: 700px;
}
body#firm .copy-frame {
	float: left;
	width: 740px;
}

.servicesleft {
	float: left;
	width:480px;
	padding:0 0 0 0;
	margin: 0 0 0 0;
}
.servicesright {
	float: right;
	width:500px;
	padding:0 0 0 0;
	margin: 0 0 0 0;
}
#footer {
	width: 1010px;
	margin: auto;
	background: #2f3c48;
	padding: 20px 20px 10px 20px;
	overflow: auto;
/*	-webkit-border-bottom-left-radius: 10px;
	-webkit-border-bottom-right-radius: 10px;
	-moz-border-radius-bottomleft: 10px;
	-moz-border-radius-bottomright: 10px;*/
}
#legal {
	width: 54%;
	margin: 0;
	float: left;
	color: #9eacb1;
}

/* City pages and locations
----------------------------------------- */

#locations {
	width: 42%;
	float: right;
	margin: -12px 0 0 0;
}
.address-cards {
	width: 1000px;
	padding: 0;
	margin: 0 0 0 0;
	overflow: auto;
}
.address-card {
	float: left;
	width: 500px;
	background: #fff url('/assets/images/address-card.gif') bottom left repeat-x;
	padding: 0;
	margin: 0 0 0 0;
}

.address-card-left {
	float: left;
	width: 480px;
	/*
	background: #fff url('/assets/images/address-card.gif') bottom left repeat-x;
	*/
	padding: 0 0 0 20px;
	margin: 0 0 0 0;
}

.address-card-right {
	float: right;
	width: 480px;
	/*
	background: #fff url('/assets/images/address-card.gif') bottom left repeat-x;
	*/
	padding: 0 0 0 20px;
	margin: 0 0 0 0;
}

.tall-gallery {
	float: right;
	width: 533px;
	padding: 0;
	margin: 10px 0 10px 0;
}
.citydivleft {
	float: left;
	width: 400px;
	padding: 0;
	margin: 10px 0 0 0;
}
.citydivright {
	float: right;
	width: 600px;
	padding: 0;
	margin: 10px 0 0 10px;
/*	height: 600px; */
}

.citydivright img {
	float:right;
	padding: 0;
	margin: 0;
	
}

.city-address {
/*	float: left;
	width: 460px;
	 background: #fff url('/assets/images/address-card.gif') bottom left repeat-x;
	padding: 10px 0 0 10px;
	margin: 10px 0 10px 0;
	*/
}

.city-address h2 {
	padding: 0 0 0 0;
	font-weight: bold;
	margin: 0 0 0 0;
	font-size: 180%;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	color: #16305b;
/*	text-shadow: 0 1px 0 #fff;*/
}
.address-card ul {
	margin: 0 0 0 0;
	padding: 0;
}
.address-card ul li {
	list-style: none;
}

.address-card-left ul {
	margin: 0;
	padding: 5px 0 0 10px;
}
.address-card-left ul li {
	list-style: none;
}
.address-card-left h2 {
	margin: 0;
	padding: 0 0 0 10px;
}

.address-card-right ul {
	margin: 0;
	padding: 5px 0 0 10px;
}
.address-card-right ul li {
	list-style: none;
}
.address-card-right h2 {
	margin: 0;
	padding: 0 0 0 10px;
}

.city-address ul {
	margin: 0;
	padding: 0 0 10px 0;
}
.city-address ul li {
	list-style: none;
	padding: 0 0 0 0;
	font-size: 130%;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}


/* Bio Containers
----------------------------------------*/
.highlights {
	float: right;

	margin: 15px 0 10px 20px;

}
.bioshot {
	padding: 5px;
	margin: 5px 0 0 0;
/*	border: 1px solid #d7d7d7; */
	background: #fff;
	float: left;
}
.bio-caption {
   text-align: center;
   padding-top: 4px;
   margin: 2px 2px 2px 2px;
   font-size: 95%;
}

/* Utility Classes
----------------------------------------*/
.column {
	width: 31%;
	float: left;
	margin: 0 20px 10px 0;
}
.column-md {
	width: 61%;
	float: left;
	margin: 0 20px 10px 0;
}
.column-xl {
	width: 99%;
	float: left;
	margin: 0 20px 10px 0;
}
img.framed {
	padding: 5px;
	background: #fff;
	border: 1px solid #d7d7d7;
	margin: 10px 0 0 20px;
}
img.framedcity {
	padding: 5px;
	background: #fff;
	border: 1px solid #d7d7d7;
	margin: 0;
}
/* Navigation / Lists
----------------------------------------*/
.highlights ul {
	margin: 0;
	padding: 0;
}
.highlights ul li {
	list-style: none;
	margin: 0 0 5px 0;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
dl {
	margin: 0 0 10px 0;
	color: #444;
	float: left;
	width: 150px;
}
dt {
	font-size: 120%;
	letter-spacing: -0.08em;
	font-weight: bold;
	font-family: Helvetica, Arial, sans-serif;
	color: #9db9d3;
}
dd {
	padding: 3px 0;
}
.envelope {
	margin: 0 3px 0 0;
	float: left;
}

/* Forms
----------------------------------------*/
.warning {
	background: #f3f0c5;
}
.hot-area {
	display: none;
}
input.text,
select.text {
	display: block;
	padding: 5px;
	font-size: 100%;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	color: #333;
}
input.text {
	width: 470px;
	border: 1px solid #ccc;
	margin: 10px 0;
}
input.text#phone {
	width: 300px;
}
input.text:focus,
textarea:focus {
	background: #e9f6fc url('/assets/images/input-focus.gif') top left repeat-x;
}
fieldset {
	border: 0;
	padding: 0;
	margin: 0;
}
textarea.text {
	margin: 10px 0 10px 0;
	width: 470px;
	padding: 5px;
	border: 1px solid #ccc;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-size: 110%;
}
label {
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	color: #16305b;
/*	text-shadow: 0 1px 0 #fff;*/
	font-weight: bold;
	margin: 0 0 10px 0;
}
legend {
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	color: #16305b;
/*	text-shadow: 0 1px 0 #fff;*/
	font-weight: bold;
	font-size: 120%;
	margin: 0 0 20px 0;
	padding: 0 0 20px 0;
}
input.xl-submit {
	display: block;
	padding: 6px 10px;
	background: url('/assets/images/submit.gif') top left repeat-x;
	border: 1px solid #3399dd;
	font-size: 80%;
	font-weight: bold;
	color: #efefef;
/*	text-shadow: 0 1px 0 #65b1d8;*/
/*	-webkit-border-radius: 6px;
	-mozw-border-radius: 6px;*/
	cursor: pointer;
}
input.xl-submit:active {
	background: url('/assets/images/submit-over.gif') top left repeat-x;
/*	text-shadow: none;	*/
}
#failure {
	border: 1px solid #d80000;
}
.message {
	width: 300px;
	float: left;
	margin: 10px 0;
	display: none;
	clear: both;
	display: none;
}
.reqd {
	color: #d80000;
	font-weight: lighter;
	font-size: 120%;
}

/* Anchors
----------------------------------------*/
.linelink a:link,
.linklink a:visited {
	text-decoration: underline;
	color: #0072ac;
}

.linelinkfooter a:link,
.linklinkfooter a:visited {
	text-decoration: underline;
	color: #9eacb1;
}
a:link {
/*	text-decoration: none; 
	color: #16305b;*/
/*	border-bottom: 1px dotted #16305b;*/
}
a:hover {
	color: #0072ac;
}
a img {
	border: none;
	 }


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

h1 {
	font-weight: lighter;
	line-height: 1.4em;
	color: #222;
	padding: 20px 0 5px 0;
	margin: 0;
	font-size: 220%;
/*	text-shadow: 0 1px 0 #fff;*/
	border-bottom: 1px dotted #999;
}
body#people h1 {
	border-bottom: none;
}
#stage h1 {
	font-weight: lighter;
	line-height: 1.4em;
	color: #ebebeb;
	padding: 10px;
	margin: -20px;
	font-size: 200%;
	background: url('/assets/images/stage-h1-bg.png') repeat;
}
h2 {
	font-weight: bold;
	letter-spacing: -0.06em;
	line-height: 1.4em;
	margin: 10px 0 10px 0;
	font-size: 120%;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	color: #16305b;
/*	text-shadow: 0 1px 0 #fff;*/
}
h2 a:link,
h2 a:hover,
h2 a:active,
h2 a:visited {
	font-size: 115%;
	border: 0;
	color: #16305b;
	text-decoration: none;
}

#cityaddress h2 {
	font-weight: bold;
	letter-spacing: -0.06em;
	line-height: 1.4em;
	margin: 0;
	font-size: 120%;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	color: #16305b;
/*	text-shadow: 0 1px 0 #fff;*/
}
#cityaddress h2 a {
	font-size: 115%;
	border: 0;
	color: #16305b;
	text-decoration: underline;
}

#footer h2 {
/*	text-shadow: none;*/
}
#footer a {
/*	text-decoration: none; */
	color: #9eacb1;
	font-weight: lighter;
}
#locations h2 {
	color: #99bccd;
	float: right;
	font-size: 90%;
	font-family: Georgia, Times, serif;
}
body#people h3 {
	font-weight: lighter;
	font-size: 130%;
	font-style: italic;
	letter-spacing: -0.04em;
	padding: 0 0 10px 0;
	border-bottom: 1px dotted #999;
	/*text-shadow: 0 1px 0 #fff;*/
}
body#people h3.small {
	font-weight: lighter;
	font-size: 90%;
	font-style: italic;
	letter-spacing: -0.04em;
	padding: 0 0 10px 0;
	border-bottom: 1px dotted #999;
/*	text-shadow: 0 1px 0 #fff;*/
	margin: -5px 0 8px 0;
}
.more {
	font-size: 70%;
	background: #d7d7d7;
	padding: 3px;
/*	-webkit-border-radius: 4px;
	-mox-border-radius: 4px;*/
	cursor: pointer;
}
.more:hover {
	background: #0072ac;
}
.more:hover a {
	color: #fff;
}
.more a,
.more a:visited {
	color: #444;
/*	text-tranform: uppercase;*/
	text-decoration: none;
	border: 0;
	font-family: Helvetica, Arial, sans-serif;
}
.attr {
	font-weight: bold;
	letter-spacing: -0.04em;
	line-height: 1.4em;
	font-size: 50%;
	margin: 0 0 20px 0;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	color: orange;
}
p {
	font-size: 110%;
	line-height: 1.4em;
	font-style: normal;
	color: #333;
	margin: 0 0 20px 0;
}
form.contact p {
	margin: 0 0 10px 0;
}
form.contact p+p { 
	text-indent: 0;
}
#legal p {
	color: #99bccd;
	font-size: 90%;
	padding: 0;
}
.amp {
	font-family: Baskerville, Palatino, "Book Antiqua", serif;
	font-style: italic;
}
.section-title {
	font-family: Helvetica, Arial, "MS Trebuchet", sans-serif;
	letter-spacing: -0.06em;
	color: #2f3c48;
}
.dropcap {
	font-size: 440%;
	margin: -5px 5px 0 0;
	font-weight: lighter;
	float: left;
}

