/* Páginas legales (aviso legal, privacidad, cookies). Texto largo en una columna legible, con los tokens de estilos.css. */
.legal { padding-bottom: var(--sec); }
.legal-texto { max-width: 46rem; }
@media (min-width: 900px) { .legal-texto { grid-column: 1 / span 8; } }
.legal-texto > section { padding-top: var(--s-4); }
.legal-texto > section:first-child { padding-top: 0; }
.legal-texto h2 { margin: 0 0 var(--s-2); font-size: var(--t-1); font-weight: 500; line-height: 1.25; }
.legal-texto h3 { margin: var(--s-3) 0 var(--s-1); font-size: var(--t-0); font-weight: 500; }
.legal-texto p, .legal-texto li { max-width: 68ch; }
.legal-texto p + p, .legal-texto p + ul, .legal-texto ul + p, .legal-texto p + .legal-tabla { margin-top: var(--s-2); }
.legal-texto ul { list-style: disc; padding-left: 1.25em; }
.legal-texto li + li { margin-top: 8px; }
.legal-texto li::marker { color: var(--signal); }
.legal-texto a { text-decoration-color: var(--signal); text-underline-offset: 3px; }
.legal-texto a:hover { text-decoration-thickness: 2px; }
.legal-texto code { font: 500 .875em/1.4 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; background: var(--grid); padding: 1px 6px; border-radius: 3px; overflow-wrap: anywhere; }

/* datos del titular */
.legal-datos { display: grid; grid-template-columns: max-content 1fr; gap: 6px var(--s-3); margin-top: var(--s-2); padding: var(--s-2) 0; border-block: 1px solid var(--line); }
.legal-datos dt { color: var(--muted); font-size: var(--t-small); }
.legal-datos dd { margin: 0; overflow-wrap: anywhere; }
@media (max-width: 479px) { .legal-datos { grid-template-columns: 1fr; gap: 0; } .legal-datos dd { margin-bottom: 10px; } }

/* inventario de cookies */
.legal-tabla { overflow-x: auto; -webkit-overflow-scrolling: touch; border-block: 1px solid var(--line); }
.legal-tabla table { width: 100%; min-width: 34rem; border-collapse: collapse; font-size: var(--t-small); }
.legal-tabla th, .legal-tabla td { padding: 10px 12px 10px 0; text-align: left; vertical-align: top; border-bottom: 1px solid var(--line); }
.legal-tabla th { font-weight: 500; color: var(--muted); font-size: var(--t-cap); }
.legal-tabla tr:last-child td { border-bottom: 0; }

.legal-fecha { margin-top: var(--s-4); padding-top: var(--s-2); border-top: 1px solid var(--line); color: var(--muted); font-size: var(--t-small); }
