.contact-page-hero { position: relative; padding: 190px 0 112px; overflow: hidden; border-bottom: 1px solid rgba(244, 246, 241, .12); }
.contact-page-hero::before { position: absolute; top: 0; right: 0; width: min(52vw, 760px); height: 100%; background: radial-gradient(circle at 62% 42%, rgba(185, 243, 91, .13), transparent 36%), linear-gradient(135deg, transparent 30%, rgba(158, 196, 255, .055)); content: ''; pointer-events: none; }
.contact-page-hero-inner { position: relative; z-index: 1; display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 12%; }
.contact-page-copy h1 { max-width: 760px; margin-bottom: 30px; font-size: clamp(2.8rem, 4.8vw, 5.2rem); }
.contact-page-copy h1 em { color: #d7e8c4; }
.contact-page-copy > p:not(.eyebrow):not(.breadcrumb) { max-width: 570px; margin: 0; color: rgba(244, 246, 241, .73); font-size: 17px; line-height: 1.7; }
.contact-page-signal { justify-self: end; width: min(100%, 350px); padding: 25px 0 0; border-top: 1px solid rgba(244, 246, 241, .3); }
.contact-page-signal > span { display: block; margin-bottom: 23px; color: var(--lime); font-size: 9px; font-weight: 700; letter-spacing: .17em; text-transform: uppercase; }
.contact-page-signal strong { display: block; margin-bottom: 27px; color: var(--paper); font-family: var(--serif); font-size: 28px; font-weight: 500; letter-spacing: -.05em; line-height: 1.03; }
.contact-page-signal ul { display: grid; gap: 11px; margin: 0; padding: 17px 0 0; border-top: 1px solid rgba(244, 246, 241, .18); list-style: none; }
.contact-page-signal li { color: rgba(244, 246, 241, .58); font-size: 11px; }
.contact-page-signal li::before { display: inline-block; width: 5px; height: 5px; margin: 0 9px 2px 0; border-radius: 50%; background: var(--lime); content: ''; }
.contact-page-form { padding: 126px 0 145px; }
.contact-page-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 13%; align-items: start; }
.contact-page-intro { padding-top: 7px; }
.contact-page-intro h2 { margin-bottom: 24px; font-size: clamp(2.25rem, 3.4vw, 3.8rem); }
.contact-page-intro h2 em { color: #6d8b60; }
.contact-page-intro > p:not(.eyebrow) { max-width: 350px; color: var(--muted); font-size: 14px; line-height: 1.7; }
.contact-page-list { display: grid; gap: 0; margin-top: 46px; border-top: 1px solid var(--line); }
.contact-page-list div { padding: 16px 0; border-bottom: 1px solid var(--line); }
.contact-page-list strong { display: block; margin-bottom: 3px; font-family: var(--serif); font-size: 17px; font-weight: 500; }
.contact-page-list span { color: var(--muted); font-size: 11px; }
.contact-page-form .contact-form { padding: 36px; }
.contact-page-form .form-submit p { max-width: 270px; }
.contact-page-privacy { margin: 23px 0 0; color: var(--muted); font-size: 10px; line-height: 1.5; }
.contact-page-privacy a { color: #526a59; text-decoration: underline; text-underline-offset: 3px; }

@media (max-width: 760px) {
  .contact-page-hero { padding: 155px 0 85px; }
  .contact-page-hero-inner { display: block; }
  .contact-page-copy h1 { font-size: clamp(2.7rem, 11vw, 3.9rem); }
  .contact-page-copy > p:not(.eyebrow):not(.breadcrumb) { font-size: 15px; }
  .contact-page-signal { width: 100%; margin-top: 58px; }
  .contact-page-form { padding-block: 82px 95px; }
  .contact-page-grid { display: block; }
  .contact-page-intro { margin-bottom: 52px; }
  .contact-page-intro h2 { font-size: 2.4rem; }
  .contact-page-form .contact-form { padding: 22px 18px; }
}
