﻿
body { height: 100%; }
html { height: 100%; }

.solutions {
	font-size: 1.1em;
	line-height: 1.8em;
}

.solutions h1 {
	font-size: 50px !important;
	line-height: 65px !important;
	margin-bottom: 0px !important;
}

	.solutions h1 small {
		display: block;
		font-size: 0.8em;
		line-height: 1.1em;
		margin-bottom: 8px !important;
		color: #000;
	}
	
	
.solutions h2 {
	font-size: 40px;
	line-height: 50px;
}


	.solutions h2 small {
		font-size: 0.8em;
		color: #000;
	}
	
	.solutions h2.noBottomMargin {
		margin-bottom: 0px;
	}
	
.solutions h4 {
	font-weight: bold;
	color: #2a603b !important;
}

.solutions sup {
	font-size: 0.7em;
}

.solutions .upper-panel .wrap {
	padding-top: 40px !important;
	padding-bottom: 40px !important;
}

.solutions ul {
	color: #748a96 !important;
}

	.whitepaper ul li {
		margin-bottom: 0px !important;
	}
	
.solutions iframe {
	overflow: hidden;
}

.quoteHighlight {
	font-family: "Josefin Sans",sans-serif;
	font-size: 35px;
	line-height: 45px;
	margin: 0 auto;
	width: 80%;
	max-width: 700px;
}

	.quoteHighlight span {
		color: #2a603b;
		font-style: italic;
		font-weight: bold;
	}
	
.quoteLegend {
	display: block;
	font-size: 13px;
	line-height: 21px;
	margin-top: 7px;
	color: #ccc;
}
	
	.upper-panel .quoteLegend {
		color: #999;
	}
	
	.statpanel .quoteLegend {
		color: #333;
	}

.graph {
}

.graphBar {
	display: inline-table;
	background-color: #2a603b;
	height: 80px;
	width: 0%;
	
	-moz-transition: all 0.2s ease-out;
    -o-transition: all 0.2s ease-out;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

	.graphBar.graphBarDarkGreen {
		background-color: #2a603b;
	}

	.graphBar.graphBarLightGreen {
		background-color: #749a4a;
	}
	
.gridCaption {
	font-size: 18px;
	line-height: 27px;
	font-weight: bold;
	font-style: italic;
	font-family: "Josefin Sans",sans-serif;
}

.quoteMedium {
	font-family: "Josefin Sans",sans-serif;
	font-size: 25px;
	line-height: 35px;
	margin: 0 auto;
	width: 80%;
	max-width: 700px;
	margin-bottom: 20px;
}

	.quoteMedium span {
		color: #2a603b;
		font-style: italic;
		font-weight: bold;
	}
	
	.quoteMedium .quoteLegend {
		display: block;
		font-size: 13px;
		line-height: 21px !important;
		color: #ccc;
	}
	
.quotePull {
	box-shadow: 0px 0px 20px rgba(0,0,0,0.05);
	border-radius: 20px;
	padding: 30px;
	margin-bottom: 20px;
}

	.quotePull .quotePullIcon {
		font-family: 'Coustard', sans-serif;
		position: absolute;
		font-size: 120px;
		margin-left: -60px;
		margin-top: -10px;
	}

	
.solutions .columnThird {
	display: inline-table;
	width: 33%;
}

.solutions .columnTwoThird {
	vertical-align: top;
	display: inline-table;
	width: 65%;
}

.solutions .columnHalf {
	display: inline-table;
	width: 50%;
	vertical-align: top;
}

.solutions .columnWrap {
	width: 90%;
	margin: 0 auto;
}

.solutions .statpanel .maintext {
	color: #333;
}

.solutions .flushpanel, .solutions .flushpanel .wrap {
	padding-bottom: 0px !important;
	margin-bottom: 0px !important;
}

.moduleBox {
	box-shadow: 0px 0px 20px rgba(0,0,0,0.1);
	border-radius: 10px;
	padding: 30px;
	text-align: center;
	height: 100%;
	flex-grow: 1;
	
	background-color: #fff;
	
	-moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
}

	.moduleBox:hover {
		box-shadow: 0px 0px 20px rgba(0,0,0,0.25);
	}
	
		.moduleBox:hover img {
			width: 150px;
			margin-left: -70px;
			margin-top: -120px;
		}

	.moduleBox img {
		position: absolute;
		width: 120px;
		margin-left: -55px;
		margin-top: -100px;
		
		-moz-transition: all 0.2s ease-out;
	    -o-transition: all 0.2s ease-out;
	    -webkit-transition: all 0.2s ease-out;
	    transition: all 0.2s ease-out;
	}

.flexDisplay {
	display: flex;
	flex: 0 0 50%;
	flex-direction: row;
	align-items: stretch;
}

	.flexDisplay .flexDisplay_Grow1 {
		flex-grow: 1;
		flex-basis: 150px; 
		margin: 10px;
	}
	
.columnAlignBottom {
	align-self: flex-end;
}

#subscribePanel {
	position: relative;
	background-color: #000;
	text-align: center;
	padding: 10px 0px;
	font-family: 'Josefin Sans', sans-serif;
	font-size: 12px;
	letter-spacing: 1px;
	box-shadow: 0px 0px 20px rgba(0,0,0,0.3);
	text-transform: uppercase;
}

	#subscribePanel a {
		color: #fff;
		text-decoration: none;
	}

.overflowHidden {
	overflow: hidden;
}

.subPageNavigation {
	font-family: 'Josefin Sans';
	white-space: nowrap;
	margin-right: 30px;
	margin-left: 20px;
}

	.subPageNavigation a {
		text-decoration: none;
		color: #a79256;
	}

.cardArrow {
	height: 30px !important;
	margin-right: 10px;
	vertical-align: middle;
	cursor: pointer;
}

.cardClose {
	position: absolute;
	height: 40px !important;
	margin-top: 535px;
	margin-left: -20px;
	cursor: pointer;
}

	.cardPanel {
		position: absolute;
		width: 550px;
		height: 630px;
		left: 50%;
		top: 200px;		
		margin-left: -275px;
		padding: 30px;
		z-index: 60000;
		border-radius: 5px;
		background-color: #fff;
		box-shadow: 0px 0px 20px rgba(0,0,0,0.7);
		-moz-transition: all 0.2s linear;
	    -o-transition: all 0.2s linear;
	    -webkit-transition: all 0.2s linear;
	    transition: all 0.2s linear;
		text-align: center;
		opacity: 0;
		visibility: hidden;
	}
	
		.cardPanel h4 {
		    font-family: "Josefin Sans",sans-serif;
		    font-size: 25px;
		    font-weight: 600;
		    line-height: 35px;
		    margin-bottom: 15px;
		    margin-top: 0px;
		    color: #2a603b;
		    text-transform: none;
		}
				
		.cardPanel .flexCards {
			justify-content: center;
			flex-wrap: wrap;
		}
		
			.cardPanel .flexCards .flexCard {
				width: 30%;
			}
		
			.cardPanel .flexCards div {
				margin-right: 0em !important;
			}
				
				.cardPanel .flexCards .cardSolution {
					width: 130px;
				}
				
					.cardPanel .flexCards .cardSolution img {
						width: 100%;
					}
				
					.cardPanel .flexCards .cardSolution .caption {
						margin-top: 10px;
						font-size: 16px;
						line-height: 21px;
						padding: 0px 10px 10px 10px;
					}

#overlayment {
	background: rgba(0,0,0,0.0); 
	width: 100%;
	height: 100%; 
	z-index: 50000;
	top: 0; 
	left: 0; 
	position: fixed; 	
	visibility: hidden;
	-moz-transition: all 0.2s linear;
    -o-transition: all 0.2s linear;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
}



@media only screen and (max-width: 1200px) {
	
	.solutions .columnThird {
		display: inline-table;
		width: 100%;
	}
	
	.solutions .columnTwoThird {
		display: inline-table;
		width: 100%;
	}
	
	.solutions .columnHalf {
		display: inline-table;
		width: 100%;
	}
	
	.moduleBox { 
		margin-bottom: 110px;
	}
	
	.flexDisplay {
		flex-direction: column;
	}
	
	.flexDisplay_WrapReverse {
		flex-direction: column-reverse;
	}

}

@media only screen and (max-width: 800px) {

	.solutions h1 {
		font-size: 35px !important;
		line-height: 50px !important;
		margin-bottom: 0px !important;
	}

	.solutions h1 small {
		font-size: 0.8em;
		color: #000;
	}

}