.wpcf7 form { max-width:100% }

.wpcf7 input,
.wpcf7 textarea,
.wpcf7 select {
  width:100%;
  box-sizing:border-box;
  padding:10px 12px;
  border:2px solid #252525;
  border-radius:0px;
  background:#ffffff;
  color:#000000;
  font-size:1.25rem;
}

.wpcf7 input:focus,
.wpcf7 textarea:focus,
.wpcf7 select:focus {
  border-color:#000000;
  box-shadow:0 4px 12px rgba(17,17,17,0.04);
}

.wpcf7 p, .wpcf7 .cf-field { margin:0 0 12px; }
.wpcf7 input[type="submit"],
.wpcf7 button[type="submit"] {
  padding:10px 16px;
  background:#252525;
  color:#ffffff;
  border:none;
  border-radius:0px;
  font-weight:600;
  cursor:pointer;
  transition:opacity .12s ease, transform .08s ease;
}

.wpcf7 input[type="submit"]:hover { opacity:.92 }

.wpcf7 form .wpcf7-response-output {
    margin: 1em 0em 1em;
    padding: 0.2em 0.5em;
    border: 2px solid #1a4a5a; /* Blue */
}
 
.wpcf7 form.init .wpcf7-response-output {
    display: none;
}
 
.wpcf7 form.sent .wpcf7-response-output {
    border-color: #416a59; /* Green */
}
 
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
    border-color: #f44242; /* Red */
}
 
.wpcf7 form.spam .wpcf7-response-output {
    border-color: #f44242; /* Orange */
}
 
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output {
    border-color: #f44242; /* Yellow */
}

.wpcf7-not-valid-tip {
    color: #f44242;
    font-size: 0.75em;
    font-weight: normal;
    display: block;
}