body{
	overflow: hidden;
}
.contContacto{
	width: 100%;
	position: relative;
	vertical-align: top;
	vertical-align: top;
}
.contForm{
	width: 40%;
	height: 100%;
	background-color: #333333;
	position: relative;
	display: inline-block;
	vertical-align: top;
}
.contForm2{
	width: 70%;
	margin-left: 30%;
	height: 100%;
}
.form{
	width: 100%;
	max-width: 500px;
	vertical-align: top;
	margin-top:20%;
	height: 80%;
}
.titulo{
	width: 100%;
	top:20px;
	position: relative;
	font-family: "Canaro";
	font-size: 20px;
	color: white;
	letter-spacing: 3px;
	padding-bottom: 30px;
}
.btnEnviar{
	width: 100px;
	font-family: "AmisPro";
	color: white;
	text-align: center;
	margin-top: 20px;
	background-color: #78bb2f;
	cursor: pointer;
	line-height: 30px;
}
.btnEnviar:hover{
	opacity: .5;
}
.txtContacto{
	margin-top: 30px;
	font-family: "AmisPro";
	font-size: 12px;
	color: white;
}

#mapa{
	width: 60%;
	height: 100%;
	position: relative;
	display: inline-block;
}

.group 			  { 
  position:relative; 
  margin-top: 30px;
  margin-left: 0%; 
}
input 				{
  font-size:14px;
  padding:5px 5px 5px 5px;
  color: #333333;
  display:block;
  width:80%;
  border:none;
  border-bottom:1px solid #757575;
}
textarea 				{
  font-size:14px;
  padding:5px 5px 5px 5px;
  color: #333333;
  display:block;
  width:80%;
  height: 80px;
  border:none;
  border-bottom:1px solid #757575;
}
input:focus 		{ outline:none; }
textarea:focus 		{ outline:none; }

/* LABEL ======================================= */
label{
	font-family: "AmisPro";
  color:#333333; 
  font-size:14px;
  font-weight:normal;
  position:absolute;
  pointer-events:none;
  left:5px;
  top:0px;
  transition:0.2s ease all; 
  -moz-transition:0.2s ease all; 
  -webkit-transition:0.2s ease all;
}

/* active state */
input:focus ~ label, input:valid ~ label 		{
  top:-20px;
  font-size:14px;
  color:#78bb2f;
}
textarea:focus ~ label, textarea:valid ~ label 		{
  top:-20px;
  font-size:14px;
  color:#78bb2f;
}

/* BOTTOM BARS ================================= */
.bar 	{ position:relative; display:block; width:82%; }
.bar:before, .bar:after 	{
  content:'';
  height:2px; 
  width:0;
  bottom:1px; 
  position:absolute;
  background:#78bb2f; 
  transition:0.2s ease all; 
  -moz-transition:0.2s ease all; 
  -webkit-transition:0.2s ease all;
}
.bar:before {
  left:50%;
}
.bar:after {
  right:50%; 
}

/* active state */
input:focus ~ .bar:before, input:focus ~ .bar:after {
  width:50%;
}
textarea:focus ~ .bar:before, textarea:focus ~ .bar:after {
  width:50%;
}
/* HIGHLIGHTER ================================== */
.highlight {
  position:absolute;
  height:60%; 
  width:100px; 
  top:25%; 
  left:0;
  pointer-events:none;
  opacity:0.5;
}

/* active state */
input:focus ~ .highlight {
  -webkit-animation:inputHighlighter 0.3s ease;
  -moz-animation:inputHighlighter 0.3s ease;
  animation:inputHighlighter 0.3s ease;
}
textarea:focus ~ .highlight {
  -webkit-animation:inputHighlighter 0.3s ease;
  -moz-animation:inputHighlighter 0.3s ease;
  animation:inputHighlighter 0.3s ease;
}

@media only screen and (max-width: 750px){
	body{
		overflow-y: scroll;
	}
	.contForm{
		width: 100%;
		height: auto;
		padding-bottom: 50px;
	}
	.contForm2{
		width: 70%;
		margin: 0 auto;
		height: 100%;
	}
	.titulo{
		text-align: center;
	}
	.btnEnviar{
		margin-left: 5%;
	}
	.txtContacto{
		margin-left: 5%;
	}
	#mapa{
		width: 100%;
		height: 300px;
	}
	.group{
	  margin-left: 5%; 
	}
	input 				{
	  width:90%;
	}
	textarea 				{
	  width:90%;
	}
}