/* Static contact details remain usable before site.js loads or without JavaScript. */
.recovery-direct-contact { margin-top: 16px; padding: 12px 14px; border: 1px solid #b8d8ce; border-radius: 10px; background: #f4faf7; color: #244b3e; }
.recovery-direct-contact p { margin: 0 0 8px; font-size: 13px; line-height: 1.65; }
.recovery-direct-contact .recovery-direct-number { display: flex; flex-wrap: wrap; align-items: center; column-gap: 10px; font-weight: 600; }
.recovery-direct-number a { display: inline-flex; align-items: center; min-height: 44px; font-size: 23px; font-weight: 750; color: #076b51; text-decoration: underline; text-underline-offset: 4px; white-space: nowrap; }
.recovery-direct-qr summary { min-height: 44px; box-sizing: border-box; padding: 10px 0; cursor: pointer; font-size: 14px; font-weight: 600; }
.recovery-direct-qr figure { margin: 8px 0; }
.recovery-direct-qr img { display: block; width: min(100%, 240px); height: auto; margin: 0 auto; background: #fff; }
.recovery-direct-qr figcaption { text-align: center; font-size: 13px; }
.recovery-direct-qr figcaption a { display: inline-flex; align-items: center; min-height: 44px; color: #076b51; text-decoration: underline; }
.recovery-direct-contact a:focus-visible, .recovery-direct-qr summary:focus-visible { outline: 3px solid #076b51; outline-offset: 3px; }
@media (min-width: 901px) {
  /* An expanded QR panel can be taller than the viewport: allow normal page scrolling. */
  .recovery-copy:has(.recovery-direct-qr[open]) { position: static; }
}
