.geobase-list.loading, .geobase-filterlist.loading {
	position: relative;
}

.geobase-list.loading:before, .geobase-filterlist.loading:before {
	display: block;
	content: " ";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(255,255,255,0.75);
	z-index: 15;
}

.geobase-list.loading:after, .geobase-filterlist.loading:after {
	width: 50px;
	height: 50px;
	font-size: 50px;
	line-height: 50px;
	text-align: center;
	position: absolute;
	top: 75px;
	left: 50%;
	margin-left: -25px;
	content: "\f110";
	font-family: "FontAwesome";
    -webkit-animation: fa-spin 1.5s infinite linear;
    animation: fa-spin 1.5s infinite linear;
	z-index: 16;
}

.geobase-list article { 
	margin-bottom: 10px; 
	padding: 10px; 
}

.geobase-filterlist.filterlist-horizontal option {
    display: none; /* Hide the ugly options that show up before select2 gets enabled */
}

.filterlist-horizontal { }
.filterlist-horizontal .filterlist-available { display: table; table-layout: fixed; width:100%; border-collapse: separate;}
.filterlist-horizontal .geobase-filter { display: table-cell; float: none; width: 30%; padding-right: 10px; }

.filterlist-horizontal .geobase-filter.geobase-filter-submit {
		width:10%;
		vertical-align:bottom;
		padding-bottom:20px;
		text-align:right;
		padding-top: 43px;  /* This is a temporary hack to make the search button line up */
	}

.filterlist-horizontal  #clear-filters-wrapper{ display:none; }
.filterlist-horizontal  form{ display:inline; }
.filterlist-horizontal input { box-sizing:border-box; }

body .select2-container-multi .select2-choices{ border:0; background:none;}
body .select2-container-multi .select2-choices .select2-search-choice{ background: rgba(240,255,240,1); padding: 9px 5px 9px 18px;}
body .select2-container-multi.select2-container-active .select2-choices{border:0; box-shadow:none; background-color: #f7f8fa; outline: none;}
body .select2-container-multi .select2-search-choice-close {left:3px;top:8px;}
body .select2-drop-active{ border-color:#f7f8fa; }
body .select2-container.select2-container-multi{ 
		display: block;
		min-height: 40px;
		line-height: 40px;
		padding: 0;
		margin-bottom: 14px;
		font-size: 1em;
		color: #5c6b80;
		border-radius: 3px;
		vertical-align: middle;
		box-shadow: none;
		border: 0;
		width: 100%!important;
		max-width: 400px;
		font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
		background-color: #eaedf2;
		-webkit-transition: background-color 0.24s ease-in-out;
		transition: background-color 0.24s ease-in-out;
		background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAHCAYAAADXhRcnAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpEOEZCMjYxMEYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpEOEZCMjYxMUYwNUUxMUUyOTI4REZGQTEzMzA2MDcyNiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQ4RkIyNjBFRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2IiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkQ4RkIyNjBGRjA1RTExRTI5MjhERkZBMTMzMDYwNzI2Ii8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+Vxkp9gAAAI9JREFUeNpidHFxucHAwKAOxE+AmJmBMPgLxDJAfJMFSKwD4kqoAClgA+P///8ZXF1dPaCGcBKh6QcQB+3evXs7WDMIAA2QB1I7gFgDj0aQFz2BGh+AOEwwUaDAQyBlCMR7cGjcC5KHaQQBuM3IAOiKTiBVhiTUDdRUhq4Oq2aoAelAahIQ5wM1zsCmBiDAADhYMJXVZ9u9AAAAAElFTkSuQmCC);
		background-repeat: no-repeat;
		background-position: 97.5% center;
}

.filterlist-horizontal h2{ font-size:inherit; font-weight:bold; line-height:inherit; white-space:nowrap; overflow:hidden; text-overflow: ellipsis;}

.filterlist-vertical {
	clear: both;
}
.filterlist-vertical label {
	display: block;
}
.directory-filter-more {
	display: none;
}
.filterlist-vertical .geobase-filter-text{
	min-height: 40px;
	margin-bottom: 10px;
	max-width: 400px;
}

.filterlist-vertical .geobase-filter-text #search_directory{ 
	width: 85%;
	float: left;
	margin-right: 0px;
	box-sizing: border-box;
}
.filterlist-vertical .geobase-filter-text #geobase-submit{ 
	float: right;
	width: 15%;
	height: 40px;
	margin: 0px;
	color: #FFFFFF;
	background-color: #666666;
	border-radius: 0px;
	box-sizing: border-box;
}

.filterlist-horizontal #geobase-submit{ 
	float: right;
	height: 40px;
	color: #FFFFFF;
	background-color: #666666;
	border-radius: 0px;
	box-sizing: border-box;
}

.filterlistbox .filters {
	margin-left: 10px;
}

.filterlistbox .filtered-by-title {
	font-size: 1.75em;
    line-height: 1.4em;
    margin-bottom: 0.375em;
    margin-right: 15px;
}

.filterlistbox .filtervalue {
    background-color: #EEEEEE;
    padding: 2px 6px;
    border: 1px solid #5c6b80;
    border-radius: 4px;
    margin-right: 5px;
}

.geobase-filter .filter-display-show {
	padding: 3px 0px 9px 18px;
}

/* remove unnecessary select2 search style */
.select2-search { display: none; }

/* RESPONSIVE FILTERS */
@media (max-width: 767px){
	.filterlist-horizontal .filterlist-available, .filterlist-horizontal .geobase-filter{ display:block; width:100%;}	
}

@media (max-width: 480px) {
	.filterlist-horizontal .geobase-filter.geobase-filter-submit {
		width: 100%;
		padding-top: 10px;		
		margin-bottom: 10px;
	}
	.filterlist-horizontal #geobase-submit {
		width: 100%;				
	}
}

/*
	geobase group gtxcel_fixedfield_type will automatically place the 
	choice type as a class in a div wrapper around the content.  These
	are placeholders for custom css styling for those wrappers
*/

.geobase-list .gtx_geobase_a_level { 
	background: #f7f0d4;
	border-bottom: solid 2px #dcd9ca;
}

.gtx_geobase_b_level {

}

.gtx_geobase_c_level {

}


.geobase-images-wrapper {
	margin-bottom: 24px;
}
.geobase-images-wrapper .geobase-image-row {
	line-height: 0px;
	margin-bottom: 10px;
	text-align: center;
}
.geobase-images-wrapper .geobase-image-row.single {
	text-align: left;
}

.geobase-images-wrapper .geobase-image-row .geobase-image {
	display: inline-block;
	/* don't specify padding as that will ruin the layout algorithm */
	/* margin left/right is defined programmatically in geobase.php */
	margin-top: 0px;
	margin-bottom: 0px;
}
.geobase-images-wrapper .geobase-image-row.single .geobase-image {
	max-width: 50%;
}
.geobase-images-wrapper .geobase-image-row .geobase-image img {
	width: 100%;
	display: block;
}

div.geo-field {
	margin: 10px 0;
}

div.geo-field p {
	margin: 0;
}
.geobase-wrapper .crop .inner-thumb-wrap {
	overflow: hidden;
	position: relative;
	height: 0;
	width: 100%;
}

.geobase-wrapper .inner-thumb-wrap .post-thumb {
	overflow: hidden;
	object-fit: cover;
	object-position: 50% 50%;
}

.geobase-wrapper .crop .inner-thumb-wrap .post-thumb {
	/*
	** post thumb crop is handled by core for cross browser compatibility
	display: block;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	position: absolute;
	height: 100%;
	*/
}

/* Geobase Details page classes. */

/* Caption for custom geobase image fields. */
.geobase-post figure.geo-field-type-custom-image {
	display: table; 
	margin-top: 16px;
}

.geobase-post figure.geo-field-type-custom-image .geo-caption {
	margin: 0 0 5px; 
	line-height: 1.2;
	font-size: 90%;
	display: table-caption;
	caption-side: bottom;
}