@charset "UTF-8";
/* CSS Document */

/*///// TOP LEVEL /////*/
html, body { color: #333; font-family: Arial, Helvetica, sans-serif; font-size: 90%; line-height: 140%; margin: 0; padding: 0; height: 100%; }

#jjc { font-family: Arial, Helvetica, sans-serif;  }

.containerOuter { display: block; height: 100%; margin: 0 auto; min-height: 100%; position: relative; width: 940px; }

a { color: #591D12; text-decoration: none; }
a:active { color: #591D12; text-decoration: underline; }
a:hover { color: #591D12; text-decoration: underline; }
a:visited { color: #591D12; text-decoration: none; }

#jjc h1, #jjc h2, #jjc h3, #jjc h4, #jjc h5, #jjc h6 { font-weight: bold; line-height: 1.5em; }
#jjc h1 { font-size: 1.65em; color:#6e4951; }
#jjc h2 { font-size: 1.35em; color:#6e4951; }
#jjc h3 { font-size: 1.15em; color:#6e4951; }
#jjc h4 { font-size: 1em; }
#jjc p { line-height: 1.5em; }

#jjc h1.top-header { 
	background: url('../images/mini-leaf.png') no-repeat 0px 10px;
	padding-bottom: 10px;
	margin-bottom: -10px;
	padding-left: 20px;
	margin-left: -20px;
	padding-top: 10px;
	margin-top: -10px;
}


/*///// HEADER /////*/
.header { background: #fff; display: block; height: 150px; left:0px; position: absolute; top: 0px; width: 100%; }
.logo { background: url('../images/jjc_logo.png') no-repeat 50% 50%; bottom: 8px; display: block; height:97px; left: -40px; position: absolute; width:427px; }
.navigation { display: block; right: 0; position: absolute; bottom: 10px; overflow: visible; width: 100%; }

/*///// NAVIGATION /////*/


ul.navmenu {  } 
ul.navmenu li { 
	display: block; 
	text-align: right; 
	padding: 4px 0 4px 8px; 
	position: relative; 
	-moz-border-radius-topleft: 15px;
	-moz-border-radius-topright: 15px;
	-moz-border-radius-bottomright: 15px;
	-moz-border-radius-bottomleft: 15px;
	-webkit-border-radius: 15px 15px 15px 15px;
	border-radius: 15px 15px 15px 15px;
	font-size: .9em;
	float: right;
	clear: both;
}
ul.navmenu li:hover { background:#591D12; display: block; text-align: right; position: relative; }
ul.navmenu li:hover a { color: #fff; }

ul.navmenu li a { font-weight: bold; }
ul.navmenu li a:hover, ul.navmenu li a:active { text-decoration: none; }

ul.sub { display: none; }
ul.sub li { clear: none; border-left: solid 2px #591D12; display: block; float:left; padding: 5px 30px 5px 10px; background:#faefdd; margin-left:-20px; }

ul.navmenu li:hover ul.sub { display: block; position: relative; right: 100%; top: 0; overflow: hidden; }
ul.navmenu li:hover ul.sub li { display: inline-block; float: left; padding: 5px 0 5px 10px; }


ul.sub li:hover { clear:none; border-left: solid 2px #591D12; display: block; float:left; padding: 5px 30px 5px 10px; background:#666; margin-left:-20px; }

ul.navmenu li a:hover ul.sub li a { color: #591D12; }

.navmarker { background: #000; display: block; float: right; height: 1em; margin-left: 10px; vertical-align: baseline; width: 5px; }
ul.navmenu li:hover .navmarker { 
	background: #FAEFDD; 
	-moz-border-radius-topleft: 0;
	-moz-border-radius-topright: 15px;
	-moz-border-radius-bottomright: 15px;
	-moz-border-radius-bottomleft: 0;
	-webkit-border-radius: 0 15px 15px 0;
	border-radius: 0 15px 15px 0;
	margin-right: 5px;
	width: 15px;
}

ul.navmenu li,  ul.navmenu li .navmarker, ul.navmenu li:hover,  ul.navmenu li:hover .navmarker { 
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
 }


/*///// BANNER IMAGES /////*/
.banner { background: #591d12; display: block; height: 200px; left: 0px; position: absolute; top: 150px; width: 100%; z-index:2; }
.bannerContent { display: block; height: 100%; margin: 0 auto; width: 940px; position:relative; }
.bannerImage { height: 200px; z-index:3; }
.bannerImage.services { background-image: url('../images/banner-services.jpg'); }
.bannerImage.analysis { background-image: url('../images/banner-analysis.jpg'); }
.bannerImage.clients { background-image: url('../images/banner-clients.jpg'); }
.bannerImage.reports { background-image: url('../images/banner-reports.jpg'); }
.bannerImage.about { background-image: url('../images/banner-about.jpg'); }
/* Banner Quotes */
.quote { background: #000; background: rgba(0,0,0,.65); display: block; float: right; height: 100%; width: 300px; z-index:4; position:absolute; top:0; right:0; }
.quote p { color: #fff; font-weight: bold; padding: 20px; }
.quote ul { color: #FAEFDD; display: block; margin-left: 40px; font-style:italic;  }
.quote ul li.name { font-size: 1.25em; font-weight: bold; }
.quote ul li.title { font-size: .75em; margin-left: 3px; }
.topquote, .bottomquote { font-size: 4em; font-family:"Times New Roman", Times, serif; color:#FAEFDD; }
.topquote { float: left; }
.bottomquote { float: right; } /* add margin-top and padding-right to specifically place all of these? */


/*///// MAIN CONTENT CONTAINERS /////*/
.containerLeft, .containerRight { display: block; float: left; height: 100%; }
.containerLeft { width: 640px; overflow: visible; }
.containerRight { background: #faefdd; width: 300px; min-height: 1000px; }

.contentLeft { overflow: visible; padding: 350px 0 20px;  }
.contentRight { overflow: hidden; padding: 350px 0 20px 20px; }

.intro.column { clear: right; margin-bottom: -20px; }
.intro.column.double.w50 { clear: none; }
p.introContent {  border-bottom: solid 1px #000; padding-bottom: 1em; padding-top: .5em; }
p.introContent.wlist { border-bottom: none; padding-bottom: none; padding-top: none; }
p.introContent.wlist~ul {   border-bottom: solid 1px #000; padding-bottom: 1em; padding-top: .5em; }

.column { display: block; float: left; margin: 0; padding: 0; }
.w100 { display: block; width: 100%; }
.w75 { display: block; width: 75%; }
.w66 { display: block; width: 66.666666%; }
.w50 { display: block; width: 50%; }
.w33 { display: block; width: 33.333333%; }
.w25  { display: block; width: 25%; }
.padder { padding: 20px 20px 0 0; }
.content { display: block; margin: 0 0px 20px 0; }
.shaded { 
	background: #e5e5e5; 
	-moz-border-radius-topleft: 8px;
	-moz-border-radius-topright: 0px;
	-moz-border-radius-bottomright: 8px;
	-moz-border-radius-bottomleft: 0px;
	-webkit-border-radius: 8px 0px 8px 0px;
	border-radius: 8px 0px 8px 0px;
	display: block; 
	padding: 10px 10px 10px 10px; 
	width: auto;
 }
 
#jjc .bio p { padding-bottom: 1em;}
#jjc .bio ul { margin-top: 0; border-top: none; }
#jjc .bio img { 
	border: solid 5px #fff; 
	-webkit-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, .25);
	-moz-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, .25);
	box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, .25);
	max-width: 100%; margin-bottom: 1em; 
}
 

/*///// CONTENT WIDGETS /////*/
.column.w33 h2, .column.w33 h3 { line-height: 1em; }
.column.w33 p, .column.w50 { padding-top: .5em; }
.shaded h2+p, .shaded h2+ul, .shaded h3+ul, .shaded h4+ul { border-top: solid 1px #000; margin-top: .75em; padding-top: 1em; }


/*///// LISTS /////*/
.content ul { padding-left: 1.5em;  }
.content ul li { list-style: square; line-height: 125%; margin-bottom: .5em;  }
/*Downloads*/
li .download a { background: url(../images/pdf.png) no-repeat right 1px; padding: 0 25px 5px 0; }
li .download a:hover { background: url(../images/pdf-hover.png) no-repeat right 1px; }

.bio ul { padding: 0; }
.bio ul li { list-style-type: none; }



/*///// RIGHT SIDEBAR /////*/
.contactInfo { 
	background: url('../images/divider.png') repeat-x left bottom; 
	overflow: hidden; 
	padding-bottom: 20px;
	padding-top: 12px;
	padding-left: 12px;
	margin-top: -12px;
	margin-left: -12px;
}
.info { float: left; padding-left: 10px; }
.contactInfo a img { 
	border: 5px solid #fff;
	-webkit-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .25);
	-moz-box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .25);
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, .25);
	display: block; 
	float: left;
	width: 80px;
	height: 80px;
}

.contactInfo a img:hover { 
	-webkit-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, .5);
	-moz-box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, .5);
	box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, .5);
}
.contactInfo a img, .contactInfo a img:hover {
	-webkit-transition: all 300ms ease-in-out;
	-moz-transition: all 300ms ease-in-out;
	-o-transition: all 300ms ease-in-out;
	transition: all 300ms ease-in-out;
}

#jjc .info h3 { margin-bottom: -.25em; }
#jjc .info h4 { margin-top: .5em; }
#jjc .info ul li { line-height: 1em; }

.slogan { width: 260px; height: 150px; background: url('../images/specializing.png') no-repeat 50%; overflow: hidden; padding-bottom: 20px;  }

.ourClients { background: url('../images/divider.png') repeat-x left top; overflow: hidden; padding-top: 20px; }
.ourClients  h3 { text-align: center; }
.ourClients p {}



/*///// CLIENT LOGO COLLAGE /////*/
.clientLogos { overflow: hidden; }
.clientLogo { display: block; float: left; width: 16.6666667%; }
.clientLogo span { 
	border: solid 2px #e5e5e5;
	-moz-border-radius-topleft: 8px;
	-moz-border-radius-topright: 0px;
	-moz-border-radius-bottomright: 8px;
	-moz-border-radius-bottomleft: 0px;
	-webkit-border-radius: 8px 0px 8px 0px;
	border-radius: 8px 0px 8px 0px;
	display: block; 
	padding: 0; 
}
.clientLogo span:hover { border: solid 2px #ccc; }
.clientLogo span img { width: 100%; }



/*//////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

