.contact-section > * { min-width: 0; }
.contact-intro > .text-link { margin-top: 18px; }
.contact-details > h2 { margin-bottom: 6px; }
.contact-detail { display: flex; align-items: flex-start; gap: 20px; padding-block: 28px; }
.contact-detail + .contact-detail { border-top: 1px solid var(--line); }
.contact-detail:last-child { padding-bottom: 0; }
.contact-detail .service-symbol { width: 48px; height: 48px; flex-shrink: 0; border-radius: 13px; margin: 0; }
.contact-detail .service-symbol svg { width: 27px; height: 27px; }
.contact-detail-copy { min-width: 0; }
.contact-detail h3 { font-size: .875rem; letter-spacing: 0; line-height: 1.4; color: var(--slate); margin: 0 0 8px; }
.contact-detail address { font-style: normal; }
.contact-detail a { display: inline-block; font-size: 1rem; line-height: 1.7; color: var(--ink); overflow-wrap: anywhere; }
.contact-detail a:hover { color: var(--blue); text-decoration: underline; text-underline-offset: 4px; }
@media(max-width:400px) {
  .contact-details { padding: 24px 20px; }
  .contact-detail { gap: 14px; }
  .contact-detail .service-symbol { width: 40px; height: 40px; border-radius: 11px; }
  .contact-detail .service-symbol svg { width: 24px; height: 24px; }
}
