.contact-page { max-width: 1600px; margin: auto; }
.contact-hero { display: grid; grid-template-columns: 1fr 1fr; min-height: 620px; background: #f5eee4; }
.contact-hero-copy { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 70px clamp(30px, 7vw, 115px); }
.contact-hero h1 { max-width: 630px; margin: 0 0 28px; color: var(--wine); font: 400 clamp(52px, 5.2vw, 82px)/1.1 var(--serif); letter-spacing: -.05em; }
.contact-hero-copy > p:not(.eyebrow) { max-width: 510px; margin: 0 0 35px; color: #5c514b; font-size: 16px; line-height: 1.85; }
.contact-hero-image { overflow: hidden; }
.contact-hero-image img { width: 100%; height: 100%; object-fit: cover; object-position: 50% 17%; }
.contact-options { display: grid; grid-template-columns: 1fr 1fr; gap: 80px; padding: 105px clamp(24px, 6vw, 95px); }
.contact-options h2, .contact-note h2 { max-width: 600px; margin: 0 0 25px; color: var(--wine); font-size: clamp(34px, 3.5vw, 56px); line-height: 1.2; }
.contact-options p:not(.eyebrow), .contact-note p:not(.eyebrow) { max-width: 510px; color: #5c514b; font-size: 15px; line-height: 1.85; }
.contact-links { align-self: center; border-top: 1px solid #cdbba8; }
.contact-links a { display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 108px; border-bottom: 1px solid #cdbba8; color: var(--wine); }
.contact-links a:hover { color: var(--gold); }
.contact-links strong { display: block; font: 400 23px/1.3 var(--serif); }
.contact-links small { display: block; margin-top: 7px; color: #74665d; font-size: 12px; line-height: 1.5; }
.contact-links .icon { width: 24px; height: 24px; }
.contact-note { padding: 90px clamp(24px, 6vw, 95px) 110px; background: #eee5d9; }
.contact-note h2 { max-width: 900px; }
@media (max-width: 760px) {
  .contact-hero { display: flex; flex-direction: column; }
  .contact-hero-image { order: -1; height: 62vw; max-height: 430px; }
  .contact-hero-copy { padding: 55px 24px 65px; }
  .contact-hero h1 { font-size: clamp(46px, 10vw, 66px); }
  .contact-hero-copy > p:not(.eyebrow) { font-size: 15px; }
  .contact-options { display: block; padding: 75px 24px; }
  .contact-links { margin-top: 40px; }
  .contact-note { padding: 70px 24px; }
}
