/* reset webkit search input styles */
input[type="search"] {
  -webkit-appearance: none;
  outline: none; }

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button {
  display: none; }

/* field errors */
.error {
  background: #faeda2;
  border: none;
  padding: 10px;
  border-radius: 5px;
  color: #b91701; }

.errorlist {
  padding: 0px;
  list-style: none;
  margin: 0px; }
  .errorlist > li {
    background: none;
    border: none;
    font-style: italic;
    color: #bd3434;
    margin: 5px 0px; }

form {
  /* fieldset defaults */
  /* top level inputs */ }
  form fieldset {
    padding: 25px;
    border: none;
    background: #f8f8f8; }
  form ul {
    list-style: none;
    padding: 0;
    margin: 0;
    /* second level inputs */ }
    form ul ul li {
      clear: none;
      margin: 0 0 5px 0; }
  form li {
    clear: left;
    margin: 0 0 20px 0; }

/* labels */
label {
  display: block;
  margin: 0 0 10px 0;
  color: #333333; }

/* inputs and textareas */
input,
textarea {
  border-radius: 3px; }

/* be specific so as to not affect checboxes/radios */
input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
input[type="url"],
textarea {
  border: 1px solid #bbbbbb;
  padding: 1%;
  width: 98%; }
  input[type="text"]:focus,
  input[type="password"]:focus,
  input[type="email"]:focus,
  input[type="number"]:focus,
  input[type="url"]:focus,
  textarea:focus {
    outline: none;
    border: 1px solid #98C6F2;
    -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) inset, 0 0 6px rgba(54, 137, 219, 0.4);
    -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) inset, 0 0 6px rgba(54, 137, 219, 0.4);
    -o-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) inset, 0 0 6px rgba(54, 137, 219, 0.4);
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) inset, 0 0 6px rgba(54, 137, 219, 0.4); }

/* the submit button */
/* column rules */
.bookings form .twocol {
  float: left;
  box-sizing: border-box;
  width: 48%;
  margin-right: 4%;
  margin-bottom: 4%;
  padding: 0; }
  .bookings form .twocol:nth-of-type(2n) {
    margin-right: 0%; }
  @media only screen and (max-width: 360px) {
    .bookings form .twocol {
      float: none;
      box-sizing: border-box;
      width: 100%;
      margin-right: 4%;
      margin-bottom: 4%;
      padding: 0; }
      .bookings form .twocol:nth-of-type(1n) {
        margin-right: 0%; } }
  .bookings form .twocol input[type="text"],
  .bookings form .twocol input[type="password"],
  .bookings form .twocol input[type="email"],
  .bookings form .twocol input[type="number"],
  .bookings form .twocol textarea {
    width: 96%;
    padding: 2%; }
    @media only screen and (max-width: 360px) {
      .bookings form .twocol input[type="text"],
      .bookings form .twocol input[type="password"],
      .bookings form .twocol input[type="email"],
      .bookings form .twocol input[type="number"],
      .bookings form .twocol textarea {
        width: 98%;
        padding: 1%; } }
.bookings form .fourcol {
  float: left;
  box-sizing: border-box;
  width: 23.5%;
  margin-right: 2%;
  margin-bottom: 2%;
  padding: 0; }
  .bookings form .fourcol:nth-of-type(4n) {
    margin-right: 0%; }

form ul li.twocol, form ul li.threecol, form ul li.fourcol, form ul li.fivecol {
  clear: none; }
