#contact {
  background: var(--ink);
}

#contact h2 { color: var(--paper); }

.contact-inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: var(--space-8);
  padding-block: clamp(var(--space-16), 9vw, var(--space-32));
}

.contact-heading-wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-5);
  max-width: 640px;
}

.contact-heading-wrap .section-heading { margin-bottom: 0; }

.contact-subtitle {
  font-size: var(--text-lg);
  color: rgba(250, 246, 240, 0.7);
  max-width: 50ch;
  line-height: 1.65;
}

.contact-open-label {
  font-size: var(--text-xs);
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--emerald);
  text-align: center;
}

.contact-tags {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
  justify-content: center;
  max-width: 620px;
}

.contact-tags .tag--emerald {
  border-color: rgba(228, 236, 231, 0.25);
  color: rgba(228, 236, 231, 0.85);
}

.contact-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-3);
  justify-content: center;
}

.contact-buttons .btn-outline {
  border-color: rgba(250, 246, 240, 0.28);
  color: var(--paper);
}

.contact-buttons .btn-outline:hover {
  background: rgba(250, 246, 240, 0.08);
  border-color: var(--paper);
}

.contact-footer {
  margin-top: var(--space-6);
  font-size: var(--text-xs);
  color: rgba(250, 246, 240, 0.45);
  letter-spacing: 0.04em;
}

@media (max-width: 639px) {
  .contact-buttons {
    flex-direction: column;
    align-items: center;
    width: 100%;
  }
  .contact-buttons .btn {
    width: 100%;
    justify-content: center;
    max-width: 300px;
  }
}
