.contact-page .contact-intro {
  margin-bottom: var(--space-40);
}

.contact-page .contact-lead {
  margin: 0 0 var(--space-20);
  line-height: 1.8;
}

.contact-page .contact-note {
  margin-top: var(--space-20);
  padding: var(--space-16) var(--space-20);
  border: 1px solid #d8cda2;
  border-left: 4px solid var(--color-olive);
  background-color: #fffdf5;
}

.contact-page .contact-note p {
  margin: 0;
  padding-left: 1em;
  font-size: var(--fs-14);
  line-height: 1.8;
  text-indent: -1em;
}

.contact-page .contact-note p + p {
  margin-top: 8px;
}

.contact-page .contact-channels {
  margin-top: var(--space-20);
}

.contact-page .contact-phone-row {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 6px 14px;
  margin: 0;
}

.contact-page .contact-tel,
.contact-page .contact-fax {
  color: var(--color-accent-green);
  font-size: 30px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
}

.contact-page .contact-hours,
.contact-page .contact-closed {
  font-size: var(--fs-14);
}

.contact-page .contact-email {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-10);
  margin: 4px 0 0;
  color: var(--color-accent-green);
  font-size: var(--fs-18);
  font-weight: 700;
}

.contact-page .contact-email a {
  color: inherit;
  text-decoration: none;
}

@media (max-width: 640px) {
  .contact-page .contact-note {
    padding: var(--space-15);
  }

  .contact-page .contact-tel,
  .contact-page .contact-fax {
    font-size: var(--fs-20);
  }

  .contact-page .contact-phone-row {
    column-gap: var(--space-10);
  }

  .contact-page .contact-email {
    font-size: var(--fs-16);
  }
}
