/* Consulta legal pages (/privacidad, /terminos): a readable single column on white. */
body.legal { background: #fff; color: var(--ink); }
.legal header { border-bottom: 1px solid var(--line); }
.legal header .in, .legal main, .legal footer .in { max-width: 780px; margin: 0 auto; padding: 0 20px; }
.legal header .in { display: flex; align-items: center; gap: 12px; height: 62px; }
.legal .logo { display: inline-flex; align-items: center; gap: 10px; font: 600 20px var(--display); color: var(--ink); text-decoration: none; }
.legal .logo img { width: 28px; height: 28px; border-radius: 7px; }
.legal header .spacer { flex: 1; }
.legal header a.back { font: 600 14px var(--font); color: var(--ink2); text-decoration: none; }
.legal header a.back:hover { color: var(--accent); }
.legal main { padding-top: 40px; padding-bottom: 64px; }
.legal h1 { font-size: clamp(28px, 5vw, 38px); margin-bottom: 8px; }
.legal .meta { color: var(--ink3); font-size: 14px; margin-bottom: 18px; }
.legal .en-note { background: var(--surface2); border-radius: var(--r-sm); padding: 10px 14px; font-size: 13.5px; color: var(--ink2); margin-bottom: 26px; }
.legal .toc { border: 1px solid var(--line); border-radius: var(--r); padding: 14px 18px; margin-bottom: 30px; font-size: 14.5px; }
.legal .toc ol { margin: 6px 0 0; padding-inline-start: 20px; columns: 2; column-gap: 28px; }
@media (max-width: 600px) { .legal .toc ol { columns: 1; } }
.legal .toc a { text-decoration: none; }
.legal h2 { font-size: 22px; margin: 34px 0 10px; scroll-margin-top: 20px; }
.legal h3 { font-size: 17px; margin: 20px 0 6px; }
.legal p, .legal li { font-size: 15.5px; line-height: 1.65; color: var(--ink2); }
.legal ul, .legal ol { padding-inline-start: 22px; }
.legal li { margin-bottom: 6px; }
.legal b, .legal strong { color: var(--ink); }
.legal table { width: 100%; border-collapse: collapse; font-size: 14.5px; margin: 10px 0 16px; }
.legal th, .legal td { border: 1px solid var(--line); padding: 9px 11px; text-align: start; vertical-align: top; color: var(--ink2); }
.legal th { background: var(--surface2); color: var(--ink); font-weight: 600; }
.legal .tbl { overflow-x: auto; }
.legal footer { border-top: 1px solid var(--line); padding: 26px 0 36px; font-size: 14px; color: var(--ink3); }
.legal footer .in { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.legal footer a { color: var(--ink2); text-decoration: none; }
.legal footer a:hover { color: var(--accent); }
@media print { .legal header, .legal footer, .legal .toc { display: none; } }
