/* -----------------------------------------------------------------------------
 * common styles
 * -------------------------------------------------------------------------- */
body {
	background-color: black;
	font-family: 'Source Sans Pro', sans-serif;
	font-weight: 300;
}

a {
	color: #017663;
	-webkit-transition: color 0.1s ease-in-out;
	-moz-transition: color 0.1s ease-in-out;
	transition: color 0.1s ease-in-out;
}

a:hover,
a:focus {
	color: #02caa9;
	text-decoration: none;
}

h1 {
	border-bottom: 1px solid #017663;
	text-transform: uppercase;
	color: #017663;
	margin-bottom: 30px;
}

/* -----------------------------------------------------------------------------
 * form styles
 * -------------------------------------------------------------------------- */
.btn-primary {
	background-color: #017663;
	border-color: #015b4c;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
	background-color: #02caa9;
}

.btn:focus,
.form-control:focus {
	outline: 0;
	border-color: #017663;
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(1, 118, 99, 0.6);
}

.form-group.has-error .help-block.hidden {
	display:block!important;
}

.ui-datepicker {
	z-index: 1000!important;
}

/* -----------------------------------------------------------------------------
 * gallery
 * -------------------------------------------------------------------------- */
.gallery img {
	-webkit-filter: grayscale(1); /* Webkit */
	filter: gray; /* IE6-9 */
	filter: grayscale(1); /* W3C */
	transition: 0.1s;
}

.gallery img:hover {
	-webkit-filter: grayscale(0); /* Webkit */
	filter: none; /* IE6-9 */
	filter: grayscale(0); /* W3C */
}


/* -----------------------------------------------------------------------------
 * scene common
 * -------------------------------------------------------------------------- */
.scene {
	font-size: 20px;
}

/* SM */
@media (min-width: 768px) {
	.scene {
		font-size: 24px;
	}
}

/* MD */
@media (min-width: 992px) {
	.scene {
		font-size: 28px;
	}
}

/* LG */
@media (min-width: 1200px) {
	.scene {
		font-size: 32px;
	}
}

.scene .layer {
	position: fixed;
	-webkit-transition: transform 0.2s ease-out;
	-moz-transition: transform 0.2s ease-out;
	transition: transform 0.2s ease-out;
}

/* -----------------------------------------------------------------------------
 * beach and waves
 * -------------------------------------------------------------------------- */
@-webkit-keyframes waving {
	0% {
		-webkit-transform: rotateZ(0deg) translate3d(0,10%,0) rotateZ(0deg);
		-moz-transform: rotateZ(0deg) translate3d(0,10%,0) rotateZ(0deg);
		transform: rotateZ(0deg) translate3d(0,10%,0) rotateZ(0deg);
	}

	100% {
		-webkit-transform: rotateZ(360deg) translate3d(0,10%,0) rotateZ(-360deg);
		-moz-transform: rotateZ(360deg) translate3d(0,10%,0) rotateZ(-360deg);
		transform: rotateZ(360deg) translate3d(0,10%,0) rotateZ(-360deg);
	}
}

@-moz-keyframes waving {
	0% {
		-webkit-transform: rotateZ(0deg) translate3d(0,10%,0) rotateZ(0deg);
		-moz-transform: rotateZ(0deg) translate3d(0,10%,0) rotateZ(0deg);
		transform: rotateZ(0deg) translate3d(0,10%,0) rotateZ(0deg);
	}

	100% {
		-webkit-transform: rotateZ(360deg) translate3d(0,10%,0) rotateZ(-360deg);
		-moz-transform: rotateZ(360deg) translate3d(0,10%,0) rotateZ(-360deg);
		transform: rotateZ(360deg) translate3d(0,10%,0) rotateZ(-360deg);
	}
}

@keyframes waving {
	0% {
		-webkit-transform: rotateZ(0deg) translate3d(0,10%,0) rotateZ(0deg);
		-moz-transform: rotateZ(0deg) translate3d(0,10%,0) rotateZ(0deg);
		transform: rotateZ(0deg) translate3d(0,10%,0) rotateZ(0deg);
	}

	100% {
		-webkit-transform: rotateZ(360deg) translate3d(0,10%,0) rotateZ(-360deg);
		-moz-transform: rotateZ(360deg) translate3d(0,10%,0) rotateZ(-360deg);
		transform: rotateZ(360deg) translate3d(0,10%,0) rotateZ(-360deg);
	}
}

.scene .layer.beach,
.scene .layer.wave {
	width: 200%;
	left: -50%;
}

.scene .layer.beach .body,
.scene .layer.wave .body {
	background-repeat: repeat-x;
	width: 100%;
	height: 100%;
}

.scene .layer.beach {
	z-index: 200;
	height: 8em;
	bottom: -5em;
}

.scene .layer.beach .body {
	background-size: 20em 8em;
	background-image: url("img/beach.png");
}

.scene .layer.wave.a .body,
.scene .layer.wave.d .body,
.scene .layer.wave.f .body {
	background-image: url("img/wave-green.png");
}

.scene .layer.wave.b .body,
.scene .layer.wave.c .body,
.scene .layer.wave.e .body {
	background-image: url("img/wave-blue.png");
}

.scene .layer.wave.a {
	z-index: 100;
	height: 8em;
	bottom: -2em;
}

.scene .layer.wave.a .body {
	background-size: 20em 8em;
	-webkit-animation: waving 4s linear infinite;
	-moz-animation: waving 4s linear infinite;
	animation: waving 4s linear infinite;
}

.scene .layer.wave.b {
	z-index: 80;
	height: 6.4em;
	bottom: 0;
}

.scene .layer.wave.b .body {
	background-size: 16em 6.4em;
	-webkit-animation: waving 4.88889s linear infinite;
	-moz-animation: waving 4.88889s linear infinite;
	animation: waving 4.88889s linear infinite;
}

.scene .layer.wave.c {
	z-index: 60;
	height: 4.8em;
	bottom: 2em;
}

.scene .layer.wave.c .body{
	background-size: 12em 4.8em;
	-webkit-animation: waving 5.77778s linear infinite;
	-moz-animation: waving 5.77778s linear infinite;
	animation: waving 5.77778s linear infinite;
}

.scene .layer.wave.d {
	z-index: 50;
	height: 4em;
	bottom: 3em;
}

.scene .layer.wave.d .body {
	background-size: 10em 4em;
	-webkit-animation: waving 6.22222s linear infinite;
	-moz-animation: waving 6.22222s linear infinite;
	animation: waving 6.22222s linear infinite;
}

.scene .layer.wave.e {
	z-index: 40;
	height: 3.2em;
	bottom: 4em;
}

.scene .layer.wave.e .body {
	background-size: 8em 3.2em;
	-webkit-animation: waving 6.66667s linear infinite;
	-moz-animation: waving 6.66667s linear infinite;
	animation: waving 6.66667s linear infinite;
}

.scene .layer.wave.f {
	z-index: 30;
	height: 2.4em;
	bottom: 5em;
}

.scene .layer.wave.f .body {
	background-size: 6em 2.4em;
	-webkit-animation: waving 7.11111s linear infinite;
	-moz-animation: waving 7.11111s linear infinite;
	animation: waving 7.11111s linear infinite;
}

/* -----------------------------------------------------------------------------
 * cocktail
 * -------------------------------------------------------------------------- */
@-webkit-keyframes swing {
	0% {
		-webkit-transform: translate3d(15%, 0, 0) rotateZ(10deg);
		-moz-transform: translate3d(15%, 0, 0) rotateZ(10deg);
		transform: translate3d(15%, 0, 0) rotateZ(10deg);
	}

	100% {
		-webkit-transform: translate3d(-15%, 0, 0) rotateZ(-10deg);
		-moz-transform: translate3d(-15%, 0, 0) rotateZ(-10deg);
		transform: translate3d(-15%, 0, 0) rotateZ(-10deg);
	}
}

@-moz-keyframes swing {
	0% {
		-webkit-transform: translate3d(15%, 0, 0) rotateZ(10deg);
		-moz-transform: translate3d(15%, 0, 0) rotateZ(10deg);
		transform: translate3d(15%, 0, 0) rotateZ(10deg);
	}

	100% {
		-webkit-transform: translate3d(-15%, 0, 0) rotateZ(-10deg);
		-moz-transform: translate3d(-15%, 0, 0) rotateZ(-10deg);
		transform: translate3d(-15%, 0, 0) rotateZ(-10deg);
	}
}

@keyframes swing {
	0% {
		-webkit-transform: translate3d(15%, 0, 0) rotateZ(10deg);
		-moz-transform: translate3d(15%, 0, 0) rotateZ(10deg);
		transform: translate3d(15%, 0, 0) rotateZ(10deg);
	}

	100% {
		-webkit-transform: translate3d(-15%, 0, 0) rotateZ(-10deg);
		-moz-transform: translate3d(-15%, 0, 0) rotateZ(-10deg);
		transform: translate3d(-15%, 0, 0) rotateZ(-10deg);
	}
}

.scene .layer.cocktail {
	z-index: 55;
	height: 10em;
	width: 5.851em;
	bottom: 3em;
	right: 5%;
}

.scene .layer.cocktail .body {
	width: 100%;
	height: 100%;
	background-image: url("img/cocktail.png");
	background-size: 100% 100%;
	background-repeat: no-repeat;
	-webkit-transform-origin: 50% 90%;
	-moz-transform-origin: 50% 90%;
	transform-origin: 50% 90%;
	-webkit-animation: swing 4s cubic-bezier(0.46, 0.03, 0.52, 0.96) infinite alternate;
	-moz-animation: swing 4s cubic-bezier(0.46, 0.03, 0.52, 0.96) infinite alternate;
	animation: swing 4s cubic-bezier(0.46, 0.03, 0.52, 0.96) infinite alternate;
}

/* -----------------------------------------------------------------------------
 * boards
 * -------------------------------------------------------------------------- */
.scene .layer.boards {
	z-index: 20;
	height: 7em;
	width: 4.126em;
	bottom: 4.5em;
	left: 5%;
}

.scene .layer.boards .body {
	width: 100%;
	height: 100%;
	background-image: url("img/boards.png");
	background-size: 100% 100%;
	background-repeat: no-repeat;
}


/* -----------------------------------------------------------------------------
 * lights
 * -------------------------------------------------------------------------- */
@-webkit-keyframes pulse {
	0%		{opacity: 1.0;}
	25%		{opacity: 0.4;}
	50%		{opacity: 0.8;}
	75%		{opacity: 0.4;}
	100%	{opacity: 1.0;}
}

@-moz-keyframes pulse {
	0%		{opacity: 1.0;}
	25%		{opacity: 0.4;}
	50%		{opacity: 0.8;}
	75%		{opacity: 0.4;}
	100%	{opacity: 1.0;}
}

@keyframes pulse {
	0%		{opacity: 1.0;}
	25%		{opacity: 0.4;}
	50%		{opacity: 0.8;}
	75%		{opacity: 0.4;}
	100%	{opacity: 1.0;}
}

.scene .layer.light {
	z-index: 10;
	width: 50%;
	height: 40em;
	margin-left: -25%;
	bottom: -20em;
}

.scene .layer.light .body {
	width: 100%;
	height: 100%;
	background-image: url("img/light-orange.png");
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.scene .layer.light.a {
	left: 10%;
}

.scene .layer.light.a .body {
	-webkit-animation: pulse 16s linear infinite;
	-moz-animation: pulse 16s linear infinite;
	animation: pulse 16s linear infinite;
}

.scene .layer.light.b {
	left: 30%;
}

.scene .layer.light.b .body {
	-webkit-animation: pulse 14s linear infinite;
	-moz-animation: pulse 14s linear infinite;
	animation: pulse 14s linear infinite;
}

.scene .layer.light.c {
	left: 50%;
}

.scene .layer.light.c .body {
	-webkit-animation: pulse 12s linear infinite;
	-moz-animation: pulse 12s linear infinite;
	animation: pulse 12s linear infinite;
}

.scene .layer.light.d {
	left: 70%;
}

.scene .layer.light.d .body {
	-webkit-animation: pulse 13s linear infinite;
	-moz-animation: pulse 13s linear infinite;
	animation: pulse 13s linear infinite;
}

.scene .layer.light.e {
	left: 90%;
}

.scene .layer.light.e .body {
	-webkit-animation: pulse 15s linear infinite;
	-moz-animation: pulse 15s linear infinite;
	animation: pulse 15s linear infinite;
}

/* -----------------------------------------------------------------------------
 * backdrop
 * -------------------------------------------------------------------------- */
.scene .layer.backdrop {
	z-index: 0;
	top: -5%;
	left: -5%;
	width: 110%;
	height: 110%;
}

.scene .layer.backdrop .body {
	width: 100%;
	height: 100%;

	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#7dd1ad+0,7cd2ad+60,166649+100 */
	background: rgb(125,209,173); /* Old browsers */
	background: -moz-linear-gradient(top,  rgb(125,209,173) 0%, rgb(124,210,173) 50%, rgb(22,102,73) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgb(125,209,173) 0%,rgb(124,210,173) 50%,rgb(22,102,73) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgb(125,209,173) 0%,rgb(124,210,173) 50%,rgb(22,102,73) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7dd1ad', endColorstr='#166649',GradientType=0 ); /* IE6-9 */

	/* alternative */	
	background-image: url("img/backdrop.jpg");
	background-size: cover;
	background-position: center center;
	
}

/* -----------------------------------------------------------------------------
 * navigation
 * -------------------------------------------------------------------------- */
.navbar-default {
	background: #017663;
	border: none;
	box-shadow: 0 0 10px 0 black;
}

.navbar-default .navbar-nav>li>a {
	color: #fff;
	text-transform: uppercase;
}

.navbar-brand {
	position: relative;
}

.navbar-brand>img {
	height: 34px;
	width: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
}

.navbar-default .navbar-toggle,
.navbar-default .navbar-toggle:focus,
.navbar-default .navbar-toggle:hover {
	background-color: #02caa9;
}

.navbar-default .navbar-toggle.collapsed {
	background-color: transparent;
}

.navbar-default .navbar-toggle .icon-bar {
	background-color: #fff;
}

/* -----------------------------------------------------------------------------
 * content area
 * -------------------------------------------------------------------------- */
.container.content {
	background-color: #e7fdfe;
	background-color: #fff;
	position: relative;
	z-index: 56;
	box-shadow: 0 0 60px 0 black;
	padding-top: 50px;
	margin-bottom: 280px;
}

/* SM */
@media (min-width: 768px) {
	.container.content {
		border-radius: 10px;
		padding-top: 0;
		margin-top: 80px;
		margin-bottom: 336px;
	}
}

/* MD */
@media (min-width: 992px) {
	.container.content {
		margin-bottom: 392px;
	}
}

/* LG */
@media (min-width: 1200px) {
	.container.content {
		margin-bottom: 448px;
	}
}

/* -----------------------------------------------------------------------------
 * home
 * -------------------------------------------------------------------------- */
#home {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 56;
}

#home img {
	max-width: 100%;
/*	display: none;*/
}
/*
@media (min-height: 500px) {
	#home img {
		display: block;
	}
}*/

#home .container {
	height: 100%;
}

#home .wrap {
	text-align: center;
	position: relative;
	top: 40%;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
}

#home .cta {
	display: inline-block;
	text-transform: uppercase;
	color: #fff;
	text-decoration: none;
	font-size: 30px;
	border: 2px solid #fff;
	border-radius: 1000px;
	padding: 0.3em 1em;
	background-color: #017663;
	margin-top: 1em;
	transition: background-color 0.1s ease-in-out;
}

#home .cta:hover,
#home .cta:focus {
	background-color: #02caa9;
}

/* -----------------------------------------------------------------------------
 * specials
 * -------------------------------------------------------------------------- */
#specials .thumbnail .wrap {
	position: relative;
	width: 100%;
	height: 0;
	overflow: hidden;
	padding-bottom: 100%;
}

#specials .thumbnail .wrap img {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: 80%;
	max-height: 80%;
	-webkit-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
}