.contact-form-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 360px);
  gap: 28px;
  align-items: start;
}

.contact-form {
  display: grid;
  gap: 18px;
}

.contact-field {
  display: grid;
  gap: 7px;
}

.contact-field label {
  font-weight: 700;
}

.contact-field input,
.contact-field textarea {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid #b8c8d2;
  border-radius: 10px;
  padding: 12px 13px;
  font: inherit;
  background: #fff;
  color: #102f43;
}

.contact-field textarea {
  min-height: 180px;
  resize: vertical;
}

.contact-field input:focus,
.contact-field textarea:focus {
  outline: 3px solid rgba(15, 63, 98, .14);
  border-color: #0f3f62;
}

.contact-honeypot {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}

.contact-result {
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 10px;
  background: #edf3f6;
}

.contact-result[data-state="success"] {
  background: #edf7ef;
}

.contact-result[data-state="error"] {
  background: #fff0ef;
}

.contact-note p:last-child {
  margin-bottom: 0;
}

@media (max-width: 760px) {
  .contact-form-shell {
    grid-template-columns: 1fr;
  }
}
