@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,400italic,700,800");
@import url("fontawesome-all.min.css");

html, body, div, span, applet, object,
iframe, h1, h2, h3, h4, h5, h6, p, blockquote,
pre, a, abbr, acronym, address, big, cite,
code, del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var, b,
u, i, center, dl, dt, dd, ol, ul, li, fieldset,
form, label, legend, table, caption, tbody,
tfoot, thead, tr, th, td, article, aside,
canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby,
section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

	blockquote:before, blockquote:after, q:before, q:after {
		content: '';
		content: none;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

body {
	-webkit-text-size-adjust: none;
}

mark {
	background-color: transparent;
	color: inherit;
}

input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input, select, textarea {
	-moz-appearance: none;
	-webkit-appearance: none;
	-ms-appearance: none;
	appearance: none;
}

/* Basic */

	html {
		box-sizing: border-box;
		scroll-behavior: smooth;
	}

	*, *:before, *:after {
		box-sizing: inherit;
	}

	@-ms-viewport {
		width: device-width;
	}

	body {
		background: #303238 url("images/bg01.png");
	}

		body.is-preload * {
			-moz-transition: none !important;
			-webkit-transition: none !important;
			-ms-transition: none !important;
			transition: none !important;
			-moz-animation: none !important;
			-webkit-animation: none !important;
			-ms-animation: none !important;
			animation: none !important;
		}

	body, input, select, textarea {
		font-family: 'Open Sans', sans-serif;
		color: #7b818c;
		font-weight: 00;
		font-size: 11pt;
		line-height: 1.85em;
	}

	a {
		color: inherit;
		text-decoration: underline;
	}

		a:hover {
			text-decoration: none;
		}

	h1, h2, h3, h4, h5, h6 {
		text-transform: uppercase;
		font-weight: 800;
		letter-spacing: 0.04em;
		color: #404248;
		margin: 0 0 1em 0;
	}

	h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
		color: inherit;
		text-decoration: none;
		outline: 0;
	}

	h2 {
		font-size: 2em;
		margin: 0 0 1.5em 0;
		line-height: 1em;
	}

		h2.icon {
			line-height: 48px;
		}

			h2.icon:before {
				position: relative;
				top: 0.05em;
				margin-right: 0.5em;
				opacity: 0.25;
			}

	h3 {
		font-size: 1.35em;
		margin-top: 2em;
	}

	b, strong {
		color: #404248;
		font-weight: 700;
	}

	i, em {
		font-style: italic;
	}

	br.clear {
		clear: both;
	}

	sub {
		position: relative;
		top: 0.5em;
		font-size: 0.8em;
	}

	sup {
		position: relative;
		top: -0.5em;
		font-size: 0.8em;
	}

	hr {
		border: 0;
		border-top: solid 1px #ddd;
	}

	blockquote {
		border-left: solid 0.5em #ddd;
		padding: 1em 0 1em 2em;
		font-style: italic;
	}

	p, ul, ol, dl, table {
		margin-bottom: 2em;
	}

	.date {
		display: block;
		text-transform: uppercase;
		font-weight: 800;
		letter-spacing: 0.075em;
		font-size: 0.9em;
		color: #696969;
		margin: 0 0 0.20em 0;
	}

/* Container */

	.container {
		margin: 0 auto;
		max-width: calc(100% - 100px);
		width: 1200px;
	}

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

			.container {
				width: 100%;
			}

		}

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

			.container {
				width: 100%;
			}

		}

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

			.container {
				width: 100%;
				max-width: 100%;
			}

		}

/* Row */

	.row {
		display: flex;
		flex-wrap: wrap;
		box-sizing: border-box;
		align-items: stretch;
	}

		.row > * {
			box-sizing: border-box;
		}

		.row.gtr-uniform > * > :last-child {
			margin-bottom: 0;
		}

		.row.aln-left {
			justify-content: flex-start;
		}

		.row.aln-center {
			justify-content: center;
		}

		.row.aln-right {
			justify-content: flex-end;
		}

		.row.aln-top {
			align-items: flex-start;
		}

		.row.aln-middle {
			align-items: center;
		}

		.row.aln-bottom {
			align-items: flex-end;
		}

		.row > .imp {
			order: -1;
		}

		.row > .col-1 {
			width: 8.33333%;
		}

		.row > .off-1 {
			margin-left: 8.33333%;
		}

		.row > .col-2 {
			width: 16.66667%;
		}

		.row > .off-2 {
			margin-left: 16.66667%;
		}

		.row > .col-3 {
			width: 25%;
		}

		.row > .off-3 {
			margin-left: 25%;
		}

		.row > .col-4 {
			width: 33.33333%;
		}

		.row > .off-4 {
			margin-left: 33.33333%;
		}

		.row > .col-5 {
			width: 41.66667%;
		}

		.row > .off-5 {
			margin-left: 41.66667%;
		}

		.row > .col-6 {
			width: 50%;
		}

		.row > .off-6 {
			margin-left: 50%;
		}

		.row > .col-7 {
			width: 58.33333%;
		}

		.row > .off-7 {
			margin-left: 58.33333%;
		}

		.row > .col-8 {
			width: 66.66667%;
		}

		.row > .off-8 {
			margin-left: 66.66667%;
		}

		.row > .col-9 {
			width: 75%;
		}

		.row > .off-9 {
			margin-left: 75%;
		}

		.row > .col-10 {
			width: 83.33333%;
		}

		.row > .off-10 {
			margin-left: 83.33333%;
		}

		.row > .col-11 {
			width: 91.66667%;
		}

		.row > .off-11 {
			margin-left: 91.66667%;
		}

		.row > .col-12 {
			width: 100%;
		}

		.row > .off-12 {
			margin-left: 100%;
		}

		.row.gtr-0 {
			margin-top: 0px;
			margin-left: 0px;
		}

			.row.gtr-0 > * {
				padding: 0px 0 0 0px;
			}

			.row.gtr-0.gtr-uniform {
				margin-top: 0px;
			}

				.row.gtr-0.gtr-uniform > * {
					padding-top: 0px;
				}

		.row.gtr-25 {
			margin-top: -12.5px;
			margin-left: -12.5px;
		}

			.row.gtr-25 > * {
				padding: 12.5px 0 0 12.5px;
			}

			.row.gtr-25.gtr-uniform {
				margin-top: -12.5px;
			}

				.row.gtr-25.gtr-uniform > * {
					padding-top: 12.5px;
				}

		.row.gtr-50 {
			margin-top: -25px;
			margin-left: -25px;
		}

			.row.gtr-50 > * {
				padding: 25px 0 0 25px;
			}

			.row.gtr-50.gtr-uniform {
				margin-top: -25px;
			}

				.row.gtr-50.gtr-uniform > * {
					padding-top: 25px;
				}

		.row {
			margin-top: -50px;
			margin-left: -50px;
		}

			.row > * {
				padding: 50px 0 0 50px;
			}

			.row.gtr-uniform {
				margin-top: -50px;
			}

				.row.gtr-uniform > * {
					padding-top: 50px;
				}

		.row.gtr-150 {
			margin-top: -75px;
			margin-left: -75px;
		}

			.row.gtr-150 > * {
				padding: 75px 0 0 75px;
			}

			.row.gtr-150.gtr-uniform {
				margin-top: -75px;
			}

				.row.gtr-150.gtr-uniform > * {
					padding-top: 75px;
				}

		.row.gtr-200 {
			margin-top: -100px;
			margin-left: -100px;
		}

			.row.gtr-200 > * {
				padding: 100px 0 0 100px;
			}

			.row.gtr-200.gtr-uniform {
				margin-top: -100px;
			}

				.row.gtr-200.gtr-uniform > * {
					padding-top: 100px;
				}

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

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-large {
					order: -1;
				}

				.row > .col-1-large {
					width: 8.33333%;
				}

				.row > .off-1-large {
					margin-left: 8.33333%;
				}

				.row > .col-2-large {
					width: 16.66667%;
				}

				.row > .off-2-large {
					margin-left: 16.66667%;
				}

				.row > .col-3-large {
					width: 25%;
				}

				.row > .off-3-large {
					margin-left: 25%;
				}

				.row > .col-4-large {
					width: 33.33333%;
				}

				.row > .off-4-large {
					margin-left: 33.33333%;
				}

				.row > .col-5-large {
					width: 41.66667%;
				}

				.row > .off-5-large {
					margin-left: 41.66667%;
				}

				.row > .col-6-large {
					width: 50%;
				}

				.row > .off-6-large {
					margin-left: 50%;
				}

				.row > .col-7-large {
					width: 58.33333%;
				}

				.row > .off-7-large {
					margin-left: 58.33333%;
				}

				.row > .col-8-large {
					width: 66.66667%;
				}

				.row > .off-8-large {
					margin-left: 66.66667%;
				}

				.row > .col-9-large {
					width: 75%;
				}

				.row > .off-9-large {
					margin-left: 75%;
				}

				.row > .col-10-large {
					width: 83.33333%;
				}

				.row > .off-10-large {
					margin-left: 83.33333%;
				}

				.row > .col-11-large {
					width: 91.66667%;
				}

				.row > .off-11-large {
					margin-left: 91.66667%;
				}

				.row > .col-12-large {
					width: 100%;
				}

				.row > .off-12-large {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0px;
					margin-left: 0px;
				}

					.row.gtr-0 > * {
						padding: 0px 0 0 0px;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0px;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0px;
						}

				.row.gtr-25 {
					margin-top: -8.75px;
					margin-left: -8.75px;
				}

					.row.gtr-25 > * {
						padding: 8.75px 0 0 8.75px;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -8.75px;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 8.75px;
						}

				.row.gtr-50 {
					margin-top: -17.5px;
					margin-left: -17.5px;
				}

					.row.gtr-50 > * {
						padding: 17.5px 0 0 17.5px;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -17.5px;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 17.5px;
						}

				.row {
					margin-top: -35px;
					margin-left: -35px;
				}

					.row > * {
						padding: 35px 0 0 35px;
					}

					.row.gtr-uniform {
						margin-top: -35px;
					}

						.row.gtr-uniform > * {
							padding-top: 35px;
						}

				.row.gtr-150 {
					margin-top: -52.5px;
					margin-left: -52.5px;
				}

					.row.gtr-150 > * {
						padding: 52.5px 0 0 52.5px;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -52.5px;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 52.5px;
						}

				.row.gtr-200 {
					margin-top: -70px;
					margin-left: -70px;
				}

					.row.gtr-200 > * {
						padding: 70px 0 0 70px;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -70px;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 70px;
						}

		}

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

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-medium {
					order: -1;
				}

				.row > .col-1-medium {
					width: 8.33333%;
				}

				.row > .off-1-medium {
					margin-left: 8.33333%;
				}

				.row > .col-2-medium {
					width: 16.66667%;
				}

				.row > .off-2-medium {
					margin-left: 16.66667%;
				}

				.row > .col-3-medium {
					width: 25%;
				}

				.row > .off-3-medium {
					margin-left: 25%;
				}

				.row > .col-4-medium {
					width: 33.33333%;
				}

				.row > .off-4-medium {
					margin-left: 33.33333%;
				}

				.row > .col-5-medium {
					width: 41.66667%;
				}

				.row > .off-5-medium {
					margin-left: 41.66667%;
				}

				.row > .col-6-medium {
					width: 50%;
				}

				.row > .off-6-medium {
					margin-left: 50%;
				}

				.row > .col-7-medium {
					width: 58.33333%;
				}

				.row > .off-7-medium {
					margin-left: 58.33333%;
				}

				.row > .col-8-medium {
					width: 66.66667%;
				}

				.row > .off-8-medium {
					margin-left: 66.66667%;
				}

				.row > .col-9-medium {
					width: 75%;
				}

				.row > .off-9-medium {
					margin-left: 75%;
				}

				.row > .col-10-medium {
					width: 83.33333%;
				}

				.row > .off-10-medium {
					margin-left: 83.33333%;
				}

				.row > .col-11-medium {
					width: 91.66667%;
				}

				.row > .off-11-medium {
					margin-left: 91.66667%;
				}

				.row > .col-12-medium {
					width: 100%;
				}

				.row > .off-12-medium {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0px;
					margin-left: 0px;
				}

					.row.gtr-0 > * {
						padding: 0px 0 0 0px;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0px;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0px;
						}

				.row.gtr-25 {
					margin-top: -12.5px;
					margin-left: -12.5px;
				}

					.row.gtr-25 > * {
						padding: 12.5px 0 0 12.5px;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -12.5px;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 12.5px;
						}

				.row.gtr-50 {
					margin-top: -25px;
					margin-left: -25px;
				}

					.row.gtr-50 > * {
						padding: 25px 0 0 25px;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -25px;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 25px;
						}

				.row {
					margin-top: -50px;
					margin-left: -50px;
				}

					.row > * {
						padding: 50px 0 0 50px;
					}

					.row.gtr-uniform {
						margin-top: -50px;
					}

						.row.gtr-uniform > * {
							padding-top: 50px;
						}

				.row.gtr-150 {
					margin-top: -75px;
					margin-left: -75px;
				}

					.row.gtr-150 > * {
						padding: 75px 0 0 75px;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -75px;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 75px;
						}

				.row.gtr-200 {
					margin-top: -100px;
					margin-left: -100px;
				}

					.row.gtr-200 > * {
						padding: 100px 0 0 100px;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -100px;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 100px;
						}

		}

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

			.row {
				display: flex;
				flex-wrap: wrap;
				box-sizing: border-box;
				align-items: stretch;
			}

				.row > * {
					box-sizing: border-box;
				}

				.row.gtr-uniform > * > :last-child {
					margin-bottom: 0;
				}

				.row.aln-left {
					justify-content: flex-start;
				}

				.row.aln-center {
					justify-content: center;
				}

				.row.aln-right {
					justify-content: flex-end;
				}

				.row.aln-top {
					align-items: flex-start;
				}

				.row.aln-middle {
					align-items: center;
				}

				.row.aln-bottom {
					align-items: flex-end;
				}

				.row > .imp-small {
					order: -1;
				}

				.row > .col-1-small {
					width: 8.33333%;
				}

				.row > .off-1-small {
					margin-left: 8.33333%;
				}

				.row > .col-2-small {
					width: 16.66667%;
				}

				.row > .off-2-small {
					margin-left: 16.66667%;
				}

				.row > .col-3-small {
					width: 25%;
				}

				.row > .off-3-small {
					margin-left: 25%;
				}

				.row > .col-4-small {
					width: 33.33333%;
				}

				.row > .off-4-small {
					margin-left: 33.33333%;
				}

				.row > .col-5-small {
					width: 41.66667%;
				}

				.row > .off-5-small {
					margin-left: 41.66667%;
				}

				.row > .col-6-small {
					width: 50%;
				}

				.row > .off-6-small {
					margin-left: 50%;
				}

				.row > .col-7-small {
					width: 58.33333%;
				}

				.row > .off-7-small {
					margin-left: 58.33333%;
				}

				.row > .col-8-small {
					width: 66.66667%;
				}

				.row > .off-8-small {
					margin-left: 66.66667%;
				}

				.row > .col-9-small {
					width: 75%;
				}

				.row > .off-9-small {
					margin-left: 75%;
				}

				.row > .col-10-small {
					width: 83.33333%;
				}

				.row > .off-10-small {
					margin-left: 83.33333%;
				}

				.row > .col-11-small {
					width: 91.66667%;
				}

				.row > .off-11-small {
					margin-left: 91.66667%;
				}

				.row > .col-12-small {
					width: 100%;
				}

				.row > .off-12-small {
					margin-left: 100%;
				}

				.row.gtr-0 {
					margin-top: 0px;
					margin-left: 0px;
				}

					.row.gtr-0 > * {
						padding: 0px 0 0 0px;
					}

					.row.gtr-0.gtr-uniform {
						margin-top: 0px;
					}

						.row.gtr-0.gtr-uniform > * {
							padding-top: 0px;
						}

				.row.gtr-25 {
					margin-top: -2.5px;
					margin-left: -2.5px;
				}

					.row.gtr-25 > * {
						padding: 2.5px 0 0 2.5px;
					}

					.row.gtr-25.gtr-uniform {
						margin-top: -2.5px;
					}

						.row.gtr-25.gtr-uniform > * {
							padding-top: 2.5px;
						}

				.row.gtr-50 {
					margin-top: -5px;
					margin-left: -5px;
				}

					.row.gtr-50 > * {
						padding: 5px 0 0 5px;
					}

					.row.gtr-50.gtr-uniform {
						margin-top: -5px;
					}

						.row.gtr-50.gtr-uniform > * {
							padding-top: 5px;
						}

				.row {
					margin-top: -10px;
					margin-left: -10px;
				}

					.row > * {
						padding: 10px 0 0 10px;
					}

					.row.gtr-uniform {
						margin-top: -10px;
					}

						.row.gtr-uniform > * {
							padding-top: 10px;
						}

				.row.gtr-150 {
					margin-top: -15px;
					margin-left: -15px;
				}

					.row.gtr-150 > * {
						padding: 15px 0 0 15px;
					}

					.row.gtr-150.gtr-uniform {
						margin-top: -15px;
					}

						.row.gtr-150.gtr-uniform > * {
							padding-top: 15px;
						}

				.row.gtr-200 {
					margin-top: -20px;
					margin-left: -20px;
				}

					.row.gtr-200 > * {
						padding: 20px 0 0 20px;
					}

					.row.gtr-200.gtr-uniform {
						margin-top: -20px;
					}

						.row.gtr-200.gtr-uniform > * {
							padding-top: 20px;
						}

		}

/* Section/Article */

	section, article {
		margin-bottom: 5em;
	}

	section > :last-child,
	article > :last-child,
	section:last-child,
	article:last-child {
		margin-bottom: 0;
	}

	header {
		margin: 0 0 2em 0;
	}

		header h2, header h3 {
			margin: 0 0 0.25em 0;
		}

		header p {
			display: block;
			text-transform: none;
			font-weight: 700;
			letter-spacing: 0.014em;
			font-size: 1.1em;
			color: #696969;
			margin: 0;
		}

			header p strong {
				color: #404248;
				font-weight: 800;
			}

	footer {
		margin: 2.5em 0 0 0;
	}

	header.major {
		border-bottom: solid 1px #dbdbdb;
		margin: 0 0 3em 0;
	}

		header.major:after {
			content: '';
			display: block;
			border-top: solid 1px #dbdbdb;
			height: 8px;
		}

		header.major h2, header.major h3 {
			margin: 0 0 1.2em 0;
		}

		header.major p {
			margin: 0 0 1.5em 0;
			position: relative;
			top: -1em;
			text-align: center;
			width: 100%;
			max-width: 48rem;
			/* font-weight: 500; */
			/* letter-spacing: 0.065em; */
			/* font-size: 1.1em; */
			margin: 1.25em auto 2em auto;
			/* line-height: 1.6em; */
			/* letter-spacing: 0.01em; */
		}

	#research-endeavors header.major,
	#publications header.major,
	#team header.major {
		border-bottom: 0;
		margin: 0 0 1.6em 0;
	}

		#research-endeavors header.major:after,
		#publications header.major:after,
		#team header.major:after {
			display: none;
		}

		#research-endeavors header.major p,
		#publications header.major p,
		#team header.major p {
			top: 0;
			margin: 0.7em auto 0.9em auto;
		}

/* Forms */

	form label {
		display: block;
		text-transform: uppercase;
		font-weight: 800;
		letter-spacing: 0.04em;
		color: #404248;
		margin: 0 0 1em 0;
		font-size: 0.8em;
	}

	form input[type="text"],
	form input[type="email"],
	form input[type="password"],
	form select,
	form textarea {
		-webkit-appearance: none;
		display: block;
		width: 100%;
		border-radius: 8px;
		border: solid 1px #eee;
	}

	form input[type="text"]:focus,
	form input[type="email"]:focus,
	form input[type="password"]:focus,
	form select:focus,
	form textarea:focus {
		box-shadow: 0 0 2px 1px #4091bf;
	}

	form input[type="text"],
	form input[type="email"],
	form input[type="password"] {
		line-height: 3em;
		padding: 0 1em;
	}

	form select {
		line-height: 3em;
		padding: 0 1em;
	}

	form textarea {
		min-height: 9em;
		padding: 1em;
	}

	form ::-webkit-input-placeholder,
	form :-moz-placeholder,
	form ::-moz-placeholder,
	form :-ms-input-placeholder {
		color: #555 !important;
	}

	form ::-moz-focus-inner {
		border: 0;
	}

/* Tables */

	table {
		width: 100%;
	}

		table.default {
			width: 100%;
		}

			table.default tr {
				border-top: solid 1px #eee;
			}

				table.default tr:first-child {
					border-top: 0;
				}

			table.default td {
				padding: 0.5em 1em 0.5em 1em;
			}

			table.default th {
				text-align: left;
				padding: 0.5em 1em 0.5em 1em;
				text-transform: uppercase;
				font-weight: 800;
				letter-spacing: 0.04em;
				margin: 0 0 1em 0;
				font-size: 0.8em;
			}

			table.default thead {
				background: #404248;
				color: #fff;
			}

/* Image */

	.image {
		position: relative;
		display: inline-block;
	}

		.image img {
			display: block;
			width: 100%;
			border-radius: 8px;
		}

		.image:before {
			content: '';
			display: block;
			position: absolute;
			left: 0;
			top: 0;
			background: url("images/bg01.png");
			width: 100%;
			height: 100%;
			opacity: 0.75;
		}

		.image.fit {
			display: block;
			width: 100%;
		}

		.image.featured {
			display: block;
			width: 100%;
			margin: 0 0 2.5em 0;
		}

		.image.left {
			float: left;
			margin: 0 2em 2em 0;
		}

		.image.centered {
			display: block;
			margin: 0 0 2.5em 0;
		}

			.image.centered img {
				margin: 0 auto;
				width: auto;
			}

/* Button */

	input[type="button"],
	input[type="submit"],
	input[type="reset"],
	button,
	.button {
		background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)), url("images/bg02.png");
		background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)), url("images/bg02.png");
		background-image: -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)), url("images/bg02.png");
		background-image: linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)), url("images/bg02.png");
		-moz-transition: background-color 0.2s ease-in-out;
		-webkit-transition: background-color 0.2s ease-in-out;
		-ms-transition: background-color 0.2s ease-in-out;
		transition: background-color 0.2s ease-in-out;
		-webkit-appearance: none;
		position: relative;
		display: inline-block;
		background-color: #4091bf;
		border-radius: 8px;
		box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.35), inset 0px 2px 1px 0px rgba(255, 255, 255, 0.35);
		text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.5);
		color: #fff !important;
		text-decoration: none;
		text-transform: uppercase;
		font-weight: 800;
		font-size: 0.95em;
		letter-spacing: 0.075em;
		padding: 1em 2em;
		outline: 0;
		border: 0;
		white-space: nowrap;
		cursor: pointer;
	}

		input[type="button"].icon:before,
		input[type="submit"].icon:before,
		input[type="reset"].icon:before,
		button.icon:before,
		.button.icon:before {
			opacity: 0.5;
			margin-right: 0.5em;
			position: relative;
			top: 0.05em;
		}

		input[type="button"]:hover,
		input[type="submit"]:hover,
		input[type="reset"]:hover,
		button:hover,
		.button:hover {
			background-color: #50a1cf;
		}

		input[type="button"]:active,
		input[type="submit"]:active,
		input[type="reset"]:active,
		button:active,
		.button:active {
			background-color: #3081af;
		}

		input[type="button"].medium,
		input[type="submit"].medium,
		input[type="reset"].medium,
		button.medium,
		.button.medium {
			font-size: 1.25em;
			padding: 1em 2.25em;
		}

		input[type="button"].large,
		input[type="submit"].large,
		input[type="reset"].large,
		button.large,
		.button.large {
			font-size: 1.5em;
			padding: 1em 2.25em;
		}

		input[type="button"].alt,
		input[type="submit"].alt,
		input[type="reset"].alt,
		button.alt,
		.button.alt {
			background-color: #464a52;
		}

			input[type="button"].alt:hover,
			input[type="submit"].alt:hover,
			input[type="reset"].alt:hover,
			button.alt:hover,
			.button.alt:hover {
				background-color: #565a62;
			}

			input[type="button"].alt:active,
			input[type="submit"].alt:active,
			input[type="reset"].alt:active,
			button.alt:active,
			.button.alt:active {
				background-color: #363a42;
			}

/* List */

	dl.contact dt {
		display: block;
		text-transform: uppercase;
		font-weight: 700;
		letter-spacing: 0.065em;
		font-size: 1.0em;
		color: #696969;
		float: left;
		width: 6em;
	}

	dl.contact dd {
		margin: 0 0 1em 6em;
	}

	ul.default {
		list-style: disc;
		padding-left: 1em;
	}

		ul.default li {
			padding-left: 0.5em;
		}

	ul.actions li {
		display: inline-block;
		padding: 0 0 0 0.25em;
		margin: 0 0 0 0.25em;
	}

		ul.actions li:first-child {
			margin-left: 0;
			padding-left: 0;
		}

	ul.menu li {
		border-left: solid 1px #eee;
		display: inline-block;
		padding: 0 0 0 1em;
		margin: 0 0 0 1em;
	}

		ul.menu li:first-child {
			border-left: 0;
			margin-left: 0;
			padding-left: 0;
		}

	ul.divided li {
		border-top: solid 1px #eee;
		padding: 0.5em 0 0 0;
		margin: 0.5em 0 0 0;
	}

		ul.divided li:first-child {
			border-top: 0 !important;
			padding-top: 0 !important;
			margin-top: 0 !important;
		}

	ol.default {
		list-style: decimal;
		padding-left: 1.25em;
	}

		ol.default li {
			padding-left: 0.25em;
		}

/* Box */

	.box.excerpt {
		position: relative;
		overflow: hidden;
	}

		.box.excerpt header {
			margin: 0 0 1em 0;
		}

		.box.excerpt .image, .box.excerpt p {
				font-size: 1em;
				text-transform: none;
				font-weight: 500;
				line-height: 1.3em;
				letter-spacing: 0.01em;
		}

	.box.feature1 {
		text-align: center;
	}

		.box.feature1 header {
			margin-bottom: 3em;
		}

			.box.feature1 header.first h2 {
				font-size: 2.0em;
			}

			.box.feature1 header.first p {
				font-size: 1.2em;
				text-transform: none;
				font-weight: 400;
				line-height: 1.6em;
				letter-spacing: 0.01em;
			}

			.box.feature1 header.second {
				position: relative;
				display: inline-block;
				text-align: left;
				margin: 0 auto;
				white-space: nowrap;
				left: 24px;
			}

				.box.feature1 header.second p {
					line-height: 1em;
				}

				.box.feature1 header.second:before {
					font-size: 48px;
					position: absolute;
					right: 100%;
					margin-right: 18px;
					opacity: 0.5;
					bottom: -4px;
				}

		.publications-block {
			text-align: center;
			margin-top: 2em;
			scroll-margin-top: 8.5em;
		}

	#header-wrapper,
	#research-endeavors,
	#team,
	#recent-posts,
	#footer {
		scroll-margin-top: 8.5em;
	}

		#research-endeavors .research-carousel {
			max-width: 56rem;
			margin-bottom: 4em;
		}

		#research-endeavors > .row > .col-12 + .col-12 {
			padding-top: 0.4em;
		}

		#research-endeavors .publications-block {
			margin-top: 0.25em;
		}

			.publications-block > header.major {
				text-align: center;
				margin: 0 0 1em 0;
			}

		.postcard {
			display: grid;
			grid-template-rows: 1fr 1fr;
			height: 25em;
			background: #fff;
			border: 1px solid #dde2ea;
			border-radius: 8px;
			overflow: hidden;
			box-shadow: 0 6px 18px rgba(33, 37, 45, 0.08);
		}

			.postcard .postcard-graphic {
				height: 100%;
				margin: 0;
			}

				.postcard .postcard-graphic:before {
					display: none;
					background: none;
					opacity: 0;
				}

				.postcard .postcard-graphic img {
					height: 12.5em;
					width: 100%;
					object-fit: cover;
					border-radius: 0;
				}

			.postcard .postcard-body {
				padding: 1em 1.1em 1.1em 1.1em;
				display: flex;
				flex-direction: column;
				justify-content: space-between;
			}

				.postcard .postcard-title {
					font-size: 1em;
					line-height: 1.35em;
					font-weight: 600;
					letter-spacing: 0;
					text-transform: none;
					text-align: left;
					margin: 0 0 0.8em 0;
					color: #343841;
				}

				.postcard .postcard-citation {
					font-size: 0.9em;
					line-height: 1.45em;
					margin: 0;
					color: #666d79;
					text-transform: none;
					text-align: left;
					font-weight: 400;
				}

					.postcard .postcard-citation a {
						font-size: 0.9em;
						text-decoration: none;
					}

					.postcard .postcard-citation a:hover {
						color: #2f5f8f;
						text-decoration: underline;
					}

		.earlier-works {
			margin: 2.5em 0 0 0;
			padding: 0.9em 1em;
			background: #f5f7fb;
			border: 1px solid #dbe1ea;
			border-radius: 8px;
		}

			.earlier-works:not([open]) {
				background: linear-gradient(#73777a 0%, #adb0b5 100%);
				border-color: #73777a;
			}

			.publications-block > .earlier-works + .earlier-works {
				margin-top: 0.75em;
			}

			.earlier-works summary {
				cursor: pointer;
				text-transform: uppercase;
				text-align: center;
				letter-spacing: 0.04em;
				font-size: 1.1em;
				font-weight: 800;
				color: #39414d;
			}

			.earlier-works:not([open]) summary {
				color: #f5f7fb;
				text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
			}

			.earlier-works > :not(summary) {
				opacity: 0;
				transform: translateY(-10px);
				transition: opacity 0.55s ease, transform 0.55s ease;
			}

			.earlier-works[open] > :not(summary) {
				opacity: 1;
				transform: translateY(0);
				animation: earlierWorksFadeIn 0.55s ease;
			}

			.earlier-works.is-closing > :not(summary) {
				opacity: 0;
				transform: translateY(-10px);
				animation: earlierWorksFadeOut 0.55s ease forwards;
			}

			@keyframes earlierWorksFadeIn {
			from {
				opacity: 0;
				transform: translateY(-10px);
			}
			to {
				opacity: 1;
				transform: translateY(0);
			}
		}

		@keyframes earlierWorksFadeOut {
			from {
				opacity: 1;
				transform: translateY(0);
			}
			to {
				opacity: 0;
				transform: translateY(-10px);
			}
		}

		.earlier-works .earlier-list {
				margin: 0.9em 0 0 1.1em;
				padding: 0;
			}

				.earlier-works .earlier-list li {
					text-align: left;
					margin: 0.55em 0;
					line-height: 1.45em;
					color: #515965;
				}

	.box.feature2 {
		text-align: center;
	}

	.spotlight-video {
		position: relative;
		width: 100%;
		aspect-ratio: 16 / 9;
		margin: 0 0 1em 0;
		border-radius: 8px;
		overflow: hidden;
		box-shadow: 0 6px 18px rgba(33, 37, 45, 0.08);
	}

		.spotlight-video iframe {
			display: block;
			width: 100%;
			height: 100%;
		}

	.spotlight-image {
		width: 100%;
		margin: 0 0 1em 0;
		border: 1px solid #d8dde6;
		border-radius: 8px;
		overflow: hidden;
		box-shadow: 0 6px 18px rgba(33, 37, 45, 0.08);
	}

		.spotlight-image img {
			display: block;
			width: 100%;
			height: auto;
		}

	.box.spotlight article > header {
		margin-bottom: 0.75em;
	}

	.box.spotlight article + article {
		border-top: 1px solid #d8dde6;
		padding-top: 2.5em;
	}

	.box.spotlight article:first-child {
		margin-bottom: 0.9em;
	}

		.box.spotlight article > header h3 {
			margin-bottom: 0.1em;
		}

	.team-block .major {
		margin-bottom: 2.5em;
	}

	.team-block .earlier-works {
		text-align: left;
	}

	.team-block .alumni-grid {
		margin: 0.9em 0 0 0;
		padding-left: 1em;
		padding-right: 1em;
	}

	.team-block .alumni-grid li {
		display: grid;
		grid-template-columns: 1.1fr 0.8fr 1.7fr;
		gap: 0.8em;
		align-items: start;
		margin: 0;
		padding: 0.55em 0;
		line-height: 1.25em;
	}

	.team-block .alumni-grid li + li {
		border-top: 1px solid #d8dde6;
	}

	.team-block .alumni-grid li.alumni-header {
		font-size: 0.82em;
		font-weight: 700;
		letter-spacing: 0.02em;
		color: #5b6572;
		padding-top: 0.35em;
		padding-bottom: 0.65em;
	}

	.team-block .alumni-grid li:not(.alumni-header) {
		color: #515965;
	}

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

		.team-block .alumni-grid li {
			grid-template-columns: 1fr;
			gap: 0.2em;
		}

	}

	.team-card {
		background: transparent;
		border: 0;
		border-radius: 0;
		padding: 0.6em 0.8em 0.6em 0.8em;
		text-align: center;
		height: 100%;
		box-shadow: none;
	}

		.team-card .team-photo {
			width: 192px;
			height: 192px;
			border-radius: 50%;
			object-fit: cover;
			object-position: center;
			display: block;
			margin: 0 auto 1em auto;
			border: 1px solid #b8bec8;
			box-shadow: 0 6px 18px rgba(33, 37, 45, 0.08);
		}

		.team-card .team-role {
			margin: 0;
			font-size: 0.78em;
			line-height: 1.3em;
			text-transform: uppercase;
			letter-spacing: 0.08em;
			font-weight: 800;
			color: #48617d;
		}

		.team-card .team-title {
			margin: 0.35em 0 0.45em 0;
			font-size: 0.9em;
			line-height: 1.3em;
			text-transform: none;
			font-weight: 600;
			color: #616b79;
		}

		.team-card .team-name {
			margin: 0;
			font-size: 1.1em;
			line-height: 1.25em;
			text-transform: none;
			letter-spacing: 0.01em;
			font-weight: 800;
			color: #2f3540;
		}

	.box.article-list article {
		border-bottom: solid 1px #dbdbdb;
		margin: 0 0 2.75em 0;
		padding: 0 0 2.75em 0;
	}

		#recent-posts .box.excerpt .image.left {
			width: 16.2em;
			height: 7.85em;
			margin: 0 1.6em 0em 0;
			overflow: hidden;
			border-radius: 8px;
			border: 1px solid #d7dbe2;
			background: #f4f6f9;
		}

		#recent-posts .box.excerpt .image.left:before {
			display: none;
			background: none;
			opacity: 0;
		}

		#recent-posts .box.excerpt .image.left img {
			height: 100%;
			width: 100%;
			object-fit: cover;
			object-position: center center;
			display: block;
			border-radius: 7px;
		}

		@media (max-width: 736px) {
			#recent-posts .box.excerpt {
				position: relative;
			}

			#recent-posts .box.excerpt .image.left {
				cursor: pointer;
				transition: all 0.2s ease;
				position: relative;
				z-index: 1;
			}

			#recent-posts .box.excerpt.is-expanded {
				position: fixed;
				left: 0;
				top: 0;
				width: 100vw;
				height: 100vh;
				margin: 0;
				padding: 1rem;
				z-index: 2000;
				border-radius: 0;
				background: rgba(0, 0, 0, 0.82);
				overflow-y: auto;
				display: flex;
				flex-direction: column;
				justify-content: center;
				align-items: center;
			}

			#recent-posts .box.excerpt.is-expanded .image.left {
				width: 100%;
				height: auto;
				max-height: 70vh;
				margin: 0 0 0.75rem 0;
				border-radius: 0;
			}

			#recent-posts .box.excerpt.is-expanded .image.left img {
				height: auto;
				max-height: 70vh;
				width: 100%;
				max-width: 100vw;
				object-fit: contain;
				border-radius: 0;
			}

			#recent-posts .box.excerpt.is-expanded > div:last-child {
				display: block;
				padding: 0 0.25rem 0.75rem 0.25rem;
				color: #fff;
			}

			#recent-posts .box.excerpt.is-expanded header {
				margin: 0;
				padding: 0;
				text-align: left;
			}

			#recent-posts .box.excerpt.is-expanded .date,
			#recent-posts .box.excerpt.is-expanded header p {
				color: #fff;
				display: block;
				text-shadow: none;
			}
		}

		#recent-posts.box.article-list article {
			border-bottom: 0;
			margin: 0 0 0.15em 0;
			padding: 0 0 0.15em 0;
		}

		#recent-posts.box.article-list article:last-child {
			margin-bottom: 0;
			padding-bottom: 0;
		}

		#recent-posts .earlier-works .earlier-stories-grid,
		#publications .earlier-works .earlier-stories-grid {
			list-style: none;
			margin: 0.9em 0 0 0;
			padding: 0;
		}

		#recent-posts .earlier-works .earlier-stories-grid li,
		#publications .earlier-works .earlier-stories-grid li {
			display: grid;
			grid-template-columns: 9.5em minmax(0, 1fr);
			gap: 0.85em;
			margin: 0 0 0.15em 0;
			padding: 0 0 0.15em 0;
			align-items: start;
			text-align: left;
		}

		#publications .earlier-works .earlier-stories-grid li {
			grid-template-columns: minmax(0, 1fr);
			gap: 0;
		}

		#recent-posts .earlier-works .earlier-stories-grid li + li,
		#publications .earlier-works .earlier-stories-grid li + li {
			border-top: 0;
		}

		#recent-posts .earlier-story-tabs,
		#publications .earlier-story-tabs {
			display: flex;
			flex-wrap: wrap;
			gap: 1.2em;
			margin: 0.9em 0 0;
			padding-bottom: 0.35em;
			border-bottom: 1px solid #dbe1ea;
		}

		#recent-posts .earlier-story-tab,
		#publications .earlier-story-tab {
			margin: 0;
			padding: 0;
			border: 0;
			border-radius: 0;
			background: none;
			background-image: none;
			box-shadow: none;
			color: #515965 !important;
			font: inherit;
			font-weight: 400;
			text-shadow: none;
			text-transform: none;
			letter-spacing: 0;
			cursor: pointer;
		}

		#recent-posts .earlier-story-tab:hover,
		#recent-posts .earlier-story-tab:active,
		#publications .earlier-story-tab:hover,
		#publications .earlier-story-tab:active {
			background: transparent;
			background-image: none;
			box-shadow: none;
		}

		#recent-posts .earlier-story-tab[aria-selected="true"],
		#publications .earlier-story-tab[aria-selected="true"] {
			font-weight: 800;
		}

		#recent-posts .earlier-story-tab:focus-visible,
		#publications .earlier-story-tab:focus-visible {
			outline: 2px solid #515965;
			outline-offset: 2px;
		}

		#recent-posts .earlier-story-panel[hidden],
		#publications .earlier-story-panel[hidden] {
			display: none;
		}

		#recent-posts .earlier-story-panel .earlier-list,
		#publications .earlier-story-panel .earlier-list {
			margin-top: 0.45em;
		}

		#publications .earlier-works .earlier-list li + li {
			border-top: 0;
		}

		#recent-posts .earlier-works .story-date {
			display: block;
			text-transform: uppercase;
			font-weight: 800;
			letter-spacing: 0.02em;
			font-size: 0.9em;
			color: #696969;
			margin: 0 0 0.2em 0;
		}

		#publications .earlier-works .story-date {
			display: none;
		}

		#recent-posts .earlier-works .story-brief,
		#publications .earlier-works .story-brief {
			display: block;
			margin: 0;
			font-size: 1em;
			text-transform: none;
			font-weight: 500;
			color: #515965;
			line-height: 1.3em;
			letter-spacing: 0.01em;
		}

		#recent-posts-hover-preview {
			position: fixed;
			z-index: 10020;
			width: clamp(320px, 42vw, 720px);
			aspect-ratio: 4 / 3;
			pointer-events: none;
			overflow: hidden;
			border-radius: 10px;
			border: 1px solid rgba(226, 226, 226, 0.35);
			box-shadow: 0 14px 36px rgba(0, 0, 0, 0.36);
			background: rgba(22, 25, 31, 0.94);
			display: none;
		}

		#recent-posts-hover-preview img {
			width: 100%;
			height: 100%;
			object-fit: cover;
			display: block;
		}

		#recent-posts-hover-preview.is-visible {
			display: block;
		}

		.box.article-list article:last-child {
			border-bottom: 0;
			margin-bottom: 0;
			padding-bottom: 0;
		}

/* Icons */

	.icon {
		text-decoration: none;
		text-decoration: none;
	}

		.icon:before {
			-moz-osx-font-smoothing: grayscale;
			-webkit-font-smoothing: antialiased;
			display: inline-block;
			font-style: normal;
			font-variant: normal;
			text-rendering: auto;
			line-height: 1;
			text-transform: none !important;
			font-family: 'Font Awesome 5 Free';
			font-weight: 400;
		}

		.icon.solid:before {
			font-weight: 900;
		}

		.icon.brands:before {
			font-family: 'Font Awesome 5 Brands';
		}

		.icon > .label {
			display: none;
		}

/* Nav */

	#nav {
		position: absolute;
		right: 2em;
		top: 0;
		height: 4.4em;
		display: flex;
		align-items: center;
		line-height: normal;
	}

		#nav > ul {
			display: flex;
			align-items: center;
			margin: 0;
		}

		#nav > ul > li {
			float: none;
			display: flex;
			align-items: center;
			padding: 0 0.8em 0 0.8em;
		}

			#nav > ul > li > a, #nav > ul > li > span {
				color: #fff;
				text-decoration: none;
				text-transform: uppercase;
				font-weight: 800;
				font-size: 0.95em;
				letter-spacing: 0.075em;
				padding: 0.5em 0.8em 0.5em 0.8em;
				border-radius: 6px;
				outline: 0;
			}

			#nav > ul > li.active > a,
			#nav > ul > li.current_page_item > a,
			#nav > ul > li.active > span,
			#nav > ul > li.current_page_item > span {
				background: rgba(0, 0, 0, 0.15);
				box-shadow: inset 1px 1px 0px 0px rgba(0, 0, 0, 0.025), 1px 1px 0px 0px rgba(255, 255, 255, 0.025);
			}

			#nav > ul > li:last-child {
				padding-right: 0;
			}

			#nav > ul > li > ul {
				display: none;
			}

	.dropotron {
		background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0)), url("images/bg02.png");
		background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0)), url("images/bg02.png");
		background-image: -ms-linear-gradient(top, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0)), url("images/bg02.png");
		background-image: linear-gradient(top, rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0)), url("images/bg02.png");
		position: relative;
		background-color: #3B3E45;
		background-color: rgba(59, 62, 69, 0.9);
		border-radius: 8px;
		box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.5), inset 0px 0px 0px 2px rgba(255, 255, 255, 0.075), inset 0px 2px 1px 0px rgba(255, 255, 255, 0.2), 0px 2px 14px 0px rgba(0, 0, 0, 0.4);
		text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.5);
		padding: 1.5em;
		line-height: 2.5em;
		min-width: 15em;
	}

		.dropotron.level-0 {
			border-top-left-radius: 0;
			border-top-right-radius: 0;
			margin-top: -2px;
			box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.5), inset 0px 0px 0px 2px rgba(255, 255, 255, 0.075), 0px 2px 14px 0px rgba(0, 0, 0, 0.4);
		}

		.dropotron a, .dropotron span {
			color: #aaa;
			text-decoration: none;
			text-transform: uppercase;
			font-weight: 800;
			font-size: 0.8em;
			letter-spacing: 0.075em;
			outline: 0;
		}

		.dropotron li:hover > a, .dropotron li:hover > span {
			color: #fff;
		}

/* Banner */

	#banner {
		text-align: center;
		width: 940px;
		margin: 0 auto;
		overflow: hidden;
		padding: 6em 0 6em 0;
	}

		#banner .banner-kicker {
			text-transform: uppercase;
			letter-spacing: 0.3em;
			font-size: 0.8em;
			font-weight: 700;
			color: rgba(255, 255, 255, 0.8);
			margin: 0 0 1.5em 0;
		}

			#banner .banner-kicker span {
				display: block;
			}

		#banner .banner-copy {
			border: solid 1px rgba(255, 255, 255, 0.25);
			border-left: 0;
			border-right: 0;
			margin: 0 0 1.5em 0;
		}

		#banner h2 {
			color: #fff;
			color: rgba(255, 255, 255, 0.75);
			font-size: 2.3em;
			font-weight: 700;
			line-height: 1.3em;
			margin: 0;
		}

			#banner h2 strong {
				font-weight: 800;
				color: inherit;
			}

			#banner .banner-copy:before {
				content: '';
				display: block;
				border-top: solid 1px;
				border-color: #888;
				border-color: rgba(255, 255, 255, 0.25);
				margin: 10px 0 1.25em 0;
			}

			#banner .banner-copy:after {
				content: '';
				display: block;
				border-bottom: solid 1px;
				border-color: #888;
				border-color: rgba(255, 255, 255, 0.25);
				margin: 1.5em 0 10px 0;
			}

		#banner p {
			text-transform: uppercase;
			color: #fff;
			color: rgba(255, 255, 255, 0.75);
			font-size: 1.5em;
			font-weight: 700;
			line-height: 1.3em;
			letter-spacing: 0.04em;
			float: left;
			text-align: right;
			width: 60%;
			line-height: 1.5em;
			margin: 0;
		}

		#banner p.banner-kicker {
			float: none;
			text-align: center;
			width: 100%;
			font-size: 0.8em;
			line-height: 1.6em;
			color: rgba(255, 255, 255, 0.7);
			letter-spacing: 0.3em;
			margin: 0 0 1.5em 0;
		}

		#banner p:not(.banner-kicker) {
			text-transform: none;
			font-weight: 400;
		}

		#banner p.banner-summary {
			float: none;
			text-align: center;
			width: 100%;
			max-width: 48rem;
			color: rgba(255, 255, 255, 0.55);
			font-weight: 500;
			font-size: 1.1em;
			margin: 1.25em auto 2em auto;
			line-height: 1.6em;
			letter-spacing: 0.014em;
		}

		#banner .banner-cta-row {
			display: flex;
			justify-content: center;
			align-items: stretch;
			gap: 0;
			margin-top: 0.25em;
			flex-wrap: wrap;
		}

		#banner .banner-carousel,
		.research-carousel {
			width: 100%;
			max-width: 52rem;
			min-width: 0;
			display: flex;
			flex-direction: column;
			margin: 0 auto 1.1em auto;
			padding: 0;
			background: transparent;
			border: 0;
			border-radius: 0;
		}

		#banner .carousel-viewport,
		.research-carousel .carousel-viewport {
			position: relative;
			flex: 1;
			aspect-ratio: 16 / 9;
			overflow: hidden;
			border-radius: 3px;
			min-height: 0;
		}

		#banner .carousel-track,
		.research-carousel .carousel-track {
			display: flex;
			height: 100%;
			transition: transform 350ms ease;
			will-change: transform;
		}

		#banner .carousel-slide,
		.research-carousel .carousel-slide {
			min-width: 100%;
			height: 100%;
			text-align: left;
			position: relative;
		}

		#banner .carousel-slide img,
		.research-carousel .carousel-slide img {
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover;
			border-radius: 3px;
		}

		#banner .carousel-caption,
		.research-carousel .carousel-caption {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			min-height: 9rem;
			padding: 1rem 0.86rem 1.5rem 0.86rem;
			background: linear-gradient(to bottom, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0.42) 62%, rgba(0, 0, 0, 0) 100%);
			color: rgba(255, 255, 255, 0.9);
			text-shadow: none;
		}

		#banner .carousel-caption h3,
		.research-carousel .carousel-caption h3 {
			margin: 0 0 0.35em 0;
			font-size: 0.82rem;
			line-height: 1.3em;
			font-weight: 700;
			color: rgba(255, 255, 255, 0.95);
			text-shadow: none;
		}

		#banner .carousel-caption p,
		.research-carousel .carousel-caption p {
			margin: 0;
			font-size: 0.82rem;
			line-height: 1.42em;
			text-transform: none;
			font-weight: 400;
			float: none;
			width: 100%;
			text-align: left;
			color: rgba(255, 255, 255, 0.85);
			text-shadow: none;
		}

		#banner .carousel-controls,
		.research-carousel .carousel-controls {
			position: absolute;
			inset: 0;
			z-index: 3;
			pointer-events: none;
		}

		#banner .carousel-prev,
		#banner .carousel-next,
		.research-carousel .carousel-prev,
		.research-carousel .carousel-next {
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			width: 2.25rem;
			height: 3rem;
			background: rgba(12, 14, 18, 0.72);
			border: 1px solid rgba(255, 255, 255, 0.78);
			border-radius: 3px;
			font-size: 1.5rem;
			color: rgba(255, 255, 255, 0.96);
			line-height: 1;
			display: flex;
			align-items: center;
			justify-content: center;
			padding: 0;
			opacity: 0.78;
			box-shadow: 0 1px 5px rgba(0, 0, 0, 0.6);
			cursor: pointer;
			pointer-events: auto;
		}

		#banner .carousel-prev,
		.research-carousel .carousel-prev {
			left: 0.9em;
		}

		#banner .carousel-next,
		.research-carousel .carousel-next {
			right: 0.9em;
		}

		#banner .carousel-prev:hover,
		#banner .carousel-next:hover,
		.research-carousel .carousel-prev:hover,
		.research-carousel .carousel-next:hover {
			opacity: 1;
		}

		#banner .carousel-dots,
		.research-carousel .carousel-dots {
			position: absolute;
			left: 50%;
			bottom: 1em;
			transform: translateX(-50%);
			display: flex;
			justify-content: center;
			gap: 1.5em;
			padding: 0.65em 1em;
			border-radius: 999px;
			background: rgba(15, 16, 20, 0.35);
			border: 1px solid rgba(255, 255, 255, 0.22);
			pointer-events: auto;
		}

		#banner .carousel-dot,
		.research-carousel .carousel-dot {
			width: 0.55em;
			height: 0.55em;
			border-radius: 50%;
			border: 0;
			background: rgba(255, 255, 255, 0.35);
			padding: 0;
			box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.06);
			cursor: pointer;
		}

		#banner .carousel-dot.is-active,
		.research-carousel .carousel-dot.is-active {
			background: rgba(255, 255, 255, 0.9);
		}

		#banner .quote-card {
			width: 100%;
			max-width: 34em;
			min-width: 0;
			padding: 1em 1.15em;
			font-size: 0.9em;
			line-height: 1.45em;
			text-align: center;
			color: rgba(255, 255, 255, 0.22);
			background: rgba(255, 255, 255, 0.2);
			border: 1px solid rgba(255, 255, 255, 0.3);
			border-radius: 4px;
			display: flex;
			flex-direction: column;
			gap: 0.7em;
		}

		#banner a.quote-card {
			text-decoration: none;
			color: inherit;
			transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
		}

		#banner a.quote-card:hover,
		#banner a.quote-card:focus-visible {
			background: rgba(255, 255, 255, 0.25);
			border-color: rgba(255, 255, 255, 0.65);
			box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.3);
		}

		#banner .quote-card p {
			margin: 0;
			font-size: 1.08em;
			line-height: 1.4em;
			float: none;
			width: 100%;
			text-align: center;
			font-style: italic;
		}

		#banner .button {
			display: inline-block;
			float: none;
			clear: both;
			width: auto;
			font-size: 14px;
			padding: 10px 24px;
			background-image: none;
			background-color: rgba(255, 255, 255, 0.16);
			box-shadow: none;
			border: 1px solid rgba(255, 255, 255, 0.45);
			border-radius: 4px;
			text-shadow: none;
			letter-spacing: 0.06em;
			line-height: 1.2;
		}

		#banner .quote-card .button {
			align-self: center;
			order: -1;
			margin: 0 0 0.15em 0;
			padding: 0.15em 0.35em 0.55em 0.35em;
			font-size: 14px;
			background: transparent;
			border: 0;
			border-bottom: 1px solid rgba(255, 255, 255, 0.28);
			border-radius: 0;
			width: 100%;
			text-align: center;
			color: rgba(255, 255, 255, 0.95) !important;
		}

		#banner .quote-card .button.icon:before {
			opacity: 0.8;
		}



/* Sidebar */

	#sidebar h2 {
		font-size: 1.5em;
	}

/* Wrappers */

	#header-wrapper {
		       background: url("images/bg01.png"),linear-gradient(rgba(15, 15, 35, 0.4), rgba(15, 10, 27, 0.8)),  url("../../images/header.jpg");
		       background-position: top left, center center,  center center;
		       background-size: auto,cover,  cover;
		padding: 8.5em 0 3em 0;
	}

	#main-wrapper {
		background: #fff;
	}

	#footer-wrapper {
		background: url("images/bg01.png"), url("../../images/pic07.jpg");
		position: relative;
		background-position: top left, center center;
		background-size: auto, cover;
		padding: 7em 0 7em 0;
	}

	.wrapper {
		padding: 7em 0 7em 0;
	}

		.wrapper > .inner {
			position: relative;
			z-index: 2;
		}

		.wrapper.style1 {
			position: relative;
			text-shadow: 1px 1px 0 #fff;
			background-color: #fff;
			background-image: url("images/bg03.png"), url("images/bg04.png"), url("images/bg02.png");
			background-repeat: no-repeat, no-repeat, repeat;
			background-size: 100% 15em, 100% 15em, auto auto;
			background-position: top center, bottom center, top left;
		}

		.wrapper.style3 {
			position: relative;
			text-shadow: 1px 1px 0 #fff;
			background-color: #fff;
			background-image: url("images/bg03.png"), url("images/bg02.png");
			background-repeat: no-repeat, repeat;
			background-size: 100% 15em, auto auto;
			background-position: top center, top left;
		}

/* Header */

	#header {
		position: fixed;
		top: 1em;
		left: 50%;
		transform: translateX(-50%);
		width: 1200px;
		max-width: calc(100% - 100px);
		z-index: 10000;
		border-radius: 10px;
		background: rgba(255, 255, 255, 0.1);
		padding: 0.75em;
		margin-bottom: 0;
	}

		#header .inner {
			background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg02.png");
			background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg02.png");
			background-image: -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg02.png");
			background-image: linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg02.png");
			position: relative;
			height: 4.4em;
			background-color: #3B3E45;
			background-color: rgba(59, 62, 69, 0.8);
			border-radius: 8px;
			box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.45), inset 0px 2px 1px 0px rgba(255, 255, 255, 0.15);
			text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.5);
		}

		#header h1 {
			position: absolute;
			left: 1.75em;
			top: 50%;
			margin-top: -0.65em;
			font-size: 1.35em;
			max-width: calc(100% - 36em);
			overflow: hidden;
			white-space: nowrap;
			text-overflow: ellipsis;
			color: #fff;
		}

/* Footer */

	#footer {
		margin-bottom: 0;
		text-shadow: -1px -1px 0 rgba(0, 0, 0, 0.5);
		position: relative;
		z-index: 2;
	}

		#footer h2 {
			font-size: 1.6em;
			color: #fff;
		}

		#footer strong {
			color: #fff;
		}

		#footer a {
			color: #acb2bf;
		}

		#footer p,
		#footer dl.contact dd {
			color: #d3d9e4;
			font-weight: 500;
			letter-spacing: 0.065em;
			font-size: 1.1em;
			line-height: 1.4em;
			letter-spacing: 0.01em;
		}

		#footer .contact-cta-wrap {
			margin: 1.1em 0 0 0;
		}

		#footer .contact-cta-button {
			display: inline-block;
			text-decoration: none;
			text-transform: uppercase;
			font-weight: 700;
			letter-spacing: 0.06em;
			font-size: 0.85em;
			line-height: 1.2;
			color: rgba(255, 255, 255, 0.95) !important;
			background: rgba(255, 255, 255, 0.16);
			border: 1px solid rgba(255, 255, 255, 0.45);
			border-radius: 4px;
			padding: 0.7em 1.35em;
			transition: background-color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
		}

		#footer .contact-cta-button:hover,
		#footer .contact-cta-button:focus-visible {
			background: rgba(255, 255, 255, 0.24);
			border-color: rgba(255, 255, 255, 0.55);
			box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.2);
		}

		#footer .sponsor-logos {
			display: flex;
			flex-wrap: wrap;
			align-items: center;
			justify-items: center;
			justify-content: center;
			gap: 0.5rem 0.5rem;
			margin-top: 1rem;
		}

		#footer .sponsor-logos img {
			max-width: 100%;
		}

		#footer .sponsor-logos a {
			display: inline-flex;
			align-items: center;
			justify-content: center;
			width: 100%;
			text-decoration: none;
		}


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

			#footer .sponsor-logos {
				grid-template-columns: repeat(2, minmax(0, 1fr));
			}

			#footer .sponsor-logos a {
				grid-column: span 1 !important;
			}

		}

		#footer .button.alt {
			box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.75), inset 0px 2px 1px 0px rgba(255, 255, 255, 0.25);
		}

		#footer ul.divided li, #footer ul.menu li {
			border-color: #444;
			border-color: rgba(255, 255, 255, 0.075);
		}

		#footer ul.divided li a {
			text-decoration: none;
		}

		#footer ul.menu {
			margin: 0;
		}

		#footer dl.contact dt {
			color: #ddd;
		}

	#copyright {
		border-top: solid 1px;
		border-color: #444;
		border-color: rgba(255, 255, 255, 0.15);
		text-align: center;
		margin-top: 2em;
		padding: 3em 0 4em 0;
		color: inherit;
	}

		#copyright a {
			color: inherit;
		}

/* Large */

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

		/* Basic */

			body {
				line-height: 1.75em;
				font-size: 10.75pt;
			}

			input, select, textarea {
				line-height: 1.75em;
				font-size: 10.75pt;
			}

		/* Wrappers */

			#header-wrapper {
				padding: 8em 0 2em 0;
			}

			body.homepage #header-wrapper {
				height: auto;
			}

			#footer-wrapper {
				padding: 4.5em 0 4.5em 0;
			}

			.wrapper {
				padding: 4.5em 0 4.5em 0;
			}

		/* Header */

			#header h1 {
				font-size: 1.15em;
				max-width: calc(100% - 31em);
			}

		/* Nav */

			#nav {
				right: 1.25em;
			}

				#nav > ul > li {
					padding: 0 0.45em 0 0.45em;
				}

					#nav > ul > li > a, #nav > ul > li > span {
						font-size: 0.85em;
						letter-spacing: 0.03em;
						padding: 0.45em 0.6em 0.45em 0.6em;
					}

		/* Banner */

			#banner {
				width: 100%;
				padding: 4em 0 2em 0;
			}

				#banner h2 {
					font-size: 2.15em;
					line-height: 1.3em;
					margin: 0 0 1em 0;
				}

				#banner p {
					font-size: 1.25em;
					line-height: 1.75em;
					letter-spacing: 0.04em;
					float: none;
					text-align: center;
					width: 100%;
					margin: 0 0 2em 0;
				}

	}

/* Medium */

	#navPanel, #titleBar {
		display: none;
	}

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

		/* Basic */

			html, body {
				overflow-x: hidden;
			}

		/* Box */

			.box.feature2 section {
				margin: 1em 0;
			}

		/* Nav */

			#page-wrapper {
				-moz-backface-visibility: hidden;
				-webkit-backface-visibility: hidden;
				-ms-backface-visibility: hidden;
				backface-visibility: hidden;
				-moz-transition: -moz-transform 0.5s ease;
				-webkit-transition: -webkit-transform 0.5s ease;
				-ms-transition: -ms-transform 0.5s ease;
				transition: transform 0.5s ease;
				padding-bottom: 1px;
			}

			#titleBar {
				-moz-backface-visibility: hidden;
				-webkit-backface-visibility: hidden;
				-ms-backface-visibility: hidden;
				backface-visibility: hidden;
				background-image: -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg02.png");
				background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg02.png");
				background-image: -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg02.png");
				background-image: linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg02.png");
				-moz-transition: -moz-transform 0.5s ease;
				-webkit-transition: -webkit-transform 0.5s ease;
				-ms-transition: -ms-transform 0.5s ease;
				transition: transform 0.5s ease;
				background-color: rgba(59, 62, 69, 0.9);
				box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.5), inset 0px 0px 0px 2px rgba(255, 255, 255, 0.075), 0px 1px 6px 0px rgba(0, 0, 0, 0.35);
				display: block;
				height: 35.2px;
				left: 0;
				position: fixed;
				text-shadow: -1px -1px 0 black;
				top: 0;
				width: 100%;
				z-index: 10001;
			}

				#titleBar .title {
					display: block;
					text-transform: uppercase;
					font-weight: 800;
					letter-spacing: 0.04em;
					color: #fff;
					line-height: 35.2px;
					text-align: center;
				}

				#titleBar .toggle {
					text-decoration: none;
					position: absolute;
					left: 0;
					top: 0;
					width: 60px;
					height: 35.2px;
					opacity: 0.25;
				}

					#titleBar .toggle:before {
						-moz-osx-font-smoothing: grayscale;
						-webkit-font-smoothing: antialiased;
						display: inline-block;
						font-style: normal;
						font-variant: normal;
						text-rendering: auto;
						line-height: 1;
						text-transform: none !important;
						font-family: 'Font Awesome 5 Free';
						font-weight: 900;
					}

					#titleBar .toggle:before {
						display: inline-block;
						text-decoration: none;
						font-size: 18px;
						width: 44px;
						height: 35.2px;
						line-height: 35.2px;
						text-align: center;
						color: #fff;
						content: '\f0c9';
					}

					#titleBar .toggle:active {
						opacity: 0.5;
					}

			#navPanel {
				-moz-backface-visibility: hidden;
				-webkit-backface-visibility: hidden;
				-ms-backface-visibility: hidden;
				backface-visibility: hidden;
				background-image: -moz-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg01.png");
				background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg01.png");
				background-image: -ms-linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg01.png");
				background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.35)), url("images/bg01.png");
				-moz-transform: translateX(-275px);
				-webkit-transform: translateX(-275px);
				-ms-transform: translateX(-275px);
				transform: translateX(-275px);
				-moz-transition: -moz-transform 0.5s ease;
				-webkit-transition: -webkit-transform 0.5s ease;
				-ms-transition: -ms-transform 0.5s ease;
				transition: transform 0.5s ease;
				background-color: #303238;
				box-shadow: inset -1px 0px 0px 0px rgba(0, 0, 0, 0.5), inset -2px 0px 0px rgba(255, 255, 255, 0.15), inset -2px 0px 10px 0px rgba(0, 0, 0, 0.35);
				display: block;
				height: 100%;
				left: 0;
				overflow-y: auto;
				position: fixed;
				top: 0;
				width: 275px;
				z-index: 10002;
			}

				#navPanel .link {
					display: block;
					color: #aaa;
					text-decoration: none;
					height: 44px;
					line-height: 44px;
					border-top: solid 1px rgba(255, 255, 255, 0.05);
					border-bottom: solid 1px rgba(0, 0, 0, 0.15);
					padding: 0 1em 0 1em;
					text-transform: uppercase;
					font-weight: 700;
					font-size: 0.95em;
					letter-spacing: 0.075em;
				}

					#navPanel .link:first-child {
						border-top: 0;
					}

					#navPanel .link:last-child {
						border-bottom: 0;
					}

				#navPanel .indent-1 {
					display: inline-block;
					width: 1em;
				}

				#navPanel .indent-2 {
					display: inline-block;
					width: 2em;
				}

				#navPanel .indent-3 {
					display: inline-block;
					width: 3em;
				}

				#navPanel .indent-4 {
					display: inline-block;
					width: 4em;
				}

				#navPanel .indent-5 {
					display: inline-block;
					width: 5em;
				}

				#navPanel .depth-0 {
					color: #fff;
				}

			body.navPanel-visible #page-wrapper {
				-moz-transform: translateX(275px);
				-webkit-transform: translateX(275px);
				-ms-transform: translateX(275px);
				transform: translateX(275px);
			}

			body.navPanel-visible #titleBar {
				-moz-transform: translateX(275px);
				-webkit-transform: translateX(275px);
				-ms-transform: translateX(275px);
				transform: translateX(275px);
			}

			body.navPanel-visible #navPanel {
				-moz-transform: translateX(0);
				-webkit-transform: translateX(0);
				-ms-transform: translateX(0);
				transform: translateX(0);
			}

		/* Header */

			#header, #nav {
				display: none;
			}

		/* Wrappers */

			#header-wrapper {
				display: none;
			}

			.homepage #header-wrapper {
				display: block;
						padding-top: 35.2px;
			}

			#main-wrapper {
				padding-top: 35.2px;
			}

			.homepage #main-wrapper {
				padding-top: 0;
			}

		/* Banner */

			#banner {
				padding: 6.75em 0 4em 0;
			}

				#banner br {
					display: none;
				}

		/* Sidebar */

			#sidebar {
				margin-top: 1em;
			}

	}

/* Small */

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

		/* Basic */

			body, input, select, textarea {
				line-height: 1.75em;
				font-size: 10pt;
				letter-spacing: 0;
			}

			h2, h3, h4, h5, h6 {
				font-size: 13pt !important;
			}

			.team-block > .row > .col-6-small {
				width: 100%;
			}

			.publications-block .postcard .postcard-title {
				font-size: 0.95em !important;
				line-height: 1.35em;
			}

			#banner .carousel-caption h3,
			.research-carousel .carousel-caption h3 {
				font-size: 0.82rem !important;
				line-height: 1.3em;
			}

			#banner .carousel-caption p,
			.research-carousel .carousel-caption p {
				font-size: 0.82rem !important;
				line-height: 1.42em;
			}

			h2 {
				line-height: 1.5em;
			}

		/* Section/Article */

			section, article {
				margin-bottom: 3em;
			}

		/* Image */

			.image.left {
				width: 25%;
			}

			#recent-posts .box.excerpt .image.left {
				float: none;
				width: 16.2em;
				height: 7.85em;
				margin: 0 0 0.45em 0;
			}

		/* Button */

			.button {
				width: 100%;
				font-size: 1.1em;
				text-align: center;
				padding: 1em 0 1em 0;
				border-radius: 8px;
			}

			#banner .button {
				width: auto;
				font-size: 14px;
				padding: 10px 24px;
			}

			#banner .banner-cta-row {
				gap: 0;
			}

			#banner .banner-carousel {
				width: 100%;
				max-width: 100%;
			}

			#banner .quote-card {
				width: 100%;
				max-width: 34em;
				text-align: center;
			}

			#banner .quote-card .button {
				align-self: center;
			}

		/* List */

			ul.menu li {
				display: block;
				border: 0 !important;
				padding: 0 !important;
				margin: 0 !important;
			}

			ul.actions li {
				display: block;
				padding: 0;
				margin: 1em 0 0 0;
			}

				ul.actions li:first-child {
					margin-top: 0;
				}

		/* Box */

			.box.excerpt .image-left {
				margin-right: 0;
			}

			.publications-block .postcard {
				width: 100%;
				max-width: 20rem;
				margin-left: auto;
				margin-right: auto;
			}

			.box.excerpt header {
				margin-left: 32%;
			}

			#recent-posts .box.excerpt header {
				margin-left: 0;
			}

			.box.excerpt p {
				clear: both;
			}

			.box.feature1 section {
				margin-bottom: 2em !important;
			}

			.box.spotlight {
				margin-top: 2em;
			}

			.box.spotlight article + article {
				padding-top: 1.5em;
			}

			.box.spotlight article:first-child {
				margin-bottom: 0.6em;
			}

		/* Wrappers */

			#header-wrapper {
				background-position: 35% 50%;
			}

			#footer-wrapper {
				padding: 3em 20px 3em 20px;
			}

				#footer-wrapper section, #footer-wrapper article {
					margin-bottom: 3em !important;
				}

			.wrapper {
				padding: 3em 20px 3em 20px;
			}

		/* Banner */

			#banner {
				padding: 40px 20px 40px 20px;
			}

				#banner h2 {
					font-size: 18pt !important;
				}

		/* Sidebar */

			#sidebar {
				margin-top: 2em;
			}

		/* Footer */

			#copyright {
				margin-top: 0;
				padding: 3em 0 1em 0;
			}

	}