body.qv-open { overflow: hidden; }
body.qv-open #sb-container {
	z-index: 10001;
}

.qv-wrapper {
	display: block;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	z-index: 10000;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.5s ease;
}
	body.qv-open .qv-wrapper {
		right: 0;
		pointer-events: all;
		opacity: 1;
		transition: opacity 0.5s ease;
	}

	.qv-wrapper .qv-close {
		padding: 10px;
		position: absolute;
		top: 0;
		right: 9px;
		font-size: 24px;
		color: #000;
		cursor: pointer;
		z-index: 10003;
	}


/* detail page container */
.qv-wrapper .qv-content {
	width: 92%;
	height: 100%;
	padding: 10px;
	position: absolute;
	right: -100%;
	background-color: #fff;
	overflow-y: auto;
	z-index: 10002;
	box-shadow: -5px 0px 5px -2px rgba(0, 0, 0, 0.35);
	-webkit-box-shadow: -5px 0px 5px -2px rgba(0, 0, 0, 0.35);
	-moz-box-shadow: -5px 0px 5px -2px rgba(0, 0, 0, 0.35);
	transition: right 0.4s ease;
}
	body.qv-open .qv-wrapper .qv-content {
		right: 0;
		transition: right 0.6s ease;
	}

.qv-wrapper .h1-added-for-qv {
	text-align: center;
	margin:40px auto;
	text-transform: uppercase;
}


/* qv detail page - collapse description on initial qv display */

.qv-wrapper .qv-content .shared-detail #tab-details.content.active .desc .description-to-load.loaded.collapsed {
	max-height: 400px;
	border-bottom: 2px solid #dadada;
	position: relative;
}
.qv-wrapper .read-more-wrapper {
	position: absolute;
	height: 80px;
	width:100%;
	bottom:0;
	right:0;
}
.qv-wrapper .description-to-load.collapsed .read-more-wrapper {
	background: rgb(255,255,255);
	background: linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.8) 25%, rgba(255,255,255,1) 50%);
}
.qv-wrapper .description-to-load .read-more {
	margin-top:30px;
	float: right;
	height: 50px;
	color:#ed3426;
	padding: 13px 10px 11px;
	font-weight: bold;
	cursor:pointer;
}
.qv-wrapper .description-to-load .read-more:after {
	content: "\f077";
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	padding-left: 4px;
}
.qv-wrapper .description-to-load.collapsed .read-more:after {
	content: "\f078";
}


/* shade background */
.qv-wrapper .qv-shade {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 10001;
	cursor: pointer;
	background-color: rgba(0, 0, 0, 0.5);
}


/* tablet */
@media only screen and (min-width: 40.063em) {
	.qv-wrapper .qv-content {
		width: 70%;
		padding: 25px;
	    padding-top: 40px;
	}
}


/* desktop */
@media only screen and (min-width: 64.063em) {
	.qv-wrapper .qv-content {
		width: 575px;
	}
}


/*Pane overwrites*/

.qv-wrapper .qv-content .shared-detail ul.mapTabs .weatherTab,
body.qv-open .qv-wrapper .qv-content .listing-detail .mediaGallery,
body.qv-open .qv-wrapper .qv-content .detailPanes .qv-hide,
body.qv-open .qv-wrapper .qv-content .detailPanes dl.tabs,
body.qv-open .qv-wrapper .qv-content .left.middle-widgets,
body.qv-open .qv-wrapper .qv-content .info-list.action-items,
body.qv-open .qv-wrapper .qv-content .detailTop .bookbtn {
	display: none !important;
}

/* @T425261 - scroll to and show TA content when the user clicks on the TA element at the top of qv*/
body.qv-open .qv-wrapper .qv-content .detailTA-header.second,
body.qv-open .qv-wrapper .qv-content .detailTA {
	display: none;
}
body.qv-open .qv-wrapper .qv-content .detailTA-header.second.expanded,
body.qv-open .qv-wrapper .qv-content .detailTA.expanded {
	display: block;
}

body.qv-open .qv-wrapper .qv-content .qv-full-width {
	width: 100%;
}
body.qv-open .qv-wrapper .qv-content .detailMiddle .qv-full-width,
body.qv-open .qv-wrapper .qv-content .detailMiddle .qv-full-width .right{
	float: none !important;
	text-align: center;
}

body.qv-open .qv-wrapper .qv-content .detailMiddle .qv-full-width .right .tripadvisor-preview {
	max-width: 100%; /* fix IE wrapping issue */
	width: auto;
	margin: auto;
	display: inline-block;
}

body.qv-open .qv-wrapper .qv-content #ta-scroll-to {
	position: relative;
}
body.qv-open .qv-wrapper .qv-content .read-more-ta-wrapper {
	text-align: center;
	margin-top:20px;
}
body.qv-open .qv-wrapper .qv-content .read-more-ta {
	color: #ed3426;
	padding: 13px 10px 11px 0;
	cursor: pointer;
	font-weight: 700;
	font-family: 'Embedded-DINWebPro-Medium', Arial;
}

body.qv-open .qv-wrapper .qv-content .read-more-ta:after {
	content: "\f078";
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	padding-left: 4px;
}
body.qv-open .qv-wrapper .qv-content .expanded .read-more-ta:after {
	content: "\f077";
}

/* fix IE wrapping issue */
body.qv-open .qv-wrapper .qv-content .detailMiddle .qv-full-width .right .tripadvisor-preview a[data-seo-tripadvisor],
body.qv-open .qv-wrapper .qv-content .detailMiddle .qv-full-width .right .tripadvisor-preview .tripadvisor-preview-img,
body.qv-open .qv-wrapper .qv-content .detailMiddle .qv-full-width .right .tripadvisor-preview .tripadvisor-preview-text,
body.qv-open .qv-wrapper .qv-content .detailMiddle .qv-full-width .right .tripadvisor-preview .tripadvisor-preview-text > span {
	display: inline;
}

body.qv-open .qv-wrapper .qv-content .listingTitle,
body.qv-open .qv-wrapper .qv-content .eventTitle {
	font-size: 26px;
	line-height: 30px;
	margin-bottom: 0px;
	padding: 10px 0;
}
body.qv-open .full-listing-link-wrapper {
	text-align: center;
}
body.qv-open .full-listing-link {
	margin: auto;
	float: none;
	margin-top: 50px;
	margin-bottom: 3rem;
	display: inline-block;
	position: relative;
}
body.qv-open .full-listing-link.full-content-message {
	margin-top: 20px;
	margin-bottom: 60px;
}
body.qv-open .qv-wrapper .qv-content .shared-detail .smallMap {
	display:none;
}
body.qv-open .qv-wrapper .qv-content .shared-detail .detailMaps .primary .gMapContainer .gMapHolder {
	height: 350px;
}

/* events detail */
body.qv-open .qv-wrapper .qv-content .eventDetails .custom_slider {
	padding-left: 0;
	margin-bottom: 10px;
}
body.qv-open .qv-wrapper .qv-content .eventDetails .tabs-content>.content {
	padding-top:0;
}
body.qv-open .qv-wrapper .qv-content .eventDetails .custom_slider .prevSlide {
	left:-20px;
	z-index: 1;
}
body.qv-open .qv-wrapper .qv-content .eventDetails .custom_slider .nextSlide {
	right:-20px;
	z-index: 1;
}
body.qv-open .qv-wrapper .qv-content .eventDetails .slick-track .credits-container {
	right:40px;
	width:85%;
}
body.qv-open .qv-wrapper .qv-content .eventDetails .shared-detail ul.info-list {
	margin-bottom: 15px;
}

body.qv-open .qv-wrapper .qv-content .eventDetails .upcoming-dates {
	display: none;
}


/*BASIC NAV PAGE CSS*/

	/* These following two css declarations
	   are for overwriting styles from the scrolling essay v1.
		In v1, padding/margins were updated on these elements for scrolling 100vh effects, and 
		the spacing changes were carrying over into the qv elements.
	*/
		body.essay.qv-open .qv-wrapper .contentRender_name_plugins_core_textbox * {
			color: inherit;
			text-shadow: none;
		}
		body.essay.qv-open .qv-wrapper .contentRender_name_plugins_core_textbox {
			min-height: auto;
			height: auto; 
			padding: 0 0 0;
			margin: 0;
		}

body.essay.qv-open .qv-wrapper .sv-widget-backtotop,
body.essay.qv-open .qv-wrapper .contentRender_name_plugins_nav_custom_recent_pages {
	display: none;
}

/*These media styles are added so that widgets display better on desktop*/
@media only screen and (min-width: 641px) and (max-width: 1219px) {
	.navigation-qv-open .qv-wrapper .qv-content {
		width: 90vw;
	}
}
@media only screen and (min-width: 1220px) {
	.navigation-qv-open .qv-wrapper .qv-content {
		width: 1200px;
	}
}


@media screen and (max-width: 1025px) {
	body.qv-open .qv-wrapper .qv-content .eventDetails.eventsContainer .item {
		width:auto;
	}
	body.qv-open .qv-wrapper .qv-content .eventDetails .custom_slider .prevSlide {
		left:20px;
		z-index: 99;
	}
	body.qv-open .qv-wrapper .qv-content .eventDetails .custom_slider .nextSlide {
		right:20px;
		z-index: 99;
	}
	body.qv-open .qv-wrapper .qv-content .eventDetails .slick-track .credits-container {
		right:0;
		width:90%;
	}
}


/* Spinner CSS */

/* spinner (http://tobiasahlin.com/spinkit/) */

.spinner {
	margin: 100px auto;
	width: 40px;
	height: 40px;
	position: relative;
  }
  
  .spinner .sk-circle {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
  }
  
  .spinner .sk-circle:before {
	content: '';
	display: block;
	margin: 0 auto;
	width: 15%;
	height: 15%;
	background-color: #000;
	border-radius: 100%;
	-webkit-animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
			animation: sk-circleFadeDelay 1.2s infinite ease-in-out both;
  }
  .spinner .sk-circle2 {
	-webkit-transform: rotate(30deg);
		-ms-transform: rotate(30deg);
			transform: rotate(30deg);
  }
  .spinner .sk-circle3 {
	-webkit-transform: rotate(60deg);
		-ms-transform: rotate(60deg);
			transform: rotate(60deg);
  }
  .spinner .sk-circle4 {
	-webkit-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
			transform: rotate(90deg);
  }
  .spinner .sk-circle5 {
	-webkit-transform: rotate(120deg);
		-ms-transform: rotate(120deg);
			transform: rotate(120deg);
  }
  .spinner .sk-circle6 {
	-webkit-transform: rotate(150deg);
		-ms-transform: rotate(150deg);
			transform: rotate(150deg);
  }
  .spinner .sk-circle7 {
	-webkit-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
			transform: rotate(180deg);
  }
  .spinner .sk-circle8 {
	-webkit-transform: rotate(210deg);
		-ms-transform: rotate(210deg);
			transform: rotate(210deg);
  }
  .spinner .sk-circle9 {
	-webkit-transform: rotate(240deg);
		-ms-transform: rotate(240deg);
			transform: rotate(240deg);
  }
  .spinner .sk-circle10 {
	-webkit-transform: rotate(270deg);
		-ms-transform: rotate(270deg);
			transform: rotate(270deg);
  }
  .spinner .sk-circle11 {
	-webkit-transform: rotate(300deg);
		-ms-transform: rotate(300deg);
			transform: rotate(300deg); 
  }
  .spinner .sk-circle12 {
	-webkit-transform: rotate(330deg);
		-ms-transform: rotate(330deg);
			transform: rotate(330deg); 
  }
  .spinner .sk-circle2:before {
	-webkit-animation-delay: -1.1s;
			animation-delay: -1.1s; 
  }
  .spinner .sk-circle3:before {
	-webkit-animation-delay: -1s;
			animation-delay: -1s; 
  }
  .spinner .sk-circle4:before {
	-webkit-animation-delay: -0.9s;
			animation-delay: -0.9s; 
  }
  .spinner .sk-circle5:before {
	-webkit-animation-delay: -0.8s;
			animation-delay: -0.8s; 
  }
  .spinner .sk-circle6:before {
	-webkit-animation-delay: -0.7s;
			animation-delay: -0.7s; 
  }
  .spinner .sk-circle7:before {
	-webkit-animation-delay: -0.6s;
			animation-delay: -0.6s; 
  }
  .spinner .sk-circle8:before {
	-webkit-animation-delay: -0.5s;
			animation-delay: -0.5s; 
  }
  .spinner .sk-circle9:before {
	-webkit-animation-delay: -0.4s;
			animation-delay: -0.4s;
  }
  .spinner .sk-circle10:before {
	-webkit-animation-delay: -0.3s;
			animation-delay: -0.3s;
  }
  .spinner .sk-circle11:before {
	-webkit-animation-delay: -0.2s;
			animation-delay: -0.2s;
  }
  .spinner .sk-circle12:before {
	-webkit-animation-delay: -0.1s;
			animation-delay: -0.1s;
  }
  
  @-webkit-keyframes sk-circleFadeDelay {
	0%, 39%, 100% { opacity: 0; }
	40% { opacity: 1; }
  }
  
  @keyframes sk-circleFadeDelay {
	0%, 39%, 100% { opacity: 0; }
	40% { opacity: 1; } 
  }