/* Shared public disclosures on the welcome page and application pages. */
.site-footer { flex-wrap: wrap; }
.site-footer > .footer-identity { flex: 1 1 280px; max-width: 420px; }
.public-info-links { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 36px; min-width: 0; }
.public-info-links > div { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; }
.public-info-links strong { color: #272b30; font-size: 13px; font-weight: 600; margin-bottom: 10px; }
.public-info-links a { display: flex; align-items: center; min-height: 36px; color: #535b63; font-size: 13px; line-height: 1.5; text-decoration: none; overflow-wrap: anywhere; }
.public-info-links a:hover, .site-registration a:hover { color: #1c2024; text-decoration: underline; text-underline-offset: 4px; }
.public-info-links a:focus-visible, .site-registration a:focus-visible { outline: 2px solid #343a40; outline-offset: 4px; }
.site-registration { flex: 0 0 100%; width: 100%; border-top: 1px solid #e1e4e6; padding-top: 22px; margin-top: 8px; color: #626970; text-align: center; font-size: 12px; line-height: 1.8; overflow-wrap: anywhere; }
.site-registration p { margin: 6px 0; }
.site-registration a { color: inherit; text-decoration: none; }
.welcome-public-info { padding-top: 28px; }
.welcome-footer .welcome-public-info .public-info-links { display: grid; max-width: 640px; margin: 0 auto 24px; }
.welcome-footer .welcome-public-info .public-info-links > div { align-items: center; }
.welcome-footer .site-registration { margin-top: 0; }
.legal-page { overflow-wrap: anywhere; }
.legal-page h2 { margin-top: 36px; }
.company-facts { margin: 24px 0; border-top: 1px solid #e1e4e6; }
.company-facts > div { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 20px; padding: 16px 0; border-bottom: 1px solid #e1e4e6; }
.company-facts dt { color: #626970; }
.company-facts dd { margin: 0; color: #272b30; }
.legal-details, .help-faq details { border-bottom: 1px solid #e1e4e6; padding: 16px 0; }
.legal-details summary, .help-faq summary { cursor: pointer; font-weight: 600; line-height: 1.7; }
#contact, #complaints, #faq { scroll-margin-top: 160px; }
.legal-related { font-size: 13px; line-height: 1.8; color: #626970; }
.privacy-page { max-width: 900px; }
.privacy-page section { scroll-margin-top: 170px; }
.privacy-page p, .privacy-list dd { line-height: 1.95; }
.privacy-summary { margin: 28px 0; padding: 22px 26px; background: #f3f4f5; border-left: 3px solid #343a40; border-radius: 4px; }
.privacy-summary ul { margin-bottom: 0; padding-left: 22px; line-height: 1.9; }
.privacy-toc { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 28px; margin: 28px 0 42px; }
.privacy-toc a { padding: 12px 0; border-bottom: 1px solid #e1e4e6; color: #343a40; line-height: 1.6; text-decoration: underline; text-underline-offset: 4px; }
.privacy-list { margin: 18px 0; }
.privacy-list > div { padding: 20px 0; border-bottom: 1px solid #e1e4e6; }
.privacy-list dt { font-weight: 650; color: #272b30; margin-bottom: 8px; }
.privacy-list dd { margin: 0; }
@media (max-width: 700px) {
  .privacy-toc { grid-template-columns: 1fr; }
  .privacy-summary { padding: 18px; }
  .site-footer > .footer-identity { flex-basis: auto; max-width: none; }
  .public-info-links { width: 100%; gap: 18px 12px; }
  .public-info-links a { min-height: 44px; font-size: 12px; }
  .site-registration { flex-basis: auto; }
  .company-facts > div { grid-template-columns: 1fr; gap: 6px; }
  .welcome-footer .welcome-public-info .public-info-links > div { align-items: flex-start; }
}
