/* Páginas legales */
.legal { max-width: 860px; }
.legal h2 { font-size: clamp(21px, 0.6vw + 17px, 26px); margin-top: 44px; padding-top: 4px; }
.legal h2:first-child { margin-top: 0; }
.legal h3 { font-size: 18px; margin-top: 26px; }
.legal p, .legal li { color: var(--tx-2); }
.legal ul { padding-left: 22px; margin-bottom: 1em; display: grid; gap: 6px; }
.legal .stamp { display: inline-block; font-size: 14px; color: var(--gold-p); padding: 6px 12px; border-radius: 999px; border: 1px solid var(--line-strong); margin-bottom: 26px; }
.legal-numbered { counter-reset: sec; }
.legal-numbered h2 { counter-increment: sec; }
.legal-numbered h2::before { content: counter(sec) ". "; color: var(--gold-p); }
.legal table { width: 100%; border-collapse: collapse; margin: 12px 0 22px; font-size: 15px; }
.legal th, .legal td { text-align: left; padding: 12px 14px; border-bottom: 1px solid var(--line); vertical-align: top; }
.legal th { color: var(--tx); background: var(--bg-2); }
.table-wrap { overflow-x: auto; }
.consent-box { margin: 18px 0 8px; padding: 20px; border-radius: var(--r); border: 1px solid var(--line-strong); background: rgba(83, 68, 5, 0.38); }
.consent-box p { margin-bottom: 14px; }

.legal-layout { display: grid; gap: 32px; }
@media (min-width: 1024px) { .legal-layout { grid-template-columns: 260px 1fr; gap: 64px; align-items: start; } }
.legal-nav { border: 1px solid var(--line); border-radius: var(--r); background: rgba(64, 52, 3, 0.6); padding: 20px; }
@media (min-width: 1024px) { .legal-nav { position: sticky; top: 104px; } }
.legal-nav h2 { font-size: 14px; letter-spacing: .1em; text-transform: uppercase; color: var(--gold-p); margin: 0 0 12px; }
.legal-nav ol { list-style: none; display: grid; gap: 4px; }
.legal-nav a { display: block; padding: 8px 12px; border-radius: 8px; color: var(--tx-2); text-decoration: none; font-size: 15px; border-left: 2px solid transparent; }
.legal-nav a:hover { background: rgba(220, 191, 88, 0.08); color: var(--cream); }
.legal-nav a[aria-current="true"] { border-left-color: var(--lav); color: var(--lav-h); background: rgba(161, 146, 237, 0.08); }
