﻿@import url("theme_dagobah.css?v1.3");


:root {
	--il-orange: #ff5f05;
	--il-altgeld: #dd3403;
	--il-blue: #13294b;
	--il-alma-mater: #1e3877;
	--il-alma-mater-1: #4d69a0;
	--il-alma-mater-2: #849bc1;
	--il-alma-mater-3: #afc7db;
	--il-industrial-blue: #1d58a7;
	--il-industrial-blue-1: #5783bc;
	--il-industrial-blue-2: #90aed5;
	--il-industrial-blue-3: #cad9ef;
	--il-arches-blue: #009fd4;
	--il-arches-blue-1: #7fc3e1;
	--il-arches-blue-2: #a6d7eb;
	--il-arches-blue-3: #d2ebf5;
	--il-cloud: #f8fafc;
	--il-cloud-1: #e8e9eb;
	--il-cloud-2: #dddede;
	--il-cloud-3: #d2d2d2;
	--il-gray-1: #f4f4f4;
	--il-gray-2: #707070;
	--il-heritage-orange: #f5821e;
	--il-heritage-orange-1: #e56e15;
	--il-heritage-orange-2: #ce5e11;
	--il-heritage-orange-3: #b74d04;
	--il-storm: #9fa0a8;
	--engr-white: #ffffff;
	--engr-ghost: #f8f8f8;
	--engr-platinum: #f0f0f0;
	--engr-royal: #284c90;
	/*	--engr-navy: var(--il-blue);*/
	/*	--engr-orange: ff552e;*/
	--engr-charcoal: #121b21;
}



/* basic html elements */
@media all {
	body {
		width: 100%;
		color: var(--engr-charcoal);
		line-height: 1.8;
		font-family: 'Source Sans Pro', sans-serif;
		-webkit-font-smoothing: antialiased;
		font-weight: 400;
	}
	
	h1 {
		font-weight: 700;
		font-size: 3em;
	}

	h2 {
		font-weight: 700;
		font-size: 1.9em;
		margin-bottom: 1.5rem;
		letter-spacing: -0.5px;
	}

	h3 {
		font-size: 1.5em;
		font-weight: 700;
		margin: 0 0 1rem 0;
		color: var(--il-orange);
		letter-spacing: -0.7px;
	}

	p + h3 {
		margin-top: 3rem;
	}

	h1 a,
	h2 a,
	h3 a,
	h4 a {
		text-decoration: none;
	}


	p, ul, ol, dl {
		margin-bottom: 1.6rem;
	}

		div.col-md > p:last-child, div.col-md > ul:last-child, div.col-md > ol:last-child, div.col-md > dl:last-child {
			margin-bottom: 0;
		}

	li {
		margin-bottom: 0.25rem;
	}

		li:last-child {
			margin-bottom: 0;
		}

	table th {
		background-color: var(--engr-ghost);
	}
	
	.platinum-box table th {
		background-color: #dddede;
	}

	img.image {
		max-width: 100%;
	}

	h5 img.image {
		margin-bottom: 1.1rem;
	}

	.photo,
	figure {
		margin: 0 auto 1.6rem auto;
		max-width: 100%;
	}

		figure.portrait,
		figure.image {
			display: table;
		}

		figure.portrait.align-left,
		figure.image.align-left {
			float: left;
			margin-right: 1.6rem;
			margin-top: 0.6rem;
			max-width: 50%;
		}

		figure.portrait.align-right,
		figure.image.align-right {
			float: right;
			margin-left: 1.6rem;
			margin-top: 0.6rem;
			max-width: 50%;
		}

		figure.portrait.align-center,
		figure.image.align-center {
			display: table;
			margin-left: auto;
			margin-right: auto;
			margin-top: 0.6rem;
		}

			figure.portrait figcaption,
			figure.image figcaption {
				display: table-caption;
				caption-side: bottom;
			}

		img.image.align-left {
			float: left;
			margin-right: 1.6rem;
			margin-top: 0.6rem;
			margin-bottom: 0.6rem;
			max-width: 50%;
		}

		img.image.align-right {
			float: right;
			margin-left: 1.6rem;
			margin-top: 0.6rem;
			margin-bottom: 0.6rem;
			max-width: 50%;
		}

		img.image.align-center {
			display: block;
			margin-left: auto;
			margin-right: auto;
			margin-top: 0.6rem;
			margin-bottom: 0.6rem;
		}

	iframe {
		max-width: 100%;
	}

	img {
		max-width: 100%;
		height: auto;
	}

	a {
		color: var(--il-industrial-blue);
		text-decoration: underline;
	}

		a:hover {
			color: var(--il-altgeld);
			text-decoration: underline;
		}
	
	strong {
		font-weight: 700;
	}

	table {
		width: 100%;
		margin-bottom: 2rem;
		border-bottom: 1px solid #dee2e6;
	}
		table.table {
			margin-bottom: 2rem;
		}
}


/* header */
@media all {
	/*#skiptocontent a {
		padding: 6px;
		position: absolute;
		top: -50px;
		left: 0px;
		color: white;
		border-bottom-right-radius: 8px;
		background: var(--engr-royal);
		-webkit-transition: top 1s ease-out;
		transition: top 1s ease-out;
		z-index: 1001;
	}

		#skiptocontent a:focus {
			position: absolute;
			left: 0px;
			top: 0px;
			outline: none;
			box-shadow: rgba(0,0,0,0.6) 0px 0px	10px;
			-webkit-transition: top .1s ease-in;
			transition: top .1s ease-in;
			text-decoration: underline;
		}*/
		.uofi-skipto-plugin {
			z-index: 100000;
		}
		.skip-to{
			top: -50px !important;
		}
		.skip-to.focus{
			top: 0px !important;
		}

	body.scrollbar #scrollbar {
		display: block;
		position: fixed;
		background-color: var(--il-orange);
		width: 0%;
		height: 3px;
		top: 0px;
		left: 0px;
		content: '';
		z-index: 1001;
	}

}





/* content */
@media all {
	#content {
		margin-top: 0px;
	}

	body.landing #content {
		margin-top: 0px;
	}

	#content .container-fluid {
		position: relative;
	}

}


/* pills */
@media all {

	.nav-pills {
		font-size: 0.8rem;
	}

	.nav-pills li {
		margin-bottom: 0;
	}

	.nav-pills .nav-link {
		border: none;
		border-radius: 25px;
		margin: 0 0.5rem 0.5rem 0;
		background-color: var(--engr-platinum);
		color: var(--engr-charcoal);
		padding: 0.5rem 1.5rem;
	}

	.nav-pills .nav-link.active {
		background-color: var(--engr-royal);
	}

}


/* buttons and special links */
@media all {

	.button {
		border: 1px solid var(--engr-royal);
		background-color: transparent;
		color: var(--engr-royal);
		font-weight: 600;
		min-height: 46px;
		display: inline-block;
		line-height: 34px;
		text-align: center;
		padding: 4px 2rem;
		text-decoration: none;
		margin-bottom: 0.5rem;
	}

		.button:hover {
			background-color: var(--engr-royal) !important;
			color: var(--engr-white) !important;
			text-decoration: none !important;
		}

		.button.orange {
			background-color: var(--il-orange) !important;
			border-color: var(--il-orange) !important;
			color: var(--engr-white) !important;
		}

			.button.orange:hover {
				background-color: var(--engr-royal) !important;
				border-color: var(--engr-royal) !important;
				color: var(--engr-white) !important;
			}

		.button.platinum {
			background-color: var(--engr-platinum);
			border-color: var(--engr-platinum);
			color: var(--engr-charcoal);
		}


			.button.platinum:hover {
				background-color: var(--engr-royal);
				border-color: var(--engr-royal);
				color: var(--engr-white);
			}


		.button.active {
			background-color: var(--engr-royal);
			border-color: var(--engr-royal);
			color: var(--engr-white);
		}


	button.button {
		background-color: var(--engr-royal);
		color: var(--engr-white) !important;
		border: none;
		font-size: 0.8em;
		border-radius: 0.2rem;
		margin-bottom: 1rem;
		height: auto;
	}

	#content .dropdown-menu {
		max-height: 50vh;
		overflow: auto;
		border-radius: 0;
		box-shadow: rgb(0 0 0 / 40%) 0px 25px 25px;
	}


		#content .dropdown-menu a {
			color: var(--engr-charcoal);
			display: block;
			text-decoration: none;
		}

			#content .dropdown-menu a:hover {
				color: var(--engr-royal);
			}

			#content .dropdown-menu a.active {
				background-color: var(--engr-ghost);
			}

	.light-text .button {
		color: var(--engr-white);
		border-color: var(--engr-white);
	}
	
	.dropdown-toggle::after {
		border: none;
		content: '\f078';
		font-family: 'Font Awesome 5 Pro';
		font-size: 14px;
		vertical-align: middle;
		margin-left: 10px;
	}
}

	
/* hero */
@media all {

	#hero {
		background-image: linear-gradient(to right, rgba(19,41,75, 0.8), rgba(19,41,75, 0.8));
		color: var(--engr-white);
	}

		#hero::before {
			display: block;
			position: absolute;
			content: '';
			width: 100%;
			height: 100%;
			left: 0;
			top: 0;
			background-size: cover;
			background-position-y: center;
			background-position-x: center;
			background-repeat: no-repeat;
			z-index: -1;
			/*filter: grayscale(100%);*/
			background-image: url(https://ws.engr.illinois.edu/sitemanager/viewphoto.aspx?id=45);
		}

/*

	#hero {
		background-size: cover;
		background-position-y: center;
		background-position-x: center;
		background-repeat: no-repeat;
		background-image: url(https://ws.engr.illinois.edu/sitemanager/viewphoto.aspx?id=45);
	}

		#hero::before {
			display: block;
			position: absolute;
			content: '';
			width: 100%;
			height: 100%;
			left: 0;
			top: 0;


			background-image: linear-gradient(to right, rgba(19,41,75, 0.8), rgba(19,41,75, 0.8));
			color: var(--engr-white);

		}

*/




		#hero .row {
			align-items: center;
			padding: 3.5rem 0 3.5rem 0;
			
		}

			#hero .row .col {
				padding-right: 220px;
			}

		#hero h1 {
			color: var(--engr-white);
			font-weight: 500;
			font-family: "Fjalla One";
			font-size: 2.4em;
			margin: 0 0 0.75rem 0;
			line-height: 1.25;
		}


	#hero .herolink {
		margin-top: 2rem;
	}

	#hero .button {
		border-color: var(--engr-white);
		color: var(--engr-white);
	}
		#hero .button:hover {
			background-color: var(--il-orange);
			border-color: var(--il-orange);
		}

		#hero .subtitle {
			max-width: 680px;
		}


	body.landing #hero {
		background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.8));
		text-align: left;
	}

		/*
		body.landing #hero::before {
			filter: initial;
		}
		*/

	body.landing #hero .row {
		/*height: 50vw;
		max-height: 50vw;
		min-height: 400px;
		min-height: 25vw;
		
		*/
		min-height: 35vw;
		align-items: flex-end;
		padding-top: 120px;
		padding-bottom: 4rem;
	}

	body.landing #hero h1 {
		font-weight: 500;
		font-size: 3.6em;
		display: inline-block;
		position: relative;
	}


	body.landing.home #hero {
		text-align: left;
	}

	body.landing.home #hero .row {
		padding-bottom: 6rem;
		height: calc(100vh - 125px);
		min-height: initial;
		max-height: initial;
	}

	body.landing.home #hero h1 {
		margin-bottom: 1rem;
		font-size: 2.7em;
		max-width: 650px;
	}

		body.landing.home #hero h1::after {
			display: none;
		}

		body.landing.home #hero .subtitle {
			max-width: 600px;
			font-size: 1.2rem;
		}

	body.nohero #hero {
		display: none;
	}

}


/* roadmap */
@media all {

	body.noroadmap #breadcrumbs,
	body.noroadmap #secnav,
	body.noroadmap #roadmap {
		display: none;
	}

	body.nochildnav #childnav {
		display: none;
	}

}


/* footer */
@media all {
	footer {
		position: relative;
		z-index: 2;
		font-size: 0.9em;
		position: relative;
		line-height: 150%;
		background-color: var(--il-blue);
		color: var(--engr-white);
	}

		footer::before {
			content: '';
			display: block;
			position: absolute;
			top: 0px;
			left: 0px;
			width: 100%;
			height: 6px;
			background-image: linear-gradient(to right, rgba(255, 95, 5, 1), rgba(204, 0, 0, 1));
		}

		footer h2 {
			font-size: 1.1em;
			text-transform: uppercase;
			border-bottom: 2px solid var(--il-storm);
			padding-bottom: 1rem;
			margin-bottom: 1rem;
			letter-spacing: 2px;
		}

		footer ul {
			list-style-type: none;
			padding: 0;
		}

		footer li {
			margin-bottom: 0;
		}

		footer a {
			color: var(--engr-white);
			text-decoration: none;

		}

			footer a:hover {
				color: var(--il-orange);
			}


		footer .button {
			color: var(--engr-white);
			border-color: var(--engr-white);
		}

			footer .button:hover {
				border-color: var(--il-orange);
				background-color: var(--il-orange);
				color: var(--engr-white);
			}


		footer .campus_wordmark img {
			width: 225px;
		}
		
		footer .imark a {
			display: inline-block;
			height: 38px;
			padding: 0px 0px 0px 42px;
			margin: 0 0 .25rem 0;
			background-image: url(//ws.engr.illinois.edu/images/block.i.orange.png);
			background-size: contain;
			background-repeat: no-repeat;
			font-weight: 700;
			text-transform: uppercase;
			font-size: 38px;
			line-height: 38px;
			color: var(--engr-white);
		}
			
			footer .imark a:hover{
				text-decoration: none;
			}

		footer .department {
			font-weight: 600;
		}

		footer .coll_name {
			font-size: 1rem;
			margin: 0px 0px 2rem 0px;
			font-size: 1.75em;
			font-weight: 200;
		}

			footer .coll_name a {
				color: var(--engr-white);
			}


		footer .socials {
			display: flex;
			flex-wrap: nowrap;
			justify-content: flex-end;
			align-items: baseline;
		}

		footer .socials a {
			line-height: 40px;
			align-items: center;
			display: flex;
			margin-bottom: 1.5rem;
		}
	
			footer .socials a:hover {
				text-decoration: none;
			}

			footer .socials .button {
				margin-left: 0.5rem;
				height: 40px;
				padding: 5px 15px;
				white-space: nowrap;
			}



			footer .socials a i {
				font-size: 1.4em;
				margin-left: 0.75rem;
				margin-right: 0.75rem;
			}

		footer .socials.top-aligned a {
			align-items: unset;
		}

		footer .phone ul li {
			overflow: auto;
		}

			footer .phone ul li span {
				display: block;
				float: left;
			}
			
			footer .phone ul li a {
				float: right;
			}


		footer #legal {
			border-top: 5px solid var(--il-alma-mater);
		}

			footer #legal p {
				margin: 0;
			}

			footer #legal a {
				color: var(--engr-platinum);
				text-decoration: underline;
				padding: 5px;
			}

			footer #legal a:hover,
			footer #legal a:focus {
				outline: 2px dotted var(--engr-white);
			}

			footer #legal #ot-sdk-btn.ot-sdk-show-settings {
				border: 1px solid var(--engr-white);
				border-radius: 5px;
				font-size: inherit;
				line-height: inherit;
				background-color: var(--il-alma-mater) !important;
				padding: 0.8em 2em;
				text-decoration: none;
				font-family: inherit !important;
			}

	footer #legal #ot-sdk-btn.ot-sdk-show-settings:hover {
		background-color: var(--engr-white) !important;
	}


/* forms */
@media all {
	/*
	.form-control {
		font-size: 0.8em;
	}

	.input-group-text {
		font-size: 0.8em;
	}

	*/


	 button.form-control {
		border: 2px solid var(--engr-royal);
		border-radius: 0.2rem;
		background-color: var(--engr-white);
		color: var(--engr-royal);
		height: 46px;
		display: inline-block;
		line-height: 34px;
		text-align: center;
		padding: 4px 2rem;
		width: auto;
		font-size: 1em;
	}

			button.form-control:hover {
				background-color: var(--engr-royal);
				color: var(--engr-white);
			}
/*
	.form-check {
		padding-left: 2.25rem;
	}

	.form-check-input {
		width: 30px;
		height: 30px;
		margin-left: -2.25rem;
	}

	.form-check-label {
		margin-top: 5px;
	}
*/

}


/* fact boxes */
@media all {
	.fact-boxes {
		display: flex;
		flex-wrap: wrap;
		margin: 0rem -10px 0rem -10px;
	}

		.fact-boxes .item {
			background-color: var(--engr-platinum);
			padding: 2rem 1rem;
			text-align: center;
			margin: 0.5rem;
			overflow: hidden;
			flex: 0 0 calc(25% - 1rem);
			max-width: calc(25% - 1rem);
			color: var(--engr-charcoal);
		}

		.item.w33 {
			flex: 0 0 calc(33% - 1rem);
			max-width: calc(33% - 1rem);
		}

		.item.w50 {
			flex: 0 0 calc(50% - 1rem);
			max-width: calc(50% - 1rem);
		}

		.item.w100 {
			flex: 0 0 calc(100% - 1rem);
			max-width: calc(100% - 1rem);
		}

		.fact-boxes .nav-item {
			padding: 0;
		}

		.fact-boxes .item a {
			color: var(--il-industrial-blue) !important;
		}

			.fact-boxes .nav-item a {
				padding: 2rem 1rem;
				display: block;
				line-height: 1.2;
				height: 100%;
				text-decoration: none;
			}

			.fact-boxes .nav-item a.active,
			.fact-boxes .item:hover {
				background-color: var(--engr-royal);
				color: var(--engr-white);
			}

				.fact-boxes .item:hover a {
					color: var(--engr-white) !important;
				}

				.fact-boxes .nav-item a.active .charcoal-text,
				.fact-boxes .item:hover a .charcoal-text {
					color: var(--engr-white);
				}

		.fact-boxes h2:last-child {
			margin-top: 1rem;
			margin-bottom: 1rem;
		}

		.fact-boxes p {
			line-height: 1.5;
		}

	.fact-boxes h3 {
		margin: 0 auto;
	}

		.fact-boxes .item p:first-child {
			font-weight: 600;
			font-size: 2.25em;
			color: var(--engr-royal);
			margin-bottom: 1rem;
			line-height: 1.2;
		}

		.fact-boxes .item:hover p:first-child {
			color: var(--engr-white);
		}


}


/* multi-calendar widget */
@media all {
	.fact-boxes .calendar {
			background-color: var(--engr-platinum);
			text-align: center;
			margin: 0.5rem;
			overflow: hidden;
			flex: 0 0 calc(100% - 1rem);
			max-width: calc(100% - 1rem);
		}
	
		.fact-boxes .calendar:first-child {
			margin-top: 0rem;
		}

	.fact-boxes .calendar a {
		padding: 1.2rem 1rem;
		color: var(--engr-charcoal);
	}
	
	/* bg-color responsive */
	.charcoal-box .fact-boxes .calendar a:not(.active), 
	.navy-box .fact-boxes .calendar a:not(.active), 
	.royal-box .fact-boxes .calendar a:not(.active), 
	.orange-box .fact-boxes .calendar a:not(.active) {
		color: var(--engr-charcoal);
	}

	.charcoal-box .calendar-list p a:not(.button), 
	.navy-box .calendar-list p a:not(.button), 
	.royal-box .calendar-list p a:not(.button), 
	.orange-box .calendar-list p a:not(.button) {
		color: var(--engr-white);
	}

	.charcoal-box .calendar-list p a:not(.button):hover,
	.navy-box .calendar-list p a:not(.button):hover {
		color: var(--il-orange);
	}

	.royal-box .fact-boxes .calendar, 
	.orange-box .fact-boxes .calendar {
		background-color: var(--engr-ghost);
	}

	.royal-box .fact-boxes .calendar a.active, 
	.orange-box .fact-boxes .calendar a.active {
		background-color: var(--il-blue);
	}

	.royal-box .calendar-list .date, 
	.orange-box .calendar-list .date{
		background-color: var(--il-blue);
	}

	.royal-box .calendar-list p a:hover, 
	.orange-box .calendar-list p a:hover {
		color: var(--il-blue);
	}
	
	.platinum-box .fact-boxes .calendar {
		background-color: var(--engr-white);
	}

	.ghost-box .fact-boxes .calendar {
		background-color: var(--il-cloud-2);
	}

}

/* tablist modules */
@media all {
	.tablist{
		position: sticky;
		top: 1rem;
	}
	
	.tablist .nav-link {
		transition: 0.5s all;
		text-decoration: none;
	}
	
		.navy-box .tablist .nav-link,
		.charcoal-box .tablist .nav-link {
			color: var(--engr-white);
		}

	.tablist .nav-link:hover,
	.tablist .nav-link:focus {
		background: var(--il-cloud-3);
		color: var(--il-industrial-blue);
	}
		
		.navy-box .tablist .nav-link:hover,
		.navy-box .tablist .nav-link:focus {
			background: var(--il-industrial-blue);
			color: var(--engr-white);
		}
	
	.tablist .nav-link.active,
	.navy-box .tablist .nav-link.active {
		font-weight: 700;
		background: var(--il-orange);
		color: var(--engr-white);
	}
	
	.navy-box .tablist .list-group-item {
		border-bottom: 1px solid var(--il-industrial-blue);
	}
	
	.tabdropdown-container {
		display: none;
	}
}



/* fact-bubbles */
@media all {
	div.fact-bubbles {
		display: flex;
		flex-wrap: wrap;
		margin: 4rem 0px 4rem 0px;
	}
	
		div.fact-bubbles .item {
			margin: 0 auto;
			padding: 25px;
			text-align: center;
			overflow: hidden;
			flex: 0 0 33%;
			max-width: 33%;
		}

		div.fact-bubbles p {
			margin-bottom: 0rem;
		}

		div.fact-bubbles .item p:first-child {
			font-weight: 600;
			font-size: 8rem;
			line-height: 1.3;
			margin-bottom: 0rem;
		}

			div.fact-bubbles .item.royal p:first-child {
				color: var(--engr-royal);
			}

			div.fact-bubbles .item.navy p:first-child {
				color: var(--il-blue);
			}

			div.fact-bubbles .item.orange p:first-child {
				color: var(--il-orange);
			}
}


/* expandolist */
@media all {
	.expandolist {
		padding-left: 3rem;
	}
		
	.expandolist p {
		margin-bottom: 1.2em;
	}

	.expandolist a[role=button] {
		font-size: 1.2em;
		font-weight: 400;
		position: relative;
	}


	.expandolist a[data-toggle=collapse] {
	}

		.expandolist a[role=button][aria-expanded=true] {
			color: var(--il-orange);
		}
	
		.orange-box .expandolist a[role=button][aria-expanded=true] {
			color: var(--engr-white);
		}

		.expandolist a[role=button]::before {
			content: '\f0a9';
			font-family: 'Font Awesome 5 Pro';
			font-weight: 300;
			display: block;
			position: absolute;
			top: 0px;
			left: -2.5rem;
			font-size: 1.6rem;
			line-height: 1;
			transition: transform linear 0.2s;
		}

		.expandolist a[role=button][aria-expanded=true]::before {
			transform: rotate(90deg);
		}

	.expandolist > div p:last-child {
		margin-bottom: 2em;
	
	}

}


/* expandotile */
@media all {
	.expandotile .expandotitle {
		position: relative;
		padding: 2rem 0;
	}

		.expandotile .expandotitle h2 {
			margin: 0;
			line-height: 4rem;
		}

		.expandotile .expandotitle a {
			color: var(--engr-charcoal);
		}


		.expandotile .expandotitle a[data-toggle=collapse]::before {
			content: '\f0a9';
			font-family: 'Font Awesome 5 Pro';
			font-weight: 300;
			display: block;
			position: absolute;
			right: 0;
			font-size: 4rem;
			line-height: 1;
			transition: transform linear 0.2s;
			color: var(--engr-royal);
		}

		.expandotile .expandotitle a[data-toggle=collapse][aria-expanded=true]::before {
			transform: rotate(90deg);
			color: var(--il-orange);
		}

		.expandotile .expandotitle a[data-toggle=collapse][aria-expanded=true] {
		}

}

/* accordion */
.accordion {
	display: flex;
	flex-wrap: wrap;
	padding: 1rem 2rem 1rem 2rem;
	margin-bottom: 1em;
	border: 1px solid var(--engr-charcoal);
}

	.accordion > h2,
	.accordion > h3,
	.accordion > h4,
	.accordion > h5,
	.accordion > p {
		width: 100%;
		margin-bottom: 0;
	}

.accordion a[data-toggle=collapse] {
	display: block;
	position: relative;
	font-size: 1.2em;
	color: var(--engr-charcoal);

}

.accordion a[data-toggle=collapse]::after {
	content: '\f13a';
	font-family: 'Font Awesome 5 Pro';
	font-weight: 300;
	display: inline;
	position: absolute;
	right: 0;
	font-size: 1.2rem;
	line-height: 1.8;
	transition: transform linear 0.2s;
}

.accordion a[data-toggle=collapse][aria-expanded=true]::after {
	transform: rotate(-180deg);
}

.accordion > div p:first-child {
	margin-top: 1rem;
}

.navy-box .accordion,
.charcoal-box .accordion,
.royal-box .accordion,
.orange-box .accordion {
	border: 1px solid var(--engr-white);
}

.navy-box.fingerprint .accordion {
	background-color: var(--il-blue);
}

.navy-box .accordion a[role=button],
.charcoal-box .accordion a[role=button],
.royal-box .accordion a[role=button],
.orange-box .accordion a[role=button] {
	color: var(--engr-white);
}


/* directory listing */
@media all {
	#sortable {
		margin-left: -0.5rem;
		margin-right: -0.5rem;
	}

	div.directory-list {
		display: flex;
		flex-wrap: wrap;
		line-height: 1.4;
		margin-bottom: 1rem;
	}

		div.directory-list .item {
			position: relative;
			padding: 0;
			margin: 1rem 0.5rem 1rem 0.5rem;
			overflow: hidden;
			flex: 0 0 calc(33% - 1rem);
			max-width: calc(33% - 1rem);
			min-width: calc(33% - 1rem);
		}


		div.directory-list.directory-list-1 .item {

			flex: 0 0 calc(100%);
			max-width: calc(100%);
			min-width: calc(100%);
			display: flex;
			flex-wrap: nowrap;
			margin: 0;
			padding: 1rem 0 0 0;
			border-bottom: 2px solid var(--engr-platinum);
		}

			div.directory-list.directory-list-1 .item p {
				margin-bottom: 1rem;
			}

			div.directory-list.directory-list-1 .item .photo {
				height: 300px;
				flex: 0 0 300px;
			}

			div.directory-list.directory-list-1 .item .details {
				padding: 0 0 0 2rem;
				flex: 0 0 calc(100% - 300px);
				border-top: none;
			}

			div.directory-list.directory-list-1 .item .name {
				font-size: 1.5rem;
			}

			div.directory-list.directory-list-1 .item .contact {
				position: static;
				padding: 0;
			}

		div.directory-list.directory-list-4 .item {
			flex: 0 0 calc(25% - 1rem);
			max-width: calc(25% - 1rem);
			min-width: calc(25% - 1rem);
		}

		div.directory-list.directory-list-5 .item {
			flex: 0 0 calc(20% - 1rem);
			max-width: calc(20% - 1rem);
			min-width: calc(20% - 1rem);
		}

		div.directory-list.directory-list-6 .item {
			flex: 0 0 calc(16.666666% - 1rem);
			max-width: calc(16.666666% - 1rem);
			min-width: calc(16.666666% - 1rem);
			font-size: 0.8em;
		}


		div.directory-list .item .photo {
			width: 100%;
			height: 340px;
			margin-bottom: 1rem;
			background-size: cover;
			background-position: center 20%;
		}

		div.directory-list.directory-list-4 .item .photo {
			height: 340px;
		}

		div.directory-list.directory-list-5 .item .photo {
			height: 265px;
		}

		div.directory-list.directory-list-6 .item .photo {
			height: 220px;
		}

		#sidebar_wrapper div.directory-list .item .photo {
			width: 100%;
			height: 245px;
			margin-bottom: 1rem;
			background-size: cover;
			background-position: center 20%;
		}

		#sidebar_wrapper div.directory-list.directory-list-4 .item .photo {
			height: 235px;
		}

		#sidebar_wrapper div.directory-list.directory-list-5 .item .photo {
			height: 185px;
		}

		#sidebar_wrapper div.directory-list.directory-list-6 .item .photo {
			height: 150px;
			margin-bottom: 0.75rem;
		}

		div.directory-list .item .details {
			position: relative;
			border-top: 2px solid var(--il-orange);
			padding-top: 0.75rem;
		}

			.charcoal-box div.directory-list .item .details {
				border-top: 2px solid var(--engr-royal);
			}

		div.directory-list .item .name {
			margin-bottom: 0.25rem;
			font-weight: 700;
		}
	
		div.directory-list .item .title {
			margin-bottom: 0.25rem;
		}

		div.directory-list .item .contact {
			position: absolute;
			display: flex;
			align-items: baseline;
			top: -13px;
			right: 0;
			background-color: var(--engr-white);
			padding: 0 0 0 5px;
		}

			.ghost-box div.directory-list .item .contact {
				background-color: var(--engr-ghost);
			}
	
			.platinum-box div.directory-list .item .contact {
				background-color: var(--engr-platinum);
			}
	
			.charcoal-box div.directory-list .item .contact {
				background-color: var(--engr-charcoal);
			}
	
			.charcoal-box div.directory-list .item .contact .fa-circle {
				color: var(--engr-royal);
			}

			div.directory-list .item .contact div.web {
				display: inline-block;
				text-align: center;
				font-size: 0.6em;
			}

			div.directory-list .item .contact div.phone {
				display: inline-block;
				text-align: center;
				font-size: 0.6em;
			}

				div.directory-list .item .contact div.phone a[href="tel:"] {
					display: none;
				}


			div.directory-list .item .contact div.email {
				display: inline-block;
				text-align: center;
				font-size: 0.6em;
			}

				div.directory-list .item .contact div.email a[href="mailto:none"] {
					display: none;
				}

			div.directory-list .item .contact div.linkedin {
				text-align: center;
				font-size: 0.6em;
			}

			div.directory-list .item .contact .dept a {
				display: block;
				text-transform: uppercase;
				text-decoration: none;
				font-weight: bold;
				color: var(--engr-white);
				background-color: var(--il-industrial-blue);
				border-radius: 12px;
				padding: 3px 8px;
				font-size: 0.7em;
				margin: 2px 3px;
			}

			div.directory-list .item .biography {
				margin-top: 1rem;
			}


		div.directory-list .item ul {
			list-style-type: none;
			padding: 0;
			margin: 0 0 1rem 0;
		}
		
		div.directory-list .item .bulleted ul {
			list-style-type: disc;
		}
	
	
	.ghost-box div.directory-list .item .name {
		border-color: var(--engr-royal);
	}

	.directory-profile {
		display: inline-block;
		width: 100%;
	}

	.directory-profile .extProfilePhotoMissing {
		display: none;
	}

	.directory-profile .roles {
		margin-bottom: 1.6rem;
	}

	.directory-profile .roles .role {
		margin-bottom: 1rem;
	}


	.directory-profile .roles h2 {
		display: none;
	}

	.directory-profile .roles ul {
		list-style-type: none;
		padding: 0;
		margin-bottom: 0.5rem;
		line-height: 1.2;
	}
		.directory-profile .roles ul li {
			margin-bottom: 0.5rem;
		}
	
	.directory-profile .roles .groups ul {
		margin-bottom: 0rem;
	}

	.directory-profile .roles .email a[href="mailto:none"] {
		display: none;
	}

}


/* tiles */
@media all {

	.tile-list {
		display: flex;
		flex-wrap: wrap;
		margin-bottom: 1.2rem;
		overflow-anchor: none;
	}

		/* tile */

		.tile-list .tile {
			position: relative;
			margin: 1.2rem 0.6rem 0 0.6rem;
			background-size: cover;
			background-position: center center;
			background-repeat: no-repeat;
		}


			.tile-list .tile.w25 {
				flex: 0 0 calc(25% - 1.2rem);
				max-width: calc(25% - 1.2rem);
				min-width: calc(25% - 1.2rem);
			}

			.tile-list .tile.w33 {
				flex: 0 0 calc(33.33333333333% - 1.2rem);
				max-width: calc(33.33333333333% - 1.2rem);
				min-width: calc(33.33333333333% - 1.2rem);
			}

			.tile-list .tile.w50 {
				flex: 0 0 calc(50% - 1.2rem);
				max-width: calc(50% - 1.2rem);
				min-width: calc(50% - 1.2rem);
			}

			.tile-list .tile.w66 {
				flex: 0 0 calc(66.66666666666% - 1.2rem);
				max-width: calc(66.66666666666% - 1.2rem);
				min-width: calc(66.66666666666% - 1.2rem);
			}

			.tile-list .tile.w100 {
				flex: 0 0 calc(100% - 1.2rem);
				max-width: calc(100% - 1.2rem);
				min-width: calc(100% - 1.2rem);
			}

			.tile-list .tile.w110 {
				margin-left: -15px;
				margin-right: -15px;
				flex: 0 0 calc(100% + 30px);
				max-width: calc(100% + 30px);
				min-width: calc(100% + 30px);

			}

				.tile-list .tile.w110 + .tile.w110 {
					margin-top: 0rem;
				}

				#content .tile-list .tile.w110:first-child {
					margin-top: 0 !important;
					padding-top: 3rem !important;
				}

				#content .tile-list .tile.w110:last-child {
					margin-bottom: -1.2rem;
				}

				.tile-list .tile.w110 + .tile.w110 {
					margin-top: 0;
				}

			.tile-list .tile.sbs {
				flex: 0 0 calc(100% - 1.2rem);
				max-width: calc(100% - 1.2rem);
				min-width: calc(100% - 1.2rem);
				display: flex;
				flex-wrap: nowrap;
				margin-left: 0;
				margin-right: 0;
			}

				.tile-list .tile.sbs > div {
					flex: 0 0 calc(50% - 0.6rem);
					max-width: calc(50% - 0.6rem);
					min-width: calc(50% - 0.6rem);
					margin-left: 0.6rem;
					margin-right: 0.6rem;
					order: 1;
				}

				.tile-list .tile.sbs > div.first {
					order: 0;
				}


			.tile-list .tile.chevron {
				clip-path: polygon(0% -1px, 100% -1px, 100% 80%, 50% 100%, 0% 80%);
				-webkit-clip-path: polygon(0% -1px, 100% -1px, 100% 80%, 50% 100%, 0% 80%);
			}

			/* upper */

			.tile-list .tile .upper-cover {
				width: 100%;
				height: 400px;
				margin: 0rem;
				background-size: cover;
				background-position: top center;
				padding-left: 1rem;
				padding-right: 1rem;
			}

			.tile-list .tile .upper {
				width: 100%;
				height: 300px;
				margin: 0rem;
				background-size: cover;
				background-position: center center;
				padding-left: 1rem;
				padding-right: 1rem;
			}


				.tile-list .tile.sbs .upper {
					height: auto;
					min-height: 500px;
				}

			/* lower */

			.tile-list .tile .lower {
				position: relative;
				padding-left: 15px;
				padding-right: 15px;
				margin: 0 auto;
				background-size: cover;
				background-position: center center;
				z-index: 2;  /* jp 2022.06.29 removed because this interferes with bootstrap modals */
								/* jp 2022.07.01 had to add this back in becuase it broke colorfy background gradients. will need to investigate further */
			}

				.tile-list .tile .lower:first-child {
					height: 100%;
				}

				.tile-list .tile .lower > .row {
					height: 100%;
				}

					.tile-list .tile.w110:first-child .lower {
						padding-top: 0rem;
					}

				.tile-list .tile .lower.maxheight600 {
					max-height: 600px;
					overflow: auto;
				}

			/* columns */
			.tile-list .tile .column1,
			.tile-list .tile .column2,
			.tile-list .tile .column3 {
				position: relative;
				background-size: cover;
				background-position: center center;
				background-repeat: no-repeat;
			}

		.inner {
			max-width: 509px;
			margin: 0 auto;
			padding-left: 1rem;
			padding-right: 1rem;
		}

		.tile-list .tile.marketing {
			border-right: 1px solid var(--il-orange);
			padding: 20px 20px;
			margin: 1.2rem 0;
			font-size: 1.2rem;
			line-height: 1.5;
			text-align: center;
			font-weight: 700;
			/*			display: flex;
				flex-wrap: wrap;
	*/
			align-items: center;
			color: var(--il-blue);
		}

			/*
			.tile-list .tile.marketing > * {
				margin-left: auto;
				margin-right: auto;
				width: 100%;
			}
*/
			.tile-list .tile.marketing h2 {
				font-size: 1.2rem;
			}


			.tile-list .tile.marketing .button {
				font-size: 1rem;
				transition: background-color ease-in-out 0.25s;
			}

			.tile-list .tile.wide .left {
				width: 100%;
				height: 225px;
				margin: 0rem;
				background-size: cover;
				background-position: center center;
				padding-left: 1rem;
				padding-right: 1rem;
			}
			.tile-list .tile.wide h2 a {
				color: var(--engr-charcoal);
			}
			.tile-list .tile.wide h2 a:hover {
				color: var(--il-industrial-blue);
				text-decoration: none;
			}			
}


/* sliders */
@media all {
	.slick-prev, .slick-next {
		position: absolute;
		font-size: 25px;
		line-height: 39px;
		top: calc(50% - 30px);
		width: 55px;
		height: 55px;
		margin: 0px;
		padding: 8.5px;
		cursor: pointer;
		color: var(--engr-white);
		border: none;
		outline: none;
		background-color: transparent;
		opacity: 0.6;
		border-radius: 28px;
		transition: opacity 500ms ease;
	}

	.slick-prev {
		left: 0px;
		z-index: 3;
	}

	.slick-next {
		right: 0px;
		z-index: 3;
	}

		.slick-prev:hover, .slick-next:hover {
			opacity: 1;
		}



	.slick-dots {
		padding: 0 15px;
		margin: 0;
		list-style: none;
		text-align: center;
		line-height: 10px;
	}

		.slick-dots li {
			position: relative;
			display: inline-block;
			margin: 0;
			padding: 12px;
			cursor: pointer;
		}

			.slick-dots li button {
				font-size: 0;
				line-height: 0;
				width: 10px;
				height: 10px;
				padding: 0;
				cursor: pointer;
				color: transparent;
				border: 0;
				border-radius: 5px;
				background-color: var(--engr-white);
			}

			.slick-dots li.slick-active button {
				background-color: var(--il-orange);
			}



	.white-box .slick-dots li button {
		background-color: #e0e0e0;
	}

	.white-box .slick-dots li.slick-active button,
	.platinum-box .slick-dots li.slick-active button {
		background-color: var(--il-orange);
	}


	.platinum-box .slick-dots li button {
		background-color: var(--engr-royal);
	}

	.orange-box .slick-dots li.slick-active button {
		background-color: var(--il-blue);
	}

	.slider-deck .slick-slide {
		min-height: 400px;
		background-color: var(--engr-platinum);
		background-size: cover;
		background-repeat: no-repeat;
		background-position-x: center;
		position: relative;
	}

		.slider-deck .slick-slide:focus {
			outline: none;
		}

		.slider-deck .slide-content {
			position: absolute;
			bottom: 0px;
			color:#fff;
			width: 100%;
			margin: 0 auto;
			z-index: 2;
			padding: 0 80px;
			padding-top: 1.5rem;
			background-color: rgba(0, 0, 0, 0.6);
		}

			.slider-deck .slide-content h2 {
				margin-bottom: 1rem;
				letter-spacing: -1px;
				max-width: 700px;
			}
		
		.slider-deck .slick-prev,
		.slider-deck .slick-next {
			background-color: rgba(0, 0, 0, 0.6);
			border-radius: 0;
		}		


	.slider-one .slick-slide {
		min-height: 400px;
		background-size: cover;
		background-repeat: no-repeat;
		padding: 1rem;
	}

		.slider-one .slick-slide:focus {
			outline: none;
		}

	.slider-cover {
		min-height: 400px;
		height: 100%;
	}

		.slider-cover .slick-list {
			height: 100%;
		}

		.slider-cover .slick-track {
			height: 100%;
		}

		.slider-cover .slick-slide {
			width: 100%;
			height: 100%;
			min-height: 400px;
			background-size: cover;
			background-position: center center;
		}




	.slider-feature {
		min-height: 400px;
		height: 700px;
		opacity: 0;
		transition: opacity ease-in-out 1s;
	}

	#content .tile-list .tile.w110:first-child .slider-feature {
		margin-top: -3rem;
	}

	body.home .slider-feature {
		height: 40vw;
		max-height: 768px;
	}

		.slider-feature .slick-list {
			height: 100%;
		}

		.slider-feature .slick-track {
			height: 100%;
		}

		.slider-feature .slick-slide {
			position: relative;
			width: 100%;
			height: 100%;
			background-size: cover;
			background-position: center center;
			align-items: flex-end;
			display: flex;
			padding-bottom: 4rem;
		}

			.slider-feature .slick-slide::before {
				position: absolute;
				display: block;
				width: 100%;
				height: 100%;
				top: 0px;
				left: 0px;
				content: '';

				background-image: linear-gradient(
					to bottom, 
					rgba(0, 0, 0, 0.7), 
					rgba(0, 0, 0, 0.6), 
					rgba(0, 0, 0, 0.5), 
					rgba(0, 0, 0, 0.4), 
					rgba(0, 0, 0, 0.3), 
					rgba(0, 0, 0, 0.2), 
					rgba(0, 0, 0, 0.2), 
					rgba(0, 0, 0, 0.3), 
					rgba(0, 0, 0, 0.4), 
					rgba(0, 0, 0, 0.5), 
					rgba(0, 0, 0, 0.6), 
					rgba(0, 0, 0, 0.7)
				);
				z-index: 1;
			}


		.slider-feature .slide-content {
				width: 100%;
				margin: 0 auto;
				z-index: 2;
				max-width: 1170px;
				padding: 0 15px;
				line-height: 1.6;
		}

			.slider-feature .slide-content h2 {
				margin-bottom: 1rem;
				font-size: 2.2em;
				letter-spacing: -1px;
				max-width: 700px;
			}

			.slider-feature img {
				margin: 0 auto;
				max-height: calc(40vw - 7rem);
				width: auto;

			}

			.slider-feature .slide-content .subtitle {
				max-width: 600px;
				font-size: 1.2rem;
			}

			.slider-feature .slide-content .herolink {
				margin-top: 2rem;
			}

		.slider-feature .slick-dots {
			position: relative;
			margin: -50px auto 0 auto;
			padding: 0 15px;
			max-width: 1170px;
			text-align: right;
		}

	/* icon slider */
	.slider-icons {
		margin: 0px 25px;
		overflow: hidden;
		opacity: 0;
		transition: opacity ease-in-out 1s;
	}

		.slider-icons p {
			margin: 0;
		}

		.slider-icons .slick-arrow {
			border-radius: 0px;
			border: none;
			border-color: var(--engr-charcoal);
			width: 60px;
			height: 80%;
			top: 10%;
			color: var(--engr-charcoal);
			font-size: 18px;
			opacity: 0.2;
		}

			.slider-icons:hover .slick-arrow {
				opacity: 0.6;
			}
	
			.slider-icons .slick-arrow:hover {
				opacity: 1;
			}

			.slider-icons .slick-arrow:focus {
				outline: none;
			}

			.slider-icons .slick-arrow.slick-disabled{
				display: none !important;
			}

		.slider-icons .slick-prev {
			left: -25px;
			border-right-style: solid;
			border-right-width: 1px;
		}

		.slider-icons .slick-next {
			right: -25px;
			border-left-style: solid;
			border-left-width: 1px;
		}

		.slider-icons a {
			display: block;
			text-align: center;
			padding: 2rem 0.5rem 2rem 0.5rem;
			color: var(--engr-charcoal);
			font-size: 0.8em;
			text-decoration: none;
		}

			.slider-icons a:hover {
				color: var(--il-orange);
				text-decoration: none;
			}

			.slider-icons a:focus {
				outline: none;
				border-bottom: 1px solid;
			}
		.royal-box .slider-icons .slick-arrow,
		.orange-box .slider-icons .slick-arrow,
		.navy-box .slider-icons .slick-arrow,
		.charcoal-box .slider-icons .slick-arrow {
			border-color: var(--engr-white);
			color: var(--engr-white);
		}
	/*

		.orange-box .slider-icons a,
		.royal-box .slider-icons a,
		.navy-box .slider-icons a,
		.charcoal-box .slider-icons a {
			color: var(--engr-white);
		}
		.royal-box .slider-icons a:hover,
		.navy-box .slider-icons a:hover,
		.charcoal-box .slider-icons a:hover {
			color: var(--il-orange);
		}

		.orange-box .slider-icons a:hover {
			color: var(--il-blue) !important;
		}
*/

	

	/* virtual-tour slider */
	.virtual-tour {
		min-height: 400px;
		height: calc(100vh - 125px);
		opacity: 0;
		transition: opacity ease-in-out 1s;
	}

		.virtual-tour .slick-list {
			height: 100%;
		}

		.virtual-tour .slick-track {
			height: 100%;
		}

		.virtual-tour .slick-slide {
			position: relative;
			width: 100%;
			height: 100%;
			background-size: cover;
			background-position: center center;
			align-items: flex-end;
			display: flex;
		}

			.virtual-tour .slick-slide a.fancybox {
				position: absolute;
				display: block;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				text-indent: -10000px;
			}
	
		.virtual-tour .slick-prev,
		.virtual-tour .slick-next {
			background-color: rgba(0,0,0,0);
			opacity: 1;
			top: 90%;
			font-size: 2em;
		}
	
		.virtual-tour .slick-prev {
			left: calc(100% - 165px);
		}
	
		.virtual-tour .slick-next {
			right: 50px;
		}


		.virtual-tour .slide-content {
			width: 100%;
			margin: 0 auto;
			z-index: 2;
			padding: 0 80px;
			padding-top: 1.5rem;
			background-color: rgba(0, 0, 0, 0.6);
		}
	
	
		.virtual-tour .slick-active .slide-content .description {
			animation: fade-in-up 1s ease;
		}	
	
		.virtual-tour .slide-content .description {
			padding: 1.3rem;
			font-size: 1.2em;
			font-weight: 600;
			line-height: 1.5;
			margin-bottom: 0rem;
			width: 90%;
			padding-bottom: 2rem;
		}
	
	.virtual-tour [data-slick-index="0"] .slide-content {
		height: 100%;
		width: 100%;
		display: flex;
		align-items: center;
		padding: 0;
	}
	
	.virtual-tour [data-slick-index="0"] .slide-content .description {
		max-width: 800px;
		margin: 0 auto;
	}
	
	.virtual-tour [data-slick-index="0"].slick-slide a.fancybox {
		display: none;
	}
	
	
	@keyframes fade-in-up{
		0% {
			opacity: 0;
			-webkit-transform: translateY(100px);
			transform: translateY(100px);
		}
		
		100% {
			opacity: 1;
			-webkit-transform: none;
			transform: none;
		}
	}
	
	
	/*stats slider*/
	.slider-stats {
		margin: 0px 25px;
		overflow: hidden;
		opacity: 0;
		transition: opacity ease-in-out 1s;
	}
	
	.slider-stats .slick-track {
		display: flex !important;
	}
	
	.slider-stats .slick-slide {
		border-right: 1px solid var(--engr-white);
		height: inherit !important;
	}

	.slider-stats p {
		line-height: 1;
		margin-bottom: 0.5rem;
		padding: 0 1rem;
	}
		
	
	.slider-stats-arrows {
		width: 100%;
		display: flex;
		justify-content: space-between;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		opacity: 0;
		transition: opacity ease-in-out 1s;
	}
	
	.slider-stats-arrows .slick-disabled {
		visibility: hidden;
	}
	
	.slider-stats-arrows .prev,
	.slider-stats-arrows .next {
		padding: 0 8px;
		border: none;
		background: var(--il-orange);
		color: var(--engr-white);
		transition: opacity ease-in-out 300ms;
	}
	
}
	
/* bootstrap overrides */
.card {
	border-radius: 0;
	background-color: transparent;
}
	
	.platinum-box .card{
		border: 1px solid rgba(0,0,0,.25);
	}
	
	.navy-box .card,
	.charcoal-box .card {
		border: 1px solid rgba(255,255,255,.25);
	}
	
	.orange-box .card {
		border: 1px solid rgba(255,255,255,.5);
	}

.card-img, .card-img-top {
	border-radius: 0;

}

/* tile colorscheme classes */
@media all {

	.darkify::before {
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		top: 0px;
		left: 0px;
		content: '';
		background-color: rgba(0, 0, 0, 0.5);
		transition: background-color ease-in-out 0.4s;
	}

	.darkify:hover::before {
		background-color: rgba(0, 0, 0, 0.4);
	}


	.orangify::before {
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		top: 0px;
		left: 0px;
		content: '';
		background-image: linear-gradient(to right, rgba(255, 95, 5, 0.8), rgba(204, 0, 0, 0.8));
	}
	
	.lightorangify::before {
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		top: 0px;
		left: 0px;
		content: '';
		background-image: linear-gradient(to bottom right, rgba(245, 130, 30, 0.8), rgba(255, 95, 5, 0.8));
		}

	.orangeblueify {
		background-color: var(--engr-charcoal);
		color: var(--engr-white);
	}

		.orangeblueify::before {
			position: absolute;
			display: block;
			width: 100%;
			height: 100%;
			top: 0px;
			left: 0px;
			content: '';
			background: -webkit-linear-gradient(160deg, rgba(19,41,75,1) 10%, rgba(19,41,75,0) 100%);
			background: -o-linear-gradient(160deg, rgba(19,41,75,1) 10%, rgba(19,41,75,0) 100%);
			background: linear-gradient(160deg, rgba(19,41,75,1) 10%, rgba(19,41,75,0) 100%);
		}

		.orangeblueify::after {
			position: absolute;
			display: block;
			width: 100%;
			height: 100%;
			top: 0px;
			left: 0px;
			content: '';
			background: -webkit-linear-gradient(160deg, rgba(255, 95, 5, 0) 60%, rgba(255, 95, 5, 1) 95%);
			background: -o-linear-gradient(160deg, rgba(255, 95, 5, 0) 60%, rgba(255, 95, 5, 1) 95%);
			background: linear-gradient(160deg, rgba(255, 95, 5, 0) 60%, rgba(255, 95, 5, 1) 95%);
		}


	.blueify::before {
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		top: 0px;
		left: 0px;
		content: '';
		background-image: linear-gradient(to right, rgba(40, 76, 144, 0.8), rgba(19, 41, 75, 0.8));
	}

	.fingerprint::before {
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		top: 0px;
		left: 0px;
		content: '';
		background-image: url(https://ws.engr.illinois.edu/sitemanager/viewphoto.aspx?id=13411);
		background-size: cover;
		background-position: center center;
		transition: background-color ease-in-out 0.4s;
		opacity: 0.075;
	}

	.darker::before {
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		top: 0px;
		left: 0px;
		content: '';
		background-color: rgba(0, 0, 0, 0.6);
	}

	.orangifyborder::after {
		position: absolute;
		display: block;
		width: 100%;
		height: 0.5rem;
		bottom: 0rem;
		left: 0px;
		content: '';
		background-image: linear-gradient(to right, rgba(255, 95, 5, 1), rgba(204, 0, 0, 1));
	}

	.blueifyborder::after {
		position: absolute;
		display: block;
		width: 100%;
		height: 0.5rem;
		bottom: 0rem;
		left: 0px;
		content: '';
		background-image: linear-gradient(to right, rgba(40, 76, 144, 1), rgba(19, 41, 75, 1));
	}
	
	.darkifybottom {
		background: linear-gradient(0deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%);
	}


	.white-box {
		background-color: var(--engr-white);
		color: var(--engr-charcoal);
	}

		.navy-box .white-box a,
		.charcoal-box .white-box a,
		.royal-box .white-box a,
		.orange-box .white-box a,
		.platinum-box .white-box a,
		.ghost-box .white-box a,
		.white-box a {
			color: var(--il-industrial-blue);
		}

			.navy-box .white-box a:hover,
			.charcoal-box .white-box a:hover,
			.royal-box .white-box a:hover,
			.orange-box .white-box a:hover,
			.platinum-box .white-box a:hover,
			.ghost-box .white-box a:hover,
			.white-box a:hover {
				color: var(--il-altgeld);
			}

		.white-box h1,
		.white-box h2,
		.platinum-box h2 {
			color: var(--il-blue);
		}

		.white-box .button,
		:is(.navy-box, .charcoal-box, .royal-box, .orange-box) .white-box .button {
			border-color: var(--engr-royal);
			color: var(--engr-royal);
		}

			.white-box .button.active {
				border-color: var(--engr-royal);
				color: var(--engr-white);
				background-color: var(--engr-royal);
			}

	.navy-box {
		background-color: var(--il-blue);
		color: var(--engr-white);
	}


		.white-box .navy-box a,
		.charcoal-box .navy-box a,
		.royal-box .navy-box a,
		.orange-box .navy-box a,
		.platinum-box .navy-box a,
		.ghost-box .navy-box a,
		.navy-box a {
			color: var(--engr-white);
		}

			.white-box .navy-box a:hover,
			.charcoal-box .navy-box a:hover,
			.royal-box .navy-box a:hover,
			.orange-box .navy-box a:hover,
			.platinum-box .navy-box a:hover,
			.ghost-box .navy-box a:hover,
			.navy-box a:hover {
				color: var(--il-orange)
			}

		.navy-box h2 {
			color: var(--engr-white);
		}

			.navy-box h2 a {
				color: var(--engr-white);
			}


		.navy-box h3 {
			color: var(--engr-white);
		}

			.navy-box .button {
				color: var(--engr-white);
				border-color: var(--engr-white);
			}

				.navy-box .button:hover {
					background-color: var(--il-orange) !important;
					border-color: var(--engr-white) !important;
					color: var(--engr-white) !important;
				}

		.navy-box a em, 
		.navy-box a[data-fancybox] {
			color: var(--engr-white);
		}


	.dark-navy-box {
		background-color: #081425;
		color: var(--engr-white);
	}


	.royal-box {
		background-color: var(--engr-royal);
		color: var(--engr-white);
	}

		.royal-box .button {
			color: var(--engr-white);
			border-color: var(--engr-white);
		}

			.royal-box .button:hover {
				background-color: var(--il-orange) !important;
				border-color: var(--engr-white) !important;
				color: var(--engr-white) !important;
			}


		.royal-box h2 {
			color: var(--engr-white);
		}

		.royal-box h3 {
			color: var(--engr-white);
		}

		.white-box .royal-box a,
		.navy-box .royal-box a,
		.charcoal-box .royal-box a,
		.orange-box .royal-box a,
		.platinum-box .royal-box a,
		.ghost-box .royal-box a,
		.royal-box a {
			color: var(--engr-white);
		}

			.white-box .royal-box a:hover,
			.navy-box .royal-box a:hover,
			.charcoal-box .royal-box a:hover,
			.orange-box .royal-box a:hover,
			.platinum-box .royal-box a:hover,
			.ghost-box .royal-box a:hover,
			.royal-box a:hover {
				color: #cad9ef;
			}

			.royal-box .button:hover {
				background-color: var(--il-blue);
				border-color: var(--il-blue);
				color: var(--engr-white);
			}


	.orange-box {
		background-color: var(--il-orange);
		color: var(--engr-white);
	}

		.white-box .orange-box a,
		.navy-box .orange-box a,
		.charcoal-box .orange-box a,
		.royal-box .orange-box a,
		.platinum-box .orange-box a,
		.ghost-box .orange-box a,
		.orange-box a {
			color: var(--engr-white);
		}

			.white-box .orange-box a:hover,
			.navy-box .orange-box a:hover,
			.charcoal-box .orange-box a:hover,
			.royal-box .orange-box a:hover,
			.platinum-box .orange-box a:hover,
			.ghost-box .orange-box a:hover,
			.orange-box a:hover {
				color: var(--il-blue);
			}

			.orange-box .button {
				color: var(--engr-white) !important;
				border-color: var(--engr-white) !important;
			}

				.orange-box .button.orange:hover,
				.orange-box .button:hover {
					background-color: var(--il-blue) !important;
					border-color: var(--il-blue) !important;
					color: var(--engr-white) !important;
				}

		.orange-box .button.orange {
			color: var(--engr-white) !important;
			border-color: var(--engr-white) !important;
		}



		.orange-box h3 {
			color: var(--engr-white);
		}

		.orange-box .input-group-text {
			background-color: var(--engr-platinum);
			color: var(--engr-charcoal);
		}


	.charcoal-box {
		background-color: var(--engr-charcoal);
		color: var(--engr-white);
	}

		.white-box .charcoal-box a,
		.navy-box .charcoal-box a,
		.royal-box .charcoal-box a,
		.orange-box .charcoal-box a,
		.platinum-box .charcoal-box a,
		.ghost-box .charcoal-box a,
		.charcoal-box a {
			color: var(--engr-white);
		}

			.white-box .charcoal-box a:hover,
			.navy-box .charcoal-box a:hover,
			.royal-box .charcoal-box a:hover,
			.orange-box .charcoal-box a:hover,
			.platinum-box .charcoal-box a:hover,
			.ghost-box .charcoal-box a:hover,
			.charcoal-box a:hover {
				color: var(--il-orange);
			}

		.charcoal-box h3 {
			color: var(--engr-white);
		}

		.charcoal-box .button {
			color: var(--engr-white);
			border-color: var(--engr-white);
		}

			.charcoal-box .button:hover {
				border-color: var(--engr-white) !important;
				background-color: var(--il-orange) !important;
				color: var(--engr-white) !important;
			}


		.charcoal-box a em, 
		.charcoal-box a[data-fancybox] {
			color: var(--engr-white);
		}


	.platinum-box {
		background-color: var(--engr-platinum);
		color: var(--engr-charcoal);
	}

	.platinum-box .nav-pills .nav-link {
		background-color: #d9d9d9;
	}
	
	.platinum-box .button,
	:is(.navy-box, .charcoal-box, .royal-box, .orange-box) .platinum-box .button {
		border-color: var(--engr-royal);
		color: var(--engr-royal);
	}
	
	:where(.navy-box, .charcoal-box, .royal-box) .white-box h2,
	:where(.navy-box, .charcoal-box, .royal-box) .platinum-box h2 {
		color: var(--il-blue);
	}
	
	:where(.white-box, .platinum-box) .charcoal-box h2 {
		color: var(--engr-white)
	}

	:where(.navy-box, .charcoal-box, .royal-box, .orange-box) .white-box h3,
	:where(.navy-box, .charcoal-box, .royal-box, .orange-box) .platinum-box h3 {
		color: var(--il-orange);
	}
	
	:where(.navy-box, .charcoal-box, .royal-box) .platinum-box a {
		color: var(--il-industrial-blue);
	}

	.ghost-box {
		background-color: var(--engr-ghost);
		color: var(--engr-charcoal);
	}

	.white-text {
		color: var(--engr-white) !important;
	}

	.orange-text {
		color: var(--il-orange);
	}
	
	.navy-text {
		color: var(--il-blue) !important;
	}

	.royal-text {
		color: var(--engr-royal);
	}

	.charcoal-text {
		color: var(--engr-charcoal);
	}

	.platinum-text {
		color: var(--engr-platinum);
	}

	.ghost-text {
		color: var(--engr-ghost);
	}

	.light-text {
		color: var(--engr-white);
	}

	.cloud-1-text {
		color: var(--il-cloud-1);
	}


	
}


/* font size modifiers */
@media all {
	.fs080x {
		font-size: 0.8em !important;
	}
	
	.fs090x {
		font-size: 0.9em !important;
	}
	
	.fs100x {
		font-size: 1em !important;
	}

	.fs125x {
		font-size: 1.25em !important;
	}


	.fs150x {
		font-size: 1.5em !important;
	}

	.fs200x {
		font-size: 2em !important;
	}

	.fs250x {
		font-size: 2.5em !important;
		line-height: 1.3;
	}

	.fs300x {
		font-size: 3em !important;
		line-height: 1.3;
	}

	.fs350x {
		font-size: 3.5em !important;
		line-height: 1.3;
	}

	.fs400x {
		font-size: 4em !important;
		line-height: 1.3;
	}

	.fs500x {
		font-size: 5em !important;
		line-height: 1.3;
	}

	.fs600x {
		font-size: 6em !important;
		line-height: 1.3;
	}

	.fs700x {
		font-size: 7em !important;
		line-height: 1.3;
	}

	.fs800x {
		font-size: 8em !important;
		line-height: 1.3;
	}

	.fs900x {
		font-size: 9em !important;
		line-height: 1.3;
	}
	
}
	
/* font weight modifiers */
@media all {
	.fw300 { font-weight: 300 !important; }
	
	.fw400 { font-weight: 400 !important; }
	
	.fw500 { font-weight: 500 !important; }
	
	.fw600 { font-weight: 600 !important; }
	
	.fw700 { font-weight: 700 !important; }
	
	.fw800 { font-weight: 800 !important; }
	
	.fw900 { font-weight: 900 !important; }
}

/* quote bubble */
@media all {
	div.bubble {
		display: flex !important;

		align-items: flex-end;
	}

		div.bubble > div {
			background: var(--engr-white);
			border-radius: 1rem;
			position: relative;
			padding: 2rem;
			margin: 2rem;
			color: var(--engr-charcoal);
			bottom: 0px;
			font-size: 0.8em;
			line-height: 1.4;
			width: 75%;
		}

			div.bubble > div:after {
				top: -20px;
				bottom: auto;
				left: 40px;
				border-width: 20px 35px 0 0;
				border-color: transparent var(--engr-white);
				content: "";
				position: absolute;
				border-style: solid;
				display: block;
				width: 0px;
			}

			div.bubble p:last-child {
				margin-bottom: 0;
			}
		
		
		div.bubble > .bubble-outer {
			transition: all ease-in-out 0.5s;
		}

			div.bubble div.bubble-outer.collapsed {
				width: 115px;
				padding: 1rem 1.5rem;
				text-align: center;
			}

		div.bubble > .bubble-outer > .bubble-inner {
			overflow: hidden;
			transition: height ease-in-out 0.5s;
		}

		div.bubble > .bubble-outer.collapsed > .bubble-inner {
			height: 0px;
		}

		div.bubble .bubble-toggle {
			color: var(--engr-royal);
		}
}


/* circle quote box */
@media all {
	div.circle-quote {
		position: relative;
		z-index: 10;
		width: 60px;
		height: 60px;
		background: var(--il-blue);
		border-radius: 100%;
		margin: 0 auto;
		display: flex;
		align-items: center;
		justify-content: center;
	}


	.white-box div.circle-quote,
	.platinum-box div.circle-quote,
	.ghost-box div.circle-quote {
		color: var(--engr-white);
	}

	.navy-box div.circle-quote {
		background: var(--il-orange);
	}
	
	.charcoal-box div.circle-quote {
		background: var(--engr-royal);
	}
	
		div.circle-quote p {
			margin-bottom: 0;
		}

	.quote-box {
		position: relative;
		border-radius: .4em;
		border: 1px solid var(--engr-white);
		padding: 40px 30px 35px 30px;
		margin-top: -30px;
		margin-bottom: 1.5rem;
	}
	
	.quote-box:before {
		content: '';
		position: absolute;
		bottom: 0;
		left: 50%;
		width: 0;
		height: 0;
		border: 20px solid transparent;
		border-top-color: var(--engr-white);
		border-bottom: 0;
		margin-left: -20px;
		margin-bottom: -20px;
	}
	
	.quote-box:after {
		content: '';
		position: absolute;
		bottom: 0;
		left: 50%;
		width: 0;
		height: 0;
		border: 20px solid transparent;
		border-bottom: 0;
		margin-left: -20px;
		margin-bottom: -18px;
	}

	.white-box .quote-box,
	.platinum-box .quote-box,
	.ghost-box .quote-box {
		border-color: var(--il-blue);
	}


		.white-box .quote-box:before,
		.platinum-box .quote-box:before,
		.ghost-box .quote-box:before {
			border-top-color: var(--il-blue);
		}


		.white-box .quote-box:after {
			border-top-color: var(--engr-white);
		}
		.platinum-box .quote-box:after {
			border-top-color: var(--engr-platinum);
		}
		.ghost-box .quote-box:after {
			border-top-color: var(--engr-ghost);
		}

		.royal-box .quote-box:after {
			 border-top-color: var(--engr-royal);
		}
	
		.navy-box .quote-box:after {
			 border-top-color: var(--il-blue);
		}
	
		.charcoal-box .quote-box:after {
			 border-top-color: var(--engr-charcoal);
		}

		.charcoal-box .quote-box.platinum-box:after {
			 border-top-color: var(--engr-platinum);
		}

		.quote-box p:last-child {
			margin-bottom: 0;
		}
}


/* Q&A content styling */
.qa {
	line-height: 140%;
	border-bottom: 3px solid var(--il-orange);
	margin-right: .75em;
	font-size: 1.4rem;
}


/* flex */
@media all {
	.flex {
		display: flex !important;
		flex-wrap: wrap;
	}

		.flex > * {
			flex-basis: 100%;
			order: 1;
		}

		.flex .first {
			order: 0;
			font-size: .9em;
			margin-bottom: 0.8rem;
		}

		.flex .first span.span-left {
			float: left;
		}

		.flex .first span.span-right {
			float: right;
		}

}


/* applies to feature story tile description */
@media all {
	.tile.news {
		cursor: pointer;
	}

	.tile.w50.news h2,
	.tile.w33.news h2 {
		font-size: 1.3rem;
		font-weight: 700;
	}

	.tile.w25.news h2 {
		font-size: 1rem;
		font-weight: 700;
	}


		.tile.news h2 a {
			color: var(--engr-charcoal);
		}

	.tile.charcoal-box.news h2 a,
	.tile.orange-box.news h2 a,
	.tile.navy-box.news h2 a,
	.tile.royal-box.news h2 a {
		color: var(--engr-white);
	}

		.tile.news:hover h2 a {
			color: var(--engr-royal);
			text-decoration: none;
		}

		.tile.charcoal-box.news:hover h2 a,
		.tile.navy-box.news:hover h2 a {
			color: var(--il-orange);
		}

	.tile.royal-box.news:hover h2 a {
		color: var(--engr-white);
	}

	.tile.feature {
		background-position: center top;
	}

		#sidebar_wrapper .tile.feature.darkify {
			color: var(--engr-white);
		}

			#sidebar_wrapper .tile.feature.darkify a {
				color: var(--engr-white);
			}

			#sidebar_wrapper .tile.feature.darkify h2 {
				color: var(--engr-white);
			}


		.tile.feature .lower {
			display: flex;
			align-items: flex-end;
		}

		.tile.feature h2 {
			padding-top: 16px;
			transition: padding-top ease-in-out 0.4s;
		}

		.tile.feature .description {
			max-height: 184px;
			overflow: hidden;
			margin-bottom: 2rem;
			transition: height ease-in-out 0.4s;
		}

		.tile.feature .button {
			background-color:var(--il-orange);
			border-color: var(--il-orange);
		}

	.tile.giving-story ul {
		list-style-type: none;
		padding: 0;
		margin-bottom: 1rem;
	}

		.tile.giving-story ul li {
			display: inline;
		}

			.tile.giving-story ul li::after {
				content: " | ";
			}

			.tile.giving-story ul li:last-child::after {
				content: "";
			}


	.tile .article .sidebar {
		font-size: 0.8em;
		padding: 1rem;
		line-height: 1.4;
	}

	.tile .article h2 {
		margin-bottom: 1rem;
	}

	.callout {
		background-color: var(--engr-platinum);
		width: 300px;
		max-width: 100%;
		font-size: 0.8em;
		padding: 1rem;
		line-height: 1.4;
		float: right;
		margin: 10px;
	
	}


}

/* calenadr lists */
@media all {

	.calendar-list {
		padding-left: 1rem;
		overflow-wrap: anywhere;
	}


	.calendar-list .item {
		line-height: 1.5;
	}

/*
		.calendar-list .item:hover {
			cursor: pointer;
		}
*/
		.calendar-list .item .description {
			height: 108px;
			overflow: hidden;
			position: relative;
		}

			.calendar-list .item .description::after {
				content: '';
				position: absolute;
				bottom: 0;
				width: 100%;
				height: 45px;
				left: 0px;

			}


			.white-box .calendar-list .item .description::after {
				background-image: linear-gradient( rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100% );
			}

			.ghost-box .calendar-list .item .description::after {
				background-image: linear-gradient( rgba(248, 248, 248, 0) 0%, rgba(248, 248, 248, 1) 100% );
			}


		.calendar-list .item p {
			margin-bottom: 0.5rem;
		}

	#calendar_container .card-img-top.false {
		display: none;
	}

	#calendar_container .card-img-top {
		max-height: 150px;
		overflow: hidden;
	}

		#calendar_container .card-img-top img {
			width: 100%;
		}

	#calendar_container .card-title {
		font-size: 1.2rem;
		line-height: 1.6rem;
	}

	#calendar_container .card-title a {
		text-decoration: none;
	}

		#calendar_container .card-title a:hover {
			text-decoration: underline;
		}


}



/* filter-list */
@media all {
	ul.filter-list {
		list-style-type: none;
		font-size: 1.2rem;
	}

		ul.filter-list li {
			position: relative;
			margin-bottom: 0;
			padding-left: 10px;
			color: var(--engr-royal);
		}

			ul.filter-list li a {
				color: #a0a0a0;
			}

			ul.filter-list li:before {
				position: absolute;
				left: -25px;
				font-family: 'Font Awesome 5 Pro';
				font-weight: 300;
				content: '\f055';
				color: #a0a0a0;
			}

			ul.filter-list li.filter-list-on a {
				color: var(--engr-royal);
			}

			ul.filter-list li.filter-list-on:before {
				content: '\f057';
				color: var(--engr-royal);
			}
}


/* big numbered lists */
@media all {

	ol.big-numbered-list {
		padding-left: 70px;
		list-style: none;
		counter-reset: item;
	}

		ol.big-numbered-list > li {
			position: relative;
			margin: 0 0 2rem 0;
			padding: 0 0 1rem 1rem;
			counter-increment: item;
		}

			ol.big-numbered-list > li:before {
				position: absolute;
				color: var(--engr-white);
				left: -50px;
				top: 0px;
				content: counter(item);
				font-size: 2rem;
				font-weight: 600;
				text-align: center;
				background-color: var(--il-orange);
				height: 50px;
				width: 50px;
				border-radius: 100%;
				display: flex;
				align-items: center;
				justify-content: center;
			}

			.charcoal-box ol.big-numbered-list > li:before,
			.navy-box ol.big-numbered-list > li:before {
				color: var(--engr-white);
			}
}

/* comma delimited lists */
@media all {
	.comma-list ul {
		display: inline;
		list-style-type: none;
		margin: 0;
		padding: 0;
	}

	.comma-list ul li {
		display: inline;
	}

		.comma-list ul li::after {
			content: ', ';
		}

		.comma-list ul li:last-child::after {
			content: '';
		}

	ul.inline-comma {
		padding: 0;
		margin-bottom: 1rem;
	}

	ul.inline-comma li {
		display: inline;
		margin: 0;
		padding: 0;
	}

		ul.inline-comma li:not(:last-child):after {
			content: ", ";
		}


}

/* flowsheets */
@media all {

	#flowsheet #legend_container ul {
		list-style-type: none;
		margin: 0px 0px 20px 0px;
		padding: 0;
	}

		#flowsheet #legend_container ul li {
			padding: 5px;
			margin: 0px 0px 3px 0px;
			border: 1px solid black;
			list-style-type: none;
		}

	#flowsheet .prereq {
		background-color: #99d298 !important;
	}

		#flowsheet .prereq.immediate {
			background-color: #33a532 !important;
			color: var(--engr-white);
		}

			#flowsheet .prereq.immediate a {
				color: var(--engr-white);
			}

			#flowsheet .prereq.immediate.coreq {
				background-color: #764cd9 !important;
				color: var(--engr-white);
			}


	#flowsheet .postreq {
		background-color: #00adee !important;
		color: var(--engr-white);
	}

		#flowsheet .postreq a {
			color: var(--engr-white);
		}

	#flowsheet .coreq {
		background-color: #6ECEF6 !important;
	}


	#flowsheet #courseTable td {
		padding: 0px 2px;
	}


	#flowsheet #courseTable div.item {
		background-color: var(--engr-ghost);
		border: 1px solid var(--engr-platinum);
		height: 80px;
		width: 100%;
		min-width: 120px;
		overflow: hidden;
		margin: 3px 0px;
		padding: 5px 5px 5px 5px;
		line-height: 1.4;
		font-weight: bold;
	}

		#flowsheet #courseTable div.item:hover {
			background-color: var(--il-orange) !important;
			color: var(--engr-white);
		}

			#flowsheet #courseTable div.item:hover a {
				color: var(--engr-white);
			}

	#flowsheet #courseTable .crs_title {
		font-style: italic;
		font-weight: normal;
		font-size: 0.9em;
	}

	#flowsheet #courseTable sup {
		margin-left: 5px;
		font-weight: normal;
	}

	#flowsheet #coursecontent {
		height: 200px;
		overflow: auto;
		margin: 0px 0px 20px 0px;
	}

	#notes_container {
		margin-bottom: 1rem;
	}

	#notes_container .highlight {
		background-color: yellow;
	}


	.extCoursesProfileContent {
		margin-bottom: 1.6rem;
	}
}


/* storied */
@media all {

	body.storied #hero {
		background-image: none;
		margin-bottom: 2rem;
		box-shadow: 0px 0px 20px -5px #666666;
	}

		/*
		body.storied #hero::before {
			filter: initial;
		}
		*/

	body.storied #hero .row {
		height: calc(50vh - 20px);
		align-items: flex-end;
		padding-bottom: 6rem;
	}

	body.storied #hero .col {
		margin-bottom: -9rem;
		padding-right: 15px;
	}

	body.storied #hero h1 {
		width: 90vw;
		max-width: 900px;
		background-color: var(--engr-white);
		color: var(--engr-charcoal);
		text-align: center;
		font-weight: 700;
		font-size: 3.5em;
		letter-spacing: -0.5px;
		line-height: 115%;
		padding: 2rem;
		position: relative;
		margin: 0 auto;
		font-family: 'Source Serif Pro', serif;
		text-transform: none;
	}

		body.storied #hero h1::after {
			display: block;
			content: '';
			position: absolute;
			background-color: var(--il-orange);
			height: 1px;
			width: 80%;
			left: 10%;
			bottom: 16px;
			z-index: 10;
		}


	body.storied #breadcrumbs,
	body.storied #secnav,
	body.storied #roadmap {
		display: none;
	}


	body.storied #content .baskerville h2,
	body.storied #content h2 {
		position: relative;
		font-weight: 700;
		text-align: center;
		font-size: 1.3em;
		text-transform: uppercase;
	}

		body.storied #content h2::after {
			display: block;
			content: '';
			position: absolute;
			background-color: var(--il-blue);
			height: 3px;
			width: 80px;
			left: calc(50% - 40px);
			bottom: -15px;
		}

	body.storied .subtitle {
		font-size: 1.4em;
		line-height: 1.3;
		text-align: center;
		margin-bottom: 1.25rem;
	}

	body.storied .author {
		font-size: 0.7em;
		text-transform: uppercase;
		text-align: center;
		font-weight: bold;
		margin-bottom: 2.5rem;
		letter-spacing: 1px;
	}

	figure.fleft {
		margin-left: -20%;
		padding: 2px;
	}

	body.storied figure.align-center,
	figure.fcenter {
		margin-left: -10%;
		margin-right: -10%;
		max-width: 120%;
	}

	figure.fright {
		margin-right: -20%;
		padding: 2px;
	}

	.pullquote.fright {
		margin-right: -20%;
	}

	.photo .caption,
	figcaption {
		padding: 0.5rem 0 0.5rem 0;
		font-size: 0.8em;
		line-height: 1.35;
		border-bottom: 1px solid #cccccc;
	}

	figure.pullquote {
		padding: 1rem;
		font-size: 1.25em;
	}

	.pullquote {
		border-top: 1px solid #cccccc;
		border-bottom: 1px solid #cccccc;
		line-height: 1.4;
		padding: 1rem;
	}

		.pullquote p {
			margin-bottom: 1rem;
		}

			.pullquote p:last-child {
				margin-bottom: 0;
			}

		.pullquote.spaced p { line-height: 180%; }
	
	.multimedia-title {
		box-shadow: 0px 0px 20px -5px #666666;
		margin-bottom: 2rem !important;
	}
	
	.multimedia-title h1 {
		line-height: 1;
		margin-top: 1rem;
	}
	
	.top-border-orange::before {
		content: '';
		background: var(--il-orange);
		height: 2px;
		width: 100px;
		display: block;
		margin: 1.5rem auto;
	}
	
	.question {
		display: flex;
	}
	
	.question::before {
		content: "Q:";
		display: block;
		color: var(--il-orange);
		font-family: 'Source Serif Pro', serif;
		font-weight: 700;
		font-size: 2.5rem;
		line-height: 1;
		margin-right: 1rem;
	}
	
	#content .tile-list .tile.w110.multimedia-hero {
		padding-top: 0 !important;
		overflow: clip;
	}
	
	_::-webkit-full-page-media, _:future, :root #content .tile-list .tile.w110.multimedia-hero {
		overflow: hidden;
	}
	
	.tile-list .tile.multimedia-hero .column1 {
		position: -webkit-sticky;
    	position: sticky;
		top: 0;
		height: calc(100vh - 220px);
		min-height: 600px;
		z-index: 0;
		overflow: hidden;
		background-position: top center;
		transform:  scale(1.1);
		animation: backgroundZoomOut 4s 1s forwards;
	}
	
	.multimedia-hero .column2 {
		z-index: 10;
	}
	
	.multimedia-hero .column2::before {
		content: '';
		position: absolute;
		left: 0;
		top: -30vh;
		height: 30vh;
		width: 100%;
		display: block;
		z-index: 1;
	}
	
	.multimedia-hero .column2.charcoal-box::before {
		background: -webkit-linear-gradient(to bottom,  rgba(18,27,33,0) 0%,rgba(18,27,33,1) 100%);
		background: linear-gradient(to bottom,  rgba(18,27,33,0) 0%,rgba(18,27,33,1) 100%);
	}
	
	.multimedia-hero .column2.navy-box::before {
		background: -webkit-linear-gradient(to bottom,  rgba(19,41,75,0) 0%,rgba(19,41,75,1) 100%);
		background: linear-gradient(to bottom,  rgba(19,41,75,0) 0%,rgba(19,41,75,1) 100%);
	}
	
	.multimedia-hero .column2.platinum-box::before {
		background: -webkit-linear-gradient(to bottom,  rgba(240,240,240,0) 0%,rgba(240,240,240,1) 100%);
		background: linear-gradient(to bottom,  rgba(240,240,240,0) 0%,rgba(240,240,240,1) 100%);
	}
	
	.multimedia-hero .column2.white-box::before {
		background: -webkit-linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
		background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
	}
	
	@keyframes backgroundZoomOut {
		from {
			opacity: 0.1;
			transform: scale(1.1);
		}
		to {
			opacity: 1;
			transform: scale(1);
		}
	}
}


/* body.fullscreenhero */
@media all {

	body.fullscreenhero #hero {
		/*z-index: 9;*/
		background-image: none;
	}

		body.fullscreenhero #hero .row {
			height: calc(100vh - 156px);
			min-height: 800px;
			max-height: 100vh;
		}

	body.fullscreenhero #roadmap {
		display: none;
	}

	/*
	body.fullscreenhero #hero::before {
		filter: initial;
	}
	*/
}





/* modal overlays */
@media all {

	#modal-overlay {
		box-sizing: border-box;
		position: fixed;
		box-sizing: border-box;
		top: 0;
		left: 0;
		height: 100vh;
		width: 100vw;
		background-color: rgba(255, 255, 255, 0.7);
		z-index: 9999998;
	}

	#modal-close {
		position: fixed;
		top: 10px;
		right: 10px;
	}

	#modal-content {
		display: block;
		position: fixed;
		top: 60px;
		width: 900px;
		max-width: 900px;
		max-height: calc(100vh - 120px);
		background-color: var(--engr-white);
		margin: 0px calc((100vw - 900px) / 2) 0px calc((100vw - 900px) / 2);
		box-shadow: 0px 0px 55px -5px #757575;
		animation-duration: 1.5s;
		animation-name: float-up;
		animation-iteration-count: 1;
		animation-timing-function: ease-out;
		animation-fill-mode: forwards;
		font-size: 0.9em;
		z-index: 9999999;
		border-radius: 25px;
		overflow: auto;
	}

	@-webkit-keyframes float-up {
		0% {
			top: 500px;
			opacity: 0;
		}

		25% {
			opacity: 1;
		}

		35% {
			top: -20px;
		}

		100% {
			top: 60px;
		}
	}


}

/* make a gift page */
@media all {

	#giving_form {
		overflow: hidden;
	}


	#giving_form #imark a {
		display: block;
		text-indent: -99999px;
		background-size: contain;
		background-repeat: no-repeat;
		background-image: url(https://ws.engr.illinois.edu/sitemanager/viewphoto.aspx?id=310);
		background-size: contain;
		background-position: left center;
		width: 250px;
		height: 54px;
		margin: 0px 0px 30px 0px;
	}

	#giving_form h1 {
		font-weight: normal;
		font-size: 1.7em;
		color: var(--il-orange);
		margin: 0px 0px 30px 0px;
	}

		#giving_form #options .form-row label {
			line-height: 1.3;
			margin-bottom: 0;
		}


	#giving_form #cart {
		background-image: url(https://ws.engr.illinois.edu/sitemanager/viewphoto.aspx?id=312);
		background-repeat: repeat;
		border-top-right-radius: 25px;
		border-bottom-right-radius: 25px;
	}

		#giving_form #cart #contactus {
			position: relative;
			background-color: var(--il-orange);
			display: block;
			margin: 0 calc(-3rem + 14px) 3rem calc(-3rem - 30px);
			padding: 0.1rem 1rem 0.1rem 3rem;
			font-size: 1.4em;
			color: var(--engr-white);
		}

			#giving_form #cart #contactus:before {
				content: "";
				position: absolute;
				bottom: -20px;
				left: 0px;
				border: 0;
				border-right-width: 30px;
				border-bottom-width: 20px;
				border-style: solid;
				border-color: transparent #CC481D;
				display: block;
				width: 0;
			}


		#giving_form #cart .item {
			margin: 0px 0px 15px 0px;
			padding: 5px 25px 5px 10px;
			background-color: var(--engr-white);
			border-radius: 0.2rem;
			border: 1px solid silver;
			position: relative;
		}

			#giving_form #cart .item p {
				margin: 0px 0px 0px 0px;
				line-height: 1.5;
			}

		#giving_form #cart label {
			font-weight: bold;
			font-size: 0.7em;
			margin: 0px 0px 0px 0px;
		}


		#giving_form #cart .dollar {
			font-weight: bold;
			font-size: 1em;
		}

		#giving_form #cart .item.total .dollar {
			font-size: 2em;
		}

		#giving_form #cart input[type=text] {
			border: none;
			width: 120px;
			pointer-events: none;
			padding: 0px;
			font-size: 1em;
			font-weight: bold;
		}

		#giving_form #cart input[type=submit] {
			width: 100%;
		}

		#giving_form #cart .item.total input[type=text] {
			font-size: 2em;
		}

		#giving_form #cart .remove-fund {
			position: absolute;
			right: 8px;
			top: 0px;
		}
}

/* get in touch form */
@media all {

	.get-in-touch-wordmark {
		text-align: center;
		margin: 0px auto 2rem auto;
		font-size: 24px;
	}

		.get-in-touch-wordmark img.imark {
			width: 36px;
			display: block;
			margin: 0 auto 1rem auto;
		}

}

/* google custom search */
@media all {
	table.gsc-input {
		margin-bottom: 0;
		border: none;
	}

	.gsc-input .gsc-input-box {
		padding-top: 0px;
		padding-bottom: 1px;
	}

}
	

/* junk drawer */
@media all {
	.offscreen {
		display: block;
		position: fixed;
		left: -9999999px;
		width: 0px;
		overflow: hidden;
	}

	.animated {
		opacity: 0;
	}
	
	.animated-gradient {
		animation: flow 12s ease-in-out infinite;
		background: linear-gradient(-60deg, var(--il-orange), #1329b4);
		background-size: 300%;
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
	}
	
	@keyframes flow {
		0% {
			background-position: 0 50%;
		}
		50% {
			background-position: 100% 50%;
		}
		100% {
			background-position: 0 50%;
		}
	}
	
	.bg-zoom-container {
		position: relative;
		overflow: hidden;
	}
	
	.bg-zoom {
		position: relative;
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
		transition: 0.7s all;
	}
	
	.bg-zoom-activator:hover .bg-zoom,
	.bg-zoom-activator:focus .bg-zoom {
		transform: scale(1.1);
	}
	
	.delay-05s {
		animation-delay: 500ms;
	}

	.fixed-50 {
		display: inline-block;
		min-width: 50px;
	}

	.nobreak {
		break-inside: avoid;
	}

	.quote {
		font-size: 3rem;
		font-weight: bold;
		line-height: 1.2;
	}

	.pointer {
		cursor: pointer;
	}
	
	.semibold {
		font-weight: 600;
	}
	
	.extra-bold {
		font-weight: 800;
	}
	
	.condensed {
		letter-spacing: -1px;
	}

	.barlow {
		font-family: "barlow condensed";
	}
	
	.montserrat {
		font-family: "montserrat";
	}
	
	.montserrat-alt {
		font-family: "Montserrat Alternates";
	}
	
	.fjalla {
		font-family: "Fjalla One";
	}
	
	.source-serif {
		font-family: 'Source Serif Pro', serif;
	}
	
	.source-code {
		font-family: 'Source Code Pro', sans-serif;
	}
	
	.py-6 {
		padding-top: 4.5rem;
		padding-bottom: 4.5rem;
	}

	.fleft {
		float: left;
		margin: 0 1rem 1.6rem 0;
	}

	.fright {
		float: right;
		margin: 0 0 1.6rem 1rem;
	}


	.round {
		border-radius: 200px;
		width: 280px;
		height: 280px;
		background-size: cover;
		background-position: center;
		margin: 0 auto 2rem auto;
	}

	.square {
		width: 280px;
		height: 280px;
		border: 20px solid var(--engr-platinum);
		border-radius: 0px;
		background-size: cover;
		background-position: center;
		margin: 0 auto 2rem auto;
	}
	
	.bgimg {
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
	}

	a.underline:hover {
		text-decoration: underline;
	}

	.twocol:not(.mega) {
		columns: 2;
		margin-bottom: 2rem;
		column-gap: 2.5rem;
	}

	.threecol:not(.mega) {
		columns: 3;
		margin-bottom: 2rem;
		column-gap: 2.5rem;
	}

	.fact-boxes.twocol {
		column-gap: 0;
	}

		.threecol > li,
		.twocol > li {
			-webkit-column-break-inside: avoid;
			page-break-inside: avoid;
			break-inside: avoid;
		}

	.intro {
		font-size: 1.2em;
		margin-bottom: 1.6rem;
	}

	.headline {
		font-size: 150%;
		line-height: 150%;
		font-weight: 300;
	}

	h2.headline {
		font-size: 250%;
		font-weight: 300;
	}

	.hidden {
		display: none;
	}

	.hide-empty[data-value=" "],
	.hide-empty[data-value=""] {
		display: none !important;
	}

	.show-empty[data-value] {
		display: none;
	}

	.show-empty[data-value=""] {
		display: block;
	}

	.invisible {
		visibility: hidden;
	}

	.maxwidth1140 {
		max-width: 1170px;
		margin-left: auto;
		margin-right: auto;
	}

	.maxwidth925 {
		max-width: 925px;
	}

	.maxwidth900 {
		max-width: 900px;
	}

	.maxwidth800 {
		max-width: 800px;
	}

	.maxwidth720 {
		max-width: 720px;
	}

	.maxwidth500 {
		max-width: 500px;
	}

	.maxwidth350 {
		max-width: 350px;
	}
	
	.minheight250 {
		min-height: 250px;
	}
	
	.minheight350 {
		min-height: 350px;
	}

	.minheight400 {
		min-height: 400px;
	}

	.minheight600 {
		min-height: 600px;
	}
	
	.inline-list {
		list-style: none;
	}
	
	.inline-list li {
		display: inline;
	}
	
	.inline-list li::after {
		content: ", ";
	}
	
	.inline-list li:last-child::after {
		display: none;
	}


	figure.social {
		position: relative;
		overflow: hidden;
	}

		figure.social::before {
			position: absolute;
			top: 0;
			right: 0;
			width: 50px;
			height: 50px;
			line-height: 50px;
			font-size: 25px;
			background-color: var(--engr-royal);
			color: var(--engr-white);
			font-family: 'Font Awesome 5 Brands';
			font-weight: 300;
			text-align: center;
		}

		figure.social.facebook::before {
			content: '\f39e';
		}

		figure.social.instagram::before {
			content: '\f16d';
		}
		
		figure.social.twitter::before {
			content: '\f099';
		}

		figure.social.linkedin::before {
			content: '\f0e1';
		}

		figure.social.youtube::before {
			content: '\f167';
		}

		figure.social.soundcloud::before {
			content: '\f1be';
		}

		figure.social figcaption {
			position: absolute;
			width: 100%;
			height: 100%;
			background-color: rgba(255, 255, 255, 0.8);
			top: 100%;
			transition: top ease-in-out 0.4s;
			padding: 2rem;
			font-size: 1em;
			font-weight: 500;
			border: none;
		}

		figure.social:hover figcaption {
			top: 0;
		}

	#gototop a {
		display: block;
		position: fixed;
		width: 45px;
		height: 45px;
		background-color: rgba(0, 0, 0, 0.5);
		bottom: 20px;
		right: 20px;
		z-index: 100;
		border-radius: 30px;
		text-align: center;
		line-height: 45px;
		font-size: 1.25em;
		color: var(--engr-white);
	}

	.uppercase {
		text-transform: uppercase;
	}
	
	.lock::after {
		content: '\f30d';
		font-family: 'Font Awesome 5 Pro';
		margin-left: 10px;
		font-weight: 700;
		font-size: .8em;
	}

}

@media all {

	.icon-scroll,
	.icon-scroll:before {
		position: absolute;
		left: 50%;
	}

	.icon-scroll {
		width: 40px;
		height: 70px;
		margin-left: -20px;
		border-radius: 20px;
		border: 1px solid var(--engr-white);
		background-color: rgba(247, 247, 247, 0.4);
	}

		.icon-scroll:before {
			content: '';
			width: 8px;
			height: 8px;
			background: var(--engr-white);
			margin-left: -4px;
			top: 8px;
			border-radius: 4px;
			animation-duration: 1.4s;
			animation-iteration-count: infinite;
			animation-name: scroll;
		}

	@keyframes scroll {
		0% {
			opacity: 1;
		}

		100% {
			opacity: 0;
			transform: translateY(50px);
		}
	}
}


@media all {

	.progress-round {
		height: 330px;
		width: 330px;
		position: relative;
		margin: 0 auto;
		text-transform: uppercase;
		border: 2px solid var(--il-orange);
		padding: 3px;
		border-radius: 163px;
	}

		.progress-round:before {
			content: "";
			display: block;
			position: absolute;
			top: 10px;
			left: 10px;
			width: calc(100% - 20px);
			height: calc(100% - 20px);
			background-size: contain;
			background-position: center center;
			background-image: url(//ws.engr.illinois.edu/images/spokes.png);
		}

		.progress-round div.inner {
			position: absolute;
			width: 174px;
			height: 174px;
			top: 76px;
			left: 76px;
			text-align: center;
			border: 2px solid #e85a27;
			border-radius: 90px;
			padding: 24px 10px;
			line-height: 1.1;
			font-size: 0.95em;
		}

			.progress-round div.inner p {
				margin: 0;
			}

		.progress-round div.number {
			font-size: 50px;
			font-weight: 900;
			font-family: 'Montserrat', 'Source Sans Pro', sans-serif;
			letter-spacing: -1px;
		}
}

@media (max-width: 1279px) {
	.slider-feature .slick-prev, .slider-feature .slick-next {
		display: none !important;
	}
}



@media (max-width: 1199px) {

	footer .title {
		font-size: 0.9em;
		line-height: 1.7rem;
	}

}


@media screen and (max-width: 991px) {
	.hidden-informal {
		display: none;
	}
	
	body.fullscreenhero #hero .row {
		height: calc(100vh - 70px);
		min-height: calc(100vh - 70px);
		max-height: calc(100vh - 70px);
	}

	.fact-boxes .item {
		flex: 0 0 calc(33% - 1rem);
		max-width: calc(33% - 1rem);
	}

	div.directory-list.directory-list-1 .item .photo {
		flex: 0 0 33%;
	}

	div.directory-list.directory-list-1 .item .details {
		flex: 0 0 67%;
	}

	div.directory-list .item,
	div.directory-list.directory-list-4 .item,
	div.directory-list.directory-list-5 .item,
	div.directory-list.directory-list-6 .item {
		flex: 0 0 calc(100% / 3 - 1rem);
		max-width: calc(100% / 3 - 1rem);
		min-width: calc(100% / 3 - 1rem);
	}

		div.directory-list .item .photo,
		div.directory-list.directory-list-4 .item .photo,
		div.directory-list.directory-list-5 .item .photo,
		div.directory-list.directory-list-6 .item .photo,
		#sidebar_wrapper div.directory-list .item .photo,
		#sidebar_wrapper div.directory-list.directory-list-4 .item .photo,
		#sidebar_wrapper div.directory-list.directory-list-5 .item .photo,
		#sidebar_wrapper div.directory-list.directory-list-6 .item .photo {
			height: 38vw;
		}


	div.fact-bubbles .item {
		font-size: 0.8em;
	}

		div.fact-bubbles .item p:first-child {
			font-size: 6em;
		}
	
	.tile-list .tile.w25,
	.tile-list .tile.w33 {
		flex: 0 0 calc(50% - 1.2rem);
		max-width: calc(50% - 1.2rem);
		min-width: calc(50% - 1.2rem);
	}


	body.storied #hero h1 {
		font-size: 5vw;
	}

	figure.fleft {
		margin-left: 0;
	}

	figure.fcenter {
		margin-left: 0;
		margin-right: 0;
	}

	figure.fright {
		margin-right: 0;
	}


	#modal-content {
		max-width: calc(100vw - 2rem);
		margin: 0 1rem;
	}


	#giving_form #cart #contactus {
		margin: 0 calc(-1.5rem + 14px) 3rem calc(-1.5rem - 30px);
	}


	body.home .slider-feature {
		height: calc(100vh - 85px);
		max-height: calc(100vh - 85px);
	}

	.slider-feature .slide-content h2 {
		font-size: 1.8em;
	}

		.slider-feature img {
			max-height: calc(100vw - 7rem);
		}

		.slider-feature .slide-content .subtitle {
			font-size: 1rem;
		}

	.virtual-tour .slide-content {
		padding: 0 80px 0 40px;
		padding-top: 4rem;
	}



}


@media screen and (max-width: 767px) {


	body.landing #hero h1 {
		font-size: 3em;
	}

	#hero h1 {
		font-size: 2.25em;
	}

	body.landing.home #hero h1 {
		font-size: 2.25em;
	}

		body.landing #hero h1::after {
			left: 2px;
			height: 2px;
		}

		body.landing.home #hero .subtitle {
			font-size: 1rem;
		}

	.fact-boxes .item {
		flex: 0 0 calc(50% - 1rem) !important;
		max-width: calc(50% - 1rem) !important;
	}

	.tile-list .tile.w25,
	.tile-list .tile.w33,
	.tile-list .tile.w50,
	.tile-list .tile.w66,
	.tile-list .tile.w100 {
		/*
		flex: 0 0 calc(100% - 1.2rem);
		max-width: calc(100% - 1.2rem);
		min-width: calc(100% - 1.2rem);
		*/

		margin: 1rem 0 0 0;
		flex: 0 0 100%;
		max-width: 100%;
		min-width: 100%;
	}

	.inner {
		max-width: 100%;
		padding-left: 0;
		padding-right: 0;
	}


	.fs080x { font-size: 0.8em !important; }
	.fs100x { font-size: 1em !important; }
	.fs125x { font-size: 1.125em !important; }
	.fs150x { font-size: 1.25em !important; }
	.fs200x { font-size: 1.5em !important; }
	.fs250x { font-size: 1.75em !important; }
	.fs300x { font-size: 2em !important; }
	.fs350x { font-size: 2.25em !important; }
	.fs400x { font-size: 2.5em !important; }
	.fs500x { font-size: 3em !important; }
	.fs600x { font-size: 3.5em !important; }
	.fs700x { font-size: 4em !important; }
	.fs800x { font-size: 4.5em !important; }
	.fs900x { font-size: 5em !important; }


	div.directory-list .item, 
	div.directory-list.directory-list-4 .item,
	div.directory-list.directory-list-5 .item,
	div.directory-list.directory-list-6 .item {
		flex: 0 0 calc(50% - 1rem);
		max-width: calc(50% - 1rem);
		min-width: calc(50% - 1rem);
	}

		div.directory-list .item .photo,
		div.directory-list.directory-list-4 .item .photo,
		div.directory-list.directory-list-5 .item .photo,
		div.directory-list.directory-list-6 .item .photo,
		#sidebar_wrapper div.directory-list .item .photo,
		#sidebar_wrapper div.directory-list.directory-list-4 .item .photo,
		#sidebar_wrapper div.directory-list.directory-list-5 .item .photo,
		#sidebar_wrapper div.directory-list.directory-list-6 .item .photo {
			height: 54vw;
		}


	#giving_form #cart #contactus {
		margin: 0 0 2rem 0;
		padding: .1rem;
		text-align: center;
	}

		#giving_form #cart #contactus:before {
			display: none;
		}

	footer .socials {
		flex-wrap: wrap;
		justify-content: left;
	}

		footer .socials a i {
			margin-right: 1rem;
		}

		footer .socials .button {
			margin-left: 0;
			margin-right: 0.5rem;
		}

	.tablist {
		display: none;
	}

	.tabdropdown-container {
		display: block;
	}
	
}


@media screen and (max-width: 575px) {

	.threecol:not(.mega),
	.twocol:not(.mega) {
		columns: 1;
	}

		.twocol.fact-boxes {
			columns: 2;
			font-size: 0.9rem;
		}

	#hero .row .col {
		padding: 0;
	}

	div.fact-boxes .item {
		flex: 0 0 calc(100% - 1rem) !important;
		max-width: calc(100% - 1rem) !important;
	}
/*
	div.directory-list .item, 
	div.directory-list.directory-list-4 .item,
	div.directory-list.directory-list-5 .item,
	div.directory-list.directory-list-6 .item {
		flex: 0 0 calc(100% - 1rem);
		max-width: calc(100% - 1rem);
		min-width: calc(100% - 1rem);
	}

		div.directory-list .item .photo,
		div.directory-list.directory-list-4 .item .photo,
		div.directory-list.directory-list-5 .item .photo,
		div.directory-list.directory-list-6 .item .photo {
			height: calc(100vw - 30px);
		}
*/

	div.directory-list .item,
	div.directory-list.directory-list-4 .item,
	div.directory-list.directory-list-5 .item,
	div.directory-list.directory-list-6 .item,
	#sidebar_wrapper div.directory-list .item,
	#sidebar_wrapper div.directory-list.directory-list-4 .item,
	#sidebar_wrapper div.directory-list.directory-list-5 .item,
	#sidebar_wrapper div.directory-list.directory-list-6 .item {
		flex: 0 0 calc(100%);
		max-width: calc(100%);
		min-width: calc(100%);
		display: flex;
		flex-wrap: nowrap;
		margin: 0 0 1rem 0;
		padding-top: 1px;
		border-top: 2px solid var(--il-orange);
	}

		div.directory-list .item .photo,
		div.directory-list.directory-list-4 .item .photo,
		div.directory-list.directory-list-5 .item .photo,
		div.directory-list.directory-list-6 .item .photo,
		#sidebar_wrapper div.directory-list .item .photo,
		#sidebar_wrapper div.directory-list.directory-list-4 .item .photo,
		#sidebar_wrapper div.directory-list.directory-list-5 .item .photo,
		#sidebar_wrapper div.directory-list.directory-list-6 .item .photo {
			height: 125px;
			flex: 0 0 100px;
			margin: 0;
		}

		div.directory-list .item .details {
			padding-left: 1rem;
			flex: 0 0 calc(100% - 100px);
			border-top: none;
		}

		div.directory-list .item .contact {
			position: static;
			padding: 0;
		}

	div.fact-bubbles .item {
		flex: 0 0 50%;
		max-width: 50%;
	}

	.quote {
		font-size: 2rem;
	}

	ol.big-numbered-list {
		padding-left: 70px;
	}

		ol.big-numbered-list li:before {
			left: -70px;
			width: 60px;
		}

	.icon-band a {
		font-size: 0.75em;
	}

	body.storied #hero h1 {
		font-size: 1.2em;
	}



	body.storied .subtitle {
		font-size: 1.2em;
	}

	figure.portrait.align-left,
	figure.portrait.align-right,
	figure.image.align-left,
	figure.image.align-right {
		max-width: 100%;
		float: none;
		margin-left: 0;
		margin-right: 0;
	}

	.tile-list .tile.wide .left {
        height: 400px;
    }
}


@media screen and (max-width: 440px) {

	body.landing #hero h1 {
		font-size: 2.5em;
	}

	#hero h1,
	body.landing.home #hero h1 {
		font-size: 1.5em;
	}

	body.landing.home #hero .subtitle {
		font-size: 0.9rem;
	}

	.slider-feature .slide-content h2 {
		font-size: 1.4em;
	}

		.slider-feature .slide-content .subtitle {
			font-size: 0.9rem;
		}

	.virtual-tour .slide-content {
		padding: 0 80px 0 10px;
		padding-top: 4rem;
	}
	

	div.fact-bubbles .item {
		flex: 0 0 100%;
		max-width: 100%;
	}

	.fright {
		float: none;
		margin-left: 0;
		margin-right: 0;
	}

	.fleft {
		float: none;
		margin-left: 0;
		margin-right: 0;
	}


}

#spinner-overlay,
#chart-spinner-overlay
{
	position: fixed;
	display: none;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(255,255,255,0.8);
	z-index: 9999999;
	text-align: center;
}

	#spinner-overlay .spinner-border,
	#chart-spinner-overlay .spinner-border
	{
		width: 4em;
		height: 4em;
		font-size: 30px;
	}

table.sm-datatable tbody td {
	vertical-align: top;
}
table.sm-datatable thead th.nowrap {
	white-space: nowrap;
}

table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child,
table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child {
	padding-left: 10px;
}

table.dataTable.dtr-inline.collapsed>tbody>tr>td:first-child:before,
table.dataTable.dtr-inline.collapsed>tbody>tr>th:first-child:before {
	background-color: var(--il-blue);
	display: inline-block;
	position: initial;
	margin-right: 10px;
}

table.dataTable.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before,
table.dataTable.dtr-inline.collapsed>tbody>tr.parent>th:first-child:before {
	background-color: var(--il-orange);
}

table.dataTable.dtr-inline.collapsed>tbody>tr[role="row"]>td.dtr-control:before {
	background-color: var(--il-blue);
}

table.dataTable.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before {
	background-color: var(--il-orange);
}

table.dataTable.dtr-inline.collapsed>tbody>tr>td.child:first-child:before {
	display: none;
}


.sm-paginated-list {
	max-width: 100%;
}

.sm-paginated-list-pagination .page-item.active .page-link {
	background-color: var(--il-orange);
	border-color: var(--il-orange);
	text-decoration: none;
}
.sm-paginated-list-pagination.pagination {
	flex-wrap: wrap;
}

.page-link, .page-link:hover {
	color: var(--il-industrial-blue);
	text-decoration: none;
}

@media all {
	/* sm-social-feed */
	.sm-social-feed {
		overflow: hidden;
		opacity: 0;
		transition: opacity ease-in-out 1s;
	}

		.sm-social-feed p {
			margin: 0;
			text-align: left;
		}

		.sm-social-feed .slick-slide {
			margin: 0 0.6rem;
		}

		.sm-social-feed .slick-list {
			margin: 40px;
		}

		.sm-social-feed .slick-arrow {
			border-radius: 0px;
			border: none;
			border-color: var(--engr-charcoal);
			width: 60px;
			height: 80%;
			top: 10%;
			color: var(--engr-charcoal);
			font-size: 18px;
			opacity: 0.2;
		}

		.sm-social-feed:hover .slick-arrow {
			opacity: 0.6;
		}

		.sm-social-feed .slick-arrow:hover {
			opacity: 1;
		}

		.sm-social-feed .slick-arrow:focus {
			outline: none;
		}

		.sm-social-feed .slick-arrow.slick-disabled {
			display: none !important;
		}

		.sm-social-feed .slick-prev {
			left: -25px;
			border-right-style: solid;
			border-right-width: 1px;
		}

		.sm-social-feed .slick-next {
			right: -25px;
			border-left-style: solid;
			border-left-width: 1px;
		}

	.royal-box .sm-social-feed .slick-arrow,
	.orange-box .sm-social-feed .slick-arrow,
	.navy-box .sm-social-feed .slick-arrow,
	.charcoal-box .sm-social-feed .slick-arrow {
		border-color: var(--engr-white);
		color: var(--engr-white);
	}

	.sm-social-feed .item {
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
	}

		.sm-social-feed .item:hover .overlay {
			top: 0;
		}

	.sm-social-feed .overlay {
		position: absolute;
		top: 100%;
		background-color: rgba(0, 0, 0, 0.6);
		overflow: hidden;
		width: 100%;
		height: 100%;
		transition: opacity ease-in-out 0.4s;
	}

	.sm-social-feed .title {
		color: var(--engr-white);
	}

		.sm-social-feed .title::after {
			content: '\f16d';
			font-family: 'Font Awesome 5 Brands';
			font-size: 1.25em;
			position: absolute;
			bottom: 2px;
			;
			right: 18px;
		}
}

@media all {
	.badge-list ul {
		display: inline;
		list-style-type: none;
		margin: 0;
		padding: 0;
	}
	.badge-list ul li {
		display: inline;
		margin-right: 0.5rem;
	}
	.badge-list ul li a {
		border-radius: 30px;
		margin-bottom: 0.5rem;
		display: inline-block;
		color: #fff;
		font-size: 0.9em;
		line-height: 1;
		text-decoration: none;
		padding: 5px 10px;
		background-color: var(--il-industrial-blue);
	}
	.badge-list.arches-blue ul li a {
		background-color: var(--il-arches-blue);
	}
	.badge-list.industrial-blue ul li a {
		background-color: var(--il-industrial-blue);
	}
	.badge-list ul li a:hover {
		color: #fff;
		text-decoration: underline;
	}

	.tabhr.nav-tabs{
		border-bottom: 1px solid var(--il-orange);
	}

	.tabhr .nav-link {
		transition: 0.5s all;
		text-decoration: none;
		border-radius: 0;
		border-bottom: 1px solid var(--il-orange);
	}
	
	.tabhr .nav-link:hover,
	.tabhr .nav-link:focus {
		background: var(--il-cloud-3);
		color: var(--il-industrial-blue);
		border-bottom: 1px solid var(--il-orange);
	}

	.tabhr .nav-link.active {
		font-weight: 700;
		background: var(--il-orange);
		border-bottom: 1px solid var(--il-orange);
		color: var(--engr-white);
	}	

	#chart-container{
	/*	max-width: 600px;*/
		margin: 0 auto;
	}

}