/* Hero image — same pattern as about page */
.contact-hero-wrap {
  position: relative; width: 100%; line-height: 0;
  margin-top: var(--nav-h);
}
.contact-hero-img {
  width: 100%; aspect-ratio: 16/9;
  object-fit: cover; display: block;
  background: var(--surface);
}
.contact-hero-skeleton {
  width: 100%; aspect-ratio: 16/9;
  display: block; margin-top: var(--nav-h);
}

/* Intro — left-aligned starting from centre, same as about-intro */
.contact-intro {
  padding: 4rem var(--pad) 3rem;
  padding-left: 50%;
}
.contact-headline {
  font-size: clamp(2.2rem, 5vw, 4rem);
  font-weight: 700; line-height: 1.1;
  letter-spacing: -0.035em;
  color: var(--text); margin-bottom: 1.5rem;
  text-wrap: balance;
}
.contact-subtext {
  font-size: 1.25rem;
  font-weight: 400; line-height: 1.5;
  color: var(--text);
  letter-spacing: -0.01em;
}
.contact-subtext + .contact-subtext { margin-top: 1rem; }

/* Contact link list — left edge matches intro */
.contact-list {
  padding: 0 var(--pad) 5rem 50%;
}
.contact-row {
  display: flex; align-items: center;
  justify-content: space-between;
  padding: 1.4rem 0;
  border-top: 1px solid var(--border);
  text-decoration: none;
  color: var(--text);
  transition: color var(--t);
  cursor: pointer;
}
.contact-row:last-child { border-bottom: 1px solid var(--border); }
.contact-row__label {
  font-size: clamp(1.1rem, 2.2vw, 1.6rem);
  font-weight: 400; letter-spacing: -0.01em;
  transition: color var(--t);
}
.contact-row--primary .contact-row__label { font-weight: 700; }
.contact-row__arrow {
  font-size: 1.2rem;
  transition: transform 0.2s ease, color var(--t);
  flex-shrink: 0;
  margin-left: 1rem;
}
.contact-row:hover .contact-row__arrow {
  transform: translate(4px, -4px);
}
.contact-row:hover { color: var(--text); opacity: 0.75; }

/* Responsive */
@media (max-width: 900px) {
  .contact-intro { padding-left: 35%; }
  .contact-list { padding-left: 35%; }
}
@media (max-width: 600px) {
  .contact-intro { padding: 3rem var(--pad) 2rem; }
  .contact-list { padding: 0 var(--pad) 4rem; }
  .contact-row { padding: 1.1rem 0; }
  .contact-subtext { font-size: 1rem; line-height: 1.5; }
}
