.contact-section {
  max-width: 880px;
}
.contact-form {
  padding: clamp(16px, 4vw, 32px);
  background: var(--pale);
  border: 1px solid var(--line);
  border-radius: var(--radius);
}
.contact-fields {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}
.contact-fields label {
  display: block;
  font-weight: 650;
}
.contact-fields label span {
  font-weight: 400;
  font-size: .8rem;
}
.contact-fields input,
.contact-fields select,
.contact-fields textarea {
  display: block;
  width: 100%;
  min-height: 44px;
  margin-top: 5px;
  padding: 8px 10px;
  border: 1px solid #8a9ca4;
  border-radius: 6px;
  color: var(--ink);
  background: #fff;
  font: inherit;
  font-weight: 400;
}
.contact-fields textarea {
  resize: vertical;
}
.contact-message {
  grid-column: 1 / -1;
}
.contact-legal {
  margin-top: 16px;
  font-size: .8rem;
  color: var(--muted);
}
.contact-form button {
  border: 0;
  cursor: pointer;
}
.contact-form button:disabled {
  opacity: .7;
  cursor: wait;
}
.form-status {
  margin: 12px 0 0;
}
.form-status:empty {
  margin: 0;
}
@media (max-width: 650px) {
  .contact-fields {
    grid-template-columns: 1fr;
  }
}
