/* Rich text output shared by native WordPress content. */
.prose-content {
	padding: var(--section-space-lg) 0;
}

.prose-content--page-title {
	padding-bottom: 0;
}

.prose-content__article {
	width: 100%;
	max-width: 52rem;
}

.prose-content__title {
	margin: 0 0 var(--space-10);
	font-size: var(--type-section-title);
	font-weight: var(--font-semibold);
	line-height: var(--leading-heading);
	letter-spacing: var(--tracking-heading);
}

.prose-content__article h2 {
	margin: var(--space-12) 0 var(--space-5);
	padding-top: var(--space-8);
	border-top: 1px solid var(--color-border-light);
	font-size: var(--text-xl);
	font-weight: var(--font-semibold);
	line-height: var(--leading-heading);
	letter-spacing: var(--tracking-title);
	scroll-margin-top: calc(var(--header-height) + var(--space-8));
}

.prose-content__article h3 {
	margin: var(--space-10) 0 var(--space-4);
	font-size: var(--text-lg);
	font-weight: var(--font-semibold);
	line-height: var(--leading-heading);
	letter-spacing: var(--tracking-title);
}

.prose-content__article h4 {
	margin: var(--space-8) 0 var(--space-3);
	font-size: var(--text-base);
	font-weight: var(--font-semibold);
}

.prose-content__article p,
.prose-content__article li {
	color: var(--color-text-muted);
	line-height: var(--leading-body);
}

.prose-content__article p {
	margin: 0;
}

.prose-content__article p + p {
	margin-top: var(--space-4);
}

.prose-content__article ul,
.prose-content__article ol {
	display: grid;
	gap: var(--space-2);
	margin: var(--space-5) 0;
	padding-left: var(--space-6);
}

.prose-content__article a {
	color: var(--color-text);
	text-decoration-color: var(--color-border);
	text-underline-offset: 3px;
	transition: color var(--transition-fast), text-decoration-color var(--transition-fast);
}

.prose-content__article blockquote {
	margin: var(--space-8) 0;
	padding-left: var(--space-6);
	border-left: 2px solid var(--color-primary);
}

.prose-content__article blockquote p {
	color: var(--color-text);
	font-size: var(--text-md);
}

.prose-content__article figure {
	margin: var(--space-10) 0;
}

.prose-content__article img {
	display: block;
	max-width: 100%;
	height: auto;
}

.prose-content__article figcaption {
	margin-top: var(--space-3);
	color: var(--color-text-muted);
	font-size: var(--text-sm);
	line-height: var(--leading-ui);
}

.prose-content__article .wp-block-table {
	margin: var(--space-10) 0;
	overflow-x: auto;
}

.prose-content__article table {
	width: 100%;
	border-collapse: collapse;
	font-size: var(--text-sm);
}

.prose-content__article th,
.prose-content__article td {
	padding: var(--space-3) var(--space-4);
	border-bottom: 1px solid var(--color-border-light);
	text-align: left;
	vertical-align: top;
}

.prose-content__article th {
	font-weight: var(--font-semibold);
}

.prose-content__article td {
	color: var(--color-text-muted);
}

.prose-content__article hr {
	margin: var(--space-12) 0;
	border: 0;
	border-top: 1px solid var(--color-border-light);
}

@media (hover: hover) {
	.prose-content__article a:hover {
		color: var(--color-primary);
		text-decoration-color: currentcolor;
	}
}

@media (max-width: 767px) {
	.prose-content {
		padding: var(--section-space) 0;
	}

	.prose-content--page-title {
		padding-bottom: 0;
	}

	.prose-content__article h2 {
		margin-top: var(--space-10);
		padding-top: var(--space-6);
	}
}
