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

/* Hide Show Styles */
.mobile_hide {
	display: none;
}
.mobile_show {
	display: inherit;
}

body {
	margin: 0;
	background-image:url(/images/white_stripes.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-color: #f5f4f4;
	font-size: 80%;
}
.content_container_full {
	padding-left: none;
	padding-right: none;
}
.content_container_2-3 {
	padding-left: none;
	padding-right: none;
	border-right: none;
}
.content_container_sidebar {
	padding-right: none;
	padding-left: none;
}
.sidebar_block {
	display: inline-table;
	margin-bottom: 15px;
	width: 100%;
	border-top: #CCC double 3px;
	padding-top: 15px;
}
.sidebar_block ul {
	padding-left: 15px;
}
.inline_content_block {
	display: inline-block;
	 border-top: #CCC double 3px;
	 padding-top: 15px;
	 margin-top: 15px;
	 width: 100%;
}
.blog_entry_blocks {
	display: inline-block;
	 border-bottom: #CCC double 3px;
	 padding-bottom: 15px;
	 margin-bottom: 15px;
	 width: 100%;
}
.category_container {
	margin-top: 15px;
	padding-top: 15px;
	border-top: #CCC double 3px;
	padding-left: none;
	padding-right: none;
	min-height: 250px;
}
.break_out_area {
	 display: inline-block;
	 border-bottom: #CCC double 3px;
	 border-top: #CCC double 3px;
	 padding-bottom: 10px;
	 margin-bottom: 15px;
	 padding-top: 20px;
	 margin-top: 15px;
	 width: 100%;
}

/* HEADER ELEMENTS */
.header_img img {
	width: 100%;
	height: auto;
	-webkit-box-shadow: 0px 1px 5px 0px #4a4a4a;
    -moz-box-shadow: 0px 1px 5px 0px #4a4a4a;
    box-shadow: 0px 1px 5px 0px #4a4a4a;
	margin-bottom: -5px;
}
 #slider {
        position:relative;
        max-width:1099px;
        max-height:100%;
        height:auto;
        margin-left:auto;
        margin-right:auto;
        overflow:hidden;
}

/* BANDS */
.white_band {
	background-color: #FFF;
}
.green_band {
	background-color: #79a83e;
	background-image:url(/images/trans_stripes.png);
	background-repeat:no-repeat;
	padding: 7px 0 7px 0;
}
.green_band p {
		margin-top: 0;
		margin-bottom:0;
}
.green_band h4 {
	margin-top:0;
	margin-bottom:0;
}
.green_band a {
		color: #FFF;
}
.green_band_narrow {
	height: 10px;
	background-color: #8ec549;
	background-image:url(/images/footer_breaker_lines.png);
	background-position:left center;
	background-repeat:no-repeat;
}
.gray_band {
	background-color: #909295;
	padding: 12px 0 7px 0;
	background-image:url(/images/trans_stripes.png);
	background-position: right top;
	background-repeat: no-repeat;

}
.red_band {
	background-color: #b73400;
	padding: 7px 7px 7px 7px;
}
.red_band p {
		margin-top: 0;
		margin-bottom:0;
}
.red_band a {
		color: #FFF;
}
.teal_band {
	background-color: #029e98;
	padding: 7px 7px 7px 7px;
}
.teal_band p {
		margin-top: 0;
		margin-bottom:0;
}
.teal_band a {
		color: #FFF;
}
.quote_band {
	background-color: #909295;
	padding: 12px 0 7px 0;
	background-image:url(/images/trans_stripes.png);
	background-position: right top;
	background-repeat: no-repeat;
}

/* HOME PAGE ELEMENTS */
.home_teaser_block {
	backgound: #fff;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	width: auto;
	min-height: auto;
	}
.home_teaser_block h2 {
	margin-top: 0;
	}
.home_intro{
	background-position: center;
	background-repeat: no-repeat;
	background-image: inherit;
}

/* INTERIOR PAGE ELEMENTS */
.interior_portal img{
	max-width: 275px;
	height: auto;
	display:  inherit;
}
.nested_columns_left {
		padding-right: 0;
	}


/* BLOG PAGE ELEMENTS */

.next_link {
	display: block;
	background-image: url(/images/next_arrow.png);
	background-position: right center;
	background-repeat: no-repeat;
	padding-right: 16px;
	float: right;
	}
.prev_link {
	display: block;
	background-image: url(/images/return_arrow.png);
	background-position: left center;
	background-repeat: no-repeat;
	padding-left: 16px;
	}


.inset_img{
	margin-right: 20px;
	margin-bottom: 10px;
 	width: 180px;
 	height: 180px;
 	background-size: cover;
 	display: block;
 	border-radius: 100px;
	 -webkit-border-radius: 100px;
	 -moz-border-radius: 100px;
	border-style: solid;
    border-color:#FFF;
    border-weight: 7px;
}

.inset_img_left{
	margin-right: 20px;
	margin-bottom: 10px;
 	width: 180px;
 	height: 180px;
 	background-size: cover;
 	display: block;
 	border-radius: 100px;
	 -webkit-border-radius: 100px;
	 -moz-border-radius: 100px;
	border-style: solid;
    border-color:#FFF;
    border-weight: 7px;
	float: none;
	clear: both;
}
.entry_img {
	margin-bottom: 0;
	border: 10px solid #FFF;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-shadow: 2px 2px 4px 0 #ccc;
	-webkit-box-shadow: 2px 2px 4px 0 #ccc;
	-moz-box-shadow: 2px 2px 4px 0 #ccc;
}
.entry_caption {
	font-size: 13px;
	font-weight: 400;
	font-style: italic;
	color: #666;
	margin-top: 5px;
}
.gallery_thumb {
	margin-right: 20px;
	margin-bottom: 10px;
 	width: 100px;
 	height: 100px;
 	background-size: cover;
 	display: block;
 	border-radius: 100px;
	 -webkit-border-radius: 100px;
	 -moz-border-radius: 100px;
	border-style: solid;
    border-color:#FFF;
    border-weight: 7px;
	float: left;
}
.tech_inset_block {
	float: none;
	margin-right: 0;
	width: 100%;
	display: block;
}

/*FLIP HEADERS*/
 aside {
	display: block;
	position: relative;
	margin-top: 0px;
	margin-right: 0;
	margin-bottom: 60px;
	margin-left: 0;
    }

    aside h3 {
        font-size: 1.0em;
		line-height: 200%;
		font-weight: 700;
        letter-spacing: 2px;
        text-transform: uppercase;
        color: #8ec549;
        margin: 0 0 10px 30px;
    }
	aside ul {
		margin-left: 2.0em;
	}
    .csstransforms aside {
        margin-left: 34px;
    }
    .csstransforms aside h3 {
        position: absolute;
        top: 0;
        left: 0;

        background: none;

        -webkit-transform-origin: 0 0;
        -moz-transform-origin:    0 0;
        -ms-transform-origin:     0 0;
        -o-transform-origin:      0 0;

        -webkit-transform: rotate(90deg);
        -moz-transform:    rotate(90deg);
        -ms-transform:     rotate(90deg);
        -o-transform:      rotate(90deg);
    }


/*MASONRY GRID STYLES*/
.masonry {
	margin: .5em 0;
	padding: 0;
	-moz-column-gap: .5em;
	-webkit-column-gap: .5em;
	column-gap: .5em;
}
.item {
	backgound: #fff;
	background-position: center;
	background-repeat: no-repeat;
	width: 100%;
	background-size: cover;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-shadow: 2px 2px 4px 0 #ccc;
	margin: 0 0 .5em;
}
.item_content {
	padding: 2em;
	background-image: url(/images/trans_overlay.png);
	background-repeat: repeat;
	display: inline-block;
	min-height: inherit;
	}
.item_content p {
	color: #fff;
	font-weight: 200;
	margin-bottom: 0;
}
.item_content h2 {
	color: #fff;
	font-weight: 200;
	margin-top: 0;
}
.item_content h4 {
	color: #fff;
	font-weight: 200;
	margin-top: 0;
}
.item_content .tag {
	font-family: 'Raleway', 'sans-serif';
	font-weight: 200;
	font-size: 13px;
}
.continue_link a {
		display: block;
		text-align: center;
		padding: 5px;
		border:thin;
		border:#8ec549;
		-webkit-border-radius: 5px;-moz-border-radius: 5px;border-radius: 5px;
		border-style: solid;
		background-image: none;
		margin-top: 14px;
}
.continue_link a:hover {
		background-image: none;
}

/*EXPANDER STYLES*/
.content {
	display:none;
	}

.expander {
	display: block;
	clear: both;
}

.container, .expander.expanded {
                padding-right: 18px;
                background-position: right top;
                background-repeat: no-repeat;
                background-image: url(/images/expanded.png);
}

.container, .expander.collapsed {
                padding-right: 18px;
                background-position: right top;
                background-repeat: no-repeat;
                background-image: url(/images/collapsed.png);
}



/*TEXT STYLES*/
h1, h2, h3, h4, h5, h6, p, input, textarea {
	color: #373737;
	font-family: 'Raleway', 'sans-serif';
	font-weight: 400;
	margin-top: 0;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
	font-weight: inherit;
}
h1 {
	font-size: 2.8em;
	line-height: 112%;
	margin-bottom: 0.3em;
	font-weight: 200;
}
h2 {
	font-size: 2.6em;
	line-height: 112%;
	margin-bottom: 0.3em;
	font-weight: 200;
}
h3 {
	font-size: 2.2em;
	line-height: 112%;
	margin-bottom: 0.3em;
	font-weight: 200;
}
h4 {
	font-size: 1.8em;
	line-height: 112%;
	margin-bottom: 0.3em;
	font-weight: 200;
}
h5 {
	font-size: 1.4em;
	line-height: 120%;
	margin-bottom: 0.3em;
}
h6 {
	font-size: 1.3em;
	line-height: 120%;
	margin-bottom: 0.3em;
	font-weight: 400;
}
p {
	font-size: 1.0em;
	line-height: 140%;
	font-weight: 400;
	margin: 0 0 1.2em 0;
}
a {
	color:#8ec549;
	text-decoration: none;
	font-weight:400;
}
a:hover {
	color: #bbdb60;
}
strong {
	font-family: 'Raleway', 'sans-serif';
	font-weight: 700;
}
.green {
	color: #8ec549;
}
.grey {
	color: #696c71;
}
.ltgrey {
	color: #CCC;
}
.white {
	color: #FFF;
}
.sm_charthead {
	font-size: 11px;
	font-weight: 700;
	font-family: 'Raleway', 'sans-serif';
	color:#666;
}
.error {
	color:#900;
}

/*LIST STYLES*/


ul.list {
	color: #8ec549;
	font-weight: 400;
	font-family: 'Raleway', 'sans-serif';
	line-height: 140%;
	padding-left: 1.0em ;
	list-style: square;	
}
ul.list p {
	color: #181818;
	font-weight: 400;
	font-family: 'Raleway', 'sans-serif';
	line-height: 140%;
	margin: 0 0 0 0;
	list-style-type: square;
}
ul.dropdown {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}

.sidebar_block ul,
.content_container_sidebar ul,
.inline_content_block ul {
	list-style: none;
	padding-left: 0;
}
.sidebar_block ul li,
.content_container_sidebar ul li,
.inline_content_block ul li {
	background: url('/images/list-bullet.png') no-repeat 0 7px;
	color: #181818;
	font-size: 1.0em;
	font-weight: 400;
	font-family: 'Raleway', 'sans-serif';
	line-height: 140%;
	margin: 0 0 0 0;
	padding-left: 15px;
}



/*FOOTER STYLES*/
.footer_block {
	padding-left: 0px;
	border-left-style: none;
	min-height: auto;
}
footer p {
	font-size: 0.9em;
	line-height: 140%;
	margin-bottom: 0;
}
footer h6 {
	margin-top: 0;
}
footer ul {
	list-style-type: square;
	color:#8ec549;
	font-size: 0.9em;
	line-height: 140%;
	padding-left: 14px;
	font-family: 'Raleway', 'sans-serif';
	font-weight: 300;
	margin-top: 0px;
}
footer li {
	margin: 0px;
	padding-top: 0px;
	padding-left: 0px;
	padding-right: 0px;
	padding-bottom: 0px;
}


/*CONTACT FORM*/
.form-container {
	max-width: 100%;
}
#contact-form input[type="text"], #contact-form input[type="email"], #contact-form input[type="tel"], #contact-form input[type="url"], #contact-form textarea, #contact-form input[type="password"] {
	width:90%;
	box-shadow:inset 0 1px 2px #DDD, 0 1px 0 #FFF;
	-webkit-box-shadow:inset 0 1px 2px #DDD, 0 1px 0 #FFF;
	-moz-box-shadow:inset 0 1px 2px #DDD, 0 1px 0 #FFF;
	border:1px solid #CCC;
	background:#FFF;
	margin:0 0 5px;
	padding:10px;
	border-radius:5px;
}
#contact-form input[type="text"]:hover, #contact-form input[type="email"]:hover, #contact-form input[type="tel"]:hover, #contact-form input[type="url"]:hover, #contact-form textarea:hover {
	-webkit-transition:border-color 0.3s ease-in-out;
	-moz-transition:border-color 0.3s ease-in-out;
	transition:border-color 0.3s ease-in-out;
	border:1px solid #AAA;
}
#contact-form textarea {
	height:100px;
	max-width:90%;
}
/* HONEYPOT */
#additional_info {
	display: none;
}
.button_link a,
.button_link input[type='submit'] {
		background-color: transparent;
		display: block;
		color: #8ec549;
		cursor: pointer;
		text-align: center;
		padding: 5px;
		border:thin;
		border:#8ec549;
		border-style: solid;
		-webkit-border-radius: 5px;-moz-border-radius: 5px;border-radius: 5px;
		background-image: none;
		margin-top: 14px;
		text-transform: uppercase;
		width: 180px;
		font-weight: 700;
}
.button_link a:hover,
.button_link input[type='submit']:hover {
		background-image: none;
		color: #FFF;
		background: #8ec549;
}



@media only screen and (min-width: 570px) {
body {
	margin: 0;
	background-image:url(/images/white_stripes.png);
	background-position: left top;
	background-repeat: no-repeat;
	background-color: #f5f4f4;
	font-size: 100%;
}
.content_container_full {
	padding-left: 30px;
	padding-right: 30px;
}
.content_container_2-3 {
	padding-left: 30px;
	padding-right: 30px;
	border-right: none;
}
.content_container_sidebar {
	padding-right: 30px;
	padding-left: 30px;
}
.category_container {
	margin-top: 15px;
	padding-top: 15px;
	border-top: #CCC double 3px;
	padding-left: 30px;
	padding-right: 30px;
	min-height: 250px;
}
.masonry {
		-moz-column-count: 2;
		-webkit-column-count: 2;
		column-count: 2;
	}
.inset_img_left{
	margin-right: 20px;
	margin-bottom: 10px;
 	width: 180px;
 	height: 180px;
 	background-size: cover;
 	display: block;
 	border-radius: 100px;
	 -webkit-border-radius: 100px;
	 -moz-border-radius: 100px;
	border-style: solid;
    border-color:#FFF;
    border-weight: 7px;
	float: left;
	clear: none;
}
/* TEXT STYLES */
h1 {
	font-size: 3.8em;
	line-height: 112%;
	margin-bottom: 0.3em;
	font-weight: 200;
}
/*CONTACT FORM*/
.form-container {
	max-width: 50%;
	margin-left: 25%;
	margin-right: 25%;
}
}

@media only screen and (min-width: 768px) {
	/* Hide Show Styles */
	.mobile_hide {
		display: inherit;
	}
	.mobile_show {
		display: none;
	}
	.masonry {
		-moz-column-count: 2;
		-webkit-column-count: 2;
		column-count: 2;
	}
	.home_teaser_block {
		min-height: 420px;
		}

	.content_container_2-3 {
		border-right: #CCC double 3px;
	}
	.sidebar_block {
		display: inline-table;
		margin-bottom: 30px;
		width: 100%;
		border-top: none;
		padding-top: 0;
	}
	.tech_inset_block {
		float: left;
		margin-right: 30px;
		width: 50%;
		display: block;
	}
	.nested_columns_left {
		padding-right: 40px;
	}

	/*MASONRY GRID STYLES*/
	.continue_link a {
			display: block;
			text-align: right;
			padding-right: 25px;
			background-image: url(/images/link_off.png);
			background-repeat: no-repeat;
			background-position: right;
			border: none;
	}
	.continue_link a:hover {
			background-image: url(/images/link_on.png);
	}

	/*FOOTER STYLES*/
	.footer_block {
		padding-left: 10%;
		border-left-color:#FFF;
		border-left-style: solid;
		border-left-width: 1px;
		min-height: 150px;
	}
}

@media only screen and (min-width: 900px) {
	.masonry {
		-moz-column-count: 3;
		-webkit-column-count: 3;
		column-count: 3;
	}
}

@media only screen and (min-width: 1100px) {
	.home_teaser_block {
		min-height: 400px;
	}

}

@media only screen and (min-width: 1280px) {

}