/* Containers and page scaffolding. */
.ks-container {
	width: 100%;
	margin-inline: auto;
	padding-inline: var(--ks-gutter);
}
@media (min-width: 960px) {
	.ks-container { max-width: calc(98vw - 48px); padding-inline: 0; }
}
@media (min-width: 1280px) {
	.ks-container { max-width: calc(98vw - 96px); }
}
@media (min-width: 1920px) {
	.ks-container { max-width: 1460px; }
}
@media (min-width: 2400px) {
	.ks-container { max-width: 1600px; }
}
.ks-container--narrow { max-width: 808px; padding-inline: var(--ks-gutter); }
@media (min-width: 960px) {
	.ks-container--narrow { max-width: 760px; padding-inline: 0; }
}

.ks-main { display: block; min-height: 50vh; padding-bottom: var(--ks-section-gap); }
.ks-section { margin-top: 32px; }
.ks-section + .ks-section { margin-top: var(--ks-section-gap); }
.ks-section__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 20px;
}
@media (min-width: 1024px) {
	.ks-section__head { margin-bottom: 40px; }
}
.ks-section__title {
	font-size: var(--ks-fs-18);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: var(--ks-track-wide);
}
@media (min-width: 1024px) {
	.ks-section__title { font-size: var(--ks-fs-24); }
}
.ks-section__more {
	display: inline-flex;
	align-items: center;
	gap: 2px;
	flex-shrink: 0;
	font-size: var(--ks-fs-13);
	text-transform: uppercase;
	color: var(--ks-gray1);
	letter-spacing: var(--ks-track);
}
.ks-section__more:hover { color: var(--ks-black); }
@media (min-width: 1024px) {
	.ks-section__more { font-size: var(--ks-fs-14); }
}

.ks-page-head { padding: 32px 0 24px; }
.ks-page-title { font-size: var(--ks-fs-24); font-weight: 700; text-transform: uppercase; letter-spacing: var(--ks-track); }
@media (min-width: 1024px) {
	.ks-page-title { font-size: var(--ks-fs-28); }
}
.ks-page-desc { margin-top: 8px; color: var(--ks-gray2); }

.ks-red { color: var(--ks-red); }
