.contact-layout {
  width: min(680px, calc(100% - 40px));
  margin: 48px auto 64px;
}
.contact-layout h1 {
  font:
    400 clamp(36px, 5vw, 48px) / 1.2 Georgia,
    serif;
  color: #173f43;
  margin: 0 0 30px;
}
.contact-layout form {
  font-family: Arial, sans-serif;
}
.contact-layout .form-label {
  font:
    1rem/1.5 Arial,
    sans-serif;
  color: #173f43;
  margin-bottom: 8px;
}
.contact-layout .form-control {
  font:
    1rem/1.5 Arial,
    sans-serif;
  min-height: 48px;
  padding: 11px 13px;
  border-color: #bdcbc4;
  border-radius: 5px;
  background: #fffdf8;
}
.contact-layout .form-control:focus {
  border-color: #1b4b5a;
  box-shadow: 0 0 0 3px #1b4b5a18;
}
.contact-layout textarea {
  min-height: 160px;
  resize: vertical;
}
.contact-layout .btn-primary {
  font:
    1rem/1.5 Arial,
    sans-serif;
  min-height: 48px;
  background: #1b4b5a;
  border-color: #1b4b5a;
  margin-top: 8px;
}
.contact-layout .btn-primary:hover {
  background: #123a46;
}
.contact-layout :focus-visible {
  outline: 3px solid #98722e;
  outline-offset: 3px;
}
@media (max-width: 540px) {
  .contact-layout {
    margin: 30px auto 40px;
  }
}
