/*** Listings ***/
.listings {margin-bottom: 30px;}
.listings .loading {display: block; width: 100%; text-align: center; padding: 15px 0;}
.listings a i.fa.fa-map-marker {margin-left: 4px;}

/* begin: google maps */
.listings a.showgmap {color: #37424a; font-size: 18px; font-style: italic; font-weight: 700;}
.listings .showgmap.isOpen, .listings.map-open .showgmap.isClosed {display:none;}
.listings .showgmap.isClosed, .listings.map-open .showgmap.isOpen {display:inline-block;}
.listings a.showgmap.pad-geo {margin-left: 30px;}

.listings .gMapContainer { padding: 0 0.938rem; }
.listings .listingDetailContainer .gMapDetail { margin-top: 30px; }
.listings .listingDetailContainer .gMapContainer { padding: 0; }
.listings .gMapContainer .gMapHolder { height: 300px; display:none; padding: 0 0.938rem; }
.listings .listingDetailContainer .gMapContainer .gMapHolder { height: 480px; display:none; padding: 0; }
.listings .gMapContainer.open .gMapHolder { display:block; }
.listings .gMapContainer .gMapHolder img { max-width:none; } /* foundation overwrite for info window close button */

.listings .nodata {padding: 30px; text-align: center; font-size: 20px; font-style: italic;}

.listings .item .img {position: relative; display: block;}
.listings .item .featured {display: none; position: absolute; left: -20px; top: -3px;}
.listings .item.priority .featured {display: inline-block;}
/* end: google maps */

/*** Filters ***/
.listings .listingFilterContainer .row .columns {margin-bottom: 15px;}
.listings .listingFilterContainer input[type="text"], .listings .listingFilterContainer input[type="text"]:focus, .listings .listingFilterContainer input[type="text"]:active {
	background: #fff; 
	border-radius: 4px;
	border-width: 1px;
	border-style: solid;
	box-shadow: none;
	outline: 0;
	font-size: 16px;
	transition: none;
	margin: 0;
	height: 40px;
	line-height: 22px;
}
.listings .listingFilterContainer .select2-choice {height: 40px; line-height: 36px;}

.listings .listingFilterContainer #label_amenities {
	background: #fff;
	border-width: 1px;
	border-style: solid;
	padding: 8px 12px;
	text-transform: uppercase;
	height: 40px;
	font-size: 16px;	
}
.listings .listingFilterContainer #label_amenities.close {
	border-bottom: none;
}
.listings .listingFilterContainer #label_amenities:after {
	position: absolute;
	top: -3px;
	right: 25px;
	content: "+";
	font-size: 32px;
	font-weight: 400;
}
.listings .listingFilterContainer #label_amenities.close:after {content: "-";}
.listings .listingFilterContainer .amenityContainer {
	padding: 0px 10px;
}
.listings .listingFilterContainer .amenityContainer ul { 
	display: none; 
	background: #fff;
	border-width: 0px 1px 1px 1px;
	border-style: solid;
	padding: 10px;
}
.listings .search-container .amenities label {
	font-size: 12px;
	margin-right: 0;
}

.listings .sortByContatiner #label_sort {display: inline-block; color: #37424a; font-size: 18px; font-style: italic; padding-right: 5px;}
.listings .sortByContatiner .sortby {display: inline-block; color: #1b5686; font-size: 18px; font-weight: 700; font-style: italic;}
.listings .sortByContatiner .sortby.selected {color: #37424a; cursor: default;}
.listings .sortByContatiner span.sep {padding: 0 5px;}
/*** End Filters ***/

.listings .listingPager {text-align: right;}
.listings .listingPagerContainer a {display: inline-block; margin: 0 3px 0 0; color: #f1ede1; font-size: 20px; line-height: 50px; text-align: center; }
.listings .listingPagerContainer a.disabled {color: #ccc; cursor: default; visibility: hidden; }
.listings .listingPagerContainer .pageText {display: inline-block; padding: 0 10px; font-size: 16px; font-style: italic; line-height: 27px; }
.listings .listingPager.prv { float: left; margin-left: 20px; }
.listings .listingPager.nxt { float: right; margin-right: 20px; }


.listings .filter-paging .special-pager { width: 250px; display: inline-block; margin: 0px auto; line-height: 50px; }
.listings .filter-paging .special-pager .listingPager { float: none !important; }
.listings .filter-paging .special-pager a {display: inline-block; margin: 0 3px 0 0; color: #1b5686; font-size: 20px; line-height: 27px;}
.listings .filter-paging .special-pager a.disabled {color: #ccc; cursor: default;}
.listings .filter-paging .special-pager .filter-showing { display: inline-block; padding: 0 10px; font-size: 16px; font-style: italic; line-height: 27px; }


.nav-pager.special-top .special-pager { float: right; }
.nav-pager.special-top .alphaSort { float: left; }
.nav-pager.special-top .alphaSort a {
	margin: 0px 5px;
	color: #1B5686;
	font-size: 18px;
}
.nav-pager.special-top .alphaSort a.selected { color: #37424a; font-weight: bold; }
.listingContainer .nav-pager.special-top { height: 40px; }
.listingContainer .nav-pager.special-top .listingPager.moreLink { visibility: hidden !important; }


/*** detail ***/
.listingDetailContainer .accordion {margin-bottom: 15px;}
.listingDetailContainer .accordion dd > a, .listingDetailContainer .accordion dd.active > a, 
	.listingDetailContainer .accordion .accordion-navigation > a, .listingDetailContainer .accordion .accordion-navigation.active > a {
	background-color: #f0ece0; 
	border-width: 1px; 
	border-style: solid; 
	position: relative;
	font-size: 18px;
}
.listingDetailContainer .accordion dd > a:hover, .listingDetailContainer .accordion dd.active > a:hover {background-color: #f0ece0;}
.listingDetailContainer .accordion dd > a i.arrow {position: absolute; right: 16px; top: 20px;}
.listingDetailContainer .accordion dd > a i.arrow:before {content: "\f078"; font-size: 20px; }
.listingDetailContainer .accordion dd.active > a i.arrow:before {content: "\f077"; }
.listingDetailContainer .accordion .accordion-navigation > .content.active, .listingDetailContainer .accordion dd > .content.active {background: none; padding-bottom: 0;}

.listingDetailContainer .accordion-navigation .content.active h5 {font-size: 20px; font-weight: 700; text-transform: uppercase;}
.listingDetailContainer .amenity-content ul {list-style: none; margin-left: 0;}
.listingDetailContainer .amenity-content ul li {font-size: 16px; font-style: italic; padding-left: 0; padding-right: 0;}
.listingDetailContainer .amenity-content li i {margin-left: 10px;}
.listingDetailContainer .amenity-content li span.val {font-weight: 700;}

.listingDetailContainer .detailtabs dd {margin-right: 30px; min-width: 86px;}
.listingDetailContainer .detailtabs dd:last-child {margin-right: 0;}
.listingDetailContainer .detailtabs dd a {background: none; color: #37424a; font-size: 20px; font-style: italic; font-weight: 700; padding: 0; text-align: center;}
.listingDetailContainer .detailtabs dd a:hover {background: none;}
.listingDetailContainer .detailtabs dd.active a {background: none; color: #1b5686; cursor: default; }
.listingDetailContainer .detailtabs dd .arrow {display: none; text-align: center; line-height: 16px;}
.listingDetailContainer .detailtabs dd.active .arrow {display: block;}

.twitter-embed {background-color: #fff; border: 1px solid #cccccc; border-radius: 4px; max-width: 520px;}
.twitter-embed .header { border-bottom: 1px solid #e8e8e8; padding: 5px 10px; }
.twitter-embed .header h5 {color: #292f33; font-size: 24px;}
.twitter-embed .date { font-style: italic; }
.twitter-embed .tweets { height: 400px; overflow-y: scroll; padding: 10px; }
.twitter-embed .tweet { padding: 10px; margin-bottom: 10px !important; border: 1px solid #e8e8e8; border-radius: 4px; }
.twitter-embed .twitter-links { text-align: right; }
.twitter-embed .twitter-links .action {
	background-image: url('/includes/public/assets/images/twitter-sprite.png');
	width: 16px;
	height: 16px;
	display: inline-block;
	margin-right: 2px;
	position: relative;
	top: 2px;
}
.twitter-embed .twitter-links .action.reply { background-position: 0 0; }
.twitter-embed .twitter-links .action.retweet { background-position: -80px 0; }
.twitter-embed .twitter-links .action.favorite { background-position: -32px 0; }
.twitter-embed .twitter-links a { text-decoration: none; }
.twitter-embed .twitter-links a .text:hover { text-decoration: underline; }

/*** TRIPADVISOR TAB ***/
.tripadvisorReviews {font-style: italic;}
.tripadvisorReviews a {color: #1b5686; font-style: normal;}
.tripadvisorReviews .tripadvisorHeader { font-size: 16px; overflow: hidden; margin-bottom: 10px; padding-bottom: 10px; }
.tripadvisorReviews .tripadvisorHeader .tripLeft { float: left; }
.tripadvisorReviews .tripadvisorHeader .tripRight { float: right; position: relative;  top: 23px; }
.tripadvisorReviews .tripadvisorHeader .ranking { font-weight: 700; margin-bottom: 10px;}
.tripadvisorReviews .tripadvisorHeader .ratingLine { margin-bottom: 10px; line-height: 20px; }
.tripadvisorReviews .tripadvisorHeader .ratingLine img { margin-right: 5px;}
.tripadvisorReviews .tripadvisorHeader .ratingLine span {position: relative; top: 2px;}
.tripadvisorReviews .tripadvisorHeader ul.subratings {margin: 0 0 10px; list-style: none; font-size: 14px;}
.tripadvisorReviews .tripadvisorHeader ul.subratings li {margin: 0; list-style: none; height: 20px; line-height: 20px;}
.tripadvisorReviews .tripadvisorHeader ul.subratings li img {margin-right: 5px;}
.tripadvisorReviews .reviewBoxTitle { font-size: 20px; font-weight: bold; margin-bottom: 15px; }
.tripadvisorReviews .review { overflow: hidden; padding-bottom: 10px; margin-bottom: 10px; font-size: 16px; }
.tripadvisorReviews .review .userInfo { float: left; width: 100px;   }
.tripadvisorReviews .review .userInfo .userName { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.tripadvisorReviews .review .userInfo .userLocation {font-size: 14px;}
.tripadvisorReviews .review .reviewInfo { margin-left: 120px; }
.tripadvisorReviews .review .reviewTitle { font-size: 20px; font-weight: bold; margin-bottom: 5px; }
.tripadvisorReviews .review .reviewScore { margin-bottom: 5px; }
.tripadvisorReviews .review .reviewText { margin-bottom: 10px; }

/*** YELP TAB ***/
.yelpReviews {font-style: italic;}
.yelpReviews a {color: #1b5686; font-style: normal;}
.yelpReviews .yelpHeader { padding-bottom: 0.625rem; border-bottom: 1px solid #eee; margin-bottom: 0.625rem; }
.yelpReviews .yelpHeader .yelpRight { font-size: 0.875rem;}
.yelpReviews .yelpHeader .yelpLeft .ratingLine { margin-bottom: 0.625rem;}
.yelpReviews .yelpHeader .yelpLeft .ratingLine img {margin-right: 5px;}
.yelpReviews .yelpHeader .yelpLeft .ratingLine span {position: relative; top: 2px;}
.yelpReviews .review { padding-bottom: 0.625rem; border-bottom: 1px solid #eee; margin-bottom: 0.625rem;}
.yelpReviews .review .userInfo { font-weight: bold; font-size: 0.750rem; margin-bottom: 0.625rem;}
.yelpReviews .review .userInfo img { margin-bottom: 0.188rem;}
.yelpReviews .review .reviewScore { font-size: 0.875rem; margin-bottom: 0.313rem; }
.yelpReviews .review .reviewScore img { position: relative; top: 0.188rem;}
.yelpReviews .review .reviewText { margin-bottom: 0.625rem; }


/*** small mobile ***/
@media only screen and (max-width: 26em) { 
	.detailmap.mapTabs li, .detailmap.mapTabs li a {font-size: 16px;}
	
	.listingDetailContainer .detailtabs dd {margin-right: 20px; min-width: 60px;}
	.listingDetailContainer .detailtabs dd a {font-size: 16px;}
	.listingDetailContainer .detailtabs dd .arrow img {width: 60px;}
}

/*** mobile ***/
@media only screen and (max-width: 40em) { 
	.listings .listingPager {text-align: center;}
	.listings .item .img-container {text-align: center;}
	.listings .listingDetailContainer .gMapContainer { padding: 0; margin-top: 0; margin-bottom: 30px; }
	.listings .listingDetailContainer .gMapContainer .gMapHolder { height: 300px; }
	.tripadvisorReviews .tripadvisorHeader .tripLeft { float: none; width: 100%; }
	.tripadvisorReviews .tripadvisorHeader .tripRight { float: none; width: 100%; top: 0; margin-bottom: 10px; }

	.listings .listingPager.moreLink { width: 120px; background-size: contain; line-height: 40px; font-size: 16px; }
	.listings .filter-paging .special-pager { width: 220px; display: block; }
	.nav-pager.special-top .special-pager { float: none; }
}

/*** small tablet? ***/
@media only screen and (min-width: 40em) and (max-width: 52em) { 
	.detailmap.mapTabs li, .detailmap.mapTabs li a {font-size: 16px;}

	.listingDetailContainer .detailtabs dd {margin-right: 20px; min-width: 60px;}
	.listingDetailContainer .detailtabs dd a {font-size: 16px;}
	.listingDetailContainer .detailtabs dd .arrow img {width: 60px;}

	.listings .filter-paging .special-pager { width: 220px; }
}

/*** tablet ***/
@media only screen and (min-width: 40.063em) and (max-width: 64em) { 
	.tripadvisorReviews .tripadvisorHeader .tripLeft { float: none; width: 100%; }
	.tripadvisorReviews .tripadvisorHeader .tripRight { float: none; width: 100%; top: 0; margin-bottom: 10px; }
}

/*** desktop ***/
@media only screen and (min-width: 64.063em) { 	
	.mediaGallery .gallery-dots ul {padding-top: 22px;}

	.yelpReviews .yelpHeader .yelpLeft {float: left;}
	.yelpReviews .yelpHeader .yelpRight {float: right;}
}