.legal-page { display: block; height: auto; overflow: visible; margin: 0; color: var(--text-primary); background: var(--dark-bg); font: 1rem/1.75 var(--font-body); overflow-wrap: anywhere; }
.legal-page *, .legal-page *::before, .legal-page *::after { box-sizing: border-box; }
.legal-page :is(header, main, footer) { width: min(75ch, calc(100% - 2rem)); margin-inline: auto; padding-block: var(--espacio-6); }
.legal-page h1 { font-size: clamp(1.75rem, 5vw, 2.75rem); line-height: 1.25; }
.legal-page h2 { margin-top: var(--espacio-7); font-size: 1.4rem; line-height: 1.4; }
.legal-page h3 { font-size: 1.15rem; }
.legal-page p, .legal-page dd { margin-block: var(--espacio-4); color: var(--text-primary); }
.legal-page dd { margin-left: var(--espacio-4); }
.legal-page dt { margin-top: var(--espacio-5); font-weight: 700; }
.legal-page nav { display: flex; flex-wrap: wrap; gap: var(--espacio-3) var(--espacio-5); margin-top: var(--espacio-4); }
.legal-page a { color: var(--primary-light); text-decoration: underline; text-underline-offset: .2em; }
.legal-page a:focus-visible { outline: 3px solid var(--primary-light); outline-offset: 3px; }
.legal-skip { display: block; padding: var(--espacio-3); }
.legal-page code { white-space: normal; overflow-wrap: anywhere; color: var(--text-primary); }
@media print { .legal-page { color: var(--dark-bg); background: var(--text-primary); } .legal-page p, .legal-page dd, .legal-page a, .legal-page code { color: var(--dark-bg); } .legal-page :is(header, footer), .legal-skip { display: none; } .legal-page main { width: 100%; } }
