/* Legal pages typography and layout */
.legal-page {
  /* keep global gradient but soften content area with a card */
}

.legal-page .container {
  padding: 24px;
}

.legal-page main {
  max-width: 960px;
  margin: 40px auto 56px auto;
}

.legal-page main > section {
  background: #ffffff;
  border-radius: 14px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
  border: 1px solid rgba(0,0,0,0.06);
  padding: 40px 48px;
}

.legal-page h1 {
  margin: 0 0 16px 0;
  font-size: 2rem;
  color: #1f2937;
}

.legal-page h1.sticky {
  position: static; /* disable sticky */
  top: auto;
  background: transparent;
  padding: 0 0 16px 0;
  border-bottom: 1px solid #eef0f3;
  z-index: auto;
}

.legal-page h2 {
  margin: 28px 0 12px 0;
  font-size: 1.3rem;
  color: #111827;
}

.legal-page p,
.legal-page li {
  color: #374151;
  font-size: 16px;
  line-height: 1.75;
}

.legal-page ul {
  padding-left: 22px;
  margin: 8px 0 16px 0;
}

.legal-page ul ul {
  margin-top: 6px;
}

.legal-page main a {
  color: #0b5fff;
  text-decoration: none;
  border-bottom: 1px dashed rgba(11,95,255,0.35);
}

.legal-page main a:hover {
  text-decoration: none;
  border-bottom-color: rgba(11,95,255,0.7);
}

.legal-page .meta {
  color: #6b7280;
  font-size: 14px;
}

@media (max-width: 720px) {
  .legal-page main > section {
    padding: 28px 20px;
    border-radius: 10px;
  }

  .legal-page h1 {
    font-size: 1.6rem;
  }

  .legal-page h2 {
    font-size: 1.15rem;
  }
}
