/*
Theme Name: Forum for the Future of Higher Education
Theme URI: https://forumfutures.mit.edu
Description: Custom theme for the Forum for the Future of Higher Education.
Author: Robert Tobey
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,600,700');
@import url('https://fonts.googleapis.com/css?family=Crimson+Text:400,600,700');
@import url('reset.css');

/***************
BODY
***************/

body {
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-size:  .9em;
	color: #6D6E71;
	background-color: #FFFFFF;
	line-height: 1.4;
}

/***************
GENERAL STYLES
***************/

/*** Bold, Italic, Underline ***/

body b {
	font-weight: bold;
}

body i, .italic_copy {
	font-style: italic;
}

body strong {
	font-weight: bold;
}

body em {
	font-style: italic;
}

body u {
	text-decoration: underline;
}

/*** Superscript and Subscript ***/

body sup {
    vertical-align: super;
    font-size: smaller;
}

body sub {
    vertical-align: sub;
    font-size: smaller;
}

/*** Link Styles ***/

a, a:link, a:visited, a:active {
	color: #A90633;
	text-decoration: none;
} 

a:hover {
	text-decoration: underline;
}

/*** Link Styles ***/

.link_button_wrapper a.link_button {
	padding: 3px 15px;
	background-color: #A90633;
	border-radius: 15px;
	font-size: .750em;
	color: #FFFFFF;
	display: inline-block;
}

/*** Images ***/

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

/***************
LAYOUT
***************/

/*** Box Sizing ***/

* { 
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/*** Site Wrappers ***/

#site_wrapper {
	display: -ms-flexbox;
	display: flex;
	min-height: 100vh;
	-ms-flex-direction: column;
	flex-direction: column;
}

#site_content {
	-ms-flex: 1 0 auto; 
	flex: 1;
}

#site_footer {
	margin-top: 40px;
	background-color: #58595B;
}

/*** Centering Wrapper ***/

.container {
	position: relative;
	margin: 0 5%;
}

/*** Clearing Floats ***/

.clr:after { 
	content: ""; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
}

/***************
HEADER
***************/

/*** Top Bar ***/

#top_bar {
	padding: 8px 0;
	background-color: #58595B;
}

.searchform {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	-ms-flex-align: end;
	align-items: flex-end;
}

.searchform input[type="text"] {
	width: 220px;
	height: 22px;
}

.searchform input[type="submit"] {
	height: 22px;
	margin-left: 8px;
	border: 0;
	border-radius: 5px;
	background-color: #FFFFFF;
	font-family: 'Crimson Text', serif;
	color: #231F20;
	text-transform: uppercase;
	letter-spacing: 1px;
	cursor: pointer;
}

/*** Title Bar ***/

#title_bar {
	position: relative;
	padding: 15px 0;
	background-color: #A90633;
}

#site_title h1 {
	font-family: 'Crimson Text', serif;
	font-size: 1.375em;
	font-weight: 400;
	color: #FFFFFF;
	text-transform: uppercase;
	letter-spacing: 3px;
	line-height: 1.2;
}

#site_title h1 a {
	color: #FFFFFF;
}

/*** Main Navigation ***/
	
#main_nav_outer {
	position: relative;
}

#main_nav li .menu_toggle button {
	background-color: transparent;
	color: transparent;
	overflow: hidden;
}

/***************
BANNERS
***************/

#banner_bar {
	background-color: #D2D3D5;
}

#banner_logo {
	background-image: url('images/forum_logo.png');
	background-position: left center;
	background-repeat: no-repeat;
}

#section_banner {
	position: relative;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

#banner_title {
	position: absolute;
	top: 50%;
	left: 30px;
	transform: translateY(-50%);
	font-family: 'Crimson Text', serif;
	font-size: 1.875em;
	color: #FFFFFF;
	text-transform: uppercase;
	letter-spacing: 3px;
	z-index: 2;
}

#home_banner {
	position: relative;
	background-position: left top;
	background-repeat: no-repeat;
	background-size: cover;
}

#home_banner_overlay {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
}

#home_banner .container {
	height: 100%;
}

#home_logo {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-image: url('images/forum_logo_home.png');
	background-position: center center;
	background-repeat: no-repeat;
	color: transparent;
	overflow: hidden;
	z-index: 3;
}

#home_logo a {
	width: 100%;
	height: 100%;
	color: transparent;
	text-decoration: none;
	display: block;
}

/***************
PAGE CONTENT
***************/

/*** Page Columns ***/

#page_wrapper {
	margin-top: 40px;
}

/*** Headings ***/

#page_wrapper h1, #page_wrapper h2, #page_wrapper h3, #page_wrapper h4, #page_wrapper h5, #page_wrapper h6 {
	line-height: 1.2;
}

/*** Page Titles ***/
	
#page_heading {
	margin-bottom: 30px;
}

#page_title {
	font-size: 1.5em;
	font-weight: 700;
	color: #A90633;
}

#page_subtitle {
	margin-top: 8px;
	font-size: 1.125em;
	font-weight: 700;
	color: #A90633;
}

.page_smalltitle {
	margin: 0;
	font-size: 1em;
	font-weight: 700;
	color: #6D6E71;
}

.page_smalltitle a {
	color: #6D6E71;
}

.page_section_title {
	margin-bottom: 30px;
	font-size: 1.250em;
	font-weight: 700;
	color: #A90633;
}

/*** Labels ***/

.page_label {
	padding-right: 8px;
}

/*** Admin Edit Link ***/

.admin_edit_link {
	margin-bottom: 10px;
	text-transform: uppercase;
}

/*** Sections and Spacers ***/

#page_content .page_xsmall_spacer {
	margin-top: 8px;
}

#page_content .page_small_spacer {
	margin-top: 10px;
}

#page_content .page_medium_spacer {
	margin-top: 20px;
}

#page_content .page_large_spacer {
	margin-top: 30px;
}

#page_content .page_section {
	margin-top: 40px;
}

#page_content .page_divider {
	margin-top: 30px;
	padding-top: 30px;
	border-top: 1px solid #C0C1C2;
}

#page_content .page_divider_bottom {
	margin-bottom: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #C0C1C2;
}

.shortcode_spacer + .shortcode_spacer {
	margin-top: 30px;
}

/***************
FORMS
***************/

label.screen-reader-text {
	position: absolute;
	top: 0;
	left: -9999px;
	display: block;
}

/***************
POST FORMATTING
***************/

/*** Headings ***/

.post_formatting h1, .post_formatting h2, .post_formatting h3, .post_formatting h4, .post_formatting h5, .post_formatting h6 {
	margin-bottom: 30px;
	font-weight: 700;
	color: #000000;
}

.post_formatting h1, .post_formatting h2 {
	font-size: 1.375em;
}

.post_formatting h3 {
	font-size: 1.250em;
}

.post_formatting h4, .post_formatting h5, .post_formatting h6 {
	margin-bottom: 15px;
	font-size: 1.125em;
	color: #6D6E71;
}

/*** Paragraphs ***/

.post_formatting p {
	margin-bottom: 30px;
}

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

.post_formatting p .half_paragraph {
	margin-top: -15px;
	display: inline-block;
}

/*** Blockquote ***/

.post_formatting blockquote {
	padding: 0 40px 30px 40px;
	display: inline-block;
}

/*** Pull Quote ***/

.post_formatting .pull_quote {
	padding: 20px 0;
	border-top: 1px solid #A90633;
	border-bottom: 1px solid #A90633;
	font-size: 1.250em;
	font-weight: bold;
	color: #000000;
}

/*** Lists ***/

.post_formatting ul {
	margin: 0 0 30px 0;
	padding-left: 15px;
	list-style-type: disc;
	list-style-position: outside;
}

.post_formatting ol {
	margin: 0 0 30px 0;
	padding-left: 15px;
	list-style-type: decimal;
	list-style-position: outside;
}

.post_formatting li {
	padding-bottom: 8px;
}

.post_formatting ul li:last-child, .post_content ol li:last-child {
	padding-bottom: 0;
}

/*** Divider ***/

.post_formatting hr {
	clear: both;
	margin: 5px 0;
	width: 100%;
	height: 1px;
	background-color: transparent;
	border: 0;
	border-top: 1px solid #C0C1C2;
}

.post_formatting hr + p, .post_formatting hr + h1, .post_formatting hr + h2, .post_formatting hr + h3, .post_formatting hr + h4, .post_formatting hr + h5, .post_formatting hr + h6 {
	margin-top: 30px;
}

/*** Images ***/

.post_formatting img {
	display: inline-block;
}

.post_formatting .alignnone {
    margin: 5px 30px 30px 0;
}

.post_formatting .aligncenter,
.post_formatting div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.post_formatting .alignright {
    float: right;
    max-width: 50%;
    margin: 5px 0 10px 30px;
}

.post_formatting .alignleft {
    float: left;
    max-width: 50%;
    margin: 5px 30px 10px 0;
}

.post_formatting a img.alignright {
    float: right;
    max-width: 50%;
    margin: 5px 0 10px 30px;
}

.post_formatting a img.alignnone {
    margin: 5px 30px 30px 0;
}

.post_formatting a img.alignleft {
    float: left;
    max-width: 50%;
    margin: 5px 30px 10px 0;
}

.post_formatting a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.post_formatting .wp-caption {
    max-width: 96%;
    padding: 10px 3px;
    text-align: left;
}

.post_formatting .wp-caption.alignnone {
    margin: 5px 30px 30px 0;
}

.post_formatting .wp-caption.alignleft {
	max-width: 50%;
    margin: 5px 30px 10px 0;
}

.post_formatting .wp-caption.alignright {
	max-width: 50%;
    margin: 5px 0 10px 30px;
}

.post_formatting .wp-caption img {
	width: auto;
    height: auto;
    margin: 0;
    max-width: 100%;
    padding: 0;
}

.post_formatting .wp-caption p.wp-caption-text {
	padding: 0 4px 5px;
    font-size: .875em;
}

#post_content .wp-smiley {
	width: auto;
	border: none;
}

.post_formatting iframe {
	margin: 0 auto;
	display: block;
}

/***************
LEFT SIDEBAR
***************/

#side_nav li.menu-item-has-children {
	position: relative;
}

#side_nav li a {
	color: #6D6E71;
}

#side_nav > li.menu-depth-0 {
	padding-bottom: 10px;
	font-size: 1.125em;
	text-transform: uppercase;
}

#side_nav > li.menu-depth-0 > ul {
	padding: 5px 0;
}

#side_nav > li.menu-depth-0 > ul > li.menu-depth-1 > ul > li.menu-depth-2 {
	font-size: .875em;
	text-transform: none;
}

#side_nav > li.menu-depth-0 > ul > li.menu-depth-1 {
	padding-bottom: 8px;
}

#side_nav > li.menu-depth-0 > ul > li.menu-depth-1 > ul {
	padding: 10px 0 0 10px;
	display: none;
}

#side_nav > li.menu-depth-0 > ul > li.menu-depth-1 > ul li {
	padding-bottom: 12px;
}

#side_nav li.current-menu-item > a {
	font-weight: 700;
	color: #000000;
}

#side_nav li.menu-item-has-children .menu_toggle button {
	width: 100%;
	height: 100%;
	border: none;
	background-color: transparent;
	background-position: center center;
	background-repeat: no-repeat;
	color: transparent;
	overflow: hidden;
	cursor: pointer;
}

#side_nav li.menu-item-has-children.menu-depth-1 .menu_toggle {
	position: absolute;
	top: 0;
	right: 3%;
	width: 15px;
	height: 100%;
	background-color: transparent;
	display: block;
	z-index: 102;
}

#side_nav li.menu-item-has-children.menu-depth-1 .menu_toggle button {
	background-image: url('images/plus_icon_dark.png');
}

#side_nav li.menu-item-has-children.menu-depth-1.expanded > .menu_toggle button {
	background-image: url('images/minus_icon_dark.png');
	background-position: center 14px;
}

/***************
RIGHT SIDEBAR
***************/

#right_sidebar .sidebar_widget {
	margin-bottom: 40px;
}

#right_sidebar .sidebar_widget:last-child {
	margin-bottom: 0;
}

#right_sidebar h2.widget_title {
	margin-bottom: 20px;
	font-size: 1.375em;
	color: #A90633;
}

#right_sidebar .sidebar_widget {
	font-size: .875em;
}

#right_sidebar .sidebar_widget p {
	margin-bottom: 16px;
}

#right_sidebar .sidebar_widget p:last-child {
	margin-bottom: 0;
}

#right_sidebar .sidebar_widget ul {
	margin: 0 0 16px 0;
	padding-left: 15px;
	list-style-type: disc;
	list-style-position: outside;
}

#right_sidebar .sidebar_widget ol {
	margin: 0 0 16px 0;
	padding-left: 15px;
	list-style-type: decimal;
	list-style-position: outside;
}

#right_sidebar .sidebar_widget li {
	padding-bottom: 5px;
}

#right_sidebar .sidebar_widget ul li:last-child, #right_sidebar .sidebar_widget ol li:last-child {
	padding-bottom: 0;
}

#right_sidebar .sidebar_widget img {
	max-width: 100%;
	height: auto;
}

#right_sidebar .sidebar_widget .aligncenter, #right_sidebar .sidebar_widget .alignright, #right_sidebar .sidebar_widget .alignleft, #right_sidebar .sidebar_widget .widget_image img {
    display: block;
    margin: 0 auto;
}

#right_sidebar .sidebar_widget .widget_sp_image-description {
	margin-top: 8px;
	font-style: italic;
}

#right_sidebar .sidebar_widget .widget_image {
	margin-bottom: 16px;
}

#right_sidebar .sidebar_widget .widget_image.with_caption {
	margin-bottom: 8px;
}

#right_sidebar .sidebar_widget .widget_image_caption {
	font-style: italic;
	margin-bottom: 16px;
}

#right_sidebar .sidebar_widget label {
	width: 100%;
	margin-bottom: 8px;
	font-weight: bold;
	display: block;
}

#right_sidebar .sidebar_widget input[type="text"] {
	width: 100%;
	height: 30px;
	padding: 5px;
	border: 1px solid #DCDCDC;
    font-family: "Open Sans",sans-serif;
    font-size: 1em;
}

#right_sidebar .sidebar_widget input[type="submit"] {
	height: 50px;
	padding: 0 16px;
	border: none;
	background-color: #85470F;
	border-radius: 5px;
	font-size: 1em;
	color: #FFFFFF;
	text-transform: uppercase;
	line-height: 50px;
	cursor: pointer;
	display: inline-block;
}

/***************
FOOTER
***************/

#footer {
	padding: 40px 0;
	color: #FFFFFF;
}

#footer .footer_column .footer_item {
	margin-top: 2px;
}

#footer .footer_column .footer_item:first-child {
	margin-top: 0;
}

#footer a {
	color: #FFFFFF;
}

/***************
AGENDAS
***************/

#agenda_wrapper .agenda_date {
	padding: 10px 0 20px 0;
	border-top: 1px solid #C0C1C2;
}

#agenda_wrapper .agenda_event_date {
	font-size: 1.125em;
	font-weight: 700;
}

#agenda_wrapper ul.agenda_event_list li {
	padding-top: 20px;
}

#agenda_wrapper .agenda_event_time {
	font-size: .875em;
	color: #A90633;
	font-weight: 700;
}

/***************
ARCHIVE TEMPLATES
***************/

/*** Header ***/

#archive_header {
	margin-bottom: 30px;
}

/*** Content Items ***/

.content_wrapper .content_item {
	padding: 20px 0;
	border-top: 1px solid #C0C1C2;
}

.content_wrapper.content_single .content_item {
	padding: 0;
	border-top: 0;
}

.content_wrapper .content_item:last-child {
	margin-bottom: 0;
}

.content_item .item_header {
	margin-bottom: 20px;
}

.content_item h3.item_title {
	font-size: 1.250em;
	color: #000000;
}

.content_item h3.item_title a {
	color: #000000;
}

.content_item .item_sub_title {
	font-size: 1em;
}

.content_item .item_date {
	font-size: .875em;
	font-weight: 700;
	color: #A90633;
	text-transform: uppercase;
}

.content_item .item_italic, #page_heading .item_italic {
	font-style: italic;
}

ul.item_list li {
	padding-top: 8px;
}

.content_item .item_read_more {
	margin-top: 20px;
}

/*** Link Lists ***/

.link_list_wrapper .link_list_item {
	padding: 8px 0;
	border-top: 1px solid #C0C1C2;
}

.link_list_wrapper .link_list_item:last-child {
	border-bottom: 1px solid #C0C1C2;
}

.link_list_item .link_list_title {
	font-weight: bold;
	color: #000000;
}

/*** Paging ***/

.pagination .nav-links {
	padding-top: 20px;
	border-top: 1px solid #C0C1C2;
}

.pagination h2.screen-reader-text {
	display: none;
}

.pagination .nav-links {
	text-align: center;
}

.pagination .nav-links .page-numbers {
	padding: 0 5px;
}

.pagination .nav-links a.page-numbers {
	color: #A90633;
}

.pagination .nav-links .page-numbers.current {
	color: #000000;
}

/***************
ARTICLES
***************/

/*** Take Aways ***/

#take_aways h2 {
	margin-bottom: 20px;
	font-size: 1.250em;
	font-weight: 700;
	color: #A90633;
}

#take_aways ul {
	margin: 0;
	padding-left: 15px;
	list-style-type: disc;
	list-style-position: outside;
}

#take_aways ul li {
	padding-bottom: 8px;
	font-family: 'Crimson Text', serif;
	font-size: 1.125em;
}

#take_aways ul li:last-child {
	padding-bottom: 0;
}

/*** Article Summary ***/

#article_summary {
	font-family: 'Crimson Text', serif;
	font-size: 1.125em;
}

/*** Drop Caps ***/

#article_content > p:first-child:first-letter {
	float: left;
	font-family: 'Crimson Text', serif;
	font-size: 80px;
  	line-height: 65px;
  	padding-top: 2px;
 	padding-right: 8px;
  	padding-left: 3px;
}

/***************
CONTACT
***************/

/*** Contact Info ***/

.contact_info {
	display: inline-block;
}

.contact_info .contact_section {
	margin-top: 30px;
}

.contact_info .contact_section:first-child {
	margin-top: 0;
}

.contact_info h3 {
	margin-bottom: 0;
	font-size: 1.125em;
	font-weight: 700;
	color: #6D6E71
}

/*** Google Maps and Map Markers ***/

.acf-map {
	width: 100%;
	height: 300px;
	border: 1px solid #FFFFFF;
	margin-top: 40px;
	display: block;
}

/***************
FORUM FEATURES
***************/

#toc .toc_article {
	margin-bottom: 20px;
}

#toc .toc_article:last-child {
	margin-bottom: 0;
}

.toc_article .toc_title a {
	font-weight: 700;
	color: #000000;
}

.toc_article .toc_author {
	margin-top: 5px;
}

/***************
SCHOLARS
***************/

/*** Filter Menu ***/

#directory_filters {
	margin-bottom: 30px;
	text-align: center;
}

#directory_filters h4.filter_label {
	font-weight: 700;
	font-style: italic;
	color: #000000;
}

#directory_filters ul li {
	padding: 10px 2px 0 2px;
	display: inline-block;
}

#directory_filters ul li.letter_selected {
	font-weight: 700;
}

#directory_filters ul li a {
	color: #000000;
}

/*** Directory ***/

#directory_wrapper .directory_section {
	margin: 30px 0;
}

#directory_wrapper .directory_section:first-child {
	margin-top: 0;
}

.directory_section h4.letter_heading {
	font-weight: 700;
	color: #000000;
}

.directory_section ul li {
	padding-top: 8px;
}

.directory_section ul li a {
	color: #6D6E71;
}

/***************
668 AND UP
***************/

@media screen and (min-width:668px) {

	/***************
	POST FORMATTING
	***************/

	/*** Pullquote ***/

	.post_formatting .pull_quote {
		float: right;
		width: calc(50% - 20px);
		margin: 0 0 0 20px;
	}

	/***************
	FOOTER
	***************/

	#footer .footer_column {
		float: left;
		width: 50%;
	}
	
	#footer .footer_column.second_column {
		padding-left: 40px;
	}
	
	/***************
	ARCHIVE TEMPLATES
	***************/
	
	/*** Content Items ***/
	
	.content_item .item_image {
		float: left;
		width: 200px;
	}

	.content_item .item_image img {
		width: 100%;
		height: auto;
	}

	.content_item.has_image .item_content {
		float: left;
		width: calc(100% - 200px);
		padding-left: 30px;
	}
	
	/***************
	HOME
	***************/

	/*** Partner Logos ***/

	#home_logos {
		text-align: center;
	}

	#home_logos .home_logo {
		width: 28%;
		height: 94px;
		padding-left: 40px;
		padding-right: 40px;
		border-right: 2px solid #C0C1C2;
		display: inline-block;
	}
	
	#home_logos .home_logo.middle_logo {
		width: 42%;
	}

	#home_logos .home_logo:last-child {
		border-right: 0;
	}
	
	#home_logos .home_logo img {
		position: relative;
		top: 50%;
		transform: translateY(-50%);
	}

}

/***************
769 AND UP
***************/

@media screen and (min-width:769px) {

	/***************
	SIDEBAR COLUMN
	***************/
	
	#right_sidebar .sidebar_widget .widget_sp_image-description {
		text-align: left;
	}

	#right_sidebar .sidebar_widget .widget_image_caption {
		text-align: left;
	}

	/***************
	FOOTER
	***************/
	
	#footer .footer_column {
		width: 320px;
	}

	#footer .footer_column.second_column {
		padding-left: 60px;
	}
	
	/***************
	ARCHIVE TEMPLATES
	***************/
	
	/*** Link Lists ***/

	.link_list_wrapper .link_list_item {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-align: center;
		align-items: center;
	}

	.link_list_item .link_list_title {
		width: 60%;
	}

	.link_list_item .link_list_links {
		width: 40%;
		text-align: right;
	}
	
	/***************
	HOME
	***************/

	/*** Partner Logos ***/

	#home_logos .home_logo {
		padding-left: 60px;
		padding-right: 60px;
	}

}

/***************
1025 AND UP
***************/

@media screen and (min-width:1025px) {

	/***************
	LAYOUT
	***************/

	/*** Centering Wrapper ***/

	.container {
		width: 1200px;
		margin: 0 auto;
	}

	/***************
	HEADER
	***************/

	/*** Title Bar ***/

	#mobile_buttons {
		display: none;
	}
	
	/*** Mobile Search Form ***/
	
	#mobile_search_form {
		display: none;
	}
	
	/*** Main Navigation ***/
	
	#main_nav_inner {
		padding: 30px 0;
	}
	
	#main_nav .main_nav_separator {
		padding: 0 35px;
	}
	
	#main_nav .menu_toggle {
		display: none;
	}

	#main_nav li:first-child .main_nav_separator {
		display: none;
	}
	
	#main_nav > li {
		position: relative;
		font-family: 'Crimson Text', serif;
		font-size: 1.250em;
		text-transform: uppercase;
		letter-spacing: 5px;
		display: inline-block;
	}
	
	#main_nav li a {
		color: #6D6E71;
	}
	
	#main_nav li.current-menu-item a {
		color: #000000;
	}
	
	#main_nav .sub-menu {
		display: none;
	}
	
	/***************
	BANNERS
	***************/

	#banner_bar_inner {
		display: -ms-flexbox;
		display: flex;
	}
	
	#banner_logo {
		width: 26%;
	}
	
	#banner_logo a {
		width: 100%;
		height: 100%;
		color: transparent;
		text-decoration: none;
		display: block;
	}
	
	#section_banner {
		width: 74%;
		height: 126px;
	}
	
	#home_banner {
		height: 394px;
		background-image: url('images/banner_home_desktop.jpg');
	}
	
	#home_banner_overlay {
		background: linear-gradient(to right, rgba(35,34,34,0.6), rgba(35,34,34,0) 30%); 
	}
	
	#home_banner_inner {
		position: relative;
	}
	
	#home_logo {
		width: 323px;
		height: 323px;
	}
	
	/***************
	PAGE CONTENT
	***************/
	
	/*** Page Columns ***/
	
	#page_columns {
		display: -ms-flexbox;
		display: flex;
	}
	
	.page_column {
		padding-top: 15px;
	}
	
	#left_sidebar {
		width: 26%;
		padding-right: 10px;
	}
	
	#page_content {
		width: 50%;
		min-height: 600px;
		padding-left: 30px;
		padding-right: 30px;
		border-left: 2px solid #C0C1C2;
	}
	
	.home #page_content {
		min-height: 0;
	}
	
	#page_content.omit_right_sidebar {
		width: 74%;
		padding-right: 0;
	}
	
	#page_content.omit_left_sidebar {
		width: 76%;
		padding-left: 0;
		border-left: 0;
	}
	
	#page_content.full_column {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		border-left: 0;
	}
	
	#right_sidebar {
		width: 24%;
		padding-left: 30px;
		border-left: 2px solid #C0C1C2;
	}

}

/***************
1024 AND UNDER
***************/

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

	/***************
	LAYOUT
	***************/

	/*** Centering Wrapper ***/

	.container {
		width: 90%;
	}

	/***************
	HEADER
	***************/
	
	/*** Top Bar ***/
	
	#top_bar {
		display: none;
	}

	/*** Title Bar ***/
	
	#site_title {
		width: calc(100% - 109px);
	}
	
	#mobile_buttons {
		position: absolute;
		top: 50%;
  		right: 0;
 		transform: translateY(-50%);
		width: 99px;
	}

	#mobile_search_button {
		float: right;
		width: 29px;
		height: 29px;
	}
	
	#mobile_menu_button {
		float: right;
		width: 50px;
		height: 29px;
		margin-left: 20px;
	}
	
	#mobile_search_button button {
		width: 100%;
		height: 100%;
		background-color: transparent;
		background-image: url('images/search_icon.png');
		background-position: center center;
		background-repeat: no-repeat;
		border: none;
		color: transparent;
		cursor: pointer;
		overflow: hidden;
	}

	#mobile_menu_button button {
		width: 100%;
		height: 100%;
		background-color: transparent;
		background-image: url('images/menu_burger.png');
		background-position: center center;
		background-repeat: no-repeat;
		border: none;
		color: transparent;
		cursor: pointer;
		overflow: hidden;
	}
	
	/*** Mobile Search Form ***/
	
	#mobile_search_form {
		position: absolute;
		bottom: -38px;
		width: 100%;
		height: 38px;
		padding: 5px 5% 0 0;
		background-color: #58595B;
		z-index: 110;
		display: none;
	}
	
	.searchform input[type="text"] {
		width: 280px;
	}
	
	/*** Main Navigation ***/
	
	#main_nav_inner {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		margin: 0;
		padding: 0;
		background-color: #A90633;
		z-index: 100;
		display: none;
	}
	
	#main_nav li .main_nav_separator {
		display: none;
	}
	
	#main_nav li.menu-item-has-children {
		position: relative;
	}
	
	#main_nav li a {
		color: #FFFFFF;
	}
	
	#main_nav li.menu-item-has-children .menu_toggle button {
		width: 100%;
		height: 100%;
		border: none;
		background-position: center center;
		background-repeat: no-repeat;
		cursor: pointer;
	}
	
	#main_nav li.menu-item-has-children.menu-depth-0 .menu_toggle {
		position: absolute;
		top: 0;
		right: 3%;
		width: 15px;
		height: 100%;
		background-color: transparent;
		display: block;
		z-index: 102;
	}
	
	#main_nav li.menu-item-has-children.menu-depth-0 .menu_toggle button {
		background-image: url('images/plus_icon.png');
	}
	
	#main_nav li.menu-item-has-children.menu-depth-0.expanded > .menu_toggle button {
		background-image: url('images/minus_icon.png');
		background-position: center 17px;
	}
	
	#main_nav > li {
		padding: 10px 5%;
		border-top: 1px solid #FFFFFF;
		font-family: 'Crimson Text', serif;
		font-size: 1.250em;
		text-transform: uppercase;
	}
	
	#main_nav > li > ul {
		padding: 5px 0;
		display: none;
	}
	
	#main_nav li.menu-item-has-children.menu-depth-1 .menu_toggle {
		position: static;
		width: 20px;
		height: 100%;
		margin-left: 10px;
		display: inline-block;
	}
	
	#main_nav li.menu-item-has-children.menu-depth-1 .menu_toggle button {
		background-image: url('images/plus_icon.png');
		background-position: left center;
	}
	
	#main_nav li.menu-item-has-children.menu-depth-1.expanded > .menu_toggle button {
		background-image: url('images/minus_icon.png');
		background-position: left center;
	}
	
	#main_nav > li > ul li {
		padding: 2px 20px;
		font-family: 'Open Sans', sans-serif;
		font-size: .875em;
		text-transform: capitalize;
	}
	
	#main_nav > li > ul li ul {
		display: none;
	}
	
	/***************
	BANNERS
	***************/
	
	#banner_bar_inner.container {
		width: 100%;
		margin: 0;
	}
	
	#banner_logo {
		display: none;
	}
	
	#section_banner {
		height: 145px;
	}
	
	#banner_title {
		left: 5%;
	}
	
	#home_banner {
		height: 336px;
		background-image: url('images/banner_home_tablet_landscape.jpg');
	}
	
	#home_banner_overlay {
		background: linear-gradient(to right, rgba(35,34,34,0.3), rgba(35,34,34,0) 40%); 
	}
	
	#home_logo {
		width: 275px;
		height: 275px;
		background-size: 275px 275px;
	}
	
	/***************
	PAGE CONTENT
	***************/
	
	/*** Page Columns ***/
	
	#left_sidebar {
		display: none;
	}
	
	#right_sidebar {
		margin-top: 40px;
	}
	
	/***************
	POST FORMATTING
	***************/
	
	/*** Images ***/
	
	.post_formatting .wp-caption {
		text-align: center;
	}
	
	/***************
	HOME
	***************/
	
	#publications_slideshow {
		width: 300px;
		margin: 0 auto;
	}
	
}

/***************
768 AND UNDER
***************/

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

	/***************
	HEADER
	***************/

	/*** Title Bar ***/
	
	#site_title {
		width: calc(70% - 109px);
	}
	
	/***************
	BANNERS
	***************/
	
	#section_banner {
		height: 109px;
	}
	
	#home_banner {
		height: 252px;
		background-image: url('images/banner_home_tablet_portrait.jpg');
	}
	
	#home_logo {
		width: 206px;
		height: 206px;
		background-size: 206px 206px;
	}
	
	/***************
	SIDEBAR COLUMN
	***************/
	
	#right_sidebar .sidebar_widget .widget_sp_image-description {
		text-align: center;
	}

	#right_sidebar .sidebar_widget .widget_image_caption {
		text-align: center;
	}
	
	/***************
	ARCHIVE TEMPLATES
	***************/
	
	/*** Link Lists ***/

	.link_list_item .link_list_links {
		margin-top: 5px;
	}

}

/***************
667 AND UNDER
***************/

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

	/***************
	HEADER
	***************/

	/*** Title Bar ***/
	
	#site_title {
		width: calc(90% - 109px);
	}
	
	/***************
	BANNERS
	***************/
	
	#section_banner {
		height: 95px;
	}
	
	#banner_title {
		font-size: 1.750em;
	}
	
	#home_banner {
		height: 219px;
		background-image: url('images/banner_home_mobile_landscape_wide.jpg');
	}
	
	#home_banner_overlay {
		background: linear-gradient(to right, rgba(35,34,34,0.3), rgba(35,34,34,0) 35%); 
	}
	
	#home_logo {
		width: 179px;
		height: 179px;
		background-size: 179px 179px;
	}
	
	/***************
	POST FORMATTING
	***************/

	/*** Pullquote ***/

	.post_formatting .pull_quote {
		width: 100%;
		margin: 30px 0;
		display: block;
	}
	
	/***************
	FOOTER
	***************/
	
	#footer .footer_column.second_column {
		margin-top: 40px;
	}
	
	/***************
	ARCHIVE TEMPLATES
	***************/
	
	/*** Content Items ***/
	
	.content_item .item_image {
		text-align: center;
	}

	.content_item .item_image img {
		display: inline-block;
	}

	.content_item.has_image .item_content {
		margin-top: 20px;
	}
	
	/***************
	HOME
	***************/

	/*** Partner Logos ***/

	#home_logos .home_logo {
		margin-top: 40px;
		text-align: center;
	}
	
	#home_logos .home_logo img {
		display: inline-block;
	}

}

/***************
480 AND UNDER
***************/

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

	/***************
	HEADER
	***************/

	/*** Title Bar ***/
	
	#site_title {
		width: calc(100% - 97px);
	}
	
	#mobile_buttons {
		width: 87px;
	}
	
	#mobile_search_button {
		width: 24px;
		height: 24px;
	}
	
	#mobile_search_button button {
		background-size: 24px 24px;
	}
	
	#mobile_menu_button {
		width: 43px;
		height: 25px;
	}
	
	#mobile_menu_button button {
		background-size: 43px 25px;
	}
	
	/***************
	BANNERS
	***************/
	
	#section_banner {
		height: 68px;
	}
	
	#banner_title {
		font-size: 1.5em;
	}
	
	#home_banner {
		height: 158px;
		background-image: url('images/banner_home_mobile_landscape_narrow.jpg');
	}
	
	#home_banner_overlay {
		background: linear-gradient(to right, rgba(35,34,34,0.3), rgba(35,34,34,0) 30%); 
	}
	
	#home_logo {
		width: 128px;
		height: 128px;
		background-size: 128px 128px;
	}

}

/***************
375 AND UNDER
***************/

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

	/***************
	HEADER
	***************/

	/*** Title Bar ***/
	
	#site_title h1 {
		font-size: 1.250em;
	}
	
	/*** Mobile Search Form ***/
	
	.searchform input[type="text"] {
		width: 210px;
	}
	
	/***************
	BANNERS
	***************/
	
	#section_banner {
		height: 53px;
	}
	
	#banner_title {
		font-size: 1.375em;
	}
	
	#home_banner {
		height: 123px;
		background-image: url('images/banner_home_mobile_portrait.jpg');
	}
	
	#home_logo {
		width: 100px;
		height: 100px;
		background-size: 100px 100px;
	}
	
	/***************
	FOOTER
	***************/
	
	#footer .footer_column {
		text-align: center;
	}

}

/***************
MOBILE PORTRAIT NARROW
***************/

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

	/***************
	HEADER
	***************/

	/*** Title Bar ***/
	
	#site_title {
		width: calc(100% - 87px);
	}
	
	#site_title h1 {
		font-size: 1em;
	}
	
	#mobile_buttons {
		width: 77px;
	}
	
	#mobile_menu_button {
		margin-left: 10px;
	}
	
	/***************
	HOME
	***************/
	
	#publications_slideshow {
		width: 280px;
	}

}

/***************
IE11
***************/

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {

	/*** Sticky Footer Fix for IE11 ***/
	
	#site_wrapper {
		display: block;
	}

}