.contact-page{ background:#f6f3f0; }
.contact-hero{ padding:clamp(64px,9vw,104px) 0 56px; background:#f9f8f7; }
.contact-hero .wrap{ max-width:900px; }
.contact-kicker{ margin:0 0 12px; color:var(--ink); font-size:12px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.contact-hero h1{ margin:0 0 18px; font-size:clamp(42px,6vw,68px); line-height:1.04; letter-spacing:-.04em; }
.contact-hero p:last-child{ max-width:62ch; margin:0; color:var(--ink-soft); font-size:clamp(17px,1.8vw,20px); line-height:1.7; }
.contact-options-section{ padding:clamp(44px,7vw,76px) 0 clamp(68px,9vw,100px); }
.contact-options{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.contact-option{ display:flex; min-height:220px; flex-direction:column; align-items:flex-start; padding:clamp(24px,4vw,34px); border:1px solid var(--line); border-radius:12px; background:var(--white); transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.contact-option:hover{ transform:translateY(-3px); border-color:#b7c2ca; box-shadow:0 12px 28px rgba(154,148,142,.12); }
.contact-option:focus-visible{ outline:2px solid var(--rust); outline-offset:3px; }
.contact-option-label{ color:var(--ink-soft); font-size:11px; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.contact-option h2{ margin:12px 0 8px; font-size:clamp(24px,3vw,32px); }
.contact-option p{ max-width:45ch; margin:0 0 20px; color:var(--ink-soft); font-size:15px; line-height:1.65; }
.contact-option-action{ display:flex; justify-content:space-between; align-items:center; gap:12px; width:100%; margin-top:auto; padding-top:14px; border-top:1px solid var(--line); color:var(--ink); font-size:14px; font-weight:700; overflow-wrap:anywhere; }
.contact-option-action span{ flex:none; color:var(--rust); font-size:18px; }
@media(max-width:640px){
  .contact-options{ grid-template-columns:1fr; }
  .contact-option{ min-height:190px; }
}
