/*!
Launched:2023-07-17
Authors: Nevin McElwrath, Taylor Packet, Erik Runyon
Office of Public Affairs and Communications: Brand Content

CONTENTS
-----------------------------------------
1. Common Styles
2. Screen Styles
3. Media Queries
4. Themes
5. Plugins
6. Print Styles

BRANDING
-----------------------------------------
1. COLORS
 - Blue: #0c2340
 - Gold: #ae9142

2. FONT STACKS
 - Headings: GPC, "Arial Narrow", "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif
 - Body/Default: Sumana, Georgia, "Times New Roman", Times, serif
 - Captions/Secondary: "Libre Franklin", "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif
*/



/*************************************************************************************
* 1. Common Styles
************************************************************************************/

:root {
	--brand-blue: #0c2340;
	--brand-blue-dark: #081629;
	--brand-blue-light: #143865;
	--brand-blue-bright: #1c4f8f;
	--brand-gold: #ae9142;
	--brand-gold-dark: #8c7535;
	--brand-gold-light: #d39f10;
	--link-focus: #15a6b5;

	--font-default: Sumana, Georgia, "Times New Roman", Times, serif;
	--font-secondary: "Libre Franklin", "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;
	--font-heading: GPC, "Arial Narrow", "Libre Franklin", "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;

	--gray: #555;
	--gray-dark: #333;
	--gray-light: #d2d2d2;
	--gray-extra-light: #e2e2e2;
	--gray-extra-extra-light: #f2f2f2;
	--sky-blue: #e1e8f2;
	--sky-blue-light: #edf2f9;
	--sky-blue-dark: #c1cddd;
	--grid-gap: 1.5rem;
	--anim-duration: 325ms;
	--anim-duration-fast: 125ms;
	--anim-duration-slow: 500ms;
	--anim-ease: ease-in-out;
	--anim-ease: ease-in-out;

	--offset: -8vw;
}

*,
*:before,
*:after {
	box-sizing: border-box;
}

@-ms-viewport {
	width: device-width;
	zoom: 1;
}

@-o-viewport {
	width: device-width;
	zoom: 1;
}

@viewport {
	width: device-width;
	zoom: 1;
}

html {
	width: 100%;
	margin: 0;
	padding: 0;
	font-size: 100%;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	font-smoothing: antialiased;
	overflow-x: hidden;
}

body {
	margin: 0;
	color: #383838;
	font: 1em/1.5em var(--font-default);
	position: relative;
	overflow-x: hidden;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
	max-width: 100%;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden] {
	display: none;
}

[tabindex="-1"]:focus {
	outline: none !important;
}

p {
	margin: 0 0 1.5em;
	font-size: 1.3em;
	line-height: 1.8em;
}

a {
	color: var(--brand-blue-bright);
	overflow-wrap: break-word;
	-webkit-text-decoration-skip: ink;
	text-decoration-skip: ink;
	text-decoration-skip-ink: auto;
	background-color: transparent;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a:visited {
	color: var(--brand-blue);
}

a:hover {
	color: var(--brand-blue-bright);
}

a:active {
	color: var(--brand-gold);
}

a:focus {
	outline: thin dotted;
}

strong,
b {
	font-weight: bolder;
}

em,
i {
	font-style: italic;
}

small {
	font-size: 80%;
}

iframe,
embed {
	width: 100%;
}

sub,
sup {
	position: relative;
	vertical-align: baseline;
	line-height: 0;
	font-size: smaller;
}

sup {
	vertical-align: super;
}

sub {
	vertical-align: sub;
}

pre,
code,
kbd,
samp {
	overflow: auto;
	font-family: monospace, sans-serif;
}

hr {
	clear: both;
	margin: 3rem 5%;
	max-width: calc(65rem - 10%);
	border: 1px solid var(--gray-light);
}

a,
area,
button,
[role="button"],
input:not([type="range"]),
label,
select,
summary,
textarea {
	touch-action: manipulation;
}

/* Headings
---------------------------------------------------*/
h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 1.4em 0 0.25em;
	line-height: 1.4em;
	color: var(--brand-blue);
	font-weight: 700;
	text-rendering: optimizeLegibility;
	font-family: var(--font-heading);
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
	text-decoration: none;
}

h1 a:visited,
h2 a:visited,
h3 a:visited,
h4 a:visited,
h5 a:visited,
h6 a:visited {
	color: var(--brand-blue);
}

h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover {
	text-decoration: underline;
}

*>h2:first-child,
*>h3:first-child,
*>h4:first-child,
*>h5:first-child,
*>h6:first-child {
	margin-top: 0;
}

h1 {
	margin-top: 0;
	font-size: 1.65em;
}

h2 {
	margin: 0 0 0.25em;
	font-size: 2.4em;
}

h3 {
	font-size: 1.563em;
}

h4 {
	font-size: 1.375em;
}

h5 {
	font-size: 1.188em;
}

h6 {
	font-size: 1em;
}

/* Lists
----------------------------------------------------*/
ol,
ul,
dl {
	margin: 1rem 0;
	padding: 0 0 0 2rem;
}

li {
	margin: 0 0 0.25rem;
}

nav ul {
	list-style: none;
}

nav ul,
nav li {
	margin: 0;
	padding: 0;
}

nav a {
	text-decoration: none;
}

.no-bullets,
.nobullets {
	list-style-type: none;
}

/* Tables
----------------------------------------------------*/
table {
	width: 100%;
	margin: 2em 0;
	border-collapse: collapse;
	border-spacing: 0;
	border: 1px solid var(--gray-light);
}

tr {
	border-top: 1px solid var(--gray-light);
}

tr:nth-child(even) td {
	background: var(--gray-extra-extra-light);
}

th,
thead th {
	text-align: left;
	background-color: var(--gray-extra-light);
	color: var(--gray-dark);
	border-right: 1px solid var(--gray-light);
	font-family: var(--font-default);
	font-weight: 600;
	font-size: 1em;
	border-bottom: 3px solid var(--gray);
}

tfoot th {
	text-align: right;
}

th,
td {
	padding: 0.5em 0.75em;
}

td {
	border-right: 1px solid var(--gray-light);
	border-left: 1px solid var(--gray-light);
}

td,
td img {
	vertical-align: top;
}

/* Subscribe
----------------------------------------------------*/
/* MailChimp Form Embed Code - Classic - 12/17/2015 v10.7 */
#mc_embed_signup form { font-family:var(--font-secondary);
	display: block;
	position: relative;
	text-align: left;
	padding: 10px 0 10px 3%
}

#mc_embed_signup h2 {
	font-weight: bold;
	padding: 0;
	margin: 15px 0;
	font-size: 1.4em;
}

#mc_embed_signup input {
	border: 1px solid #ABB0B2;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

#mc_embed_signup input[type=checkbox] {
	-webkit-appearance: checkbox;
}

#mc_embed_signup input[type=radio] {
	-webkit-appearance: radio;
}

#mc_embed_signup input:focus {
	border-color: #333;
}

#mc_embed_signup .button {
	clear: both;
	background-color: #aaa;
	border: 0 none;
	border-radius: 4px;
	transition: all 0.23s ease-in-out 0s;
	color: #FFFFFF;
	cursor: pointer;
	display: inline-block;
	font-size: 15px;
	font-weight: normal;
	height: 32px;
	line-height: 32px;
	margin: 0 5px 10px 0;
	padding: 0 22px;
	text-align: center;
	text-decoration: none;
	vertical-align: top;
	white-space: nowrap;
	width: fit-content;
	width: -moz-fit-content;
}

#mc_embed_signup .button:hover {
	background-color: #777;
}

#mc_embed_signup .small-meta {
	font-size: 11px;
}

#mc_embed_signup .nowrap {
	white-space: nowrap;
}

#mc_embed_signup .mc-field-group {
	clear: left;
	position: relative;
	width: 96%;
	padding-bottom: 3%;
	min-height: 50px;
}

#mc_embed_signup .size1of2 {
	clear: none;
	float: left;
	display: inline-block;
	width: 46%;
	margin-right: 4%;
}

* html #mc_embed_signup .size1of2 {
	margin-right: 2%;
	/* Fix for IE6 double margins. */
}

#mc_embed_signup .mc-field-group label {
	display: block;
	margin-bottom: 3px;
}

#mc_embed_signup .mc-field-group input {
	display: block;
	width: 100%;
	padding: 8px 0;
	text-indent: 2%;
}

#mc_embed_signup .mc-field-group select {
	display: inline-block;
	width: 99%;
	padding: 5px 0;
	margin-bottom: 2px;
}

#mc_embed_signup .datefield,
#mc_embed_signup .phonefield-us {
	padding: 5px 0;
}

#mc_embed_signup .datefield input,
#mc_embed_signup .phonefield-us input {
	display: inline;
	width: 60px;
	margin: 0 2px;
	letter-spacing: 1px;
	text-align: center;
	padding: 5px 0 2px 0;
}

#mc_embed_signup .phonefield-us .phonearea input,
#mc_embed_signup .phonefield-us .phonedetail1 input {
	width: 40px;
}

#mc_embed_signup .datefield .monthfield input,
#mc_embed_signup .datefield .dayfield input {
	width: 30px;
}

#mc_embed_signup .datefield label,
#mc_embed_signup .phonefield-us label {
	display: none;
}

#mc_embed_signup .indicates-required {
	text-align: right;
	font-size: 11px;
	margin-right: 4%;
}

#mc_embed_signup .asterisk {
	color: #e85c41;
	font-size: 150%;
	font-weight: normal;
	position: relative;
	top: 5px;
}

#mc_embed_signup .clear {
	clear: both;
}

#mc_embed_signup .foot {
	display: grid;
	grid-template-columns: 3fr 1fr;
	width: 96%;
	align-items: center;
}

@media screen and (max-width:400px) {
	#mc_embed_signup .foot {
		display: grid;
		grid-template-columns: 1fr;
		width: 100%;
		align-items: center;
	}
}

@media screen and (max-width:400px) {
	#mc_embed_signup .referralBadge {
		width: 50%;
	}
}

#mc_embed_signup .brandingLogo {
	justify-self: right;
}

@media screen and (max-width:400px) {
	#mc_embed_signup .brandingLogo {
		justify-self: left;
	}
}

#mc_embed_signup .mc-field-group.input-group ul {
	margin: 0;
	padding: 5px 0;
	list-style: none;
}

#mc_embed_signup .mc-field-group.input-group ul li {
	display: block;
	padding: 3px 0;
	margin: 0;
}

#mc_embed_signup .mc-field-group.input-group label {
	display: inline;
}

#mc_embed_signup .mc-field-group.input-group input {
	display: inline;
	width: auto;
	border: none;
}

#mc_embed_signup div#mce-responses {
	float: left;
	top: -1.4em;
	padding: 0em .5em 0em .5em;
	overflow: hidden;
	width: 90%;
	margin: 0 5%;
	clear: both;
}

#mc_embed_signup div.response {
	margin: 1em 0;
	padding: 1em .5em .5em 0;
	font-weight: bold;
	float: left;
	top: -1.5em;
	z-index: 1;
	width: 80%;
}

#mc_embed_signup #mce-error-response {
	display: none;
}

#mc_embed_signup #mce-success-response {
	color: #529214;
	display: none;
}

#mc_embed_signup label.error {
	display: block;
	float: none;
	width: auto;
	margin-left: 1.05em;
	text-align: left;
	padding: .5em 0;
}

#mc-embedded-subscribe {
	clear: both;
	width: auto;
	display: block;
	margin: 1em 0 1em 5%;
}

#mc_embed_signup #num-subscribers {
	font-size: 1.1em;
}

#mc_embed_signup #num-subscribers span {
	padding: .5em;
	border: 1px solid #ccc;
	margin-right: .5em;
	font-weight: bold;
}

#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error {
	display: inline-block;
	margin: 2px 0 1em 0;
	padding: 3px;
	background-color: rgba(255, 255, 255, 0.85);
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-size: 14px;
	font-weight: normal;
	z-index: 1;
	color: #e85c41;
}

#mc_embed_signup #mc-embedded-subscribe-form input.mce_inline_error {
	border: 2px solid #e85c41;
}

/* Overrides */
#mc_embed_signup {
	clear: both;
	width: 100%;
	margin-top: 4rem;
	padding: 0.5rem 1rem;
	background: none;
}

#mc_embed_signup_scroll {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	grid-gap: var(--grid-gap);
}

#mc_embed_signup_scroll .mc_group {
	grid-column: 1/8;
}

#mc_embed_signup_scroll p {
	margin: 0;
	font-family: var(--font-secondary);
	font-size: 1.1rem;
}

#mc_embed_signup_scroll h2 {
	font-size: 2.15rem !important;
	margin-bottom: 0.25rem !important;
}

#mc_embed_signup div#mce-responses {
	margin: 0 0 1rem !important;
	padding: 0;
	grid-column: 1/7;
}

#mc_embed_signup div.response {
	top: 0;
	margin: 0 0 0.5rem !important;
	padding: 0 !important;
}

#mc_embed_signup form { font-family:var(--font-secondary);
	padding: 0.675rem 1.25rem 0 !important;
}

#mc_embed_signup .mc-field-group {
	width: 100% !important;
	grid-column: 1/8;
}

#mc_embed_signup #mc-embedded-subscribe-form div.mce_inline_error {
	margin: 0 !important;
	background: none !important;
	font-family: var(--font-secondary);
	font-weight: bold !important;
}

#mc_embed_signup .mc-field-group {
	margin: 0 !important;
}

#mc_embed_signup .mc-field-group input {
	padding: 0.95rem 0 !important;
	font-size: 1rem !important;
}

#mc_embed_signup .button {
	margin: 0 !important;
	padding: 0.625rem 1rem !important;
	height: auto !important;
	width: 100% !important;
	background-color: var(--brand-blue) !important;
	font-family: var(--font-secondary) !important;
	font-weight: 700 !important;
	transition: all var(--anim-duration) var(--anim-ease);
}

#mc_embed_signup .button:hover {
	background-color: var(--brand-blue-bright) !important;
}

#mc_embed_signup .foot {
	grid-template-columns: none !important;
	width: 100% !important;
}

.optionalParent {
	display: inline;
	width: 100% !important;
	grid-column: 2/7;
}

@media screen and (min-width: 600px) {
	.optionalParent {
		grid-column: 6/8;
	}
}

/* Quotes
----------------------------------------------------*/
blockquote {
	position: relative;
	margin: 2rem 1rem;
	padding: 0;
	font-family: var(--font-default);
	text-align: left;
}

blockquote p {
	margin: 0 0 1rem;
	font-size: 1.5rem;
	line-height: 1.6em;
	color: var(--brand-blue);
}

blockquote p cite {
	display: block;
	margin: 1rem 0 0;
	font-size: 1rem;
	color: var(--gray);
	text-align: right;
	font-weight: normal;
	font-style: normal;
	font-family: var(--font-secondary);
	line-height: 1.4;
}

.photo-quote figure {
	margin: 0 auto;
	width: 50%;
}

.photo-quote img {
	border-radius: 100%;
}

.photo-quote figure {
	position: relative;
}

blockquote.quote {
	background: var(--sky-blue-light);
	border-radius: 2rem;
}

/* Images & Videos
----------------------------------------------------*/
img {
	max-width: 100%;
	min-width: 100%;
	width: auto;
	height: auto;
	border: none;
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
	box-sizing: content-box;
}

figure {
	display: flex;
	flex-flow: column;
	margin: 0;
}

figcaption {
	clear: both;
	margin: 0.75em 0;
	font-size: 0.95rem;
	text-align: left;
	color: var(--gray);
	line-height: 1.4em;
	font-family: var(--font-secondary);
}

.full,
.figgroup-2,
.figgroup-3,
.figgroup-3-combo,
.figgroup-4,
.image-right,
.image-left {
	margin: 2rem 0;
}

.figgroup-2,
.figgroup-3 {
	display: grid;
	grid-template-columns: 1fr;
}

.figgroup-3-combo img,
.figgroup-4 img {
	margin: 0.75rem 0 0;
}

.figgroup-2 img,
.figgroup-3 img,
.figgroup-3-combo img,
.figgroup-4 img {
	object-fit: cover;
}

aside {
	padding: 1.5rem;
	background: var(--sky-blue);
	font-family: var(--font-secondary);
	border-radius: 10px;
	position: relative;
	margin: 2rem 0;
	clear: both;
}

.aside-horizontal {
	display: flex;
	flex-flow: column;
}

.aside-horizontal img {
	margin-bottom: 2rem;
}

.card:not(.horizontal) .label:first-child { margin-top: 1.5rem; }

.video {
	min-width: 100%;
	position: relative;
	display: inline-block;
	text-align: center;
	overflow: hidden;
}

.video .play {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	background: rgba(0, 0, 0, 0.1) url('images/play-btn.svg') no-repeat left center / auto 100%;
	-webkit-transform-origin: 12% 79%;
	transform-origin: 12% 79%;
	-webkit-transform: scale(1);
	transform: scale(1);
	transition: all 125ms cubic-bezier(0, 0, 0.25, 1);
}

.video:hover .play {
	background-color: rgba(0, 0, 0, 0);
	-webkit-transform: scale(1.15);
	transform: scale(1.15);
}

.video-container {
	margin-bottom: 0;
}

/* Scrolling fades */
.js .animate {
	transform: scale(1.02);
	opacity: 0;
	transition: all 1s cubic-bezier(0.31, 0.72, 0.49, 0.9);
}

.js figcaption.animate,
.js .slide.animate {
	transform: scale(1) translate(2rem, 0);
}

.js .animate.active,
.js .animate.active-once {
	transform: scale(1) translateY(0);
	opacity: 1;
}


/* General Classes
----------------------------------------------------*/
.ndmark {
	display: block;
	width: 200px;
	max-width: 100%;
	text-decoration: none;
}

.hidden {
	display: none !important;
}

.skip-links {
	left: 0;
	list-style: none outside;
	margin-left: 0;
	position: absolute;
	text-align: center;
	top: 0;
	width: 100%;
}

.skip-links a {
	left: -100vw;
	position: absolute;
	top: .5em;
	transition: .25s;
}

.skip-links a:active,
.skip-links a:focus,
.skip-links a:hover {
	background: #fff;
	box-shadow: 0 0 10px 0 #000;
	color: #0c2340;
	color: var(--brand-blue);
	font-size: 14px;
	font-weight: 700;
	height: auto;
	left: .5em;
	overflow: visible;
	padding: .5em 1em;
	width: auto;
	z-index: 999;
}

.text-right {
	text-align: right;
}

.text-center {
	text-align: center;
}

.visibility-hidden {
	display: none !important;
}

.visually-hidden {
	position: absolute;
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	width: 1px;
	overflow: hidden;
	margin: -1px;
	padding: 0;
	white-space: nowrap;
}

/*************************************************************************************
* 2. Screen Styles
************************************************************************************/
@media screen {
	body {
		background: #fffffe;
	}

	.wrapper {
		height: 100%;
	}

	.site-content {
		margin: auto;
		display: grid;
		grid-template-columns: 1fr minmax(0, 23em) minmax(0, 23em) 1fr;
		grid-gap: var(--grid-gap);
	}

	.section {
		grid-column: 2/4;
		margin-top: 3rem;
		margin-bottom: 3rem;
	}

	.section-layout {
		--grid-gap: 4vw;
		margin: var(--grid-gap);
		align-items: center;
	}

	.section-layout .card.confined-85 { aspect-ratio: 8/5; }

	.section--arts-gateway { min-height: fit-content; align-content: center; }


	.full-bleed {
		display: grid;
		grid-template-columns: 1fr minmax(0, 30em) minmax(0, 30em) 1fr;
		grid-gap: var(--grid-gap);
		grid-row-gap: 0.8em;
	}

	.full-bleed img,
	.full-bleed video {
		object-fit: cover;
		overflow: hidden;
		height: 50vh;
		grid-column: 1/5;
	}

	.full-bleed figcaption {
		margin: 0 0 2rem;
		grid-column: 2/4;
	}

	.embed-inner {
		position: relative;
		padding: 0;
	}

	.embed-inner iframe,
	.embed-inner object,
	.embed-inner embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.progress-story {
		position: fixed;
		left: 0;
		top: 0;
		z-index: 10;
		width: 100%;
		height: 5px;
		border: none;
		color: var(--brand-blue);
		background-color: transparent;
		-webkit-appearance: none;
		appearance: none;
	}

	.progress-story::-webkit-progress-bar {
		background-color: transparent;
	}

	.progress-story::-webkit-progress-value {
		background-color: var(--brand-blue);
	}

	.progress-story::-moz-progress-bar {
		background-color: var(--brand-blue);
	}

	/* Header
----------------------------------------------------*/
	.site-header {
		position: relative;
		margin: 0;
	}

	.brandbar {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		z-index: 2;
	}

	.brandbar li {
		margin: 0;
		padding: 0;
	}

	.brandbar a {
		display: block;
		margin: 0.5rem auto;
		text-decoration: none;
		height: 65px;
		text-indent: -9999px;
		overflow: hidden;
		background-repeat: no-repeat;
	}

	.dept-nd img {
		display: none;
	}

	.dept-nd a {
		background-position: center 0;
	}

	.dept a {
		background-position: right 0;
	}

	.titlebar {
		margin: 2.75rem 0 4rem;
		padding: 0 1.5rem;
	}

	.header-image {
		position: relative;
		overflow: hidden;
		margin: 0;
		width: 100%;
		z-index: -999;
	}

	.header-image:before,
	.header-video:before {
		content: '';
		z-index: 2;
		display: block;
		position: absolute;
		top: 0;
		width: 100%;
		height: 100%;
		box-shadow: inset 0px 80px 80px rgba(255, 255, 255, 0.5);
	}

	.header-image img {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		object-fit: cover;
	}

	.header-grid { display: grid; grid-template-rows: repeat(3, auto); grid-template-columns: 1fr; column-gap: var(--grid-gap); row-gap: var(--grid-gap); }
	.header-grid .titlebar { grid-row: 2; }
	.header-grid figure img { width: 100%; height: 100%; object-fit: cover; }
	.header-grid figure:nth-child(5n + 1),
	.header-grid figure:nth-child(5n + 3),
	.header-grid figure:nth-child(5n + 4) { display: none; }
	.header-grid figure:nth-child(5n + 2) { grid-row: 1/2; grid-column: 1; min-height: 300px; }
	.header-grid figure:nth-child(5n + 5) { grid-row: 3/4; grid-column: 1; }

	/* Header - Centered */
	.header-centered {
		position: relative;
		display: grid;
		margin: auto;
		grid-template-columns: 1fr 1fr minmax(0, 23em) minmax(0, 23em) 1fr 1fr;
		grid-template-rows: auto;
		grid-gap: var(--grid-gap);
	}

	.header-centered .hdr-campus {
		position: relative;
		z-index: -999;
	}

	.header-centered .hdr-campus:after {
		content: '';
		position: absolute;
		top: 0;
		height: 15rem;
		width: 100vw;
		background: url('images/hdr-campus-800.jpg') center top / cover no-repeat;
	}

	.header-centered .titlebar {
		margin: 2rem 0 4rem;
		grid-row: 2/2;
		grid-column: 2/6;
	}

	.header-centered .header-image {
		margin: 5rem 0 2rem;
		grid-column: 2/6;
	}

	.header-centered .header-image img {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		object-fit: cover;
	}

	/* Header - 50/50 */
	.header-50-50 {
		margin: auto;
		display: grid;
		grid-template-columns: 1fr minmax(0, 23em) minmax(0, 23em) 1fr;
		grid-gap: var(--grid-gap);
	}

	.header-50-50 .brandbar {
		grid-column: 1/7;
		grid-row: 1/2;
	}

	.header-50-50 .titlebar {
		margin: 1rem 0 0;
		grid-column: 1/6;
	}

	.header-50-50 .header-image {
		z-index: -999;
		grid-row: 1/2;
		grid-column: 1/7;
		position: relative;
	}

	/* Header - Full bleed video */
	.header-video .titlebar {
		grid-column: 2/4;
	}

	.bgvid {
		position: relative;
		aspect-ratio: 16/9;
	}

	.bgvid .play-pause {
		position: absolute;
		right: 1.5rem;
		margin-top: calc(56.25% - 5rem);
		background: white;
		z-index: 10;
		border: 2px solid transparent;
		border-radius: 50%;
		transition: all var(--anim-duration-fast) var(--anim-ease);
		transform: scale(1);
	}

	.bgvid .btn {
		padding: 0.15rem;
	}

	.bgvid .play-pause .icon {
		width: 50px;
		height: 50px;
	}

	.bgvid .play-pause:focus {
		border-color: var(--brand-blue-light);
	}

	.bgvid .play-pause:hover {
		border-color: var(--brand-gold);
		cursor: pointer;
		transform: scale(1.2);
	}

	.bgvid .btn svg {
		transition: all var(--anim-duration-fast) var(--anim-ease);
		color: var(--brand-blue);
	}

	.bgvid .play-pause:hover svg {
		color: var(--brand-gold);
	}

	.bgvid .btn:hover svg {
		transform: translateX(0);
	}

	.bgvid img {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		aspect-ratio: inherit;
		z-index: 0;
	}

	.bgvid iframe {
		aspect-ratio: inherit;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 1;
	}

	/* Header - Full bleed image */
	.header-full-image {
		display: grid;
		grid-template-columns: 1fr minmax(0, calc(10vw + 23em)) minmax(0, calc(10vw + 23em)) 1fr;
	}

	.header-full-image .header-image {
		grid-column: 1/5;
		grid-row: 1;
	}

	.header-full-image .titlebar {
		grid-column: 2/3;
		grid-row: 1;
		justify-content: center;
		display: flex;
		flex-flow: column;
	}

	.category,
	.pubdate {
		margin: 0 0 0.5rem;
		color: var(--gray);
		font-family: var(--font-secondary);
		font-weight: 400;
		text-transform: uppercase;
		letter-spacing: 0.08em;
	}

	.pubdate {
		margin: 2em 0 0;
		text-transform: capitalize;
		letter-spacing: 0;
	}

	.site-title {
		margin-bottom: 0;
		font-size: 2.25rem;
		line-height: 1.1em;
		font-weight: 700;
		font-family: var(--font-heading);
		color: var(--brand-blue);
	}

	.subtitle {
		margin: 1em 0 0;
		font-size: 1.4rem;
		line-height: 1.45em;
		font-weight: 300;
		font-family: var(--font-secondary);
		color: var(--gray-dark);
	}

	/* Content
----------------------------------------------------*/
	.lede {
		font-size: 1.45rem;
	}

	.edge-texture {
		mask-image: url(images/mask-edge_texture.svg);
		-webkit-mask-image: url(images/mask-edge_texture.svg);
		mask-repeat: repeat-y;
		-webkit-mask-repeat: repeat-y;
		mask-position: left top;
		-webkit-mask-position: left top;
		mask-size: 100% auto;
		-webkit-mask-size: 100% auto;
		image-rendering: pixelated;
	}

	.highlighted {
		padding: 1.7rem;
		background: var(--sky-blue-light);
		color: var(--brand-blue-dark);
		font-family: var(--font-secondary);
		border-left: 5px solid var(--brand-gold);
	}

	.highlighted.dark {
		background-color: var(--brand-blue);
		color: white;
	}

	.highlighted.dark h2 {
		color: white;
	}

	.highlighted.dark .btn {
		color: white;
		background-color: var(--brand-blue-light);
	}

	.highlighted.dark .btn:hover {
		background-color: var(--brand-blue-dark);
	}

	.pull {
		margin-top: 2rem;
		margin-bottom: 2rem;
	}

	.no-border,
	.noborder {
		border: none !important;
	}

	.byline:before {
		content: '';
		margin-bottom: 1.5em;
		display: block;
		height: 4px;
		width: 80px;
		background: var(--brand-gold);
	}

	.byline {
		margin: 3.5em 0 0;
		color: var(--brand-blue);
	}

	.byline p {
		margin: 0;
		font-size: 1.25em;
		font-weight: 700;
		font-family: var(--font-heading);
	}

	.byline ul {
		padding: 0;
		list-style: none;
		font-size: 0.9em;
		font-weight: 400;
		font-family: var(--font-secondary);
		font-style: normal;
		color: var(--gray);
	}

	.byline ul strong {
		color: var(--gray-dark);
	}

	.byline a {
		color: var(--brand-blue);
	}

	/* Related Content
----------------------------------------------------*/
	.related {
		margin: 4rem 0 3rem;
	}

	.related h2 {
		margin-top: 0.45rem;
		font-size: 1.75rem;
		color: var(--brand-blue);
		font-weight: 700;
		font-family: var(--font-heading);
	}

	.related .image {
		margin-right: 0.75em;
		float: left;
		width: 130px;
	}

	.related .category {
		display: block;
		margin: 0.75rem 0 0;
		font-size: 0.8rem;
		line-height: 1.25rem;
		color: var(--gray);
	}

	.related p.subtitle {
		margin-top: 0;
		font-size: 0.925rem;
		font-family: var(--font-secondary);
		font-weight: 400;
	}

	.related .text-right {
		margin: 0;
		grid-column: 2/4;
		text-align: right;
	}

	/* Cards
----------------------------------------------------*/
	.card-link,
	.card-link:visited {
		display: block;
		text-decoration: none;
		color: var(--brand-blue);
	}

	.card-link:hover {
		text-decoration: none;
		color: var(--brand-blue);
	}

	.card-link::before {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		z-index: 2
	}

	/* Cards (flexible content containers)
----------------------------------------------------*/
	.card {
		display: flex;
		flex-flow: column;
		width: 100%;
		position: relative;
		margin: 0;
		width: 100%;
	}

	.card-body {
		padding: 0 1rem 1rem;
		font-size: 1rem;
	}

	.card-body.overlaid {
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		padding: 4rem 2rem 2rem;
		background: linear-gradient(0deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
		color: white;
	}

	.card-body.overlaid .card-title {
		color: white;
		margin-bottom: 0;
	}

	.card-body.overlaid p {
		margin-bottom: 0;
	}

	.card-body.overlaid .card-title + p { display: none; }

	.card-title {
		margin: 0 0 1rem;
		padding-top: 0;
		font-family: var(--font-heading);
		font-weight: 400;
		line-height: 1.2;
	}

	.card-label,
	.label {
		color: white;
		background: var(--brand-gold-dark);
		font-family: var(--font-secondary);
		font-size: 1rem;
		margin: 0 0 0.5em;
		padding: 0.25em 0.75em;
		font-size: 0.875rem;
		font-weight: normal;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		display: inline-block;
		width: auto;
		align-self: flex-start;
	}

	.card-image {
		order: -1;
		margin: 0;
		width: 100%;
	}

	.card-image img {
		width: 100%;
	}

	.card.horizontal {
		display: flex;
		flex-flow: column;
		margin-bottom: var(--grid-gap);
	}

	.card.horizontal:last-child {
		margin-bottom: 0;
	}

	.card.horizontal .card-image {
		width: fit-content;
		min-width: 300px;
		margin-bottom: 1.5rem;
	}

	.card.horizontal .card-body {
		width: auto;
	}

	/* Hover Effects
----------------------------------------------------*/
	[class*="hover-"],
	[class*="hover-"]::after,
	[class*="hover-"]::before {
		transition: all var(--anim-duration) cubic-bezier(0, 0, 0, 1);
	}

	.hover-grow {
		transform: scale(1);
		margin-bottom: 0.75rem;
	}

	.hover-grow:hover {
		transform: scale(1.01);
	}

	.hover-bg {
		border-bottom: 0.25rem solid transparent;
	}

	.hover-bg:hover,
	.hover-bg:focus-within {
		background-color: var(--sky-blue);
		border-color: var(--sky-blue-dark);
	}

	.hover-bg:focus-within a:focus {
		outline: none;
	}

	.hover-more {
		padding-right: 3rem;
		background-position: calc(100% - 2rem) 50%;
		background-size: 1rem;
		background-repeat: no-repeat;
		background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"%3E%3Cpath fill="%23ae9142" d="M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17z"/%3E%3C/svg%3E');
	}

	.hover-more.card {
		padding-right: 0;
	}

	.hover-more.card-body,
	.hover-more .card-body {
		padding-right: 3rem;
	}

	/* Card Badges
 ----------------------------------------------------*/
	.card.badge {
		display: flex;
		background: var(--brand-blue);
		border-radius: 2rem;
		transition: all var(--anim-duration-fast) var(--anim-ease);
		transform: scale(1);
		flex-flow: column;
		margin-top: 2rem;
		margin-bottom: 2rem;
	}

	.card.badge .card-image {
		width: 35%;
		min-width: 8rem;
		padding: 1.5rem 0 1.5rem 2rem;
		vertical-align: top;
		align-self: center;
	}

	.card.badge .card-body {
		padding: 1.5rem 1.5rem 1.5rem 2rem;
		flex-grow: 3;
		color: white;
		--font-default: "Libre Franklin", sans-serif;
		font-family: var(--font-default);
	}

	.card.badge .card-label {
		color: var(--sky-blue-dark);
		margin-bottom: 0.5rem;
	}

	.card.badge .card-title {
		font-family: var(--font-heading);
		font-size: 2rem;
		color: white;
		margin-bottom: 0.5rem;
	}

	.card.badge .card-description {
		font-size: 1rem;
	}

	.card.badge.type-podcast {
		background: url(images/tex-sound-waves.svg) center center / 55% auto no-repeat, var(--brand-blue);
	}

	.card.badge .card-link {
		color: white;
		font-size: 1rem;
		margin: 0;
	}

	.card.badge .card-link .icon {
		fill: var(--brand-gold);
		height: 0.6em;
	}

	.card.badge .text-right {
		margin: 0;
	}

	.card.badge:hover {
		transform: scale(1.02);
		background-color: var(--brand-blue-light);
	}

	/* Buttons
----------------------------------------------------*/
	.btn {
		display: inline-block;
		padding: 0.8rem 1rem;
		border: 3px solid transparent;
		border-radius: 0.6rem;
		line-height: 1.5rem;
		text-decoration: none;
		transition: all 125ms ease-in-out;
		font-size: 1rem;
		font-family: var(--font-secondary);
		background-color: var(--sky-blue-light);
	}

	.btn:focus {
		border-color: var(--link-focus);
		outline: none;
	}

	.btn:visited {
		color: var(--brand-blue);
	}

	.btn svg {
		vertical-align: middle;
		width: 0.4rem;
		margin-left: 0.3rem;
		transition: transform .25s ease-in-out
	}

	.btn:hover svg {
		transform: translateX(0.325em);
	}

	.btn-inline {
		color: var(--brand-blue);
		background-color: var(--gray-extra-extra-light);
		line-height: 1;
		padding: 0.35em 0.6em;
		margin-left: 0.5em;
	}

	.btn-inline:hover,
	.btn:hover {
		color: var(--brand-blue);
		background-color: var(--sky-blue);
		transform: scale(1.02);
	}

	.btn-inline:active {
		color: var(--brand-blue);
		background-color: var(--sky-blue);
	}

	.btn-inline svg {
		fill: var(--brand-gold);
	}

	.btn-hidden {
		display: none;
	}

	.btn-hidden-mobile {
		display: block;
	}

	.btn.btn-more {
		padding-right: 0.7em;
	}

	.btn.btn-more::after {
		content: '';
		clip-path: polygon(19% 0, 100% 50%, 19% 100%, 0 91%, 65% 50%, 0 9%);
		background-color: var(--sky-blue-dark);
		margin-left: 0.7rem;
		height: 0.7rem;
		width: 0.35rem;
		display: inline-block;
		transition: all var(--anim-duration-fast) var(--anim-ease);
		transform: translateX(0);
	}

	.btn.btn-more:hover::after {
		transform: translateX(.3em);
		background-color: var(--brand-gold);
	}


	/* Footer
----------------------------------------------------*/
	.site-footer {
		position: relative;
		text-align: center;
		margin-top: 2rem;
		font-family: "Libre Franklin", Helvetica, Arial, Verdana, sans-serif;
		background: #f5f5f5;
	}

	.site-footer p {
		clear: both;
		margin: 0;
		font-size: 1rem;
	}

	.site-footer a {
		color: var(--gray);
	}

	.site-footer svg {
		fill: var(--gray);
	}

	.footer-global {
		padding: 2rem 0 0;
	}

	.footer-global li {
		padding: 0.5rem 0;
	}

	.social {
		margin: 2rem 0;
	}

	.copyright {
		font-weight: bold;
	}

	.address {
		display: block;
		margin: 0;
	}

	.vcard.adr {
		padding-bottom: 1.5rem;
	}

	.ndmark {
		width: 200px;
		margin: 2em auto;
	}

	.footer-global-links {
		padding: 1rem 0;
		background: var(--gray-light);
		font-size: 1rem;
	}

	.footer-global-links a {
		padding: 0.45rem 1rem;
		border-radius: 0.5rem;
		transition: all 125ms ease-in-out;
		text-decoration: none;
		transition: all 125ms ease-in-out;
	}

	.footer-global-links a:hover {
		text-decoration: underline;
	}

	.footer-global-links nav a:hover {
		text-decoration: none;
		background-color: #f0f0f0;
	}

	.footer-global-links li {
		margin: 0 1rem;
		padding: 0.5rem 0;
	}

	.footer-links-content {
		text-align: center;
	}

	.footer-links-policy {
		justify-content: flex-end;
		text-align: center;
	}
}

/*************************************************************************************
* 3. Media Queries
************************************************************************************/

/** 580px **
----------------------------------------------------*/
@media only screen and (min-width:36.25em) {

	/* Header
----------------------------------------------------*/
	.lede {
		font-size: 1.6rem;
	}

	/* Images & Video
----------------------------------------------------*/
	.image-right,
	.image-left {
		max-width: 52%;
		font-size: 0.9rem;
		text-align: left;
		color: #888;
		line-height: 1.4em;
		font-family: "Libre Franklin", Helvetica, Arial, Verdana, sans-serif;
	}

	.image-right {
		float: right;
		margin: 0 0 1.2em 3em;
	}

	.image-left {
		float: left;
		margin: 0 3em 1.2em 0;
	}

	.header-image {
		height: 60vh;
		min-height: 31.25rem;
	}

	.video-right {
		width: 52%;
		float: right;
		margin: 0 0 1.2em 3em;
	}
}

/** 768px **
----------------------------------------------------*/
@media only screen and (min-width:48em) {

	/* Header
----------------------------------------------------*/
	html {
		background-attachment: fixed;
	}

	.brandbar li {
		margin: 0 auto;
	}

	.header-image {
		height: 70vh;
		min-height: 43.75rem;
	}

	.site-title {
		font-size: 3em;
	}

	.subtitle {
		font-size: 1.8rem;
	}

	/* Header - Centered */
	.header-centered .titlebar {
		grid-column: 3/5;
	}

	.header-centered .hdr-campus:after {
		background-image: url('images/hdr-campus-1200.jpg');
	}

	/* Header - 50/50 */
	.header-50-50 .header-image {
		height: 50vh;
	}

	/* Header - Full Bleed Video */
	.header-video {
		z-index: -999;
		margin-top: 0;
	}


	/* Content
----------------------------------------------------*/
	h2 {
		font-size: 2.3em;
	}

	h3 {
		font-size: 1.75em;
	}

	h4 {
		font-size: 1.5em;
	}

	h5 {
		font-size: 1.25em;
	}

	h6 {
		font-size: 1.125em;
	}

	blockquote p {
		margin: 2em 3em 2em 3em;
	}

	.card.badge {
		flex-flow: row nowrap;
	}

	.related {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-gap: var(--grid-gap);
	}

	.related article {
		width: 48%;
		display: inline-block;
		margin-right: 1%;
	}

	.related.float-right article {
		width: 48%;
		margin-right: 1%;
		display: inline-block;
	}

	.related.main article {
		width: 49%;
		margin: 0 0.115em;
		display: inline-block;
	}

	.photo-quote {
		display: grid;
		grid-template-columns: repeat(7, 1fr);
		grid-column-gap: var(--grid-gap);
	}

	.photo-quote figure {
		grid-column: 1/3;
		width: 100%;
	}

	.photo-quote blockquote {
		grid-column: 3/8;
	}

	.photo-quote blockquote p {
		margin: 0 1em 2em;
	}

	.photo-quote.pull figure {
		grid-column: 1/8;
		width: 40%;
		margin-bottom: 2rem;
	}

	.photo-quote.pull blockquote {
		grid-column: 1/8;
	}

	/* Buttons/Hover
----------------------------------------------------*/
	.btn-hidden {
		display: block;
	}

	.btn-hidden-mobile {
		display: none;
	}

	.hover-more {
		background-image: none;
	}

	.hover-more:hover,
	.hover-more:focus-within {
		background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"%3E%3Cpath fill="%23ae9142" d="M166.9 264.5l-117.8 116c-4.7 4.7-12.3 4.7-17 0l-7.1-7.1c-4.7-4.7-4.7-12.3 0-17L127.3 256 25.1 155.6c-4.7-4.7-4.7-12.3 0-17l7.1-7.1c4.7-4.7 12.3-4.7 17 0l117.8 116c4.6 4.7 4.6 12.3-.1 17z"/%3E%3C/svg%3E');
		background-position-x: calc(100% - 1.5rem);
	}

	/* Images
 ----------------------------------------------------*/
	.full,
	.figgroup-2,
	.figgroup-3,
	.figgroup-3-combo,
	.figgroup-4 {
		margin: 3rem 0;
		clear: both;
	}

	.full-bleed img,
	.full-bleed video {
		height: 80vh;
	}

	.figgroup-2 {
		grid-template-columns: repeat(2, 1fr);
		grid-column-gap: var(--grid-gap);
	}

	.figgroup-3 {
		grid-template-columns: repeat(3, 1fr);
		grid-column-gap: var(--grid-gap);
	}

	.figgroup-3-combo img,
	.figgroup-4 img {
		margin: 0;
	}

	.figgroup-3-combo figure,
	.figgroup-4 figure {
		margin: 0;
	}

	.figgroup-3-combo figcaption,
	.figgroup-4 figcaption {
		margin: -0.65em 0 0;
		grid-column: 1/9;
	}

	.figgroup-3-combo {
		display: grid;
		grid-template-columns: repeat(8, 1fr);
		grid-gap: 1.5rem;
	}

	.figgroup-3-combo img:nth-child(1) {
		grid-column: 1/5;
		grid-row: 1/9;
	}

	.figgroup-3-combo img:nth-child(2) {
		grid-column: 5/9;
		grid-row: 1/6;
	}

	.figgroup-3-combo img:nth-child(3) {
		grid-column: 5/9;
		grid-row: 6/9;
	}

	.figgroup-4 {
		display: grid;
		grid-template-columns: repeat(8, 1fr);
		grid-gap: var(--grid-gap);
	}

	.figgroup-4 img:nth-child(1) {
		grid-column: 1/3;
		grid-row: 1/2;
	}

	.figgroup-4 img:nth-child(2) {
		grid-column: 3/5;
		grid-row: 1/2;
	}

	.figgroup-4 img:nth-child(3) {
		grid-column: 1/5;
		grid-row: 2/9;
	}

	.figgroup-4 img:nth-child(4) {
		grid-column: 5/9;
		grid-row: 1/9;
	}

	.aside-vertical {
		display: flex;
		flex-flow: column;
		clear: both;
		position: relative;
	}

	.aside-horizontal {
		display: flex;
		flex-flow: row nowrap;
		clear: both;
		position: relative;
	}

	.aside-horizontal img {
		width: 35%;
		min-width: unset;
		max-width: unset;
		display: flex;
		align-self: flex-start;
		margin-bottom: 0;
	}

	.aside-vertical img {
		margin-bottom: 1.5rem;
	}

	.aside-horizontal .aside-content {
		width: 65%;
		padding: 0 0 0 1.5rem;
		display: flex;
		flex-flow: column;
	}

	.aside-horizontal .aside-content p {
		font-size: 1.05rem;
	}

	.section--arts-gateway { position: relative; }
	.section--arts-gateway::before { content: ""; z-index: -1; position: absolute; aspect-ratio: 16/9; right: calc(var(--grid-gap) * -1); top: 0; width: 100vw; transform: translateY(-25%); background: url(images/map_section_2-1200.webp) center center / cover no-repeat; }


	/* Footer
 ----------------------------------------------------*/
	.social li {
		display: inline-block;
		margin: 0 0.25rem;
	}

	.footer-links-content li {
		margin-right: 0.5rem;
		display: inline-block;
	}

	.footer-links-policy li {
		margin-left: 0.5rem;
		display: inline-block;
	}
}

/** 1000px **
----------------------------------------------------*/
@media only screen and (min-width:62.5em) {
	h2 {
		font-size: 2.3em;
	}

	h3 {
		font-size: 1.75em;
	}

	h4 {
		font-size: 1.5em;
	}

	h5 {
		font-size: 1.25em;
	}

	h6 {
		font-size: 1.125em;
	}

	/* Header
 ----------------------------------------------------*/
	.category {
		font-size: 1.2rem;
		margin: 0 0 0.5rem;
	}

	.site-title {
		font-size: 3rem;
	}

	.header-overlay {
		width: 68vw;
		left: 15%;
		bottom: 8rem;
	}

	/* Header - Centered */
	.header-centered .hdr-campus:after {
		height: 32rem;
	}

	.header-centered .header-image {
		margin: 6rem auto 2.5rem;
	}

	.header-centered .header-overlay {
		width: 68vw;
		left: 15%;
		bottom: 8rem;
	}

	/* Header - 50/50 */
	.header-50-50 {
		grid-template-columns: repeat(12, 1fr);
		grid-gap: 0;
	}

	.header-50-50 .header-image {
		height: 100vh;
		grid-column: 7/13;
		grid-row: 1/2;
	}

	.header-50-50 .titlebar {
		margin-top: 13rem;
		grid-column: 2/6;
		grid-row: 1/2;
	}

	.header-grid { display: grid; grid-template-rows: repeat(3, auto); grid-template-columns: repeat(6, auto); column-gap: var(--grid-gap); row-gap: var(--grid-gap); object-fit: cover; }
	.header-grid .titlebar { grid-column: 2/5; grid-row: 2; }
	.header-grid figure img { width: 100%; height: 100%; object-fit: cover; }
	.header-grid figure:nth-child(5n + 1) { grid-row: 1/3; grid-column: 1/2; display: flex; }
	.header-grid figure:nth-child(5n + 2) { grid-row: 1/2; grid-column: 2/7; min-height: unset; }
	.header-grid figure:nth-child(5n + 3) { grid-row: 2/4; grid-column: 5/7; display: flex; }
	.header-grid figure:nth-child(5n + 4) { grid-row: 3/4; grid-column: 1/2; display: flex; }
	.header-grid figure:nth-child(5n + 5) { grid-row: 3/4; grid-column: 2/5; }


	/* Images
----------------------------------------------------*/
	.full,
	.figgroup-2,
	.figgroup-3,
	.figgroup-3-combo,
	.figgroup-4 {
		margin: 4rem var(--offset);
	}

	.full.right {
		--offset: calc(((100vw - (23em * 2 + var(--grid-gap))) / 2) * -1);
		/* Negative (pull) number */
		--inset: calc((100vw - (23em * 2 + var(--grid-gap))) / 2);
		/* Positive (push) number */
		margin-right: var(--offset);
		margin-left: 0;
		width: calc(100vw - var(--inset));
	}

	.full.left {
		--offset: calc(((100vw - (23.4rem * 2 + var(--grid-gap))) / 2) * -1);
		/* Negative (pull) number */
		--inset: calc((100vw - (23.4rem * 2 + var(--grid-gap))) / 2);
		/* Positive (push) number */
		margin-left: var(--offset);
		margin-right: 0;
		width: calc(100vw - var(--inset));
	}

	.full.left figcaption {
		text-align: right;
		padding-left: --grid-gap;
	}

	.full.right figcaption {
		text-align: left;
		padding-right: --grid-gap;
	}

	.image-right,
	.video-right {
		margin-right: var(--offset);
	}

	.image-left,
	.video-left {
		margin-left: var(--offset);
	}

	.pull.slim {
		width: 25vw;
	}

	/* Content
 ----------------------------------------------------*/
	blockquote {
		margin: 0;
	}

	blockquote.pull:not(.quote) p {
		margin-top: 0;
	}

	.pull {
		width: 40vw;
		margin-right: var(--offset);
		float: right;
		margin-left: 2rem;
		margin-top: 2rem;
		margin-bottom: 2rem;
	}

	.related {
		margin: 6rem var(--offset) 4rem;
	}

	.photo-quote blockquote p {
		margin: 1em 1em 2em;
	}

	.photo-quote.pull figure {
		grid-column: 2/8;
		width: 55%;
	}

	.photo-quote.pull blockquote {
		grid-column: 2/8;
	}

	.photo-quote.pull blockquote p {
		margin: 0 1em 1em;
	}

	#mc_embed_signup .mc-field-group {
		width: 100% !important;
		grid-column: 1/6;
	}

	.optionalParent {
		width: 100% !important;
		grid-column: 6/8;
	}

	/* Cards	-----------------------------------*/

	.card.badge.pull {
		margin-left: 2rem;
		margin-top: 2rem;
		margin-bottom: 2rem;
	}

	/* Footer
 ----------------------------------------------------*/
	.footer-global {
		padding: 3rem 0 0;
	}

	.footer-global li {
		padding: 0;
	}

	.footer-global .col {
		display: flex;
		justify-content: space-between;
		max-width: 90vw;
		margin: 0 auto 1rem;
	}

	.footer-global .social {
		justify-self: center;
		max-width: 500px;
	}

	.footer-global .social svg {
		margin-right: 0.25rem;
		vertical-align: text-bottom;
		margin-bottom: 2px;
	}

	.footer-global .social ul {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		grid-gap: 0.5rem;
		justify-items: start;
	}

	.footer-global .ndmark {
		margin: 0;
	}

	.footer-global .social {
		margin: 0;
	}

	.footer-global .vcard {
		text-align: left;
	}

	.social li {
		display: inline-block;
		margin: 0 0.25rem;
		font-size: 1rem;
	}

	.social a {
		color: var(--gray);
		padding: 0.5rem 1rem;
		margin-top: -0.5rem;
		display: block;
		border-radius: 0.6rem;
		border: 3px solid transparent;
		transition: all 125ms ease-in-out;
	}

	.social a:hover {
		background-color: var(--sky-blue);
		color: var(--brand-blue);
	}

	.social a:focus {
		border-color: var(--link-focus);
		outline: none;
	}

	.social a:active {
		color: var(--brand-blue);
		background-color: var(--sky-blue-dark);
	}

	.social a:hover svg {
		fill: var(--brand-blue);
	}

	.footer-global-links {
		font-size: .875rem;
	}

	.footer-global-links nav {
		display: flex;
	}

	.footer-global-links ul {
		width: 50%;
		margin: 0;
	}

	.footer-links-content {
		text-align: left;
	}

	.footer-links-content li {
		margin: 0;
		display: inline-block;
	}

	.footer-links-policy {
		justify-content: flex-end;
		text-align: right;
	}

	.footer-links-policy li {
		margin-left: 0.5rem;
		display: inline-block;
	}

	.vcard p {
		font-size: 0.875rem;
		line-height: 1.6rem;
	}
}


/** 1200px **
----------------------------------------------------*/
@media only screen and (min-width:75em) {

	/* Header
----------------------------------------------------*/
	.header-image {
		height: 70vh;
	}

	.site-title {
		font-size: 3.75em;
	}

	.subtitle {
		font-size: 1.9rem;
	}

	/* Header - Centered */
	.header-centered .hdr-campus:after {
		height: 36rem;
		background-image: url('images/hdr-campus-1600.jpg');
	}

	/* Header - 50/50 */
	.header-50-50 .header-image {
		grid-column: 7/13;
		grid-row: 1/2;
	}

	.header-50-50 .titlebar {
		margin-top: 15rem;
		grid-column: 2/6;
		grid-row: 1/2;
	}

	.section--arts-gateway::before { background: url(images/map_section_2-1600.webp) center center / cover no-repeat; }


	/* Images
----------------------------------------------------*/
	.full-bleed img,
	.full-bleed video {
		width: 100vw;
	}

	/* Content
----------------------------------------------------*/
.card-body.overlaid .card-title + p { display: block; }

	.pull {
		width: 32vw;
	}

	.social li {
		font-size: 1.125rem;
	}
}

/** 1400px **
----------------------------------------------------*/
@media only screen and (min-width:87.5em) {
	.header-grid { display: grid; grid-template-rows: repeat(3, 1fr); grid-template-columns: repeat(6, 1fr); column-gap: var(--grid-gap); row-gap: var(--grid-gap); object-fit: cover; }
	.header-grid .titlebar { grid-column: 2/5; grid-row: 2; }
	.header-grid figure img { width: 100%; height: 100%; object-fit: cover; }
	.header-grid figure:nth-child(5n + 1) { grid-row: 1/3; grid-column: 1/2; display: flex; }
	.header-grid figure:nth-child(5n + 2) { grid-row: 1/2; grid-column: 2/7; }
	.header-grid figure:nth-child(5n + 3) { grid-row: 2/4; grid-column: 5/7; display: flex; }
	.header-grid figure:nth-child(5n + 4) { grid-row: 3/4; grid-column: 1/2; display: flex; }
	.header-grid figure:nth-child(5n + 5) { grid-row: 3/4; grid-column: 2/5; }

	.section--classic-and-contemporary {
		justify-content: center;
	}

	.section--classic-and-contemporary .card {
		max-width: 90rem;
	}

	.card.horizontal {
		display: flex;
		flex-flow: row nowrap;
	}

	.card.horizontal .card-image {
		margin-bottom: 0;
	}

	.pull.slim {
		width: 20vw;
	}

	.related .category {
		font-size: 0.9rem;
	}

	.related .headline h3 {
		font-size: 1.35rem;
	}

	.footer-global .col {
		max-width: 78vw;
	}
}

/** 1600px **
----------------------------------------------------*/
@media only screen and (min-width:100em) {
	.header-image { height: 75vh; }
	.section--arts-gateway { min-height: fit-content; height: 30vw; align-content: center; }
	.section--arts-gateway::before { background: url(images/map_section_2-2400.webp) center center / cover no-repeat; }
}

/** 1800px **
----------------------------------------------------*/
@media only screen and (min-width:112.5em) {
	.header-grid { display: grid; grid-template-rows: repeat(3, auto); grid-template-columns: repeat(6, auto); column-gap: var(--grid-gap); row-gap: var(--grid-gap); object-fit: cover; }
	.header-grid .titlebar { grid-column: 2/4; grid-row: 2; }
	.header-grid figure img { width: 100%; height: 100%; object-fit: cover; }
	.header-grid figure:nth-child(5n + 1) { grid-row: 1/3; grid-column: 1/2; display: flex; }
	.header-grid figure:nth-child(5n + 2) { grid-row: 1/2; grid-column: 2/7; }
	.header-grid figure:nth-child(5n + 3) { grid-row: 2/4; grid-column: 4/7; display: flex; }
	.header-grid figure:nth-child(5n + 4) { grid-row: 3/4; grid-column: 1/2; display: flex; }
	.header-grid figure:nth-child(5n + 5) { grid-row: 3/4; grid-column: 2/4; }

	.pull {
		width: 25vw;
	}
}

/* Story Slider */
@media screen {
	.slider {
		position: relative;
		margin: 2rem 0 3rem;
	}

	.slides {
		display: flex;
		grid-gap: 2.25rem;
		align-items: center;
		scroll-behavior: smooth;
		overflow-x: scroll;
		overflow-y: hidden;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}

	.slider .cover {
		display: flex;
		flex-direction: column;
		width: 100vw;
		max-width: 650px;
		padding: 2rem 2.5rem;
		color: #fff;
		background: var(--brand-blue) url('images/slider-bg.jpg') center top / cover no-repeat;
	}

	.slider .cover .body p {
		flex: 1;
		font-size: 1.15rem;
		line-height: 1.65;
		color: #eee;
		font-family: var(--font-secondary);
	}

	.slider .cover .body a,
	.slider .cover .body a:link,
	.slider .cover .body a:hover,
	.slider .cover .body a:visited {
		color: #ccc;
	}

	.slider .cover .title {
		margin: 0 0 1.5rem;
		font-size: 2rem;
		line-height: 1.1;
		color: #fff;
		font-family: var(--font-heading);
	}

	.slider .cover .subtitle {
		font-size: 0.9rem;
		letter-spacing: 1px;
		margin-bottom: 0.5rem;
		text-transform: uppercase;
		color: var(--gray-light);
	}

	.slider .cover .drag-cta {
		display: flex;
		gap: 1rem;
		align-items: center;
		color: #fff;
		font-size: 1.1rem;
		line-height: 1.6;
		font-family: var(--font-secondary);
		background: none;
		border: none;
		text-align: right;
	}

	.slider .cover .drag-cta .icon {
		color: var(--brand-gold);
	}

	.slider .cover .drag-cta .cta {
		width: 100%;
	}

	.slider .cover .drag-cta:hover {
		cursor: pointer;
	}

	.slider .slide {
		flex: 1 0 auto;
		scroll-snap-align: start;
	}

	.slider .slide img {
		max-height: 100%;
	}

	.slider .slide .entry-wrapper p {
		padding: 0 1rem;
		font-size: 1rem;
		font-family: var(--font-secondary);
	}

	.slider .slide.image {
		max-width: 880px;
		width: 100vw;
	}

	.slider .slide.image .entry-wrapper {
		height: 100%;
		width: 100%;
	}

	.slider .slide.image .entry-wrapper .image-wrapper {
		height: 100%;
	}

	.slider .slide.text-above-image,
	.slider .slide.text-below-image {
		max-width: 455px;
		overflow: hidden;
		width: 100vw;
	}

	.slider .slide.text-above-image .entry-wrapper,
	.slider .slide.text-below-image .entry-wrapper {
		display: flex;
		height: 100%;
	}

	.slider .slide.text-above-image .entry-wrapper img,
	.slider .slide.text-below-image .entry-wrapper img {
		width: 533px;
	}

	.slider .slide.text-above-image .entry-wrapper {
		flex-direction: column;
	}

	.slider .slide.text-below-image .entry-wrapper {
		flex-direction: column-reverse;
	}

	.slider .slide.text-below-image .entry-wrapper .image-wrapper,
	.slider .slide.text-above-image .entry-wrapper p {
		margin-bottom: 1.5rem;
	}

	.slider .slide.text-below-image .entry-wrapper p {
		flex: 1;
	}

	.slider .btn {
		position: absolute;
		top: 50%;
		z-index: 1;
		transform: translateY(-50%);
		height: 45px;
		width: 45px;
		border-radius: 100%;
		transition: opacity 0.4s;
		background-color: rgba(12, 35, 64, 0.75);
		background-position: 50% 50%;
		background-repeat: no-repeat;
	}

	.slider .btn:hover {
		cursor: pointer;
	}

	.slider .btn.slide-prev,
	.slider .btn.slide-next {
		display: none;
	}

	.js .slider .btn.slide-prev,
	.js .slider .btn.slide-next {
		display: block;
	}

	.slider .btn.slide-next {
		right: 10px;
		background-image: url('data:image/svg+xml;charset=utf-8,<svg width="18" height="18" viewBox="0 0 34 34" xmlns="http://www.w3.org/2000/svg"><title>Shape</title><path d="M25.557 14.7L13.818 2.961 16.8 0l16.8 16.8-16.8 16.8-2.961-2.961L25.557 18.9H0v-4.2z" fill="%23FFF" fill-rule="evenodd"/></svg>');
	}

	.slider .btn.slide-prev {
		left: 10px;
		background-image: url('data:image/svg+xml;charset=utf-8,<svg width="18" height="18" viewBox="0 0 34 34" xmlns="http://www.w3.org/2000/svg"><title>Shape</title><path d="M33.6 14.7H8.043L19.782 2.961 16.8 0 0 16.8l16.8 16.8 2.961-2.961L8.043 18.9H33.6z" fill="%23FFF" fill-rule="evenodd"/></svg>');
	}
}

/** 768px **
----------------------------------------------------*/
@media only screen and (min-width:48em) {
	.slider {
		margin: 5rem 0 6rem;
	}

	.slider .cover {
		padding: 6.5rem 6rem;
	}

	.slider .cover .title {
		font-size: 2.65rem;
	}
}

/* Icons
<span class="icon" data-icon="nd-monogram"></span>
https://dev.conductor.nd.edu/icons/
----------------------------------------------------*/
.icon {
	display: inline-block;
	width: 1em;
	height: 1em;
	fill: currentColor;
}

/* Fonts
https://dev.conductor.nd.edu/fonts/
----------------------------------------------------*/
@font-face {
	font-family: GPC;
	font-weight: 700;
	font-style: normal;
	font-display: swap;
	src: url("https://static.nd.edu/fonts/gp-min/gpc-bold.woff2") format("woff2"),
		url("https://static.nd.edu/fonts/gp-min/gpc-bold.woff") format("woff");
}

@font-face {
	font-family: Sumana;
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: url("https://static.nd.edu/fonts/google/sumana-400.woff2") format("woff2"),
		url("https://static.nd.edu/fonts/google/sumana-400.woff") format("woff");
}

@font-face {
	font-family: Sumana;
	font-weight: 700;
	font-style: normal;
	font-display: swap;
	src: url("https://static.nd.edu/fonts/google/sumana-700.woff2") format("woff2"),
		url("https://static.nd.edu/fonts/google/sumana-700.woff") format("woff");
}

@font-face {
	font-family: "Libre Franklin";
	font-weight: 300;
	font-style: normal;
	font-display: swap;
	src: url("https://static.nd.edu/fonts/google/libre-franklin-300.woff2") format("woff2"),
		url("https://static.nd.edu/fonts/google/libre-franklin-300.woff") format("woff");
}

@font-face {
	font-family: "Libre Franklin";
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: url("https://static.nd.edu/fonts/google/libre-franklin-400.woff2") format("woff2"),
		url("https://static.nd.edu/fonts/google/libre-franklin-400.woff") format("woff");
}

@font-face {
	font-family: "Libre Franklin";
	font-weight: 700;
	font-style: normal;
	font-display: swap;
	src: url("https://static.nd.edu/fonts/google/libre-franklin-700.woff2") format("woff2"),
		url("https://static.nd.edu/fonts/google/libre-franklin-700.woff") format("woff");
}

/* Image Compare */
.icv {
	position: relative;
	overflow: hidden;
	cursor: row-resize
}

.icv__icv--vertical {
	cursor: row-resize
}

.icv__icv--horizontal {
	cursor: col-resize
}

.icv__img {
	pointer-events: none;
	-o-user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
	max-width: none;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	top: 0;
	display: block
}

.icv__is--fluid .icv__img {
	display: none
}

.icv__img-a {
	height: auto;
	position: static;
	z-index: 1;
	left: 0px
}

.icv__img-b {
	height: 100%;
	position: absolute;
	z-index: 2;
	left: auto;
	right: 0px;
	width: auto
}

.icv__icv--vertical .icv__img-b {
	width: 100%;
	height: auto
}

.icv__imposter {
	z-index: 4;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%
}

.icv__wrapper {
	position: absolute;
	width: 100%;
	height: 100%;
	right: 0px;
	top: 0px;
	overflow: hidden;
	background-size: cover;
	background-position: center center;
	z-index: 3
}

.icv__is--fluid .icv__wrapper,
.icv__icv--vertical .icv__wrapper {
	width: 100% !important
}

.icv__is--fluid .icv__wrapper,
.icv__icv--horizontal .icv__wrapper {
	height: 100% !important
}

.icv__fluidwrapper {
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}

.icv__control {
	position: absolute;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	height: 100%;
	top: 0px;
	z-index: 5
}

.icv__icv--vertical .icv__control {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	left: 0;
	width: 100%
}

.icv__control-line {
	height: 50%;
	width: 2px;
	z-index: 6
}

.icv__icv--vertical .icv__control-line {
	width: 50%
}

.icv__theme-wrapper {
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: absolute;
	-webkit-transition: all 0.1s ease-out 0s;
	transition: all 0.1s ease-out 0s;
	z-index: 5
}

.icv__icv--vertical .icv__theme-wrapper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column
}

.icv__arrow-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-transition: all 0.1s ease-out 0s;
	transition: all 0.1s ease-out 0s
}

.icv__arrow-a {
	-webkit-transform: scale(1.5) rotateZ(180deg);
	transform: scale(1.5) rotateZ(180deg);
	height: 20px;
	width: 20px;
	-webkit-filter: drop-shadow(0px 3px 5px rgba(0, 0, 0, 0.33));
	filter: drop-shadow(0px -3px 5px rgba(0, 0, 0, 0.33))
}

.icv__arrow-b {
	-webkit-transform: scale(1.5) rotateZ(0deg);
	transform: scale(1.5) rotateZ(0deg);
	height: 20px;
	width: 20px;
	-webkit-filter: drop-shadow(0px 3px 5px rgba(0, 0, 0, 0.33));
	filter: drop-shadow(0px 3px 5px rgba(0, 0, 0, 0.33))
}

.icv__circle {
	width: 50px;
	height: 50px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	border-radius: 999px
}

.icv__label {
	position: absolute;
	bottom: 1rem;
	z-index: 12;
	background: rgba(0, 0, 0, 0.33);
	color: white;
	border-radius: 3px;
	padding: 0.5rem 0.75rem;
	font-size: 0.85rem;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none
}

.icv__label.vertical {
	bottom: auto;
	left: 1rem
}

.icv__label.on-hover {
	-webkit-transform: scale(0);
	transform: scale(0);
	-webkit-transition: 0.25s cubic-bezier(0.68, 0.26, 0.58, 1.22);
	transition: 0.25s cubic-bezier(0.68, 0.26, 0.58, 1.22)
}

.icv:hover .icv__label.on-hover {
	-webkit-transform: scale(1);
	transform: scale(1)
}

.icv__label-before {
	left: 1rem
}

.icv__label-after {
	right: 1rem
}

.icv__label-before.vertical {
	top: 1rem
}

.icv__label-after.vertical {
	bottom: 1rem;
	right: auto
}

.icv__body {
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	padding-right: 0 !important;
}

/*************************************************************************************
 * Grid
 ************************************************************************************/

.row {
	flex-flow: row;
	width: 100%;
}

.row-container {
	flex-flow: row;
	margin: 0 auto;
	max-width: 90vw;
	padding-left: 0;
	padding-right: 0;
}

.grid {
	grid-gap: 1.5rem;
	grid-gap: var(--grid-gap);
	clear: both;
	display: grid;
	list-style: none;
	padding: 0;
}

.grid>* {
	display: block;
	overflow: auto;
	width: auto;
}

.grid.no-gap {
	grid-gap: 0;
}

.grid-xs-2 {
	grid-template-columns: repeat(2, minmax(0, 50%));
}

.grid-xs-3 {
	grid-template-columns: repeat(3, minmax(0, 33.3%));
}

.grid-xs-4 {
	grid-template-columns: repeat(4, minmax(0, 25%));
}

.grid-xs-5 {
	grid-template-columns: repeat(5, minmax(0, 20%));
}

.grid-xs-6 {
	grid-template-columns: repeat(6, minmax(0, 16.6%));
}

[class*=grid-xs-]>[class*=span-xs] {
	width: auto;
}

.order-xs--1 {
	order: -1;
}

.order-xs-0 {
	order: 0;
}

.order-xs-1 {
	order: 1;
}

.order-xs-2 {
	order: 2;
}

.order-xs-3 {
	order: 3;
}

.order-xs-4 {
	order: 4;
}

.order-xs-5 {
	order: 5;
}

.span-xs-1 {
	grid-column: span 1;
}

.span-xs-2 {
	grid-column: span 2;
}

.span-xs-3 {
	grid-column: span 3;
}

.span-xs-4 {
	grid-column: span 4;
}

.span-xs-5 {
	grid-column: span 5;
}

.span-xs-6 {
	grid-column: span 6;
}

.full,
.span-full {
	grid-column: 1 / -1;
}

/* 480px */

@media only screen and (min-width:30em),
print {
	.grid-sm-1 {
		grid-template-columns: 100%;
	}

	.grid-sm-2 {
		grid-template-columns: repeat(2, minmax(0, 50%));
	}

	.grid-sm-3 {
		grid-template-columns: repeat(3, minmax(0, 33.3%));
	}

	.grid-sm-4 {
		grid-template-columns: repeat(4, minmax(0, 25%));
	}

	.grid-sm-5 {
		grid-template-columns: repeat(5, minmax(0, 20%));
	}

	.grid-sm-6 {
		grid-template-columns: repeat(6, minmax(0, 16.6%));
	}

	[class*=grid-sm-]>[class*=span-sm] {
		width: auto;
	}

	.span-sm-1 {
		grid-column: span 1;
	}

	.span-sm-2 {
		grid-column: span 2;
	}

	.span-sm-3 {
		grid-column: span 3;
	}

	.span-sm-4 {
		grid-column: span 4;
	}

	.span-sm-5 {
		grid-column: span 5;
	}

	.span-sm-6 {
		grid-column: span 6;
	}

	.order-sm--1 {
		order: -1;
	}

	.order-sm-0 {
		order: 0;
	}

	.order-sm-1 {
		order: 1;
	}

	.order-sm-2 {
		order: 2;
	}

	.order-sm-3 {
		order: 3;
	}

	.order-sm-4 {
		order: 4;
	}

	.order-sm-5 {
		order: 5;
	}
}

/* 768px */

@media only screen and (min-width:48em),
print {
	.grid>* {
		overflow: inherit;
	}

	.grid-md-1 {
		grid-template-columns: 100%;
	}

	.grid-md-2 {
		grid-template-columns: repeat(2, minmax(0, 50%));
	}

	.grid-md-3 {
		grid-template-columns: repeat(3, minmax(0, 33.3%));
	}

	.grid-md-4 {
		grid-template-columns: repeat(4, minmax(0, 25%));
	}

	.grid-md-5 {
		grid-template-columns: repeat(5, minmax(0, 20%));
	}

	.grid-md-6 {
		grid-template-columns: repeat(6, minmax(0, 16.6%));
	}

	[class*=grid-md-]>[class*=span-md] {
		width: auto;
	}

	.span-md-1 {
		grid-column: span 1;
	}

	.span-md-2 {
		grid-column: span 2;
	}

	.span-md-3 {
		grid-column: span 3;
	}

	.span-md-4 {
		grid-column: span 4;
	}

	.span-md-5 {
		grid-column: span 5;
	}

	.span-md-6 {
		grid-column: span 6;
	}

	.order-md--1 {
		order: -1;
	}

	.order-md-0 {
		order: 0;
	}

	.order-md-1 {
		order: 1;
	}

	.order-md-2 {
		order: 2;
	}

	.order-md-3 {
		order: 3;
	}

	.order-md-4 {
		order: 4;
	}

	.order-md-5 {
		order: 5;
	}
}

/* 960px */

@media only screen and (min-width:60em) {
	.grid-ml-1 {
		grid-template-columns: 100%;
	}

	.grid-ml-2 {
		grid-template-columns: repeat(2, minmax(0, 50%));
	}

	.grid-ml-3 {
		grid-template-columns: repeat(3, minmax(0, 33.3%));
	}

	.grid-ml-4 {
		grid-template-columns: repeat(4, minmax(0, 25%));
	}

	.grid-ml-5 {
		grid-template-columns: repeat(5, minmax(0, 20%));
	}

	.grid-ml-6 {
		grid-template-columns: repeat(6, minmax(0, 16.6%));
	}

	[class*=grid-ml-]>[class*=span-ml] {
		width: auto;
	}

	.span-ml-1 {
		grid-column: span 1;
	}

	.span-ml-2 {
		grid-column: span 2;
	}

	.span-ml-3 {
		grid-column: span 3;
	}

	.span-ml-4 {
		grid-column: span 4;
	}

	.span-ml-5 {
		grid-column: span 5;
	}

	.span-ml-6 {
		grid-column: span 6;
	}

	.order-ml--1 {
		order: -1;
	}

	.order-ml-0 {
		order: 0;
	}

	.order-ml-1 {
		order: 1;
	}

	.order-ml-2 {
		order: 2;
	}

	.order-ml-3 {
		order: 3;
	}

	.order-ml-4 {
		order: 4;
	}

	.order-ml-5 {
		order: 5;
	}
}

/* 1200px */

@media only screen and (min-width:75em) {
	.grid-lg-1 {
		grid-template-columns: 100%;
	}

	.grid-lg-2 {
		grid-template-columns: repeat(2, minmax(0, 50%));
	}

	.grid-lg-3 {
		grid-template-columns: repeat(3, minmax(0, 33.3%));
	}

	.grid-lg-4 {
		grid-template-columns: repeat(4, minmax(0, 25%));
	}

	.grid-lg-5 {
		grid-template-columns: repeat(5, minmax(0, 20%));
	}

	.grid-lg-6 {
		grid-template-columns: repeat(6, minmax(0, 16.6%));
	}

	[class*=grid-lg-]>[class*=span-lg] {
		width: auto;
	}

	.span-lg-1 {
		grid-column: span 1;
	}

	.span-lg-2 {
		grid-column: span 2;
	}

	.span-lg-3 {
		grid-column: span 3;
	}

	.span-lg-4 {
		grid-column: span 4;
	}

	.span-lg-5 {
		grid-column: span 5;
	}

	.span-lg-6 {
		grid-column: span 6;
	}

	.order-lg--1 {
		order: -1;
	}

	.order-lg-0 {
		order: 0;
	}

	.order-lg-1 {
		order: 1;
	}

	.order-lg-2 {
		order: 2;
	}

	.order-lg-3 {
		order: 3;
	}

	.order-lg-4 {
		order: 4;
	}

	.order-lg-5 {
		order: 5;
	}
}

/* 1400px */

@media only screen and (min-width:87.5em) {
	.grid-xl-1 {
		grid-template-columns: 100%;
	}

	.grid-xl-2 {
		grid-template-columns: repeat(2, minmax(0, 50%));
	}

	.grid-xl-3 {
		grid-template-columns: repeat(3, minmax(0, 33.3%));
	}

	.grid-xl-4 {
		grid-template-columns: repeat(4, minmax(0, 25%));
	}

	.grid-xl-5 {
		grid-template-columns: repeat(5, minmax(0, 20%));
	}

	.grid-xl-6 {
		grid-template-columns: repeat(6, minmax(0, 16.6%));
	}

	[class*=grid-xl-]>[class*=span-xl] {
		width: auto;
	}

	.span-xl-1 {
		grid-column: span 1;
	}

	.span-xl-2 {
		grid-column: span 2;
	}

	.span-xl-3 {
		grid-column: span 3;
	}

	.span-xl-4 {
		grid-column: span 4;
	}

	.span-xl-5 {
		grid-column: span 5;
	}

	.span-xl-6 {
		grid-column: span 6;
	}

	.order-xl--1 {
		order: -1;
	}

	.order-xl-0 {
		order: 0;
	}

	.order-xl-1 {
		order: 1;
	}

	.order-xl-2 {
		order: 2;
	}

	.order-xl-3 {
		order: 3;
	}

	.order-xl-4 {
		order: 4;
	}

	.order-xl-5 {
		order: 5;
	}
}

/* 1600px */

@media only screen and (min-width:100em) {
	.grid-xxl-1 {
		grid-template-columns: 100%;
	}

	.grid-xxl-2 {
		grid-template-columns: repeat(2, minmax(0, 50%));
	}

	.grid-xxl-3 {
		grid-template-columns: repeat(3, minmax(0, 33.3%));
	}

	.grid-xxl-4 {
		grid-template-columns: repeat(4, minmax(0, 25%));
	}

	.grid-xxl-5 {
		grid-template-columns: repeat(5, minmax(0, 20%));
	}

	.grid-xxl-6 {
		grid-template-columns: repeat(6, minmax(0, 16.6%));
	}

	[class*=grid-xxl-]>[class*=span-xxl] {
		width: auto;
	}

	.span-xxl-1 {
		grid-column: span 1;
	}

	.span-xxl-2 {
		grid-column: span 2;
	}

	.span-xxl-3 {
		grid-column: span 3;
	}

	.span-xxl-4 {
		grid-column: span 4;
	}

	.span-xxl-5 {
		grid-column: span 5;
	}

	.span-xxl-6 {
		grid-column: span 6;
	}

	.order-xxl--1 {
		order: -1;
	}

	.order-xxl-0 {
		order: 0;
	}

	.order-xxl-1 {
		order: 1;
	}

	.order-xxl-2 {
		order: 2;
	}

	.order-xxl-3 {
		order: 3;
	}

	.order-xxl-4 {
		order: 4;
	}

	.order-xxl-5 {
		order: 5;
	}
}

/* 1920px
----------------------------------------------------*/

@media only screen and (min-width:120em) {
	.row-container {
		max-width: 108rem;
	}
}

/* Print
----------------------------------------------------*/

@media print {
	.grid-print-1 {
		grid-template-columns: 100%;
	}

	.grid-print-2 {
		grid-template-columns: repeat(2, minmax(0, 50%));
	}

	.grid-print-3 {
		grid-template-columns: repeat(3, minmax(0, 33.3%));
	}

	.grid-print-4 {
		grid-template-columns: repeat(4, minmax(0, 25%));
	}

	.grid-print-5 {
		grid-template-columns: repeat(5, minmax(0, 20%));
	}

	.grid-print-6 {
		grid-template-columns: repeat(6, minmax(0, 16.6%));
	}
}

/* IE10/11
----------------------------------------------------*/

@media screen and (-ms-high-contrast:active),
screen and (-ms-high-contrast:none) {
	.site-header {
		overflow: auto;
		padding: 1rem 5vw;
	}

	.mark-header {
		float: right;
		max-width: 200px;
	}

	.nav-header {
		clear: right;
		margin-top: 0;
	}

	.site-content {
		padding: 0 5vw;
	}

	.page-image {
		margin: 0;
		max-width: 100%;
	}

	.page-main {
		float: right;
		width: 75%;
	}

	.full-width .page-main {
		width: 100%;
	}

	.page-sidebar {
		float: left;
		margin-right: 2%;
		width: 23%;
	}

	.site-footer {
		clear: both;
		display: flex;
		padding: 1rem 5vw;
	}

	.home-primary {
		max-width: 100%;
	}

	.horizontal:not([class*=stacked-]) .card-image {
		margin-right: 1rem;
		min-width: 25%;
		width: 25%;
	}
}


/*************************************************************************************
 * 4. Themes
 ************************************************************************************/
@media screen {

	/* Brand Bar
	----------------------------------------------------*/
	.dept-nd a {
		width: 260px;
		background-image: url('https://www.nd.edu/assets/css/images/marks/blue/mark-stories.svg');
	}
}


/*************************************************************************************
 * 5. Print Styles
 ************************************************************************************/
@media print {

	@page {
		margin: 1.5cm;
	}

	body {
		font-family: Georgia, "Times New Roman", Times, serif;
		color: #000;
	}

	figure,
	img,
	tr,
	.full-bleed {
		page-break-inside: avoid;
		object-fit: contain;
	}

	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}

	h2,
	h3 {
		page-break-after: avoid;
	}

	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content: "";
	}

	.ndmark {
		width: 150px;
	}

	.print-only {
		display: block;
	}

	/* Header
	 ----------------------------------------------------*/
	.header-50-50 {
		display: grid;
		grid-template-columns: repeat(12, 1fr);
		grid-gap: 0;
	}

	.titlebar {
		margin-top: 3rem;
		grid-column: 1/6;
		grid-row: 1/2;
	}

	.header-50-50 .header-image {
		width: 50vw;
		max-height: 50vh;
		grid-column: 7/13;
		grid-row: 1/2;
	}

	.brandbar {
		grid-column: 1/7;
		display: grid;
		grid-row: 1/1;
	}

	.dept-nd a {
		height: 4rem;
		display: block;
		width: 100%;
		background: url('https://www.nd.edu/assets/css/images/marks/blue/mark-stories.svg') center center / contain no-repeat;
		text-indent: -999rem;
	}

	.category {
		font-size: 1.2rem;
		margin: 0 0 0.5rem;
	}

	.site-title {
		font-size: 3rem;
	}

	.header-overlay {
		width: 68vw;
		left: 15%;
		bottom: 8rem;
	}

	.header-grid { display: grid; grid-template-rows: repeat(3, auto); grid-template-columns: repeat(6, auto); column-gap: var(--grid-gap); row-gap: var(--grid-gap); object-fit: cover; width:100%; height:100%; page-break-after: always; }
	.header-grid .titlebar { grid-column: 2/5; grid-row: 2; }
	.header-grid .titlebar .site-title { font-size: 1.8rem; }
	.header-grid .titlebar .subtitle { font-size: 1.1rem; }
	.header-grid figure img { width: 100%; height: 100%; object-fit: cover; }
	.header-grid figure:nth-child(5n + 1) { grid-row: 1/3; grid-column: 1/2; }
	.header-grid figure:nth-child(5n + 2) { grid-row: 1/2; grid-column: 2/7; }
	.header-grid figure:nth-child(5n + 3) { grid-row: 2/4; grid-column: 5/7; }
	.header-grid figure:nth-child(5n + 4) { grid-row: 3/4; grid-column: 1/2; }
	.header-grid figure:nth-child(5n + 5) { grid-row: 3/4; grid-column: 2/5; }

	h2 { font-size: 1.4rem; }

	.card-label,
	.label {
		color: var(--gray-light);
		background: transparent;
		font-family: var(--font-secondary);
		font-size: 1rem;
		margin: 0 0 0.25em;
		padding: 0;
		font-size: 0.875rem;
		font-weight: normal;
		letter-spacing: 0.08em;
		text-transform: uppercase;
		display: inline-block;
		width: auto;
		align-self: flex-start;
	}


	/* HIDDEN
	----------------------------------------------------*/
	progress,
	.skip-links,
	video,
	.video,
	.video-caption,
	.related,
	.footer-global-links,
	.social,
	#mc_embed_signup,
	.card.badge {
		display: none;
	}

	/* Images
	----------------------------------------------------*/
	.image-right {
		float: right;
		margin: 0 0 1em 2em;
		width: 45%;
	}

	.image-left {
		float: left;
		margin: 0 2em 1em 0;
		width: 45%;
	}

	.full-bleed {
		display: grid;
		grid-template-columns: 1fr minmax(0, 23em) minmax(0, 23em) 1fr;
		grid-gap: var(--grid-gap);
		grid-row-gap: 0.8em;
	}

	.full-bleed img,
	.full-bleed video {
		object-fit: cover;
		overflow: hidden;
		width: 100%;
		grid-column: 1/5;
	}

	.full-bleed figcaption {
		margin: 0 0 2rem;
		grid-column: 2/4;
	}

	.full,
	.figgroup-2,
	.figgroup-3,
	.figgroup-3-combo,
	.figgroup-4 {
		margin: 3rem 0;
	}

	.full-bleed {
		margin: 4rem 0;
	}

	.full-bleed figcaption {
		margin: 0 var(--offset);
	}

	.figgroup-2 {
		grid-template-columns: repeat(2, 1fr);
		grid-column-gap: var(--grid-gap);
	}

	.figgroup-3 {
		grid-template-columns: repeat(3, 1fr);
		grid-column-gap: var(--grid-gap);
	}

	.figgroup-3-combo img,
	.figgroup-4 img {
		margin: 0;
	}

	.figgroup-3-combo figure,
	.figgroup-4 figure {
		margin: 0;
	}

	.figgroup-3-combo figcaption,
	.figgroup-4 figcaption {
		margin: -0.65em 0 0;
		grid-column: 1/9;
	}

	.figgroup-3-combo {
		display: grid;
		grid-template-columns: repeat(8, 1fr);
		grid-gap: 1.5rem;
	}

	.figgroup-3-combo img:nth-child(1) {
		grid-column: 1/5;
		grid-row: 1/9;
	}

	.figgroup-3-combo img:nth-child(2) {
		grid-column: 5/9;
		grid-row: 1/6;
	}

	.figgroup-3-combo img:nth-child(3) {
		grid-column: 5/9;
		grid-row: 6/9;
	}

	.figgroup-4 {
		display: grid;
		grid-template-columns: repeat(8, 1fr);
		grid-gap: var(--grid-gap);
	}

	.figgroup-4 img:nth-child(1) {
		grid-column: 1/3;
		grid-row: 1/2;
	}

	.figgroup-4 img:nth-child(2) {
		grid-column: 3/5;
		grid-row: 1/2;
	}

	.figgroup-4 img:nth-child(3) {
		grid-column: 1/5;
		grid-row: 2/9;
	}

	.figgroup-4 img:nth-child(4) {
		grid-column: 5/9;
		grid-row: 1/9;
	}

	/* Structure
	----------------------------------------------------*/
	.site-header {
		overflow: hidden;
		position: relative;
		margin: 0 0 20px;
		padding: 0;
		border-bottom: 1px solid gray;
	}

	.brandbar {
		margin: 2rem 0 1rem;
		font-size: 9px;
		text-transform: uppercase;
		font-family: "Adobe Garamond", Garamond, Baskerville, "Baskerville Old Face", "Hoefler Text", "Times New Roman", serif;
		text-align: center;
		letter-spacing: 1px;
	}

	.brandbar i {
		text-transform: none;
	}

	.site-title,
	.subline {
		margin: 0;
		display: block;
		font-family: "Libre Franklin", Helvetica, Arial, Verdana, sans-serif;
		font-weight: 400;
	}

	.site-header a,
	.site-title a,
	.subline a {
		color: #000;
	}

	.lede {
		font-size: 1.2rem;
	}

	.site-title {
		margin: 4px 0 2px;
		font-size: 1.75em;
		font-family: var(--font-heading);
		font-weight: 700;
		font-size: 2.25rem;
	}

	.subtitle {
		font-family: "Libre Franklin", Helvetica, Arial, sans-serif;
		font-size: 1.3rem;
	}

	.category {
		margin-top: 1rem;
		font-family: "Libre Franklin", Helvetica, Arial, sans-serif;
		text-transform: uppercase;
		letter-spacing: 1px;
		color: var(--gray);
	}

	.byline {
		font-size: 0.9rem;
	}

	p {
		font-size: 1rem;
	}

	.sidebar-heading {
		margin: 0;
	}

	.site-footer {
		position: relative;
		clear: both;
		margin: 20px 0 0;
		padding: 20px 0 0;
		border-top: 1px solid gray;
	}

	.site-footer p {
		margin: 0;
	}

	.geo,
	.country-name {
		display: none;
	}

	.tel {
		display: block;
	}

	.site-footer .ndmark {
		position: absolute;
		top: 20px;
		right: 0;
	}

	/* Custom
	----------------------------------------------------*/
	.photo-quote figure {
		margin: 4rem auto 0;
		width: 22%;
	}

	.photo-quote blockquote {
		margin: 2rem auto 4rem;
		width: 80%;
	}

	.slider .cover .subtitle {
		font-size: 0.9rem;
		letter-spacing: 1px;
		margin-bottom: 0.5rem;
		text-transform: uppercase;
	}

	.image-wrapper {
		margin-bottom: 1rem;
	}

	blockquote p {
		font-size: 1.25rem;
	}

	.js .animate {
		opacity: 1;
	}
}