/* formns */
.floating-label {
  position:relative;
  margin-bottom:30px;
}
.floating-input , .floating-select {
  font-size:18px;
  padding:10px;
  display:block;
  width:100%;
  height:40px;
  color: #fff;
  background-color: transparent;
  border:none;
  border-bottom:1px solid #fff;
}
.floating-input:focus , .floating-select:focus {
     outline:none;
     border-bottom:2px solid #fff;
}
label.formsWrite {
  color:#fff;
  font-weight:normal;
  position:absolute;
  pointer-events:none;
  left:5px;
  top:5px;
  transition:0.2s ease all;
  -moz-transition:0.2s ease all;
  -webkit-transition:0.2s ease all;
}
.formTextarea{
    height: 100px;
}
.floating-input:focus ~ label, .floating-input:not(:placeholder-shown) ~ label {
  top:-18px;
  font-size:14px;
  color:#fff;
}
.floating-select:focus ~ label , .floating-select:not([value=""]):valid ~ label {
  top:-18px;
  font-size:14px;
  color:#fff;
}
/* active state */
.floating-input:focus ~ .bar:before, .floating-input:focus ~ .bar:after, .floating-select:focus ~ .bar:before, .floating-select:focus ~ .bar:after {
  width:50%;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
/* highlighter */
.highlight {
  position:absolute;
  height:50%;
  width:100%;
  top:15%;
  left:0;
  pointer-events:none;
  opacity:0.5;
}
/* active state */
.floating-input:focus ~ .highlight , .floating-select:focus ~ .highlight {
  -webkit-animation:inputHighlighter 0.3s ease;
  -moz-animation:inputHighlighter 0.3s ease;
  animation:inputHighlighter 0.3s ease;
}
/* animation */
@-webkit-keyframes inputHighlighter {
    from { background:#fff; }
  to 	{ width:0; background:transparent; }
}
@-moz-keyframes inputHighlighter {
    from { background:#fff; }
  to 	{ width:0; background:transparent; }
}
@keyframes inputHighlighter {
    from { background:#fff; }
  to 	{ width:0; background:transparent; }
}
/* forms modal */
#modalContent .floating-label {
  position:relative;
  margin-bottom:30px;
}
#modalContent .floating-input , .floating-select {
  font-size: 16px;
  padding: 0px;
  display: block;
  width: 100%;
  height: 40px;
  color: #FFFFFF;
  background-color: transparent;
  border: none;
  border-bottom: 1px solid #FFFFFF;
}
#modalContent .floating-input:focus , .floating-select:focus {
     outline:none;
     border-bottom:2px solid #fff;
}
#modalContent label.formsWrite {
  color:#777;
  font-weight:normal;
  position:absolute;
  pointer-events:none;
  left:5px;
  top:5px;
  transition:0.2s ease all;
  -moz-transition:0.2s ease all;
  -webkit-transition:0.2s ease all;
}
#modalContent .formTextarea{
    height: 100px;
}
#modalContent .floating-input:focus ~ label, 
#modalContent .floating-input:not(:placeholder-shown) ~ label {
  top:-18px;
  font-size:14px;
  color:#777;
}
#modalContent .floating-select:focus ~ label , 
#modalContent .floating-select:not([value=""]):valid ~ label {
  top:-18px;
  font-size:14px;
  color:#777;
}
/* active state */
#modalContent .floating-input:focus ~ .bar:before, 
#modalContent .floating-input:focus ~ .bar:after, 
#modalContent .floating-select:focus ~ .bar:before, 
#modalContent .floating-select:focus ~ .bar:after {
  width:50%;
}
/* active state */
.floating-input:focus ~ .highlight , .floating-select:focus ~ .highlight {
  -webkit-animation:inputHighlighter2 0.3s ease;
  -moz-animation:inputHighlighter2 0.3s ease;
  animation:inputHighlighter2 0.3s ease;
}
/* animation */
@-webkit-keyframes inputHighlighter2 {
    from { background:#777; }
  to 	{ width:0; background:transparent; }
}
@-moz-keyframes inputHighlighter2 {
    from { background:#777; }
  to 	{ width:0; background:transparent; }
}
@keyframes inputHighlighter2 {
    from { background:#777; }
  to 	{ width:0; background:transparent; }
}


/*Checkboxes styles*/
input[type="checkbox"] { display: none; }

input[type="checkbox"] + label {
  display: block;
  position: relative;
  padding-left: 35px;
  margin-bottom: 20px;
  color: #fff;
  cursor: pointer;
  /* -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none; */
}

input[type="checkbox"] + label:last-child {
  margin-bottom: 20px;
}

input[type="checkbox"] + label:before {
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  border: 1px solid #fff;
  position: absolute;
  left: 0;
  top: 0;
  opacity: .6;
  -webkit-transition: all .12s, border-color .08s;
  transition: all .12s, border-color .08s;
}

input[type="checkbox"]:checked + label:before {
  width: 10px;
  top: -5px;
  left: 5px;
  border-radius: 0;
  opacity: 1;
  border-top-color: transparent;
  border-left-color: transparent;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}