@charset "utf-8";

/* FORMATTED PROGRAMS */
.formatted-programs {
	display: grid;
	gap: var(--margin-normal);
	margin-block: var(--margin-block);
	}

/* Menu */
.formatted-programs-menu-items {
	border-left: 1px solid var(--background-divider);
	display: grid;
	}
.formatted-programs-anchor {
	border-left: 2px solid transparent;
	color: var(--color-link);
	display: block;
	font-size: var(--font-size-sm);
	margin-left: -1px;
	padding: var(--space-5) var(--space-20);
	transition: all var(--animation-duration) var(--animation-easing);
	transition-property: border, color;
	}
	.formatted-programs-anchor:hover {
		color: var(--color-link-hover);
		}
	.formatted-programs-menu-item-current > .formatted-programs-anchor {
		border-left-color: var(--color-button);
		color: var(--color-button);
		font-weight: var(--font-weight-bold);
		}

/* Labels */
.formatted-programs-label {
	color: var(--color-header);
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-bold);
	text-transform: uppercase;
	}
	* + .formatted-programs-label {
		margin-top: var(--space-20);
		}

/* Programs */
.formatted-programs-item {
	border-top: 1px solid var(--background-divider);
	scroll-margin-top: var(--header-height);
	padding-top: var(--margin-block);
	}
	.formatted-programs-item + .formatted-programs-item {
		margin-top: var(--margin-block);
		}

.formatted-programs-header {
	font-size: var(--font-size-5xl);
	}
.formatted-programs-text {
	margin-block: var(--space-10);
	}

/* Highlights */
.formatted-programs-highlights {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-10);
	margin-block: var(--space-20);
	}
.formatted-programs-highlight {
	background-color: var(--color-button-alt);
	border-radius: var(--radius);
	color: var(--color-button-alt-text);
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-bold);
	padding: 0.5em 1em;
	}

/* Sections */
.formatted-programs-section {
	margin-top: var(--margin-gap);
	}
	.formatted-programs-section .formatted-programs-label {
		font-size: var(--font-size-md);
		font-weight: var(--font-weight-black);
		}
.formatted-programs-columns {
	display: grid;
	gap: var(--gap);
	margin-top: var(--space-10);
	}

/* Why Reasons */
.formatted-programs-reason {
	background-color: var(--background);
	border: 1px solid var(--background-trim);
	border-radius: var(--radius);
	border-top: 3px solid var(--color-accent);
	padding: var(--spacing);
	}
.formatted-programs-reason-header {
	font-weight: var(--font-weight-bold);
	font-size: var(--font-size-lg);
	}
.formatted-programs-reason-text {
	color: var(--color-dimmed);
	font-size: var(--font-size-sm);
	line-height: var(--line-height-snug);
	margin-top: var(--space-5);
	}

/* How Steps */
.formatted-programs-step {
	background-color: var(--background);
	border: 1px solid var(--background-trim);
	border-radius: var(--radius);
	padding: var(--spacing);
	}
.formatted-programs-step-number {
	color: var(--color-stress);
	display: block;
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-heavy);
	}
.formatted-programs-step-header {
	font-size: var(--font-size-lg);
	font-weight: var(--font-weight-bold);
	margin-top: var(--space-5);
	}
.formatted-programs-step-text {
	color: var(--color-dimmed);
	font-size: var(--font-size-sm);
	line-height: var(--line-height-snug);
	margin-top: var(--space-5);
	}

/* Eligibility */
.formatted-programs-pills {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-10);
	margin-top: var(--space-10);
	}
.formatted-programs-pill {
	border: 1px solid var(--color-accent);
	border-radius: var(--radius);
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-semi);
	padding: 0.5em var(--spacing);
	}

/* CTA */
.formatted-programs-cta {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-10) var(--gap);
	margin-top: var(--margin-gap);
	}
.formatted-programs-cta-text {
	font-weight: var(--font-weight-bold);
	}

/* Specialist */
.formatted-programs-specialist {
	border-radius: var(--radius);
	padding: var(--spacing);
	}
.formatted-programs-specialist-text {
	font-size: var(--font-size-xs);
	line-height: var(--line-height-snug);
	margin-bottom: var(--space-10);
	}

@media (max-width: 59.99em) {
	.formatted-programs-nav {
		--scroll-top: 0;
		position: sticky;
		top: var(--scroll-top);
		transition: top var(--animation-duration) var(--animation-easing);
		z-index: 550;
		}
	body.scrolled-menu.scrolled-up .formatted-programs-nav {
		--scroll-top: var(--header-height);
		}
	.formatted-programs-menu {
		background-color: var(--background);
		box-shadow: var(--box-shadow);
		margin-inline: calc(var(--margin-pad) * -1);
		padding-inline: var(--margin-pad);
		}
	.formatted-programs-menu-header,
	.formatted-programs-nav-specialist {
		display: none;
		}
	.formatted-programs-mobile-button {
		align-items: center;
		color: var(--color-link);
		display: flex;
		gap: var(--space-10);
		justify-content: space-between;
		padding-block: var(--space-10);
		width: 100%;
		}
	.formatted-programs-mobile-button > .fa-times,
	.formatted-programs-open .formatted-programs-mobile-button > .fa-bars {
		display: none;
		}
	.formatted-programs-open .formatted-programs-mobile-button > .fa-times {
		display: block;
		}
	.formatted-programs-menu-items {
		display: none;
		}
	.formatted-programs-open .formatted-programs-menu-items {
		border-left: none;
		display: grid;
		gap: var(--space-5);
		padding-bottom: var(--space-10);
		}
	.formatted-programs-anchor {
		border-left: none;
		margin-left: 0;
		padding: var(--space-5) 0;
		}
	.formatted-programs-list-specialist {
		margin-top: var(--margin-block);
		}
}
@media (min-width: 60em) {
	.formatted-programs {
		grid-template-columns: 16rem minmax(0, 1fr);
		}
	.formatted-programs-menu {
		position: sticky;
		top: var(--sticky-top);
		transition: top var(--animation-duration) var(--animation-easing);
		z-index: 550;
		}
	.formatted-programs-mobile,
	.formatted-programs-list-specialist {
		display: none;
		}
	.formatted-programs-menu-header {
		margin-bottom: var(--space-10);
		}
	.formatted-programs-nav-specialist {
		margin-top: var(--space-20);
		}
	.formatted-programs-columns {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		}
	.formatted-programs-cta-button {
		margin-left: auto;
		}
}