/* Contact area shared by all individual project pages. */
.project-page .project-contact {
  position: relative;
  clear: both;
  width: 100%;
  max-width: none;
  margin: clamp(64px, 8vw, 120px) 0 0;
  padding: clamp(52px, 5vw, 76px) clamp(24px, 5vw, 90px) clamp(70px, 7vw, 110px);
  border-top: 1px solid rgba(245,245,240,.22);
  box-sizing: border-box;
  color: #f5f5f0;
}
.project-page .project-contact .contact-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: clamp(56px, 8vw, 140px);
  align-items: start;
  max-width: 1080px;
  margin: 0 auto;
}
.project-page .project-contact .contact-heading h2 {
  position: relative;
  display: inline-block;
  margin: 0 0 36px;
  padding-bottom: 10px;
  font: 500 clamp(34px, 3.6vw, 54px)/1.1 'Instrument Sans',Arial,sans-serif;
  letter-spacing: -.045em;
}
.project-page .project-contact .contact-heading h2:after {
  content: '';position:absolute;bottom:0;left:0;right:0;height:1px;
  background:#dcb88f;
}
.project-page .project-contact .contact-availability,
.project-page .project-contact .contact-intro {
  font: 400 clamp(15px, 1.3vw, 18px)/1.6 'IBM Plex Mono',monospace;
  color: #c8c8c8;
  margin: 0;
}
.project-page .project-contact .contact-availability + .contact-availability { margin-top: 18px; color:#b9b9b7; }
.project-page .project-contact .contact-details { padding-top: 70px; min-width: 0; }
.project-page .project-contact .contact-links { display:flex; flex-direction:column; align-items:flex-start; gap:14px; margin-top:22px; }
.project-page .project-contact .contact-links a {
  position:relative; display:inline-block; max-width:100%;
  color:#f5f5f0; text-decoration:none; border-bottom:0 !important; padding-bottom:0;
  font:500 clamp(20px, 2.1vw, 27px)/1.25 'Instrument Sans',Arial,sans-serif;
  letter-spacing:-.035em;
  overflow-wrap:anywhere;
}
.project-page .project-contact .contact-links a:after {
  content:'';position:absolute;left:0;right:0;bottom:-6px;height:1px;
  background:#b99d7c; transition:background-color .25s ease;
}
.project-page .project-contact .contact-links a:hover:after,
.project-page .project-contact .contact-links a:focus-visible:after {background:#f4d6b1;}
@media (max-width:800px) {
  .project-page .project-contact {margin-top:48px;padding:48px 24px 65px;}
  .project-page .project-contact .contact-grid {grid-template-columns:1fr;gap:35px;}
  .project-page .project-contact .contact-details {padding-top:0;}
  .project-page .project-contact .contact-heading h2 {margin-bottom:25px;}
}
@media(prefers-reduced-motion:reduce) {
  .project-page .project-contact .contact-links a:after {transition:none;}
}

/* Distinguish the invitation from the muted descriptive paragraphs. */
.project-page .project-contact .contact-details > .contact-intro {
  color: #c8c8c8;
  font-size: clamp(17px, 1.45vw, 20px);
  font-weight: 400;
}
@media (max-width: 800px) {
  .project-page .project-contact .contact-details > .contact-intro {
    color: #f5f5f0;
    font-size: 18px;
  }
}
