form {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  padding: 1rem 0;

  label {
    display: block;
    color: $fs-color;
    font-family: $p-font;
    font-size: .85rem;
    font-weight: 300;
    margin: 1rem .75rem .25rem .25rem;
    text-transform: uppercase;

    sub {
      display: inline-block;
      font-size: .65rem;
      opacity: .65;
      padding: 0 0 0 .25rem;
    }
  }

  button,  
  textarea,
  input {
    width: 100%;
    color: $w-color;
    background: $b-color;
    font-family: $p-font;
    box-shadow: none;
  }

  textarea,
  input {
    font-size: 1rem;
    font-weight: 400;
    padding: .5rem 1rem;
    margin: .25rem 0;
    border: 1px solid $i-color;

    &:focus {
      border-color: $s-color;
      outline: .1rem solid $s-color;
    }

    &::placeholder {
      font-family: $p-font;
      font-size: 1rem;
      opacity: .4;
    }
  }

  textarea {
    min-height: 10rem;
    font-family: $p-font;
    padding: .75rem;
    resize: vertical;
  }

  .message {
    grid-column: 1;
  }

  button {
    grid-column: 1/3;
    font-size: .9rem;
    font-weight: 500;
    padding: .5rem 1rem .6rem 1rem;
    margin: 1.5rem 0 0 0;
    border: 1px solid $s-color;
    text-align: center;

    &:hover {
      cursor: pointer;
      background: $sh-color;
    }
  }
}

@media only screen and (max-width: 600px) {
  form {
    display: block;
  }
}