.page-header {
	width: 100%;
	padding-top: var(--page-gap);
	padding-bottom: var(--page-gap);
	background-color: var(--page-header-background-color, transparent);
}

.page-header.page-header__title {
	margin-top: 1rem;
	margin-bottom: 0;
}

.page-header.page-header__title:first-child {
	margin-top: 0;
}

.page-header.page-header__title:is(.dark *) {
	--tw-text-opacity: 1;

	color: rgb(255 255 255 / var(--tw-text-opacity, 1));
}

.page-header.page-header--no-background {
	padding-top: var(--section-gap);
	padding-bottom: var(--section-gap);
}

.page-header .page-header__image {
	display: flex;
	justify-content: center;
}

.page-header.page-header--center {
	text-align: center;
}

.page-header.page-header--right {
	text-align: right;
}

.page-header.page-header--left {
	text-align: left;
}

.page-header .page-header__title {
	font-family: Sanchez, sans-serif;
	font-size: 1.875rem;
	font-weight: 900;
	line-height: 2.25rem;
	line-height: 1.25;
}

@media (min-width: 768px) {
	.page-header .page-header__title {
		font-size: 2.25rem;
		line-height: 2.5rem;
	}
}

.page-header > .container > .page-header__title:first-child {
	margin-top: 0 !important;
}

.main-page .main-page__body,
.main-page .main-page__header {
	margin-left: auto;
	margin-right: auto;
	max-width: 42rem;
}

.main-page .main-page__body p {
	margin: 0;
	line-height: 1.625;
}

.main-page .main-page__body * + p,
.main-page .main-page__body * + ul {
	margin-top: 1em;
}

.main-page .main-page__body h3 {
	margin-top: 1em;
	margin-bottom: 1rem;
	font-size: 1.25rem;
	line-height: 1.75rem;
	line-height: 1.25;
}

@media (min-width: 768px) {
	.main-page .main-page__body h3 {
		font-size: 1.5rem;
		line-height: 2rem;
	}
}

.main-page .main-page__body h4 {
	font-size: 16px;
	line-height: inherit;
	line-height: 20px;
}

.main-page .main-page__body h2 {
	margin-top: 1em;
	margin-bottom: 1.5rem;
	font-size: 1.5rem;
	line-height: 2rem;
	line-height: 1.25;
}

@media (min-width: 768px) {
	.main-page .main-page__body h2 {
		font-size: 1.875rem;
		line-height: 2.25rem;
	}
}

.main-page .main-page__body a {
	text-decoration-line: underline;
}

.main-page .main-page__body a:hover {
	--tw-text-opacity: 1;

	color: rgb(5 1 17 / var(--tw-text-opacity, 1));
}

.main-page .main-page__body h2,
.main-page .main-page__body h3 {
	font-family: Sanchez, sans-serif;
}

.main-page .main-page__body ul {
	margin-top: 1em;
	margin-bottom: 1em;
}

.main-page .main-page__body ul li {
	padding-left: 1rem;
}

@media (min-width: 768px) {
	.main-page .main-page__body ul li {
		padding-left: 1.5rem;
	}
}

.main-page .main-page__body ul li + li {
	margin-top: 1em;
}
