.contact-page .contact-intro { padding: clamp(4rem, 7vw, 7rem) 0 clamp(3rem, 5vw, 5rem); border-bottom: 1px solid var(--rule); }
.contact-page .contact-intro h1 { max-width: 14ch; color: var(--ink); font-family: Georgia, serif; font-size: clamp(3.1rem, 6vw, 6.5rem); font-weight: 400; letter-spacing: -.055em; line-height: 1.02; }
.contact-page .contact-intro h1 em { color: var(--clay); font-weight: 400; }
.contact-page .contact-intro p:last-child { max-width: 61ch; margin-top: 1.4rem; color: #4c5a50; font-size: 1.08rem; line-height: 1.7; }
.contact-page .contact-section { padding-top: clamp(3rem, 6vw, 6rem); }
.contact-page .contact-copy h2 { max-width: 13ch; }
.contact-page .contact-details { margin-top: 2rem; border-top: 1px solid var(--rule); }
.contact-page .contact-details a { padding: .85rem 0; border-bottom: 1px solid var(--rule); color: var(--ink); }
.contact-page .contact-details a:hover { color: var(--clay); }
.contact-page .contact-area { margin-top: 3rem; }
.contact-page .contact-area p:not(.eyebrow) { max-width: 43ch; color: #4c5a50; line-height: 1.6; }
.contact-page .contact-area .text-link { margin-top: 1rem; }
.contact-page .form-row textarea { min-height: 110px; padding: .68rem .75rem; border: 1px solid #cbd5e1; border-radius: 0; background: #fffefa; color: var(--ink); font: inherit; resize: vertical; }
.contact-page .form-row label span { color: #657167; font-size: .82rem; font-weight: 400; }
@media(max-width:700px) {
  .contact-page .contact-intro h1 { font-size: clamp(3rem, 11vw, 4rem); }
  .contact-page .contact-intro { padding-top: 3.2rem; }
}
