.legal-page main {
	padding-block: var(--section-spacing-y);
}

.legal-page .legal-article {
	width: min(100% - var(--container-gutter) * 2, 56rem);
	margin-inline: auto;
	color: var(--color-text-muted);
	line-height: 1.75;
}

.legal-page .legal-article h1 {
	font-size: var(--font-size-3xl);
	font-weight: var(--font-weight-bold);
	color: var(--color-text);
	margin: 0 0 0.75rem;
	line-height: 1.2;
}

.legal-page .legal-article .legal-intro {
	color: var(--color-text-soft);
	margin: 0 0 0.5rem;
}

.legal-page .legal-article .legal-meta {
	color: var(--color-text-subtle);
	font-size: var(--font-size-sm);
	margin: 0 0 2rem;
}

.legal-page .legal-article h2 {
	font-size: var(--font-size-xl);
	font-weight: var(--font-weight-semibold);
	color: var(--color-text);
	margin: 2rem 0 0.75rem;
}

.legal-page .legal-article p {
	margin: 0 0 0.85rem;
}

.legal-page .legal-article ul {
	margin: 0 0 1rem 1.25rem;
	padding: 0;
}

.legal-page .legal-article li {
	margin-bottom: 0.35rem;
}

.legal-page .legal-article strong {
	color: var(--color-text);
}

.legal-page .legal-article a {
	color: var(--color-primary);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.legal-page .legal-article a:hover {
	color: var(--color-primary-fill-hover);
	text-decoration-thickness: 2px;
}

.legal-table {
	width: 100%;
	border-collapse: collapse;
	margin: 1.5rem 0;
	font-size: var(--font-size-sm);
}

@media (max-width: 640px) {
	.legal-table {
		display: block;
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}

	.legal-table th,
	.legal-table td {
		min-width: 9rem;
	}
}

.legal-table th,
.legal-table td {
	text-align: left;
	padding: 0.75rem 1rem;
	border-bottom: 1px solid var(--color-border);
	color: var(--color-text-muted);
	vertical-align: top;
}

.legal-table th {
	color: var(--color-text);
	font-weight: var(--font-weight-semibold);
	border-bottom: 1px solid var(--color-border-strong);
}

.legal-table td:first-child {
	color: var(--color-text);
	white-space: nowrap;
}
