/* Opportunities page. */

.opp-hero {
	display: grid;
	grid-template-columns: minmax(0, 740fr) minmax(0, 700fr);
	align-items: start;
}
.opp-hero__text {
	padding: clamp(32px, 3.6vw, 52px) 24px clamp(40px, 4.5vw, 64px) max(var(--gutter), calc((100vw - var(--max)) / 2 + var(--gutter)));
}
.opp-hero__title {
	margin-top: clamp(20px, 3vw, 44px);
}
.opp-hero__title span { display: block; }
.opp-hero__lede {
	margin-top: clamp(16px, 1.6vw, 23px);
	max-width: 22em;
}
.opp-hero__media { margin: 0; }
.opp-hero__media .jdl-frame { aspect-ratio: 700 / 512; }
@media (max-width: 860px) {
	.opp-hero { grid-template-columns: minmax(0, 1fr); }
	.opp-hero__text { padding: 24px var(--gutter) 32px; }
	.opp-hero__media .jdl-frame { aspect-ratio: 3 / 2; }
}

.opp-interest { padding-top: clamp(40px, 4.93vw, 71px); padding-bottom: clamp(24px, 1.7vw, 24px); }
.opp-interest__title { margin-bottom: clamp(20px, 1.6vw, 23px); }
.opp-list { margin: 0; padding: 0; list-style: none; }
.opp-list__item {
	display: grid;
	grid-template-columns: clamp(56px, 8.75vw, 126px) minmax(0, 1fr);
	align-items: start;
	min-height: 162px;
	padding-block: 24px 28px;
	border-top: 1px solid var(--rule);
}
.opp-list__num {
	font-family: var(--font-serif);
	font-size: clamp(30px, 3.056vw, 44px);
	line-height: 1.1;
	color: var(--blue);
}
.opp-list__name {
	font-family: var(--font-serif);
	font-size: clamp(24px, 2.5vw, 36px);
	line-height: 1.15;
}
.opp-list__body p { margin-top: 8px; max-width: 1040px; font-size: clamp(16px, 1.458vw, 21px); line-height: 1.4; }
@media (max-width: 860px) {
	.opp-list__item { min-height: 0; padding-block: 24px 28px; }
}

.opp-support { padding-block: clamp(36px, 2.22vw, 32px); }
.opp-support__split { --split-left: 846fr; --split-right: 466fr; --split-gap: 24px; }
.opp-support__title {
	font-size: var(--fs-h2);
	line-height: 1.02;
}
.opp-support__text { margin-top: 14px; max-width: 33em; font-size: clamp(16px, 1.389vw, 20px); line-height: 1.4; }
.opp-support__list { display: grid; gap: 30px; }
.opp-support__list li {
	font-size: 11px;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: #A9BDD6;
}
@media (max-width: 860px) {
	.opp-support__list { gap: 14px; }
}

.opp-form {
	padding-top: clamp(40px, 4.5vw, 64px);
	padding-bottom: 0;
	scroll-margin-top: 24px;
}
.opp-form__title { line-height: 1; }
.opp-form__intro { margin-top: 8px; margin-bottom: clamp(12px, 0.8vw, 11px); font-size: clamp(17px, 1.389vw, 20px); }
