/* --------------------------------------------------
	
	Project Name: Fusion Industries - Back40 Design Group
	Developer: Justin Green
	Date: April 21st, 2014
	
-------------------------------------------------- */
@font-face {
    font-family: 'nerislight';
    src: url('../fonts/Neris-Light-webfont.eot');
    src: url('../fonts/Neris-Light-webfont.eot%3F') format('embedded-opentype'),
         url('../fonts/Neris-Light-webfont.woff') format('woff'),
         url('../fonts/Neris-Light-webfont.ttf') format('truetype'),
         url('../fonts/Neris-Light-webfont.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'nerissemibold';
    src: url('../fonts/Neris-SemiBold-webfont.eot');
    src: url('../fonts/Neris-SemiBold-webfont.eot%3F') format('embedded-opentype'),
         url('../fonts/Neris-SemiBold-webfont.woff') format('woff'),
         url('../fonts/Neris-SemiBold-webfont.ttf') format('truetype'),
         url('../fonts/Neris-SemiBold-webfont.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'nexa_lightregular';
    src: url('../fonts/Nexa_Free_Light-webfont.eot');
    src: url('../fonts/Nexa_Free_Light-webfont.eot%3F') format('embedded-opentype'),
         url('../fonts/Nexa_Free_Light-webfont.woff') format('woff'),
         url('../fonts/Nexa_Free_Light-webfont.ttf') format('truetype'),
         url('../fonts/Nexa_Free_Light-webfont.svg') format('svg');
    font-weight: normal;
    font-style: normal;
}
/*
####################################################################################################
	SCAFFOLDING
####################################################################################################
*/

html {
	background: #fff;
}
body {
	background: #fff;
	color: #007294;
	font: 18px/1.75 'nexa_lightregular', Helvetica, sans-serif;
	-webkit-font-smoothing: antialiased;
}

/* Body Classes */
.index-page {
	background: url(../images/bg-body-2.jpg) center bottom no-repeat;
	background-size: cover;
	filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/sites/fusion/templates/default/images/bg-body-2.jpg', sizingMethod='scale');
}
.inside-page {
	background: #fff;
}

a,
a:visited {
	color: #42c4eb;
	text-decoration: none;
}
a:hover {
	color: #36a5ff;
}
h1 {
	margin-bottom: 35px;
	font: 24px/1.125 'nerissemibold', Helvetica, sans-serif;
	text-transform: uppercase;
}
h2,
legend {
	margin-bottom: 16px;
	font: 20px/1.125 'nerissemibold', Helvetica, sans-serif;
	text-transform: uppercase;
}
h3 {
	margin-bottom: 8px;
	font: 18px/1.125 'nerissemibold', Helvetica, sans-serif;
}
h4,
h5,
h6 {
	font: 14px/1.125 'nerissemibold', Helvetica, sans-serif;
}
p, pre, hr, ul, ol, dl, table, fieldset {
	margin-bottom: 28px;
}
hr {
	border-color: #ccc;
}












/*
####################################################################################################
	HELPERS
####################################################################################################
*/

.wrapper {padding: 0 20px;}
.wrapper.alpha {padding-left: 0;}
.wrapper.omega {padding-right: 0;}
.text-center {text-align: center;}
.column-wrapper {
	min-height: 1px;
	position: relative;
}



/* Buttons */
.btn,
.btn:visited {
	padding: 10px 20px;
	background: rgb(76,202,239); /* Old browsers */
	background: -moz-linear-gradient(top, rgba(76,202,239,1) 0%, rgba(2,124,160,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(76,202,239,1)), color-stop(100%,rgba(2,124,160,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, rgba(76,202,239,1) 0%,rgba(2,124,160,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, rgba(76,202,239,1) 0%,rgba(2,124,160,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top, rgba(76,202,239,1) 0%,rgba(2,124,160,1) 100%); /* IE10+ */
	background: linear-gradient(to bottom, rgba(76,202,239,1) 0%,rgba(2,124,160,1) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4ccaef', endColorstr='#027ca0',GradientType=0 ); /* IE6-9 */
	border-radius: 20px;
	color: #fff;
	font: 16px/1 'nerislight', Helvetica, sans-serif;
	text-align: center;
	display: inline-block;
	text-transform: uppercase;
}
.btn:hover {
	background: rgb(119,224,254); /* Old browsers */
	background: -moz-linear-gradient(top, rgba(119,224,254,1) 0%, rgba(2,161,209,1) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(119,224,254,1)), color-stop(100%,rgba(2,161,209,1))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, rgba(119,224,254,1) 0%,rgba(2,161,209,1) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, rgba(119,224,254,1) 0%,rgba(2,161,209,1) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top, rgba(119,224,254,1) 0%,rgba(2,161,209,1) 100%); /* IE10+ */
	background: linear-gradient(to bottom, rgba(119,224,254,1) 0%,rgba(2,161,209,1) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#77e0fe', endColorstr='#02a1d1',GradientType=0 ); /* IE6-9 */
	color: #fff;
}



/* Icons */
.icon {
	width: 30px;
	height: 30px;
	background-image: url(../images/sprite-social.png);
	background-repeat: no-repeat;
	text-indent: -9999px;
	display: inline-block;
	vertical-align: middle;
}
.icon-facebook	{background-position: 0 0; margin-right: 5px;}
.icon-facebook:hover {background-position: 0 -36px;}

.icon-twitter	{background-position: -40px 0;}
.icon-twitter:hover {background-position: -40px -36px;}



/* Vertical Rule (centered by default) */
.hr-vertical {
	width: 1px;
	height: auto;
	margin: 0;
	border: 0;
	background: #ccc;
	position: absolute;
	top: 0;
	left: 50%;
	bottom: 0;
}



/* Logo */
.logo {
	background: url(../images/logo.png) 0 0 no-repeat;
	text-indent: -9999px;
	display: block;
}
.logo-default {
	width: 220px;
	height: 140px;
	background-position: center center;
}



/* Blocks */
.content-block {
	margin-bottom: 40px;
	clear: both;
	position: relative;
}












/*
####################################################################################################
	LAYOUT
####################################################################################################
*/

/* Header
-------------------------------------------------- */
.page-header {
	height: 140px;
	position: relative;
	z-index: 2 !important;
	background: #f6f6f6;
}
	
	
	
	/* Main Header Logo */
	.page-logo {
		margin: 0;
		float: left;
	}
	
	
	
	
	/* Navigation */
	.page-nav {
		clear: both;
		position: absolute;
		top: 50px;
		right: 0;
	}
	.page-nav ul {
		margin: 0;
	}
	.page-nav li {
		padding: 0;
		list-style: none;
		position: relative;
	}
	.page-nav a {
		display: block;
	}
	
	/* First Level Navigation */
	#nav {
		position: relative;
	}
	#nav > li {
		float: left;
		height: 50px;
	}
	#nav > li > a {
		padding: 0 12px;
		line-height: 50px;
		position: relative;
		z-index: 2 !important;
		text-transform: uppercase;
		color: #007294;
		font-size: 16px;
		font-family: 'nerislight';
	}
	#nav > .javelin_active > a {
		
	}
	#nav > li:hover > a,
	#nav > li > a:hover {
		color: #42c4eb;
	}
	
		/* Drop Down/Second Level Navigation */
		#nav > li > ul {
			width: 250px;
			display: none;
			position: absolute;
			top: 50px;
			left: 0;
			z-index: 2 !important;
			background: #013c5b; /*IE8 :( */
			background: rgba(1, 60, 91, 0.8);
			-moz-box-sizing: border-box;
			-webkit-box-sizing: border-box;
			box-sizing: border-box;
			padding: 10px 0;
		}
		#nav > li:hover > ul {
			display: block;

		}
		#nav > li > ul > li a {
			padding: 8px 15px;
			line-height: 1.25;
			color: #fff;
			font-family: 'nexa_lightregular';
			font-size: 16px;
		}
		#nav > li > ul > li a:hover {
			color: #01344f;
			background: #33bce6;
			/*background: #023651; Add to active class? Ask Ryan */
		}
		
			/* Third Level Navigation */
			#nav > li > ul > li > ul a {
				padding-left: 20px;
			}
			
			#nav > li > ul > li > ul a:before {
				content: url(../images/bullet-default.png);
				margin-right: 4px;
				position: relative;
				top: -1px;
			}






/* Hero
-------------------------------------------------- */
.page-hero {
	height: 500px;
	position: relative;
	z-index: 1 !important;
}
	
	
	
	/* Home Page Slideshow */
	.hero-slideshow {
		position: relative;
	}




/* Page-title Image */
.page-title {
	height: 100px;
	background: url(../images/bg-page-title-2.jpg) center bottom no-repeat;
	background-size: cover;
	filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='/sites/fusion/templates/default/images/bg-page-title-2.jpg', sizingMethod='scale');
}

/* Content
-------------------------------------------------- */
.page-content {
	padding: 40px 0;
	position: relative;
	z-index: 1 !important;
	min-height: 400px;
}
.index-content {
	background-color: rgba(255, 255, 255, 0.7);
	padding: 30px;
}
.index-content .btn {
	position: relative;
	left: 210px;
}
/* Call to Action Buttons */
.cta-wrap {
	position: relative;
/* 	margin-bottom: 60px; */
	z-index: 2 !important;
}

.cta-inside-wrap {
	margin-bottom: 0;
}
	.cta {
		position: absolute;
		z-index: 1 !important;
	}
	.cta li {
		width: 150px;
		height: 60px;
		background: url(../images/bg-cta.jpg) center top repeat-x;
		float: left;
		margin-right: 10px;
		list-style: none;
		-moz-transition: height 0.2s;
		-webkit-transition: height 0.2s;
		transition: height 0.2s;
		font-family: 'nerislight';
		text-transform: uppercase;
		font-size: 13px;
		line-height: 20px;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding: 10px 40px;
		position: relative;
	}
	.cta li:hover {
		height: 80px;
	}
	
		 li.green {
		width: 150px;
		height: 60px;
		background: url(../images/bg-cta-2.png) center top repeat-x;
		float: left;
		margin-right: 10px;
		list-style: none;
		-moz-transition: height 0.2s;
		-webkit-transition: height 0.2s;
		transition: height 0.2s;
		font-family: 'nerislight';
		text-transform: uppercase;
		font-size: 13px;
		line-height: 20px;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		padding: 10px 40px;
		position: relative;
		}

	.cta li a {
		color: #fff;
		font-size: 11px;
	}
	
	
/* CTA Icons
----------------------	*/
	
	.cta-1 {
		position: absolute;
		bottom: 8px; /* Single Line : 18px */
		left: 50px;
	}
	.cta-1:before {
		content: url(../images/icon-1.png);
		position: absolute;
		left: -40px;
		top: 5px; /* Single Line : -5px */
	}
	
	.cta-2 {
		position: absolute;
		bottom: 8px;
		left: 50px;
	}
	.cta-2:before {
		content: url(../images/icon-6.png);
		position: absolute;
		left: -40px;
		top: 5px;
	}
	
	.cta-3 {
		position: absolute;
		bottom: 8px;
		left:50px;
	}
	.cta-3:before {
		content: url(../images/icon-5.png);
		position: absolute;
		left: -40px;
		top: 5px;
	}
	
	.cta-4 {
		position: absolute;
		bottom: 8px;
		left: 50px;
	}
	.cta-4:before {
		content: url(../images/icon-4.png);
		position: absolute;
		left: -40px;
		top: 5px;
	}
	
	.cta-5 {
		position: absolute;
		bottom: 8px;
		left: 50px;
	}
	.cta-5:before {
		content: url(../images/icon-3.png);
		position: absolute;
		left: -40px;
		top: 5px;
	}
	.cta-6	{
		position: absolute;
		bottom: 8px;
		left:50px;
	}
	.cta-6:before {
		content: url(../images/icon-7.png);
		position: absolute;
		left: -40px;
		top: 5px;
	}
	.cta-7	{
		position: absolute;
		bottom: 8px;
		left:50px;
	}
	.cta-7:before {
		content: url(../images/icon-9.png);
		position: absolute;
		left: -40px;
		top: 5px;
	}
	.cta-8	{
		position: absolute;
		bottom: 8px;
		left:50px;
	}
	.cta-8:before {
		content: url(../images/icon-8.png);
		position: absolute;
		left: -40px;
		top: 5px;
	}
	

	/* Sub Navigation */
	.subnav-wrap {
		border-right: 1px solid #d5d5d5;
	}
	#subnav {
		padding: 30px 0;
	}
	#subnav,
	#subnav ul {
		margin: 0;
	}
	#subnav li {
		padding: 0;
		list-style: none;
	}
	#subnav a,
	#subnav a:visited {
		padding: 8px 0;
		line-height: 1.25;
		display: block;
	}
	#subnav a:hover {
		
	}
	
	/* First Level Sub Navigation */
	#subnav > li > a {
		color: #0079a3;
	}
	#subnav > li > a:hover {
		color: #42c4eb;
	}
	#subnav > .javelin_lastItem { /* Pitfall-Add margin if necessary */
		margin-bottom: 0px;
	}
		
		/* Second Level Sub Navigation */
		#subnav > li > ul > li a {
			padding-left: 5px;
			color: #0079a3;
		}
		#subnav > li > ul > li a:hover {
		color: #42c4eb;
	}
		#subnav > li > ul > li a:before {
			margin-right: 4px;
			content: url(../images/bullet-default.png);
			position: relative;
			top: -1px;
		}






/* Footer
-------------------------------------------------- */
.page-footer {
	padding-bottom: 100px;
	padding-top: 50px;
	background: #0099c4 url(../images/bg-footer.png) center top repeat-x;
	font-size: 12px;
	position: relative;
	z-index: 1 !important;
	border-top: 10px solid #eaeaea;
	box-shadow: inset 0 8px 8px rgba(0,0,0,0.1);
	text-align: center;
}
	
	
	
	
	/*Address*/
	.address {
		color: #fff;
		font-size: 18px;
		font-family: 'nerislight'; 
	}
	
	/* Copyright */
	.copyright {
		color: #72e0ff;
		text-transform: uppercase;
		font-size: 14px;
		position: relative;
	}
	
	
	
	/* Credit */
	.credit a,
	.credit a:visited {
		color: #72e0ff;
		text-decoration: underline;
		text-transform: uppercase;
	}
	.credit a:hover {
		text-decoration: none;
	}


	/* Social */
	.social {
	width: 100px;
	position: absolute;
	top: 0;
	right: 30px;
	}








/*
####################################################################################################
	JAVELIN
####################################################################################################
*/

/* Lists */
.javelin_textItem ul li,
.javelin_rotatorItem ul li,
.javelin_calendarEventBody ul li,
.javelin_blogPostDescription ul li,
.javelin_faqQuestions li,
.javelin_faqItemAnswer ul li,
.javelin_links ul li,
.javelin_staffBody ul li {
	padding-left: 24px;
	background: url(../images/bullet-default.png) 6px 9px no-repeat;
	list-style: none;
}

/* Images */
.javelin_textItem img,
.javelin_rotatorItem img,
.javelin_galleryItem img,
.javelin_blogPostImage img,
.javelin_blogPostDescription img,
.javelin_linksItemDescription img,
.javelin_staffImage img,
.javelin_staffItemImage img,
.javelin_twitterHeader img,
.cms-products-item-image img {

}
	
	/* Remove image styling from unwanted elements */
	img.img-nostyle,
	.img-nostyle img {
		border: 0;
		border-radius: 0;
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
	}






/* Blog */
.javelin_blogFeedRss {
	display: none;
}
.javelin_blogPost {
	margin-bottom: 28px;
}
.javelin_blogPostTitle {
	margin-bottom: 4px;
}
.javelin_blogPostImage:empty,
.javelin_blogPostSummary:empty {
	display: none;
}
.javelin_blogPostByline, .javelin_blogPostDate {
	font-size: inherit;
	font-style: inherit;
}
.javelin_blogPostSummary a[title='Read More'] {
	text-align: right;
	display: block;
}
.javelin_blogCommentsLink {
	text-align: right;
	float: none;
}
.javelin_blogPostTags,
.javelin_blogBackLink {
	margin-bottom: 28px;
	padding: 0;
}
		
	/* Blog / Pagination */
	.javelin_blogPageLinks {
		padding-top: 28px;
		text-align: center;
	}
	.javelin_blogPageLinks b {
		width: 30px;
		height: 30px;
		text-align: center;
		display: inline-block;
		vertical-align: middle;
	}
	
	/* Blog / Comments */
	.javelin_blogComments:empty,
	.javelin_comments:empty {
		display: none;
	}
	.javelin_blogComments {
		padding-top: 28px;
		border-top: 1px solid #ccc;
	}
	.javelin_comments {
		border-top: 0;
	}
	.javelin_comments .javelin_moduleItem {
		margin: 0;
	}
	.javelin_commentsItem {
		margin: 0 0 28px 0 !important;
		padding: 0 !important;
	}
	.javelin_commentsItemByline {
		color: inherit;
		line-height: inherit;
	}
	.javelin_commentsItemDateline {
		color: inherit;
		font-size: 87.5%;
		font-style: inherit;
	}
		
		/* Blog / Comments / Form */
		.javelin_commentsForm {
			padding-top: 28px;
			border-top: 1px solid #ccc;
		}
		.javelin_commentsForm dd {
			margin-bottom: 28px;
		}



/* Calendar */
.javelin_calendarMulti:before,
.javelin_calendarMulti:after {
	content: '';
	display: table;
}
.javelin_calendarMulti:after {
	clear: both;
}
.javelin_calendarMulti .javelin_calendarList {
	width: 58%;
}
.javelin_calendarMulti .javelin_calendarMini {
	width: 37%;
	margin-left: 5%;
}
	
	/* Calendar / List */
	.javelin_calendarList a {
		font-size: inherit;
	}
	.javelin_calendarEvent {
		margin-bottom: 28px;
	}
	.javelin_calendarEventTitle,
	.javelin_calendarEventLink {
		margin-bottom: 4px;
	}
	.javelin_calendarEventDateRange,
	.javelin_calendarEventView .javelin_calendarEventDateRange {
		font-size: inherit;
		font-style: inherit;
	}
	.javelin_calendarEventSummary:empty {
		display: none;
	}
	.javelin_calendarEventView > a {
		margin-bottom: 28px;
		padding-bottom: 12px;
		border-bottom: 1px solid #ccc;
		display: block;
	}
	
	/* Calendar / Table */
	.javelin_calendarTable {
		width: 100%;
		margin-bottom: 28px;
	}
	.javelin_calendarFull .javelin_calendarTable {
		border: 0;
	}
	.javelin_calendarTable caption {
		padding: 8px 0;
		background: #ccc;
		color: #666;
	}
	.javelin_calendarPrev {
		float: left;
	}
	.javelin_calendarNext {
		float: right;
	}
	.javelin_calendarPrev,
	.javelin_calendarNext {
		width: 14.285% !important;
		color: #666;
	}
	.javelin_calendarMonth {
		position: static !important;
		left: 0;
	}
	.javelin_calendarTable th,
	.javelin_calendarTable td {
		width: 14.285% !important;
		margin: 0 !important;
		padding: 8px !important;
		border-width: 1px !important;
		border-style: solid !important;
		border-color: #ccc !important;
		color: inherit;
		font-size: inherit;
		vertical-align: top;
	}
	.javelin_calendarTable th {
		height: auto !important;
	}
	.javelin_calendarTable td {
		font-weight: normal !important;
	}
	.javelin_calendarDayToday {
		background: #ccc !important;
	}
	.javelin_calendarDayToday,
	.javelin_calendarDayToday a {
		color: #666 !important;
	}
	.javelin_calendarDayToday a:hover {
		color: #ccc !important;
	}



/* FAQ */
.javelin_faqAnswersTitle {
	padding-top: 32px;
	border-top: 1px solid #ccc;
}
.javelin_faqItemQuestion {font-weight: bold;}
.javelin_faqItemTopLink {text-align: right;}



/* Gallery */
.javelin_galleryItems {margin: 0;}
.javelin_gallery li.javelin_galleryItem {
	margin: 0 16px 16px 0;
	padding: 0;
}
.javelin_galleryItemImage img {
	margin: 0 auto;
	display: block;
}



/* Staff */
.javelin_staffItems {margin: 0;}
.javelin_staff li.javelin_staffItem {
	margin: 0 16px 16px 0;
	padding: 0;
	list-style: none;
}
.javelin_staffItemImage {float: none;}
.javelin_staffItemImage img {
	margin: 0 0 8px 0;
	display: block;
}



/* Twitter */
.javelin_twitter {font-size: 1em;}
.javelin_twitterHeader {
	min-height: 52px;
	margin-bottom: 8px;
}
.javelin_twitterTweets {margin: 0;}
.javelin_twitterTweets li {
	margin-bottom: 16px;
	padding: 0;
	list-style: none;
}



/* Weather */
.javelin_weather {font-size: .85em;}
.javelin_weather > br {display: none;}
.javelin_weatherTime {}
.javelin_weatherImg {
	margin-right: 8px;
	float: left;
}
.javelin_weatherTemp {
	font-size: 18px;
	font-weight: bold;
	line-height: 52px;
}



/* Form Builder */
.javelin_formField {margin-bottom: 16px;}
.javelin_formField dt label {font-weight: bold;}
.javelin_formField sup, .javelin_requiredField {color: #f00;}



/* Products */
	/* Products / Index */
	.cms-products-index .cms-products-item-image {margin-bottom: 8px;}
	
	/* Products / View */
	.cms-products-view .cms-products-item-name {margin-bottom: 8px;}
	.cms-products-view .cms-products-item-essential {margin-bottom: 20px;}
	.cms-products-view .cms-products-item-sku {margin-bottom: 20px;}
	.cms-products-view .cms-products-item-qty {margin-bottom: 16px;}
	.cms-products-view .cms-products-item-price {
		margin-bottom: 16px;
		font-size: 20px;
	}
	
/* Products Cart */
.cms-cart dd {margin-bottom: 16px;}
.cms-cart-backLink {
	margin-bottom: 40px;
	padding-bottom: 10px;
	border-bottom: 1px solid #ccc;
}
.cms-cart-summary th {border-bottom: 1px solid #ccc;}
.cms-cart-item.first td {padding-top: 20px;}
.cms-cart-summary .cms-cart-buttons {
	margin-bottom: 40px;
	padding-bottom: 40px;
	border-bottom: 1px solid #ccc;
}
.cms-cart-totals {
	padding-top: 20px;
	border-top: 1px solid #ccc;
}
	
	/* Products Cart / Index */
	.cms-cart-index .cms-cart-totals {margin-top: 40px;}
	
	/* Products Cart / Checkout */
	.cms-cart-checkout .cms-cart-buttons {
		margin-top: 20px;
		padding-top: 20px;
		border-top: 1px solid #ccc;
	}
	
	/* Products Cart / Verify */
	.cms-cart-extra textarea {
		width: 100%;
		min-height: 100px;
	}
	.cms-cart-verify .cms-cart-summary {margin-top: 40px;}