﻿/* Basic ____________________________________________________ */
	
	@media all {
	
		body 															{  }
		body.overflow, body.lg-on										{ overflow: hidden; overflow: -moz-scrollbars-none; -ms-overflow-style: none; scrollbar-width: 0px; }
		body.overflow::-webkit-scrollbar								{ width: 0 !important; display: none; }
		body.overflow *::-webkit-scrollbar								{ width: 0 !important; display: none; }
		address															{ font-style: normal; }
		
		div.frame 														{ position: relative; text-align: left; overflow: hidden; }
		
		.pagemobilebar 													{ position: relative; z-index: 6; }
		.pagemenu 														{ position: relative; z-index: 5; }
		.pageheader 													{ position: relative; z-index: 4; }
		.pagecontent 													{ position: relative; z-index: 3; }
		.pagefooter 													{ position: relative; z-index: 2; }
		
		.pagecontent .maincontent > *:first-child 						{ padding-top: 280px; }
		.inverted-header .pagecontent .maincontent > *:first-child		{ padding-top: 0px; }
		
		.moduleInstancePreview .pagecontent .maincontent > *:first-child { padding-top: 160px; }
		
		.centercontent 													{ margin-left: auto; margin-right: auto; max-width: 1360px; width: <%=MFS(1360,374)%>; }
		.centercontent .centercontent 									{ width: 100%; max-width: 100%; }
		.centercontentMagazine											{ margin-left: auto; margin-right: auto; max-width: 1200px; width: <%=MFS(1200,374)%>; }
		.centercontent .centercontentMagazine 							{ max-width: 1200px; }
		.centercontentMagazine .centercontentMagazine 					{ width: 100%; max-width: 100%; }
		.centercontentMagazineFotogallery								{ margin-left: auto; margin-right: auto; max-width: 1360px; width: <%=MFS(1360,374)%>; }
		.centercontentMagazineFotogallery .centercontentMagazineFotogallery	{ width: 100%; max-width: 100%; }
		
		.standardspace 													{ padding: 160px 0px; position: relative; z-index: 1; }
		.standardspace.TeaserT3 										{ padding-top: 100px; }
		.standardspace.Hotels.ListT3									{ padding: 100px 0px; }
		.standardspace + .standardspace 								{ padding-top: 0px; }
		.standardspace.bgweb2 + .standardspace:not(.bgweb2)				{ padding-top: 160px; }
		.standardspace:not(.bgweb2) + .standardspace.bgweb2 			{ padding-top: 160px; }
		.standardspace.bgweb2 + .standardspace.bgweb3 					{ padding-top: 0px; }
		.standardspace.bgweb3 + .standardspace.bgweb2 					{ padding-top: 160px; }
		.standardspace:not(.bgweb2) + .standardspace.bgweb3 			{ padding-top: 160px; }
		.standardspace.bgusp + .standardspace:not(.bgusp) 				{ padding-top: 160px; }
		.standardspace:not(.bgusp)  + .standardspace.bgusp 				{ padding-top: 160px; }
		
		svg 															{ height: 100%; }
		img, svg 														{ display: block; width: 100%; }
		
		[data-object-fit="cover"] * 									{ height: 100%; }
		
		picture,
		picture a														{ display: block; position: relative; }
		picture img														{ transition: opacity 500ms; opacity: 1; }
		picture.picture-loading:before									{ content: ''; border: 5px solid #f3f3f3; border-top: 5px solid #555555; border-radius: 50%; position: absolute; left: 50%; top: 50%; width: 40px; height: 40px; margin: -20px 0px 0px -20px; animation: spin 1.6s linear infinite; }
		picture.picture-loading img										{ opacity: 0; }
		
		.page-logo 																	{ position: absolute; z-index: 4; top: calc(100vh - 200px); right: <%=pr(20,1920)%>%; display: block; width: 180px; padding-top: 0px !important; box-sizing: border-box; transition: padding 500ms, width 500ms; }
		.page-logo.with-watchlist 													{ top: calc(calc(100vh - 200px) - 165px) }
		.page-logo:hover 															{ opacity: 1; }
		.page-logo span 															{ position: relative; z-index: 2; display: block; }
		.page-logo span img 														{ height: auto; transition: opacity 500ms; }
		.page-logo span img.logo 													{ opacity: 1; }
		.page-logo span img + img 													{ position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; }
		
		.no-mobile-device .image-hover .image a picture,
		.no-mobile-device .image-hover .image .lightGallery picture,
		.no-mobile-device .image-hover[data-element-linked$="rue"] .image picture 							{ position: relative; overflow: hidden; }
		.no-mobile-device .image-hover .image a picture:after,
		.no-mobile-device .image-hover .image .lightGallery picture:after,
		.no-mobile-device .image-hover[data-element-linked$="rue"] .image picture:after 					{ background-color: rgba(255,255,255,0); content: ''; position: absolute; top: 0px; left: 0px; width: 100%; height: 100%; transition: background-color 700ms; }
		.no-mobile-device .image-hover .image a picture img,
		.no-mobile-device .image-hover .image .lightGallery picture img,
		.no-mobile-device .image-hover[data-element-linked$="rue"] .image picture img 						{ transition: transform 2000ms cubic-bezier(0,0,0.2,1); transform: scale(1); -webkit-transform: scale(1);  }
		.no-mobile-device .image-hover .image a:hover picture:after,
		.no-mobile-device .image-hover .image .lightGallery:hover picture:after,
		.no-mobile-device .image-hover[data-element-linked$="rue"]:hover .image picture:after 				{ background-color: rgba(255,255,255,0.2); }
		.no-mobile-device .image-hover .image a:hover picture img,
		.no-mobile-device .image-hover .image .lightGallery:hover picture img,
		.no-mobile-device .image-hover[data-element-linked$="rue"]:hover .image picture img 				{ transform: scale(1.03); -webkit-transform: scale(1.03); }
		
		.clearbefore:before,
		.clearafter:after,
		.clearbeforeafter:before,
		.clearbeforeafter:after											{ content: ''; clear: both; display: block; font-size: 0px; height: 0px; line-height: 0px; overflow: hidden; text-indent: -100px; }
		
		.module-intro 													{ margin-bottom: 45px; }
		.module-intro .textbox 											{ max-width: 720px; }
		
		.cursor-none													{ cursor: none; }
		.cursor-slider													{ display: none; width: 119px; position: fixed; left: 0; top: 0; pointer-events: none; z-index: 1000; }
		.cursor-slider.visible											{ display: block; }
		.cursor-slider.hide												{ display: none; }
		
		div.kalendercontainer														{ position: relative; top: 0px; }
		div.kalendercontainer div.kalender 											{ width: 292px; background-color: var(--bgweb2-bg-color); border: 1px solid rgba(112,112,112,0.2); border-radius: 0px; -webkit-border-radius: 0px; -khtml-border-radius: 0px; -moz-border-radius: 0px; }
		div.kalendercontainer div.kalender a.prev,
		div.kalendercontainer div.kalender a.prev:hover								{ left: 12px; top: 10px; width: 10px; height: 10px; border: none; border-radius: 0px; -webkit-border-radius: 0px; -khtml-border-radius: 0px; -moz-border-radius: 0px; background: url(/images/design/icon-date-prev.png) no-repeat; background-size: contain; background-position: center center; }
		div.kalendercontainer div.kalender a.next,
		div.kalendercontainer div.kalender a.next:hover								{ right: 12px; top: 10px; width: 10px; height: 10px; border: none; border-radius: 0px; -webkit-border-radius: 0px; -khtml-border-radius: 0px; -moz-border-radius: 0px; background: url(/images/design/icon-date-next.png) no-repeat; background-size: contain; background-position: center center; }
		div.kalendercontainer div.kalender a.next:hover,
		div.kalendercontainer div.kalender a.prev:hover								{ opacity: 0.7; filter: alpha(opacity = 70); }
		div.kalendercontainer div.kalender a.calendarclose							{ display: none; }
		div.kalendercontainer div.kalender div.kalenderbox							{ width: 100%; padding: 0px; }
		div.kalendercontainer div.kalender div.kalenderbox b						{ width: calc(100% - 2px); background: transparent; border: 0px; border-bottom: 1px solid rgba(112,112,112,0.2); color: var(--bgweb2-text-color); font-size: 18px; line-height: 30px; margin: 0px 0px 0px 0px; padding: 0px 0px 0px 0px; border-radius: 0px; -webkit-border-radius: 0px; -khtml-border-radius: 0px; -moz-border-radius: 0px; }
		div.kalendercontainer div.kalender div.kalenderbox table					{ margin: 0px 0px 0px 0px; width: 100%; float: none; display: block; }
		div.kalendercontainer div.kalender div.kalenderbox table tbody 				{ width: 100%; display: block; }
		div.kalendercontainer div.kalender div.kalenderbox table tr 				{ width: 100%; display: block; display: flex; }
		div.kalendercontainer div.kalender div.kalenderbox table th 				{ width: 41px; height: 45px; line-height: 45px; font-weight: bold; text-transform: uppercase; color: var(--bgweb2-text-color); }
		div.kalendercontainer div.kalender div.kalenderbox table td 				{ display: block; width: 34px; margin: 4px; padding: 0px; }
		div.kalendercontainer div.kalender div.kalenderbox table td span 			{ margin: 0px 0px 0px 0px; padding: 0px 0px 0px 0px; background: none; margin: 0px; border: 1px solid rgba(80,40,30,0.2); color: var(--bgweb2-text-color); opacity: 0.5; filter: alpha(opacity=50); width: calc(100% - 2px); font-size: 15px; line-height: 30px; height: auto; }
		div.kalendercontainer div.kalender div.kalenderbox table td a 				{ transition: all 500ms; margin: 0px 0px 0px 0px; padding: 0px 0px 0px 0px; background: none; margin: 0px; border: 1px solid rgba(80,40,30,0.2); color: var(--bgweb2-text-color); width: calc(100% - 2px); font-size: 15px; line-height: 30px; height: auto; }
		div.kalendercontainer div.kalender div.kalenderbox table td a:hover 		{ background: var(--bgweb2-text-color); border: 1px solid rgba(80,40,30,0.2); color: var(--bgweb2-bg-color); }
		
		a.link-icon-left svg.icon-link-background																{ transform: scaleX(-1) !important; }
		a.link-icon-left svg.icon-link-arrow																	{ transform: rotate(180deg) !important; top: 0px !important; }
		a.link-icon-left:hover svg.icon-link-arrow																{ animation: shiftLeft 1.3s linear infinite !important; }
		
		.no-mobile-device a.link-icon:hover svg.icon-link-arrow,
		.no-mobile-device a:hover .link-icon svg.icon-link-arrow,
		.no-mobile-device [data-element-linked="true"]:hover .link-icon svg.icon-link-arrow 					{ animation: shiftRight 1.3s linear infinite; }
		
	}
	
	@keyframes shiftRight															{ 0% { right: 0px; } 50% { right: -15px; } 100% { right: 0px; } }
	@keyframes shiftLeft															{ 0% { left: 0px; } 50% { left: -15px; } 100% { left: 0px; } }
	
	@media (max-width: 1700px) {
	
		.module-intro 													{ margin-bottom: <%=MFS(45,25)%>; }
		.standardspace 													{ padding: <%=MFS(160,60)%> 0px; }
		.standardspace.TeaserT3 										{ padding-top: <%=MFS(100,60)%>; }
		.standardspace.Hotels.ListT3									{ padding: <%=MFS(100,60)%> 0px; }
		.standardspace.bgweb2 + .standardspace:not(.bgweb2)				{ padding-top: <%=MFS(160,60)%>; }
		.standardspace:not(.bgweb2) + .standardspace.bgweb2 			{ padding-top: <%=MFS(160,60)%>; }
		.standardspace.bgweb2 + .standardspace.bgweb3 					{ padding-top: 0px; }
		.standardspace.bgweb3 + .standardspace.bgweb2 					{ padding-top: <%=MFS(160,60)%>; }
		.standardspace:not(.bgweb2) + .standardspace.bgweb3 			{ padding-top: <%=MFS(160,60)%>; }
		.standardspace.bgusp + .standardspace:not(.bgusp) 				{ padding-top: <%=MFS(160,60)%>; }
		.standardspace:not(.bgusp)  + .standardspace.bgusp 				{ padding-top: <%=MFS(160,60)%>; }
		
		.page-logo 							{ top: calc(100vh - 230px); width: <%=MFS(180,130)%>; }
		.page-logo.with-watchlist 			{ top: calc(calc(100vh - 230px) - 100px); }
		.page-logo.inverted  					{ top: calc(100vh - 270px); }
		.page-logo.inverted.with-watchlist  	{ top: calc(calc(100vh - 270px) - 50px); }
	
	}
	
	@media (max-width: 1080px) {
	
	
	}
	
	@media (max-width: 620px) {
	
		.pagecontent .maincontent > *:first-child	 					{ padding-top: 170px; }
		.page-logo.with-watchlist  						{ top: calc(calc(100vh - 230px) - 20px); }
		.page-logo.inverted  								{ top: calc(100vh - 220px) }
		.page-logo.inverted.with-watchlist  				{ top: calc(calc(100vh - 220px) - 20px); }
		
		.centercontentMagazineFotogallery								{ width: calc(100% - 40px); }
	
	}
	
	@media (max-width: 450px) {
	
		.centercontent .centercontentMagazine							{ max-width: 100%; }
	
	}
	
/* __________________________________________________________________ End */