@layer modules {
  .legal-section {
    padding-block: clamp(2.5rem, 6vw, 4rem);
  }

  .legal-container {
    display: flex;
    flex-direction: column;
    gap: var(--block-space-double);
    margin-inline: auto;
    max-inline-size: 52rem;
    padding-inline: var(--container-padding);
  }

  .legal-header {
    display: flex;
    flex-direction: column;
    gap: var(--block-space-half);
  }

  .legal-title {
    color: var(--color-ink);
    font-size: var(--text-3xl);
    font-weight: 600;
    line-height: 1.2;
  }

  .legal-meta {
    color: var(--color-ink-muted);
    font-size: var(--text-sm);
  }

  .legal-body {
    color: var(--color-ink-subtle);
    display: flex;
    flex-direction: column;
    font-size: var(--text-sm);
    gap: var(--block-space-double);
    line-height: 1.6;
  }

  .legal-block {
    display: flex;
    flex-direction: column;
    gap: var(--block-space-half);
  }

  .legal-heading {
    color: var(--color-ink);
    font-size: var(--text-base);
    font-weight: 600;
  }
}
