/*
Theme Name: Art Association
Theme URI: 
Description: Art Association - Custom Theme
Author: Steve Echols / Hiline
Version: 1.0
*/

/*	Art Association
============================================================================= */

/*	Elements
-------------------------------------------------------------- */

body, html
{
	padding: 0;
	margin: 0;
	width: 100%;
	height: 100%;
	font-family: Arial, Verdana;
	font-size: 10px;
	line-height: 120%;
	font-size: 10px; /* For easy responsive calculations */
	background-color: #fff;
}

h3, h6
{
	font-size: 2.2em;
	line-height: 120%;
	font-weight: normal;
	margin: 0;
	padding: 0;
	color: #111;
	clear: none;
}

h4, h5
{
	font-size: 1.2em;
	line-height: 120%;
	font-weight: normal;
	margin: 0;
	padding: 0;
	color: #999;
	text-transform: uppercase;
	clear: none;
}
h5
{
	color: #555;
}
h3.no-results
{
	text-transform: none;
	color: #999;
}
h4.no-results
{
	text-transform: none;
	color: #999;
}
em
{
	color: #999;
	font-style: normal;
	text-transform: uppercase;
}
strong
{
	font-style: normal;
	font-family: arial black, arial, sans-serif;
	font-weight: 900;
	text-transform: uppercase;
}

a
{
	color: #777;
}
a:hover, a:focus
{
	color: #ed2975;
}

hr
{
	margin: 2.0em 0 2.0em 0;
	border: 0;
	border-bottom: 1px solid #ddd;
}

input {
	outline: none;
}

/*	Utility
-------------------------------------------------------------- */

.left	{ float: left; }
.right	{ float: right; }
.clear	{ clear: both; }
.hide	{	display: none; }

.clearfix:before, .clearfix:after {	content: ''; display: block; height: 0;	overflow: hidden; }
.clearfix:after { clear: both; }
.clearfix {	zoom: 1; }

/*	Main
-------------------------------------------------------------- */

.main
{
	width: 100%;
}

/*	Header
-------------------------------------------------------------- */

.header
{
	position: sticky;
	z-index: 9999;
	top: 0;
	min-height: 7.3em; /* 58px + 15px bottom border */
	margin: 0;
	padding: 0;
	width: 100%;
	min-width: 88.0em;
	background: #fff url(images/header-hatch-back.png) repeat;
	border-bottom: 1.5em solid #fff;
}

.header-cont {
	display: flex;
}
/*.header .logo
{
	display: block;
	height: 5.8em;
	width: 23.0em;
	min-width: 23.0em;
	margin-right: 2.6em;
	background-image: url(images/artassoc-logo.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 23.0em 11.6em;
	text-indent: -9999px;
}*/
.header .logo
{
	display: block;
	height: 5.8em;
	width: 23.0em;
	min-width: 23.0em;
	margin-right: 2.6em;
	background-image: url(images/artassoc-logo-rays.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 23.0em 11.6em;
	text-indent: -9999px;
}
.header .logo:hover,
.header .logo:focus
{
	background-position: 0 -5.8em;
}

.util-nav
{
	position: relative;
	color: #555;
	overflow: hidden;
	display: flex;
	min-width: 25.6em;
    justify-content: flex-end;	
}
/*.util-nav-cont
{
	position: relative;
	overflow: hidden;
	display: flex;
}*/

.util-icons
{
}
.util-icon
{
	display: block;
	line-height: 3.2em;
	margin: 1.4em 0.7em 0 0;
	width: 3.2em;
	min-width: 3.2em;
	height: 3.2em;
	background-image: url(images/icons/icon-nav-utility.png?v=2);
	background-size: 19.2em 6.4em;
	background-repeat: no-repeat;
	text-indent: -9999px;
}
.util-icon:last-child
{
	/*margin-right: 0;*/
}

.util-icon.icon-search { background-position: 0 0; }
.util-icon.icon-search:hover, .util-icon.icon-search:focus { background-position: 0 -3.2em; }
.util-icon.icon-facebook { background-position: -3.2em 0; }
.util-icon.icon-facebook:hover, .util-icon.icon-facebook:focus { background-position: -3.2em -3.2em; }
.util-icon.icon-twitter {background-position: -6.4em 0; }
.util-icon.icon-twitter:hover, .util-icon.icon-twitter:focus {	background-position: -6.4em -3.2em; }
.util-icon.icon-instagram {	background-position: -9.6em 0; }
.util-icon.icon-instagram:hover, .util-icon.icon-instagram:focus { background-position: -9.6em -3.2em; }
.util-icon.icon-drop {	background-position: -12.8em 0; }
.util-icon.icon-drop:hover, .util-icon.icon-drop:focus { background-position: -12.8em -3.2em; }
.util-icon.icon-user {	background-position: -16.0em 0; }
.util-icon.icon-user:hover, .util-icon.icon-user:focus { background-position: -16.0em -3.2em; }

.util-buttons
{
}

.donate-button
{
	float: left;
	display: block;
	line-height: 3.2em;
	margin: 1.4em 0 0 0;
	padding: 0;
	width: 9.2em;
	min-width: 9.2em;
	height: 3.2em;
	color: #fff;
	background-color: #ed2975;
	border: 0;
	border-radius: 3.2em;
	text-align: center;
}
.donate-button:hover,
.donate-button:focus
{
	background-color: #d61770;
	color: #fff;
}
.donate-button span
{
	text-transform: uppercase;
	font-family: arial black, arial, sans-serif;
	font-weight: 900;
	font-size: 1.2em;
}

/*	Footer
-------------------------------------------------------------- */
.footer
{
	position: relative;
	width: 100%;
	margin-top: 9.0em;
	background-color: #949494;
	color: #ddd;
	text-transform: uppercase;
}
.footer-table
{
	display: table;
	width: 100%;
}
.footer-row
{
	display: table-row;
	width: 100%;
}
.footer-col
{
	display: table-cell;
	vertical-align: top;
}
.footer-col.padded
{
	display: table-cell;
	padding: 3.9em 2.4em 2.7em 2.4em;
}
.footer-col.footer-links
{
	min-width: 19.3em;
	border-right: 1px solid #b8b8b8;
	padding-left: 1.6em;
}
.footer-col.footer-newsletter
{
	min-width: 24.7em;
	border-right: 1px solid #b8b8b8;
}
.footer-col.footer-sponsors
{
	width: 100%;
}
.footer-left
{
	border-right: 1px solid #b8b8b8;
}
.footer-right
{
	position: relative;
	width: 19.4em;
	border-right: 1px solid #b8b8b8;
	background: transparent url(images/footer-notch.png) no-repeat center top;
	padding: 4.2em 2.2em 4.2em 2.2em;
}
.footer-right.on
{
	background: url(images/footer-notch.png) no-repeat center top, url(images/footer-hatch-back.png) repeat;
}
.footer-art-fair
{
	display: block;
	background: transparent url(images/footer-art-fair.png) no-repeat center top;
	width: 100%;
	height: 15.9em;
}

.footer-top
{
	min-height: 20.0em;
}
.footer-bottom
{
	border-top: 1px solid #b8b8b8;
	padding: 2.1818181818em 1.4545454545em;
	font-size: 1.1em;
	line-height: 1.1em;
}
.footer a
{
	color: #ddd;
	display: block;
	font-size: 1.1em;
	line-height: 1.3em;
}
.footer a span
{
	display: inline-block;
	vertical-align: middle;
}
.footer-links a
{
	margin-bottom: 0.8em;
}
.footer .icon,
.footer .uicon
{
	display: inline-block;
	height: 2.5454545455em;
	width: 2.5454545455em;
	background: transparent url(images/icons/icon-footer.png) no-repeat;
	background-position: 0 0;
	background-size: 7.6363636364em 5.0909090909em;
	margin-right: 0.5454545455em;
	color: #ddd;
	vertical-align: middle;
}
.footer .uicon
{
	font-size: 0.7954545455em;	/* Scale icons from 32px to 28px */
	height: 3.2em;
	width: 3.2em;
	background-image: url(images/icons/icon-nav-utility.png?v=2);
	background-size: 19.2em 6.4em;
	/*background-size: 16.0em 6.4em;*/
}

.footer .icon-location { background-position: 0 0; }
.footer a:hover .icon-location, .footer a:focus .icon-location { background-position: 0 -2.5454545455em; }
.footer .icon-phone { background-position: -2.5454545455em 0; }
.footer a:hover .icon-phone, .footer a:focus .icon-phone { background-position: -2.5454545455em -2.5454545455em; }
.footer .icon-link { background-position: -5.0909090909em 0; }
.footer a:hover .icon-link, .footer a:focus .icon-link { background-position: -5.0909090909em -2.5454545455em; }

.footer .footer-util-nav 
{
	display: none;
	margin-top: 2.9em;
}

.footer .uicon.icon-search { background-position: 0 0; }
.footer .uicon.icon-search:hover, .footer .uicon.icon-search:focus { background-position: 0 -3.2em; }
.footer .uicon.icon-facebook { background-position: -3.2em 0; }
.footer .uicon.icon-facebook:hover, .footer .uicon.icon-facebook:focus { background-position: -3.2em -3.2em; }
.footer .uicon.icon-twitter {background-position: -6.4em 0; }
.footer .uicon.icon-twitter:hover, .footer .uicon.icon-twitter:focus {	background-position: -6.4em -3.2em; }
.footer .uicon.icon-instagram {	background-position: -9.6em 0; }
.footer .uicon.icon-instagram:hover, .footer .uicon.icon-instagram:focus { background-position: -9.6em -3.2em; }
.footer .uicon.icon-drop {	background-position: -12.8em 0; }
.footer .uicon.icon-drop:hover, .footer .uicon.icon-drop:focus { background-position: -12.8em -3.2em; }
.footer .uicon.icon-user {	background-position: -16.0em 0; }
.footer .uicon.icon-user:hover, .footer .uicon.icon-user:focus { background-position: -16.0em -3.2em; }

.footer input[type='text'], .footer input[type='submit']
{
	font-size: 1.2em;
	height: 3.3333333333em;
	padding: 0 1.25em 0 1.25em;
	border: 0;
}
.footer input[type='text']
{
	line-height: 2.0em;
	background-color: #ddd;
	color: #888;
	width: 16.0em;
}

.footer input[type='submit']
{
	font-family: arial black, arial, sans-serif;
	font-weight: 900;
	line-height: 3.3333333333em;
	display: inline-block;
	background-color: #bbb;
	color: #eee;
	text-transform: uppercase;
	text-decoration: none;
	margin-top: 0.6666666667em;
}
.footer input[type='submit']:hover, 
.footer input[type='submit']:focus
{
	background-color: #ccc;
	color: #fff;
}
.footer p
{
	font-size: 1.1em;
	line-height: 1.3em;
	margin-bottom: 0.7272727273em;
}
.footer-sponsors a
{
	display: inline-block;
}
.footer-sponsors a:hover img,
.footer-sponsors a:focus img
{
	opacity: 1.0;
}
.footer-sponsors img
{
	display: inline-block;
	margin: 0 2.6em 1.8em 0;
	opacity: 0.8;
}

.footer-nav { }
.footer-nav ul
{
	display: inline;
	list-style: none;
	margin: 0;
	padding: 0;
}
.footer-nav li
{
	display: inline;
}
.footer-nav li:before
{
	content: '|';
	display: inline;
	font-size: 1.0em;
	line-height: 100%;
	margin: 0 0.8em;
}
.footer-nav li a 
{ 
	display: inline; 
	font-size: 1.0em;
	line-height: 100%;
}

/*	Main Nav
-------------------------------------------------------------- */

.main-nav
{
	/*z-index: 10000;*/
	position: relative;
	min-height: 5.8em;
	margin: 0 0 0 0;
	flex: 1;
}
.main-nav ul
{
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.main-nav li
{
	position: relative;
	border-right: 1px solid #ddd;
}
.main-nav li:first-child
{
	border-left: 1px solid #ddd;
}
.main-nav a
{
	display: table-cell;
	vertical-align: middle;
	padding: 2.0em 0.9166666667em 1.8333333333em 1.0em;
	font-family: Arial, sans-serif;
	color: #555;
	font-size: 1.2em;
	line-height: 100%;
	letter-spacing: 0.04166666667em;
	text-transform: uppercase;
	text-decoration: none;
}

.main-nav ul ul
{
	z-index: 10002;
	display: none;
	float: left;
	position: absolute;
	top: 5.8em;
	left: -1.5em;
	width: 24.4em;	/* ul ul a (214 + 15 + 15) / 10 */
	margin: 0; /* has to sit tight to top level nav, or hover flickers */
	background: #fff url(images/fat-arrow-up.png) no-repeat 0.8em 0.0em;
	background-size: 3.3em 7.5em;
	padding-top: 2.5em;
	min-height: 2.5em;
	border-top: 0;
	border-left: 1.5em solid #fff;
	border-right: 1.5em solid #fff;
	border-bottom: 1.5em solid #fff;
}

.main-nav ul ul.on
{
	background-position: 0.8em -2.5em;
}

.main-nav ul ul ul
{
	left: 100%;
	top: 0;
	padding-top: 0;
	padding-left: 0.4em;
	border-bottom: 0;
}
.main-nav ul ul li
{
	border: 0;
	float: none;
}
.main-nav ul ul li:first-child
{
	border: 0;
}
.main-nav ul ul a
{
	width: 17.8333333333em;	/*(185+14+14) = 214, 214 / 12  */
	padding: 1.0em 1.1666666667em 0.8333333333em 1.1666666667em;
	color: #555;
	letter-spacing: 0.0em;
	border-top: 1px solid #fff;
	background-color: #ddd;
}
.main-nav ul ul li:first-child a
{
	border-top: none;
}

.main-nav ul ul ul li a
{
	border-top: 0;
	border-bottom: 0.5em solid #fff;
}
.main-nav ul ul ul li:first-child a
{
	border-top: 0.1em solid #f00;
}



.main-nav a:hover, .main-nav a:focus
{
	background-color: #aaa !important;
	color: #fff;
}

.main-nav .current_menu_item > a, .main-nav .current_page_item > a
{
	color: #fff;
	background-color: #aaa;
}

.main-nav .current_page_ancestor > a
{
	background-color: #ddd;
}

.main-nav ul li.on
{
	/* Highlight parent when sub nav dropped */
	background-color: #ddd !important;
	color: #fff;
}

.main-nav .menu-item-type-custom a:hover, 
.main-nav .menu-item-type-custom a:focus
{
	/* Highlight external links, like Art Fair*/
	/*background-color: #fff22d !important;
	color: #555;*/
}

/*	Featured Nav
-------------------------------------------------------------- */
.featured-nav-outer
{
	border-top: 0.1em solid #ddd;
	/*border-top: 2.4em solid #fff;*/
	/*background-color: #eeeeee66;*/
}

.main-nav.featured-nav
{
	flex: none;
}

.main-nav.featured-nav ul
{
	justify-content: center; /*flex-end;*/
}

/*	Mobile Nav
-------------------------------------------------------------- */
.mobile-nav
{
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
	display: none;
	z-index: 10000;
}
.mobile-nav-button
{
	position: absolute;
	right: 0;
	top: 0;
	width: 5.8em;
	height: 100%;
	background-color: #ddd;
	color: #555;
	line-height: 5.8em;
	text-align: center;
	text-transform: uppercase;
	cursor: pointer;
	background-image: url(images/mobile-menu-new.png);
	background-position: center center;
	background-repeat: no-repeat;
}
.mobile-nav-button:hover,
.mobile-nav-button:focus
{
	background-color: #aaa;
}

.mobile-nav-donate-button
{
	position: absolute;
	right: 7.2em;
	top: 0;
}

.mobile-menu
{
	display: none;
	position: relative;
	background-color: #ddd;
	text-align: left;
	width: 100%;
}

.mobile-menu a
{
	position: relative;
	display: block;
	padding: 1.1666666667em 1.1666666667em 1.0833333333em 1.1666666667em;
	font-family: Arial, sans-serif;
	color: #555;
	font-size: 1.2em;
	line-height: 100%;
	letter-spacing: 0.08333333333em;
	text-transform: uppercase;
	text-decoration: none;
	border-top: 1px solid #fff;
}

.mobile-menu > ul > li.menu-item-has-children > a:after
{
	content: '';
	display: block;
	position: absolute;
	right: 1.6666666667em;
	top: 0.5833333333em;
	width: 1.6666666667em;
	height: 2.1666666667em;
	background-image: url(images/right-arrow.png);
	background-size: 1.6666666667em 6.5em;
	background-repeat: no-repeat;
	background-position: right;
}

.mobile-menu ul
{
	list-style: none;
	margin: 0;
	padding: 0;
}
.mobile-menu ul li
{
}
.mobile-menu ul li a
{
	font-family: arial black, arial, sans-serif;
	font-weight: 900;
}


.mobile-menu ul ul
{
	display: none;
}
.mobile-menu ul ul li
{
	float: none;
	border: 0;
	padding: 0;
}
.mobile-menu ul li ul li a
{
	font-weight: normal;
	font-family: Arial;
	border-top: 1px solid #eee;
}

.mobile-menu a:hover, .mobile-menu a:focus
{
	background-color: #aaa !important;
	color: #fff;
}
.mobile-menu a:hover:after, .mobile-menu a:focus:after
{
	background-position: 0 -4.3333333333em;
}

.mobile-menu .current_page_ancestor > a
{
	background-color: #ddd;
}

.mobile-menu .current_menu_item > a, .mobile-menu .current_page_item > a
{
	color: #fff;
	background-color: #aaa;
}


/*	Breadcrumb
-------------------------------------------------------------- */

.breadcrumbs
{
	padding: 0;
	margin: 0;
	margin-bottom: 2.4em;
	color: #777;
	background-color: #eee;
	letter-spacing: .02em;
	text-transform: uppercase;
	position: relative;
}

.breadcrumbs .box
{
	display: table-cell;
	background: #fff url(images/title-hatch-back.png) repeat;
	min-height: 3.7em;
	width: 44.0em;
	padding: 1.2em 1.9em 1.2em 1.9em;
	vertical-align: middle;
}

.breadcrumbs a
{
	display: inline-block;
	line-height: 120%;
	color: #999;
	text-decoration: none;
}

.breadcrumbs a:hover,
.breadcrumbs a:focus
{
	color: #111;
	text-decoration: none;
}

.breadcrumbs .separator
{
	color: #999;
	padding: 0 1.0em 0 1.0em;
}

.breadcrumbs strong
{
	font-family: arial, sans-serif;
	font-weight: normal;
	color: #444;
}
.breadcrumbs strong a
{
	color: #444;
}


/*	Pages
-------------------------------------------------------------- */

.page
{
	width: 100%;
	margin: 2.4em 0 0em 0; /* With position sticky header, no need to add margin ---- add height of header 59px + margin below header 38px to top margin */
	position: relative;
}

.page-center
{
	max-width: 110.3em;
	margin: 0 auto;
	text-align: left;
	position: relative;
}

.page-title
{
	background: #888;
	padding: 0;
	margin: 0;
	position: relative;
}

.page-title .box
{
	display: table-cell;
	background: #888 url(images/title-hatch-back.png) repeat;
	min-height: 6.9em;
	width: 44.0em;
	padding: 1.2em 0 1.4em 1.8em;
	position: relative;
	vertical-align: bottom;
}

.page-title .box h1
{
	font-size: 4.5em;
	letter-spacing: -0.0222222222em;
	line-height: 100%;
	font-weight: normal;
	color: #fff;
	margin: 0;
	padding: 0;
}
.page-title .box h2
{
	font-size: 2.2em;
	line-height: 100%;
	font-weight: normal;
	color: #fff;
	margin: 0;
	padding: 0;
}

/*	Content
-------------------------------------------------------------- */

.page-content
{
	position: relative;
	overflow: hidden;
	width: 100%;
}

.page-content-left
{
	position: relative;
	float: left;
	width: 15.6em;
	margin-right: 2.5em;
}

.page-content-right
{
	position: relative;
	float: none;
	width: auto;
	overflow: hidden;
}

.page-content-left img,
.page-content-right img
{
	max-width: 100%;
}

.page-band
{
	position: relative;
	overflow: hidden;
	margin-bottom: 3.9em;
	width: 100%;
}

.content-band
{
	position: relative;
	overflow: hidden;
	margin-bottom: 3.9em;
	width: 100%;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}

.content-band p
{
	font-size: 1.2em;
	line-height: 140%;
	font-weight: normal;
	padding: 0 1.5833333333em 1.25em 1.5833333333em;
	margin: 0;
}
.content-band p:first-child
{
	padding-top: 1.6666666667em;
}

.content-band .title
{
	padding: 1.4em 1.8em;
	border-bottom: 1px solid #ddd;
}
.content-band .section
{
	padding: 2.0em 1.8em;
	border-top: 1px solid #ddd;
}
.content-band .section:first-child
{
	border-top: 0;
}


.content-band .title h3
{
	font-size: 3.6em;
	line-height: 100%;
	font-weight: normal;
	margin: 0;
	padding: 0;
	color: #222;
}

.content-band .title h4
{
	font-size: 1.2em;
	line-height: 120%;
	font-weight: normal;
	margin: 0;
	padding: 0;
	color: #999;
	text-transform: uppercase;
}
.content-band .title h5
{
	font-size: 1.2em;
	line-height: 120%;
	font-weight: normal;
	margin: 0;
	padding: 0;
	color: #555;
	text-transform: uppercase;
	clear: none;
}
.content-band .title h4 strong
{
	font-family: arial black, arial, sans-serif;
	font-weight: 900;
	text-transform: uppercase;
}

/* WordPress Content
-------------------------------------------------------------- */

.post-content
{
}


/* Tabs
-------------------------------------------------------------- */
.scrollWrapper
{
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
}
.scrollWrapper.scrolling
{
	margin-right: 10.0em;
}
.scrollableArea
{
	position: relative;
	width: 99999px;
	height: 100%;
}
.scroll-button
{
	position: absolute;
	background-color: #fff;
	top: 0;
	width: 4.8em;
	height: 5.5em;
	padding: 1.45em 0 0 1.4em;
	border-left: 1px solid #ddd;
	z-index: 20000;
}
.scroll-button.prev
{
	right: 5.5em;
}
.scroll-button.next
{
	right: 0;
}
.scroll-button:after
{
	content: '';
	display: block;
	width: 2.0em;
	height: 2.6em;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 2.0em 7.8em;
}
.scroll-button:hover:after,
.scroll-button:focus:after
{
	background-position: 0 -2.6em;
}
.scroll-button.next:after
{
	background-image: url(images/right-arrow.png?v=1);
}
.scroll-button.prev:after
{
	background-image: url(images/left-arrow.png?v=1);
}
.scroll-button.disabled
{
}
.scroll-button.disabled:after
{
	background-position: 0 -5.2em;
}

.tabs
{
	list-style-type: none;
	display: block;
	margin: 0;
	padding: 0;
	overflow: hidden;
	position: relative;
	white-space: nowrap;
	width: 100%;
}
.tabs-scroll
{
	overflow: hidden;
	margin: 0;
	padding: 0 2.0em;
	position: relative;
	width: 100%;
	height: 5.5em;
	vertical-align: middle;
}
.tabs-scroll-cont
{
	margin-right: 1.4em;
	width: auto;
}
.tabs-scroll-cont.scrolling
{
	margin-right: 10.0em;
	width: auto;	/* important for adjusting right margin when scroll buttons shown */
}

.tabs .tab
{
	display: inline-block;
	margin-right: 1.1666666667em;
	color: #999;
	text-transform: uppercase;
	cursor: pointer;
	font-size: 1.2em;
	line-height: 100%;
}

.tabs .tab, .tabs .tab a
{
	display: inline-block;
	color: #999;
	line-height: 4.5833333333;
}
.tabs .tab.on, .tabs .tab.on a
{
	color: #111;
}
.tabs .tab a:hover,
.tabs .tab a:focus
{
	color: #777;
}
.tabs-cont
{
}
.tab-cont
{
	padding: 2.0em;
}
.tab-cont.big-image img
{
	max-width: 100%;
	height: auto;
}

.tabs-band
{
	position: relative;
	overflow: hidden;
	width: 100%;
}

.tabs-band .tabs-scroll
{
	border: 1px solid #ddd;
	width: 100%;
}
.content-band .tabs-scroll
{
	border-bottom: 1px solid #ddd;
}
.content-band .tabs-band .tabs-scroll
{
	border: 0;
	border-bottom: 1px solid #ddd;
}

/*	Drop Downs
-------------------------------------------------------------- */
.dropdown
{
	display: table;
	background-color: #ddd;
}
.dropdown .icon
{
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	border-left: 1px solid #ddd;
	width: 5.5em;
	height: 4.9em;
}
.dropdown .text
{
	display: table-cell;
	vertical-align: middle;
	font-size: 1.2em;
	line-height: 120%;
	text-transform: uppercase;
	color: #fff;
	padding: 0.6666666667em 1.3333333333em;
}

/*	Content Slider
-------------------------------------------------------------- */
.content-slider
{
	margin: 0 0 1.4em 0;
}
.content-slider-center {}
.content-slider-center.gray { background-color: #eee; }

.content-slider .content
{
	overflow: hidden;
	position: relative;
}
.content-slider .content .item
{
	float: left;
	display: inline-block;
	border-right: 1px solid #fff;
}
.content-slider .content .item img
{
	display: inline-block;
}
.content-slider img.lazy,
.content-slider img.real-lazy 
{ 
	visibility: hidden;
}

.content-slider .slider
{
	position: relative;
	margin-top: 2.0em;
	margin-bottom: 2.0em;
}

.ui-slider
{
	position: relative;
	text-align: left;
}
.ui-slider .ui-slider-handle
{
	position: absolute;
	z-index: 2;
	width: 3.2em;
	height: 3.2em;
	cursor: default;
	-ms-touch-action: none;
	touch-action: none;
	border-radius: 2.0em;
	background-color: #ddd;
}
.ui-slider .ui-slider-range
{
	position: absolute;
	z-index: 1;
	font-size: .7em;
	display: block;
	border: 0;
	background-position: 0 0;
}

/* support: IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle, .ui-slider.ui-state-disabled .ui-slider-range
{
	filter: inherit;
}

.content-slider .slider-wrap
{
	background-color: #eee;
	border-radius: 2.0em;
	padding: 0 3.0em 0 3.0em;
}
.ui-slider-horizontal
{
	height: 3.2em;
	background-color: #eee;
}
.ui-slider-horizontal .ui-slider-handle
{
	height: 3.2em;
	width: 6.0em;
	margin-left: -3.0em;
	background: #c9c9c9 url(images/slider-arrows.png) no-repeat center center;
	background-size: 4.0em 1.4em;
}
.ui-slider-horizontal .ui-slider-range
{
	top: 0;
	height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min
{
	left: 0;
}
.ui-slider-horizontal .ui-slider-range-max
{
	right: 0;
}


/*	Filters
-------------------------------------------------------------- */
.filters
{
}
.filters .filter-drop
{
	display: none;
}
.filters .filter-cont
{
	display: block;
}
.filters ul
{
	list-style: none;
	margin: 0;
	padding: 0;
	border: 1px solid #ddd;
}
.filters ul:not(:last-child)
{
	border-bottom: 0;
}
.filters li
{
	position: relative;
	border-bottom: 1px solid #ddd;
	border-top: 0;
	font-size: 1.2em;
	line-height: 1.1666666667em;
	text-transform: uppercase;
	padding: 0.6666666667em 0.6666666667em 0.6666666667em 1.5em;
}
.filters li.top
{
	padding: 1.5em 1.5em 1.6666666667em 1.5em;
}
.filters li.spacer
{
}
.filters li:last-child
{
	border-bottom: 0;
}
.filters li.group
{
	font-family: arial black, arial, sans-serif;
	font-weight: 900;
}
.filters .info
{
	border: 1px solid #ddd;
	border-top: 0;
	padding: 1.4em 1.8em;
}

.filters.category li
{
	padding: 1.5em;
	min-height: 11.25em;
}



.form ul
{
	list-style: none;
	margin: 0;
	padding: 0;
	border: 0;
}
.form li
{
	position: relative;
	border-top: 1px solid #ddd;
	font-size: 1.2em;
	line-height: 1.1666666667em;
	text-transform: uppercase;
	padding: 1.1666666667em 1.5em 1.1666666667em 1.5em;
	vertical-align: middle;
}
.form ul li .info { width: 20.8333333333em; vertical-align: middle; display: inline-block; text-transform: none; margin-right: 0.8333333333em; }

select {
    height: 3.5em;
    padding: 0 1.1666666667em;
    background-color: #aaa;
    color: #fff;
    vertical-align: middle;
    line-height: 100%;
    text-transform: uppercase;
    border: 0;
}

input[type='text'].field
{
	height: 3.5em;
	padding: 0 1.25em 0 1.25em;
	border: 1px solid #aaa;
	background-color: #fff;
	color: #111;
	vertical-align: middle;
}
input[type='text'].field:disabled
{
	border: 1px solid #ddd;
}
input[type='text'].field.readonly
{
	background-color: #aaa;
	border-left: 1px solid #fff;
	color: #fff;
}

form div.error,
input[type='text'].field.error { border: 1px solid #ea1e1d; }

::-webkit-input-placeholder { /* WebKit, Blink, Edge */
	color: #999;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	color: #999;
	opacity:  1;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
	color: #999;
	opacity:  1;
}
:-ms-input-placeholder { /* Internet Explorer 10-11 */
	color: #999;
}
::-ms-input-placeholder { /* Microsoft Edge */
	color: #999;
}

::placeholder { /* Most modern browsers support this now. */
	color: #999;
}

.messages  
{
	list-style: none;
	margin: 0;
	padding: 0;
	margin-bottom: 2.4em;
}
.messages li { background-color: #eee; color: #111; padding: 1.6666666667em 1.5em; margin-top: 0.8333333333em; font-size: 1.2em; line-height: 120%; text-transform: uppercase; }
.messages li:first-child { margin-top: 0; }
.messages li.error { color: #ea1e1d; }
.messages li.success { color: #057aca; }
.messages li.warning { color: #ff8800; }

.payment-status { }
.payment-status .messages {

}
.payment-status .messages li { background-color: inherit }
.payment-status.busy {
	background: url(images/spinner-boxes.gif) #fff 1.8em bottom no-repeat;	
}
.payment-status.top-border .messages {
	border-top: 1px solid #ddd;
}

.payment-info {
	padding-left: 1.8rem;
	padding-right: 1.8rem;
}
.payment-info h3 {
	padding-left: 0 !important;
	padding-right: 0 !important;
}
.payment-items {
}
.payment-item {
	display: flex;
	align-items: flex-start;
	justify-items: flex-start;
	padding-bottom: 1.5em;
	font-size: 1.2em;
}
.payment-item div:nth-child(1) {
	width: 100%;
	padding-right: 1.5em;
}
.payment-item div:nth-child(2) {
	font-weight: bold;
}


label.field
{
	display: inline-block;
	width: 3.5em;
	background-color: #aaa;
	color: #fff;
	line-height: 3.5em;
	text-align: center;
	font-family: arial black, arial, sans-serif;
	font-weight: 900;
	vertical-align: middle;
}
label.field:disabled
{
	background-color: #ddd;
}
label.field.readonly
{
	background-color: #aaa;
	color: #fff;
}
span.field
{
	white-space: nowrap;
	margin-right: 0.8333333333em;
	vertical-align: middle;	
}

input[type='submit']
{
	display: inline-block;
	line-height: 100%;
	text-transform: uppercase;
	height: 3.5em;
	padding: 0 1.25em 0 1.25em;
	border: 0;
	margin: 0;
	background-color: #ddd;
	color: #fff;
	vertical-align: bottom;
}
input[type='submit'].callout
{
	background-color: #ed2975;
	color: #fff;
}
input[type='submit'].callout:hover,
input[type='submit'].callout:focus
{
	background-color: #d61770;
	color: #fff;
}
input[type='submit'].darkgray
{
	background-color: #aaa;
	color: #fff;
}

a.button
{
	display: inline-block;
	text-transform: uppercase;
	height: 3.5em;
	line-height: 3.5em;
	padding: 0 1.25em 0 1.25em;
	border: 0;
	margin: 0;
	background-color: #888;
	color: #fff;
}
a.button:hover,
a.button:focus
{
	background-color: #777;
}

a.button.callout
{
	background-color: #ed2975;
}
a.button.callout:hover,
a.button.callout:focus
{
	background-color: #d61770;
}

span.callout
{
	color: #ed2975;
}


input[type=checkbox]:not(old)
{
	display: inline-block;
	width   : 1.9166666667em;
	margin  : 0;
	padding : 0;
	opacity : 0;
}
input[type=checkbox]:not(old) + label
{
	display      : inline-block;
	margin-left  : -1.9166666667em;
	padding-left : 1.9166666667em;
	background-image: url(images/icons/icon-dot.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 1.25em 3.75em;
	line-height  : 1.25em;
	height: 1.25em;
	vertical-align: middle;
	cursor: pointer;
}
input[type=checkbox]:not(old):checked + label
{
	background-position : 0 -1.25em;
}
input[type=checkbox]:hover:not(old)+label,
input[type=checkbox]:focus:not(old)+label
{
	background-position : 0 -1.25em;
}
input[type=checkbox]:hover:checked:not(old)+label,
input[type=checkbox]:focus:checked:not(old)+label
{
	background-position : 0 -2.5em;
}
input[type=checkbox].reset:not(old)+label
{
	background-image: url(images/icons/icon-dot-clear.png);
}

input[type=radio   ]:not(old)
{
	display: inline-block;
	width   : 2.6666666667em;
	margin  : 0;
	padding : 0;
	opacity : 0;
}
input[type=radio   ]:not(old) + label{
	display      : inline-block;
	margin-left  : -2.6666666667em;
	padding-left : 2.6666666667em;
	background-image: url(images/icons/icon-radio.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 2.0em 4.0em;
	line-height  : 2.0em;
	height: 2.0em;
	vertical-align: middle;
}
input[type=radio]:not(old):checked + label{
	background-position : 0 -2.0em;
}
input[type=radio]:hover:not(old)+label,
input[type=radio]:focus:not(old)+label
{
	background-position : 0 -2.0em;
}


/*	Icons
-------------------------------------------------------------- */

.icon:after
{
	content: '';
	display: inline-block;
	width: 3.3em;
	height: 3.3em;
	background-size: 3.3em 6.6em;
	background-repeat: no-repeat;
	background-position: 0 0;
}
.icon:hover,
.icon:focus
{
}
.icon:hover:after,
.icon:focus:after,
.icon.on:after
{
	background-position: 0 -3.3em;
}

.icon.email:after
{
	background-image: url(images/icons/icon-email-wh.png);
}
.icon.email.gray:after
{
	background-image: url(images/icons/icon-email.png);
}
.icon.phone:after
{
	background-image: url(images/icons/icon-phone-wh.png);
}
.icon.phone.gray:after
{
	background-image: url(images/icons/icon-phone.png);
}
.icon.phone-callout:after,
.reg .icon.phone:after
{
	background-image: url(images/icons/icon-phone-reg.png);
}
.icon.link:after
{
	background-image: url(images/icons/icon-link-wh.png);
}
.icon.link.gray:after
{
	background-image: url(images/icons/icon-link.png);
}
.icon.drop:after
{
	background-image: url(images/icons/icon-drop.png);
}

.drop-cont
{
}
.drop-cont .drop-inner
{
	border-top: 1px solid #ddd;
	padding: 1.1666666667em 1.5em;
	font-size: 1.2em;
	line-height: 140%;
}

.info-band
{
	width: 100%;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	padding: 1.1666666667em 1.5em;
}

.hero-band { display: table; width: 100%; background-color: #eee; margin-bottom: 2.0em; }
.hero-band .left-col { display: table-cell; min-width: 44.0em; vertical-align: bottom; padding: 2.0em 1.8em; }
.hero-band .right-col { display: table-cell; width: 100%; vertical-align: top; }
.hero-band .right-col img { width: 100%; height: auto; }
.hero-band h3
{
	color: #111;
	font-size: 3.6em;
	line-height: 100%;
	font-weight: normal;
	margin: 0;
	padding: 0;
}
.hero-band h4
{
	color: #111;
	font-size: 1.2em;
	line-height: 120%;
	font-weight: normal;
	text-transform: uppercase;
	margin: 0;
	padding: 0;
}
.hero-band h5
{
	color: #111;
}
@media screen and (max-width: 660px)
{
	.hero-band { display: block; }
	.hero-band .left-col { display: block; min-width: 0; width: 100%; }
	.hero-band .right-col { display: block; }
}

.hero-title { padding-top: 2.0em; }
.hero-title h3,
.grid .hero-title h3
{
	font-size: 4.6em;
	line-height: 100%;
	font-weight: normal;
	color: #111;
	padding: 0 0.3913043478em 0 0.3913043478em;
	margin: 0;
	border: 0;
}
.hero-title h4,
.grid .hero-title h4
{
	font-size: 2.2em;
	line-height: 120%;
	font-weight: normal;
	color: #111;
	text-transform: uppercase;
	padding: 0 0.8181818182em 0 0.8181818182em;
	margin: 0;
	border: 0;
}
.hero-title h3,
.grid .hero-title h3
{
	font-size: 4.6em;
	line-height: 100%;
	font-weight: normal;
	color: #111;
	padding: 0 0.3913043478em 0 0.3913043478em;
	margin: 0;
	border: 0;
}
.hero-title h5,
.grid .hero-title h5
{
	color: #111;
}


/*	Search
-------------------------------------------------------------- */
.search-band
{
	display: none;
	margin-top: -1.4em !important;
	margin-bottom: 2.5em !important;
	padding: 0 1.8em;
}
.search-box
{
	position: relative;
	overflow: hidden;
}
.search-box-left
{
	float: left;
	width: 20.2em;
}
.search-box-center
{
	float: none;
	width: auto;
	margin-left: 20.2em; 
}
.search-band .search-box-center
{
	margin-left: 0;
}
.search-box-right
{
	display: none;
}
.search-box .form { display: block; max-width: 66.2em;	}
.search-band .search-box .form { margin: 0 auto; }


.search-field
{
	position: relative;
	display: inline-block;
	width: 100%; 
	white-space: nowrap;
	padding-right: 4.2em;
}
.search-band .search-field { margin-left: 0; }

.search-field input[type='text'].field
{
	display: inline-block;
	height: 3.5em;
	font-size: 1.2em;
	width: 100%;
	padding: 0 1.25em 0 1.25em;
}
.search-field input[type='submit']
{
	display: inline-block;
	position: absolute;
	right: 0;
	background: #999 url(images/icons/icon-search.png) no-repeat center center;
	color: #fff;
	height: 3.5em;
	width: 3.5em;
	font-size: 1.2em;
}
.search-field input[type='submit']:hover,
.search-field input[type='submit']:focus
{
	background-color: #888;
	color: #fff;
	height: 3.5em;
	width: 3.5em;
	font-size: 1.2em;
}
.search-box h3
{
	font-size: 2.2em;
	line-height: 1.9090909091em;
}

.search-results
{
}
.search-result
{
	margin: 0 0 2.0em 0;
}
a.search-result
{
	display:block;
}
.search-result h3
{
	color: #ed2975;
}
a.search-result:hover h3,
a.search-result:focus h3
{
	color: #d61770;
}
.search-result p
{
	margin: 0;
	padding: 0;
	color: #111;
}
a.search-result:hover p,
a.search-result:focus p
{
	color: #555;
}

/*	Contact Forms
-------------------------------------------------------------- */
.contact-form {}
.contact-form .title { color: #fff; padding: 2.0em 1.8em; border-bottom: 1px solid #fff; }
.contact-form .title h3 { color: #fff; }
.contact-form .cont { overflow: hidden; display: table; width: 100%; }
.contact-form .fields { display: table-cell; padding: 1.5em 1.8em; width: 100%; }
.contact-form .fields .field { margin-bottom: 1.0em; }
.contact-form .fields .field:last-child { margin-bottom: 0; }
.contact-form .fields .field.error input[type='text'],
.contact-form .fields .field.error textarea { }
.contact-form .buttons { display: table-cell; padding: 1.5em 1.8em 1.5em 0; vertical-align: bottom; }
.contact-form .t1, .contact-form .t2 { display: none; }

.contact-form input[type='text'], .contact-form input[type='submit'], textarea
{
	font-size: 1.2em;
	padding: 0 1.25em 0 1.25em;
	border: 0;
}
.contact-form input[type='text'], .contact-form input[type='submit']
{
	height: 3.3333333333em;
}
.contact-form input[type='text'], textarea
{
	background-color: #fff;
	color: #999;
	width: 100%;
}
.contact-form textarea { padding-top: 0.4166666667em; }
.contact-form input[type='submit']
{
	font-family: arial black, arial, sans-serif;
	font-weight: 900;
	line-height: 100%;
	display: inline-block;
	background-color: #888;
	color: #eee;
	text-transform: uppercase;
}
.contact-form input[type='submit']:hover, .contact-form input[type='submit']:focus
{
	background-color: #777;
	color: #fff;
}

/*	Site Index
-------------------------------------------------------------- */
.site-index ul
{
	margin-bottom: 2.0em;
}
.site-index li
{
}
.site-index a
{
	display: block;
	font-family: arial, sans-serif;
	font-size: 1.2em;
	line-height: 200%;
	text-transform: uppercase;
	text-decoration: none;
}

/*	Google Maps
-------------------------------------------------------------- */
#map-canvas
{
	height: 100%;
	width: 100%;
	margin: 0px;
	padding: 0px;
}

/*	Object Specializations
-------------------------------------------------------------- */

.default .grid .col1 { background-color: #eee; border-right: 0; width: 44.0em; min-width: 44.0em }
.default .grid .col2 { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; border-left: 0; }
.default .grid .col1 img { width: 100%; height: auto; }
.default .grid .col1 .caption-band { padding: 2.0em 4.0em 2.0em 2.0em; }
.default .grid .col1 .caption-band .caption {
	color: #999;
	font-size: 2.3em;
	line-height: 110%;
	margin-bottom: 0.2608695652em;
}	
.default .grid .col1 .caption-band .title {
	color: #999;
	font-size: 1.2em;
	line-height: 120%;
	text-transform: uppercase;
	border: 0;
	padding: 0;
}	
.default .grid .col1 .caption-band .description {
	color: #999;
	font-size: 1.2em;
	line-height: 140%;
}	
.default .post-content
{
	min-height: 17.9em;	/* 250 - height of h3 section */
}

/* Classes */
.classes .list-band .col3.col-cont
{
	padding-top: 3.2em;
}

.classes .list-band.cat-4 .col1,
.classes .list-band.cat-4 .col2 
{
	background-color: #dfe8f6;		/* Visiting Artist Workshop classes */
}
.classes .list-band.cat-4:hover .col1,
.classes .list-band.cat-4:hover .col2,
.classes .list-band.cat-4:focus .col1,
.classes .list-band.cat-4:focus .col2 
{
	background-color: #cad8ec;
}

/* Class Instructors Tab */
.instructor .name { text-transform: uppercase; padding: 1.6666666667em 1.8em; margin-bottom: 1.6666666667em; background-color: #eee; }
.instructor .name h4 { color: #111; padding: 0; margin: 0; }
.instructor .name h5 { color: #999; padding: 0; margin: 0; }

.instructor .info { display: table; width: 100%; margin-bottom: 2.0em; }
.instructor .info .bio { display: table-cell; width: 100%; vertical-align: top; }
.instructor .info .bio p { padding: 0 1.5em 0 0; }
.instructor .info .img { display: table-cell; min-width: 18.0em; vertical-align: top; }

/* Rentals */
.rentals .list-band:hover .col1, 
.rentals .list-band:hover .col2,
.rentals .list-band:focus .col1, 
.rentals .list-band:focus .col2
{
	background-color: #eee;	/* can't click on these so don't highlight */
}

/* Events */
.sub-grid { display: table; table-layout: fixed; width: 100%; height: 11.0em; min-height: 11.0em; }
.sub-grid .sub-col { display: table-cell; border-right: 1px solid #fff; vertical-align: top; padding: 1.6666666667em 1.0em 0 1.0em; text-transform: uppercase; }
.sub-grid .sub-col:last-child { border-right: 0; }
.sub-grid .sub-col.mo { min-width: 4.3333333333em; width: 4.3333333333em; text-align: right; 	font-family: arial black, arial, sans-serif; font-weight: 900; font-size: 1.2em; line-height: 120%; }
.sub-grid .sub-col.dow { min-width: 3.8333333333em; width: 3.8333333333em;  font-size: 1.2em; line-height: 120%; }
.sub-grid .sub-col.day { width: 100%; font-size: 9.6em; line-height: 80%; padding: 0.2083333333em 0 0 0.0729166667em;}
.sub-grid .sub-col.day .info { font-size: 0.1041666667em; line-height: 120%; margin: 1.0em 0.8em 0 0.8em; }
.sub-grid .sub-col.day .info p { margin: 0; padding: 0; }

.event .form ul { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; }
.event .form ul li { border-top: 0; }
.event .form ul li .info { width: 10.0em; vertical-align: middle; display: inline-block; text-transform: none; }


/* Exhibitions */
.exhibition .content-slider .item
{
	border-right: 4.0em solid transparent;
}
.exhibition .content-slider .item:last-child
{
	border-right: 0;
}
.exhibition .grid .columns .column.column1 { min-width: 60%; width: 60%; }
.exhibition .grid .columns .column.column2 { min-width: 40%; width: 40%; padding-top: 2.0em; }
.exhibition .grid .columns .column.column2 h5 { margin-bottom: 1.6666666667em; }

.exhibitions .sub-grid { height: 16.0em; min-height: 16.0em; }

.exhibitions.past .col1
{
	padding: 2.0em 1.8em;
}

/* Blog Articles */
/*.article .grid .columns .column.column1 { min-width: 60%; width: 60%; }
.article .grid .columns .column.column2 { min-width: 40%; width: 40%; padding-top: 2.0em; }
.article .grid .columns .column.column2 h5 { margin-bottom: 1.6666666667em; }
*/
.articles .sub-grid { height: 16.0em; min-height: 16.0em; }

.articles .col.col1
{
	width: 44.0em;
	min-width: 44.0em;
}
.articles .col.col2
{
}

.articles p.excerpt {
	margin-top: 1.8em;
}

.article .flex-vert {
	height: 100%;
    display: flex;
    flex-flow: column;
}

.article .image-block {
	flex: 1 1 auto;
}

.article .person-block {
	flex: 0 1 auto;
	padding: 2.0em;
}

.article .person {
	font-style: italic;
}

.article .person-title {
	margin-bottom: 1.8em;
}

.article .person-bio {
	margin-bottom: 1.8em;
}

.article .person-image img {
	width: 19.5em;
	max-width: 19.5em;
}

.article .content-person-block {
	margin-top: 2.0em;	
	padding: 2.0em;
	border-top: 1px solid #ddd;
}
.article .content-person-block .person-image img {
	width: 30%;
	max-width: 19.5em;
}

/* Calls */
.calls .sub-grid { height: 16.0em; min-height: 16.0em; }
.calls .sub-grid .sub-col { padding: 1.5em 0.8em; }
.calls .sub-grid .sub-col.text { min-width: 7.5em; width: 7.5em; font-size: 1.2em; line-height: 120%; }
.calls .sub-grid .sub-col.date { width: 100%; font-size: 1.2em; line-height: 120%; font-family: arial black, arial, sans-serif;	font-weight: 900; }

/* Contact Us */
.contact-us .list-band.grid .col3 { background-color: #ddd; }

/* Sponsors */
.inline-sponsors {	display: inline-block; }
.inline-sponsors span {	display: inline-block;	margin: 0 2.6em 1.8em 0; }
.inline-sponsors a:hover img, .inline-sponsors a:focus img { opacity: 0.8; }
.inline-sponsors img { display: inline-block; opacity: 1.0; }

.sponsors { padding-top: 2.0em; /*margin-top: 2.0em; */ border-bottom: 1px solid #ddd; border-right: 1px solid #ddd; background-color: #fff; }
.sponsor .grid .col1 .caption-band { background-color: #fff; border-right: 1px solid #ddd; }
.sponsor-grid { display: table; table-layout: fixed; border: 0; width: 100%; margin: 0; padding: 0; }
.sponsor-grid .sponsor-col { display: table-cell; padding: 1.4em; text-align: center; vertical-align: middle; border: 0; border-right: 1px solid #ddd; border-bottom: 1px solid #ddd; }
.sponsor-grid .sponsor-col:last-child { border-right: 0; }
.sponsor-grid .sponsor-row { display: table-row; width: 100%; }
.sponsor-grid .sponsor-row:last-child .sponsor-col { border-bottom: 0; }
.sponsor-grid .sponsor-col img { max-width: 100%; height: auto; }

.event-sponsors-band {
	margin-bottom: 1.8rem;
}
.event-sponsors-label {}
.event-sponsors-label-cont {
	position: absolute; 
	top: 0; 
	left: 0; 
	right: 0; 
	bottom: 0; 
	display: flex; 
	align-items: center; 
	flex-flow: row; 
	justify-content: flex-end;
}
.event-sponsors {
	padding: 1.8rem 1.8rem 0 1.8rem;
}
@media screen and (max-width: 880px) {
	.event-sponsors-label {
		padding-bottom: 3.6rem !important;
	}
	.event-sponsors-label-cont {
		justify-content: flex-start;	
	}
}

/* Testimonials */
.testimonials .item { display: table; width: 100%; background-color: #eee; margin-bottom: 2.0em; }
.testimonials .item .item-col1 { display: table-cell; min-width: 16.0em; border-right: 1px solid #fff; vertical-align: top; }
.testimonials .item .item-col2 { display: table-cell; width: 100%; vertical-align: top; }

/*	Generic
-------------------------------------------------------------- */

.pad { padding: 1.4em 1.8em; }

.no-border { border: 0 !important; }
.no-border-top { border-top: 0 !important; }
.no-border-bot { border-bottom: 0 !important; }
.no-border-left { border-left: 0 !important; }
.no-border-right { border-right: 0 !important; }

.no-pad { padding: 0 !important; }
.no-pad-top { padding-top: 0 !important; }
.no-pad-bot { padding-bottom: 0 !important; }
.no-pad-left { padding-left: 0 !important; }
.no-pad-right { padding-right: 0 !important; }

.no-marg { margin: 0 !important; }
.no-marg-top { margin-top: 0 !important; }
.no-marg-bot { margin-bottom: 0 !important; }
.no-marg-left { margin-left: 0 !important; }
.no-marg-right { margin-right: 0 !important; }

.upper { text-transform: uppercase !important; }


/*	Responsive
-------------------------------------------------------------- */

@media screen and (max-width: 360px)
{
	/* Move day under month */
	.sub-grid { display: block; height: auto; }
	.sub-grid .sub-col { display: block; border: 0; }
	.sub-grid .sub-col.mo { float: left; margin-bottom: 0.3333333333em; }
	.sub-grid .sub-col.dow { float: left; display: none; }
	.sub-grid .sub-col.day { float: none; }
}

@media screen and (max-width: 460px)
{
	/* Shrink day font size */
	.sub-grid .sub-col.dow { display: none; }
	.sub-grid .sub-col.day { width: 100%; font-size: 5.0em; line-height: 80%; padding: 0.4em 0 0 0.14em;}
	.sub-grid .sub-col.day .info { font-size: 0.2em; line-height: 120%; margin-left: 0; }
	/*.sub-grid .sub-col.day { display: block; border-top: 1px solid #fff; }*/
}

@media screen and (max-width: 660px)
{
	.footer .footer-sponsors
	{
		display: none;
	}
	
	.footer-col.footer-newsletter
	{
		max-width: 24.7em;
		min-width: 0;
		border-right: 0;
	}
	.footer-col.footer-newsletter input[type='text']
	{
		width: 100%;
	}
}

@media screen and (max-width: 880px)
{
	.header
	{
		min-width: 100%;
		position: relative;
		border-bottom: 0;
		height: 5.8em;
	}

	.page
	{
		margin-top: 3.9em;
	}

	.mobile-nav
	{
		display: block;
	}

	.mobile-menu
	{
		display: none;
	}

	.main-nav
	{
		display: none;
	}
	
	.featured-nav-outer
	{
		display: none;
	}
	
	/* Hide art fair */
	.footer .footer-right
	{
		display: none;
	}
}

@media screen and (max-width: 1102px)
{
	/* Hide header utility nav icons */
	.header .util-nav .util-icons
	{
		display: none;
	}
	/* Show utility nav in footer */
	.footer .footer-util-nav
	{
		display: block;
	}
}

@media screen and (max-width: 1065px)
{
	/* Hide header utility nav icons and buttons */
	.header .util-nav
	{
		display: none;
	}

	.main-nav ul,
	.main-nav.featured-nav ul
	{
		justify-content: flex-end;
	}	
}

@media screen and (max-width: 424px)
{
	/* Hide mobile donate button */
	.mobile-nav-donate-button
	{
		display: none;
	}
}


.band { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; width: 100%; }
.band:last-child {  border-bottom: 0; }
.band p { font-size: 1.2em; line-height: 120%; text-transform: uppercase; padding: 1.6666666667em 1.5em; margin: 0; }
.band p:first-child { padding: 1.6666666667em 1.5em; margin: 0; }

.text-band { font-size: 1.2em; line-height: 120%; text-transform: uppercase; padding: 1.6666666667em 1.5em; margin: 0; }

.bands { }
.bands .band {  border-bottom: 0; }
.bands .band:last-child {  border-bottom: 1px solid #ddd; }

.icon-band { display: table; width: 100%; position: relative; cursor: pointer; }
.icon-band .icon-col { display: table-cell; border-right: 1px solid #ddd; position: relative; vertical-align: middle; }
.icon-band .icon-col:last-child { border-right: 0; }
.icon-band .icon-col.icon { 	width: 6.5em; height: 6.5em; text-align: center; }
.icon-band .icon-col.right-align { border-right: 0; border-left: 0; }
.icon-band .icon-col p { padding: 0 1.1666666667em; }
.icon-band .icon-col.text { font-size: 1.2em; line-height: 120%; text-transform: uppercase; height: 5.3333333333em; padding: 0 1.5em; color: #999; }

.icon-band.short .icon-col.icon { 	width: 5.5em; height: 5.5em; text-align: center; }
.icon-band.short .icon-col.text { font-size: 1.2em; line-height: 100%; text-transform: uppercase; height: 4.5833333333em; padding: 0 1.5em; color: #999; }

a.list-band .icon-band .icon-col.text,
a.icon-band .icon-col.text,
.icon-band a.icon-col.text { color: #999; }

a.list-band:hover .icon-band .icon-col.text,
a.icon-band:hover .icon-col.text,
.icon-band a.icon-col.text:hover,
a.list-band:focus .icon-band .icon-col.text,
a.icon-band:focus .icon-col.text,
.icon-band a.icon-col.text:focus { 	color: #555; }

.list-bands.with-icon a.icon-band:hover .icon-col.icon,
a.list-band:hover .icon-band.dark-hover .icon-col.icon,
a.icon-band.dark-hover:hover .icon-col.icon,
.list-bands.with-icon a.icon-band:focus .icon-col.icon,
a.list-band:focus .icon-band.dark-hover .icon-col.icon,
a.icon-band.dark-hover:focus .icon-col.icon { background-color: #ddd; }

a.list-band:hover .icon-band .icon-col.icon:after,
a.icon-band:hover .icon-col.icon:after,
a.list-band:focus .icon-band .icon-col.icon:after,
a.icon-band:focus .icon-col.icon:after {	background-position: 0 -3.3em;  }

.sticky-container,
.sticky-container1 { padding-bottom: 8.5em; /* 65 for each band + 20px top margin */ }
.sticky-container2 { padding-bottom: 15.0em; }
.sticky-container3 { padding-bottom: 21.5em; }
.sticky-bottom { position: absolute; bottom: 0; left: 0; right: 0; }

.bands.sticky-bottom .band:last-child { border-bottom: none; }

.grid { display: table; table-layout: fixed; width: 100%; position: relative; }
.grid .col { display: table-cell; border-right: 1px solid #ddd; overflow: hidden; position: relative; vertical-align: top; }
.grid .col:last-child { border-right: 0; }
.grid .col.col1 { width: 44.0em; min-width: 44.0em; }
.grid .col.col2 { }
.grid .col.col3 { }
.grid .col.flexy { width: 100%; min-width: 100%; }

.grid h3, .grid h6 { padding: 0.9090909091em 0.8181818182em 0.6818181818em 0.8181818182em; margin: 0; border-top: 1px solid #ddd;  }
.grid h3:first-child { border-top: 0;  }
.grid h3.section { background-color: #aaa; color: #fff;	border: 0; min-height: 3.1818181818em; padding: 0.9090909091em 0.8181818182em 0.6818181818em 0.8181818182em; margin: 0; }
.grid h6 { border-top: 0; }
.grid h6:not(:first-child) { padding-top: 0; }
.grid h4, 
.grid h5 { padding: 0 1.5em; border-top: 0;  }
.grid h5 { color: #999; }
.grid p { padding: 0 1.5em 1.6666666667em 1.5em; margin: 0; font-size: 1.2em; line-height: 140%; }

.grid .columns { border: 0; margin: 0; border-bottom: 1px solid #ddd; display: table; width: 100%; }
.grid .columns .column { display: table-cell; border: 0; border-right: 1px solid #ddd; min-width: 33%; width: 33%; vertical-align: top; }
.grid .columns .column:last-child { border-right: 0; width: 100%; }

.grid .tab-cont { padding-right: 0; }
.grid .col-cont { padding: 2.0em 0 2.0em 2.0em; }
.grid .unbreaky { }
.grid .nohide { }

.list-bands {}
.list-bands p { padding: 0 1.5em 1.6666666667em 1.5em; margin: 0; font-size: 1.2em; line-height: 120%; }
.list-bands p:first-of-type { padding-top: 1.6666666667em; }
.list-bands table p:first-of-type { padding-top: 0; }

.list-band { margin-bottom: 2.0em; }
.list-band .col img { width: 100%; height: auto; }
.list-band h3,
.list-band h4, 
.list-band h5, 
.list-band h6 { padding: 0; border-top: 0;  }
.list-band h5 { color: #111;  }
.list-band .col-cont { padding: 1.8em 0.8em 0.8em 1.8em; }
.list-band .col-cont p { padding: 0 0 1.1666666667em 0; }

a.list-band { color: #111; }
a.list-band:hover, a.list-band:focus { color: #111; }
a.list-band:hover .col, a.list-band:focus .col { background-color: #ddd; }
a.list-band:hover .col.flexy, a.list-band:focus .col.flexy { background-color: #fff; }

.list-bands .col { background-color: #eee; border: 0; border-right: 1px solid #fff; }
.list-bands .col.flexy { background-color: #fff; border: 1px solid #ddd; border-left: 0; border-right: 0; }

.list-bands .sticky-container,
.list-bands .sticky-container1 { padding-bottom: 6.5em; /* 65 for each band + 0px top margin */ }
.list-bands .sticky-container2 { padding-bottom: 13.0em; }
.list-bands .sticky-container3 { padding-bottom: 19.5em; }

.list-bands.wide {}
.list-bands.narrow {}
.list-bands.narrow-50 {}
.list-bands.narrow-75 {}
.list-bands.medium {}

.list-bands.narrow .col.col1 { width: 18.0em; min-width: 18.0em; }
.list-bands.narrow .col.col2 { width: 26.0em; min-width: 26.0em; }

.list-bands.narrow.with-icon .col.col2 { width: 19.5em; min-width: 19.5em; }
.list-bands.narrow.with-icon .col.col3 { width: 6.5em; min-width: 6.5em; border-right: 0; }
.list-bands.narrow.with-icon .col.col3 .band.icon-band { border-top: 1px solid #fff; }
.list-bands.narrow.with-icon.short .col.col2 { width: 20.5em; min-width: 20.5em; }
.list-bands.narrow.with-icon.short .col.col3 { width: 5.5em; min-width: 5.5em; border-right: 0; }

.list-bands.narrow-50 .col.col1 { width: 22.0em; min-width: 22.0em; }
.list-bands.narrow-50 .col.col2 { width: 22.0em; min-width: 22.0em; }

.list-bands.narrow-75 .col.col1 { width: 25.0em; min-width: 25.0em; }
.list-bands.narrow-75 .col.col2 { width: 19.0em; min-width: 19.0em; }

.list-bands.medium .col.col1 { width: 26.0em; min-width: 26.0em; }
.list-bands.medium .col.col2 { width: 26.0em; min-width: 26.0em; }


.list-bands.wide .col.col1 { width: 44.0em; min-width: 44.0em; }
.list-bands.wide .col.col2 { width: 26.0em; min-width: 26.0em; }

.columns-2 { }
.columns-3 .col.col2 { width: 50%; min-width: 50%; }
.columns-3 .col.col3 { width: 50%; min-width: 50%; }

.col-layout { overflow: hidden; width: 100%; }
.col-layout .col-left { float: left; text-align: left; white-space: nowrap; }
.col-layout .col-center { text-align: center; }
.col-layout .col-right { float: right; text-align: right; white-space: nowrap; }

ul#emma-form-elements li.emma-form-row { width: 100% !important; }
ul#emma-form-elements .emma-form-label { float: none !important; display: none !important; }
ul#emma-form-elements .emma-form-input { float: none !important; width: 100% !important;}
.spinner { background: url(images/spinner.gif) #fff center no-repeat !important; }


/* Hide this because it creates a gap at the top above the header */
#powrIframeLoader { display: none; }
			
@media screen and (max-width: 440px)
{
	.grid .col.col1 { width: 100%; min-width: 100%; }
}

@media screen and (max-width: 560px)
{
	/* Class list bands - Stack col2 under col1 */
	.classes .list-band .col.col1,
	.classes .list-band .col.col2 { display: block; border-right: 0; min-width: 0; width: 100% }
}

@media screen and (max-width: 660px)
{
	/* Stack all breakable columns vertically */
	.grid { display: block; }
	.grid .col:not(.unbreaky) { display: block; border-bottom: 1px solid #ddd; border-right: 0; min-width: 0; width: 100%; }
	.grid .col:not(.unbreaky):last-child { border-bottom: 0; }

	/* Wide list bands - Cell 1,2 gets flexy */
	.list-bands.wide .col.col1,
	.list-bands.wide .col.col2,
	.list-bands.wide .col.col3		
		{ display: block; border-right: 0; min-width: 0; width: 100%; }

	/* Hide list band details */		
	.list-bands .grid .col.flexy:not(.nohide) { display: none; }
	
	/* Hide filters */
	.page-content-left 
	{ 
		float: none;
		width: 100%;
		margin-right: 0;
		margin-bottom: 2.0em;
	}	
	
	/* Stack filter groups side by side */
	.filters .filter-drop { display: block; }
	.filters .filter-cont {	display: none; }
	.filters { overflow: hidden; border-bottom: 1px solid #ddd; }
	.filters ul { float: left; width: 50%; border-left: 0; border-bottom: 0; }
	.filters ul:last-child { border-right: 0; }
	.filters ul li.top { display: none; }
	.filters ul li.spacer { display: none; }

	.filters.category { border-top: 1px solid #ddd; border-bottom: 1px solid #ddd; }
	.filters.category ul { border: 0; width: 100%; }
	.filters.category ul li { min-height: 0; }	
}

@media screen and (max-width: 880px)
{
	/* Stack all breakable columns vertically */
	.grid { display: block; }
	.grid .col:not(.unbreaky) { display: block; border-bottom: 1px solid #ddd; border-right: 0; min-width: 0; width: 100%; }
	.grid .col:not(.unbreaky):last-child { border-bottom: 0; }	
	/* Last unbreakable col gets no right border */
	.grid .col.unbreaky.last { border-right: 0; }
	/* Flexy cell drops below all others */
	.grid .col.flexy:not(.unbreaky) { display: block; min-width: 0; width: 100%; border: 0;  }
	/* Narrow list bands - Cell 2 gets flexy */
	.list-bands.narrow .col.col2,
	.list-bands.narrow.with-icon .col.col2,
	.list-bands.narrow.with-icon.short .col.col2 { width: 100%; min-width: 0; }
	/* Narrow-50 list bands - Cell 1 gets flexy */
	.list-bands.narrow-50 .col.col1 { width: 100%; min-width: 0; }
	/* Narrow-75 list bands - Cell 2 gets flexy */
	.list-bands.narrow-75 .col.col2 { width: 100%; min-width: 0; }
	/* Medium list bands - Cell 2 gets flexy */
	.list-bands.medium .col.col2 { width: 100%; min-width: 0; }
	/* Wide list bands - Cell 1,2 gets flexy */
	.list-bands.wide .col.col1,
	.list-bands.wide .col.col2
		{ border-bottom: 0; border-right: 0; }
	.list-bands .grid .col:not(.unbreaky):last-child {  border-bottom: 1px solid #ddd; }
}

@media screen and (max-width: 950px)
{
	/* Stack all breakable columns vertically */
	.list-bands.wide .grid { display: block; }
	.list-bands.wide .col:not(.unbreaky) { display: block; border-bottom: 1px solid #ddd; border-right: 0; min-width: 0; width: 100%; }
	.list-bands.wide .col:not(.unbreaky):last-child { border-bottom: 0; }	
	/* Wide list bands - Cell 2 gets flexy */
	.list-bands.wide .col.col2 { width: 100%; min-width: 0; }
	.list-bands.wide .col.col3 { border-bottom: 1px solid #ddd; }
	.list-bands.wide .grid .col:not(.unbreaky):last-child {  border-bottom: 1px solid #ddd; }
}

@media screen and (max-width: 1123px)
{
	/* Right pad tab containers, cell containers when less than max width (1103 - ~scrollbar width)*/
	.grid .tab-cont { padding-right: 2.0em; }
	.grid .col-cont { padding-right: 2.0em; }
}
