.public-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 20px;font-size:12px;color:#526c80;line-height:1.6;padding:16px 24px}
.legal-links{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:12px;line-height:1.6}
.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px 18px}
.legal-link-short{display:none}
.public-footer a,.legal-links a,.privacy-form-note a{color:#245b86;text-underline-offset:3px}
.public-footer a:focus-visible,.legal-links a:focus-visible{outline:3px solid #ffcf59;outline-offset:4px;border-radius:2px}
.home-layout .public-footer{flex:none;padding:10px 26px 14px;background:#f4f8fc;font-size:10px;gap:6px}
.home-layout .public-footer .legal-links{font-size:10px;gap:12px}
.home-layout .public-footer .footer-links{gap:6px 12px}
.privacy-form-note{font-size:13px;line-height:1.7;color:#526c80;margin:16px 0 0}
.legal-page{margin:0;background:#f4f8fc;color:#173f5f;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.75}
.legal-page{--public-shell-width:928px;--public-shell-gutter:24px}
.request-page{--public-shell-width:960px;--public-shell-gutter:18px}
.legal-shell{box-sizing:border-box;width:100%;max-width:var(--public-shell-width);margin:auto;padding:32px var(--public-shell-gutter) 48px}
.request-page .request-shell{width:100%;max-width:var(--public-shell-width);padding-left:var(--public-shell-gutter);padding-right:var(--public-shell-gutter)}
.legal-shell h1{font-size:clamp(28px,5vw,40px);line-height:1.2;margin:12px 0 18px;letter-spacing:-1px}
.legal-shell h2{font-size:20px;line-height:1.4;margin:0 0 10px}
.legal-shell p{margin:0 0 14px}.legal-shell p:last-child{margin-bottom:0}
.legal-shell a{color:#245b86;text-underline-offset:3px;overflow-wrap:anywhere}
.legal-section{padding:24px;background:white;border:1px solid #dce6ef;border-radius:12px;margin-top:16px}
.legal-intro{font-size:16px;color:#526c80}.legal-draft{padding:16px 20px;background:#fff4cc;border:1px solid #e4c979;border-radius:10px;color:#594200;margin:20px 0}
.legal-table-wrap{overflow-x:auto}.legal-table{border-collapse:collapse;width:100%;font-size:14px}
.legal-table th,.legal-table td{padding:12px;text-align:left;vertical-align:top;border-bottom:1px solid #dce6ef}.legal-table th{background:#f4f8fc}
.legal-page .public-footer,.request-page .public-footer{box-sizing:border-box;width:calc(100% - 2 * var(--public-shell-gutter));max-width:calc(var(--public-shell-width) - 2 * var(--public-shell-gutter));margin:0 auto;padding:16px 0;border-top:1px solid #dce6ef}
.legal-back{font-size:13px}.legal-address{font-style:normal}
@media(max-width:700px){.request-page{--public-shell-gutter:12px}}
@media(max-width:600px){.legal-page{--public-shell-gutter:16px}.legal-shell{padding:24px var(--public-shell-gutter) 32px}.legal-section{padding:20px}.public-footer{padding:16px}}

body.legal-page{display:flex;flex-direction:column;height:100vh;height:100dvh;min-height:0;overflow:hidden}
.legal-page>.public-header{flex:none;position:relative;z-index:100}
.legal-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scroll-padding-top:20px}
@media print{body.legal-page{display:block;height:auto;overflow:visible}.legal-scroll{overflow:visible;height:auto}}
@media(max-width:600px){
  .public-footer,.home-layout .app .public-footer{justify-content:center;gap:6px 16px;padding:4px 14px max(4px,env(safe-area-inset-bottom));font-size:11px}
  .legal-page .public-footer,.request-page .public-footer{padding:4px 0 max(4px,env(safe-area-inset-bottom))}
  .public-footer .legal-links,.home-layout .app .public-footer .legal-links{gap:16px;font-size:11px}
  .public-footer .footer-links{gap:6px 16px}
  .home-layout .app .public-footer .footer-links{gap:2px 8px}
  .public-footer a,.home-layout .app .public-footer a{display:inline-flex;align-items:center;min-height:32px;text-decoration:none}
  .public-footer a:hover{text-decoration:underline}
  .public-footer .legal-link-full{display:none}
  .public-footer .legal-link-short{display:inline}
}
