@CHARSET "ISO-8859-1";

html {
	font-family: "Segoe UI", Verdana, Geneva, Arial, Sans !important;
}

body {
	min-width: 1500px;	
}

a {
	text-decoration: none;
}

p {
	font-size: 21px;	
}

.main_content {
	position: relative;
	padding-top: 150px;
}

.main_content_slim {
	position: relative;
	padding-top: 50px;
}

#outer {
	
}

.logo {
	display: inline-block;
	width: 60%;
}

.logo_small {
	display: inline-block;
	width: 300px;
	float: left;	
}

.top_menu {
	/*float: right;*/
	/*margin: 30px 20px 10px 20px;*/
}

.top_menu_small {
	float: right;
	margin: 0px 0px 10px 10px;
}

.masthead {
	min-width: 1200px;
	background-color: #FFFFFF;
	border-bottom: 1px solid black;
	width: 100%;
	display: block;
	overflow: hidden;
	position: fixed;
	z-index: 1000;
	min-height: 500px;
	height: 500px;
	margin: 0px;
}

.masthead_small {
	min-width: 1040px;
	background-color: #FFFFFF;
	border-bottom: 1px solid black;
	width: 100%;
	display: block;
	overflow: hidden;
	position: fixed;
	z-index: 1000;
	min-height: 60px;
	height: 60px;
	margin: 0px;
	text-align: center;
}

.masthead_home_small {
	/*min-width: 1300px !important;*/	
}

/* Transitions */
#masthead,
nav,
a,
img,
li {
	transition: .7s all;
	-moz-transition: .7s all;
	-webkit-transition: .7s all;
	-o-transition: .7s all;
}

/* Header ----------------------------------------------------------------------- */
.header_text {
	background-color: black;
	color: rgba(255, 255, 255, 0.6);
	font-size: 18px;
	height: 25px;
	padding: 5px;
	padding-left: 60px;
}

.header_right_text {
	float: right;
	margin-right: 60px;
}

.header_right_text:before {
	content: url("/images/phone_white_16.png");
	margin-right: 10px;
	filter: alpha(opacity = 60);
	-moz-opacity: 0.6;
	-khtml-opacity: 0.6;
	opacity: 0.6;
}

.header_logo_image {
	vertical-align: top;
	width: 100%;
	max-width: 1000px;
}

.header_logo_image_small {
	width: auto;
	margin-left: 20px;
	margin-top: 5px;
	max-width: 300px;
}

.header_image {
	/*background-image: url('/images/native_art_small.jpg');*/
	background-image: url('/images/aquaponics_beet.jpg');
	background-size: cover;
	background-position: center;
	background-origin: padding-box;
	background-repeat: no-repeat;
	height: 500px;
	width: 40%;
    float: right;	
}

.header_middle {
	/*width: 31%;*/
    text-align: center;
}

.header_middle_slim {
	/*width: 31%;*/
    text-align: center;
}

.header_news_icon_container {
	position: absolute;
	top: 370px;
    left: 20px;
    height: 130px;
    width: 130px;
    text-align: center;
}

.header_news_icon_container:hover {
	cursor: pointer;	
}

.header_news_icon_container_slim {
	/*position: absolute;
	top: 3px;
    right: 670px;*/
    height: 50px;
    width: 50px;
    text-align: center;
}

.header_news_icon {
	max-width: 100px;	
}

.header_news_icon_large {
	max-width: 120px;	
}

.header_news_icon_slim {
	max-width: 50px;
	margin-right: 20px;
    margin-top: 5px;
}

.header_homepage_news_icon_slim {
	max-width: 50px;
	margin-right: 5px;
    margin-top: 5px;	
}

.header_news_icon_slim_large {
	max-width: 55px;	
}

.header_content {
	display: none;
	font-size: 22px;
	margin-top: 15px;
}

.select-menu {
	display: none;
}

.header_contact_image:before {
	content: url("/images/email_16.png");
	margin-right: 10px;
	filter: alpha(opacity = 60);
	-moz-opacity: 0.6;
	-khtml-opacity: 0.6;
	opacity: 0.6;
}

#header_contact_link:before {
	background: white !important;
	height:0px !important;
}

.header_mobile_menu_container {
	display: none;	    
    position: absolute;
    top: 75px;
    z-index: 9999;
    width: 100%;	
}

.header_mobile_menu_container div {
	color: #fff;
	height: 30px;
    /*width: 100%;*/
    /*text-align: center;*/
    padding-left: 40%;
    background-color: rgba(8, 86, 152, 0.70); /*lighter: rgba(29, 131, 179, 0.70);*/ 
    border: 1px solid rgba(3, 53, 94, 0.70);	
}

.header_mobile_menu_container div:hover { 
	color: #000;
	background-color: rgba(255, 255, 255, 0.95);
}

.header_mobile_menu_link {
	cursor: pointer;
	display: none;
}

.header_mobile_menu {
	max-width: 32px;
	float: right;
	margin-right: 20px;
}
/* ------------------------------------------------------------------------------ */

/* Footer ----------------------------------------------------------------------- */
.footer {
	margin-bottom: 40px;
}

.footer_text {
	text-align: left;
	margin-left: 300px;	
	/*width: 15%;*/
	display: flex;
	flex: 1;
}

.footer_text h3 {
	font-size: 20px;
	font-weight: 400;	
}

.footer_text span {
	font-size: 14px;
	font-weight: 400;
}

.footer_logo {
	text-align: right;
	margin-right: 200px;
    flex: 1;
}

.footer_email_text:before {
	content: url("/images/email_16.png");
	margin-right: 10px;
	filter: alpha(opacity = 60);
	-moz-opacity: 0.6;
	-khtml-opacity: 0.6;
	opacity: 0.6;
}

.footer_phone_text:before {
	content: url("/images/phone_16.png");
	margin-right: 10px;
	filter: alpha(opacity = 60);
	-moz-opacity: 0.6;
	-khtml-opacity: 0.6;
	opacity: 0.6;
}

.footer_middle {
}

.footer_copy {
	font-size: 14px;
}

.footer_link {
	color: rgb(122, 122, 122);	
}

.footer_link:hover {
	color: #000000;
}

#footer_logo img {
	/*max-width: 200px;*/
}

.footer_left_spacer {
	margin-left: 40px;
}
/* ------------------------------------------------------------------------------ */

/* --- Webscapers Footer -------------------------------------------------------- */
.webscapers_footer {
	position: relative;
	background-color: #000;
	height: 50px;
	color: #fff;
    text-shadow: 0px 2px 3px #f8f8ff;
    text-align: center;
}

.webscapers_footer_right {
	padding-top: 5px;
}
.webscapers_footer_right img {
	max-height: 40px;	
}

.webscapers_footer_text {
	display: inline-block;
}
/* ------------------------------------------------------------------------------ */

/* Home Page (Index) ------------------------------------------------------------ */
.home_banner img {
	max-width: 1280px;
}

.home_banner {
	/*position: absolute;
	top: 285px;
	left: 0; 
	right : 0;
	background-color: rgba(0, 0, 0, 0.40);*/
	display: none;
	background-color: rgba(8, 86, 152, 0.70); /*#000;*/
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
	
	
	height: 260px;
	width: 75%;
	margin-left: auto;
	margin-right: auto;
}

.home_banner_text {
	font-size: 24px;
	color: #FFFFFF;
	/*text-align: center;*/
	padding: 35px 40px 20px 40px;
	text-shadow: 0px 1px 3px rgba(0, 0, 0, 0.3);
}

.home_banner_author {
	text-align: right;	
}

.home_banner .home_banner_text h1 {
	border-bottom: 1px solid #FFFFFF;
	margin-bottom: 0px;
	font-weight: 400;
}

.home_banner .home_banner_text h3 {
	margin-top: 5px;
	font-size: 36px;
	font-weight: 400;
}

.home_banner_buttons {
	padding-top: 20px;
}

.home_banner_image {
	text-align: center;
	background-image:
		url('/images/backgrounds/aquaponics_setup_1600.jpg');
	background-size: cover;
	background-position: 0px -100px;
	background-origin: padding-box;
	background-repeat: no-repeat;
	height: 600px;
	width: 100%;
}

.home_banner_image_adj {
	text-align: center;
	background-image:
		url('/images/backgrounds/aquaponics_setup_1600.jpg');
	background-size: cover;
	background-position: 0px -70px;
	background-origin: padding-box;
	background-repeat: no-repeat;
	height: 900px;
	width: 100%;
}

.home_tile_main {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	width: 80%;
	margin-top: -115px;
}

.home_tile_main_adj {
    position: absolute;
    left: 0;
    right: 0;
    top: 565px;
    margin-left: auto;
	margin-right: auto;
	text-align: center;
	width: 80%;
}

.home_tile {
	width: 20%;
	display: inline-block;
	cursor: pointer;
}

.home_tile_inner {
	width: 95%;
	padding: 40px 0px 10px 0px;
	height: 150px;
	border-radius: 20px;
}

.home_tile_inner_text {
	margin-top: 20px;
	color: #FFFFFF;
}

.home_tile_inner_text h2 {
	font-size: 22px;
}

.home_tile1 {
	background-color: rgba(64, 166, 180, 0.70); /*#eff9fa*/
}

.home_tile2 {	
	background-color: rgba(29, 131, 179, 0.70); /*#1d83b3*/
}

.home_tile3 {
	background-color: rgba(8, 86, 152, 0.70); /*#085698*/
}

.home_tile4 {
	background-color: rgba(3, 53, 94, 0.70); /*#03355e*/
}

.home_tile1:hover, .home_tile2:hover, .home_tile3:hover, .home_tile4:hover
	{
	box-shadow: 0px 5px 8px rgba(0, 0, 0, 0.05) inset, 0px 0px 25px
		rgba(210, 249, 132, 0.6); /*rgba(255, 252, 178, 0.6);*/
}

.home_big_button {
	padding-top: 8px !important;
	padding-bottom: 8px !important;
	margin: 0px 20px 0px 20px;
}


.home_aquacycle_content {
    font-size: 22px;
}

.home_aquacycle_image { 
	vertical-align: top;	
}

.home_aquacycle_image img {
	max-width: 500px;
}

.home_wwb_container {
	margin-top: 0px !important;
	margin-bottom: 40px;
}

/*
.home_wwb_left_content_container, .home_wwb_right_content_container {
	display: inline-block;
}


.home_wwb_left_content_container {
	width: 60%;	
}

.home_wwb_right_content_container {
	width: 40%;
}
*/

.home_wwb_left_content_container img {
	max-width: 600px;
	margin: 30px 0px 0px 50px;
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
}

.home_wwb_right_content {
	padding-left: 40px;
}

.home_wwb_products_button_container {
	margin-top: 40px;
}

.home_wwd_container {
	margin-bottom: 40px;
}

.home_wwd_education_container {
	position: relative;
	background-image: url('/images/education/education_inschool_4_banner_med.jpg'); /*url('/images/education/school_teaching_1600.jpg');*/
	background-size: cover;
	background-position: 0px -20px;
	background-origin: padding-box;
	background-repeat: no-repeat;
	height: 370px;
	width: 100%;
	margin: 30px 0px 0px 20px;
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
}

.home_wwd_education_content {
	/*position: absolute;
	right: 60px;
	top: 30px;*/
	width:600px;
	background-color: rgba(8, 86, 152, 0.70); /*rgba(0,0,0,1);*/	
	color: #fff;
	padding: 20px;
	margin-left: 30px;
	border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    /*display: none;*/
}

.home_wwd_consulting_container {
	position: relative;
	background-image:
		url('/images/consulting/consulting_370.jpg');
	background-size: cover;
	background-position: 0px 0px;
	background-origin: padding-box;
	background-repeat: no-repeat;
	height: 370px;
	width: 100%;
	margin: 30px 0px 0px 20px;
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
}

.home_wwd_consulting_content {
	/*position: absolute;
	right: 60px;
	top: 30px;*/
	width:600px;
	background-color: rgba(8, 86, 152, 0.70); /*rgba(0,0,0,0.6);*/
	color: #fff;
	padding: 20px;
	border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.home_wwd_design_container {
	position: relative;
	background-image: url('/images/design/design_banner_370.jpg'); /*url('/images/design/CCSGH_East_Section_500.jpg');*/		
	background-size: cover;
	background-position: 0px 0px;
	background-origin: padding-box;
	background-repeat: no-repeat;
	height: 370px;
	width: 100%;
	margin: 30px 0px 0px 20px;
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
}

.home_wwd_design_content {
	/*position: absolute;
	right: 60px;
	top: 30px;*/
	width:600px;
	background-color: rgba(8, 86, 152, 0.70); /*rgba(0,0,0,0.6);*/
	color: #fff;
	padding: 20px;
	border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

.home_wwd_build_container {
	position: relative;
	background-image: url('/images/builds/build_banner_370.jpg'); /*url('/images/builds/aquaponics_build_1600.jpg');*/
	background-size: cover;
	background-position: 0px 0px;
	background-origin: padding-box;
	background-repeat: no-repeat;
	height: 370px;
	width: 100%;
	margin: 30px 0px 0px 20px;
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
}

.home_wwd_build_content {
	/*position: absolute;
	right: 60px;
	top: 30px;*/
	width:600px;
	background-color: rgba(8, 86, 152, 0.70); /*rgba(0,0,0,0.6);*/
	color: #fff;
	padding: 20px;
	border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
}

/*
.home_benefits_content, .home_benefits_image {
	display: inline-block;
}

.home_benefits_content {
	width: 60%;	
} 
*/

.home_benefits_content ul li { 
	padding-bottom: 10px;
}
/*
.home_benefits_image {
	width: 40%;
	vertical-align: top;
}
*/
.home_benefits_image img { 
	margin: 30px 0px 0px 50px;
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
}

.home_handmade_canada {
	margin-top: 40px;	
}

.home_handmade_canada img {
	max-width: 150px;	
}
/* ----------------------------------------------------------------------------------------------- */

/* --- Products ---------------------------------------------------------------------------------- */
.products_image img {
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
}

.products_image, .products_content {
	flex: 1;
}

.product_image_subtext {
	color: #3E3D3D;
	width: 400px;
    margin-top: 10px;	
}

.products_price_text {
	font-weight: bold;
}

.products_price_subtext {
	color: #3E3D3D;
}

.products_image_subtext {
	color: #3E3D3D;
	margin-top: 5px;
	width: 400px;
}

.product_fullspan_image {
	margin-bottom: 40px;
	margin-top: 40px;
}

.product_fullspan_image img {
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
}

.products_psg_images {
	margin-right: 40px;
}

.products_psg_images img {
	margin-bottom: 20px;
}

.products_price_subtext {
	margin-bottom: 40px;
}

.products_break {
	display: none;	
}

.product_contact_button_container {
	margin-left: -280px;	
}

.products_handmade_canada {	
}

.products_handmade_canada img {
	max-width: 100px;	
}

.image_slider {
	position: relative; 
	top: 0px; 
	left: 0px; 
	width: 100%; 
	height: 500px;
}

.image_slides {
	cursor: arrow; 
	position: absolute; 
	overflow: hidden; 
	left: 0px; 
	top: 0px; 
	width: 100%; 
	height: 500px;
}

.slider_left_arrow {
	top: 50%;
	left: 10px !important;
}

.slider_right_arrow {
	top: 50%;
	right: 10px !important;
}
/* ----------------------------------------------------------------------------------------------- */

/* --- Services ---------------------------------------------------------------------------------- */
.services_image img {
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
    margin-bottom: 40px;
}

.services_image, .services_content {
	flex: 1;
}

.services_education_subcontent {
	margin-top: -40px;
	margin-bottom: 60px;	
}

.services_content a, .services_education_subcontent a {
	text-decoration: underline;
	color: #2fafd6;
}

.services_education_subcontent a:hover {
	color: #000;
}

.services_image_subtext {
	color: #3E3D3D;
	width: 400px;
    margin-top: 10px;
    margin-bottom: 40px;
}

.flex_align_top {
	align-items: flex-start !important;
}
/* ----------------------------------------------------------------------------------------------- */

/* -- Products ----------------------------------------------------------------------------------- */
#products_cadence_lease_button {
	margin-left: 20px;
}

.slides_container_adj {
	margin-bottom: 0px !important;	
}

.products_slides_subtext {
	margin-bottom: 60px;
}
/* ----------------------------------------------------------------------------------------------- */

/* -- Testimonials ------------------------------------------------------------------------------- */
.testimonials_title {
	margin-bottom: 80px !important;	
}

.testimonials_quote {
	margin-bottom: 20px;
	margin-top: 60px;
	font-size: 24px;
	position: relative;
	text-shadow: 0 1px white;
    z-index: 600;
}

.testimonials_contributor {
	font-size: 14px;
	border-left-color: #2fafd6;
    border-left-style: solid;
    border-left-width: 5px;
    padding-left: 10px;		
}

.testimonials_contributor_video {
	font-size: 14px;
    padding-left: 10px;		
}

.testimonials_contributor_video_details {
	border-left-color: #2fafd6;
    border-left-style: solid;
    border-left-width: 5px;
    padding-left: 5px;
    font-size: 14px;
}

.testimonials_contributor_name {
	font-weight: 500;	
}

.testimonials_quote_content:first-child:before {
	content: '\201C';
    color: #2fafd6;
    font-family: Georgia, serif;
    font-size: 7.5em;
    font-weight: 700;
    opacity: .3;
    position: absolute;
    top: -.4em;
    left: -.2em;    
    text-shadow: none;
    z-index: -300;
}

/* ----------------------------------------------------------------------------------------------- */

/* --- Network ----------------------------------------------------------------------------------- */
.network_item_container {
	margin: 40px 0px;
}

.network_item_container img:hover {
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
    border-radius: 10px;
}
/* ----------------------------------------------------------------------------------------------- */

/* --- Portfolio --------------------------------------------------------------------------------- */
.portfolio_title_container {
	margin-bottom: 100px;	
}

.portfolio_item_container {
	margin-bottom: 60px;
}

.portfolio_item_container img {
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
}

.portfolio_item_container a {
	color: #000;
}

.portfolio_image_subcontent {
	width: 400px;
	color: #3E3D3D;
	margin-top: 10px;
}

.portfolio_video_subcontent {
	width: 570px;
	color: #3E3D3D;
	margin-top: 10px;
}

.portfolio_subcontent {
	width: 600px;
	color: #3E3D3D;
	margin-top: 10px;
}
/* ----------------------------------------------------------------------------------------------- */

/* --- News -------------------------------------------------------------------------------------- */
.news_header {
	margin-bottom: 140px;
	margin-top: 20px;	
}

.news_hr {
	margin-top: 60px;
	margin-bottom: 40px;
}

.news_icon {
	max-width: 100px;
}

.news_video_under_container {
	width: 500px;
	margin: 0 auto;
	color: #2fafd6;
}

.news_video_under_container_left {
	text-align: left;
}

.news_video_under_container_right {
	text-align: right;
}

.news_video_under_container_left, .news_video_under_container_right {
	display: inline-block;
	width: 250px;
	vertical-align: top;
}

.news_break_mobile {
	display: none;
}

.news_item_text_content {
	width: 500px;
    margin: 10px auto;
    text-align: left;
}

.news_header img {
	margin-right: 20px;
}

.news_button_container {
	margin-top: 20px;
}

.news_image_container {
	margin-top: 40px;
}

.news_image_container img {
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
    margin-bottom: 40px;
}

.news_image_subcontent {
	width: 600px;
	color: #3E3D3D;
	margin: 0 auto;
    text-align: left;
    margin-top: -30px;
}
/* ----------------------------------------------------------------------------------------------- */

/* About ----------------------------------------------------------------------------------------- */
.about_image img {
	-webkit-box-shadow: 0 0 10px #000;
    box-shadow: 0 0 10px #000;
    margin-bottom: 40px;
}

.about_image, .about_content {
	flex: 1;
}

.about_content a {
	text-decoration: underline;
	color: #2fafd6;
}

.about_image_subtext {
	color: #3E3D3D;
	width: 400px;
    margin-top: -20px;
    margin-bottom: 40px;
}

.about_personal_message_container h1 {
	font-size: 32px !important;
}

.about_personal_message_container p {
	font-family: marck script, cursive;
	font-size: 28px;
	color: #4A1B0B;
}
/* ----------------------------------------------------------------------------------------------- */

/* --- Contact ----------------------------------------------------------------------------------- */
.contact_location_info {
}

.contact_inner_div {
	width: 50%;
	display: inline-block;
}

.contact_inner_div h4 {
	font-weight: bold;
}

.contact_hours_inner_div {
	width: 65%;
	display: inline-block;
}

.contact_section_text {
	margin-left: 10px;
	font-size: 30px;
	font-weight: 400;
}

.contact_form_element_container {
	width: 45%;
	display: inline-block;
	padding: 10px 10px 0px 5px;
}

.contact_form_element_container_large {
	width: 93%;
	display: inline-block;
	padding: 10px 10px 0px 5px;
}

.contact_form_button_container {
	padding: 20px 10px 0px 5px;
}

.contact_email_indicator {
	display: none;
	margin-top: 20px;
}

.contact_email_response {
	display: none;
	text-align: center;
	width: 350px;
	margin-top: 20px;
}

.contact_email_text:before {
	content: url("/images/email_16.png");
	margin-right: 10px;
	filter: alpha(opacity = 60);
	-moz-opacity: 0.6;
	-khtml-opacity: 0.6;
	opacity: 0.6;
}

.contact_phone_text:before {
	content: url("/images/phone_16.png");
	margin-right: 10px;
	filter: alpha(opacity = 60);
	-moz-opacity: 0.6;
	-khtml-opacity: 0.6;
	opacity: 0.6;
}

#locationIframe {
	width: 100%;
	height: 200px;
	margin-top: 10px;
	margin-bottom: 30px;
	-moz-border-radius: 12px;
	-webkit-border-radius: 12px;
	border-radius: 12px;
	-moz-box-shadow: 4px 4px 14px #000;
	-webkit-box-shadow: 4px 4px 14px #000;
	box-shadow: 4px 4px 14px #000;
}

.google_map { 
	margin-top:80px;
	vertical-align: top;
}
/* ----------------------------------------------------------------------------------------------- */

/* BUTTONS ---------------------------------------------------------------------------- */
a.wire.button {
	cursor: pointer;
	position: relative;
	overflow: visible;
	font-family: "museo-sans-rounded", sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 24px;
	color: white;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
	text-decoration: none;
	border: 2px solid #FFFFFF;
	padding: 8px 20px 8px 20px;
}
a.wire.button:active {
	top: 2px;
}
a.wire.button:hover {
	background: #378b12; /* THEME COLOR */
	color: #fff;
}

a.wire_white_black.button {
	cursor: pointer;
	position: relative;
	overflow: visible;
	font-family: "museo-sans-rounded", sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 24px;
	color: white;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
	text-decoration: none;
	border: 2px solid #FFFFFF;
	padding: 8px 20px 8px 20px;
}
a.wire_white_black.button:active {
	top: 2px;
}
a.wire_white_black.button:hover {
	background: #000; /* THEME COLOR */
	color: #fff;
}

a.wire_blue.button {
	cursor: pointer;
	position: relative;
	overflow: visible;
	font-family: "museo-sans-rounded", sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 24px;
	color: white;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
	text-decoration: none;
	border: 2px solid #FFFFFF;
	padding: 8px 20px 8px 20px;
}
a.wire_blue.button:active {
	top: 2px;
}
a.wire_blue.button:hover {
	background: #03355e; /* THEME COLOR */
	color: #fff;
}

a.wire_black_blue.button {
	cursor: pointer;
	position: relative;
	overflow: visible;
	font-family: "museo-sans-rounded", sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 24px;
	color: #000;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
	text-decoration: none;
	border: 2px solid #000;
	padding: 8px 20px 8px 20px;
}
a.wire_black_blue.button:active {
	top: 2px;
}
a.wire_black_blue.button:hover {
	background: #03355e; /* THEME COLOR */
	color: #fff;
}

a.news.button {
	cursor: pointer;
	position: relative;
	overflow: visible;
	font-family: "museo-sans-rounded", sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 24px;
	color: #000000;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
	text-decoration: none;
	border: 2px solid #000000;
	padding: 8px 20px 8px 20px;
}
a.news.button:active {
	top: 2px;
}
a.news.button:hover {
	background: #378b12; /* THEME COLOR */
	color: #fff;
}

a.contact.button {
	cursor: pointer;
	position: relative;
	overflow: visible;
	font-family: "museo-sans-rounded", sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 24px;
	color: #000000;
	text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25);
	text-decoration: none;
	border: 2px solid #000000;
	padding: 8px 20px 8px 20px;
}
a.contact.button:active {
	top: 2px;
}
a.contact.button:hover {
	background: #378b12; /* THEME COLOR */
	color: #fff;
}
/* -------------------------------------------------------------------------------------------------------------------- */

/* --- Custom Dialog ----------------------------------------------------------------------------- */
.custom_dialog {
	display: none;	
}

.custom_dialog_response_text {
	margin-top: 20px;	
}
/* ----------------------------------------------------------------------------------------------- */

/* --- Slideout/Popup ---------------------------------------------------------------------------- */
#sidebar {
    position: fixed;
    top: 350px;
    left: -135px;
    width: 135px;
    height: 200px;
    padding: 12px 0;
    text-align: center;    
    background-color: rgba(8, 86, 152, 0.70); /* THEME COLOR */
    color: white;
    -webkit-transition-duration: 0.3s;
    -moz-transition-duration: 0.3s;
    transition-duration: 0.3s;
    -o-transition-duration: 0.3s;
    -webkit-border-radius: 0 5px 5px 0;
    -moz-border-radius: 0 5px 5px 0;
    border-radius: 0 5px 5px 0;
}

.sidebar_text {
	text-align: left;
	margin-left: 10px;
	margin-bottom: 5px;
}

.sidebar_close_container {
	height: 16px;
	display: inline;	
}

.sidebar_close {
	float: right;
    margin-right: 5px;
    cursor: pointer;
}

.sidebar_subtext {	
	color: #ffffff;
	font-size: 10px;
    margin-top: 5px;
}

#slide_out_link img {
	max-width: 100px;
}
/* ----------------------------------------------------------------------------------------------- */

/* --- Back to Top ------------------------------------------------------- */
#back_top { display: none; }
#back_top_wrapper {
	position: fixed;
	right: 10px;
	bottom: 10px;
	overflow: hidden;
	z-index: 99;
}
#back_top a {
	display: block;
	width: 50px;
	color: #bbb;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	font: 11px/100% Arial, Helvetica, sans-serif;
	-webkit-transition: 1s;
	-moz-transition: 1s;
	-o-transition: 1s;
	transition: 1s;
}
#back_top a:hover { color: #000; }
#back_top a:hover span { background-color: #333; }
#back_top span {
	display: block;
	margin-bottom: 7px;
	width: 50px;
	height: 50px;
	background: #085698 url('/images/up-arrow.png') no-repeat center center; /* THEME COLOR */
	-webkit-transition: 1s;
	-moz-transition: 1s;
	-o-transition: 1s;
	transition: 1s;
}
#back_top_wrapper a span {
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	background-color: #085698; /* THEME COLOR */
}
#back_top_wrapper a:hover span { 
	background-color: #40a6b4; /* THEME COLOR */ 
}
/* -------------------------------------------------------------------------- */

/* --- Modal - Image Preview ------------------------------------------------ */
/* Style the Image Used to Trigger the Modal */
.slider_image {
    border-radius: 5px;
    cursor: pointer;
    transition: 0.3s;
    margin: 0px auto;
    /*opacity: 0.7;*/
}

.slider_image:hover {
	/*opacity: 1.0;*/
}

/* The Modal (background) */
.modal {
    display: none; /* Hidden by default */
    position: fixed; /* Stay in place */
    z-index: 150; /* Sit on top */
    padding-top: 100px; /* Location of the box */
    left: 0;
    top: 60px;
    width: 100%; /* Full width */
    height: 100%; /* Full height */
    overflow: auto; /* Enable scroll if needed */
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.9); /* Black w/ opacity */
}

/* Modal Content (Image) */
.modal-content {
    margin: auto;
    display: block;
    width: 80%;
    max-width: 700px;
}

/* Caption of Modal Image (Image Text) - Same Width as the Image */
#modal_caption {
    margin: auto;
    display: block;
    width: 80%;
    max-width: 700px;
    text-align: center;
    color: #ccc;
    padding: 10px 0;
    height: 150px;
}

/* Add Animation - Zoom in the Modal */
.modal-content, #modal_caption { 
    -webkit-animation-name: zoom;
    -webkit-animation-duration: 0.6s;
    animation-name: zoom;
    animation-duration: 0.6s;
}

@-webkit-keyframes zoom {
    from {-webkit-transform:scale(0)} 
    to {-webkit-transform:scale(1)}
}

@keyframes zoom {
    from {transform:scale(0)} 
    to {transform:scale(1)}
}

/* The Close Button */
.close {
    position: absolute;
    top: 15px;
    right: 35px;
    color: #f1f1f1;
    font-size: 40px;
    font-weight: bold;
    transition: 0.3s;
}

.close:hover,
.close:focus {
    color: #bbb;
    text-decoration: none;
    cursor: pointer;
}

/* 100% Image Width on Smaller Screens */
@media only screen and (max-width: 700px){
    .modal-content {
        width: 100%;
    }
}
/* ----------------------------------------------------------------------- */

/* ----------------------------------------------------------------------------------------- */
/* Suppresses the arrow spinner controls in Chrome */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    /* display: none; <- Crashes Chrome on hover */
    -webkit-appearance: none;
    margin: 0; /* <-- Apparently some margin are still there even though it's hidden */
}

.page_section {
	margin: 0px auto;
	padding-top: 40px;
	padding-bottom: 40px;
	width: 65%;
	min-width: 1050px;
}

.page_section_slim {
	margin: 0px auto;
	padding-top: 20px;
	padding-bottom: 10px;
	width: 65%;
	min-width: 1050px;
}

.page_inner_section {
	margin: 40px auto 0px auto;
	width: 90%;	
}

.page_section h1, .page_section_slim h1 {
	color: #2fafd6; /* [THEME COLOR] */
	font-size: 38px;
	font-weight: 700;
	line-height: 30px;
	letter-spacing: 2px;
	margin-bottom: 9px;
}

.page_section h4 {
	font-size: 20px;
	font-weight: 600;
	line-height: 24px;
	letter-spacing: 2px;
	margin-bottom: 9px;
}

.page_section h5 {
	font-size: 18px;
	font-weight: 400;
	line-height: 22px;
	letter-spacing: 2px;
	margin: 5px 0px 5px 0px;
}

.section_flex {
	display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: row;
    margin-bottom: 60px;
    margin-top: 20px;
}

.section_flex_noalign {
	display: flex;
    justify-content: center;
    flex-flow: row;
    margin-bottom: 60px;
    margin-top: 20px;
    
    min-height: 0;
    min-width: 0;
}

.section_flex_column {
	display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column;
    margin-bottom: 60px;
    margin-top: 20px;
    
    min-height: 0;
    min-width: 0;
}

.section_item_flex {
	flex-shrink: 1;
	flex-grow: 1;
	/*flex-basis: 0%;*/
}

.section_item_flex_basis_0 {
	flex-shrink: 1;
	flex-grow: 1;
	flex-basis: 0%;
}

.section_item_flex_IE {
	flex-shrink: 1;
	flex-grow: 1;
}

.background_dark {
	background-color: #378b12;	
}

.background_light {
	background-color: #68b625;
}

.background_white {
	background-color: #ffffff;
}

.full_div {
	width: 100%;
}

.video_frame_mobile {
	width: 500px;
    height: 280px;		
}

.tile_image {
	text-shadow: 0 0 0.2em #000, 0 0 0.2em #000, 0 0 0.2em #000;
}

.tile_anchor {
	display: block;
	position: relative;
	width: 0;
	top: -130px;
	visibility: hidden;
}

.section_text {
	margin-left: 10px;
	font-size: 30px;
	font-weight: 400;
}

.subtext {
	text-decoration: italic;
	font-size: 14px;
	color: #3E3D3D;	
}

.bold_text {
	font-weight: bold;	
}

.normal_text {
	font-weight: normal;
}

.blue_text {
	color: #2fafd6; /*#4A89FF;*/
}

.white_text {
	color: #FFFFFF;
}

.font_italic {
	font-style: italic;
}

.blue_background {
	background-color: #1871b5;
}

.black_background {
	background-color: #000000;
}

.padding_bottom_20 {
	padding-bottom: 18px;
}

.padding_right_40 {
	padding-right: 40px;
}

.padding_left_20 {
	padding-left: 20px;
}

.margin_top_10 {
	margin-top: 10px;
}

.margin_top_20 {
	margin-top: 20px;
}

.margin_left_65 {
	margin-left: 65px;
}

.margin_bottom_20 {
	margin-bottom: 20px;
}

.no_margin {
	margin: 0px;
}

.no_top_margin {
	margin-top: 0px !important;	
}

.no_bottom_margin_padding {
	margin-bottom: 0px;
	padding-bottom: 0px;	
}

.no_top_margin_padding {
	margin-top: 0px;
	padding-top: 0px;	
}

.minus_bottom_margin {
	margin-bottom: -15px;
}

.minus_bottom_margin_20 {
	margin-bottom: -20px;
}

.align_center {
	text-align: center;
}

.align_left {
	text-align: left;
}

.float_right {
	float: right;
}

.relative_position {
	position: relative;
}

.white_link {
	color: #FFFFFF;
}

.white_link:hover {
	color: #30A8CC; /*#005b9a;*/ /*#4A89FF;*/ /*#1871b5;*/
}

.white_hover_text:hover {
	color: #ffffff;
}

.position_relative {
	position: relative;
}

.section_break {
	margin-top: 40px;
}

.span_h1 {
	color: #2fafd6; /* [THEME COLOR] */
	font-size: 38px;
	font-weight: 700;
	line-height: 30px;
	letter-spacing: 2px;
	margin-bottom: 9px;
}

.form_input {
	width: 95%;
	height: 40px !important;
	font-size: 18px !important;
	padding: 0px 0px 0px 10px;
	margin-bottom: 10px;
	border: 1px solid #CCCCCC !important;
}

.form_text_area {
	font-size: 18px !important;
	overflow:auto;
	margin:0;
	padding:6px 6px 7px 6px;
	width:100%;
	height:200px;
	line-height:15px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	resize:none;
	overflow:auto;
	border: 1px solid #CCCCCC !important;
}

.form_text_area_small {
	font-size: 18px !important;
	overflow:auto;
	margin:0;
	padding:6px 6px 7px 6px;
	width:100%;
	height:75px;
	line-height:15px;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	resize:none;
	overflow:auto;
	border: 1px solid #CCCCCC !important;
}

.form_button {
	padding-top: 8px !important;
	padding-bottom: 8px !important;
}

.form_submit {
	display: none !important;
}

.inline {
	display: inline-block;
	vertical-align: middle;
}

.horizontal_bar {
	border-bottom: solid 1px #000000;
	width: 65%;
	margin-right:auto;
    margin-left:auto;
    margin-top: 20px;
    margin-bottom: 20px;
}

.iframe_video_frame {
	width: 560px;
	height: 315px;
}

.display_none {
	display: none;
}

.display_flex {
	display: inline-flex;
}

.flex_container {
	display: flex;
    align-items: inherit;
    justify-content: center;
    flex-flow: row;
    
    min-height: 0;
    min-width: 0
}

.flex_container_justify_space {
	display: flex;
    align-items: inherit;
    justify-content: space-between;
    flex-flow: row;
}

.flex_sub_container {
	flex: 0 1 auto;
}

.flex_align_center {
	align-items: center !important;	
}

/* Used in Safari Fix ------------ */
.display_inline_block {
	display: inline-block;
	vertical-align: top;
}
/* ------------------------------- */

.fade_down_initial {
	opacity: 0;
  -moz-transition: all 1000ms ease-out;
  -webkit-transition: all 1000ms ease-out;
  -o-transition: all 1000ms ease-out;
  transition: all 1000ms ease-out;
  -moz-transform: translate3d(0px, -200px, 0px);
  -webkit-transform: translate3d(0px, -200px, 0px);
  -o-transform: translate(0px, -200px);
  -ms-transform: translate(0px, -200px);
  transform: translate3d(0px, -200, 0px);
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  backface-visibility: hidden;
}

.fade_down_initial.fade_down {
	opacity: 1;
	-moz-transform: translate3d(0px, 0px, 0px);
	-webkit-transform: translate3d(0px, 0px, 0px);
	-o-transform: translate(0px, 0px);
	-ms-transform: translate(0px, 0px);
	transform: translate3d(0px, 0px, 0px);
}