/* Legal pages: /terms and /dpa (website contract §9). The v1.0 documents, word for word; formatting only. */
.legal-main { flex:1; padding:68px 0 0; }
.legal-doc { max-width:780px; margin:0 auto; padding:72px 48px 96px; color:#C9D6EA; font-size:17px; line-height:1.75; }
.legal-doc h1 { font-family:'Rajdhani',sans-serif; font-size:48px; font-weight:700; line-height:1.08; color:#fff; }
.legal-doc .legal-version { margin-top:12px; padding-bottom:28px; border-bottom:1px solid var(--border); font-size:15px; letter-spacing:.02em; color:var(--footer-text); }
.legal-doc h2 { font-family:'Rajdhani',sans-serif; font-size:27px; font-weight:700; line-height:1.2; color:#fff; margin:48px 0 14px; scroll-margin-top:88px; }
.legal-doc h3 { font-size:15px; font-weight:600; letter-spacing:.06em; text-transform:uppercase; color:var(--cyan); margin:30px 0 8px; }
.legal-doc p { margin:0 0 16px; }
.legal-doc .legal-version + p { margin-top:28px; }
.legal-doc strong { color:#fff; font-weight:600; }
.legal-table-wrap { margin:20px 0 28px; overflow-x:auto; border:1px solid var(--border2); border-radius:10px; }
.legal-table-wrap:focus-visible { outline:2px solid var(--cyan); outline-offset:2px; }
.legal-table { width:100%; border-collapse:collapse; font-size:15px; line-height:1.6; }
.legal-table th, .legal-table td { padding:12px 14px; text-align:left; vertical-align:top; border-bottom:1px solid var(--border); }
.legal-table th { background:var(--bg2); color:#fff; font-weight:600; }
.legal-table tr:last-child td { border-bottom:none; }
.legal-table td:first-child { color:#fff; font-weight:500; white-space:nowrap; }
.legal-table td p { margin:0 0 8px; } .legal-table td p:last-child { margin:0; }
@media (max-width:900px) {
  .legal-doc { padding:44px 20px 64px; font-size:16px; }
  .legal-doc h1 { font-size:34px; }
  .legal-doc h2 { font-size:23px; margin-top:38px; }
  .legal-table { min-width:640px; font-size:14px; }
}
