/* Namespace all css here with .customMapPoints */

.customMapPoints{
	position: relative;
	padding-top: 40px;
	padding-bottom: 18px;
}
.customMapPoints img { max-width:none; }

.customMapPoints .gMapHolder{
	position: relative;
	width: 100%; 
	height: 780px;
}
.customMapPoints .gMapContainer{ position: relative; }

.customMapPoints .map-header{
	position: relative;
	width: 100%;
}
.customMapPoints .mapboxgl-popup-content {
	border-radius: 5px;
}
.customMapPoints .mapboxgl-popup-close-button {
	padding: 2px 6px;
	color: black;
	z-index: 2;
}
.customMapPoints .mapboxgl-popup-close-button:hover {
	background-color: #fff;
}
.customMapPoints .mapboxgl-popup-close-button:focus {
	background-color: transparent;
}
.customMapPoints .mapboxgl-ctrl-group button {
	margin-bottom: 0px;
}
.customMapPoints .mapboxgl-ctrl-group button[disabled] {
	background-color: white;
	border-color: white;
}
.customMapPoints .mapboxgl-ctrl-group button:focus {
	background-color: rgba(0, 0, 0, 0.1);
}
.customMapPoints ul.mapTabs{
	position: absolute;
	top: -45px;
	left: 0;
	margin: 0;
	padding: 0;
	font-family: 'Embedded-DINWebPro-Bold', 'DIN Next W01 Bold', Arial, sans-serif;
	font-size: 28px;
	line-height: 32px;
	width: 100%;
	z-index: 10;
}
.customMapPoints ul.mapTabs li{
	display: inline-block;
	color: #000;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: 100%;
}

.customMapPoints .coordinates{
	position: absolute;
	bottom: 0;
	font-size: 17px;
	line-height: 20px;
	color: #fff;
	font-family: 'Embedded-DINWebPro', 'DIN Next W01 Regular', Arial, sans-serif;
}
.customMapPoints .coordinates .coordinates-details {
	font-size: 16px;
	letter-spacing: 0.1px;
}

.customMapPoints .weather{
	padding: 4px 20px;
	float: left;
	background-color: #333;
	position: relative;
	font-family: 'Embedded-DINWebPro-Medium', 'DIN Next W01 Medium', Arial, sans-serif;
	font-size: 21px;
	line-height: 42px;
	color: #fff;
}
.customMapPoints .weather .icon {
	float: left;
	margin-right: 2px;
	width: 30px;
	height: 42px;
}
.customMapPoints .weather .temp { float: left; }

.customMapPoints .coordinates-info{
	background-color: #333;
	padding: 10px 25px 30px;
}
.customMapPoints .coordinates .coordinates-title {
	font-family: 'Embedded-DINWebPro-Medium', 'DIN Next W01 Medium', Arial, sans-serif;
	font-size: 21px;
	line-height: 24px;
}
.customMapPoints .gMapContainer img[src='https://maps.gstatic.com/mapfiles/api-3/images/google4.png']{
	display: none !important;
}

/* 
-------------------------------------------------
info window
-------------------------------------------------
*/
.customMapPoints .gMapContainer .info-window{
	position: relative;
	width: 100%;
	max-width: 220px;
	padding-bottom: 5px;
}
/* @T289064 - width adjustment for displaying fnugg data */
.customMapPoints .gMapContainer .info-window.has-fnugg {
	max-width: 310px;
}
.customMapPoints .gMapContainer .info-window-int{
	position: relative;
	width: auto;
	margin: 0;
}
.customMapPoints .gMapContainer .info-window img{
	max-width: 100%;
}
.customMapPoints .gMapContainer .info-window .image {
	position: relative;
	height: 171px; /* @T286510 setting height on img container to allow infowindows to open at full height while image loads */
}
.customMapPoints .gMapContainer .info-window .image .tag {
  position: absolute;
  z-index: 10;
  top: 2px;
  right: 0;
  padding: 3px 6px 1px;
  background: #333;
  color: #fff;
  font-size: 12px;
  line-height: 12px;
  font-family: 'Embedded-DINWebPro', 'DIN Next W01 Regular', Arial, sans-serif;
  text-transform: uppercase;
  opacity: 0.5;
}
.customMapPoints .sv_infoWindow .info-box{
	height: auto !important;
}

/** override **/
.customMapPoints .gMapContainer .gm-iv-address {
	height: 56px;
}
.customMapPoints .gMapContainer .gm-style .gm-style-iw,
.customMapPoints .gMapContainer .gm-style-iw > div{
	overflow: visible !important;
}
.customMapPoints .gMapContainer .info-window .title{
	padding-bottom: 5px;
	padding-right: 10px;
	font: 20px/24px 'Embedded-DINWebPro-Medium', 'DIN Next W01 Medium', Arial, sans-serif;
	color:#000;
}
.customMapPoints .gMapContainer .info-window .desc{
	padding-bottom: 22px;
	font: 14px/20px 'Embedded-DINWebPro', 'DIN Next W01 Regular', Arial, sans-serif;
}
.customMapPoints .gMapContainer .info-window .more-link{
	font-family: 'Embedded-DINWebPro-Bold', 'DIN Next W01 Bold', Arial, sans-serif;
	font-weight: normal;
	text-decoration: underline;
	color: #039eba;
}

@media only screen and (max-width: 1024px){
	.customMapPoints{margin: 0 auto;}
	.customMapPoints .gMapHolder{
		height:697px;
		max-height: calc(100vh - 148px); /* @T250600 leave room for menu and toolbars */
	}
	.customMapPoints ul.mapTabs{position: static;}
	.customMapPoints ul.mapTabs li{white-space: initial;}
}
@media only screen and (max-width: 640px){
	.customMapPoints{padding: 16px 0;}
	.customMapPoints .coordinates{width: 100%;}

	.customMapPoints .coordinates-info{padding: 10px 8px 30px;}
	.customMapPoints .weather{padding:0 4px; min-width: 110px;}

	.customMapPoints .weather,
	.customMapPoints .coordinates .coordinates-title {font-size: 18px;}
	.customMapPoints .coordinates{font-size: 15.5px; line-height: 24px;}
}




/**********************************/
/* Event/Listing Detail style map */
/**********************************/

.customMapPoints.poiMap-detail_style {
	padding: 0;
	margin-bottom: 35px;
}

.customMapPoints.poiMap-detail_style .gMapHolder {
	height: 572px;
}

.customMapPoints.poiMap-detail_style .streetview-container,
.customMapPoints.poiMap-detail_style .streetview-holder {
	display: none;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

.customMapPoints.poiMap-detail_style.street-view-active .streetview-container,
.customMapPoints.poiMap-detail_style.street-view-active .streetview-holder {
	display: block;
	z-index: 2;
}

.customMapPoints.poiMap-detail_style ul.mapTabs {
	max-width: 1236px; /* toolbar fits in 12-col grid */
	padding: 0 18px;
	position: relative;
	top: auto;
	left: auto;
	margin: 0 auto 5px;
	color: #151515;
	font-family: 'Embedded-DINWebPro-Medium', 'DIN Next W01 Medium', Arial, sans-serif;
	font-size: 20px;
}

.customMapPoints.poiMap-detail_style ul.mapTabs li {
	display: inline-block;
	color: #000;
	overflow: visible;
	width: auto;
}

.customMapPoints.poiMap-detail_style ul.mapTabs li.mapTab {
	margin-right: 18px;
}

/* inactive tab */
.customMapPoints.poiMap-detail_style.street-view-active .mapTabs .mapTab a,
.customMapPoints.poiMap-detail_style .streetTab a
 {
	color: #988e99;
	font-weight: normal;
	cursor: pointer;
}

/* active tab */
.customMapPoints.poiMap-detail_style .mapTab a,
.customMapPoints.poiMap-detail_style.street-view-active .streetTab a {
	cursor: default;
	color: #000;
}

.customMapPoints.poiMap-detail_style .tabFooter li ul {
	padding: 17px 16px;
	overflow: hidden;
	position: absolute;
	display: none;
	z-index: 5;
}

.customMapPoints.poiMap-detail_style ul.mapTabs li ul li {
	display: block;
	margin-right: 0;
	margin-bottom: 8px;
	font-size: inherit;
}

.customMapPoints.poiMap-detail_style ul.mapTabs li.unavailable {
	display: none;
}


/*@T235931 - Weather Tab and How To Tab and media queries
/* are specific to listing and event map dropdowns
*/

/* Weather Map Tab */

/* TODO: determine what this is */
#sv-mobile-weather-widget {
	display: none;
}

.customMapPoints.poiMap-detail_style ul.mapTabs .weatherTab {
	visibility: hidden; /* hide until weather is loaded */
	margin-left: 20px; /* specs call for starting in the 4th column, approximating bc translations make the width of the preceeding elements unpredictable */
	color: #151515;
	font-family: 'Embedded-DINWebPro-Medium', 'DIN Next W01 Medium', Arial, sans-serif;
}
.customMapPoints.poiMap-detail_style ul.mapTabs .weatherTab.loaded {
	visibility: visible;
	cursor: pointer;
}

.customMapPoints.poiMap-detail_style ul.mapTabs .weatherTab  .icon {
	height: 32px;
	overflow: visible;
}

.customMapPoints.poiMap-detail_style ul.mapTabs .weatherTab  .icon img {
	margin-top: -18px; /* icon images have frames larger than the available space */
}

.customMapPoints.poiMap-detail_style .weatherTab  .titleDate {
	display: inline-block;
	font-family: 'Embedded-DINWebPro-Bold', 'DIN Next W01 Bold', Arial, sans-serif;
	vertical-align: bottom;
	width: 200px;
	text-align: right;
}

.customMapPoints.poiMap-detail_style .detailMapWeatherContainer {
	display: inline-block;
}

.customMapPoints.poiMap-detail_style .detailMapWeatherContainer .icon {
	display: inline-block;
	position: relative;
	bottom: -6px;
}

.customMapPoints.poiMap-detail_style .detailMapWeatherContainer .temp {
	display: inline-block;
	vertical-align: bottom;
}

.customMapPoints.poiMap-detail_style .weather-container {
	display: inline-block;
	position: relative;
}

.customMapPoints.poiMap-detail_style .weatherTab .weather-container .sv-weather-widget-icon {
	padding-right: 30px;
	background-image: url("../../../listings/virtuals/assets/toggle-filters-open.png");
	background-position: right 46%;
	background-repeat: no-repeat;
	cursor: pointer;
}

.customMapPoints.poiMap-detail_style .weatherTab.active .sv-weather-widget-icon {
	background-image: url("../../../listings/virtuals/assets/toggle-filters-close.png");
}

.customMapPoints.poiMap-detail_style .weatherTab .weather-container .forecast {
	display: none;
	position: absolute;
	z-index: 5;
	background: white;
	overflow: hidden;
	right: -25px;
	padding: 17px 16px;
	margin: 0;
	min-width: 275px;
	font-family: 'Embedded-DINWebPro-Medium', 'DIN Next W01 Medium', Arial, sans-serif;
	line-height: 1.3;
	box-shadow: rgba(0,0,0,0.1) 0px 3px 4px;
	cursor: default;
}

.customMapPoints.poiMap-detail_style .weatherTab.active .weather-container .forecast {
	display: block;
}

.customMapPoints.poiMap-detail_style .weatherTab .weather-container .forecast li {
	display: block;
	margin-right: 0;
	margin-bottom: 6px;
	font-size: inherit;
}

.customMapPoints.poiMap-detail_style .weather-container .forecast .date {
	display: block;
	font-family: 'Embedded-DINWebPro-Bold', 'DIN Next W01 Bold', Arial, sans-serif;
}

.customMapPoints.poiMap-detail_style .weather-container .forecast .text {
	display: inline-block;
	white-space: nowrap;
	text-transform: capitalize;
}
.customMapPoints.poiMap-detail_style .weather-container .forecast .text:after {
	content: ', ';
}

.customMapPoints.poiMap-detail_style .weather-container .forecast .temp {
	/*float: right;*/
}

.customMapPoints.poiMap-detail_style .sv-weather-widget-icon img {
	width: 50px;
}

/* END -- Weather Map Tab */

/* HowTo Tab */

.customMapPoints.poiMap-detail_style div .howToTab {
	margin-left: 100px; /* approximating position from comps/specs */
	font-family: 'Embedded-DINWebPro-Medium', 'DIN Next W01 Medium', Arial, sans-serif;
	position: relative;
}

.customMapPoints.poiMap-detail_style div .howToTab:not(.loaded) {
	visibility: hidden;
}

.customMapPoints.poiMap-detail_style .howToTab > a {
	padding-right: 27px;
	background-image: url("../../../listings/virtuals/assets/toggle-filters-open.png");
	background-position: right center;
	background-repeat: no-repeat;
	color: #000;
	font-weight: normal;
	cursor: pointer;
}

.customMapPoints.poiMap-detail_style .howToTab.active > a {
	background-image: url("../../../listings/virtuals/assets/toggle-filters-close.png");
}

/* the dropdown box */
.customMapPoints.poiMap-detail_style .howToTab .howtogethere {
	display: none;
	position: absolute; 
	padding: 17px 16px;
	top: 26px;
	left: -10px;
	margin: 5px 0 0 -6px;
	min-width: 375px;
	height: auto;
	background-color: #fff;
	color: #000;
	list-style-type: none;
	box-shadow: rgba(0,0,0,0.1) 0px 3px 4px;
}
.customMapPoints.poiMap-detail_style .howToTab.active .howtogethere {
	display: block;
}
.customMapPoints.poiMap-detail_style .howToTab .howtogethere ol {
	margin: 0;
	padding: 0;
}
.customMapPoints.poiMap-detail_style .howToTab .howtogethere li,
.customMapPoints.poiMap-detail_style .howToTab .howtogethere li a {
	display: block;
	color: inherit;
	font-family: 'Embedded-DINWebPro-Medium', 'DIN Next W01 Medium', Arial, sans-serif;
	font-size: inherit;
}

.customMapPoints.poiMap-detail_style .howToTab .howtogethere .transportation {
	display: block;
	margin-right: 0;
	margin-bottom: 0;
	font-family: 'Embedded-DINWebPro-Bold', 'DIN Next W01 Bold', Arial, sans-serif;
}

.customMapPoints.poiMap-detail_style .howToTab .howtogethere .place {
	padding-right: 90px;
	max-width: 280px;
	white-space: normal;
}

.customMapPoints.poiMap-detail_style .howtogethere .distance {
	float: right;
}

/* END -- HowTo Tab */

.customMapPoints.poiMap-detail_style ul.mapTabs li ul li.external {
	margin-top: 1em;
}

.customMapPoints.poiMap-detail_style li.external {
	margin-top: 10px;
}

.customMapPoints.poiMap-detail_style li.external a {
	color: #ed3426;
	text-decoration: none;
	border-bottom: 2px solid;
	padding-bottom: 1px;
	font-family: 'Embedded-DINWebPro-Bold', 'DIN Next W01 Bold', Arial, sans-serif;
	line-height: 35px;
}

/* ----------- @T289064 - fnugg snow data --------- */

/* snow report infowindow */

.poiMap .fnugg-container {
	padding-top: 18px;
	padding-bottom: 18px;
	display: none; /* hide on mobile by default */
	min-height: 204px;
}

.poiMap .fnugg-info {
	position: relative;
}

.poiMap .show-fnugg-data .fnugg-container {
	display: block;
}

.poiMap .show-fnugg-data .image {
	display: none;
}

.poiMap .mobile-fnugg-toggle {
	display: block;
}

.poiMap .show-fnugg-data .mobile-fnugg-toggle {
	visibility: hidden;
}

.poiMap .show-fnugg-data .fnugg-mobile-hide-button {
	position: absolute;
	top: -8px;
	right: 0;
	font-size: 30px;
	line-height: 1;
	display: block;
}

@media (min-height: 650px) and (min-width: 480px) {
	.poiMap .fnugg-container {
		display: block;
	}
	.poiMap .mobile-fnugg-toggle {
		display: none;
	}
}

.poiMap .fnugg-container .spinner {
	margin: 62px auto;
}

.poiMap .fnugg-container.columns.medium-12 {
	padding: 16px 0 0;
	min-height: 185px;
}
/* weather */
.poiMap .fnugg-container .conditions {
	width: 28%;
	float: left;
	border-right:1px solid #dadada;
	text-align:center;
	padding:0 12px 0 0;
}
.poiMap .fnugg-container .temp {
	position: relative;
	display: inline-block;
	color: #00b8db;
	font-size: 36px;
	line-height: 1;
	font-family: 'Embedded-DINWebPro-Bold','DIN Next W01 Bold', Arial, sans-serif;
}
.poiMap .fnugg-container .temp.is-positive {
	color: #ed3426;
	font-size: 46px;
}
.poiMap .fnugg-container .temp.is-double-digits {
	font-size: 36px;
}
.poiMap .fnugg-container .temp-unit {
	font-size: 50%;
	font-family: 'Embedded-DINWebPro', 'DIN Next W01 Regular', Arial, sans-serif;
	vertical-align: super;
}

.poiMap .fnugg-container .conditions .desc {
	font-size: 13px;
	line-height: 15px;
	margin-bottom: 8px;
}
.poiMap .fnugg-container .icon img  {
	height: 50px;
	width: 60px;
	margin-bottom: 4px;
}
/* snow */
.poiMap .fnugg-container .snow-report {
	width: 72%;
	float: left;
	padding:0 0 0 6px;
}
.poiMap .fnugg-container .snow-title {
	color:#00b8db;
	font-size: 14px;
	line-height: 1;
	font-family: 'Embedded-DINWebPro-Bold','DIN Next W01 Bold', Arial, sans-serif;
	padding-bottom: 8px;
	text-transform: uppercase;
	padding-left: 6px;
}

.poiMap .fnugg-container .snow-report .row {
	margin-left: 0;
	margin-right: 0;
}

.poiMap .fnugg-container .snow-report .columns {
	padding: 0 6px;
}

.poiMap .fnugg-container .snow-report .columns:last-child {
	padding-right: 0;
}


.poiMap .fnugg-container .snow-report .text {
	font-size: 19px;
	line-height: 1;
	padding-bottom: 4px;
}
.poiMap .fnugg-container .snow-report .snow-label {
	text-transform: uppercase;
	font-size: 12px;
	line-height: 15px;
	padding-bottom: 14px;
}

.poiMap .fnugg-container .snow-label-icon {
	float: left;
	margin-right: 4px;
	width: 24px;
	height: 24px;
	margin-left: -16px;
}

.poiMap .fnugg-container .slope-quality-text {
	display: inline-block;
	width: 71px; /* play nice with floated icon */
}

@media only screen and (max-width: 1024px) {
	.customMapPoints.poiMap-detail_style {
		padding-bottom: 48px;
	}
	
	.customMapPoints.poiMap-detail_style ul.mapTabs--full-controls {
		position: absolute;
		bottom: 0;
	}
	
	.customMapPoints.poiMap-detail_style ul.mapTabs--full-controls .mapTab,
	.customMapPoints.poiMap-detail_style ul.mapTabs--full-controls .streetTab {
		display: none;
	}
	
	.customMapPoints.poiMap-detail_style {
		max-width: 100%;
	}
	
	.customMapPoints.poiMap-detail_style ul.mapTabs {
		padding: 0 calc(18px + 8.3333%);
	}
	
	.customMapPoints.poiMap-detail_style ul.mapTabs .weatherTab {
		margin-left: 0;
		float: right;
	}
	.customMapPoints.poiMap-detail_style .weatherTab .titleDate {
		width: auto;
	}
	.customMapPoints.poiMap-detail_style .mapTabs .howToTab {
		float: left;
		margin-left: 0;
	}
}

@media only screen and (max-width: 680px) {
	.customMapPoints.poiMap-detail_style .gMapHolder {
		height:602px;
	}
	.customMapPoints.poiMap-detail_style ul.mapTabs {
		padding: 0;
		font-size: 14px;
	}
	
	.customMapPoints.poiMap-detail_style ul.mapTabs > li {
		padding: 0 18px;
	}
	.customMapPoints.poiMap-detail_style .mapTabs .howToTab {
		position: absolute;
	}
	.customMapPoints.poiMap-detail_style .mapTabs .howToTab.active {
		width: 100%;
	}
	.customMapPoints.poiMap-detail_style .howToTab .howtogethere {
		min-width: initial;
		left: 0;
		top: auto;
		margin: 0;
		padding: 0;
		box-shadow: none;
	}
	.customMapPoints.poiMap-detail_style .howToTab.active .howtogethere {
		width: 100%;
		padding: 0 18px 20px;
	}
	.customMapPoints.poiMap-detail_style .howToTab .howtogethere .place {
		padding-right: 0;
	}
	.customMapPoints.poiMap-detail_style .weatherTab.active .weather-container {
		position: static;
	}
	.customMapPoints.poiMap-detail_style .weatherTab.active .weather-container .forecast {
		margin-left: 0;
		margin-right: 0;
		right: 0;
		width: 100%;
		padding: 0 18px 20px;
	}
}
@media only screen and (max-width: 425px) {
	.customMapPoints.poiMap-detail_style .howToTab > a {
		padding-right: 18px;
	}
	.customMapPoints.poiMap-detail_style .weatherTab .weather-container .sv-weather-widget-icon {
		padding-right: 17px;
	}
}
@media only screen and (max-width: 325px) {
	.customMapPoints.poiMap-detail_style .sv-weather-widget-icon img {
		width: 45px;
		margin: 0 -8px;
	}
}