 

.contact-intro { padding-block: clamp(56px, 9vw, 96px) clamp(32px, 5vw, 48px); }
.contact-avatar { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; margin: 0 auto 24px; box-shadow: 0 0 0 4px var(--bg), 0 0 0 5px var(--line); }
.contact-intro .lede { max-width: 540px; margin: 16px auto 0; }

.contact-card { max-width: 600px; margin-inline: auto; padding: clamp(18px, 4vw, 36px); }
.contact-form { --gap: 20px; }
.contact-topic { border: 0; margin: 0; padding: 0; min-width: 0; }
.contact-row { display: grid; gap: 20px; }
@media (min-width: 560px) { .contact-row { grid-template-columns: 1fr 1fr; } }
.contact-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-top: 4px; }
@media (max-width: 479px) {
  .contact-actions { flex-direction: column; align-items: stretch; text-align: center; }
  .contact-actions .btn { width: 100%; }
}

.contact-done { text-align: center; padding-block: 32px; display: flex; flex-direction: column; align-items: center; gap: 8px; }
.contact-done__check {
  width: 56px; height: 56px; border-radius: 50%; margin-bottom: 8px;
  display: flex; align-items: center; justify-content: center;
  background: color-mix(in srgb, var(--success) 14%, transparent); color: var(--success);
}
.contact-done__check i { font-size: 30px; }
.contact-done .arrow-link { margin-top: 12px; }

.contact-note .prose { margin-top: 16px; }
.contact-sign { margin-top: 20px; font-weight: 600; color: var(--text); }
.contact-address { margin-top: 48px; text-align: center; }
