input, textarea {
    margin: 10px 0;
    padding: 10px;
    width: 100%;
}

input.wpcf7-not-valid, textarea.wpcf7-not-valid {
    margin-bottom: 0;
}

input[type="date"]
{
    display:block;
    -webkit-appearance: textfield;
    -moz-appearance: textfield;
    min-height: 1.2em;
    min-width: 95%;
}

.button, button, input[type="submit"] {
    border: none;
    display: table;
    outline: none;
    background-color: var(--primary);
    color: #fff;

    padding: 12px 17px;
    width: initial;
    transition: all 300ms;
    text-decoration: none;
}

form .button, form button, form input[type="submit"] {
    margin: 0 auto;
}

.button:hover, button:hover, input[type="submit"]:hover {
    /*background-color: var(--highlight);*/
    color: #fff;
    cursor: pointer;

    box-shadow: inset 200px 0 0 0 var(--highlight);
}


form {
    margin: 0 auto;
    max-width: 960px;
}

form p {
    margin: 0;
}

.checkboxcol{
    align-items: center;
    display: flex;
}

input[type='checkbox']{
    width: initial;
}


input[type='checkbox'] {
    position: absolute;
    opacity: 0;
}

input[type='checkbox'] + span {
   position: relative;
   cursor: pointer;
   padding: 0;
}


input[type='checkbox'] + span:before {
    border: 1px solid var(--primary);
      content: '';
      margin-right: 10px;
      display: inline-block;
      vertical-align: text-top;
      width: 20px;
      height: 20px;
      background: white;
  }

input[type='checkbox']:hover + span:before {
       background: #B0CED9;
}


input[type='checkbox']:checked + span:before {
       background: #B0CED9;
}


input[type='checkbox']:checked + span:after {
       content: '';
       position: absolute;
       left: 5px;
       top: 9px;
       background: white;
       width: 2px;
       height: 2px;
       box-shadow:
               2px 0 0 white,
               4px 0 0 white,
               4px -2px 0 white,
               4px -4px 0 white,
               4px -6px 0 white,
               4px -8px 0 white;
       transform: rotate(45deg);
   }
}