/* Contact page and thank-you page (forest green) */

.contact {
  flex: 1 1 auto; min-height: 0; width: 100%; max-width: 1600px; margin: 0 auto;
  padding: 4vh 32px 6vh; display: flex; flex-wrap: wrap; gap: 64px; align-items: stretch; align-content: flex-end;
  position: relative;
}

.contact__intro { flex: 1 1 460px; min-width: 0; display: flex; flex-direction: column; justify-content: space-around; gap: 28px; }
.contact__title {
  margin: 0; font-family: var(--display); font-weight: 800; color: var(--paper);
  font-size: clamp(64px, min(15vw, 20.5vh), 240px); line-height: .92; letter-spacing: -0.017em;
}
.contact__direct { display: flex; flex-direction: column; align-items: flex-start; gap: 14px; }
.contact__lead { margin: 0 0 18px; font-size: 23px; line-height: 1.45; color: var(--soft); max-width: 520px; }
.contact__label { margin: 0; font-family: var(--mono); font-size: 16px; color: var(--label-dark); }
.contact__email { font-size: 28px; line-height: 1.2; color: var(--paper); overflow-wrap: anywhere; }
.contact__email:hover { color: #fff; }
.contact__direct .pill { margin-top: 8px; }

.contact__form { flex: 1 1 460px; min-width: 0; max-width: 560px; display: flex; flex-direction: column; justify-content: flex-end; gap: 20px; }
.field { display: flex; flex-direction: column; gap: 8px; }
.field label { font-family: var(--mono); font-size: 16px; color: var(--label-dark); }
.field input, .field textarea {
  font-family: var(--serif); font-size: 20px; line-height: 1.4; color: var(--paper);
  padding: 14px 16px; border: 2px solid var(--label-dark); border-radius: 10px; background: transparent;
}
.field textarea { resize: none; }
.field input::placeholder, .field textarea::placeholder { color: #7f9e83; opacity: 1; }
.field input:focus, .field textarea:focus { border-color: var(--paper); }
.form__honeypot { position: absolute; left: -9999px; }
.form__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; }
.form__note { margin: 0; font-family: var(--mono); font-size: 13px; line-height: 1.5; color: var(--label-dark); max-width: 300px; }
.form__note a { color: inherit; }

/* thank-you page */
.thanks { flex: 1 1 auto; width: 100%; max-width: 1600px; margin: 0 auto; padding: 4vh 32px 8vh; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; gap: 28px; position: relative; }
.thanks .pill { margin-top: 8px; }

@media (max-width: 700px) {
  .contact, .thanks { padding: 3vh 20px 32px; gap: 40px; }
  .contact__title { font-size: clamp(56px, 17vw, 96px); }
  .contact__lead { font-size: 20px; }
  .contact__email { font-size: 22px; }
}
