.legal-page {
  background: var(--creme);
}

.legal-main {
  max-width: 920px;
  margin: 0 auto;
  padding: 160px 24px 80px;
}

.legal-card {
  padding: clamp(28px, 5vw, 64px);
  border: 1px solid rgba(0, 0, 0, .06);
  border-radius: 20px;
  background: var(--branco);
  box-shadow: var(--sombra-suave);
}

.legal-kicker {
  margin-bottom: 10px;
  color: var(--vermelho);
  font-size: .8125rem;
  font-weight: 700;
  letter-spacing: .08em;
  line-height: 1.4;
  text-transform: uppercase;
}

.legal-card h1,
.legal-card h2 {
  font-family: var(--font-display);
  font-weight: 700;
  letter-spacing: -.02em;
  line-height: 1.02;
  text-transform: uppercase;
}

.legal-card h1 {
  margin-bottom: 12px;
  color: var(--preto);
  font-size: clamp(2.5rem, 6vw, 5rem);
}

.legal-card h2 {
  margin: 36px 0 10px;
  color: var(--vermelho);
  font-size: clamp(1.6rem, 3vw, 2.25rem);
}

.legal-card h2:first-of-type { margin-top: 34px; }

.legal-card .legal-meta {
  margin-bottom: 30px;
  color: var(--bege-escuro);
  font-size: .9375rem;
}

.legal-card p,
.legal-card li {
  color: var(--preto);
  font-size: 1rem;
  line-height: 1.7;
}

.legal-card p + p { margin-top: 12px; }

.legal-card ul {
  display: grid;
  gap: 6px;
  margin: 10px 0 0 22px;
  padding: 0;
}

.legal-card a {
  color: var(--azul-escuro);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.legal-card a:hover { color: var(--vermelho); }

.legal-back {
  display: inline-flex;
  margin-top: 34px;
  padding: 12px 18px;
  border-radius: 8px;
  color: var(--preto) !important;
  background: var(--amarelo);
  text-decoration: none !important;
  text-transform: uppercase;
}

.legal-page .footer__legal a { color: var(--amarelo); }

@media (max-width: 700px) {
  .legal-main { padding: 128px 16px 48px; }
  .legal-card { padding: 28px 20px; border-radius: 16px; }
  .legal-card p,
  .legal-card li { font-size: .9375rem; }
}
