/* ==========================================================================
   Prose (editor content)
   ========================================================================== */

.prose {
	font-size: 1.125rem;
	line-height: 1.75;
	color: #2A3344;
}

.prose > * + * {
	margin-top: 1.4em;
}

.prose > p:first-child:not(:only-child) {
	font-family: var(--font-display);
	font-size: var(--fs-h4);
	font-weight: 350;
	line-height: 1.5;
	color: var(--ace-ink);
}

.prose h2,
.prose h3,
.prose h4 {
	color: var(--ace-ink);
	font-weight: 350;
}

.prose h2 {
	margin-top: 2.2em;
	font-size: clamp(1.75rem, 1.4rem + 1.2vw, 2.4rem);
}

.prose h3 {
	margin-top: 1.9em;
	font-size: clamp(1.4rem, 1.2rem + 0.6vw, 1.75rem);
}

.prose h4 {
	margin-top: 1.6em;
	font-size: 1.25rem;
}

.prose a {
	color: var(--ace-navy);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	text-decoration-color: var(--ace-gold);
	transition: text-decoration-color var(--dur-fast);
}

.prose a:hover {
	text-decoration-color: currentColor;
}

.prose ul,
.prose ol {
	padding-left: 1.25em;
}

.prose li + li {
	margin-top: 0.5em;
}

.prose ul li::marker {
	color: var(--ace-gold);
}

.prose blockquote {
	margin-block: 2em;
	padding-left: var(--space-5);
	border-left: 2px solid var(--ace-gold);
	font-family: var(--font-display);
	font-size: var(--fs-h3);
	font-style: italic;
	font-weight: 300;
	line-height: 1.35;
	color: var(--ace-ink);
}

.prose blockquote cite {
	display: block;
	margin-top: var(--space-3);
	font-family: var(--font-body);
	font-size: var(--fs-xs);
	font-style: normal;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--text-secondary);
}

.prose img,
.prose figure {
	margin-block: 2em;
}

.prose figcaption {
	margin-top: var(--space-2);
	font-size: var(--fs-xs);
	color: var(--text-secondary);
}

.prose hr {
	margin-block: 3em;
	border: 0;
	height: 1px;
	background: var(--border);
}

.prose table {
	width: 100%;
	border-collapse: collapse;
	font-size: var(--fs-small);
}

.prose th,
.prose td {
	padding: 0.75rem 0.5rem;
	border-bottom: var(--hairline);
	text-align: left;
}

.prose strong {
	font-weight: 600;
	color: var(--ace-ink);
}
