/* Fase 5: ajustes exclusivos del aviso de privacidad. No altera el CSS global. */
body.page:has(.legal-doc) .section--legal {
  padding-bottom: clamp(56px, 8vw, 96px);
}

body.page:has(.legal-doc) .legal-doc {
  width: min(calc(100% - 32px), 1040px);
  grid-template-columns: minmax(0, 1fr);
  gap: clamp(28px, 4vw, 52px);
  padding: clamp(28px, 4vw, 48px);
  border: 1px solid rgba(8, 25, 43, 0.1);
  border-radius: var(--radius-2xl);
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 24px 60px rgba(8, 25, 43, 0.1);
}

body.page:has(.legal-doc) .legal-doc__body {
  min-width: 0;
  max-width: 76ch;
  margin-inline: auto;
}

body.page:has(.legal-doc) .legal-doc__body section {
  min-width: 0;
}

body.page:has(.legal-doc) .legal-doc__body p,
body.page:has(.legal-doc) .legal-doc__body li {
  overflow-wrap: anywhere;
}

body.page:has(.legal-doc) .b4-footer > .shell {
  width: min(1040px, calc(100% - 32px));
}

@media (max-width: 900px) {
  body.page:has(.legal-doc) .legal-doc {
    width: min(calc(100% - 32px), 760px);
    grid-template-columns: 1fr;
  }
}

@media (max-width: 680px) {
  body.page:has(.legal-doc) .legal-doc {
    width: min(calc(100% - 24px), var(--shell));
    padding: 24px 20px;
    border-radius: var(--radius-xl);
  }

  body.page:has(.legal-doc) .b4-footer > .shell {
    width: calc(100% - 24px);
  }
}

@media (max-width: 480px) {
  body.page:has(.legal-doc) .legal-doc {
    padding: 22px 16px;
  }
}
