.page-header {
  max-width: 760px;
  margin: 0 auto;
  text-align: left;
}

.page-intro {
  font-size: var(--font-size-lg);
}

.privacy-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 2fr);
  gap: var(--space-8);
}

.privacy-toc {
  position: sticky;
  top: 6rem;
  align-self: flex-start;
  padding: var(--space-5);
  border-radius: var(--radius-lg);
  background: #ffffff;
  box-shadow: var(--shadow-sm);
  border: 1px solid rgba(15, 23, 42, 0.04);
  font-size: var(--font-size-sm);
}

.privacy-toc-title {
  font-size: var(--font-size-base);
  margin-bottom: var(--space-3);
}

.privacy-toc ol {
  list-style: none;
}

.privacy-toc li {
  margin-bottom: 0.4rem;
}

.privacy-toc a {
  color: var(--color-text-muted);
}

.privacy-toc a:hover {
  color: var(--color-accent-burgundy);
}

.privacy-content {
  max-width: 780px;
  margin-inline: auto;
}

.privacy-block + .privacy-block {
  margin-top: var(--space-8);
}

.privacy-block h2 {
  margin-bottom: var(--space-3);
}

.privacy-block ul {
  padding-left: 1.1rem;
  margin-bottom: var(--space-3);
}

.privacy-block li {
  margin-bottom: 0.35rem;
  color: var(--color-text-muted);
}

@media (max-width: 960px) {
  .privacy-layout {
    grid-template-columns: 1fr;
  }

  .privacy-toc {
    position: static;
    order: -1;
  }
}

@media (max-width: 640px) {
  .page-header {
    text-align: left;
  }

  .privacy-toc {
    padding: var(--space-4);
  }
}
