/* --------------------------------------------------
	
	Project Name: Ocean Breeze - Back40 Design Group
	Developer: Matt Milburn
	Date: May, 2013
	
-------------------------------------------------- */

@font-face {
	font-family: 'JungleFeverRegular';
	src: url('../fonts/JungleFever-webfont.eot');
	src: url('../fonts/JungleFever-webfont.eot?#iefix') format('embedded-opentype'), url('../fonts/JungleFever-webfont.woff') format('woff'), url('../fonts/JungleFever-webfont.ttf') format('truetype'), url('../fonts/JungleFever-webfont.svg#JungleFeverRegular') format('svg');
	font-weight: normal;
	font-style: normal;
}



/*
####################################################################################################
	GLOBAL
####################################################################################################
*/
html {background: #2ABFBE;}
body {
	background: url(../images/bg_body.jpg) top center repeat-x;
	color: #096280;
	font: 14px/1.7 Arial, Helvetica, sans-serif;
	-webkit-font-smoothing: antialiased;
}
a, a:visited {color: #096280;}
a:hover {color: #FFF;}
h1 {
	color: #FFF;
	font: 48px/1.125 'JungleFeverRegular', Arial, Helvetica, sans-serif;
	text-transform: uppercase;
}
h2, legend {
	margin-bottom: 16px;
	color: #FFF;
	font: 28px/1.125 'JungleFeverRegular', Arial, Helvetica, sans-serif;
	text-transform: uppercase;
}
h3 {
	margin-bottom: 8px;
	color: #FFD800;
	font: bold 16px/1.125 Arial, Helvetica, sans-serif;
}
h4, h5, h6 {font: bold 14px/1.125 Arial, Helvetica, sans-serif;}
p, pre, hr, ul, ol, dl, table, fieldset {margin-bottom: 16px;}
hr {border-color: #096280;}






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

/* Helpers */
.wrapper {padding: 0 20px;}
.wrapper.alpha {padding-left: 0;}
.wrapper.omega {padding-right: 0;}
.column-wrapper {min-height: 1px;} /* for IE7 */
.btn, .btn:visited {
	height: 25px;
	padding: 0 8px;
	background: #F0652F;
	border: 2px solid #FFF;
	color: #FFF;
	font: 16px/25px 'JungleFeverRegular', Arial, Helvetica, sans-serif;
	text-decoration: none;
	text-shadow: 1px 2px 1px #A83D13;
	display: inline-block;
}
.btn:hover {background: #F58328;}

/* Container */
#container {
	background: url(../images/bg_container.gif) center repeat-y;
	zoom: 1; /* for IE7 */
}

/* Accesso */
#ceShopOverlays {
	position: absolute;
	z-index: 99999 !important;
}



/* Header
-------------------------------------------------- */
#header {
	height: 158px;
	padding-top: 54px;
	background: url(../images/bg_header.jpg) top center no-repeat;
}
	
	/* Header / Logo */
	#logo {
		margin: 0;
		position: absolute;
		top: 0;
		left: 230px;
	}
	#logo a {
		width: 230px;
		height: 158px;
		text-indent: -9999px;
		display: block;
	}
	
	/* Header / Cart */
	#header-cart {
		color: #FFF;
		line-height: 30px;
		position: absolute;
		top: 62px;
		right: 50px;
	}
	#header-cart-wrapper {
		margin-right: 10px;
		float: right;
	}
	#header-cart p {
		margin: 0 10px 0 0;
		float: left;
	}
	#form-promocode {
		margin-right: 4px;
		float: left;
	}
	#form-promocode input {
		border: 0;
		display: inline;
		float: left;
	}
	#form-promocode .promocode-field,
	.promoform .promotxt {
		width: 90px;
		height: 30px;
		margin: 0;
		padding: 0 10px;
		background: #FFF;
		color: #888;
		font: 12px/30px Arial, Helvetica, sans-serif;
	}
	#form-promocode .promocode-btn,
	.promoform .promobtn {
		width: 54px;
		height: 30px;
		padding: 0;
		background: #00AC70;
		color: #FFF;
		font: 12px/30px Arial, Helvetica, sans-serif;
		text-align: center;
	}
	
	/* Header / Cart */
	.view-cart {
		margin-top: 52px;
		margin-left: 10px;
		float: left;
		position: relative;
	}
	.view-cart i {
		width: 30px;
		height: 30px;
		background: url(../images/icon_cart.png) center no-repeat;
		text-indent: -9999px;
		display: block;
		position: relative;
		z-index: 2 !important; /* IE7 needs !important */
	}
	.badge-cart-qty {
		width: 22px;
		height: 22px;
		background: url(../images/bg_badge_cart_qty.png) 0 0 no-repeat;
		color: #FFF;
		font: 9px/20px Arial, Helvetica, sans-serif;
		text-align: center;
		position: absolute;
		top: -2px;
		right: -12px;
		z-index: 1 !important; /* IE7 needs !important */
	}
	
	/* Header / Call To Action */
	#cta, #cta:visited {
		margin-bottom: 12px;
		padding: 24px 75px 20px 20px;
		background: #F0652F url(../images/icon_arrow.gif) right center no-repeat;
		border: 2px solid #FFF;
		color: #FFF;
		font: 28px/1 'JungleFeverRegular', Arial, Helvetica, sans-serif;
		text-decoration: none;
		text-transform: uppercase;
		text-shadow: 1px 2px 1px #A83D13;
		float: left;
	}
	#cta:hover {}



/* Navigation
-------------------------------------------------- */
#nav-wrapper {
	height: 60px;
	margin: 0 25px;
	background: url(../images/bg_nav_wrapper.gif) top repeat-x;
}
#nav {
	margin: 0;
	position: relative;
	z-index: 2400;
}
#nav li {
	padding: 0;
	list-style: none;
	position: relative;
	display: inline;
	float: left;
}
#nav a {
	padding: 0 12px;
	color: #FFF;
	font: 20px/60px 'JungleFeverRegular', Arial, Helvetica, sans-serif;
	text-decoration: none;
	text-transform: uppercase;
	text-shadow: 1px 2px 1px #A83D13;
	display: inline-block;
}
#nav > li:hover > a, #nav a:hover {
	background: #003D74 url(../images/bg_nav_hover.gif) top repeat-x;
	text-shadow: 1px 2px 1px #003D74;
}

	/* Second Level Navigation */
	#nav > li:hover ul {display: block;}
	#nav ul {
		margin: 0;
		padding: 6px 0;
		background: #003D74;
		display: none;
		position: absolute;
		top: 60px;
		left: 0;
		z-index: 1;
	}
	#nav ul li {
		display: block;
		float: none;
	}
	#nav ul a {
		width: 226px;
		padding: 4px 12px;
		font: 14px/1.5 Arial, Helvetica, sans-serif;
		text-transform: none;
		text-shadow: none;
		display: block;
	}
	#nav ul a:hover {
		background: none;
		color: #85CEF4;
		text-shadow: none;
	}
	
		/* Third Level Navigation */
		#nav ul ul {
			padding: 0;
			background: none;
			display: block;
			position: relative;
			top: 0;
			left: 0;
		}
		#nav ul ul a {
			width: 208px;
			padding-left: 30px;
			font-size: 12px;
			font-style: italic;
		}



/* Hero
-------------------------------------------------- */
#hero {
	margin: 0 25px;
	background: #2ABFBE url(../images/bg_hero.gif) 0 0 repeat-y;
	border: 10px solid #FFF;
	position: relative;
}
	#index #hero {height: 445px;}
	
	/* Hero / Slideshow */
	#hero .javelin_slideshow {
		z-index: 1 !important; /* IE7 needs !important */
	}
	#hero .javelin_slideshow_pagination {
		width: 100%;
		height: 8px;
		text-align: center;
		position: absolute;
		bottom: 26px;
		left: 0;
		z-index: 3 !important; /* IE7 needs !important */
	}
	#hero .javelin_slideshow_pagination a {
		width: 9px;
		height: 10px;
		margin: 0 5px;
		background: url(../images/sprite_slideshow_pagination.png) 0 0 no-repeat;
		text-indent: -9999px;
		display: inline-block;
	}
	*:first-child+html #hero .javelin_slideshow_pagination a { /* IE7 Only */
		font-size: 0;
		text-indent: 0;
	}
	#hero .javelin_slideshow_pagination .activeSlide {background-position: -18px 0;}
	#hero .javelin_slideshow_pagination a:hover {background-position: -9px 0;}
	#hero .javelin_slideshow_prev, #hero .javelin_slideshow_next {
		width: 45px;
		height: 45px;
		background: url(../images/sprite_slideshow_controls.png) 0 0 no-repeat;
		text-indent: -9999px;
		position: absolute;
		top: 204px;
		z-index: 2 !important; /* IE7 needs !important */
	}
	#hero .javelin_slideshow_prev {
		background-position: 0 0;
		left: 25px;
	}
	#hero .javelin_slideshow_next {
		background-position: -45px 0;
		right: 22px;
	}
	#hero .javelin_slideshow_prev:hover {background-position: 0 -45px;}
	#hero .javelin_slideshow_next:hover {background-position: -45px -45px;}
	
	/* Hero / Page Title */
	#hero .pageTitle {
		padding: 30px;
		line-height: 1em;
		text-shadow: 3px 5px 0 #026CB7;
	}



/* Content
-------------------------------------------------- */
#content {
	min-height: 300px;
	margin: 0 25px;
	padding: 50px 0;
	background: url(../images/bg_content_wrapper.gif) top repeat-x;
}
	
	/* Content / Index */
	.index-col-left, .index-col-right {float: left;}
	.index-col-left {
		width: 320px;
		margin-right: 10px;
	}
	.index-col-right {
		width: 510px;
		margin-left: 10px;
	}
	.index-section {
		margin-bottom: 16px;
		padding: 20px;
		border-bottom: 3px solid #1491C1;
		position: relative;
	}
	.index-section-image {
		width: 190px;
		height: 190px;
		position: absolute;
		top: 0;
		left: 0;
	}
	.index-section-image img {
		transform: rotate(-3deg);
		-ms-transform: rotate(-3deg);
		-moz-transform: rotate(-3deg);
		-webkit-transform: rotate(-3deg);
		margin: 12px 0 0 17px;
	}
	.index-section-yellow .index-section-image img {
		box-shadow: 3px 5px 0 #D1B436;
		-moz-box-shadow: 3px 5px 0 #D1B436;
		-webkit-box-shadow: 3px 5px 0 #D1B436;
	}
	.index-section-teal .index-section-image img {
		box-shadow: 3px 5px 0 #0DB5B8;
		-moz-box-shadow: 3px 5px 0 #0DB5B8;
		-webkit-box-shadow: 3px 5px 0 #0DB5B8;
	}
	.index-section-green .index-section-image img {
		box-shadow: 3px 5px 0 #68B62C;
		-moz-box-shadow: 3px 5px 0 #68B62C;
		-webkit-box-shadow: 3px 5px 0 #68B62C;	
	}
	
	.index-section-blue		{background-color: #2A388F;}
	.index-section-red		{background-color: #F05023;}
	.index-section-yellow	{background-color: #FFE241;}
	.index-section-teal		{background-color: #12E2E0;}
	.index-section-green	{background-color: #80E634;}
	.index-section-yellow, .index-section-teal, .index-section-green {
		min-height: 150px;
		padding-left: 200px;
	}
	
	.index-section, .index-section h1, .index-section h2, .index-section h3 {color: #096280;}
	.index-section h2 {font-size: 24px;}
	.index-section-blue, .index-section-blue h1, .index-section-blue h2, .index-section-blue h3,
	.index-section-red, .index-section-red h1, .index-section-red h2, .index-section-red h3 {color: #FFF;}
	.index-section-blue h2 {
		margin-bottom: 0;
		float: left;
	}
			
		/* Content / Index / Social Media */
		.social {
			margin: 0;
			float: right;
		}
		.social li {
			margin-left: 10px;
			list-style: none;
			float: left;
		}
		.social a {
			width: 30px;
			height: 30px;
			background: url(../images/sprite_social.gif) 0 0 no-repeat;
			display: block;
		}
			
			.social-facebook a	{background-position: 0 0;}
			.social-twitter a	{background-position: -30px 0;}
			.social-rss a		{background-position: -60px 0;}
		
		/* Content / Index / Calendar */
		.index-section-red .javelin_calendarEventLink a {
			color: #FFD800;
			font: bold 16px/1 Arial, Helvetica, sans-serif;
			text-decoration: none;
		}
		.index-section-red .javelin_calendarEventDateRange {
			margin-bottom: 8px;
			color: #D5D5D5;
		}
	
	/* Content / Inside */
	#inside #content-wrapper .wrapper {padding: 0 40px;}
	
	/* Content / Inside / Hours Tables */
	table.hours {
		width: 850px;
		margin-left: -2px;
	}
	table.hours th, table.hours td {
		width: 14.285%;
		height: 100px;
		border: 1px solid #13A0D6;
		color: #333;
	}
	table.hours th {
		height: 25px;
		background: #24B8F1;
		color: #FFD800;
		font: bold 16px/25px Arial, Helvetica, sans-serif;
	}
	table.hours td.inactive {background: #13A0D6;}
	table.hours td.open {
		background: #F0652F;
		color: #FFF;
	}
	table.hours td.closed {	
		background: #006CB5;
		color: #FFF;
	}
	table.hours td.private {
		background: #84C341;
		color: #FFF;
	}



/* Footer
-------------------------------------------------- */
#footer {
	margin-bottom: 50px;
	border-bottom: 1px solid #000;
	background: url(../images/bg_footer.gif) center repeat-y;
	color: #C0F6F6;
	font-size: 12px;
}
#footer-wrapper {
	padding-top: 45px;
	padding-bottom: 20px;
	background: url(../images/bg_footer_wrapper.gif) top center no-repeat;
	zoom: 1;
}
#footer .wrapper {padding: 0 70px;}

	/* Footer / Quick Links */
	#quicklinks {}
	#quicklinks .col {
		width: 150px;
		margin-right: 10px;
		margin-bottom: 20px;
		float: left;
	}
	#quicklinks .last {margin-right: 0;}
	#quicklinks .javelin_links li {
		background: none;
		padding: 0;
	}
	#quicklinks .javelin_links a, #quicklinks .javelin_links a:visited {
		color: #C0F6F6;
		text-decoration: none;
	}
	#quicklinks .javelin_links a:hover {color: #FFF;}
	
		/* Footer module width fix */
		#footer .javelin_moduleBar .javelin_sortableHandle {width: 200px;}
	
	/* Footer / Search */
	.search {
		height: 24px;
		float: right;
	}
	.search p {margin: 0;}
	.search input {
		border: 0;
		display: inline;
		float: left;
	}
	.search-field {
		width: 180px;
		height: 30px;
		margin: 0;
		padding: 0 10px;
		background: #11C4FF;
		color: #095992;
		font: 14px/30px Arial, Helvetica, sans-serif;
	}
	.search-btn {
		width: 30px;
		height: 30px;
		padding: 0;
		background: url(../images/bg_search_btn.gif) no-repeat;
	}
	
	/* Footer / Navigation */
	#fnav {margin: 0 0 20px 0;}
	#fnav li {
		line-height: 1em;
		list-style: none;
		display: inline;
	}
	#fnav a, #fnav a:visited {
		margin-right: 8px;
		padding-right: 10px;
		border-right: 1px solid #4656B9;
		color: #C0F6F6;
		text-decoration: none;
	}
	#fnav a:hover {color: #FFF;}
	#fnav .javelin_lastItem a {border: 0;}
	
	/* Footer / Copyright + Credit */
	#copyright {}
	#credit a {
		color: #C0F6F6;
		font-weight: bold;
		text-decoration: underline;
	}
	#credit a:hover {text-decoration: none;}



/* Newsletter */
.newsletter-wrapper {margin-left: 20px;}
#cms_ccForm fieldset, #cms_ccForm dl, #cms_ccForm p {margin: 0;}
#cms_ccForm dl, #cms_ccForm p {
	display: inline;
	float: left;
}
#cms_ccForm dl {margin-right: 12px;}
#cms_ccForm dt {display: none;}
#cms_ccForm dd input {
	height: 25px;
	padding: 0 10px;
	width: 200px;
}
#cms_ccForm p input {
	height: 31px;
	padding: 0 8px;
	background: #F0652F;
	border: 2px solid #FFF;
	color: #FFF;
	font: 16px/25px 'JungleFeverRegular', Arial, Helvetica, sans-serif;
	text-decoration: none;
	text-shadow: 1px 2px 1px #A83D13;
	display: inline-block;
}
#cms_ccForm p input:hover {background: #F58328}
*:first-child+html #cms_ccForm p input { /* IE7 only */
	font-size: 0;
	line-height: 0;
	text-indent: 0;
}


/*
####################################################################################################
	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 { /* IE7 does not render list-style-image properly */
	padding-left: 24px;
	background: url(../images/bullet.png) 8px 8px 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 {
	border: 6px solid #FFF;
	box-shadow: 3px 5px 0 #1D93C1;
	-moz-box-shadow: 3px 5px 0 #1D93C1;
	-webkit-box-shadow: 3px 5px 0 #1D93C1;
}
	
	/* Remove image styling from unwanted elements */
	img.img-nostyle, .img-nostyle img {
		border: 0;
		box-shadow: none;
		-moz-box-shadow: none;
		-webkit-box-shadow: none;
	}



/* Blog */
.javelin_blogPost {margin-bottom: 20px;}
.javelin_blogPostTitle {margin-bottom: 0;}
.javelin_blogPostDate {
	font-size: 12px;
	font-style: italic;
}
.javelin_blogPostSummary a[title='Read More'] {
	text-align: right;
	font-size: .85em;
	display: block;
}
.javelin_blogCommentsLink {
	text-align: right;
	float: none;
}
.javelin_comments {
	margin: 32px 0;
	padding: 16px;
}
.javelin_commentsTitle {margin-bottom: 16px;}
.javelin_commentsItem {
	margin-top: 0;
	margin-left: 0;
	padding: 0 !important;
}
.javelin_commentsForm legend {font-weight: bold;}

/* Calendar */
.javelin_calendarMulti .javelin_calendarList {width: 65%;}
.javelin_calendarMulti .javelin_calendarMini {margin-left: 4%;}
.javelin_calendarList a {font-size: inherit;}
.javelin_calendarEvent {margin-bottom: 20px;}
.javelin_calendarEventView > a {
	margin-bottom: 16px;
	display: block;
}
.javelin_calendarEventLink {margin-bottom: 0;}
.javelin_calendarEventDateRange {font-size: 12px;}
.javelin_calendarMini td, .javelin_calendarFull .javelin_calendarTable td {
	border: 1px solid #096280;
	font-weight: normal;
}
.javelin_calendarFull .javelin_calendarTable {
	width: 100%;
	border: 0;
}
.javelin_calendarMonth {
	padding: 0;
	font-size: 18px;
	font-weight: bold;
	display: inline-block !important;
	float: none !important;
}
.javelin_calendarMini .javelin_calendarMonth {left: 0;}
.javelin_calendarMini .javelin_calendarDayToday {border-width: 1px;}
.javelin_calendarPrev {padding-right: 20px;}
.javelin_calendarNext {padding-left: 20px;}
.javelin_calendarPrev, .javelin_calendarNext {
	display: inline-block !important;
	float: none !important;
}

/* FAQ */
.javelin_faqAnswersTitle {
	padding-top: 32px;
	border-top: 1px solid #096280;
}
.javelin_faqItemQuestion {
	margin-bottom: 8px;
	color: #FFD800;
	font: bold 16px/1.125 Arial, Helvetica, sans-serif;
}
.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 #096280;
}
.cms-cart-summary th {border-bottom: 1px solid #096280;}
.cms-cart-item.first td {padding-top: 20px;}
.cms-cart-summary .cms-cart-buttons {
	margin-bottom: 40px;
	padding-bottom: 40px;
	border-bottom: 1px solid #096280;
}
.cms-cart-totals {
	padding-top: 20px;
	border-top: 1px solid #096280;
}
	
	/* 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 #096280;
	}
	
	/* Products / Cart / Verify */
	.cms-cart-extra textarea {
		width: 100%;
		min-height: 100px;
	}
	.cms-cart-verify .cms-cart-summary {margin-top: 40px;}