/* InsurgentLab · páginas legales (privacidad, aviso legal, cookies). Mismo lenguaje visual que la web. */
.legal { padding: clamp(40px, 6vw, 80px) 0 clamp(64px, 8vw, 104px); }
.legal-wrap { max-width: 780px; }
.legal-eyebrow { margin: 0 0 0.6rem; font: 600 0.78rem var(--font-display); letter-spacing: 0.12em; text-transform: uppercase; color: var(--muted); }
.legal h1 { margin: 0; font-size: clamp(2rem, 4vw, 2.8rem); line-height: 1.12; color: var(--emerald); }
.legal-updated { margin: 0.8rem 0 0; font-size: 0.9rem; color: var(--muted); }
.legal section { margin-top: clamp(28px, 4vw, 40px); padding-top: 16px; border-top: 1px solid var(--rule); }
.legal h2 { margin: 0 0 12px; font-size: clamp(1.2rem, 2vw, 1.4rem); color: var(--emerald); }
.legal h3 { margin: 22px 0 8px; font-size: 1.02rem; color: var(--emerald); }
.legal p, .legal li { color: var(--graphite); line-height: 1.65; }
.legal ul { padding-left: 20px; }
.legal li { margin-bottom: 6px; }
.legal a { color: var(--emerald); }
.legal-data { list-style: none; padding: 0 !important; margin: 0 0 12px; border-top: 1px solid var(--rule); }
.legal-data li { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: 4px 16px; padding: 10px 0; margin: 0; border-bottom: 1px solid var(--rule); }
.legal-data span { font-size: 0.78rem; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--muted); padding-top: 3px; }
.legal mark { background: #FFE3E8; color: #A8102B; padding: 0 4px; }
.footer-legal a { color: inherit; }
@media (max-width: 640px) { .legal-data li { grid-template-columns: 1fr; } }
