/* El marco de la portada se comparte; el texto mantiene una anchura de lectura cómoda. */
.legal-main { max-width: 1400px; margin: 0 auto; padding: clamp(28px, 5vw, 60px) clamp(22px, 4vw, 64px); }
.legal-main .eyebrow { color: #397b83; font-size: .74rem; font-weight: 900; letter-spacing: .12em; text-transform: uppercase; }
.legal-main h1 { margin: 6px 0 12px; font-size: clamp(2rem, 5vw, 3rem); line-height: 1.08; letter-spacing: -.04em; font-weight: 900; }
.legal-main h2 { margin: 30px 0 8px; font-size: 1.3rem; line-height: 1.25; font-weight: 900; }
.legal-main h3 { margin: 19px 0 6px; font-size: 1rem; }
.legal-main p, .legal-main li, .legal-main td, .legal-main th { overflow-wrap: anywhere; }
.legal-main p { margin: 9px 0 14px; }
.legal-main ul { padding-left: 22px; }
.legal-main a { color: #3156a7; text-underline-offset: 3px; }
.legal-main .intro { color: var(--muted); font-size: 1.05rem; }
.legal-main .pending { padding: 13px 16px; border: 2px solid #c1813c; border-radius: 11px; background: #fff4d9; color: #654c28; font-weight: 750; }
.legal-main .friendly { padding: 14px 16px; border: 1px solid #b2ddce; border-radius: 11px; background: #e8f8f3; }
.legal-table { width: 100%; border-collapse: collapse; margin: 13px 0; font-size: .89rem; }
.legal-table th, .legal-table td { padding: 10px; border: 1px solid #cbdfe4; text-align: left; vertical-align: top; }
.legal-table th { background: #eef7f9; }
@media (max-width: 600px) {
  .legal-table { display: block; overflow-x: auto; }
}
