/*
 * OneCube form effect
 */
  
/* Reset des éléments du formulaire*/

.onecube-form-container > form,
.onecube-form-container > label,
.onecube-form-container > legend {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    font-weight: inherit !important;
    font-style: inherit !important;
    font-size: 100% !important;
    font-family: inherit !important;
    vertical-align: baseline !important;
}

@media (max-width: 991px) {
	.onecube-form-container { width: 90% !important;	}
	.basic-form select, .ballon-form select, .neutral-form select { width: 100% !important; }
}

/*	CSS pour les formulaires
	CSS Globaux
----------------------------------*/
.onecube-form-container {
	width: 80% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	margin-top: 20px;
}
.margin-right {
	margin-right: 10px;
}
.onecube-form-container .bloc-form {
	position: relative;
	padding-bottom: 5px;
	margin: 0 auto;
	z-index: 1;
}
.onecube-form-container .bloc-form textarea { resize: none; }
.onecube-form-container .bloc-form:before {
  position: absolute;
  content: "";
  display: block;
  top: 0;
  left: -5000px;
  height: 100%;
  width: 15000px;
  z-index: -1;
  background: inherit;
}
.onecube-form-container span.mandatory {
	color: red;
	font-weight: bold;
	font-size: 150%;
}
/* dans le cas de contactForm 7 il y a un span qui est ajouté autour de l'input, donc on le positionne aussi*/
.onecube-form-container .bloc-form .row > span {
	position: absolute;
	left: 0;
	top: 0;
	width: inherit;
}
.onecube-form-container .bloc-form .rowTextarea > span {
	position: absolute;
	left: 0;
	top: 0;
	width: inherit;
	height: inherit;
}

.onecube-form-container .bloc-form  .row > .span-select {
	position: absolute !important;
	display: inline-block !important;
	width: 100%;
}


/*----------------------------------
 formulaire le plus neutre possible
----------------------------------*/
.neutral-form { }
.neutral-form .bloc-form  .row {
	margin: 0px 0px 0px 0px !important;
	width: 100%;
	margin-bottom: 10px !important;
}
.neutral-form .bloc-form  .row label { display: block !important; }
.neutral-form .bloc-form  .row > span { position: relative !important; }

.neutral-form input[type="tel"] { width: 100%; }
.neutral-form input[type="text"],
.neutral-form input[type="email"],
.neutral-form input[type="tel"],
.neutral-form textarea {
  font-weight: 400 !important;
  color: #646686 !important;
  background: #efefef !important;
  border: 1px solid #0e649b !important;
  margin-top: 0px !important;
  border-radius: 3px !important;
  -ms-border-radius: 3px !important;
  -webkit-border-radius: 3px !important;
  -o-border-radius: 3px !important;
  -moz-border-radius: 3px !important;
  outline: 0;
  /*text-indent: 70px;*/
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}
.neutral-form select {
	background: none repeat scroll 0 0 #efefef;
    border: 1px solid #0e649b !important;
    color: #646686;
	border-radius: 3px !important;
	-ms-border-radius: 3px !important;
	-webkit-border-radius: 3px !important;
	-o-border-radius: 3px !important;
	-moz-border-radius: 3px !important;
	width: 100%;
}
.neutral-form input:focus,
.neutral-form input:active,
.neutral-form textarea:focus,
.neutral-form textarea:active {
  color: #0e649b !important;
  background: #fff !important;
}
.neutral-form select:focus,
.neutral-form select:active {
  background: #fff !important;
  border: 1px solid #f0f1f4;
}

.neutral-form .bloc-form .rowTextarea > span {
	position: relative !important;
}
/*----------------------------------
 formulaire basic avec label header
----------------------------------*/
.basic-form .bloc-form .row {
  /*position: relative !important;*/
  display: inline-block !important;
  margin: 0px 0px 0px 0px !important;
  width: 100%;
}
.basic-form .bloc-form  {
  clear: both;
}
.basic-form input[type="text"],
.basic-form input[type="email"],
.basic-form input[type="tel"],
.basic-form textarea {
  display: inline-block !important;
  position: absolute !important;
  margin: 0px !important;
  padding: 8px 10px 8px 10px !important;
  font-weight: 400 !important;
  color: #646686 !important;
  background: #efefef !important;
  border: 0 !important;
  border-radius: 3px !important;
  -ms-border-radius: 3px !important;
  -webkit-border-radius: 3px !important;
  -o-border-radius: 3px !important;
  -moz-border-radius: 3px !important;
  outline: 0;
}
.basic-form select {
	background: none repeat scroll 0 0 #efefef;
    border: 0 none;
    border-radius: 3px;
	-ms-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	-moz-border-radius: 3px;
    color: #646686;
	padding: 5px;
	display: inline-block !important;
	position: relative !important;
	width: 100% !important;
}
.basic-form input[type="text"],
.basic-form input[type="email"],
.basic-form input[type="tel"],
.basic-form select,
.basic-form label {
	height: 34px !important;
}
.basic-form input[type="tel"] {width: 100%;}
.basic-form textarea {
	height: 150px !important;
}
.basic-form label {
	display: inline-block;
	position: relative;
	padding: 3px 9px 5px 10px;
	background: #0e649b;
	border-top-left-radius: 3px;
	-ms-border-top-left-radius: 3px;
	-webkit-border-top-left-radius: 3px;
	-o-border-top-left-radius: 3px;
	-moz-border-top-left-radius: 3px;
	
	border-bottom-left-radius: 3px;
	-ms-border-bottom-left-radius: 3px;
	-webkit-border-bottom-left-radius: 3px;
	-o-border-bottom-left-radius: 3px;
	-moz-border-bottom-left-radius: 3px;

	color: white;
	font-weight: 100 !important;
	z-index: 1;
}
.basic-form label  span{
	display: inline;
}
/*
.basic-form input:focus,
.basic-form input:active {
  color: #0e649b;
  text-indent: 0;
  background: #fff;
  padding: 3px 5px 5px 10px !important;
}
*/

.basic-form .bloc-form .rowTextarea {
	height: 150px;
    width: 100%;
}
.basic-form .bloc-form .rowTextarea > span {
	display: block !important;
	position: relative !important;
}
.basic-form .bloc-form .rowTextarea label{
	border-top-left-radius: 3px;
	-ms-border-top-left-radius: 3px;
	-webkit-border-top-left-radius: 3px;
	-o-border-top-left-radius: 3px;
	-moz-border-top-left-radius: 3px;
	border-bottom-left-radius: 0px;
	-ms-border-bottom-left-radius: 0px;
	-webkit-border-bottom-left-radius: 0px;
	-o-border-bottom-left-radius: 0px;
	-moz-border-bottom-left-radius: 0px;
	border-top-right-radius: 3px;
	-ms-border-top-right-radius: 3px;
	-webkit-border-top-right-radius: 3px;
	-o-border-top-right-radius: 3px;
	-moz-border-top-right-radius: 3px;
	margin-bottom: 0px !important;
}
.basic-form .bloc-form .rowTextarea textarea{
	border-top-left-radius: 0px;
	-ms-border-top-left-radius: 0px;
	-webkit-border-top-left-radius: 0px;
	-o-border-top-left-radius: 0px;
	-moz-border-top-left-radius: 0px;
}
/*---------------------------------------------*/

/*---------------------------------------------*/
/* Formulare avec animation sur le header */
/*---------------------------------------------*/
.ballon-form .bloc-form .row {
  position: relative !important;
  display: inline-block !important;
  margin: 25px 0px 0px 0px !important;
  width: 100%;
}
.ballon-form input[type="text"],
.ballon-form input[type="email"],
.ballon-form input[type="tel"],
.ballon-form textarea {
  display: inline-block !important;
  position: absolute !important;
  margin: 0px !important;
  padding: 6px 10px 6px 10px !important;
  font-weight: 400 !important;
  color: #646686 !important;
  background: #efefef !important;
  border: 0 !important;
  border-radius: 3px !important;
  -ms-border-radius: 3px !important;
  -webkit-border-radius: 3px !important;
  -o-border-radius: 3px !important;
  -moz-border-radius: 3px !important;
  outline: 0;
  /*text-indent: 70px;*/
  -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.ballon-form input[type="tel"] {width: 100%;}
.ballon-form select {
	background: none repeat scroll 0 0 #efefef;
    border: 0 none;
    border-radius: 3px;
	-ms-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	-moz-border-radius: 3px;
    color: #646686;
	padding: 5px;
	display: inline-block !important;
	position: relative !important;
	width: 100% !important;
}

.ballon-form input[type="text"],
.ballon-form input[type="email"],
.ballon-form input[type="tel"],
.ballon-form select,
.ballon-form label {
	height: 34px !important;
}

.ballon-form label {
	display: inline-block;
	position: relative;
	padding: 3px 9px 5px 10px;
	background: #0e649b;
	border-top-left-radius: 3px;
	-ms-border-top-left-radius: 3px;
	-webkit-border-top-left-radius: 3px;
	-o-border-top-left-radius: 3px;
	-moz-border-top-left-radius: 3px;
	border-bottom-left-radius: 3px;
	-ms-border-bottom-left-radius: 3px;
	-webkit-border-bottom-left-radius: 3px;
	-o-border-bottom-left-radius: 3px;
	-moz-border-bottom-left-radius: 3px;
	
	color: white;
	font-weight: 100 !important;
	z-index: 1;
	-webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
	-ms-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
	/*margin-top: 20px !important;*/
}
.ballon-form label  span{
	display: inline;
}

.ballon-form input[type="text"]:focus,
.ballon-form input[type="email"]:focus,
.ballon-form input[type="tel"]:focus,
.ballon-form input[type="text"]:active,
.ballon-form input[type="email"]:active,
.ballon-form input[type="tel"]:active,
.ballon-form textarea:focus,
.ballon-form textarea:active {
  color: #0e649b !important;
  text-indent: 0 !important;
  background: #fff !important;
  padding: 6px 5px 6px 10px !important;
}
.ballon-form select:focus,
.ballon-form select:active {
  background: #fff !important;
  border: 1px solid #f0f1f4;
}

.ballon-form label.ballon:after {
  position: absolute;
  content: "";
  width: 0;
  height: 0;
  top: 100%;
  left: 50%;
  margin-left: -3px;
  border-left: 3px solid transparent;
  border-right: 3px solid transparent;
  border-top: 4px solid #7ab893;
  
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}
.ballon-form label.ballon{
	  color: #fff;
	 /* text-shadow: 0 1px 0 rgba(19, 74, 70, 0.4);*/
	  background: #7ab893;
	  border-radius: 3px;
	  -ms-border-radius: 3px;
	  -webkit-border-radius: 3px;
	  -o-border-radius: 3px;
	  -moz-border-radius: 3px;
	  padding: 3px 5px 2px !important;
	  height: 22px !important;
	  line-height: 14px !important;
	
	 transform: translateY(-30px);
	 -ms-transform: translateY(-30px); /* IE 9 */
	 -webkit-transform: translateY(-30px); /* Safari and Chrome */
	 -o-transform: translateY(-30px); /* Opera */
	 -moz-transform: translateY(-30px); /* Firefox */
}
.ballon-form label.ballonSelect:after {
    border-bottom: 3px solid transparent;
    border-top: 3px solid transparent;
	border-left: 4px solid #7ab893;
    content: "";
    height: 0;
    left: 100%;
    margin-top: -3px;
    position: absolute;
    top: 50%;
    width: 0;
  
  -webkit-transition: all .3s ease-in-out;
  -moz-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  -ms-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}
.ballon-form label.ballonSelect{
	  color: #fff;
	  /*text-shadow: 0 1px 0 rgba(19, 74, 70, 0.4);*/
	  background: #7ab893;
	  border-radius: 3px;
	  -ms-border-radius: 3px;
	  -webkit-border-radius: 3px;
	  -o-border-radius: 3px;
	  -moz-border-radius: 3px;
	  padding: 3px 5px 2px !important;
	  height: 22px !important;
	  line-height: 14px !important;
	  vertical-align: center;
	  margin-right: 10px;
}

.ballon-form .bloc-form .rowTextarea {
	height: 150px;
    width: 100%;
	margin: 25px 0 0 !important;
	padding-right: 15px !important;
	padding-right: 15px !important;
}
.ballon-form .bloc-form .rowTextarea label{
	border-radius: 3px !important;
	-ms-border-radius: 3px !important;
	-webkit-border-radius: 3px !important;
	-o-border-radius: 3px !important;
	-moz-border-radius: 3px !important;
}
.ballon-form .bloc-form .rowTextarea textarea{
    height: 100%;
    left: 0;
    position: absolute !important;
    top: 0;
	border-radius: 3px;
	-ms-border-radius: 3px;
	-webkit-border-radius: 3px;
	-o-border-radius: 3px;
	-moz-border-radius: 3px;
}
