.required {
  color: red;
}

.success,
.error {
  padding: 1em;
  margin-bottom: 1em;
  background-color: #f9f9f9;
}

.contact .success {
  border-left: 6px solid #393;
  color: #363;
}

.contact .error {
  border-left: 6px solid #c33;
  color: #a33;
}

.contact .error ul {
  padding-left: 0;
  list-style: none;
}

.contact .form-group {
  margin-bottom: 1em;
}

.contact label {
  margin-bottom: 0.5em;
}

.contact input,
.contact textarea {
  width: 100%;
  padding: 0.8em;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 1em;
  box-sizing: border-box;
}

.contact textarea {
  resize: vertical;
}

.contact .submit-btn {
  width: 100%;
  padding: 0.8em;
  background-color: #333;
  color: #fff;
  border: none;
  border-radius: 4px;
  font-size: 1em;
  cursor: pointer;
  transition: background-color 0.3s;
}

.contact .submit-btn:hover {
  background-color: #555;
}

.contact > p {
  text-align: center;
  margin-bottom: 1em;
}
