/* ==========================================================================
   Esgomil — Páginas de texto (privacidade, termos)
   ========================================================================== */
.legal { padding-block: var(--space-8) var(--space-9); }
.legal__head { max-width: 760px; margin-bottom: var(--space-7); display: flex; flex-direction: column; gap: var(--space-3); }
.legal__head .t-label { color: var(--fg-muted); }
.legal__meta { font-family: var(--font-mono); font-size: var(--fs-label); letter-spacing: .08em; color: var(--fg-muted); }
.legal__grid { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: var(--space-7); align-items: start; }
.legal__toc { position: sticky; top: calc(72px + var(--space-5)); display: grid; gap: 2px; font-size: var(--fs-small); }
.legal__toc a { text-decoration: none; color: var(--fg-muted); padding: var(--space-1) var(--space-3); border-left: 2px solid var(--border); }
.legal__toc a:hover { color: var(--fg); border-left-color: var(--accent); }
.legal__body { max-width: 70ch; min-width: 0; }
.legal__body h2 { font-family: var(--font-display); font-weight: 800; text-transform: uppercase; font-size: 1.6rem; line-height: 1.05; margin: var(--space-7) 0 var(--space-3); scroll-margin-top: 96px; }
.legal__body h2:first-child { margin-top: 0; }
.legal__body p, .legal__body li { color: var(--color-grafite); }
.legal__body ul { padding-left: 1.2em; display: grid; gap: var(--space-2); }
.legal__body a { color: var(--fg); text-decoration-color: var(--accent); text-decoration-thickness: 3px; text-underline-offset: 3px; }
.legal__box { background: var(--surface); border: var(--border-w) solid var(--border); border-radius: var(--radius-md); padding: var(--space-5); margin-top: var(--space-4); }
.legal__box dl { display: grid; grid-template-columns: auto 1fr; gap: var(--space-2) var(--space-5); margin: 0; }
.legal__box dt { font-family: var(--font-mono); font-size: var(--fs-label); letter-spacing: .1em; text-transform: uppercase; color: var(--fg-muted); padding-top: 3px; }
.legal__box dd { margin: 0; overflow-wrap: anywhere; }
@media (max-width: 860px) { .legal__grid { grid-template-columns: minmax(0, 1fr); } .legal__toc { position: static; } }
