/* Contact-only additions; no existing media, layout or scripts changed. */
.direct-contact { box-sizing: border-box; min-width: 0; margin: 24px 0; padding: 22px; border: 1px solid rgba(86, 220, 163, .36); border-radius: 12px; background: rgba(16, 35, 31, .72); color: var(--text, #f3f7f5); }
.direct-contact .direct-contact__heading { margin: 0 0 14px; color: var(--green, #56dca3); font-size: .9rem; font-weight: 750; line-height: 1.5; }
.direct-contact .direct-contact__list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; margin: 0; padding: 0; }
.direct-contact .direct-contact__item { min-width: 0; }
.direct-contact .direct-contact__item dt { color: var(--muted, #c0cbc6); font-size: .8rem; line-height: 1.55; margin: 0 0 7px; }
.direct-contact .direct-contact__item dd { min-width: 0; margin: 0; }
.direct-contact .direct-contact__value { display: inline-block; max-width: 100%; font-size: 1.04rem; font-weight: 700; line-height: 1.65; overflow-wrap: anywhere; }
.direct-contact a.direct-contact__value { color: var(--text, #f3f7f5); text-decoration: underline; text-decoration-color: rgba(86, 220, 163, .7); text-underline-offset: 5px; }
.direct-contact a.direct-contact__value:hover { color: var(--green, #56dca3); }
.direct-contact .direct-contact__value:focus-visible { outline: 2px solid var(--green, #56dca3); outline-offset: 5px; border-radius: 2px; }
.direct-contact .direct-contact__selectable { user-select: text; -webkit-user-select: text; -webkit-touch-callout: default; cursor: text; }
.direct-contact .direct-contact__note { display: block; margin-top: 7px; color: var(--muted, #c0cbc6); font-size: .71rem; line-height: 1.65; }
.direct-contact.direct-contact--hero { padding: 18px; margin-bottom: 0; }
.direct-contact.direct-contact--hero .direct-contact__list { grid-template-columns: 1fr; gap: 14px; }
.direct-contact.direct-contact--hero .direct-contact__item { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 12px; align-items: start; }
.direct-contact.direct-contact--hero .direct-contact__item dt { padding-top: 4px; margin-bottom: 0; }
@media (max-width: 760px) {
  .direct-contact .direct-contact__list { grid-template-columns: 1fr; gap: 20px; }
}
@media (max-width: 380px) {
  .direct-contact { padding: 18px; }
  .direct-contact.direct-contact--hero .direct-contact__item { grid-template-columns: 1fr; gap: 4px; }
}
