/*!
Launched:2022-03-16
Authors:Taylor Packet, Erik Runyon
Marketing Communications:Web

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;
	--story-brown-light:				 #ae9142;
	--story-brown-light-dark:		#8c7535;
	--story-brown-light-light:	 #d39f10;
	--link-focus:				 #15a6b5;

	--story-brown-dark:	 #352517;
	--story-brown:				#a67d4f;
	--story-brown-light:	#dbb283;

	--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;

	--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;

	--offset: -8vw;
	--inset: 8vw;
	--header-offset: -10vw;
}
*,
*: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(--story-brown-light);
}
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;
}

.print-only { display: none; }

/* 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;
}
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;
}

/* 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;
}

hr.sep { border: none; margin-top: 3rem; margin-bottom: 3rem; }

/* 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 form .d-flex { display:flex; grid-column:1/-1; gap:1rem; }
#mc_embed_signup form .flex-grow { flex-grow:1; }
#mc_embed_signup form .align-end { align-items:flex-end;}
#mc_embed_signup form label { display:block; font-weight:bold; }
#mc_embed_signup form input[type="email"] { background-color: #fefefe; border: 1px solid #cacaca; border-radius: 4px; box-shadow: inset 0 1px 2px hsla(0, 0%, 4%, .1); color: #0a0a0a; display: block; font-family: inherit; font-size: 1rem; font-weight: 400; line-height: 1.5; margin: 0; outline: 2px solid transparent; padding: .75rem .5rem; transition: outline-color .25s ease-in-out, box-shadow .5s; transition: box-shadow .5s, outline-color .25s ease-in-out; width: 100%; }
#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: var(--link-focus);
}
#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 0.5em 0em 0.5em;
	overflow: hidden;
	width: 90%;
	margin: 0 5%;
	clear: both;
}
#mc_embed_signup div.response {
	margin: 1em 0;
	padding: 1em 0.5em 0.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: 0.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: 0.5em;
	border: 1px solid #ccc;
	margin-right: 0.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-fast) 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;
}

.highlight {
	font-size: 1.6em;
	background: rgba(255, 255, 255, 0.2);
	color: var(--story-brown-dark);
	padding: 1.5rem;
	border-left: 4px solid var(--story-brown);
 }

/* 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);
}

.color-burn { mix-blend-mode: color-burn; }
.multiply { mix-blend-mode: multiply; }

.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;
}

.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;
}

.mexico-map img { display: block; }
#mexicomap_hype_container,
#mexicomap_hype_container::after { display: none; }

/* General Classes
----------------------------------------------------*/
.ndmark {
	display: block;
	width: 200px;
	max-width: 100%;
	text-decoration: none;
}
.hidden {
	display: none !important;
}
.skip-links {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
.skip-links:active,
.skip-links:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
}

.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: #f1d3b3 url(images/bg-old-paper-600.jpg) center top / 100vw auto
			no-repeat;
	}
	.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;
	}

	.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;
		grid-column: 1/5;
	}
	.full-bleed figcaption {
		margin: 0 0 2rem;
		grid-column: 2/4;
	}

	.bgvid {
		position: relative;
		overflow: hidden;
	}
	.bgvid img {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}

	.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 {
		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::-webkit-progress-bar {
		background-color: transparent;
	}
	progress::-webkit-progress-value {
		background-color: var(--brand-blue);
	}
	progress::-moz-progress-bar {
		background-color: var(--brand-blue);
	}

	/* Header
----------------------------------------------------*/
	.site-header {
		position: relative;
		margin: 0;
	}

	.brandbar {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 100%;
		z-index: 2;
	}

	.brandbar::before { content: ""; position: absolute; left: 0; top: 0; height: 10rem; background: linear-gradient(180deg, rgba(0,0,0,0.8) 0%, rgba(0,0,0,0) 100%); width: 100%; z-index: -1; }

	.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(132, 132, 132, 0.85);
		mix-blend-mode: color-burn;
	}
	.header-image img {
		width: 100%;
		height: 100%;
		-o-object-fit: cover;
		object-fit: cover;
	}

	/* 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: 1fr 1fr;
		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: 3/5;
	}
	.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;
		position: relative;
		z-index: 1;
	}
	.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;
	}

	/* 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;
	}
	.header-full-image .titlebar {
		grid-column: 2/4;
	}

	.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;
		text-indent: -999em;
		display: block;
		min-height: 10rem;
		width: 90vw;
		height: 18vw;
		background: url(images/title-a-perilous-journey.svg) left top / contain no-repeat;
		mix-blend-mode: color-burn;
	}
	.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;
	}

	.js .mexico-map img { display: none; }
	.js #mexicomap_hype_container { display: block; margin: auto; position: relative; }
	.js #mexicomap_hype_container::after { display: block; content: ""; background: url(images/map.svg) center top / contain no-repeat; aspect-ratio: 1000/656; position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 0; mix-blend-mode: color-burn; }

	.byline:before {
		content: "";
		margin-bottom: 1.5em;
		display: block;
		height: 4px;
		width: 80px;
		background: var(--story-brown-light);
	}
	.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-label {
		color: var(--gray);
		font-family: var(--font-default);
	}
	.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-title {
		margin: 0 0 1rem;
		font-size: 1.35rem;
		padding-top: 0;
		font-family: var(--font-heading-article);
		font-weight: 400;
	}
	.card-label {
		font-size: 1rem;
		margin: 0 0 0.5em;
		font-size: 0.875rem;
		font-weight: normal;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}
	.card-image {
		order: -1;
		margin: 0;
		width: 100%;
	}
	.card-image img {
		width: 100%;
	}

	/* 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(--story-brown-light);
		border-color: var(--story-brown);
	}
	.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;
	}

	/* 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);
	}
	.btn:focus {
		border-color: var(--link-focus);
		outline: none;
	}
	.btn:visited {
		color: var(--brand-blue);
	}
	.btn svg {
		vertical-align: middle;
		transition: transform 0.25s ease-in-out;
	}
	.btn:hover svg {
		transform: translateX(0.325em);
	}
	.btn-inline {
		color: var(--brand-blue);
	}
	.btn-inline:hover {
		color: var(--brand-blue);
		background-color: var(--story-brown-light);
		transform: scale(1.02);
	}
	.btn-inline:active {
		color: var(--brand-blue);
		background-color: var(--story-brown-light);
	}
	.btn-inline svg {
		fill: var(--story-brown-light);
	}
	.btn-hidden {
		display: none;
	}
	.btn-hidden-mobile {
		display: block;
	}

	/* Footer
----------------------------------------------------*/
	.site-footer {
		position: relative;
		text-align: center;
		margin-top: 2rem;
		font-family: "Libre Franklin", Helvetica, Arial, Verdana, sans-serif;
	}
	.site-footer p {
		clear: both;
		margin: 0;
		font-size: 1rem;
	}
	.site-footer a {
		color: var(--brand-blue);
	}
	.site-footer svg {
		fill: var(--brand-blue);
	}
	.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(--brand-blue);
		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;
		color: white;
	}
	.footer-global-links a:hover {
		text-decoration: underline;
	}
	.footer-global-links nav a:hover {
		text-decoration: none;
		background-color: var(--brand-blue-dark);
	}
	.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) {
	body {
		background: #f1d3b3 url(images/bg-old-paper-1200.jpg) center top / 100vw
			auto repeat-y;
	}

	/* 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 .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;
	}

	.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;
	}
	.full-bleed img,
	.full-bleed video {
		height: auto;
	}
	.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;
	}

	/* 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
 ----------------------------------------------------*/
 .wrapper::before {
	 background: url(images/compass-40gray.png) left top / contain no-repeat;
	 mix-blend-mode: color-burn;
	 opacity: 0.7;
	 width: 25vw;
	 content: "";
	 position: absolute;
	 top: -25vw; left: -25vw; width: 50vw; height: 50vw;
	 z-index: 1;
 }
 .wrapper::after {
	 content: "";
	 position: absolute;
	 left: 1.5rem;
	 top: 80vh;
	 background: url(images/travel-path2.svg) left top / contain no-repeat;
	 mix-blend-mode: color-burn;
	 opacity: 0.7;
	 width: 7vw;
	 height: auto;
	 aspect-ratio: 193 / 3127;
	 z-index: 1;
 }
 .brandbar::before { display: none }

	.category {
		font-size: 1.2rem;
		margin: 0 0 0.5rem;
	}
	.site-title {
		min-height: 3em;
		width: 32vw;
		height: 18vw;
	}
	.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;
		display: flex;
		flex-flow: column;
		justify-content: flex-end;
		padding-bottom: 5vw;
	}

	/* Images
----------------------------------------------------*/
	.full,
	.figgroup-2,
	.figgroup-3,
	.figgroup-3-combo,
	.figgroup-4 {
		margin: 4rem var(--offset);
	}
	.full.right {
		--offset: calc(((100vw - (23em * 2 + 1.5rem)) / 2) * -1);
		--inset: calc((100vw - (23em * 2 + 1.5rem)) / 2);
		margin-right: var(--offset);
		margin-left: 0;
		width: calc(100vw - var(--inset));
	}

	.full.left {
		--offset: calc(((100vw - (23em * 2 + 1.5rem)) / 2) * -1);
		--inset: calc((100vw - (23em * 2 + 1.5rem)) / 2);
		margin-left: var(--offset);
		margin-right: 0;
		width: calc(100vw - var(--inset));
	}

	.full.left figcaption { text-align: right; }

	.image-right,
	.video-right {
		margin-right: var(--offset);
	}

	.image-left,
	.video-left {
		margin-left: var(--offset);
	}

	.full-bleed {
		--offset: calc(((100vw - (23em * 2 + var(--grid-gap))) / 2) * -1);
		margin-right: var(--offset);
		margin-left: var(--offset);
		width: 100vw;
	}

	/* Content
 ----------------------------------------------------*/
 .site-content::after {
	 content: "";
	 background: url(images/travel-path3.svg) right center / contain no-repeat;
	 position : absolute;
	 right: 1.5rem;
	 top: 28%;
	 mix-blend-mode: color-burn;
	 opacity: 0.7;
	 width: 7vw;
	 height: auto;
	 aspect-ratio: 193 / 3127;
	 z-index: 1;
 }

 .highlight.full {
		margin-left: var(--offset);
		margin-right: var(--offset);
	}

	blockquote {
		margin: 0;
	}
	blockquote.pull p {
		margin-top: 0;
	}
	.pull {
		width: 40vw;
		margin-right: -8vw;
		float: right;
	}

	.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;
	}

	/* 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(--brand-blue);
		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(--story-brown-light);
		color: var(--brand-blue);
	}
	.social a:focus {
		border-color: var(--link-focus);
		outline: none;
	}
	.social a:active {
		color: var(--brand-blue);
		background-color: var(--story-brown);
	}
	.social a:hover svg {
		fill: var(--brand-blue);
	}
	.footer-global-links {
		font-size: 0.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) {
	body {
		background: #f1d3b3 url(images/bg-old-paper-1800.jpg) center top / 100vw
			auto repeat-y;
	}
	/* 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;
	}

	/* Images
----------------------------------------------------*/
	.full-bleed img,
	.full-bleed video {
		/* width: 100vw;
		height: 100vh; */
		object-fit: cover;
	}


	/* Content
----------------------------------------------------*/
	.pull {
		width: 32vw;
	}
	.social li {
		font-size: 1.125rem;
	}
}

/** 1400px **
----------------------------------------------------*/
@media only screen and (min-width: 87.5em) {
	.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;
	}
	.full-bleed img,
	.full-bleed video {
		object-fit: cover;
	}
}

/** 1800px **
----------------------------------------------------*/
@media only screen and (min-width: 112.5em) {
	body {
		background: #f1d3b3 url(images/bg-old-paper-2400.jpg) center top / 100vw
			auto repeat-y;
	}

	.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(--story-brown-light);
	}
	.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");
}

/*************************************************************************************
 * 4. Themes
 ************************************************************************************/
@media screen {
	/* Brand Bar
	----------------------------------------------------*/
	.dept-nd a { width: 260px; background-image: url("https://www.nd.edu/assets/css/images/marks/white/mark-stories.svg"); }
}

@media only screen and (min-width: 62.5em) { /* 1000px */
	.dept-nd a { 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;
		width: 100%;
	}
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	h2,
	h3 {
		page-break-after: avoid;
	}

	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content: "";
	}
	.ndmark {
		width: 150px;
	}


	/* 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; }
	 .site-title:after { margin-left:-1.35rem; width:70px; }
	 .site-title:after { width:80px; height:6px; }
	 .header-overlay { width:68vw; left:15%; bottom:8rem; }

	/* HIDDEN
	----------------------------------------------------*/
	progress,
	.skip-links,
	video,
	.video,
	.video-caption,
	.related,
	.footer-global-links,
	.social,
	#mc_embed_signup {
		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;
	}
	.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;
	}

	#mexicomap_hype_container,
	#mexicomap_hype_container::after { display: none; }
	.mexico-map img { display: block; }
}
