.page-banner {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	aspect-ratio: 16 / 4;
	padding: 0;
}

.page-content {
	font-size: 1.4em;
	overflow: auto;
}

.page-content p {
	margin-bottom: 1em;
}

.page-content ul,
.page-content ol {
	margin-bottom: 1em;
	margin-left: 1em;
	padding-left: 40px;
}

table.bordered {
	border-collapse: collapse;
}

table.bordered,
table.bordered td {
	border: 1px solid #000;
}

table.bordered td {
	padding: 8px;
}

.section-group {
	display: flex;
	gap: 1.5em;
	align-items: stretch;
	justify-content: center;
	margin: 2em 0;
}

.panel {
	border: 1px solid var(--pine);
	flex: 1 1 0px;
}

.panel-heading {
	background: linear-gradient(46deg, var(--pine), var(--pine-2));
	color: var(--canvas);
}

.panel-footer {
	text-align: center;
}

.panel-heading,
.panel-content,
.panel-footer {
	padding: 0.8em;
}

@media (max-width: 700px) {
	.section-group {
		flex-direction: column;
	}
}
