/* CSS */* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  /*padding: 20px 15%; */
}
form {
    text-shadow: 1px 1px #ffffff;
}
form header {
  /*position:absolute; left:10%; top:20%; /*margin: 0 0 20px 0; */ 
}
form header div {
  font-size: 90%;
  color: #444;
}
form header h2 {
  margin: 0 0 5px 0;
}
form > div {
  /*clear: both;
  padding: 1px;
  margin: 0 0 10px 0px;*/
  overflow: hidden;
}
form > div > fieldset > div > div {
  margin: 0 0 5px 0;
}
form > div > label,
legend {
  width: 25%;
  float: left;
  padding-right: 10px;
}
form > div > div,
form > div > fieldset > div {
  width: 75%;
  float: right;
}
form > div > fieldset label {
    font-size: 90%;
}
fieldset {
  border: 0;
  padding: 0;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
textarea {
  width: 100%;
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  border-right: 1px solid #eee;
  border-bottom: 1px solid #eee;
}
input[type=text],
input[type=email],
input[type=url],
input[type=password] {
  float:left; left:0; margin-left:0; width:100%;
  font-size:3.0vh; margin-bottom:10px; background-color: rgba(255,255,255,0.8);
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
textarea:focus {
  outline: 0;
  border-color: #4697e4;
}

@media (max-width: 600px) {
  form {
     position:absolute; left:10%; top:23%; 
  }
  form > div {
    margin: 0 0 15px 0;
  }
  form > div > label,
  legend {
      width: 100%;
    float: none;
    margin: 0 0 5px 0;
  }
  
  form > div > div,
  form > div > fieldset > div {
    width: 100%;
    float: none;
  }
  
  input[type=text],
  input[type=email],
  input[type=url],
  input[type=password],
  textarea,
  select {
    width: 100%; 
  }
}
@media (min-width: 1200px) {
  form {
     position:absolute; left:10%; top:19%; 
  }
  form > div > label,
    legend {
      text-align: right;
  }
}