/********************************************************************************/
/* CONTACT
/********************************************************************************/

#contact-form-container {
	position: absolute;
	z-index: 9;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 10px 30px 30px 30px;
	background: rgba(205,231,191,0.9);
	color: #003b48;
	-webkit-transform: translateY(100%);
	   -moz-transform: translateY(100%);
		-ms-transform: translateY(100%);
		 -o-transform: translateY(100%);
			transform: translateY(100%);
	-webkit-transition: all 0.65s ease;
	   -moz-transition: all 0.65s ease;
		-ms-transition: all 0.65s ease;
		 -o-transition: all 0.65s ease;
			transition: all 0.65s ease;
}
#contact-form-container.open {
	-webkit-transform: none;
	   -moz-transform: none;
		-ms-transform: none;
		 -o-transform: none;
			transform: none;	
}


#contact-form-inner {
	position: relative;
	width: 100%;
	max-width: 480px;
	margin: 0 auto;
}


#close-contact-form {
	width: 42px;
	height: 42px;
	margin-bottom: 12px;
	margin-right: -8px;
	background-image: url('../img/close.png');
	background-repeat: no-repeat;
	background-position: 50% 50%;
	cursor: pointer;
}

#contact-form.off {
	opacity: 0;
	-webkit-transition: all 0.65s ease;
	   -moz-transition: all 0.65s ease;
		-ms-transition: all 0.65s ease;
		 -o-transition: all 0.65s ease;
			transition: all 0.65s ease;
}

#contact-form p {
	font-weight: bold;
}
.very-strong {
	font-size: 1.375em;
}


.form-field {
	position: relative;
}
#contact-form input[type=text],
#contact-form input[type=email],
#contact-form textarea,
#contact-form input[type=submit] {
	display: block;
	width: 100%;
	margin-top: 12px;
	border: 1px solid #003b48;
	padding: 8px 1em;
	box-sizing: border-box;
	background-color: #fff;
	font-family: 'Alef', Arial, sans-serif;
	font-size: 1em;
	line-height: 24px;
}
::-webkit-input-placeholder { color: #003b48; }
:-moz-placeholder { color: #003b48; opacity: 1; }
::-moz-placeholder { color: #003b48; opacity: 1; }
:-ms-input-placeholder { color: #003b48; }
input[type=text]:focus,
input[type=email]:focus,
textarea:focus {
	outline-color: #003b48;
	-webkit-box-shadow: 0px 4px 6px -2px rgba(0,0,0,0.65);
	   -moz-box-shadow: 0px 4px 6px -2px rgba(0,0,0,0.65);
			box-shadow: 0px 4px 6px -2px rgba(0,0,0,0.65);
}
#contact-form input[type=submit] {
	background: #003b48;
	color: #fff;
	cursor: pointer;
}

.form-field > .callout {
	display: block;
	position: absolute;
	z-index: -1;
	top: 80%;
	right: 5%;
	/*right: 50%;*/
	height: 36px;
	/*margin-top: -18px;*/
	border-radius: 4px;
	padding: 0 2em;
	line-height: 36px;
	white-space: nowrap;
	background: #003b48;
	color: #fff;
	font-size: 0.85em;
	opacity: 0;
	-webkit-transform: translateY(20px);
	   -moz-transform: translateY(20px);
		-ms-transform: translateY(20px);
		 -o-transform: translateY(20px);
			transform: translateY(20px);
			/*
	-webkit-transform: translateX(-30px);
	   -moz-transform: translateX(-30px);
		-ms-transform: translateX(-30px);
		 -o-transform: translateX(-30px);
			transform: translateX(-30px);
			*/
	-webkit-transition: all 0.35s ease;
			transition: all 0.35s ease;
	-webkit-box-shadow: 0px 1px 5px -1px rgba(0,0,0,0.75);
	   -moz-box-shadow: 0px 1px 5px -1px rgba(0,0,0,0.75);
			box-shadow: 0px 1px 5px -1px rgba(0,0,0,0.75);
}
.form-field > .callout:after {
	content: "";
	display: block;
	position: absolute;
	right: 60px;
	top: -5px;
	/*
	right: -5px;
	top: 13px;
	*/
	width: 0px;
	height: 0px;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-bottom: 5px solid #003b48;
	/*
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid #003b48;
	*/
}
.form-field > .invalid-input + .callout {
	z-index: 9;
	opacity: 1;
	-webkit-transform: none;
	   -moz-transform: none;
		-ms-transform: none;
		 -o-transform: none;
			transform: none;
}



#form-return-loading,
#form-return-container {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	opacity: 0;
	-webkit-transition: z-index 0s ease 0.65s, opacity 0.65s ease 0s;
	   -moz-transition: z-index 0s ease 0.65s, opacity 0.65s ease 0s;
		-ms-transition: z-index 0s ease 0.65s, opacity 0.65s ease 0s;
		 -o-transition: z-index 0s ease 0.65s, opacity 0.65s ease 0s;
			transition: z-index 0s ease 0.65s, opacity 0.65s ease 0s;
}
#form-return-loading.on,
#form-return-container.on {
	z-index: 1;
	opacity: 1;
	-webkit-transition: z-index 0s ease 0.65s, opacity 0.65s ease 0.65s;
	   -moz-transition: z-index 0s ease 0.65s, opacity 0.65s ease 0.65s;
		-ms-transition: z-index 0s ease 0.65s, opacity 0.65s ease 0.65s;
		 -o-transition: z-index 0s ease 0.65s, opacity 0.65s ease 0.65s;
			transition: z-index 0s ease 0.65s, opacity 0.65s ease 0.65s;
}

#form-return-container {
	padding: 2.5em;
	text-align: center;
	font-size: 1.25em;
}

@media only screen and (min-width : 480px) {
}
@media only screen and (min-width : 768px) {
	#contact-form {
	}
	.form-field > .callout {
		top: 50%;
		right: 50%;
		margin-top: -18px;
		margin-right: 24px;
		-webkit-transform: none;
		   -moz-transform: none;
			-ms-transform: none;
			 -o-transform: none;
				transform: none;
	}
	.form-field > .callout:after {
		right: -5px;
		top: 13px;
		border-top: 5px solid transparent;
		border-bottom: 5px solid transparent;
		border-left: 5px solid #003b48;
		border-right: 0;
	}
	.form-field > .invalid-input + .callout {
		margin-right: 0;
	}
	
}

@media only screen and (min-width : 992px) {
	#close-contact-form {
		float: right;
		margin-right: -64px;
		margin-top: -8px;
	}
	#contact-form-inner {
		max-width: 640px;
	}
}



@media only screen and (min-width : 10000px) {
	#contact-form-container {
		position: absolute;
		left: 0;
		bottom: -20px;
	}
	.form-field > .callout {
		top: 50%;
		right: 50%;
	}
}



/********************************************************************************/

