/* Páginas de texto (Política de Privacidade). Usa os tokens de styles.css. */

.legal-back {
  display: inline-flex; align-items: center; gap: 8px;
  color: var(--text); text-decoration: none; font-size: .925rem;
}
.legal-back svg { width: 16px; height: 16px; transition: transform .2s var(--ease); }
.legal-back:hover { color: var(--blue); }
.legal-back:hover svg { transform: translateX(-3px); }

.legal { padding-block: 56px 96px; }
@media (min-width: 768px) { .legal { padding-block: 88px 128px; } }

.legal__inner { max-width: 760px; }

.legal__title {
  font-size: clamp(2rem, 1.4rem + 2.6vw, 3rem);
  line-height: 1.1; letter-spacing: -0.03em;
  margin-bottom: 16px;
}
.legal__updated { font-size: .9rem; color: var(--muted); margin-bottom: 40px; padding-bottom: 32px; border-bottom: 1px solid var(--line); }

.legal__intro { font-size: 1.0625rem; margin-bottom: 8px; }

.legal section { padding-top: 40px; }
.legal h2 {
  display: flex; align-items: baseline; gap: 12px;
  font-size: 1.35rem; line-height: 1.3; margin-bottom: 16px;
}
.legal h2 .n { font-size: .8rem; color: var(--blue); letter-spacing: .08em; flex: none; }
.legal h3 { font-size: 1.05rem; margin: 22px 0 10px; }
.legal p + p { margin-top: 12px; }
.legal ul { display: grid; gap: 10px; margin: 14px 0; }
.legal ul li { position: relative; padding-left: 22px; }
.legal ul li::before {
  content: ""; position: absolute; left: 0; top: .68em;
  width: 6px; height: 6px; background: var(--blue);
}
.legal a { word-break: break-word; }

.legal__box {
  margin-top: 16px; padding: 20px 24px;
  background: var(--paper); border-left: 3px solid var(--blue); border-radius: var(--radius-sm);
}
.legal__box p + p { margin-top: 6px; }
