.contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr);
  gap: 8%;
  align-items: start;
  padding-bottom: 85px;
}
.contact-card {
  min-width: 0;
  padding: clamp(25px, 3.3vw, 46px);
  background: var(--paper);
  border: 1px solid #e4cbb9;
  border-top: 3px solid var(--accent-orange);
}
.contact-card .eyebrow { margin-bottom: 24px; }
.contact-number {
  display: inline-block;
  font-family: Georgia, 'Times New Roman', serif;
  font-size: clamp(34px, 4.7vw, 64px);
  line-height: 1.2;
  letter-spacing: -.045em;
  white-space: nowrap;
}
.contact-number:hover { text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 7px; }
.contact-card > p:not(.eyebrow) {
  font-size: 15px;
  line-height: 1.8;
  color: var(--muted);
  margin: 25px 0 29px;
  max-width: 390px;
}
.contact-call { background: var(--accent-orange); color: var(--accent-ink); min-width: 160px; }
.contact-call:hover { background: var(--accent-orange-hover); }
.contact-preparation .eyebrow { margin: 7px 0 22px; }
.contact-preparation h2 { font-size: clamp(35px, 3.6vw, 50px); }
.contact-preparation ul { list-style: none; padding: 0; margin: 27px 0; }
.contact-preparation li { font-size: 14px; color: var(--muted); line-height: 1.7; padding: 13px 0; border-bottom: 1px solid var(--line); }
.contact-preparation .text-link { display: flex; width: fit-content; margin-top: 17px; }
@media (max-width: 800px) {
  .contact-layout { grid-template-columns: 1fr; gap: 40px; padding-bottom: 60px; }
  .contact-number { font-size: clamp(34px, 7.4vw, 58px); }
  .contact-preparation { max-width: 600px; }
}
@media (max-width: 600px) {
  .contact-layout { gap: 35px; padding-bottom: 50px; }
  .contact-preparation h2 { font-size: 39px; }
  .contact-card > p:not(.eyebrow) { font-size: 14px; }
}
