:root {
	--background_accordion: rgba(244, 245, 249, 1); 
	--background_table: #fff;
	--background_course-certification: #F4F5F9;
	--program_spacing-v: 30px;
}

/* Add scroll margin for elements with IDs to account for sticky nav - JS might override this */
[id] {
	scroll-margin-top: 86px;
}

.o-program-introductions--count--number {
	color: #c45c1c;
}
.o-program-pathways--label {
	color: #fff;
}
.o-program-pathways--label, .o-program-pathways--label::before {
	background: #c45c1c;
}
.o-program-pathways--options,
.o-program-careers--options {
	gap: 15px 34px;
	padding: 15px 25px;
}
.o-program-pathways--options,
.o-program-pathways--options:after {
	background: #ed6f25;
}
.o-program-pathways--options {
	flex-wrap: wrap;
}
.o-program-pathways--option,
.o-program-careers--option {
	padding: 5px 0;
	margin: 0;
}
.o-program-pathways--option {
	z-index: 1;
}
.o-program-pathways--option::before {
	content: '';
	position: absolute;
	inset: 0 -13px;
	border: 1px solid #fff;
	border-radius: 500px;
	z-index: -1;
	opacity: 0;
	transition: opacity 200ms ease;
}
.o-program-pathways--option:hover::before,
.o-program-pathways--option.is_active::before{
	opacity: 1;
}
.o-program-pathways--option.is_active {
	color: #ed6f25;
}
.o-program-pathways--option.is_active::before {
	background: #fff;
}
.o-program-pathways--option::after {
	display: none;
}
.o-program-careers--label {
	color: #474748;
}
.o-program-careers--label, .o-program-careers--label::before {
	background: #fcdec7;
}
.o-program-careers--option-inner::after {
	bottom: -10px;
	transition: all 200ms ease, background 0ms;
}
.o-program-careers--option:not(.is_active) .o-program-careers--option-inner::after {
	background: #f0f0f0;
}
.o-program-careers--option:not(.is_active):hover .o-program-careers--option-inner::after {
	right: 0;
}
.o-program-career-single--inner > :not(.o-program-callout) {
	padding-left: 58px;
	padding-right: 58px;
}
.o-program-career-single--inner > * + * {
	margin-top: var(--program_spacing-v);
}
@media (max-width: 768px) {
	.o-program-career-single--inner > :not(.o-program-callout) {
		padding-left: 25px;
		padding-right: 25px;
	}
}
.o-program-career-single--header {
	padding-bottom: 0;
}
.o-program-career-single .o-accordion--container {
	max-width: none;
	box-shadow: none;
	overflow: hidden;
	border: 0;
}
.o-program-career-single .o-accordion--single,
.o-program-career-single .o-accordion--toggle {
	background: var(--background_accordion);
}
.o-program-career-single .o-accordion--toggle {
	top: 50%;
   transform: translateY(-50%);
}
.o-program-career-single .o-accordion--question {
	padding: 15px 24px;
	font-size: 20px;
	font-weight: 700;
	line-height: inherit;
}
.o-program-career-single .o-accordion--question strong {
	font-weight: 900;
}
.o-program-career-single .o-accordion--question * {
	line-height: inherit;
	font-size: inherit;
	font-weight: inherit;
}
.o-program-career-single .accordion-title {
	padding-right: 36px;
}
.o-program-career-single .o-accordion--answer {
	padding-left: 24px;
	padding-right: 24px;
}
.o-program-career-single .accordion-intro {
	margin-bottom: 30px;
}
.o-program-career-single .o-accordion--single:first-of-type .o-accordion--answer {
	display: none;
}
.o-program-career-single .o-accordion--question > div > :last-child {
	margin-bottom: 0;
}
.o-program-career-single .o-accordion--toggle:after, .o-program-career-single .o-accordion--toggle:before {
	background: #52555A;
}
.o-program-track + .o-program-track {
	margin-top: var(--program_spacing-v);
}
.o-program-certifications-new {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 8px 16px;
	margin-bottom: var(--program_spacing-v);
}
.o-program-certifications-new--title {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 13px;
	line-height: 1.2;
	margin: 0;
}
.o-program-certifications-new--body {
	background: #ed6f25;
	padding: 7px 14px;
	border-radius: 8px;
	color: #fff;
	font-weight: 700;
	font-size: 12px;
	line-height: 1.2;
	font-family: Lato, sans-serif;
}
.o-program-certifications-new--body * {
	color: inherit;
}
.o-program-certifications-new--body > :last-child {
	margin-bottom: 0;
}
.o-program-track-heading,
.o-program-table th:first-child {
	@media (width > 600px) {
		padding-left: 60px;
	}
}
.o-program-track-heading {
	border-bottom: 2px solid #D8D8D8;
	text-align: left;
	padding-bottom: 8px;
	margin-bottom: 27px;
}
.o-program-track-heading p {
	font: inherit;
}
.o-program-track-heading > :last-child {
	margin-bottom: 0;
}
.o-program-table {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	max-width: 590px;
	overflow: hidden;
}
.o-program-table thead {
	background: var(--background_table);
	position: relative;
	z-index: 1;
}
.o-program-table th > :last-child {
	margin-bottom: 0;
}
.o-program-table th {
	color: #474748;
	text-transform: uppercase;
}
.o-program-table thead th {
	font-weight: 700;
	font-size: clamp(12px, calc(12px + (16 - 12) * ((100vw - 375px) / (630 - 375))), 16px);
	line-height: 1.2;
	font-family: Lato,sans-serif;
	position: relative;
	padding-bottom: clamp(8px, calc(8px + (25 - 8) * ((100vw - 375px) / (630 - 375))), 25px);
}
.o-program-table thead th * {
	font: inherit;
}
.o-program-table [data-row="year"]:not(:first-child) > * {
	padding-top: 30px;
}
.o-program-table tbody th {
	font-weight: 900;
	font-size: clamp(12px, calc(12px + (21 - 12) * ((100vw - 375px) / (630 - 375))), 21px);
	line-height: 1.2;
	font-family: Lato, sans-serif;
	white-space: nowrap;
	position: relative;
	padding-right: clamp(5px, calc(5px + (34 - 5) * ((100vw - 375px) / (800 - 375))), 34px);
}
.o-program-table tbody th div {
	display: flex;
	align-items: center;
	gap: calc(24/21*1em);
	gap: clamp(3px, .03vw, 24px);
	position: relative;
	gap: clamp(5px, calc(5px + (24 - 5) * ((100vw - 600px) / (800 - 600))), 24px);
}
.o-program-table tbody tr[data-last-year="true"] th div::before {
	content: '';
	position: absolute;
	inset: auto calc(16/21*1em) 100% auto;
	width: calc(4/21*1em);
	transform: translateX(50%);
	height: 500vh;
	background: #ED6F25;
	z-index: -1; /* Safari */
}
.o-program-table tbody th div::after {
	content: '';
	width: calc(32/21*1em);
	height: calc(32/21*1em);
	background: #ED6F25;
	border: 2px solid var(--background_table);
	border-radius: 50%;
	display: block;
	box-sizing: inherit;
	z-index: 1;
}
.o-program-table td {
	width: 50%;
	vertical-align: top;
	max-width: 0; /* if there is more text in one column, this keeps them equal width */
}
.o-program-table td:not([colspan="2"]):first-of-type {
	padding-right: clamp(4px, calc(4px + (8 - 4) * ((100vw - 375px) / (630 - 375))), 8px);
}
.o-program-table td:not([colspan="2"]):last-of-type {
	padding-left: clamp(4px, calc(4px + (8 - 4) * ((100vw - 375px) / (630 - 375))), 8px);
}
.o-program-table .course-item {
  display: block;
  border-radius: 10px;
  overflow: hidden;
}
.o-program-table .course-item-image {
	display: block;
}
.o-program-table__certification {
	font-weight: 700;
	font-size: clamp(12px, calc(12px + (14 - 12) * ((100vw - 375px) / (630 - 375))), 14px);
	line-height: 1.2;
	font-family: Lato,sans-serif;
	color: #474748;
}
.o-program-table__certification p {
	font: inherit;
}
.o-program-table__certification p:last-child {
	margin-bottom: 0;
}
.o-program-table__certification div {
	padding: calc(16/14*1em);
	position: relative;
}
.o-program-table__certification div::before {
	content: '';
	position: absolute;
	inset: -63px 0 3px; /* 3px is due to overflow:hidden on table */
	z-index: -1;
	background: var(--background_course-certification);
	box-shadow: 0 0 6px rgba(0,0,0,.18);
	border-radius: 18px;
}
.o-program-career-single .o-accordion--container {
	--background_table: var(--background_accordion);
	--background_course-certification: #fff;
}
.o-program-callout {
	margin-top: 100px;
}

/* New button colors
-------------------------------------------------------- */
:root {
	/* --button-color: #ce009f; */
	/* --button-color-accent: #9b0078; */
	/* Updated colors 10/28/24 */
	--button-color: #ed6f25;
	--button-color-accent: #c45c1c;
}
:is(.s-button, .s-button__large, .o-program-callout--link) {
	background: var(--button-color);
	border-color: var(--button-color);

	&::after {
		background: var(--button-color-accent);
	}

	&:hover,
	&:focus,
	&:active {
		color: var(--button-color);

		&::before {
			color: var(--button-color);
		}
	}
}
.s-button__inverse {
	color: var(--button-color);

	&::before {
		color: var(--button-color);
	}

	&:hover,
	&:focus,
	&:active {
		background: var(--button-color);
		border-color: var(--button-color);

		&::after {
			background: var(--button-color-accent);
		}
	}
}
:is(.s-button--orange, .s-button__large--orange, .s-button__inverse--orange, .o-program-callout--link) {
	--button-color: #ed6f25;
	--button-color-accent: #c45c1c;
}
:is(.s-button--navy, .s-button__large--navy, .s-button__inverse--navy) {
	--button-color: #005289;
	--button-color-accent: #003762;
}
:is(.s-button--teal, .s-button__large--teal, .s-button__inverse--teal) {
	--button-color: #4c9897;
	--button-color-accent: #408281;
}
:is(.s-button--olive, .s-button__large--olive, .s-button__inverse--olive) {
	--button-color: #7a9945;
	--button-color-accent: #68863b;
}
:is(.s-button--blue, .s-button__large--blue, .s-button__inverse--blue) {
	--button-color: #3e7dc0;
	--button-color-accent: #3369a1;
}
:is(.s-button--green, .s-button__large--green, .s-button__inverse--green) {
	--button-color: #3ca659;
	--button-color-accent: #318c4a;
}
:is(.s-button--grey, .s-button__large--grey, .s-button__inverse--grey) {
	--button-color: #474748;
	--button-color-accent: #353535;
}

/* Testimonials
-------------------------------------------------------- */
:root {
	--testimonials_color-background: #fcebe0;
	--testimonials_color-accent: #ed6f25;
	--testimonials_color-text: #53565a;
}

.o-testimonials {
    margin: 80px 0;

    .slick-dots{
        margin: 0;
        padding: 0;
        display: flex;
        list-style: none;
        justify-content: center;
        align-items: center;
        margin-top: 25px;

        li {
            border-radius: 50%;
            display: block;
            width: 23px;
            height: 23px;
            position: relative;
            background: var(--testimonials_color-accent);
            transition: all .5s ease-in-out;
            margin: 10px;
            cursor: pointer;
    
            &.slick-active {
				opacity: .6;
            }
        }
        button{
            display: none;
        }
    }
}
.o-testimonials--container {
    display: flex;
    align-items: center;
    max-width: 800px;
	padding: 0 20px;
	margin: 0 auto;
}

.slick-slider {
	width: 100%;

}

.o-testimonials--content {
	width: 100%;
}

.o-testimonial--testimonial-inner {
	background: var(--testimonials_color-background);
	color: var(--testimonials_color-text);
	padding: 25px 20px;
	width: 100%;
}

.o-testimonials--testimonial:has(.o-testimonial--image) {
	.o-testimonial--testimonial-inner {
		display: flex;
	}
	.o-testimonial--image {
		display: block;
	}
	@media (width > 640px) {
		.o-testimonial--testimonial-inner {
			padding-left: 40px;
			align-items: center;
		}
		.o-testimonial--body {
			padding-right: 30px;
			border-right: 2px solid var(--testimonials_color-accent);
			margin-right: 30px;
			flex: 1 1 350px;
			min-width: 350px;
			align-self: stretch;
			display: flex;
			flex-direction: column;
			justify-content: center;
		}
		.o-testimonial--image {
			flex: 0 1 40%;
		}
	}
	@media (width <= 640px) {
		.o-testimonial--testimonial-inner {
			padding-top: 35px;
			padding-bottom: 35px;
			flex-direction: column;
		}
		.o-testimonial--body {
			padding-bottom: 30px;
			border-bottom: 2px solid var(--testimonials_color-accent);
			margin-bottom: 30px;
		}
		.o-testimonial--image {
			align-self: center;
			max-width: 300px;
		}
	}
}

.o-testimonial--heading {
	font: 700 18px/1.2 'Lato', sans-serif;
	color: inherit;
}

.o-testimonial--quote {
	p {
		color: inherit;
	}
	> p:first-child::before,
	> p:last-child::after {
		display: inline;
		font-weight: 700;
		color: var(--testimonials_color-accent);
	}
	> p:first-child::before {
		content: '“';
	}
	> p:last-child::after {
		content: '”';
	}
}

.o-testimonial--author,
.o-testimonial--position {
    margin: 0;
	line-height: 1.2;
}

.o-testimonial--author {
	font-weight: 700;
	color: var(--testimonials_color-accent);
}

.o-testimonial--position {
	margin-top: 4px;
	color: inherit;
}

/* Call to action */
.o-call-to-action {
	background: #fcebe0;
}

.o-call-to-action--title {
	color: #474748;
}


