/* SpeakClub — Páginas legais (Política de Privacidade, Termos de Uso). */

.legal-hero {
  position: relative;
  background: var(--g-blue);
  color: var(--c-lavender);
  overflow: hidden;
  padding-block: clamp(2.5rem, 6vw, 5rem);
}

/* Contorno "SC" decorativo, discreto, no canto. */
.legal-hero__doodle {
  position: absolute;
  right: -4%;
  bottom: -30%;
  width: min(40%, 420px);
  opacity: 0.18;
  pointer-events: none;
}

.legal-hero__inner { position: relative; z-index: 1; }

.legal-breadcrumb {
  display: flex;
  gap: var(--sp-1);
  align-items: center;
  font-size: var(--fs-sm);
  margin-bottom: var(--sp-3);
  opacity: 0.9;
}
.legal-breadcrumb a { transition: color var(--dur) var(--ease); }
.legal-breadcrumb a:hover { color: var(--c-lime); }
.legal-breadcrumb span[aria-current] { font-weight: var(--fw-semibold); color: var(--c-lime); }

.legal-hero__title { font-size: var(--fs-h2); font-weight: var(--fw-bold); max-width: 24ch; }
.legal-hero__meta { margin-top: var(--sp-2); opacity: 0.85; font-size: var(--fs-sm); }

/* ---- Conteúdo ---- */

.legal {
  max-width: 820px;
  margin-inline: auto;
  padding-block: var(--sp-section);
}

.legal-section + .legal-section { margin-top: var(--sp-6); }

.legal-section__title {
  display: flex;
  gap: var(--sp-2);
  align-items: baseline;
  font-size: var(--fs-h3);
  font-weight: var(--fw-bold);
  color: var(--c-ink);
  margin-bottom: var(--sp-3);
  scroll-margin-top: calc(var(--h-header) + var(--sp-3));
}
/* Número do item em destaque azul. */
.legal-section__num { color: var(--c-blue); font-weight: var(--fw-extrabold); }

.legal-section p { color: var(--c-ink-soft); margin-bottom: var(--sp-2); }
.legal-section p:last-child { margin-bottom: 0; }
.legal-section a { color: var(--c-blue); font-weight: var(--fw-semibold); text-decoration: underline; }

/* Listas de definições (rótulo em negrito + descrição). */
.legal-list { display: flex; flex-direction: column; gap: var(--sp-2); margin: var(--sp-3) 0 0; }
.legal-list li {
  position: relative;
  padding-left: var(--sp-4);
  color: var(--c-ink-soft);
}
.legal-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--c-blue);
}
.legal-list li strong { color: var(--c-ink); }

/* Nota/observação em destaque. */
.legal-note {
  margin-top: var(--sp-3);
  padding: var(--sp-3) var(--sp-4);
  background: var(--c-blue-08);
  border-left: 4px solid var(--c-blue);
  border-radius: var(--radius-sm);
  font-size: var(--fs-sm);
  color: var(--c-ink-soft);
}
