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

*
{
	box-sizing: border-box;
}

.fadein 
{
	opacity: 0;
}

.clear 
{
	clear:both;
}

.transition
{
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	-moz-transition: 0.3s;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

.imageset
{
	width:100%;
	height:auto;
}

.imagetrans
{
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	-moz-transition: 0.3s;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

.imagetrans:hover
{
	opacity:0.0;
}


body,td,th 
{
	font-family: "Raleway", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: calc(18px + (20 - 18) * ((100vw - 300px) / (1600 - 300)));
  	line-height: 150%;
	font-weight:400;
	color:#595959;
}

body 
{
	background-color:#FFF;
	margin-left:0px;
	margin-top:0px;
	margin-right:0px;
	margin-bottom:0px;
}

h1, h2, h3, h4, h5, h6, p, blockquote
{
	margin:0;
	padding:0;
}

img
{
	border: 0;
	display:block;
	height: auto;
  	vertical-align: middle;
}

*{
    -o-user-select: text;
    -moz-user-select: text;
    -webkit-user-select: text;
    user-select: text;
}

::selection
{
color:#FFFFFF;
background:#d43200;
}

::-moz-selection
{
color:#FFFFFF;
background:#540101;
}

/*standards*/

.pinline
{
	height:10px;
	background-image: url("../images/diamond.gif");
	background-repeat: repeat-x;
}

.pinline2
{
	height:10px;
	background-image: url("../images/diamond.gif");
	background-repeat: repeat-x;
	margin-top:70px;
}

.pinline3
{
	width:100%;
	background-color:#595959;
	height:1px;
	margin-top:45px;
}

.pinline4
{
	width:100%;
	background-color:#595959;
	height:1px;
	margin-top:45px;
	margin-bottom:45px;
}

.highlight
{
	background-color:#eef2de;
}

.grayhighlight
{
	background-color:#595959;
}

.introholder
{
	width:80%;
	margin:0 auto;
	padding-top:35px;
	padding-bottom:70px;
}

.innerintroholder
{
	width:80%;
	margin:0 auto;
	padding-top:35px;
}

.fsholder
{
	width:100%;
	padding-top:35px;
}

.innercontentholder
{
	width:80%;
	margin:0 auto;
	padding-top:45px;
}

.innercontentholder2
{
	width:80%;
	margin:0 auto;
}

.innercontentholder3
{
	width:80%;
	margin:0 auto;
	padding-bottom:70px;
}

.innercontentholder4
{
	width:80%;
	margin:0 auto;
	padding-top:45px;
	padding-bottom:70px;
}


.contentholder
{
	width:80%;
	margin:0 auto;
	padding-top:70px;
	padding-bottom:70px;
}

.greenblock
{
	width:100%;
	background-color:#eef2de;
}

.greenblockcontent
{
	width:80%;
	margin:0 auto;
	padding-top:50px;
	padding-bottom:50px;
}

.morework
{
	width:80%;
	margin:0 auto;
	padding-bottom:25px;
	padding-top:70px;
}

.col1
{
	width:40%;
	margin-right:3%;
	float:left;
}

.col2
{
	width:40%;
	margin-right:3%;
	float:left;
}

@media screen and (max-width: 1000px)
{
	.contentholder
	{
		padding-top:40px;
	}
	
	.col1, .col2
	{
		width:100%;
		float:none;
	}
	
	
	.introholder, .innerintroholder
	{
		padding-top:55px;
	}
}


/* topnav */

.navwrapper
{
	width: 80%;
	margin: 0 auto;
	padding: 30px 0px 30px 0px;
	display: flex;
	flex-direction: row;
}

.logolink
{
	width:24%;
	padding-right:4%;
}

.navlinks
{
	display: flex;
	flex-direction: row;
	width: 78%;
	justify-content: flex-start;
	align-items: center;
	margin-top:25px;
}

.navbutton
{

}

.contactctaholder
{
	with:100%;
	background-color:#540101;
	color:#FFF;
}

.contactcta
{
	width:80%;
	margin:0 auto;
	padding-top:10px;
	padding-bottom:10px;
	text-align:center;
	align-content:center;
}

@media screen and (max-width: 1000px)
{
	.logolink
	{
		width: 50%;
		margin: 0 auto;
		padding-right: 0px
	}
		.navwrapper, .navlinks, .navbutton
	{
		width: 100%;
		float: none;
		display: block;
		text-align: center;
		align-content: center;
	}
	
	.navwrapper{
	padding: 30px 0px 0px 0px;
}
	
	.navlinks
	{
		margin-top:5px;
	}
	
	.navbutton{
		margin-top: 10px;
	}
	
	.topnavlink, .contactlink
	{
		width:60%;
	}
	
	.noshow
	{
		display:none;
	}
}

/*slideshow*/

.slideshowholder
{
	width:100%;
}

/*two home page blocks*/

.blockintro
{
	margin-bottom:30px;
}

.twoblocks
{
	width:80%;
	margin:0 auto;
	padding-top:70px;
	padding-bottom:70px;
}

.blockholderleft
{
	width:48%;
	float:left;
	border-left:solid;
	border-width:1px;
	border-color:#595959;
}

.blockholderright
{
	width:48%;
	float:right;
	border-left:solid;
	border-width:1px;
	border-color:#595959;
}

.blockcontent
{
	padding-left: 15px;
}

.blocktext
{
	margin-bottom:30px;
}

@media screen and (max-width: 1000px)
{
	.blockholderleft,.blockholderright
	{
		width:100%;
		float:none;
	}
	
	.blockholderleft
	{
		margin-bottom:30px;
	}
	
	.twoblocks
	{
		padding-top:40px;
	}
}

/*we are*/

.weareblock
{
	padding-bottom:25px;
}

.weareblock2
{
	padding-bottom:0px;
}

/*contact*/

.contactbuttonholder
{
	margin-top:45px;
}

.contactbuttonleft
{
	width:48%;
	float:left;
	background-color:#939e39;
	border-radius: 25px;
}

.contactbuttonright
{
	width:48%;
	float:right;
	background-color:#bcbf32;
	border-radius: 25px;
}

.contactbuttoncontent
{
	width:80%;
	padding-top:50px;
	padding-bottom:50px;
	margin:0 auto;
	text-align:center;
}

@media screen and (max-width: 1000px)
{
	.contactbuttonleft,.contactbuttonright
	{
		width:100%;
		float:none;
	}
	
	.contactbuttonright
	{
		margin-top:20px;
	}
	
}

/*results*/

.resultsholder
{
	width:80%;
	margin:0 auto;
	padding-top:70px;
}

/*quotes*/

.homequoteholder
{
	width:80%;
	margin:0 auto;
}

.homequotetext
{
	padding-bottom:70px;
}

.innerquote
{
	padding-top:35px;
}

.resultsquote
{

}

.quotemark
{
	width:3%;
	align-content-left;
	padding-bottom:15px;
}

@media screen and (max-width: 1000px)
{
	.quotemark
	{
		width:10%;
	}
}

/*services*/

.infographicholder
{
	margin-top:50px;
}

.infoitem1
{
	width:30%;
	padding-right:3%;
	float:left;
	margin-bottom:50px;
}

.infoitem2
{
	width:100%;
}

.infoitem3
{
	width:30%;
	padding-right:3%;
	float:left;
}

.serviceiconholder
{
	width:30%;
}

.serviceicon
{
	width:50%;
	align-content:left;
}

@media screen and (max-width: 1000px)
{
	.infoitem1, .infoitem2, .infoitem3
	{
		width:100%;
		float:none;
	}
	
	.serviceiconholder
	{
		width:100%;
	}
}

/*marketing*/

.marketingleft
{
	width:10%;
	padding-right:2%;
	float:left;
	align-content:center;
}

.marketingright
{
	width:89%;
	float:left;
}

@media screen and (max-width: 1000px)
{
	.marketingleft
	{
		width:30%;
		align-content:left;
		float:none;
		padding-bottom:15px;
	}
	
	.marketingright
	{
		width:100%;
		float:none;
		padding-bottom:25px;
	}
}

/*consulting*/

.consultinginfoholder
{
	margin-bottom:50px;
	width:90%;
	align-content:left;
}

.consultinginfo
{
	width:22.5%;
	padding-right:2%;
	padding-bottom:5px;
	align-content:left;
	float:left;
}

.consultingtag
{
	text-align:left;
	align-content:left;
}

@media screen and (max-width: 1000px)
{
	.consultinginfo
	{
		width:50%;
		align-content:left;
		padding-bottom:25px;
	}
}


/*help*/

.helpholder
{
	background-color:#939e39;
	width:100%;
}

.helpcontent
{
	width:80%;
	margin: 0 auto;
	padding-top:50px;
	padding-bottom:50px;
	text-align:center;
	align-content:center;
}

.helptext
{
	padding-bottom:30px;
}

/*portfolio landing divs*/

.workholder
{
	width:100%;
	margin-bottom:70px;
}

.item
{
	width: 33.33%;
	float:left;
	height:auto;
}

@media screen and (max-width: 700px)
{
	.item, .itemblock, .itemblockleft, .itemblockright
	{
		width: 100%;
		float: none;
	}
	
	.itemblockright
	{
		margin-top:30px;
	}
	
}

/*blog divs*/

.blogholder
{
	width:80%;
	margin:0 auto;
	padding-top:50px;
	padding-bottom:50px;
}

.blogleft
{
	width:47%;
	float:left;
}

.blogright
{
	width:47%;
	float:right;
}

.callout
{
	margin-top:45px;
	margin-bottom:45px;
}

@media screen and (max-width: 1000px)
{
	.blogleft, .blogright
	{
		width:100%;
		float:none;
	}
}


/*portfolio drilldown divs*/

.servicetagholder
{
	margin-top:10px;
}

.kpiholder
{
	margin-top:45px;
}

.kpi
{
	width:31%;
	margin-right:2%;
	float:left
}

.indent1
{
	padding-left:20px;
}

.indent2
{
	padding-left:40px;
}

.servicetag
{
	font-size: calc(12px + (14 - 12) * ((100vw - 300px) / (1600 - 300)));
	font-weight:400;
	padding-right:2%;
	float:left;
}

.topgraphicholder
{
	width:100%;
	margin-top:70px;
	margin-bottom:70px;
}

.topgraphic
{
	width:80%;
	margin:0 auto;
}

.hqographic
{
	background-color:#ebebeb;
	width:100%;
}

.portholderleft
{
	width:47%;
	float:left;
}

.portholderright
{
	width:47%;
	float:right;
}

.portitem
{
	margin-top:35px;
}

@media screen and (max-width: 700px)
{
	.servicetag
	{
		float:none;
	}
	
	.kpi
	{
		float:none;
		width:80%;
		margin-top:10px;
		align-content:left;
	}
	
	.portholderleft, .portholderright
	{
		width:100%;
		float:none;
	}
	
	.portholderright
	{
		margin-top:35px;
	}
}



/*services divs*/

.serviceblockleft
{
	width:49.9%;
	float:left;
	text-align:center;
	align-content:center;
}

.serviceblockright
{
	width:49.9%;
	float:right;
	text-align:center;
	align-content:center;
	border-left:solid;
	border-width:1px;
	border-color:#595959;
}

.servicesholder
{
	width:90%;
	margin:0 auto;
}


@media screen and (max-width: 900px)
{
	.serviceblockleft, .serviceblockright
	{
		width:100%;
		float:none;
		border: none;
	}
	
	.serviceblockright
	{
		margin-top:25px;
	}
	
}


/*bio divs*/

.bioholder
{
	width:80%;
	margin:0 auto;
}

.bioholder2
{
	width:80%;
	margin:0 auto;
	padding-top:50px;
}

.headshotholder
{
	width:20%;
	float:left;
}

.biocontent
{
	width:78%;
	float:right;
}



.bioheadline
{
	margin-bottom:10px;
	margin-top:7px;
}

@media screen and (max-width: 1000px)
{
	.headshotholder
	{
		width:40%;
		float:none;
		align-content:left;
		padding-bottom:10px;
	}
	
	.biocontent
	{
		width:100%;
		float:none;
	}
}
	
/*footer*/

.footercontainer
{
	width:100%;
	background-color:#eef2de;
}

.footercontentholder
{
	width:80%;
	margin:0 auto;
	padding-top:30px;
	padding-bottom:100px;
	font-size: calc(14px + (16 - 14) * ((100vw - 300px) / (1600 - 300)));
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
}

.footerleft
{
	width: 50%;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;		
	align-items: flex-start;
}

.footerright
{
	width:50%;
	padding-top:50px;
}

.footerlogo
{
	width:35%;
	padding-bottom:10px;
	padding-right:30px;
}

.footercopyright
{
	padding-top:30px;
}

.footerlinkswrapper
{
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-content: flex-start;
}

.footerlinksholder
{
	padding-right:4%;
}

.footerlefttop
{
	width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-content: center;	
}

.footerlinkedin
{
	width: 6.5%;
	margin-left: 3%;
	margin-top: 2.5%;
	align-self: center;
}

#linkedin .lifill:hover
{
	fill: #939E39;
}

@media screen and (max-width: 900px)
{
	.footerlogo
	{
		width: 80%;
	}
	
	.footerlinkedin
	{
		width: 12.5%;
		margin-left: 2%;
		margin-top: 2.5%;
	}
	
	.footercontentholder
	{
		flex-direction: column;
	}
	
	.footerlinkswrapper
	{
		flex-direction: column;
	}
	
	.footerleft, .footerright
	{
		width: 80%;
		margin: 0 auto;
	}
	
	.footerright
	{
		padding-top:30px;
	}
	
	.footerlinksholder
	{
		width:100%;
		flex-direction: column;
			
	}
}

@media screen and (min-width: 2000px)
{
	.footerlogo
	{

	}
	
	.linkedin
	{
		width:6%;
		padding-top:60px
	}
	
	.footerleft, .footerright
	{
		
	}
	
	.footerlinksholder
	{

	}
}

/*font styles*/

.headlineholder
{
	margin-bottom:10px;
}

.innerheadlineholder
{
	margin-bottom:35px;
}

h1
{
	color:#939e39;
	font-size: calc(45px + (62 - 45) * ((100vw - 300px) / (1600 - 300)));
	font-weight:600;
	line-height: 100%;
}
	
.subheadholder
{
	margin-bottom: 10px;
}

.subholder2
{
	margin-bottom:25px;	
}

h2
{
	font-size: calc(25px + (31 - 25) * ((100vw - 300px) / (1600 - 300)));
	line-height: 100%;
	font-weight:600;
}

.subhead
{
	color:#939e39;
	font-size: calc(25px + (31 - 25) * ((100vw - 300px) / (1600 - 300)));
	line-height: 100%;
	font-weight:600;
}

h3
{
	color:#FFF;
	font-size: calc(25px + (31 - 25) * ((100vw - 300px) / (1600 - 300)));
	line-height: 100%;
	font-weight:600;
}

h4
{
	font-size: calc(20px + (22 - 20) * ((100vw - 300px) / (1600 - 300)));
	line-height: 100%;
	font-weight:600;
}

.bold
{
	font-weight:800;
}

.largefont
{
	font-size: calc(22px + (26 - 22) * ((100vw - 300px) / (1600 - 300)));
  	line-height: 130%;
}

.green
{
	color:#939e39;
}

.white
{
	color:#FFF;
}

.red
{
	color:#540101;
}

.orange
{
	color:#ee3226;
}

.tag
{
	font-size: calc(12px + (14 - 12) * ((100vw - 300px) / (1600 - 300)));
	font-weight:800;
}

.caption
{
	font-size: calc(16px + (18 - 16) * ((100vw - 300px) / (1600 - 300)));
	font-style:italic;
}

.footerheadline
{
	color:#939e39;
	font-size: calc(18px + (24 - 18) * ((100vw - 300px) / (1600 - 300)));
	line-height: 100%;
	font-weight:600;
}

.copyright
{
	
}

a:link, a:visited, a:active
{
	color: #595959;
	text-decoration:underline;
}

a:hover
{
	color: #939e39;
	text-decoration:underline;
}

a.whitelink:link, a.whitelink:visited, a.whitelink:active 
{
	font-weight: 400;
	font-style: normal;
	color: #FFF;
	text-decoration:none;
}

a.whitelink:hover 
{
	color: #e5e780;
	text-decoration:none;
}

a.whitelink2:link, a.whitelink2:visited, a.whitelink2:active 
{
	font-style: normal;
	color: #FFF;
	text-decoration:none;
}

a.whitelink2:hover 
{
	color: #FFF;
	text-decoration:none;
}

a.footerlink:link, a.footerlink:visited, a.footerlink:active 
{
	font-weight: 400;
	font-style: normal;
	color: #595959;
	text-decoration:none;
}

a.footerlink:hover 
{
	color: #939e39;
	text-decoration:none;
}

a.redlink:link, a.redlink:visited, a.redlink:active 
{
	font-weight: 600;
	font-style: normal;
	color: #540101;
	text-decoration:none;
	font-size: calc(21px + (25 - 21) * ((100vw - 300px) / (1600 - 300)));
}

a.redlink:hover 
{
	color: #939e3a;
	text-decoration:none;
}

.buttonholder
{
	margin-top:35px;
}

a.topnavlink
{
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	-moz-transition: 0.3s;
	-webkit-transition: 0.3s;
	transition: 0.3s;	
}

a.topnavlink
{
	font-weight:400;
	color:#595959 !important;
	/*font-size: 1.5vw;*/
	font-size: calc(18px + (20 - 18) * ((100vw - 300px) / (1600 - 300)));
	padding: 6px 9px 6px 9px;
	margin: 0px 7px 0px 7px;
	display: inline-block;
	text-decoration:none;
}

a.topnavlink:hover
{
	color: #FFF !important;
	background-color:#540101;
	text-decoration:none;
}

a.topnavselected
{
	color: #FFF !important;
	background-color:#540101;
	text-decoration:none;
}

a.contactlink
{
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	-moz-transition: 0.3s;
	-webkit-transition: 0.3s;
	transition: 0.3s;	
}

a.contactlink
{
	font-weight:400;
	color:#540101;
	border-style:solid;
	border-width:1px;
	border-color:#540101;
	font-size: calc(21px + (18 - 21) * ((100vw - 300px) / (1600 - 300)));
	padding: 6px 10px 6px 10px;
	margin: 0px 5px 0px 5px;
	display: inline-block;
	text-decoration:none;
}

a.contactlink:hover
{
	color: #FFF !important;
	border-style:solid;
	border-width:1px;
	border-color:#540101;
	background-color:#540101;
	text-decoration:none;
}

a.ctalink
{
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	-moz-transition: 0.3s;
	-webkit-transition: 0.3s;
	transition: 0.3s;	
}

a.ctalink
{
	font-weight:600;
	color:#540101;
	border-style:solid;
	border-width:1px;
	border-color:#540101;
	font-size: calc(16px + (18 - 16) * ((100vw - 300px) / (1600 - 300)));
	padding: 6px 10px 6px 10px;
	margin: 0px 5px 0px 5px;
	display: inline-block;
	text-decoration:none;
}

a.ctalink:hover
{
	color: #FFF !important;
	border-style:solid;
	border-width:1px;
	border-color:#540101;
	background-color:#540101;
	text-decoration:none;
}

a.contactbuttonlink
{
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	-moz-transition: 0.3s;
	-webkit-transition: 0.3s;
	transition: 0.3s;	
}

a.whiteboxlink
{
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	-moz-transition: 0.3s;
	-webkit-transition: 0.3s;
	transition: 0.3s;	
}

a.whiteboxlink
{
	font-weight:600;
	color:#FFF;
	border-style:solid;
	border-width:1px;
	border-color:#FFF;
	font-size: calc(16px + (18 - 16) * ((100vw - 300px) / (1600 - 300)));
	padding: 6px 10px 6px 10px;
	margin: 5px 10px 0px 5px;
	display: inline-block;
	text-decoration:none;
}

a.whiteboxlink:hover
{
	color: #939e39 !important;
	border-style:solid;
	border-width:1px;
	border-color:#FFF;
	background-color:#FFF;
	text-decoration:none;
}


@media screen and (max-width: 1000px)
{
	a.topnavlink, a.contactlink 
	{
		padding: 7px 8px 7px 8px;
	}
	
	a.topnavlink
	{
		font-size: calc(21px + (21 - 18) * ((100vw - 300px) / (1600 - 300)));
	}

}

