:root {
  --colorPrincipal: #f5979a;
  --colorSecundario: #a9575a;
  --colorNavbar: #ffffff;
  --colorTextoNavbar: #212529;
  --colorFondoPantalla: #f8f5f3;
  --colorCardFondo: #ffffff;
  --colorCardTexto: #292525;
  --fontPrincipal: "Roboto", Arial, sans-serif;
}

.paginaLegalOsa { background: var(--colorFondoPantalla); color: var(--colorCardTexto); font-family: var(--fontPrincipal); line-height: 1.7; margin: 0; }
.legalNavbar { background: var(--colorNavbar); color: var(--colorTextoNavbar); position: sticky; top: 0; z-index: 10; }
.legalNavbarContenido { align-items: center; display: flex; justify-content: space-between; min-height: 72px; }
.legalMarca img { display: block; max-height: 52px; max-width: 150px; object-fit: contain; }
.legalContenedor { max-width: 920px; padding-bottom: 48px; padding-top: 48px; }
.legalCard { background: var(--colorCardFondo); border-radius: 20px; box-shadow: 0 12px 38px rgba(43, 29, 29, .08); padding: clamp(24px, 5vw, 56px); }
.legalCard h1, .legalCard h2 { color: var(--colorCardTexto); font-weight: 700; }
.legalCard h1 { font-size: clamp(2rem, 5vw, 3rem); line-height: 1.15; margin-bottom: 8px; }
.legalCard h2 { font-size: 1.25rem; margin: 34px 0 12px; }
.legalCard a, .legalFooter a { color: var(--colorSecundario); font-weight: 600; }
.legalCard code { color: var(--colorSecundario); }
.legalCard li + li { margin-top: 9px; }
.legalEtiqueta { color: var(--colorSecundario); font-size: .78rem; font-weight: 700; letter-spacing: .12em; margin-bottom: 10px; text-transform: uppercase; }
.legalActualizacion { color: #6c757d; font-size: .94rem; margin-bottom: 28px; }
.legalAviso { background: color-mix(in srgb, var(--colorPrincipal) 14%, white); border-left: 4px solid var(--colorPrincipal); border-radius: 8px; padding: 16px 18px; }
.legalNavegacion { border-top: 1px solid rgba(0, 0, 0, .1); margin-top: 40px; padding-top: 24px; }
.legalFooter { padding: 20px 0 32px; text-align: center; }

@media (max-width: 575px) {
  .legalNavbarContenido { min-height: 64px; }
  .legalMarca img { max-height: 44px; max-width: 112px; }
  .legalContenedor { padding-top: 24px; }
  .legalCard { border-radius: 14px; }
}
