/* Binary contact values share the site's mono typography and pixel icon language. */
.sj-contact-reveal { min-width: 0; max-width: 100%; }
.sj-contact-reveal [hidden] { display: none !important; }
body .sj-contact-details .sj-contact-reveal button[data-sj-contact-trigger] { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; max-width: 100%; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; color: var(--color-navy); font: inherit; font-family: var(--font-body); font-weight: 500; line-height: 1.7; text-align: left; text-decoration: none; box-shadow: none; cursor: pointer; touch-action: pan-y; user-select: none; -webkit-user-select: none; -webkit-touch-callout: none; }
body .sj-contact-details .sj-contact-reveal button[data-sj-contact-trigger]:is(:hover, :focus, :active) { background: none; color: var(--color-navy); box-shadow: none; }
body .sj-contact-details .sj-contact-reveal button[data-sj-contact-trigger]:focus-visible { outline: 2px solid var(--color-forest); outline-offset: 5px; }
.sj-contact-reveal .sj-icon { flex: 0 0 24px; width: 24px; height: 24px; color: var(--color-forest); font-size: 24px; line-height: 1; }
.sj-contact-reveal [data-sj-contact-value] { display: inline-block; width: calc(var(--sj-contact-characters, 21) * 1ch); max-width: 100%; white-space: pre; font-variant-numeric: tabular-nums; }
.sj-contact-reveal[data-state=masked] [data-sj-contact-value], .sj-contact-reveal[data-state=error] [data-sj-contact-value] { color: var(--color-forest); }
.sj-contact-reveal[data-state=revealed] [data-sj-contact-value] { text-decoration: underline; text-underline-offset: .2em; }
.sj-contact-reveal [data-sj-contact-hint] { min-height: 3.4em; margin: 10px 0 0; font-size: 12px; line-height: 1.7; }
.sj-contact-reveal [data-sj-contact-status] { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.sj-contact-reveal .sj-contact-manual { display: block; width: 100%; min-width: 0; margin-top: 8px; padding: 10px; border: 1px solid var(--sj-rule-ink); border-radius: 0; background: var(--color-white); color: var(--color-navy); font: inherit; }
@media (forced-colors: active) {
  body .sj-contact-details .sj-contact-reveal button[data-sj-contact-trigger] { color: ButtonText; }
  .sj-contact-reveal .sj-icon, .sj-contact-reveal [data-sj-contact-value] { color: ButtonText; }
}
