/* Estilos para páginas legales */
body { font-family: "Nunito", system-ui, sans-serif; color: #3D3A4B; background: #F6FBFE; line-height: 1.7; margin: 0; }
.legal-header { background: #fff; border-bottom: 1px solid #DCEAF3; }
.legal-header .bar { max-width: 820px; margin: 0 auto; padding: 16px 22px; display: flex; align-items: center; justify-content: space-between; }
.legal-header a.brand { font-family: "Baloo 2", system-ui, sans-serif; font-weight: 800; color: #3D3A4B; text-decoration: none; font-size: 1.15rem; }
.legal-header a.back { color: #0F5A7A; text-decoration: none; font-weight: 600; }
.legal-header a.back:hover, .legal-header a.back:focus-visible { text-decoration: underline; }
.legal-wrap { max-width: 820px; margin: 0 auto; padding: 40px 22px 80px; }
.legal-wrap h1 { font-family: "Baloo 2", system-ui, sans-serif; font-size: 2rem; margin-bottom: .3rem; }
.legal-wrap h2 { font-family: "Baloo 2", system-ui, sans-serif; font-size: 1.3rem; margin: 1.8rem 0 .5rem; color: #0F5A7A; }
.legal-wrap p, .legal-wrap li { color: #4a4757; }
.legal-wrap ul { padding-left: 1.3rem; }
.legal-wrap .updated { color: #6B6880; font-size: .9rem; margin-bottom: 1.5rem; }
.legal-wrap .todo { background: #E8F4FC; border: 1px dashed #4FB3E8; padding: .4em .7em; border-radius: 8px; font-size: .92em; color: #2A6E8C; }
.legal-foot { max-width: 820px; margin: 0 auto; padding: 0 22px 50px; font-size: .85rem; color: #6B6880; }
a { color: #0F5A7A; }
.legal-wrap p a, .legal-wrap li a { text-decoration: underline; text-underline-offset: 2px; }
:focus-visible { outline: 3px solid #3D3A4B; outline-offset: 2px; border-radius: 4px; }
