/*
Theme Name: WUMB Radio
Theme URI: https://www.wumb.org
Description: Custom theme for WUMB Radio.
Author: Robert Tobey
Version: 1.0
*/

@import url('https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700&display=swap');

/***************
RESET
***************/

/**
 * Eric Meyer's Reset CSS v2.0 (http://meyerweb.com/eric/tools/css/reset/)
 * http://cssreset.com
 */
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;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
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
***************/

html {
	overflow-x: hidden;
}

body {
	font-family: 'Open Sans', sans-serif;
	font-weight: 400;
	font-size:  1em;
	color: #231F20;
	background-color: #F2F2E8;
	line-height: 1.5;
	overflow-x: hidden;
}

/***************
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: #0073CF;
	text-decoration: none;
} 

a:hover {
	text-decoration: underline;
}

/*** Images ***/

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

/*** Audio ***/

.audio_wrapper audio {
	width: 100%;
}

/*** Buttons ***/

button.ajax_button {
	padding: 8px 15px;
	background-color: #0073CF;
	border: 0;
	border-radius: 5px;
	font-size: 1em;
	font-weight: 700;
	color: #FFFFFF;
	cursor: pointer;
	display: inline-block;
}

.multiple_buttons .ajax_button {
	margin-right: 10px;
}

.ajax_loading {
	width: 16px;
	height: 16px;
	background-image: url('images/ajax_loading.gif');
	background-position: center center;
	background-repeat: no-repeat;
	display: none;
}

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

/*** Centering Wrapper ***/

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

/*** Clearing Floats ***/

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

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

#header {
	height: 220px;
	background-color: #6C4233;
	background-position: left center;
	background-repeat: no-repeat;
}

#header_inner {
	height: 100%;
}

/*** Logo ***/

#header_logo {
	position: absolute;
	top: 20px;
	left: 0;
	z-index: 2;
}

#header_logo h1 {
	width: 100%;
	height: 100%;
}

#header_logo h1 a {
	width: 100%;
	height: 100%;
	background-image: url('images/header_wumb_logo.png');
	background-position: center center;
	background-repeat: no-repeat;
	color: transparent;
	display: block;
	overflow: hidden;
}

/*** Listen Button ***/

#header_listen {
	position: absolute;
	top: 20px;
	z-index: 2;
}

#header_listen #listen_button a {
	width: 100%;
	padding: 0 10px;
	background-color: #0073CF;
	background-image: url('images/listen_icon.png');
	background-position: 98% center;
	background-repeat: no-repeat;
	border-radius: 5px;
	font-size: 1em;
	font-weight: 700;
	color: #FFFFFF;
	text-transform: uppercase;
	letter-spacing: 2px;
	display: block;
}

#header_listen .player_links {
	margin-top: 10px;
	padding: 0 10px;
}

#header_listen .player_links li {
	padding: 0 8px;
	border-right: 1px solid #FFFFFF;
	display: inline-block;
}

#header_listen .player_links li:first-child {
	padding-left: 0;
}

#header_listen .player_links li:last-child {
	border-right: 0;
}

#header_listen .player_links li a {
	font-size: .750em;
	color: #FFFFFF;
}

/*** Social Media Icons ***/

#header_social {
	position: absolute;
	right: 0;
	width: 220px;
	text-align: right;
	z-index: 2;
}

#header_social .header_social_icon {
	margin-left: 8px;
	width: 40px;
	height: 40px;
	display: inline-block;
	overflow: hidden;
}

#header_social .header_social_icon:first-child {
	margin-left: 0;
}

#header_social .header_social_icon a {
	width: 100%;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	color: transparent;
	display: block;
}

#header_social .header_social_icon a.facebook_icon {
	background-image: url('images/header_social_icon_facebook.png');
}

#header_social .header_social_icon a.twitter_icon {
	background-image: url('images/header_social_icon_twitter.png');
}

#header_social .header_social_icon a.youtube_icon {
	background-image: url('images/header_social_icon_youtube.png');
}

/*** Search Form ***/

#header_search {
	position: absolute;
	z-index: 3;
	-webkit-transition: all 400ms ease;
	-moz-transition: all 400ms ease;
	-ms-transition: all 400ms ease;
	-o-transition: all 400ms ease;
	transition: all 400ms ease;
	-webkit-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
}

#header_search.header_search_open {
	right: 50px;
}

#header_search_inner {
	display: -ms-flexbox;
	display: flex;
}

#header_search label {
	display: none;
}

#header_search .header_search_field {
	width: calc(100% - 45px);
	padding-right: 5px;
}

#header_search .header_search_button {
	width: 45px;
}

#header_search input[type="text"] {
	width: 100%;
	height: 40px;
	padding: 0 5%;
	background-color: #FFFFFF;
	border: 1px solid #231F20;
	color: #231F20;
	font-size: .875em;
	display: block;
}

#header_search input[type="submit"] {
	width: 100%;
	height: 40px;
	padding: 0 5px;
	border: none;
	background-color: #0073CF;
	font-size: .875em;
	color: #FFFFFF;
	text-transform: uppercase;
	line-height: 40px;
	cursor: pointer;
}

/*** Donate Button ***/

#donate_button {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	height: 40px;
	z-index: 2;
}

#donate_button a {
	width: 100%;
	height: 100%;
	padding: 0 20px 0 10px;
	background-color: #B6BF00;
	background-image: url('images/arrow_right_dark.png');
	background-position: 98% center;
	background-repeat: no-repeat;
	border-radius: 5px;
	font-size: 1em;
	font-weight: 700;
	color: #231F20;
	line-height: 40px;
	display: block;
}

#header_social .header_social_icon button {
	width: 100%;
	height: 100%;
	background-color: transparent;
	background-image: url('images/header_search_icon.png');
	border: none;
	color: transparent;
	cursor: pointer;
}

/*** Menu Button ***/

#menu_button {
	position: absolute;
	left: 0;
	bottom: 20px;
	width: 155px;
	height: 40px;
	z-index: 2;
}

#menu_button button {
	height: 100%;
	padding: 0 15px 0 50px;
	background-color: transparent;
	background-image: url('images/menu_icon.png');
	background-position: left center;
	background-repeat: no-repeat;
	border: none;
	cursor: pointer;
	font-size: 1.375em;
	color: #FFFFFF;
}

/*** Feature Menus ***/

#header_feature_menu_left {
  position: absolute;
  left: 205px;
  bottom: 10px;
  width: calc(50% - 205px);
  height: 80px;
  z-index: 2;
}

#header_feature_menu_right {
  position: absolute;
  right: 0;
  bottom: 10px;
  width: 50%;
  max-width: 840px;
  height: 80px;
  z-index: 2;
}

#feature_menu_left.feature_menu {
  display: flex;
  flex-wrap: wrap;
}

#feature_menu_left.feature_menu a {
  display: flex;
  align-items: left;
  justify-content: left;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: inherit;
}

#feature_menu_left.feature_menu li {
	width: calc(50% - 5px);
	max-width: 300px;
	height: 30px;
	margin-top: 10px;
	margin-left: 5px;
	padding: 0 22px 0 5px;
	background-color: #B6BF00;
	background-image: url('images/arrow_right_small_dark.png');
	background-position: 98% center;
	background-repeat: no-repeat;
	border-radius: 5px;
	text-align: left;
	line-height: 30px;
}

#feature_menu_left.feature_menu li a {
	font-size: .650em;
	font-weight: 700;
	color: #231F20;
}

#feature_menu_right.feature_menu {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-pack: justify;
	justify-content: right;
}

#feature_menu_right.feature_menu li {
	width: calc(25% - 5px);
	max-width: 200px;
	height: 30px;
	margin-top: 10px;
	margin-left: 5px;
	padding: 0 22px 0 5px;
	background-color: #0073CF;
	background-image: url('images/arrow_right_small.png');
	background-position: 98% center;
	background-repeat: no-repeat;
	border-radius: 5px;
	text-align: left;
	line-height: 30px;
	cursor: pointer; /* Added this line to make the buttons clickable */
}

#feature_menu_right.feature_menu li a {
	font-size: .650em;
	font-weight: 700;
	color: #FFFFFF;
	display: block; /* Added this line to ensure the entire button is clickable */
	text-decoration: none; /* Added this line to remove underline from the anchor element */
}

/*** Main Navigation ***/

#main_navigation {
	position: absolute;
	top: 0;
	left: 0;
	background-color: #0073CF;
	z-index: 9999;
	display: none;
}

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

#main_nav {
	color: #FFFFFF;
}
	
#main_nav li.menu-item-has-children {
	position: relative;
}

#main_nav li a {
	color: #FFFFFF;
}

#main_nav a:focus {
	outline: 1px dotted #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: 20px;
	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 20px;
	border-top: 1px solid #FFFFFF;
	font-size: 1.125em;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 2px;
}

#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-size: .875em;
	font-weight: 400;
	text-transform: capitalize;
}

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

/***************
NOW PLAYING
***************/

#now_playing a {
	color: #FFFFFF;
}

#now_playing h3 {
	font-size: 1em;
	font-weight: 700px;
	color: #FFFFFF;
	line-height: 1.2;
}

#now_playing .now_playing_spacer {
	margin-top: 3px;
	font-size: .875em;
	color: #FFFFFF;
}

#now_playing .now_playing_song {
	font-style: italic;
}

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

/*** Page Columns ***/

#page_columns {
	padding-top: 30px;
}

/*** Page Titles ***/

#page_titles {
	margin-bottom: 30px;
	font-weight: 300;
	line-height: 1.2;
}

#page_title h1 {
	font-size: 2.250em;
	font-weight: 700;
	color: #0073CF;
}

#page_subtitle h2 {
	margin-top: 8px;
	font-size: 1.375em;
	font-weight: 700;
	color: #0073CF;
}

/*** Admin Edit Link ***/

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

/*** Lead Paragraph ***/

#lead_paragraph {
	margin-bottom: 30px;
	font-size: 1.375em;
}

#lead_paragraph.archive_lead {
	margin-bottom: 0;
}

#lead_paragraph p {
	margin-bottom: 30px;
}

#lead_paragraph p:last-child {
	margin-bottom: 0;
}

/*** Sections and Spacers ***/

#page_content .page_xxxsmall_spacer {
	margin-top: 3px;
}

#page_content .page_xxsmall_spacer {
	margin-top: 5px;
}

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

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

#page_content .page_small_medium_spacer {
	margin-top: 15px;
}

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

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

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

#page_content .page_section_bottom {
	margin-bottom: 30px;
}

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

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

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

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

#page_content .empty_content {
	font-size: 1.250em;
}

#page_content h2.section_title {
	font-size: 1.5em;
	font-weight: 700;
	color: #0073CF;
}

/*** Basic Editor ***/

.basic_editor p {
	margin-bottom: 15px;
}

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

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

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

.basic_editor li {
	padding-bottom: 5px;
}

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

/*** Detail Lists ***/

.detail_list h4 {
	margin-bottom: 10px;
	font-size: 1em;
	font-weight: 700;
}

.detail_list ul {
	list-style-type: none;
}

.detail_list ul.show_markers, .detail_list ol.show_markers {
	padding-left: 15px;
	list-style-position: outside;
}

.detail_list ul.show_markers {
	list-style-type: disc;
}

.detail_list ol.show_markers {
	list-style-type: decimal;
}

.detail_list li {
	padding-bottom: 5px;
}

.detail_list li:last-child {
	padding-bottom: 0;
}

/*** Reference Lists ***/

.reference_list {
	padding: 35px 15px;
	background-color: #FFFFFF;
}

.reference_list h3 {
	font-size: 1.250;
	font-weight: 700;
	color: #0073CF;
}

.reference_list_inner {
	margin-top: 15px;
	padding-top: 15px;
	border-top: 1px solid #B6BF00;
}

.reference_list_inner ul {
	padding-left: 30px;
	list-style-type: disc;
	list-style-position: outside;
}

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

.reference_list_inner ul li:last-child {
	padding-bottom: 0;
}

/*** Link Lists ***/

.link_list ul {
	list-style-type: none;
}

.link_list ul li {
	font-size: .875em;
}

/*** Info Sections ***/

.info_section h3 {
	font-size: 1.125;
	font-weight: 700;
}

/*** Labels ***/

.page_label {
	padding-right: 8px;
}

/*** More Button ***/

.more_wrapper {
	text-align: right;
}

.more_wrapper.more_left {
	text-align: left;
}

.more_wrapper a {
	padding: 8px 10px;
	background-color: #0073CF;
	border: 2px solid #4DA1D4;
	border-radius: 5px;
	font-size: .750em;
	color: #FFFFFF;
	text-transform: uppercase;
	display: inline-block;
}

/*** Listen Button ***/

a.page_listen_button {
	height: 50px;
	padding: 0 10px;
	background-color: #0073CF;
	background-image: url('images/listen_icon.png');
	background-position: 98% center;
	background-repeat: no-repeat;
	border-radius: 5px;
	font-size: 1em;
	font-weight: 700;
	color: #FFFFFF;
	text-transform: uppercase;
	line-height: 50px;
	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;
	line-height: 1.2;
}

.post_formatting h1, .post_formatting h2, .post_formatting h3 {
	margin-bottom: 30px;
}

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

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

.post_formatting h4, .post_formatting h5, .post_formatting h6 {
	font-size: 1em;
	margin-bottom: 10px;
}

/*** Paragraphs ***/

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

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

/*** Blockquote ***/

.post_formatting blockquote {
	padding: 0 40px 30px 40px;
	font-size: 1.125em;
	font-weight: 600;
	font-style: italic;
	display: inline-block;
}

/*** Pull Quote ***/

.post_formatting .pull_quote {
	padding: 20px 0;
	border-top: 1px solid #231F20;
	border-bottom: 1px solid #231F20;
	font-size: 1.125em;
	font-weight: 700;
	color: #0073CF;
}

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

.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 .alignright.orientation-landscape {
    float: right;
    max-width: 60%;
    margin: 5px 0 10px 30px;
}

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

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

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

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

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

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

.post_formatting a img.alignright.orientation-portrait {
    float: right;
    max-width: 40%;
    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.alignleft.orientation-landscape {
    float: left;
    max-width: 60%;
    margin: 5px 30px 10px 0;
}

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

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

.post_formatting .wp-caption {
    max-width: 100%;
    text-align: center;
}

.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.alignleft.orientation-landscape {
	max-width: 60%;
    margin: 5px 30px 10px 0;
}

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

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

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

.post_formatting .wp-caption.alignright.orientation-portrait {
	max-width: 40%;
    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: 10px 5px;
    font-size: .875em;
    font-weight: 400;
}

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

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

/***************
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.125em;
	font-weight: 700;
}

#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 .widget_image {
	margin-bottom: 16px;
}

#right_sidebar .sidebar_widget .widget_image_caption {
	margin-top: 8px;
	font-size: .750em;
}

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

#footer {
	padding: 15px 0;
}

#footer_nav {
	text-align: center;
}

#footer_nav li {
	padding: 5px 15px;
	display: inline-block;
}

#footer_nav li a {
	font-size: 1em;
	color: #231F20;
}

.footer_section {
	margin-top: 20px;
	font-size: .875em;
}

.footer_label {
	padding-right: 5px;
}

.footer_list.footer_mini li a {
	font-size: .750em;
	color: #231F20;
	text-transform: uppercase;
}

/***************
ARCHIVE GRID
***************/

.archive_grid {
	margin-top: 30px;
}

.archive_grid_item {
	position: relative;
	margin-top: 30px;
	padding: 20px 20px 86px 20px;
	background-color: #FFFFFF;
}

.archive_grid_image {
	position: relative;
}

.archive_grid_item .archive_grid_label {
	position: absolute;
	top: 10px;
	left: 10px;
	padding: 3px 5px;
	background-color: #B6BF00;
	border: 2px solid #231F20;
	font-size: .875em;
	font-weight: 600;
	text-transform: uppercase;
	z-index: 2;
}

.archive_grid_title {
	margin-top: 20px;
	font-size: 1.250em;
}

.archive_grid_title a {
	color: #231F20;
}

.archive_grid_subtitle {
	font-size: 1.125em;
}

.archive_grid_date {
	margin-top: 10px;
}

.archive_item_more {
	position: absolute;
	bottom: 20px;
	right: 20px;
	width: 100%;
}

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

/*** Contact Info ***/

.contact_info {
	display: inline-block;
}

.contact_info.contact_block {
	display: 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;
}

.contact_info .contact_label {
	padding-right: 5px;
}

/*** Social Media Icons ***/

.shortcode_spacer.social_icons {
	display: block;
}

.social_icons .social_icon {
	margin-right: 8px;
	width: 40px;
	height: 40px;
	display: inline-block;
	overflow: hidden;
}

.social_icons .social_icon:last-child {
	margin-left: 0;
}

.social_icons .social_icon a {
	width: 100%;
	height: 100%;
	background-position: center center;
	background-repeat: no-repeat;
	color: transparent;
	display: block;
}

.social_icons .social_icon a.social_facebook_icon {
	background-image: url('images/header_social_icon_facebook.png');
}

.social_icons .social_icon a.social_twitter_icon {
	background-image: url('images/header_social_icon_twitter.png');
}

.social_icons .social_icon a.social_video_icon {
	background-image: url('images/header_social_icon_youtube.png');
}

/***************
FEATURED CONTENT
***************/

#featured_details h3 {
	font-size: 1.125em;
	font-weight: 700;
	color: #231F20;
}

#featured_details h3 a {
	color: #231F20;
}

#featured_details .featured_item_date {
	font-size: .875em;
	font-weight: 700;
	text-transform: uppercase;
}

#featured_details .more_wrapper {
	text-align: left;
}

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

.site_form {
	margin-bottom: 30px;
}

.site_form .field-required {
	color: #C00000;
}

.site_form .form_section {
	margin-top: 30px;
}

.site_form .site_form_row {
	margin-bottom: 10px;
}

.site_form .site_form_field.field_large {
	width: 100%;
}

#page_content .site_form h3 {
	margin-bottom: 20px;
	font-size: 1.125em;
	font-weight: 700;
	color: #231F20;
}

.site_form label {
	width: 100%;
	margin-bottom: 5px;
	font-weight: 700;
	display: block;
}

.site_form .field_instructions {
	margin-bottom: 5px;
}

.site_form label.checkbox_label {
	width: auto;
	margin-bottom: 0;
	font-weight: 400;
	vertical-align: middle;
	display: inline;
}

.site_form .site_form_field input[type="text"], .site_form .site_form_field input[type="password"] {
	width: 100%;
	height: 30px;
	padding: 0 5px;
	border: 1px solid #A8A8A8;
	border-radius: 5px;
    font-size: 1em;
    display: inline-block;
}

.site_form textarea {
	width: 100%;
	height: 80px;
	padding: 10px;
	border: 1px solid #A8A8A8;
	font-size: 1em;
}

.site_form .site_form_field select {
	width: 100%;
	height: 30px;
	padding: 0 5px;
	border: 1px solid #A8A8A8;
	border-radius: 5px;
    font-size: 1em;
    display: inline-block;
}

.site_form .site_form_field ul.site_form_checkbox_list {
	list-style-type: none;
	list-style-position: outside;
	margin: 20px 0 0 0;
	padding: 0;
}

.site_form .site_form_field ul.site_form_checkbox_list li {
	padding-bottom: 5px;
}

.site_form .site_form_field ul.site_form_checkbox_list li:last-child {
	padding-bottom: 0;
}

.site_form .site_form_field ul.site_form_checkbox_list label {
	padding-left: 8px;
}

.site_form input[type="submit"] {
	width: auto;
	height: 30px;
	margin: 0;
	padding: 0 15px;
	border: none;
	background-color: #0073CF;
	border-radius: 10px;
	font-size: 1em;
	color: #FFFFFF;
	text-transform: uppercase;
	line-height: 30px;
	cursor: pointer;
	display: inline-block;
}

.site_form .acf-fields > .acf-field {
	margin: 0 0 20px 0;
	padding: 0;
	border-top: 0;
}

.site_form .acf-fields > .acf-field .acf-input-wrap {
	height: 30px;
}

.site_form .acf-fields > .acf-field .acf-label {
	width: 100%;
	margin: 0 0 5px 0;
	font-weight: 700;
	color: #231F20;
	display: block;
}

.site_form .acf-fields > .acf-field.acf-field-checkbox .acf-checkbox-list label {
	font-weight: 400;
}

.site_form .acf-fields > .acf-field p.description {
	margin: 0 0 10px 0;
	font-weight: 400;
	color: #231F20;
}

.site_form .acf-fields > .acf-field input[type="text"], .site_form .acf-fields > .acf-field input[type="password"], .site_form .acf-fields > .acf-field input[type="email"] {
	width: 100%;
	height: 30px;
	padding: 0 5px;
	border: 1px solid #A8A8A8;
	border-radius: 5px;
    font-size: 1em;
    display: inline-block;
}

.site_form .acf-fields > .acf-field select {
	width: 100%;
	height: 30px;
	padding: 0 5px;
	border: 1px solid #A8A8A8;
	border-radius: 5px;
    font-size: 1em;
}

.site_form .select2-container--default .select2-selection--single {
	width: 100%;
	height: 30px;
	padding: 0 5px;
	border: 1px solid #A8A8A8;
	border-radius: 5x;
    font-size: 1em;
}

.site_form .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: #231F20;
}

.site_form .select2-container .select2-selection--single {
	height: 30px;
}

.site_form .acf-fields > .acf-field .acf-required {
	color: #C00000;
}

.site_form .acf-notice.-error.-dismiss {
	background-color: #C00000;
	border: 1px solid #C00000;
}

/***************
FILTER MENUS
***************/

#filter_menu {
	padding: 20px;
	background-color: #FFFFFF;
	border: 1px solid #A8A8A8;
	margin-bottom: 30px;
}

#filter_menu.bottom_menu {
	margin-bottom: 0;
}

#filter_menu .filter_section {
	margin-top: 20px;
}

#filter_menu .filter_menu_row {
	margin-bottom: 10px;
}

#filter_menu .filter_menu_field {
	position: relative;
}

#filter_menu .filter_menu_field.field_large {
	width: 100%;
}

#filter_menu h3 {
	margin-bottom: 15px;
	font-size: 1.125em;
	font-weight: 700;
	color: #231F20;
}

#filter_menu label {
	width: 100%;
	margin-bottom: 5px;
	font-weight: 700;
	color: #231F20;
	display: block;
}

#filter_menu .filter_menu_field input[type="text"] {
	width: 100%;
	height: 30px;
	padding: 0 5px;
	border: 1px solid #A8A8A8;
	border-radius: 5px;
    font-size: 1em;
    display: inline-block;
}

#filter_menu .filter_menu_field select {
	width: 100%;
	height: 30px;
	padding: 0 5px;
	border: 1px solid #A8A8A8;
	border-radius: 5px;
    font-size: 1em;
    display: inline-block;
}

#filter_menu .filter_menu_field .menu_loading {
	position: absolute;
	right: -20px;
	bottom: 0;
	width: 16px;
	height: 30px;
	background-image: url('images/menu_loading.gif');
	background-repeat: no-repeat;
	background-position: right center;
	z-index: 2;
	display: none;
}

#filter_menu .filter_field_selected {
	position: relative;
	width: 100%;
	height: 30px;
	padding: 0 8px;
	background-color: #001E43;
	border-radius: 5px;
	font-size: 1em;
	font-weight: 700;
	color: #FFFFFF;
	line-height: 30px;
}

#filter_menu .filter_field_selected .filter_field_close {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 30px;
	height: 30px;
}

#filter_menu .filter_field_selected .filter_field_close button {
	width: 100%;
	height: 100%;
	background-color: transparent;
	border: none;
	font-size: 1em;
	font-weight: 700;
	color: #FFFFFF;
	cursor: pointer;
}

#filter_menu input[type="submit"] {
	float: left;
	height: 30px;
	padding: 0 15px;
	border: none;
	background-color: #0073CF;
	border-radius: 10px;
	font-size: .875em;
	color: #FFFFFF;
	text-transform: uppercase;
	line-height: 30px;
	cursor: pointer;
}

#filter_menu .filter_menu_row input[type="submit"]:first-child {
	margin-right: 10px;
}

#filter_menu .directory_filter_section {
	min-height: 35px;
}

#filter_menu .acf-fields > .acf-field {
	padding: 0;
	border-top: 0;
}

#filter_menu .acf-fields > .acf-field .acf-label {
	margin: 0;
}

#filter_menu .acf-fields > .acf-field select {
	font-size: 1em;
}

#filter_menu .select2-container--default .select2-selection--single {
	border: 1px solid #A8A8A8;
	border-radius: 5px;
}

#filter_menu .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: #231F20;
}

#filter_menu .select2-container .select2-selection--single {
	height: 30px;
}

/***************
GALLERIES
***************/

/*** Grid ***/

.gallery_grid {
	margin-top: 20px;
}

.gallery_grid_item {
	position: relative;
	margin-top: 30px;
}

.gallery_grid_type {
	font-size: .875em;
	font-weight: 700;
	text-transform: uppercase;
}

.gallery_grid_title h3 a {
	font-size: 1.125em;
	font-weight: 700;
	color: #58595B;
}

.gallery_item_more a {
	font-size: .875em;
	font-weight: 700;
	text-transform: uppercase;
}

/*** Single ***/

#gallery_view {
	margin-bottom: 10px;
	font-size: .875em;
	font-weight: 700;
	text-transform: uppercase;
}

/***************
HOME GRID
***************/

.home_grid_item {
	position: relative;
	margin-top: 30px;
}

.home_grid_item .home_grid_image {
	position: relative;
}

.home_grid_item .home_grid_label {
	position: absolute;
	padding: 3px 5px;
	background-color: #B6BF00;
	border: 2px solid #231F20;
	font-size: .875em;
	font-weight: 600;
	text-transform: uppercase;
	z-index: 2;
}

/***************
LISTNGS GRID
***************/

.listings_grid_item {
	margin-top: 20px;
	padding: 20px;
	background-color: #FFFFFF;
	border: 1px solid #A8A8A8;
}

h3.listings_grid_item_title a {
	font-size: 1.125em;
	color: #231F20;
}

h4.listings_grid_item_subtitle {
	font-size: 1em;
}

h4.listings_grid_item_subtitle a {
	color: #231F20;
}

.listings_grid_item_date {
	font-size: .875em;
	font-weight: 700;
	text-transform: uppercase;
}

/***************
LOGIN FORM
***************/

#custom_login p {
	margin: 0 0 10px 0;
}

#custom_login label {
	width: 100%;
	margin-bottom: 5px;
	font-weight: 700;
	color: #231F20;
	display: block;
}

#custom_login p.login-remember label {
	width: auto;
	margin-bottom: auto;
	font-weight: 400;
	display: inline;
}

#custom_login input[type="text"], #custom_login input[type="password"] {
	width: 100%;
	height: 30px;
	padding: 0 5px;
	border: 1px solid #A8A8A8;
	border-radius: 5px;
    font-size: 1em;
    display: inline-block;
}

#custom_login input[type="submit"] {
	margin-top: 10px;
	height: 30px;
	padding: 0 15px;
	border: none;
	background-color: #0073CF;
	border-radius: 10px;
	font-size: .875em;
	color: #FFFFFF;
	text-transform: uppercase;
	line-height: 30px;
	cursor: pointer;
}

.login_message {
	margin-top: 20px;
	padding: 10px;
}

.login_message p {
	padding-bottom: 8px;
}

.login_message p:last-child {
	padding-bottom: 0;
}

.login_message.login_error {
	background-color: #FFEBE8;
	border: 1px solid #C00000;
}

.login_message.login_notice {
	background-color: #E6f5FF;
	border: 1px solid #004E80;
}

/***************
PAGING
***************/

/*** Page Navi Styles ***/

.wp-pagenavi {
	margin-top: 30px;
	padding-top: 20px;
	border-top: 2px solid #231F20;
	text-align: center;
}

.wp-pagenavi a, .wp-pagenavi span {
	padding: 3px 5px;
	margin: 2px;
	background-color: #0073CF;
	color: #FFFFFF;
	text-decoration: none;
}

.wp-pagenavi a:hover, .wp-pagenavi span.current {
	background-color: #B6BF00;
	color: #231F20;
}

.wp-pagenavi span.current {
	font-weight: 700;
}

.wp-pagenavi span.pages {
	background-color: #B6BF00;
	color: #231F20;
}

/***************
PLAYLIST GRID
***************/

.playlist_grid {
	padding: 20px;
	background-color: #FFFFFF;
	border: 1px solid #A8A8A8;
}

.playlist_grid_item {
	padding: 8px;
}

.playlist_grid .playlist_grid_item:nth-child(odd) {
	background-color: #E8E8E8;
}

.playlist_item_date {
	font-weight: 700;
}

.playlist_item_song {
	font-style: italic;
}

/***************
SEARCH
***************/

#search_results .search_result {
	margin-top: 30px;
}

#search_results .search_result:first-child {
	margin-top: 0;
}

#search_results .search_result h4 a {
	font-size: 1.125em;
	font-weight: 700;
	color: #231F20;
	line-height: 1.2
}

#search_results .search_result .search_excerpt {
	margin-top: 20px;
}

#search_paging ul.page-numbers {
	margin-top: 30px;
	padding-top: 20px;
	border-top: 2px solid #231F20;
}

#search_paging .page-numbers {
	list-style: none;
	font-size: .875em;
}

#search_paging .page-numbers li {
	padding: 0 5px;
	display: inline;
}

/***************
UMASS IDENTITY
***************/

#umass_identity {
	margin: 60px 0;
}

#umass_tagline h2 {
	color: #0067AB;
}

/***************
641 AND UP
***************/

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

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

	/*** Logo ***/

	#header_logo {
		width: 155px;
		height: 100px;
	}
	
	/*** Donate Button ***/

	#donate_button {
		width: 240px;
	}
	
	/***************
	GALLERIES
	***************/
	
	/*** Grid ***/
	
	.gallery_grid {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	
	.gallery_grid_item {
		width: 46%;
		margin-left: 2%;
		margin-right: 2%;
	}
	
	.gallery_grid .gallery_grid_item:nth-child(1), .gallery_grid .gallery_grid_item:nth-child(2) {
		margin-top: 0;
	}
	
	/***************
	HOME GRID
	***************/
	
	.home_grid_item .home_grid_label {
		top: 20px;
		left: 20px;
	}
	
	.home_grid_item .home_grid_overlay {
		position: absolute;
		bottom: 0;
		width: 100%;
		padding: 10px;
		background: rgba(35, 31, 32, 0.8);
		color: #FFFFFF;
		z-index: 3;
	}

	.home_grid_item .home_grid_overlay h3 {
		font-size: 1.125em;
		color: #FFFFFF;
	}

	.home_grid_item .home_grid_overlay a {
		color: #FFFFFF;
	}
	
	.home_grid_item .home_grid_overlay .home_grid_date {
		font-size: .875em;
		text-transform: uppercase;
	}
	
	/***************
	PLAYLIST GRID
	***************/
	
	.playlist_grid_item {
		display: -ms-flexbox;
		display: flex;
		padding: 8px;
	}
	
	.playlist_item_date {
		width: 10%;
		padding-right: 10px;
	}

	.playlist_item_info {
		width: 90%
	}

}

/***************
737 AND UP
***************/

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

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

	/*** Search Form ***/

	#header_search {
		right: -500px;
		width: 400px;
	}
	
	/***************
	PAGE CONTENT
	***************/

	/*** Link Lists ***/

	.link_list ul li {
		padding: 0 5px;
		border-right: 1px solid #666666;
		display: inline-block;
	}

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

	.link_list ul li:last-child {
		padding-right: 0;
		border-right: none;
	}

	/***************
	FOOTER
	***************/
	
	.footer_list {
		text-align: center;
	}
	
	.footer_list li {
		padding-right: 2px;
		display: inline-block;
	}
	
	.footer_list.footer_mini li {
		padding-right: 10px;
	}
	
	.footer_list:last_child li {
		padding-right: 0;
	}
	
	/***************
	ARCHIVE GRID
	***************/
	
	.archive_grid {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	
	.archive_grid_item {
		width: 46%;
		margin-left: 2%;
		margin-right: 2%;
	}
	
	.archive_grid .archive_grid_item:nth-child(1), .archive_grid .archive_grid_item:nth-child(2) {
		margin-top: 0;
	}
	
	/***************
	FEATURED CONTENT
	***************/
	
	#featured_content {
		display: -ms-flexbox;
		display: flex;
	}
	
	#featured_image {
		width: 45%;
	}
	
	#featured_details {
		width: 55%;
		padding-left: 30px;
	}
	
	/***************
	LISTINGS GRID
	***************/
	
	.listings_grid_item.grid_item_has_image {
		display: -ms-flexbox;
		display: flex;
	}
	
	.listings_grid_item_image {
		width: 45%;
	}
	
	.listings_grid_item_details {
		width: 55%;
		padding-left: 30px;
	}
	
	.listings_grid_item.grid_item_has_image.grid_item_square_image .listings_grid_item_image {
		width: 30%;
	}
	
	.listings_grid_item.grid_item_has_image.grid_item_square_image .listings_grid_item_details {
		width: 70%;
	}
	
	/***************
	UMASS IDENTITY
	***************/

	#umass_identity {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-align: center;
		align-items: center;
	}
	
	#umass_logo {
		width: 10%;
	}
	
	#umass_tagline {
		width: 90%;
		padding-left: 30px;
	}
	
	#umass_tagline h2 {
		font-size: 1.625em;
	}

}

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

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

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

	/*** Main Navigation ***/

	#main_navigation {
		width: 75%;
	}
	
	/***************
	POST FORMATTING
	***************/

	/*** Pullquote ***/

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

	#filter_menu .filter_menu_row {
		display: -ms-flexbox;
		display: flex;
		margin-bottom: 10px;
	}

	#filter_menu .filter_menu_field.field_medium {
		width: 48%;
	}
	
	#filter_menu .filter_menu_field.field_medium:first-child {
		margin-right: 4%;
	}
	
	#filter_menu .acf-fields {
		width: 48%;
	}
	
	#filter_menu.acf_flex .acf-fields {
		display: -ms-flexbox;
		display: flex;
		width: 100%;
		margin-bottom: 10px;
	}
	
	#filter_menu.acf_flex .acf-field {
		width: 48%;
	}
	
	#filter_menu.acf_flex .acf-field:first-child {
		margin-right: 4%;
	}
	
	#filter_menu.acf_multiflex .acf-fields {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		width: 100%;
		margin-bottom: 10px;
	}
	
	#filter_menu.acf_multiflex .acf-field {
		width: 48%;
		margin-bottom: 10px;
	}
	
	#filter_menu.acf_multiflex .acf-field:nth-child(odd) {
		margin-right: 4%;
	}
	
	/***************
	HOME GRID
	***************/
	
	#home_grid {
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	
	.home_grid_item {
		width: 46%;
		margin-left: 2%;
		margin-right: 2%;
	}
	
	#home_grid .home_grid_item:nth-child(1), #home_grid .home_grid_item:nth-child(2) {
		margin-top: 0;
	}
	
	/***************
	UMASS IDENTITY
	***************/
	
	#umass_tagline h2 {
		font-size: 1.750em;
	}

}

/***************
813 AND UP
***************/

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

	/***************
	UMASS IDENTITY
	***************/
	
	#umass_tagline h2 {
		font-size: 2.125em;
	}

}

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

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

	/***************
	HEADER
	***************/
	
	#header {
		background-image: url('images/header_banner_desktop.png');
	}

	/*** Listen Button ***/

	#header_listen {
		left: 205px;
		width: 240px;
	}

	#header_listen #listen_button a {
		height: 58px;
		line-height: 58px;
	}
	
	/*** Social Media Icons ***/

	#header_social {
		top: 20px;
	}

	/*** Search Form ***/

	#header_search {
		top: 20px;
	}
	
	/*** Main Navigation ***/

	#main_navigation {
		width: 50%;
	}
	
	/***************
	NOW PLAYING
	***************/
	
	#now_playing {
		position: absolute;
		top: -200px;
		left: 465px;
		width: calc(100% - 705px);
		z-index: 2;
	}
	
	/***************
	PAGE CONTENT
	***************/
	
	/*** Page Columns ***/
	
	#page_columns {
		display: -ms-flexbox;
		display: flex;
	}
	
	#page_content {
		width: 75%;
		padding-right: 75px;
	}
	
	#page_content.omit_right_sidebar {
		width: 100%;
		padding-right: 0;
	}
	
	#right_sidebar {
		width: 25%;
	}
	
	/***************
	RIGHT SIDEBAR
	***************/
	
	#right_sidebar .sidebar_widget .widget_image.widget_logo {
		max-width: 70%;
	}
	
	#right_sidebar .sidebar_widget img.widget_logo {
		max-width: 70% !important;
	}
	
	/***************
	GALLERIES
	***************/
	
	/*** Grid ***/
	
	.gallery_grid_item {
		width: 32%;
		margin-left: 0;
		margin-right: 0;
	}
	
	.gallery_grid .gallery_grid_item:nth-child(1), .gallery_grid .gallery_grid_item:nth-child(2), .gallery_grid .gallery_grid_item:nth-child(3) {
		margin-top: 0;
	}
	
	/***************
	HOME GRID
	***************/

	.home_grid_item .home_grid_overlay h3 {
		font-size: .875em;
	}
	
	.home_grid_item .home_grid_overlay .home_grid_date {
		font-size: .688em;
	}
	
	/***************
	LOGIN FORM
	***************/
	
	#custom_login input[type="text"], #custom_login input[type="password"] {
		width: 50%;
	}
	
	/***************
	UMASS IDENTITY
	***************/
	
	#umass_tagline h2 {
		font-size: 2.5em;
	}

}

/***************
1100 AND UP
***************/

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

	/***************
	HEADER
	***************/
	
	/*** Feature Menus ***/
	
	#feature_menu_left.feature_menu li a {
		font-size: .750em;
	}
	
	#feature_menu_right.feature_menu li a {
		font-size: .750em;
	}
	
}

/***************
1300 AND UP
***************/

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

	/***************
	HEADER
	***************/
	
	/*** Feature Menus ***/
	
	#feature_menu_left.feature_menu li {
		width: calc(50% - 10px);
		margin-left: 10px;
		padding: 0 22px 0 8px;
	}
	
	#feature_menu_left.feature_menu li a {
		font-size: .875em;
	}
	

	#feature_menu_right.feature_menu li {
		width: calc(25% - 10px);
		margin-left: 10px;
		padding: 0 22px 0 8px;
	}
	
	#feature_menu_right.feature_menu li a {
		font-size: .875em;
	}
	
	/***************
	ARCHIVE GRID
	***************/
	
	.archive_grid_item {
		width: 32%;
		margin-left: 0;
		margin-right: 0;
	}
	
	.archive_grid .archive_grid_item:nth-child(1), .archive_grid .archive_grid_item:nth-child(2), .archive_grid .archive_grid_item:nth-child(3) {
		margin-top: 0;
	}
	
	/***************
	HOME GRID
	***************/

	.home_grid_item .home_grid_overlay h3 {
		font-size: 1.125em;
	}
	
	.home_grid_item .home_grid_overlay .home_grid_date {
		font-size: .875em;
	}

}

/***************
2000 AND UP
***************/

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

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

	/*** Centering Wrapper ***/

	.container {
		max-width: 2000px;
		margin: 0 auto;
	}

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

	/*** Search Form ***/

	#header_search {
		right: -1000px;
	}

}

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

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

	/***************
	HEADER
	***************/
	
	#header {
		background-image: url('images/header_banner_tablet_landscape.png');
	}

	/*** Feature Menus ***/
	
	#header_feature_menu_left, #header_feature_menu_right {
		display: none;
	}
	
	/*** Listen Button ***/

	#header_listen {
		right: 0;
		width: 240px;
	}

	#header_listen #listen_button a {
		height: 58px;
		line-height: 58px;
	}
	
	#header_listen .player_links {
		display: none;
	}
	
	/*** Social Media Icons ***/

	#header_social {
		bottom: 20px;
	}
	
	/*** Search Form ***/

	#header_search {
		bottom: 25px;
	}
	
	/***************
	NOW PLAYING
	***************/
	
	#now_playing {
		padding-top: 30px;
	}
	
	#now_playing_inner {
		min-width: 50%;
		padding: 20px 60px 20px 20px;
		background-color: #0073CF;
		background-image: url('images/listen_icon.png');
		background-position: 98% center;
		background-repeat: no-repeat;
		border-radius: 5px;
		display: inline-block;
	}
	
	/***************
	PAGE CONTENT
	***************/
	
	/*** Page Columns ***/
	
	#right_sidebar {
		margin-top: 40px;
	}
	
	/***************
	RIGHT SIDEBAR
	***************/
	
	#right_sidebar .sidebar_widget .widget_image.widget_logo {
		text-align: center;
	}
	
	#right_sidebar .sidebar_widget .widget_image.widget_logo img {
		max-width: 30%;
		display: inline-block;
	}
	
	#right_sidebar .sidebar_widget img.widget_logo {
		max-width: 30% !important;
		margin: 0 auto;
	}

}

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

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

	/***************
	HEADER
	***************/
	
	#header {
		background-image: url('images/header_banner_tablet_portrait.png');
	}

	/*** Main Navigation ***/

	#main_navigation {
		width: 100%;
	}
	
	/***************
	POST FORMATTING
	***************/

	/*** Pullquote ***/

	.post_formatting .pull_quote {
		width: 100%;
		margin: 30px 0;
		display: block;
	}
	
	/***************
	RIGHT SIDEBAR
	***************/
	
	#right_sidebar .sidebar_widget .widget_image.widget_logo img {
		max-width: 40%;
	}
	
	#right_sidebar .sidebar_widget img.widget_logo {
		max-width: 40% !important;
		margin: 0 auto;
	}
	
	/***************
	FILTER MENUS
	***************/
	
	#filter_menu.search_menu {
		display: none;
	}

	#filter_menu .filter_menu_field.field_medium {
		width: 100%;
		margin-bottom: 10px;
	}
	
	#filter_menu .acf-fields {
		width: 100%;
	}
	
	#filter_menu.acf_flex .acf-field {
		margin-bottom: 10px;
	}
	
	#filter_menu.acf_multiflex .acf-field {
		margin-bottom: 10px;
	}

}

/***************
736 AND UNDER
***************/

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

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

	/*** Search Form ***/

	#header_search {
		right: -400px;
		width: 300px;
	}

	/***************
	FOOTER
	***************/
	
	.footer_list {
		text-align: center;
	}
	
	/***************
	ARCHIVE GRID
	***************/
	
	.archive_grid .archive_grid_item:first-child {
		margin-top: 0;
	}
	
	/***************
	FEATURED CONTENT
	***************/
	
	#featured_details {
		margin-top: 20px;
	}
	
	/***************
	GALLERIES
	***************/
	
	/*** Grid ***/
	
	.gallery_grid .gallery_grid_item:first-child {
		margin-top: 0;
	}
	
	/***************
	LISTINGS GRID
	***************/
	
	.listings_grid_item_details {
		margin-top: 20px;
	}
	
	/***************
	UMASS IDENTITY
	***************/
	
	#umass_logo img {
		width: 50%;
		margin: 0 auto;
	}
	
	#umass_tagline {
		width: 65%;
		margin: 30px auto 0 auto;
		text-align: center;
	}
	
	#umass_tagline h2 {
		font-size: 1.750em;
	}

}

/***************
640 AND UNDER
***************/

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

	/***************
	HEADER
	***************/
	
	#header {
		background-image: url('images/header_banner_mobile_landscape.png');
	}

	/*** Logo ***/

	#header_logo {
		width: 130px;
		height: 84px;
	}
	
	#header_logo h1 a {
		background-size: 130px 84px;
	}
	
	/*** Listen Button ***/

	#header_listen {
		right: 0;
		width: 180px;
	}

	#header_listen #listen_button a {
		height: 48px;
		line-height: 48px;
	}
	
	 /*** Donate Button ***/

	#donate_button {
		width: 180px;
	}
	
	/***************
	NOW PLAYING
	***************/
	
	#now_playing_inner {
		width: 100%;
	}
	
	/***************
	POST FORMATTING
	***************/
	
	/*** Images ***/
	
	.post_formatting .alignright, .post_formatting .alignright.orientation-landscape, .post_formatting .alignright.orientation-portrait {
		float: none;
		max-width: 100%;
		margin: 20px auto;
	}

	.post_formatting .alignleft, .post_formatting .alignleft.orientation-landscape, .post_formatting .alignleft.orientation-portrait {
		float: none;
		max-width: 100%;
		margin: 20px auto;
	}

	.post_formatting a img.alignright, .post_formatting a img.alignright.orientation-landscape, post_formatting a img.alignright.orientation-portrait {
		float: none;
		max-width: 100%;
		margin: 20px auto;
	}

	.post_formatting a img.alignleft, .post_formatting a img.alignleft.orientation-landscape, .post_formatting a img.alignleft.orientation-portrait {
		float: none;
		max-width: 100%;
		margin: 20px auto;
	}
	
	.post_formatting .wp-caption.alignleft, .post_formatting .wp-caption.alignleft.orientation-landscape, .post_formatting .wp-caption.alignleft.orientation-portrait {
		max-width: 100%;
		margin: 20px auto;
	}

	.post_formatting .wp-caption.alignright, .post_formatting .wp-caption.alignright.orientation-landscape, .post_formatting .wp-caption.alignright.orientation-portrait {
		max-width: 100%;
		margin: 20px auto;
	}
	
	/***************
	RIGHT SIDEBAR
	***************/
	
	#right_sidebar .sidebar_widget .widget_image.widget_logo img {
		max-width: 50%;
	}
	
	#right_sidebar .sidebar_widget img.widget_logo {
		max-width: 50% !important;
		margin: 0 auto;
	}
	
	/***************
	HOME GRID
	***************/
	
	.home_grid_item {
		padding: 20px;
		background-color: #FFFFFF;
	}
	
	.home_grid_item .home_grid_label {
		top: 10px;
		left: 10px;
	}
	
	.home_grid_item .home_grid_overlay {
		margin-top: 20px;
	}

	.home_grid_item .home_grid_overlay h3 {
		font-size: 1.250em;
		color: #231F20;
		font-weight: 400;
	}

	.home_grid_item .home_grid_overlay a {
		color: #231F20;
	}
	
	.home_grid_item .home_grid_overlay .home_grid_date {
		margin-top: 10px;
		font-size: 1em;
	}
	
	/***************
	PAGING
	***************/
	
	/*** Page Navi ***/
	
	.wp-pagenavi a.page.smaller, .wp-pagenavi a.page.larger, .wp-pagenavi span.extend {
		display: none;
	}
	
	/***************
	PLAYLIST GRID
	***************/

	.playlist_item_info {
		margin-top: 8px;
	}

}

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

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

	/***************
	HEADER
	***************/
	
	#header {
		background-image: url('images/header_banner_mobile_portrait.png');
	}

	/*** Search Form ***/

	#header_search {
		right: -280px;
		width: 180px;
	}
	
	/***************
	RIGHT SIDEBAR
	***************/
	
	#right_sidebar .sidebar_widget .widget_image.widget_logo img {
		max-width: 80%;
	}
	
	#right_sidebar .sidebar_widget img.widget_logo {
		max-width: 80% !important;
		margin: 0 auto;
	}
	
	/***************
	UMASS IDENTITY
	***************/
	
	#umass_logo img {
		width: 60%;
		margin: 0 auto;
	}
	
	#umass_tagline {
		width: 75%;
	}
	
	#umass_tagline h2 {
		font-size: 1.625em;
	}

}

/***************
ALL TABLETS
***************/

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

	/***************
	RIGHT SIDEBAR
	***************/
	
	#right_sidebar .sidebar_widget .widget_image.widget_portrait {
		width: 60%;
		margin: 0 auto 8px auto;
	}
	
}

/***************
	RESIZE IMAGES FOR MEMBER GIFTS
	***************/

.square-container {
    width: 100%;
    padding-bottom: 100%; /* Create a square container with 1:1 aspect ratio */
    position: absolute;
    overflow: hidden;
}

.square-image {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain; /* Scale the image to fit within the square without cropping */
}

