/* Shared legal navigation and readable public information pages. */
.legal-links { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 24px; padding:20px 16px; font:400 13px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.legal-links a { color:inherit; text-underline-offset:4px; }
.legal-links a:focus-visible,.legal-page a:focus-visible { outline:3px solid #3971c9; outline-offset:4px; }
.legal-app-footer { position:relative; color:#edf1fa; background:#182235; }
.legal-page { margin:0; background:#f5f3ee; color:#182235; font:400 17px/1.7 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.legal-header { display:flex; flex-wrap:wrap; justify-content:space-between; gap:16px; padding:24px max(24px,calc((100vw - 900px)/2)); border-bottom:1px solid #d7d8da; }
.legal-header a { color:inherit; font-weight:800; text-decoration:none; }
.legal-header span,.legal-date { color:#566172; font-size:14px; }
.legal-page main { max-width:820px; margin:auto; padding:48px 24px; overflow-wrap:anywhere; }
.legal-kicker { color:#355f9b; font-size:12px; font-weight:750; letter-spacing:.14em; }
.legal-page h1 { font-size:clamp(30px,6vw,52px); line-height:1.12; letter-spacing:-.035em; }
.legal-page h2 { margin:0 0 12px; font-size:22px; line-height:1.3; }
.legal-page section { margin-top:36px; }
.legal-page p { margin:12px 0; }
.legal-page a { color:#245494; }
.legal-page code { font-size:.85em; }
.legal-page footer { border-top:1px solid #d7d8da; }
