/* Single blog post layout */
.single-post__header {
	background: var(--lh-gradient-band, linear-gradient(81deg, #a52529 0%, #842124 43%, #261312 99%));
	color: var(--c-on-primary, #fff);
	text-align: center;
	padding: 56px 0 140px;
}
.single-post__header .container { max-width: 1000px; }
.single-post__breadcrumbs { font-size: .8125rem; margin-bottom: 20px; opacity: .85; }
.single-post__breadcrumbs a { color: var(--c-on-primary, #fff); text-decoration: none; }
.single-post__breadcrumbs .separator { display: inline; padding: 0 6px; }
.single-post__date { opacity: .7; margin-bottom: 12px; font-size: .9375rem; }
.single-post__title { color: var(--c-on-primary, #fff); font-size: clamp(2.25rem, 5vw, 4.25rem); margin-bottom: 20px; }
.single-post__categories { list-style: none; margin: 0; padding: 0; display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }
.single-post__categories a {
	display: inline-block;
	color: var(--c-on-primary, #fff);
	text-decoration: none;
	text-transform: uppercase;
	border: 1px solid var(--c-on-primary, #fff);
	border-radius: 2px;
	padding: 5px 10px;
	font-size: .8125rem;
	letter-spacing: .04em;
}
.single-post__body { background: var(--c-surface, #fff); padding-bottom: 80px; }
.single-post__body .container { max-width: 1000px; }
.single-post__author { display: flex; align-items: center; gap: 16px; margin-top: -40px; margin-bottom: 32px; }
.single-post__author p { margin: 0; }
.single-post__avatar { width: 56px; height: 56px; border-radius: 50%; border: 3px solid var(--c-surface, #fff); background: var(--c-surface, #fff); }
.single-post__media { margin: 0 0 40px; line-height: 0; }
.single-post__media img { width: 100%; height: auto; border-radius: var(--lh-radius, 4px); }
.single-post__columns { display: block; }
.single-post__columns.has-aside { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: 48px; }
.single-post__content { max-width: 760px; margin: 0 auto; font-size: 1.0625rem; line-height: 1.75; }
.single-post__content > * + * { margin-top: 1.25rem; }
.single-post__content h2 { margin-top: 2.25rem; }
.single-post__content h3 { margin-top: 1.75rem; }
.single-post__content ul, .single-post__content ol { padding-left: 1.5rem; }
.single-post__content li { margin-bottom: .5rem; }
.single-post__content img { border-radius: var(--lh-radius, 4px); }
.single-post__content figure { margin-left: 0; margin-right: 0; }
.single-post__content .wp-block-columns { gap: 24px; }
.single-post__content blockquote { border-left: 4px solid var(--c-primary, #b72025); padding-left: 1.25rem; font-style: italic; font-size: 1.125rem; }
.single-post__content a:not(.btn) { color: var(--c-primary, #b72025); }
.single-post__faqs { margin-top: 3rem; border-top: 2px solid var(--c-primary, #b72025); padding-top: 2rem; }
.single-post__faq { border-bottom: 1px solid var(--c-border, #e3dfdf); padding: 4px 0; }
.single-post__faq summary {
	cursor: pointer;
	font-weight: 700;
	color: var(--c-ink, #1c1a1b);
	padding: 14px 40px 14px 0;
	list-style: none;
	position: relative;
}
.single-post__faq summary::-webkit-details-marker { display: none; }
.single-post__faq summary::after {
	content: "";
	position: absolute;
	right: 4px;
	top: 50%;
	width: 12px;
	height: 12px;
	border-right: 2px solid var(--c-primary, #b72025);
	border-bottom: 2px solid var(--c-primary, #b72025);
	transform: translateY(-70%) rotate(45deg);
	transition: transform .2s;
}
.single-post__faq[open] summary::after { transform: translateY(-30%) rotate(225deg); }
.single-post__faq-answer { padding: 0 0 18px; }
.single-post__aside { background: var(--c-surface-alt, #f4f4f4); border-radius: var(--lh-radius, 4px); padding: 28px; align-self: start; position: sticky; top: 24px; }
@media (max-width: 900px) {
	.single-post__columns.has-aside { grid-template-columns: 1fr; }
	.single-post__header { padding-bottom: 110px; }
}
.single-post__content h2, .single-post__content h3, .single-post__content h4 { color: var(--c-ink, #1c1a1b); }
