/*------------------------------------------------*/
/*----------------- Reset ------------------------*/
/*------------------------------------------------*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}



:root {
  --blue: #6495ed;
  --white: #faf0e6;
  --content-max-width: 1140px;
}

/*---------------------------------------------------------------*/
/*----------------- Fluid styled content ------------------------*/
/*---------------------------------------------------------------*/

/* Start Default */

.ce-align-left { text-align: left; }
.ce-align-center { text-align: center; }
.ce-align-right { text-align: right; }
.ce-table td, .ce-table th { vertical-align: top; }
.ce-textpic, .ce-nowrap .ce-bodytext, .ce-gallery, .ce-row, .ce-uploads li, .ce-uploads div { overflow: hidden; }
.ce-column { float: left; }
.ce-center .ce-row { text-align: center; }
.ce-center .ce-column { display: inline-block; float: none; vertical-align: top; }
.ce-right .ce-gallery { float: right; }
.ce-gallery figure { display: table; margin: 0; }
.ce-gallery figcaption { display: table-caption; caption-side: bottom; }
.ce-gallery img { display: block; }
.ce-gallery iframe { border-width: 0; }
.ce-border img, .ce-border iframe { border: none; padding: 0; }
.ce-left .ce-gallery { float: left; }
.ce-right .ce-gallery { float: right; }
.ce-intext.ce-right .ce-gallery, .ce-intext.ce-left .ce-gallery, .ce-above .ce-gallery { margin-bottom: 10px; }
.ce-intext.ce-right .ce-gallery { margin-left: 40px; margin-top: 10px; }
.ce-intext.ce-left .ce-gallery { margin-right: 40px; margin-top: 10px; }
.ce-below .ce-gallery { margin-top: 10px; }
.ce-column { margin-right: 40px; }
.ce-column:last-child { margin-right: 0; }
.ce-row { margin-bottom: 10px; }
.ce-row:last-child { margin-bottom: 0; }
.ce-above .ce-bodytext { clear: both; }
.ce-intext.ce-left ol, .ce-intext.ce-left ul { padding-left: 40px; overflow: auto; }
.ce-uploads { margin: 0; padding: 0; }
.ce-uploads li { list-style: none outside none; margin: 1em 0; }
.ce-uploads img { float: left; padding-right: 1em; vertical-align: top; }
.ce-uploads span { display: block; }
	
/* End Default */



.ce-textpic .ce-bodytext { padding: 10px 0; }
.ce-intext .ce-bodytext h2:first-child,
.ce-intext .ce-bodytext h3:first-child { padding-top: 0; }
.typo3-editPanel-btn .icon-size-small { margin: 0 0 0 10px; }
.ce-media img { width: 100%; height: auto; }

/* feedit */

body.feedit-active .typo3-feedit-element { position: relative; padding-bottom: 20px; }
body.feedit-active .typo3-feedit-element:hover { background: #f2f2f2; }
.typo3-editPanel { display: none; }
body.feedit-active .typo3-editPanel { display: block; text-align: center; }
.content-link { display: none; }
body.feedit-active .content-link{ display: block; max-width: 1140px; margin: 0 auto; }

/* Sitemap */

.content .frame-type-menu_sitemap { text-align: center; }
.content .frame-type-menu_sitemap ul { margin: 10px 0 10px 30px; }
.content .frame-type-menu_sitemap > ul { margin-left: 0; border-left: 0; display: inline-block; text-align: left; }
.content .frame-type-menu_sitemap ul li { padding: 5px 0 0 0; }
.content .frame-type-menu_sitemap ul a { text-decoration: none; }
.content .frame-type-menu_sitemap ul a:hover { text-decoration: underline; }
.content .frame-type-menu_sitemap > ul > li > a { font-size: 1.4em; }
.content .frame-type-menu_sitemap > ul > li > ul { font-size: 1.2em; }
.content .frame-type-menu_sitemap > ul > li > ul > li ul { font-size: 0.9em; }

/* Eigenes */

.ce-clear { clear: both; height: 0px; overflow: hidden; }
.ce-intext .no-header .ce-gallery { padding-top: 20px; }


/*-----------------------------------------------*/
/*----------------- Xeye ------------------------*/
/*-----------------------------------------------*/

@font-face {
    font-family: 'xeye_sans';
	src: url('../fonts/poppins/poppins-extralight-webfont.woff2') format('woff2'), url('../fonts/poppins/poppins-extralight-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
	font-display: swap;
}

@font-face {
    font-family: 'xeye_sans';
	src: url('../fonts/poppins/poppins-regular-webfont.woff2') format('woff2'), url('../fonts/poppins/poppins-regular-webfont.woff') format('woff');
    font-weight: 500;
    font-style: normal;
	font-display: swap;
}

@font-face {
    font-family: 'xeye_sans';
	src: url('../fonts/poppins/poppins-regular-webfont.woff2') format('woff2'), url('../fonts/poppins/poppins-regular-webfont.woff') format('woff');
    font-weight: bold;
    font-style: normal;
	font-display: swap;
}

@font-face {
    font-family: 'xeye_sans';
	src:url("../fonts/poppins/poppins-bold-webfont.woff2") format("woff2"),url("../fonts/poppins/poppins-bold-webfont.woff") format("woff");
    font-weight: 800;
    font-style: normal;
	font-display: swap;
}

@font-face {
    font-family: 'xeye_serif';
	src:url("../fonts/poppins/poppins-bold-webfont.woff2") format("woff2"),url("../fonts/poppins/poppins-bold-webfont.woff") format("woff");
    font-weight: normal;
    font-style: normal;
	font-display: swap;
}

@font-face {
  font-family: 'FontAwesome';
  font-style: normal;
  font-weight: 400;
  font-display: auto;
  src: url("../fonts/fontawesome/fontawesome-webfont.eot");
  src: url("../fonts/fontawesome/fontawesome-webfont.eot?#iefix") format("embedded-opentype"), url("../fonts/fontawesome/fontawesome-webfont.woff2") format("woff2"), url("../fonts/fontawesome/fontawesome-webfont.woff") format("woff"), url("../fonts/fontawesome/fontawesome-webfont.ttf") format("truetype"), url("../fonts/fontawesome/fontawesome-webfont.svg#fontawesome") format("svg");
}


/*----------------- Basic Styles -----------------*/

html { box-sizing: border-box; }
*, ::before, ::after { box-sizing: inherit; }

body {
	background: #fff;
	padding: 0;
	margin: 0;
	font-family: 'xeye_sans', Arial, Helvetica, sans-serif;
	font-size: 16px;
}

.header img, .content img, .footer img {
	max-width: 100%;
	height: auto;
}

h1 {
	line-height: 1.2em;
	color: #000;
	padding: 0.4em 0;
}
h2, h3 {
	line-height: 1.2em;
	color: #000;
	padding: 0.4em 0;
}
h4, h5 {
	line-height: 1.2em;
	font-weight: normal;
	color: #000;
	padding: 1.4em 0 0.2em 0;
}

h1, h2, h3 { font-weight: 800; }

h1 { font-size: 3em; }
h2 { font-size: 2.4em; color: #000; }
h3 { font-size: 1.6em; }
h4 { font-size: 1.2em; font-weight: bold; }
h5 { font-size: 1em; font-weight: bold; }

h1 a, h2 a, h3 a, h4 a, h5 a { color: #000; text-decoration: none; }

header h2, header h3, header h4, header h5 { padding-top: 0.4em; }

h2.header-serif, h3.header-serif { font-family: 'xeye_serif', 'Times New Roman', Georgia, Serif; }

.ce-headline-left { text-align: left; }
.ce-headline-center { text-align: center; }
.ce-headline-right { text-align: right; }

div.clear-floating { clear: both; height: 0px; overflow: hidden; }
div.clear-floating-mobile { display: none; }
.position-relative { display: block; position: relative; }

a { text-decoration: underline; text-underline-offset: 0.4em; text-decoration-thickness: 1px; color: #000; }

p { margin: 0; padding: 0.3em 0; }

b, strong { font-weight: bold; }

i, em { font-style: italic; }

.clearfix:after { display: block; content: ' '; float: none; clear: both; }

blockquote {
	display: block;
	position: relative;
	padding: 0 100px;
	
	font-weight: 500;
}
blockquote:before {
	display: inline-block;
	content: '\f10d';
	font-family: 'fontAwesome';
	position: absolute;
	left: 30px;
	top: 0;
	font-size: 40px;
}
blockquote:after {
	display: inline-block;
	content: '\f10e';
	font-family: 'fontAwesome';
	position: absolute;
	right: 30px;
	bottom: 0;
	font-size: 40px;
}
blockquote a { text-underline-offset: 0.3em; }


/*---------- Page ----------*/

#page-wrap {
	display: block;
	width: 100%;
	overflow: hidden;
	font-size: 1em;
}

body.blurred #page-wrap { filter: blur(10px); }


/*---------- Header ----------*/

#no-slider-wrap {
	display: block;
	height: 260px;
}

#header-wrap {
	display: block;
	background: #FFF;
}

#header {
	display: block;
	position: relative;
}


.header-logo a { display: block; }
.header-logo {
	display: block;
	position: absolute;
	width: 100px;
	max-width: 25%;
	background: transparent;
	left: 90px;
	top: 30px;
	padding: 0 !important;
	margin: 0;
	z-index: 20;
}
.header-logo img {
	display: block;
	width: 100%;
	height: auto;
}


.header-button-wrap {
	display: inline-block;
	position: absolute;
	right: 18px;
	top: 18px;
}
a.header-icon {
	display: inline-block;
	vertical-align: top;
	width: 40px;
	overflow: hidden;
	text-indent: -999em;
	text-decoration: none;
	color: #000;
	font-size: 24px;
	margin-left: 18px;
	height: 38px;
	line-height: 38px;
	background: transparent url('../images/mail.svg') no-repeat left top;
	background-size: auto 38px;
}
a.header-icon.phone {
	background-image: url('../images/phone.svg');
}
a.header-icon.mail{
	background-image: url('../images/mail.svg');
}
a.header-icon.tour{
	background-image: url('../images/virtual_tour.svg');
}

a.header-icon.search.open { background: transparent; }

a.header-icon-image {
	display: inline-block;
	vertical-align: top;
	text-decoration: none;
	color: #000;
	margin-left: 16px;
	height: 38px;
}
a.header-icon-image img {
	display: block;
	height: 30px;
	margin-top: 4px;
	width: auto;
}

a.header-button {
	display: inline-block;
	vertical-align: top;
	width: 148px;
	float: right;
	height: 38px;
	line-height: 38px;
	background: #f2f2f2;
	text-align: center;
	text-decoration: none;
	font-weight: 800;
	font-size: 16px;
	margin-left: 14px;
}
a.header-button:hover {
	background: #000;
	color: #fff;
}


.mobile-header-bg {
	display: block;
	position: absolute;
	right: 0;
	left: 82px;
	top: 0;
	height: 80px;
	width: 100%;
	background: #000;
	z-index: 10;
	border-left: solid 6px #fff;
	
	left: 0;
	border: none;
	background: #fff url('../images/mobile_header_bg.png') no-repeat center center;
}

.booking-button { display: none; }

.sub-header { background: #f2f2f2; position: relative; margin-top: 74px; }
.sub-header { font-size: 1.1em; line-height: 1.4em; }
.sub-header .sub-intro {
	display: block;
	width: 50%;
	position: absolute;
	left: 50%;
	bottom: 0;
	padding: 80px 6%;
}
.sub-headerimage {
	display: block;
	width: 50%;
	position: relative;
}
.sub-headerimage img {
	display: block;
	width: 100%;
	height: auto;
}
.sub-header .no-h1, .sub-header h1 {
    font-size: 3em;
    font-weight: 800;
    line-height: 1.2em;
    color: #000;
    padding: 0.4em 0;
	word-wrap: break-word;
}
.sub-pricelabel {
	position: absolute;
	right: 0;
	bottom: 0;
}

/* Scroll Snap */

#scroll-snap-wrap {
	display: block;
	background: transparent;
	width: 100%;
	position: relative;
	padding-top: 74px;
}

.scroll-snap-container {
	background: #fff;
	display: block;
	width: 100%;
	/*
	height: 100vh;
	overflow-y: scroll;
	position: relative;
	scroll-snap-type: y mandatory;
	*/
	-ms-overflow-style: none;  /* IE and Edge */
	scrollbar-width: none;  /* Firefox */
}

/* Hide scrollbar for Chrome, Safari and Opera */
.scroll-snap-container::-webkit-scrollbar { display: none; }

.scroll-snap-item {
	display: block;
	/*
	scroll-snap-align: start;
	scroll-snap-stop: always;
	*/
	position: relative;
	
    background-attachment: scroll;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
}
.scroll-snap-container .scroll-snap-item {
	/* height: calc(100vh - 74px); */
	height: 100vh;
}

.snap-item-overlay {
	display: block;
	position: absolute;
	left: 50%;
	top: 50%;
	font-weight: 800;
	font-size: 30px;
	font-size: calc(24px + 1.6vw);
	transform: translate(-50%,-50%);
	z-index: 60;
}
.snap-item-overlay.header-layout-0, .snap-item-overlay.header-layout-0 a { color: #000; text-shadow: 0 0 5px rgba(255,255,255,0.5); }
.snap-item-overlay.header-layout-1, .snap-item-overlay.header-layout-1 a { color: #fff; text-shadow: 0 0 5px rgba(0,0,0,0.3); }
.scroll-snap-item.fs-video .snap-item-overlay { text-shadow: none; }
.snap-item-overlay a { text-decoration: none; }
.snap-item-overlay span {
	display: block;
	text-align: center;
}
.snap-item-overlay-icon {
	display: block;
	padding-bottom: 40px;
}
.snap-item-overlay-icon img {
	display: inline-block;
	width: 320px;
	height: auto;
}
	
.snap-item-overlay span.first-line {
	font-weight: bold;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-size: 16px;
	font-size: calc(8px + 0.8vw);
	padding-bottom: 60px;
	padding-bottom: 5vh;
}

.snap-item-link-icon {
	display: block;
	width: 50px;
	height: 50px;
	line-height: 48px;
	border: 2px solid #000;
	border-radius: 50%;
	text-align: center;
	font-size: 36px;
	margin: 5vh auto 0 auto;
	font-weight: normal;
	background: transparent url('../images/plus_b.svg') no-repeat center center;
}
.snap-item-overlay.header-layout-1 .snap-item-link-icon { border-color: #fff; background-image: url('../images/plus_w.svg'); }

.snap-item-overlay:hover .snap-item-link-icon {
	border-width: 3px;
	line-height: 46px;
}


.fullscreen-overlay {
	display: block;
	width: 100%;
	height: 100vh;
	position: absolute;
	left: 0;
	top: 0;
}
.snap-overlay-r {
	display: block;
	width: 18%;
	min-width: 240px;
	height: auto;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-top: 37px;
	transform: translate(-50%,-50%);
}
.snap-overlay-r svg {
	width: 100%;
	height: auto;
}
/* .snap-overlay-r svg .reduce-r { fill: #000; } */

.header-scroll-down {
	display: block;
	width: 50px;
	height: 50px;
	background: transparent url('../images/scroll_down_white.png') no-repeat center center;
	position: absolute;
	left: 50%;
	margin-left: -25px;
	bottom: 50px;
	cursor: pointer;
}

.home-fullscreen-video-wrap {
	display: block;
	width: 100%;
	height: 640px;
	height: calc(100vh);
	position: relative;
	overflow: hidden;
}
video.bgvid { 
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	-ms-transform: translateX(-50%) translateY(-50%);
	-moz-transform: translateX(-50%) translateY(-50%);
	-webkit-transform: translateX(-50%) translateY(-50%);
	transform: translateX(-50%) translateY(-50%);
	background-size: cover; 
}

.header-video-wrap {
	display: block;
	width: 100%;
	position: absolute;
	overflow: hidden;
}
.header-video-wrap:after {
	display: block;
	content: '';
	padding-top: 75%;
}
video.h-vid {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}


/*---------- Navigation etc. im Header ----------*/

.mobile-icons { text-align: center; }
.mobile-icons { padding: 40px 0 20px 0; }

.mobile-icons a {
	display: inline-block;
	width: 38px;
	height: 38px;
	overflow: hidden;
	text-decoration: none;
	padding: 2px 0 0 2px;
	margin: 0 10px 20px 10px;
}
.mobile-icons a:hover { opacity: 0.8; text-decoration: none; }
.mobile-icons a span.icon-symbol {
	display: block;
	width: 36px;
	height: 36px;
	line-height: 36px;
	font-family: 'FontAwesome';
	font-size: 22px;
	text-align: center;
	color: #000;
	background: #fff;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}


.mobile-tools {
	display: block;
	position: absolute;
	top: 16px;
	right: 16px;
	float: right;
	z-index: 20;
}
a.mobile-button {
	display: block;
	height: 44px;
	padding: 0 10px;
	line-height: 40px;
	text-align: center;
	font-size: 36px;
	font-family: 'FontAwesome';
	color: #fff;
	float: right;
	overflow: hidden;
	background: transparent;
	text-decoration: none;
}
a.mobile-button span { display: none; }
a.mobile-button:after { display: inline; vertical-align: middle; }
.m-phone:after { content: "\f098"; }
.m-location:after { content: "\f041";}
.m-contact:after { content: "\f199"; }

.search-icon-abs { position: absolute; right: 80px; top: 0; }



/*---------- Stoerer ----------*/

div.stoerer-wrap {
	display: block;
	width: 240px;
	height: 240px;
	position: absolute;
	right: 100px;
	top: 200px;
	background: #000;
	border: 6px solid #fff;
	padding: 4px;
	color: #fff;
	text-decoration: none;
	z-index: 170;
	-moz-border-radius: 120px;
	-webkit-border-radius: 120px;
	border-radius: 120px;
	overflow: hidden;
}
a.stoerer {
	display: block;
	width: 220px;
	height: 220px;
	position: relative;
	border: 2px solid #fff;
	-moz-border-radius: 110px;
	-webkit-border-radius: 110px;
	border-radius: 110px;
	color: #fff;
	font-size: 34px;
	text-decoration: none;
	line-height: normal;
}
a.stoerer div.stoerer-v-center {
	display: block;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 0;
	padding: 0 10%;
	text-align: center;
	-webkit-transform: translateY(-50%) rotate(10deg);
    -ms-transform: translateY(-50%) rotate(10deg);
    transform: translateY(-50%) rotate(10deg);
}
a.stoerer p { margin: 0; padding: 5px 0; }

a.enquiry-button {
	display: inline-block;
	height: 80px;
	line-height: 80px;
	text-decoration: none;
	font-weight: normal;
	letter-spacing: 0.1em;
	text-align: center;
	text-transform: uppercase;
	font-size: 1.2em;
	padding: 0 14px;
	background: #000;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 1000;
	color: #fff;
	cursor: pointer;
}
a.enquiry-button:hover { background-color: #555; }


/*---------- Content ----------*/

.page-header h1 {
	line-height: 1.2em;
	font-weight: 800;
	word-wrap: break-word;
}
.page-header h1 span { display: block; text-align: center; color: #000; text-transform: uppercase; font-size: 0.4em; letter-spacing: 0.1em; }
.page-header h2 { text-align: center; font-size: 20px; color: #000; text-transform: uppercase; }
.page-header .image-wrap { text-align: center; padding: 10px 0 0 0; }
.page-header .image-wrap img { max-width: 60%; height: auto; }
.page-header.h-layout-1:after { display: block; content: ' '; width: 100px; height: 2px; background: #000; overflow: hidden; margin: 60px auto 0 auto; }
.page-header.h1-big h1 { font-size: 32px; }

h1.page-header { display: block; padding-top: 100px; }
h1.page-header span { display: block; font-size: 0.6em; font-weight: normal; }

body.template-pagets__home .page-header { padding-bottom:40px; }
body.template-pagets__home .page-header h1 { font-size: 48px; }

.header-content-div {
	display: block;
	width: 100%;
	height: 74px;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 0 auto;
}

.content-wrap {
	display: block;
	width: 100%;
	color: #000;
	padding: 0;
	font-size: 1.1em;
	line-height: 1.4em;
	position: relative;
}
body.template-pagets__home .content-wrap { padding: 48px 0 0 0; }

body.template-pagets__subnoheader .content-wrap { padding-top: 0; }
body.template-pagets__subnoheader #content-offset { display: none; }

.sub-page-position {
	display: block;
	position: relative;
}
.sub-page-dist {display: block; height: 40px; }

.content {
	display: block;
	width: 100%;
	padding: 0;
	min-height: 100px;
	line-height: 1.4em;
}

.content.more-space { padding: 80px 0; }

.subpage-wrap {
	display: block;
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
	padding: 0 20px;
}
.sidebar { display: none; }

.content p.align-center { padding: 0 10%; }

.fullwidth-wrap {
	display: block;
	width: 100%;
	padding: 0 20px;
}
.fullwidth-wrap .content { width: 100%; }

.shared-sidebar {
	display: block;
	padding: 40px 0;
}

.frame-default hr { 
	display: block;
	width: 100%;
	height: 2px;
	border: none;
	background: #000;
	margin: 20px 0;
	padding: 0;
	clear: both;
	position: relative;
	overflow: visible;
}
/*
.frame-default hr:after {
	display: block;
	content: ' ';
	width: 72px;
	height: 50px;
	background: #fff url('../images/ornament_50.png') no-repeat center center;
	position: absolute;
	top: -24px;
	left: 50%;
	margin-left: -35px;
}
*/
.frame-default hr.hr-dashed { 
	background-color: transparent;
	background-image: linear-gradient(90deg, #f9f1ee, #f9f1ee 60%, transparent 60%, transparent 100%);
	background-size: 20px 2px;
	margin: 20px 0;
}
.frame-default hr.hr-dashed:after { display: none; }


.big-font {
	font-size: 1.2em;
	line-height: 1.6em;
	color: #000;
	margin: 10px 0;
}

/* iframes im Content */
/* .content iframe { display: block; width: 100%; height: 500px; } */

/* Google Maps Link unter iframe */
.frame-type-html small a { color: #000 !important; font-size: 0.8em; }


/* ----- Footer ----- */

.footer-wrap {
	display: block;
	width: 100%;
	padding: 0 40px;
}
footer.footer {
	font-size: 0.8em;
	width: 100%;
	max-width: 1140px;
	max-width: var(--content-max-width);
	padding: 250px 0 0 0;
	margin: 0 auto;
	position: relative;
}

.footer-cols-wrap {
	display: block;
	background: #f2f2f2;
}
.footer-col {
	display: block;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
	padding: 40px 0;
	text-align: center;
	color: #000;
}

.footer-col a { text-decoration: underline; color: #000; }
.footer-col a:hover { text-decoration: underline; }

.footer-col-ce {
	display: inline-block;
	width: 33%;
	max-width: 480px;
	text-align: left;
	padding: 20px 0;
	vertical-align: top;
	font-size: 1.1em;
	line-height: 1.4em;
}
.footer-col-ce img { display: block; max-width: 100%; height: auto; }
.footer-header {
	font-size: 1.2em;
	padding-bottom: 10px;
	margin: 0;
	text-transform: uppercase;
	color: inherit;
}

.footer-header-big {
	display: block;
	float: none;
	clear: both;
	font-size: 2.4em;
	line-height: 1.4em;
	padding: 20px;
	margin-bottom: 10px;
	color: #ccc;
}

/* ----- */

.footer-above {
	text-align: center;
	padding: 40px;
	background:  #000;
	white-space: normal;
	width: 100%;
	position: relative;
	border-top: 2px solid #fff;
}

.footer-icons {
	display: block;
	width: 100%;
	text-align: left;
}
.footer-icons a {
	display: inline-block;
	width: 54px;
	text-decoration: none;
	margin: 0 20px 0 0;
}
.footer-icons a:hover { opacity: 0.8; text-decoration: none; }
.footer-icons a img {
	display: block;
	width: 54px;
	height: auto;
}

.footer-nl { color: #fff; padding: 20px 0; }
.footer-nl-header {
	font-size: 2.4em;
	padding: 20px 0;
}

.footer-address {
	text-align:left;
	font-size: 1em;
	line-height: 1.6em;
}
.footer-address p { padding: 0; }
.footer-address p.p-large { font-weight: bold; padding: 20px 0 0 0; font-size: 1.4em; }

.footer-address .footer-image { padding-bottom: 20px; }
.footer-address img { width: 250px; height: auto; }
.footer-address a { color: #000; }
.footer-nl-header {
	font-size: 2.4em;
	padding: 0 0 20px 0;
}

.footer-map { position: relative; }
.gmap-overlay {
	display: block;
	width: 360px;
	max-width: calc(100% - 40px);
	position: absolute;
	left: 20px;
	bottom: 40px;
}
.gmap-overlay img {
	width: 100%;
	height: auto;
}

.footer-nav {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	background: transparent;
	text-align: left;
	padding-top: 20px;
}
.footer-nav ul {}		
.footer-nav a {
	display: inline;
	line-height: 1.6em;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 1em;
	letter-spacing: 0.06em;
}
.footer-nav a:hover { text-decoration: underline; }

ul.footer-pages { display: block; width: 100%; padding: 5px 0; }
ul.footer-pages li {
	padding: 0 0 0 0.9em;
	list-style-type: none;
	background-image: url('../images/arrow_bullet_grey.png');
	background-repeat: no-repeat;
	background-position: 2px 0.5em;
}
ul.footer-pages li a { text-decoration: none; }
ul.footer-pages li a:hover { text-decoration: underline; }


.footer-distance {
	display: block;
	height: 100px;
}

.footer-scroll-up {
	display: block;
	width: 50px;
	height: 50px;
	background: transparent url('../images/scroll_up.png') no-repeat center center;
	position: absolute;
	left: 50%;
	margin-left: -25px;
	top: 50px;
	cursor: pointer;
}


/* ----- Logos im Footer ----- */

.footer-logos-wrap {
	display: block;
	width: 100%;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 0 auto;
	background: #FFF;
	position: relative;
}
.footer-logos {
	display: block;
	padding: 20px 0;
	color: #000;
	font-size: 0.8em;
	text-align: center;
	background: #FFF;
}
.footer-logos img { display: block; }
.footer-logos .single-logo, .footer-logos .single-html { 
	display: inline-block;
	vertical-align: middle;
	padding: 20px;
}

.footer-logos-div {
	display: inline-block;
	vertical-align: middle;
	width: 3px;
	height: 110px;
	background: #000;
	margin: 0 20px;
}


/* ----- Hotelinfo im Footer ----- */

.hotel-footer {
	display: block;
	background: #000;
	padding: 60px 40px 50px 40px;
	color: #fff;
	position: relative;
}

.hotel-info {
	display: block;
	width: 100%;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 0 auto;
	text-align: left;
}
.hotel-contact {
	display: block;
	max-width: 50%;
	text-align: right;
	padding-top: 40px;
	position: absolute;
	right: 68px;
	bottom: 50px;
}
.hotel-contact a {
	display: inline-block;
	vertical-align: top;
	height: 36px;
	line-height: 36px;
	text-decoration: none;
	font-size: 0.8em;
	font-weight: bold;
	margin: 20px 0 0 20px;
}
.hotel-contact a.tel-link,
.hotel-contact a.email-link {
	color: #fff;
	text-decoration: none;
}
.hotel-contact a.tel-link:before,
.hotel-contact a.email-link:before {
	content: '';
	width: 36px;
	height: 36px;
	background: transparent url('../images/mail_inv.svg') no-repeat left top;
	background-size: 80%;
	margin-right: 10px;
}
.hotel-contact a.tel-link:before { background-image: url('../images/phone_inv.svg'); }
.hotel-contact a:last-child {
	background: #fff;
	padding: 0 20px;
	font-weight: 800;
}
.hotel-info-intro {
	display: block;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: bold;
}
.hotel-info-title {
	display: block;
	font-weight: 800;
	font-size: 2em;
	line-height: 1.2em;
	padding-top: 30px;
}


/* ----- Greyscale mit CSS ----- */

.footer-logos.greyscale .single-logo img.sl-image {
    filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale");
    filter: gray;
    -webkit-filter: grayscale(100%);
	opacity: 0.7;
}
.footer-logos.greyscale .single-logo:hover img.sl-image {
    filter: none;
    -webkit-filter: none;
    opacity:1;
}

.footer-logos a {
	color: #000;
	text-decoration: none;
}


/* ----- Listen ----- */

div.content-wrap .ce-bodytext ul, .onecol-teasermenu-details ul, .packageteaser-text ul {
	line-height: 1.4em;
	padding: 0;
	margin: 0;
	list-style-type: none;
}
div.content-wrap .ce-bodytext ul, .xeye-bodytext ul { padding: 5px 0; }
div.content-wrap .ce-bodytext ul li, .footer-block ul li, .onecol-teasermenu-details ul li, .packageteaser-text ul li, .xeye-bodytext ul li {
	padding: 0 0 0 0.9em;
	margin: 5px 0;
	list-style-type: none;
	background-image: url('../images/ul_bullet.png');
	background-repeat: no-repeat;
	background-position: 2px 0.5em;
	text-align: left;
}

.footer-block ul li { background-image: url('../images/footer_bullet.png'); margin: 2px 0; }


/* ----- Suchfeld ----- */

#search-icon { cursor: pointer; }

.search-small {
	display: block;
	background: transparent;
	width: 300px;
	max-width: 80%;
	margin: 0 auto 40px auto;
}

#indexedsearch {
	text-align: center;
}

#indexedsearch input.search-small-input {
	display: block;
	border: none;
	border: 2px solid #000;
	font-size: 1em;
	color: #000;
	text-align: left;
	background: #fff;
	margin: 0;
	width: 100%;
	padding: 15px;
	outline: none;
	-webkit-appearance: none;
}

input.search-small-input::-webkit-input-placeholder { color: #777; }
input.search-small-input:-moz-placeholder { color: #777; }
input.search-small-input::-moz-placeholder { color: #777; }
input.search-small-input:-ms-input-placeholder { color: #777; }

#indexedsearch input.search-small-button {
	cursor: pointer;
	display: inline-block;
	width: 50px;
	height: 50px;
	margin: 10px 0 0 0;
	background: transparent url('../images/search.svg') no-repeat center center;
	border: none;
}

/* ----- Suchformular auf Suchergebnis-Seite ----- */

.searchresult-searchform { padding-bottom: 20px; }


/* ----- Suche Overlay ----- */

.quicksearch-wrap {
	position: fixed;
	top: 0px;
	left: 999em;
	bottom: 0;
	right: -999em;
	width: 100%;
	height: 100%;
	background: #000;
	background: rgba(0,0,0,0.7);
	-moz-transition: opacity 0.5s;
	-webkit-transition: opacity 0.5s;
	-ms-transition: opacity 0.5s;
	-o-transition: opacity 0.5s;
	transition: opacity 0.5s;
	opacity: 0;
}

.quicksearch-wrap.open {
	opacity: 1;
	left: 0;
	right: 0;
	z-index: 1900;
	display: block;
}

.quicksearch-close {
	position: absolute;
	top: 20px;
	right: 0;
	opacity: 1;
	color: #fff;
	cursor: pointer;
	display: block;
	width: 80px;
	height: 80px;
	line-height: 80px;
	text-align: center;
	font-size: 40px;
	font-weight: normal;
	background: transparent url('../images/search_close.png') no-repeat center center;
	text-indent: -999em;
	overflow: hidden;
	
	-webkit-transition: 0.5s ease;
	-moz-transition: 0.5s ease;
	-o-transition: 0.5s ease;
	-ms-transition: 0.5s ease;
	transition: 0.5s ease;
}



/* ----- Suchfeld / Overlay ----- */

.search-big {
	display: block;
	background: #FFF;
	width: 600px;
	max-width: 60%;
	height: 60px;
	border: none;
	padding: 0;
	overflow: hidden;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	margin-top: -30px;
	z-index: 2000;
	
	-webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.5);
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.5);
	
}

input.search-big-input {
	border: none;
	font-size: 1em;
	color: #000;
	background-color: transparent;
	margin: 0;
	width: calc(100% - 65px);
	padding: 15px;
	float: left;
	margin: 5px 0 0 0;
	outline: none;
}

input.search-big-button {
	cursor: pointer;
	display: block;
	width: 60px;
	height: 58px;
	margin: 0;
	background: #FFF url('../images/search.svg') no-repeat center center;
	border: none;
	float: right;
}


/* ----- Inhaltselement Tabelle CSS Klasse preisliste ----- */

table.pricetable {
	color: #000;
	border-collapse: collapse;
	width: 100%;	
	table-layout: fixed;
	margin: 20px 0;
}
table.pricetable td, table.pricetable th {
	border: 1px solid #008237;
	border-right: none;
	margin: 0;
	padding: 6px;
	vertical-align: middle;
	text-align: center;
	line-height: 1.2em;
}
table.pricetable tr td:first-child { border-left: none; }


/* ----- Inhaltselement Tabelle CSS Klasse ohnelinie ----- */

table.ohnelinie td {
	background-color: #fff;
	padding: 5px 10px 0 0;
	margin: 0;
	text-align: left;
	vertical-align: top;
	border-bottom: none;
}

/* ----- fuer alle Tabellen ----- */

td h1, td h2, td h3, td h4, td h5 { padding-top: 0; }


/* ----- Scroll Up ----- */

#scroll-up {
	width: 50px;
	height: 50px;
	background: transparent url('../images/scroll_up.png') no-repeat center center;
	bottom: 0px;
	right: 20px;
	overflow: hidden;
	text-indent: -999em;
	text-decoration: none;
	cursor: pointer;
	z-index: 999;
}


/* ----- Anfragebutton Plugin ----- */

.inquiry-button {
	font-size: 1em;
	color: #000;
	text-align: right;
	padding: 5px 0;
	border-bottom: 2px solid #eee;
}
.inquiry-button .inquiry-price { display: none; }
.inquiry-button a { margin-left: 20px; }

.inquiry-wrap-top {
	display: block;
	padding: 20px 40px;
	background: #f0eeec;
	text-align: center;
	border-bottom: 2px solid #000;
}
.inquiry-wrap-top .inquiry-button {
	font-size: 1em;
	color: #000;
	text-align: center;
	padding: 0;
	border: none;
}
.inquiry-wrap-top .inquiry-button  a { display: block; margin-left: 0; }
.inquiry-wrap-top span { display: block; }
.inquiry-button .inquiry-price { display: block; color: #000; font-size: 40px; padding-top: 0; }


/* ----- Teaser Plugin ----- */

.exteaser-space-before-extra-small { margin-top: 20px; }
.exteaser-space-before-small { margin-top: 50px; }
.exteaser-space-before-medium { margin-top: 100px; }
.exteaser-space-before-large { margin-top: 200px; }
.exteaser-space-before-extra-large { margin-top: 300px; }

.exteaser-space-after-extra-small { margin-bottom: 20px; }
.exteaser-space-after-small { margin-bottom: 50px; }
.exteaser-space-after-medium { margin-bottom: 100px; }
.exteaser-space-after-large { margin-bottom: 200px; }
.exteaser-space-after-extra-large { margin-bottom: 300px; }

.et-image-label, .article-category, .sub-pricelabel {
	display: inline-block;
	height: 90px;
	line-height: 90px;
	overflow: hidden;
	background: #000;
	padding: 0 30px;
	color: #fff;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 0.1em;
}

.exteaser-multicol a { text-decoration: none; }
.exteaser-multicol img { display: block; width: 100%; height: auto; }
.et-mc-image { display: block; position: relative; }
.exteaser-multicol .et-image-label {
	position: absolute;
	left: 0;
	bottom: -45px;
}
.et-mc-text { padding-top: 80px; }
.et-mc-text p { padding: 4px 0 0 0; }
.et-mc-header { font-weight: 800; }
.et-mc-button { display: inline-block; border-bottom: 1px solid #000; }

.et-mc-icon {
	display: block;
	height: 100px;
	position: relative;
}
.et-mc-icon img {
	display: block;
	width: 140px;
	height: auto;
	position: absolute;
	left: 50%;
	margin-left: -70px;
	top: 20px;
	z-index: 10;
}
	
.ge-teasers-multicol-wrap {
	display: block;
	width: 100%;
	max-width: 1220px;
	padding: 60px 40px 0 40px;
	margin: 0 auto;
}
.ge-teasers-multicol-wrap .exteaser-multicol {
	display: block;
	width: 30.99%;
	margin-right: 3.51%;
	float: left;
	padding: 0 0 60px 0;
}
/*
.ge-teasers-multicol-wrap .exteaser-multicol:nth-child(3n) { margin-right: 0; }
.ge-teasers-multicol-wrap .exteaser-multicol:nth-child(3n+1) { clear: left; }
*/

/* ----- */

.exteaser-fullwidth {
	display: block;
	width: 100%;
	background: #f2f2f2;
	position: relative;
}
.et-fw-image {
	display: block;
	position: relative;
}
.et-fw-image img {
	display: block;
	width: 100%;
	height: auto;
}
.exteaser-fullwidth .et-image-label {
	position: absolute;
	right: 0;
	bottom: 0;
}
.et-fw-text {
	display: block;
	padding: 80px 40px;
}
.et-fw-text h3 {
	font-size: 2.8em;
	font-size: 2em;
}
.et-fw-bodytext {
	display: block;
	max-width: 400px;
}

/* ----- */

.wl-room-teaser {
	display: block;
	width: 100%;
	background: #f2f2f2;
	position: relative;
}
.wl-rt-image {
	display: block;
	position: relative;
}
.wl-rt-image img {
	display: block;
	width: 100%;
	height: auto;
}
.wl-rt-text {
	display: block;
	padding: 80px 40px 160px 40px;
}
.wl-rt-text h3 {
	font-size: 2.8em;
	font-size: 2em;
}
.wl-rt-descr {
	display: block;
	max-width: 400px;
}
a.wl-rt-book {
	display: inline-block;
	position: absolute;
	right: 0;
	bottom: 0;
	height: 90px;
	line-height: 90px;
	overflow: hidden;
	background: #000;
	padding: 0 30px;
	color: #fff;
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing: 0.1em;
}
.wl-rt-specs {
	display: block;
	text-align: left;
	padding: 0 0 20px 0;
}
.wl-rt-spec {
	display: inline-block;
	vertical-align: top;
	margin-left: 20px;
	text-align: center;
}
.wl-rt-specs .wl-rt-spec:first-child {
	margin-left: 0;
}
.wl-rt-value {
	font-size: 1.6em;
}
.wl-rt-label {
	text-transform: uppercase;
	letter-spacing: 0.1em;
	font-weight: 500;
}

/* ----- */

.exteaser-twopics {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-between;
	align-content: center;
	align-items: center;
}
.et-tp-image {
	flex-basis: 100%;
	position: relative;
}
.et-tp-image:after {
	display: block;
	content: '';
	width: 100%;
	padding-top: 95%;
}
.et-tp-image img {
	display: block;
	width: 75%;
	height: auto;
	position: absolute;
}
.et-tp-image img:first-child { left: 0; top: 0; }
.et-tp-image img:nth-child(2) { right: 0; bottom: 0; }
.et-tp-image .et-image-label {
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -90px;
	min-width: 25%;
	text-align: center;
}
.et-tp-text {
	flex-basis: 100%;
	padding: 40px;
}
.et-tp-text h3 {
	font-size: 2.8em;
	font-size: 2em;
}
.et-tp-text-inner {
	display: block;
	max-width: 640px;
}

.swap .et-tp-image { order: 2; }
.swap .et-tp-text-inner { float: right; }
.swap .et-tp-image img:first-child { left: auto; right: 0; top: 0; }
.swap .et-tp-image img:nth-child(2) { right: auto; left: 0; bottom: 0; }
.swap .et-tp-image .et-image-label { right: auto; left: 0; }


/* ----- */

.et-tc-image {
	display: block;
	position: relative;
	padding-top: 45px;
}
.et-tc-image img {
	display: block;
	width: 100%;
	height: auto;
}
.et-tc-image .et-image-label {
	position: absolute;
	left: 0;
	top: 0;
}
.et-tc-icon {
	padding: 30px 0 0 0;
}
.et-tc-text h3 {
	font-size: 2.8em;
	font-size: 2em;
}


/* ----- */

.exteaser-textonly-wrap {
	padding: 40px 0;
}
.exteaser-textonly {
	display: block;
	width: 100%;
	padding: 6vw 40px;
	background: #f1ede9;
	color: #000;
}
.exteaser-textonly .exteaser-text {
	display: block;
	width: 100%;
	max-width: 600px;
	text-align: center;
	margin: 0 auto;
	line-height: 1.8em;
}
.exteaser-textonly .exteaser-text h3 {
	color: #000;
	font-size: 2em;
	line-height: normal;
	text-align: center;
	padding-bottom: 0.5em;
}



/* -----  Newsletter Subscription ----- */

#nl-form { margin: 20px 0 40px 0; }

#nl-form .group-wrap {
	display: inline-block;
	margin: 20px 0 0 0;
	max-width: 100%;
}

#nl-form label { 
	display: inline-block;
	height: 40px;
	line-height: 40px;
	padding: 0 20px 0 0;
	vertical-align: middle;
}

#nl-form label span { color: #FF0000; } 

#nl-form input[type="text"], #nl-form select { 
	font-size: 1em;
	font-family: inherit;
	border: 1px solid #000;
	background: #FFF;
	color: #000;
	margin: 0 20px 0 0;
	height: 40px;
	line-height: 40px;
	padding: 0 10px;
	width: 400px;
	max-width: 100%;
	vertical-align: middle;
}

#nl-form select { width: 260px; }

#nl-form input[type="submit"] { cursor: pointer; font-family: inherit; margin: 0 20px 0 0; vertical-align: middle; }

#nl-form .clear-floating { display: block; height: 10px; }

#nl-archive { display: block; margin-top: 40px; }
#nl-archive hr, #nl-archive br { display: none; }
#nl-archive span.rssheadline { display: block; padding: 4px 0 2px 0; }
#nl-archive span.rssheadline a { text-decoration: none; }
#nl-archive span.rssheadline a:before { content: '» '; }
#nl-archive span.rssheadline a:hover { text-decoration: underline; }



/* ----- Extension headerslideshow ----- */



#header-slideshow {
	background: transparent;
	width: 50%;
	overflow: hidden;
	position: relative;
}

#header-slideshow ul.slides {
	padding: 0;
	margin: 0;
	list-style-type: none;
	list-style-image: none;
}
#header-slideshow ul.slides { height: 0; padding-top: 75%; overflow: hidden; }
#header-slideshow ul.slides.active { height: auto; padding: 0; overflow: auto; }

#header-slideshow ul.slides li {
	padding: 0;
	margin: 0;
	background-color: transparent;
	display: block;
	overflow: hidden;
	position: relative;
	background-size: cover;
}
#header-slideshow ul.slides li img { width: 100%; height: auto; position: absolute; top: 0; right: 0; }

#header-slideshow ul.slides li:after {
	display: block;
	content: " ";
	padding-top: 75%;
}

#header-slideshow .et-image-label {
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 20;
}

/* ----- Extension tinygallery ----- */

.tg-slider {
	display: block;
	position: relative;
}
.tg-slider ul.slides li img { display: block; width: 100%; height: auto; }
.tg-slider .flex-direction-nav a.flex-next { right: -50px; }
.tg-slider .flex-direction-nav a.flex-prev { left: -50px; }
.tg-slider .flex-direction-nav a.disabled { display: none; }



/* ---------------------- */
/* ----- Navigation ----- */
/* ---------------------- */

a.social-media-awesome { font-family: 'FontAwesome'; text-decoration: none; }

ul.mobile-menu { display: none; }

.breadcrumb-wrap { display: none; }


.top-nav {
	display: block;
	padding: 0 40px;
	background: #b61f29;
	color: #fff;
	height: 40px;
	line-height: 40px;
}
.top-nav a.hic { text-decoration: none; white-space: nowrap; color: #fff; }
.top-nav a.hic:hover { color: #fff; }
.top-nav a.hic span { display: inline-block; height: 40px; line-height: 40px; vertical-align: top; }
.top-nav a.hic span.icon-text { padding: 0 10px 0 0; }
.top-nav a.hic span.icon-symbol { display: inline-block; width: 40px; text-align: right; font-family: 'FontAwesome'; font-size: 1.4em; padding: 0 10px 0 0; }
.top-nav a.hic:hover span.icon-symbol { font-size: 1.6em; }

.top-nav:first-child {
	background: #000;
	border-right: 2px solid #fff;
	text-align: right;
}

/* ----- Mobile Navigation ----- */

.nav-toggle-bg {
	position: fixed;
	left: 0;
	top: 0;
	height: 74px;
	width: 72px;
	background: #fff;
	z-index: 1300;
}
.nav-toggle {
	display: block;
	position: fixed;
	left: 14px;
	top: 12px;
	padding: 0;
	height: 62px;
	width: 46px;
	background: transparent;
	cursor: pointer;
	z-index: 1550;
}
.nav-toggle .menue {
	display: block;
	font-weight: 800;
	font-size: 14px;
	letter-spacing: 1px;
	text-align: center;
	padding-top: 10px;
}
.hamburger, .hamburger:before, .hamburger:after {
	display: block;
	width: 46px;
	height: 4px;
	background: #000;
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	-ms-transition: 0.2s ease;
	transition: 0.2s ease;
}
.hamburger {
	position: relative;
	margin: 11px 0;
}
.hamburger:before, .hamburger:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
}
.hamburger:before {
	-webkit-transform: translateY(-10px);
	-ms-transform: translateY(-10px);
	transform: translateY(-10px);
}
.hamburger:after {
	-webkit-transform: translateY(10px);
	-ms-transform: translateY(10px);
	transform: translateY(10px);
}
.nav-toggle:hover .hamburger:before {
	-webkit-transform: translateY(-12px);
	-ms-transform: translateY(-12px);
	transform: translateY(-12px);
}
.nav-toggle:hover .hamburger:after {
	-webkit-transform: translateY(12px);
	-ms-transform: translateY(12px);
	transform: translateY(12px);
}
.nav-toggle.active .hamburger * {
	background: #000;
}
.nav-toggle.active .hamburger:before {
	-webkit-transform: rotate(45deg) translate(9px,9px);
	-ms-transform: rotate(45deg) translate(9px,9px);
	transform: rotate(45deg) translate(9px,9px);
}
.nav-toggle.active .hamburger {
	background: transparent;
}
.nav-toggle.active .hamburger:after {
	-webkit-transform: rotate(-45deg) translate(-9px,9px);
	-ms-transform: rotate(-45deg) translate(-9px,9px);
	transform: rotate(-45deg) translate(-9px,9px);
}
.nav-toggle.active .menue { opacity: 0; }

/* ----- Icons ----- */

.ah-icon-wrap { display: block; text-align: center; padding-top: 20px; }
.ah-icon { display: inline-block; vertical-align: top; padding: 5px; position: relative; }
.ah-icon-symbol {
	display: block;
	width: 80px;
	height: 80px;
	line-height: 80px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background-color: #b61f29;
	background-position: center center;
	background-repeat: no-repeat;
	font-family: 'FontAwesome';
	text-align: center;
	color: #fff;
	font-size: 30px;
	margin: 5px;
}
.ah-icon-text { display: none; z-index: 200; }
.ah-icon a { text-decoration: none; }
.ah-icon:hover .ah-icon-symbol { width: 90px; height: 90px; line-height: 90px; margin: 0; }

.ah-icon-wrap-overlay { display: block; width: 100%; text-align: left; position: absolute; left: 0; bottom: 0; z-index: 30; padding: 0 0 30px 35px; }


/* ----- HauptNavigation ----- */  

.mobile-menu-logo {
	display: none;
	width: 100%;
	padding: 120px 60px 0 60px;
	text-align: center;
}
.mobile-menu-logo img {
	width: 300px;
	max-width: 100%;
	height: auto;
}

.mobile-menu-underlay {
	position: fixed;
	top: 74px;
	left: -999em;
	background: rgba(0,0,0,0.2);
	-moz-transition: opacity 0.5s;
	-webkit-transition: opacity 0.5s;
	transition: opacity 0.5s;
	-ms-transition: opacity 0.5s;
	-o-transition: opacity 0.5s;
	opacity: 0;
	display: block;
	z-index: 1400;
}

.mobile-menu-underlay.active {
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: calc(100% - 74px);
	opacity: 1;
}

.mobile-menu-bg {
	width: 100%;
	height: 100%;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	padding: 0;
	z-index: 1450;
	overflow: auto;
	
	/* ohne Scrollbar */
	overflow: hidden;
}

.mobile-menu-bg::-webkit-scrollbar {
    width: 0px;
    background: transparent;
}

.mobile-menu-wrap {
	width: 100%;
	background: transparent;
	position: absolute;
	top: 0;
	left: 0;
	padding: 0 40px 0 0;
	z-index: 1500;
	
	/* ohne Scrollbar */
	left: 20px;
	bottom: auto;
	right: -20px;
	height: 100%;
	overflow-y: scroll;
}

.mobile-menu-wrap nav {
	display: block;
	margin: 40px 10px 0 10px;
	text-align: left;
}

.toggle-menu {
	left: -100%;
	display: block;
	opacity: 0;
	-webkit-transition: opacity 0.5s ease, left 0.1s;
	-moz-transition: opacity 0.5s ease, left 0.1s;
	-o-transition: opacity 0.5s ease, left 0.1s;
	-ms-transition: opacity 0.5s ease, left 0.1s;
	transition: opacity 0.5s ease, left 0.1s;
	
	-webkit-transition-delay: 0, 0.4s;
	-moz-transition-delay: 0, 0.4s;
	-o-transition-delay: 0, 0.4s;
	-ms-transition-delay: 0, 0.4s;
	transition-delay: 0s, 0.4s;
}
.toggle-menu.active {
	opacity: 1;
	left: 0;
	-webkit-transition: opacity 0.5s ease;
	-moz-transition: opacity 0.5s ease;
	-o-transition: opacity 0.5s ease;
	-ms-transition: opacity 0.5s ease;
	transition: opacity 0.5s ease;
	
	-webkit-transition-delay: 0;
	-moz-transition-delay: 0;
	-o-transition-delay: 0;
	-ms-transition-delay: 0;
	transition-delay: 0s;
}


.mobile-menu-wrap nav { text-align: center; }

ul.mobile-menu {
	display: block;
	width: 100%;
	height: auto;
	background: transparent;
	position: relative;
	margin: 0 0 40px 0;
	font-family: 'xeye_sans', Arial, Helvetica, sans-serif;
}

ul.mobile-menu li {
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
	float: none;
	border: none;
	position: relative;
	background: transparent;
	text-align: left;
}

ul.mobile-menu > li { margin: 0 0 10px 0; }

ul.mobile-menu li > a, ul.mobile-menu li > span.nolink {
	font-size: 1em;
	position: relative;
	display: inline-block;
	vertical-align: top;
	padding: 6px 0;
	height: auto;
	line-height: normal;
	text-align: left;
	color: #000;
	text-decoration: none;
	margin-left: 40px;
	cursor: pointer;
}
ul.mobile-menu li > a:hover {
	color: #000;
	
}
ul.mobile-menu > li > a,
ul.mobile-menu > li > span.nolink,
ul.hotels-nav > li > a {
	font-size: 1.2em;
	font-weight: 800;
	padding: 6px 8px;
	white-space: nowrap;
}
ul.hotels-nav > li > a { padding-bottom: 12px; }
ul.mobile-menu li ul.hotels-nav li > a.act,
body.page-1 a.hotel-150 {
	text-decoration: underline;
	text-decoration-thickness: 4px;
}


ul.mobile-menu li > a.cur {
	color: #000;
	text-decoration: underline;
}
ul.mobile-menu > li > a.cur { text-decoration-thickness: 4px; }
ul.mobile-menu-sub li a.cur { text-underline-offset: 0.2em; }

ul.mobile-menu-sub {
	display: none;
	padding: 20px 0 20px 20px;
	background: transparent;
	list-style-type: none;
	list-style-image: none;
	position: relative;
}

ul.mobile-menu span.no-sub,
ul.mobile-menu span.has-sub {
	display: inline-block;
	vertical-align: top;
	width: 40px;
	height: 35px;
	font-size: 14px;
	line-height: 35px;
	text-align: center;
	font-family: 'FontAwesome';
	color: #000;
	background: transparent;
	position: absolute;
	left: 0;
	top: 0;
}
ul.mobile-menu span:after { display: inline; }
ul.mobile-menu span.no-sub:after { content: "\f0c8"; color: #000; }
ul.mobile-menu span.has-sub:after { content: "\f067"; }
ul.mobile-menu span.has-sub.active:after { content: "\f068"; color: #000; }

ul.mobile-menu span.has-sub { cursor: pointer; }

ul.mobile-menu li ul span.has-sub, ul.mobile-menu li ul span.no-sub { height: 32px; line-height: 32px; font-size: 12px; }
ul.mobile-menu li ul span.no-sub { font-size: 5px; }

ul.mobile-menu li.act > ul { display: block; }

ul.mobile-menu li.topics-nav { padding: 0 0 20px 0; }

.mobile-menu-icon-wrap { display: block; text-align: center; padding: 0 0 20px 0; }

.be-button-wrap {
	display: block;
	width: 280px;
	float: right;
	margin: 74px 0 0 0;
	margin-right: -40px;
}

.mobile-tools { display: none; }
	
.main-nav { display: none; }



/* ------------------ */
/* ----- Rahmen ----- */
/* ------------------ */

/* Standard */

.textpic-layout-0 {
	padding: 0;
	margin: 20px 0;
}

/* Border */

.textpic-layout-1 {
	padding: 40px;
	border: 1px solid #000;
	margin: 20px 0;
}

/* Border Bottom */

.textpic-layout-2 {
	padding: 0 0 20px 0;
	border-bottom: dotted 1px #000;
	margin: 20px 0;
}

.ce-bodytext {
	font-size: 1.1em;
	line-height: 1.6em;
}
.ce-bodytext p { padding: 0.6em 0; }

.frame-layout-3 .ce-bodytext {
	display: block;
	padding: 0;
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;
	-webkit-column-gap: 40px;
	-moz-column-gap: 40px;
	column-gap: 40px;

}
.frame-layout-3 .ce-bodytext p { padding: 0 0 0.6em 0; }

.frame-layout-3 header { padding-bottom: 20px; }

.frame-layout-4 { text-align: center; }
.frame-layout-4 .ce-bodytext p {
	display: block;
	padding: 0;
	text-align: center;
	font-size: 1.2em;
	line-height: 1.4em;
	padding: 40px 0;
	max-width: 800px;
	margin: 0 auto;
}


.frame-default {
	display: block;
	padding: 20px 0;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin-left: auto;
	margin-right: auto;
}

.frame-websline {
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 20px;
	padding-top: 20px;
}

.frame-type-shortcut {
	display: block;
	width: 100%;
	max-width: 100%;
	padding: 0;
	margin: 0;
}

body.template-pagets__sub .content > div.frame-default:first-child { padding-top: 0; }

.frame-ruler-after {
	padding: 20px 0;
	border-bottom: 2px solid #ddd;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 0 auto;
}

.frame-ruler-before {
	padding: 20px 0;
	border-top: 2px solid #ddd;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 0 auto;
}


.frame-custom-100 {
	padding: 30px 0;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 0 auto;
	position: relative;
}
.frame-custom-100:after {
	display: block;
	content: '';
	background: #f2f2f2;
	position: absolute;
	top: 0;
	left: 50%;
	width: 3840px;
	height: 100%;
	margin-left: -1920px;
	z-index: -1;
}
	

.frame-custom-100 header h2, .frame-custom-100 header h3, .frame-custom-100 header h4, .frame-custom-100 header h5 { padding-top: 0; }

/* Dark */

.frame-custom-110 {
	background-color: #000;
	padding: 30px 40px;
	color: #ffffff;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 20px auto;
}
.content-col-1 .frame-custom-110 { padding: 10px; margin: 10px 0; }
.frame-custom-110 a {
	color: #ffffff;
}
.frame-custom-110 h1, .frame-custom-110  h2, .frame-custom-110 h3, .frame-custom-110 h4, .frame-custom-110 h5 {
	color: #ffffff;
}
.frame-custom-110 ul li {
	background-image: url('../images/ul_bullet_inv.png') !important;
}

.frame-custom-110 span.color-bold, .frame-custom-110 span.color-large {
	color: #ffffff;
}

.frame-custom-110 a.button-style, .frame-custom-110 a.button-style:hover {
	background-color: #FFF;
	border-color: #FFF;
	color: #000;
}

/* ohne Rahmen, ohne Abstand */

.frame-custom-130 { padding: 0; }


.frame-custom-160 {
	padding: 30px 0;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 0 auto;
	position: relative;
}
.frame-custom-160:after {
	display: block;
	content: '';
	background: #f2f2f2;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 3840px;
	height: 150px;
	margin-left: -1920px;
	z-index: -1;
}


/* Abstaende */

.frame-space-before-extra-small { margin-top: 20px; }
.frame-space-before-small { margin-top: 50px; }
.frame-space-before-medium { margin-top: 100px; }
.frame-space-before-large { margin-top: 200px; }
.frame-space-before-extra-large { margin-top: 300px; }
.frame-space-before-no-space { padding-top: 0; }

.frame-space-after-extra-small { margin-bottom: 20px; }
.frame-space-after-small { margin-bottom: 50px; }
.frame-space-after-medium { margin-bottom: 100px; }
.frame-space-after-large { margin-bottom: 200px; }
.frame-space-after-extra-large { margin-bottom: 300px; }
.frame-space-after-no-space { padding-bottom: 0; }



/* --------------- */
/* ----- RTE ----- */
/* --------------- */

h1.h1-intext-large, h2.h2-intext-large { font-size: 2.4em; line-height: 1.2em; font-weight: 800; }
h3.h3-intext-large { font-size: 2em; line-height: 1.2em; font-weight: 800; }

/* ----- Links mit Icon ----- */

a.email-link,
a.external-link,
a.tel-link,
a.fax-link,
a.website-link,
a.download,
a.download-pdf,
a.download-doc,
a.download-xls,
a.download-pic,
a.download-zip { color: #000; text-decoration: none; text-decoration: underline; }

a.email-link:before,
a.external-link:before,
a.tel-link:before,
a.fax-link:before,
a.website-link:before,
a.download:before,
a.download-pdf:before,
a.download-doc:before,
a.download-xls:before,
a.download-pic:before,
a.download-zip:before { display: inline-block; padding: 0 8px 0 4px; font-family: 'FontAwesome'; font-size: 1em; text-decoration: none; vertical-align: top; }

a.email-link:before { content: "\f003"; }
a.external-link:before { content: "\f08e"; }
a.tel-link:before { content: "\f095"; }
a.fax-link:before { content: "\f1ac"; }
a.website-link:before { content: "\f0ac"; }
a.download:before,
a.download-pdf:before { content: "\f1c1"; }
a.download-doc:before { content: "\f1c2"; }
a.download-xls:before { content: "\f1c3"; }
a.download-pic:before { content: "\f1c5"; }
a.download-zip:before { content: "\f1c6"; }


a.email-button, a.news-button {
	display: inline-block;
	color: #000;
	text-decoration: none;
	border: 2px solid #fff;
	height: 50px;
	line-height: 46px;
	padding: 0 20px;
	font-size: 20px;
	white-space: nowrap;
	background: #fff;
	border-color: #fff;
}
a.email-button:hover, a.news-button:hover { background: transparent; color: #fff; text-decoration: none; }
a.email-button:before, a.news-button:before { display: inline; font-size: 1.2em; padding: 0 16px 0 0; font-family: 'FontAwesome'; vertical-align: top; }
a.email-button:before { content: "\f003"; }
a.news-button:before { content: "\f1ea"; }

.footer-cols a.email-link, .footer-cols a.tel-link, .footer-cols a.fax-link, .footer-cols a.website-link { color: #fff; }
.footer-cols a.tel-link, .footer-cols a.fax-link { text-decoration: none; }
.footer-cols a.email-link:before, .footer-cols a.tel-link:before, .footer-cols a.fax-link:before, .footer-cols a.website-link:before { width: 24px; padding: 0; }

p.a-icon:before { display: inline; padding: 0 8px 0 4px; font-family: 'FontAwesome'; font-size: 1em; }
p.loc-icon:before { content: "\f041"; }

a.c-icon {
	display: inline-block;
	width: 48px;
	height: 48px;
	overflow: hidden;
	text-decoration: none;
	padding: 2px 0 0 2px;
	margin: 0 10px 15px 0;
}
a.c-icon:hover { opacity: 0.8; text-decoration: none; }
a.c-icon:before {
	display: block;
	width: 46px;
	height: 46px;
	line-height: 46px;
	font-family: 'FontAwesome';
	font-size: 26px;
	text-align: center;
	color: #fff;
	background: #ccc;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}

.footer-cols a.c-icon:before { background: #fff; color: #000; }
.footer-above a.c-icon { margin: 0 5px 10px 5px; }
.footer-above a.c-icon:before { background: #fff; color: #000; }

a.fb-icon:before { content: "\f09a"; }
a.tw-icon:before { content: "\f099"; }
a.in-icon:before { content: "\f16d"; }
a.pi-icon:before { content: "\f0d3"; }
a.fl-icon:before { content: "\f16e"; }
a.em-icon:before { content: "\f0e0"; font-size: 30px; }


/* ----- Anfrage Button als Link und Submit-Button ----- */

.button-style,
.readmore-button a,
.packageSliderButton a,
.packageSliderButton a,
input.enquiry-button,
.tx-powermail input[type="submit"],
.tx-powermail a.btn,
button.btn {
	display: inline-block;
	max-width: 100%;
	overflow: hidden;
	line-height: 26px;
	background: #000;
	border: 2px solid #000;
	padding: 10px 40px 10px 20px;
	margin: 20px 0 0 0;
	font-family: 'xeye_sans', Arial, Helvetica, sans-serif;
	color: #fff;
	font-size: 1em;
	font-weight: normal;
	letter-spacing: 0.06em;
	text-decoration: none;
	cursor: pointer;
	position: relative;
	
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	-ms-transition: 0.2s ease;
	transition: 0.2s ease;
}
.tx-powermail input[type="submit"] { padding: 0 20px; }

.button-style:after,
.readmore-button a:after,
.packageSliderButton a:after,
.packageSliderButton a:after,
input.enquiry-button:after {
	display: block;
	width: 40px;
	height: 46px;
	line-height: 46px;
	text-align: center;
	content: "\f105";
	font-family: 'FontAwesome';
	font-weight: normal;
	text-transform: none;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -23px;
}

.button-style:hover,
.readmore-button a:hover,
.packageSliderButton a:hover,
input.enquiry-button:hover,
.tx-powermail input[type="submit"]:hover,
.tx-powermail a.btn:hover,
button.btn:hover {
	background: transparent;
	border-color: #000;
	color: #000;
}

.button-style:active,
.readmore-button a:active,
.packageSliderButton a:active,
input.enquiry-button:active,
.tx-powermail input[type="submit"]:active,
.tx-powermail a.btn:active,
button.btn:hover {
	background: #000;
	border: 2px solid #000;
	color: #fff;
}

.button-style.inv { background: transparent; border: 2px solid #fff; color: #fff; }
.button-style.inv:hover, .button-style.inv:active { background: #fff; border: 2px solid #fff; color: #000; }


/* Fix for odd Mozilla border & padding issues */
button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

a.arrow-button-style,
span.arrow-button-style {
	display: inline-block;
	color: #000;
	text-decoration: none;
	font-size: 1em;
	line-height: 26px;
	padding: 8px 10px 8px 0;
	vertical-align: top;
}

a.arrow-button-style:after,
span.arrow-button-style:after { 
	display: inline-block;
	color: #000;
	content: "\f138";
	padding: 0 0 0 10px;
	font-family: 'FontAwesome';
	font-size: 22px;
	text-transform: none;
	font-weight: normal;
	vertical-align: top;
	margin-top: -2px;
}

a.arrow-button-style:hover:after,
span.arrow-button-style:hover:after {
	text-decoration: none; color: #000;
}

a.arrow-button-style.inv { color: #fff; }

a.back-button-style {
	color: #008237;
	background-color: #fff;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	border: 2px solid #008237;
	display: inline-block;
	font-size: 1em;
	line-height: 1.4em;
	font-weight: normal;
	text-decoration: none;
	cursor: pointer;
	padding: 10px 24px 10px 20px;
	
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	-ms-transition: 0.2s ease;
	transition: 0.2s ease;
}
a.back-button-style:before { 
	display: inline;
	content: "\f060 ";
	padding: 0 10px 0 0;
	vertical-align: bottom;
	font-family: 'FontAwesome';
	font-size: 1em;
}
a.back-button-style:hover {
	background-color: #a2bc0c;
	color: #fff;
	border-color: #a2bc0c;
}

a.line-button-style {
	display: inline-block;
	padding: 14px 10px;
	font-size: 2em;
	color: #000;
	text-decoration: none;
	border-top: 2px solid #000;
	border-bottom: 2px solid #000;
	margin: 20px;
}
a.line-button-style:after {
	content: '';
	display: inline-block;
	font-family: 'FontAwesome';
	content: "\f054";
	font-size: 10px;
	padding: 0 0 0 10px;
	vertical-align: top;
}
	

p.p-tiny { font-size: 0.8em; letter-spacing: 0.02em; text-transform: uppercase; color: #000; }
p.p-uppercase { letter-spacing: 0.2em; text-transform: uppercase; font-weight: 500; }
p.p-large { font-size: 1.2em; line-height: 1.6em; }
p.text-center { text-align: center; }
p.p-xlarge {
	font-size: 3em;
	line-height: 1.2em;
	font-weight: 800;
	padding: 30px 0 20px 0 ;
}
p.p-serif {
	font-size: 2em;
	padding: 0.2em 0;
	line-height: normal;
	color: #000;
}
p.p-serif-large {
	font-size: 3em;
	padding: 0.2em 0;
	line-height: normal;
	color: #000;
}

span.color-bold, .important { color: #000; font-weight: bold; }

span.color-large, .name-of-person { color: #000; font-size: 1.2em; font-weight: normal; }

span.no-color-bold, .detail { font-weight: bold; }


.align-center { text-align: center; }
.align-left { text-align: left; }
.align-right { text-align: right; }

td.very-bright, th.very-bright {
	background-color: #fff;
	color: #000;
}

td.bright, th.bright {
	background-color: #f5f5f5;
	color: #000;
}

td.medium, th.medium {
	background-color: #eee;
	color: #000;
}

td.dark, th.dark {
	background-color: #000;
	color: #FFFFFF;
	font-weight: normal;
}

td.dark a {
	color: #FFFFFF;
}

td.align-center { text-align: center !important; }

td.align-left { text-align: left !important; }

td.align-right{ text-align: right !important; }

td.no-wrap { white-space: nowrap !important; }

tr.no-border td { border: none !important; }


table.cell-spacing {
	background-color: #FFFFFF;
	color: #000;
	border-collapse: collapse;
	width: 100%;
}

table.cell-spacing td, table.cell-spacing th {
	border-bottom: none;
	border-left: solid 2px #FFF;
	border-bottom: solid 2px #FFF;
	margin: 0;
	padding: 10px;
	vertical-align: middle;
	text-align: left;
}

table.cell-spacing td.very-bright, table.cell-spacing th.very-bright { 	border-bottom: solid 2px #fbf3f4; }

table.cell-spacing td.brightest, table.cell-spacing th.brightest { border-right: solid 2px #fbf3f4; }

table.bottom-lines {
	margin: 0;
	padding: 0;
	border-collapse: collapse;
	width: 100%;
}
table.bottom-lines td, table.bottom-lines th {
	padding: 10px 5px;
	vertical-align: middle;
	text-align: left;
	border-bottom: solid 2px #eee;
	font-weight: normal;
}
table.bottom-lines th { font-weight: bold; }

table.bottom-lines td.bright, table.bottom-lines th.bright,
table.bottom-lines td.medium, table.bottom-lines th.medium,
table.bottom-lines td.dark, table.bottom-lines th.dark {
	border-bottom: solid 1px #FFF;
	border-right: solid 1px #FFF;
}


table.no-lines {
	margin: 0;
	padding: 0;
	border-collapse: collapse;
}
table.no-lines td, table.no-lines th {
	background-color: #FFFFFF;
	padding: 5px 10px 0 0;
	margin: 0;
	text-align: left;
	vertical-align: top;
	border-bottom: none;
}
table.no-lines th { font-weight: bold; }


table.full-width { width: 100%; }


table.striped-table {
	margin: 0;
	padding: 0;
	border-collapse: collapse;
}
table.striped-table tr.row-odd td {
	background-color: #f5f5f5;
}
table.striped-table tr.row-even td {
	background-color: #ffffff;
}

.ce-bodytext td p { padding: 0; }


/* --------------------- */
/* ----- Powermail ----- */
/* --------------------- */

.tx-powermail { background: #fff; padding: 0 0 40px 0; }
.tx-powermail fieldset:ater { Display: block; content: ' '; clear: both; float: none; }

.powermail_legend {
	display: block;
	float: none;
	clear: both;
	font-size: 1.4em;
	font-weight: bold;
	padding: 60px 0 0 0;
	text-transform: uppercase;
}

.powermail_fieldset.nolabel .powermail_legend { display: none; }

.powermail_morestep .powermail_legend { display: none; }
.powermail_morestep .powermail_form h3 { display: none; }

.powermail_fieldwrap {
	display: block;
	float: left;
	padding: 20px 20px 0 0;
}

.powermail_field input[type="text"], 
.powermail_field input[type="email"], 
.powermail_field select, 
.powermail_field textarea {
	display: block;
	width: 100%;
	border: solid 1px #000;
	background: #F5F5F5;
	/*
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	border-radius: 10px;
	*/
	font-size: inherit;
}
.powermail_field input[type="text"], 
.powermail_field input[type="email"], 
.powermail_field select {
	height: 44px;
	line-height: 44px;
	padding: 0 10px;
}
.powermail_field textarea {
	padding: 10px;
}

.powermail_field input:required, .powermail_field textarea:required { background: #FFF url('../images/field_required.png') no-repeat right top; }
.powermail_field input.powermail_field_error, .powermail_field textarea.powermail_field_error { border: solid 2px #F00; background: #FFF url('../images/field_error.png') no-repeat right top; }
li.parsley-required, li.parsley-custom-error-message { color: #FF0000; }
.powermail_field input.parsley-success, .powermail_field textarea.parsley-success { border: solid 2px #090; background: #FFF url('../images/field_success.png') no-repeat right center; }

.powermail_fieldwrap_type_html { width: 100%; clear: both; float: none; }

.powermail_fieldwrap_pauschalen_teaser { width: 100%; float: none; clear: both; padding: 0; }
.powermail_fieldwrap_pauschale { /* display: none; */ width: 100%; float: none; clear: both; }

.powermail_fieldwrap_anreise { width: 40%; }
#powermail_field_anreise { position: relative; background:#F5F5F5 url('../images/calendaricon.png') no-repeat right center; }
.powermail_fieldwrap_naechte { width: 20%; }
.powermail_fieldwrap_personen { width: 20%; }
.powermail_fieldwrap_zimmer { width: 20%; }

.powermail_fieldwrap_kinder { width: 30%; }
.powermail_fieldwrap_alterderkinder { width: 70%; }

.powermail_fieldwrap_anrede { width: 15%; clear: left; }
.powermail_fieldwrap_titel { width: 15%; }
.powermail_fieldwrap_vorname { width: 35%; }
.powermail_fieldwrap_familienname { width: 35%; }
.powermail_fieldwrap_email { width: 50%; clear: left; }
.powermail_fieldwrap_telefon { width: 50%; }
.powermail_fieldwrap_firma { width: 100%; clear: left; }
.powermail_fieldwrap_strasse { width: 100%; clear: left; }
.powermail_fieldwrap_plz { width: 20%; clear: left; }
.powermail_fieldwrap_ort { width: 40%; }
.powermail_fieldwrap_land { width: 40%; }
.powermail_fieldwrap_nachricht { width: 100%; float: none; clear: both; }
.powermail_fieldwrap_aufmerksam { width: 100%; float: none; clear: both; }

.powermail_fieldwrap_spamspamspam { width: 50%; clear: left; }
#powermail_field_spamspamspam { max-width: 229px; }

.powermail_fieldwrap_pflichtfelder { clear: left; }

.powermail_fieldwrap_anzahl { width: 30%; float: none; clear: both; }
#powermail_field_anzahl { font-size: 1.6em; height: 60px; line-height: 60px; padding: 0 20px;}
.powermail_fieldwrap_beschenkter { width: 100%; float: none; clear: both; }
.powermail_fieldwrap_newsletter { width: 100%; float: none; clear: both; }

.powermail_fieldwrap_zimmerkategorie { width: 100%; clear: left; }
.powermail_fieldwrap_zimmerkategorie .powermail_field {
	display: block;
	width: 100%;
	padding: 0 10px;
	border: solid 1px #bbb;
	background: #F5F5F5;
}

.powermail_fieldwrap_zimmerkategorie .powermail_field .checkbox {
	display: inline-block;
	width: 220px;
	height: 40px;
	line-height: 40px;
	padding: 0 40px 0 0;
}

.powermail_fieldwrap_frage, .powermail_fieldwrap_antwort { float: none; clear: both; }
.powermail_fieldwrap_antwort { padding-bottom: 20px; }
.powermail_fieldwrap_antwort > label.powermail_label { display: none; }
.powermail_fieldwrap_antwort .radio { padding: 5px 0; }
.powermail_fieldwrap_antwort .radio.powermail_field_error { color: #FF0000; }
.powermail_fieldwrap_teilnahme { width: 100%; float: none; clear: both; }

.tx-powermail .btn-group  {
	display: block;
	padding: 20px 20px 0 0;
}
.tx-powermail .btn-group:after {
	display: block;
	content: " ";
	float: none;
	clear: both;
}
.powermail_form button.btn-default {
	display: inline-block;
	height: 50px;
	line-height: 50px;
	border: solid 1px #000;
	background: #FFF;
	color: #000;
	padding: 0;
	width: 50%;
	margin: 0;
	cursor: pointer;
	font-family: inherit;
	font-weight: inherit;
	font-size: inherit;
	text-transform: uppercase;
}
.powermail_form button.btn-primary {
	border: solid 1px #000;
	background: #000;
	color: #FFF;
}

.visible-xs-inline-block { display: block; float: right; }
.visible-xs-inline-block:first-child { float: left; }

.powermail_fieldset_1 .powermail_tab_navigation { float: none; clear: both; text-align: right; }
.powermail_fieldset_2 .powermail_tab_navigation { float: left; }
.powermail_fieldwrap_senden { float: right; }


.powermail_fieldwrap label { position: relative; }
.powermail_fieldwrap label span { display: inline-block; width: 40px; }

.powermail_fieldwrap label div.package-description {
	display: none;
	width: 600px;
	position: absolute;
	left: 20px;
	bottom: 30px;
	background: #FFF;
	font-size: 1em;
	padding: 5px 10px;
	border: solid 2px #e5e5e5;
}
.powermail_fieldwrap label:hover div.package-description { display: block; }

ul.powermail_field_errors-list li {
	padding: 0;
	background: none;
}

.powermail_confirmation table { width: 100%; }
.powermail_confirmation td { padding: 8px 20px 8px 0; border-bottom: solid 1px #000; }

.privacy-confirmation { padding: 20px 0; }

.please-check-data {
	display: block;
	font-size: 1.2em;
	font-weight: bold;
	padding: 20px 0;
}

.powermail_fieldwrap_pauschalenteaser { padding: 0; width: 100%; float: none; clear: both; }
.packageteaser {
	display: block;
	padding: 40px 20px 20px 0;
}
.packageteaser-image {
	display: block;
	float: left;
	width: 31.25%;
}
.packageteaser-image img {
	display: block;
	width: 100%;
	height: auto;
}
.packageteaser-text {
	display: block;
	float: left;
	width: 65%;
	margin-left: 3.75%;
}
.packageteaser h3 { padding-top: 0; }
.packageteaser h3 span {
	display: block;
	float: right;
}

.powermail_fieldwrap_prospekte > .powermail_label { display: none; }
.powermail_fieldwrap_prospekte .powermail_field { padding: 0 0 20px 0; }
.powermail_fieldwrap_prospekte .checkbox { padding: 10px 0; }

.powermail_fieldwrap_betrieb { width: 100%; float: none; clear: both; }

/* Seminar */

.powermail_fieldwrap_veranstalter, .powermail_fieldwrap_aufmerksam { width: 100%; }
.powermail_fieldwrap_ansprechperson, .powermail_fieldwrap_seminarleitung { width: 50%; }
.powermail_fieldwrap_startdatum, .powermail_fieldwrap_enddatum { width: 30%; }
.powermail_fieldwrap_startzeit, .powermail_fieldwrap_endzeit { width: 20%; }
.powermail_fieldwrap_teilnehmer, .powermail_fieldwrap_zimmerbedarf, .powermail_fieldwrap_einzelzimmer, .powermail_fieldwrap_doppelzimmer { width: 25%; }
.powermail_fieldwrap_raum { float: none; clear: both; width: 100%; }
.powermail_fieldwrap_raum .checkbox, .powermail_fieldwrap_zimmerbedarf .radio { display: inline-block; padding-top: 7px; padding-right: 20px; }
.powermail_fieldset_7, .powermail_fieldset_8 { width: 50%; float: left; }
.powermail_fieldset_9 { float: none; clear: both; }
.powermail_fieldset_8 .powermail_fieldwrap { float: none; }
.powermail_fieldset_8 .powermail_fieldwrap_type_input { width: 50%; }
.powermail_fieldwrap_tischform .powermail_label, .powermail_fieldwrap_raumausstattung .powermail_label { display: none; }
#powermail_field_startdatum, #powermail_field_enddatum { position: relative; background: #FFF url('../images/calendaricon.png') no-repeat right center; }

/* Gewinnspiel */

.powermail_fieldwrap_frage, .powermail_fieldwrap_antwort { float: none; clear: both; }
.powermail_fieldwrap_antwort { padding-bottom: 20px; }
.powermail_fieldwrap_antwort > label.powermail_label { display: none; }
.powermail_fieldwrap_antwort .radio { padding: 5px 0; }
.powermail_fieldwrap_antwort .radio.powermail_field_error { color: #FF0000; }

.powermail_fieldwrap_datenschutzhtml, .powermail_fieldwrap_newsletterdatenschutz, .powermail_fieldwrap_teilnahme { width: 100%; }
.powermail_fieldwrap_datenschutzhtml { font-weight: bold; }
.powermail_fieldset_11 .powermail_fieldwrap_email { width: 100%; }

/* Checkbox, Radiobutton */

.powermail_fieldwrap div.radio.fancy,
.powermail_fieldwrap div.checkbox.fancy { padding: 5px 10px; }
.powermail_fieldwrap div.radio.fancy label,
.powermail_fieldwrap div.checkbox.fancy label { line-height: 1.6em; }

/* remove standard-styles */

.fancy input[type='checkbox'],
.fancy input[type='radio'] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: none;
  border-radius: 0;
  font-size: 1em;
  width: 100%
} 

/* graceful degradation for ie8 */

.fancy input[type='checkbox'],
.fancy input[type='radio'] {
  width: auto;
  float: left;
  margin-right: .75em;
  background: transparent;
  border: none;
}

.fancy input[type='checkbox']:checked,
.fancy input[type='checkbox']:not(:checked),
.fancy input[type='radio']:checked,
.fancy input[type='radio']:not(:checked) {
  background: transparent;
  position: relative;
  visibility: hidden;
  margin: 0;
  padding: 0;
}

.fancy input[type='checkbox'] + label,
.fancy input[type='radio'] + label {
  cursor: pointer;
}

.fancy input[type='checkbox']:checked + label::before,
.fancy input[type='checkbox']:not(:checked) + label::before,
.fancy input[type='radio']:checked + label::before,
.fancy input[type='radio']:not(:checked) + label::before {
    content:' ';
    display: inline-block;
	vertical-align: top;
    width: 24px;
    height: 24px;
    position: relative;
    top: 4px;
    border: solid 1px #000;
    background: white;
    margin-right: 0.6em;
    box-shadow: inset 0 1px 1px 0 rgba(0,0,0,.1);
}

.powermail_field_error input[type='checkbox']:not(:checked) + label::before,
.powermail_field_error input[type='radio']:not(:checked) + label::before { border-color: #ff0000; }

.fancy input[type=radio]:checked + label::before,
.fancy input[type=radio]:not(:checked) + label::before {
  border-radius: 30px;
}

.fancy input[type='checkbox']:hover  + label::before,
.fancy input[type='radio']:hover  + label::before {
  background: #ddd;
  box-shadow: inset 0 0 0 2px white;
}

.fancy input[type='checkbox']:checked  + label::before,
.fancy input[type='radio']:checked  + label::before {
  background: #000;
  box-shadow: inset 0 0 0 2px white;
}

.powermail-privacy-info p { line-height: 1.8em; }


/* -------------------------- */
/* ----- Indexed search ----- */
/* -------------------------- */

.tx-indexedsearch-searchbox {
	display: block;
	margin: 20px 0;
}
.tx-indexedsearch-searchbox legend {
	font-size: 2.0em;
	line-height: 1.2em;
	font-weight: normal;
	color: #000;
	padding: 0 0 1em 0;
}


.tx-indexedsearch-form, .tx-indexedsearch-search-submit {
	display: inline-block;
}
input.tx-indexedsearch-searchbox-sword {
	display: inline-block;
	*display: inline;
	width: 280px;
	height: 40px;
	line-height: 40px;
	font-size: 1em;
	padding: 0 10px;
	border: solid 1px #ddd;
	vertical-align: middle;
}
input.tx-indexedsearch-searchbox-button {
	display: inline-block;
	*display: inline;
	height: 40px;
	line-height: 40px;
	padding: 0 20px;
	background: #eee;
	border: solid 1px #ddd;
	color: #000;
	margin: 0 0 0 10px;
	font-size: 1em;
	font-weight: normal;
	vertical-align: middle;
	cursor: pointer;
}
input.tx-indexedsearch-searchbox-button:hover {
	background: #ddd;
}

.tx-indexedsearch-res {
	display: block;
	padding: 10px 0;
	margin: 0 0 20px 0;
	border-bottom: 2px solid #eee;
}

h3.tx-indexedsearch-title {
	text-decoration: underline;
	margin-top: 20px;
}
h3.tx-indexedsearch-title a {
	text-decoration: underline;
}
p.tx-indexedsearch-info {
	display: block;
	white-space: nowrap;
	overflow: hidden;
	font-size: 0.9em;
	border-bottom: solid 1px #eee;
}
.tx-indexedsearch-browsebox {
	margin: 20px 0;
}
.tx-indexedsearch-browsebox li {
	display: inline-block;
	*display: inline;
	margin-right: 20px;
}
.tx-indexedsearch-browsebox li a {
	text-decoration: none;
}
.tx-indexedsearch-browsebox li a:hover {
	text-decoration: underline;
}


/* ----- Slider ----- */

.flex-direction-nav { position: static; }
.flex-direction-nav a {
    background: transparent url('../images/slide_left.png') no-repeat left center;
    cursor: pointer;
	text-decoration: none;
    display: block;
	width: 50px;
    height: 50px;
    margin: -25px 0 0 0;
    position: absolute;
    text-indent: -9999px;
	overflow: hidden;
    top: 50%;
	z-index: 60;
}
.flex-direction-nav a.flex-next {
	right: 0;
	-webkit-transform: scaleX(-1);
	-moz-transform: scaleX(-1);
	-ms-transform: scaleX(-1);
	-o-transform: scaleX(-1);
	transform: scaleX(-1);
}
.flex-direction-nav a.flex-prev { left: 0; }
.flex-direction-nav a.flex-disabled { display: none; }


/* ------------------------ */
/* ----- Gridelements ----- */
/* ------------------------ */

/* 1-spaltig */

.ge-default {
	display: block;
	width: 100%;
	max-width: 100%;
}

/* 2-spaltig */

.ge-cols_2 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	row-gap: 50px;
	align-items: stretch;
	justify-content: space-between;
}
	
.ge-cols_2 .ge-left { flex-basis: 48%; }
.ge-cols_2 .ge-right { flex-basis: 48%; }

.w4060 .ge-left { flex-basis: 38%; }
.w4060 .ge-right { flex-basis: 58%; }
.w6040 .ge-left { flex-basis: 58%; }
.w6040 .ge-right { flex-basis: 38%; }

.w3070 .ge-left { flex-basis: 29%; }
.w3070 .ge-right { flex-basis: 67%; }
.w7030 .ge-left { flex-basis: 67%; }
.w7030 .ge-right { flex-basis: 29%; }

/* 3-spaltig */

.ge-cols_3 {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	row-gap: 50px;
	align-items: stretch;
	justify-content: space-between;
}
.ge-cols_3 .ge-col {
	flex-basis: 30%;
	flex-basis: 30.99%;
	/* flex: 1 1 346px; */
	/* flex: flex-grow flex-shrink flex-basis */
}


/* 2-spaltig mit Einleitung */

.ge-cols_2_intro .ge-intro { display: block; width: 100%; float: none; clear: both; text-align: center; }
.ge-cols_2_intro .ge-intro * { text-align: center; }

/* Kacheln */

.ge-tiles-wrap {
	display: block;
	padding: 20px 0;
}
.ge-tile a { text-decoration: none; }
.ge-tile .tile-image {
	display: block;
	width: 100%;
	position: relative;
}
.ge-tile .tile-image img {
	display: block;
	width: 100%;
	height: auto;
}
.ge-tile .tile-image-title { display: none; }

.ge-tile .tile-text h3 {
	display: block;
	padding: 20px 0;
	font-size: 2em;
}
.ge-tile .tile-text {
	display: block;
	padding: 20px 40px 60px 40px;
}

.transition-slow {
	-webkit-transition: 0.5s ease;
	-moz-transition: 0.5s ease;
	-o-transition: 0.5s ease;
	-ms-transition: 0.5s ease;
	transition: 0.5s ease;
}

.transition-fast {
	-webkit-transition: 0.2s ease;
	-moz-transition: 0.2s ease;
	-o-transition: 0.2s ease;
	-ms-transition: 0.2s ease;
	transition: 0.2s ease;
}


/* Teaser */

.ge-teaser-wrap {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	border: 1px solid #fff;
	padding: 60px 0;
}

.ge-teaser {
	flex: 1 1 400px;
	/* flex: flex-grow flex-shrink flex-basis */
	position: relative;
	overflow: hidden;
	background: #000;
	border: 1px solid #fff;
}
.ge-teaser:after {
	display: block;
	content: '';
	width: 100%;
	padding-top: 75%;
}
.ge-teaser a { text-decoration: none; }

.ge-teaser-wrap .ge-teaser:nth-child(3n+1) { clear: both; }
.ge-teaser .ge-teaser-image {
	display: block;
	width: 100%;
	overflow: hidden;
	position: absolute;
    background-attachment: scroll;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	
	-webkit-transition: 0.3s ease;
	-moz-transition: 0.3s ease;
	-o-transition: 0.3s ease;
	-ms-transition: 0.3s ease;
	transition: 0.3s ease;
	opacity: 1;
}
.ge-teaser .ge-teaser-image:after {
	display: block;
	content: '';
	width: 100%;
	padding-top: 75%;
}

.ge-teaser .ge-teaser-image-caption {
	display: inline-block;
	position: absolute;
	right: 0;
	bottom: 0;
	background: rgba(255,255,255,0.5);
	color: #000;
	font-size: 0.9em;
	line-height: 1.4em;
	z-index: 10;
	padding: 0 5px;
}

.ge-teaser-date {
	display: block;
	background: #000;
	color: #fff;
	width: 100px;
	padding-top: 10px;
	text-align: center;
	position: absolute;
	left: 40px;
	top: 0;
}
.ge-teaser-date span { display: inline-block; width: 90%; text-align: center; line-height: normal; }
span.ge-teaser-a { font-size: 14px; padding: 0; }
span.ge-teaser-d { font-size: 40px; padding: 0 0 15px 0; border-bottom: 2px solid rgba(255,255,255,0.2); }
span.ge-teaser-b { font-size: 18px; padding: 10px 0; }
span.ge-teaser-bb { font-size: 14px; padding: 10px 0; }

.ge-teaser .ge-teaser-text {
	display: block;
	width: 100%;
	font-size: 1em; 
	color: #fff;
	line-height: 1.4em;
	float: left;
	padding: 40px;
	position: absolute;
	top: 0;
	/* transform: translateY(-50%); */
	opacity: 0;
}

.ge-teaser .ge-teaser-text strong { font-size: 1.2em; font-weight: bold; }

.ge-teaser-title {
	display: block;
	width: 100%;
	position: absolute;
	font-size: 2em;
	font-size: 2.4vw;
	line-height: 1.2em;
	left: 0;
	bottom: 0;
	padding: 40px;
	color: #fff;
	text-shadow: 0 0 5px rgba(0,0,0,0.3);
	background: linear-gradient(0deg, rgba(0,0,0,0.5) 0%, rgba(0,0,0,0) 100%);
}

.ge-teaser h3 {
	font-size: 2.4em;
	font-size: 2em;
	font-weight: normal;
	text-transform: none;
	padding: 0 0 20px 0;
	margin: 0;
	line-height: 1.4em;
}

.ge-teaser h4 {
	font-size: 1.2em;
	color: #000;
	text-transform: normal;
	padding: 0 0 20px 0;
	margin: 0;
	line-height: 1.4em;
}

.ge-teaser .ge-teaser-button {
	display: inline-block;
	height: 40px;
	line-height: 36px;
	background: transparent;
	border: 2px solid #000;
	color: #000;
	padding: 0 20px;
	margin: 15px 0 0 0;
	text-transform: uppercase;
	font-size: 1em;
	font-weight: normal;
	letter-spacing: 0.04em;
}
.ge-teaser .ge-teaser-button:after {
	display: inline;
	content: "\f054";
	padding: 0 0 0 0.8em;
	font-family: 'FontAwesome';
	font-weight: normal;
	text-transform: none;

}
.ge-teaser .ge-teaser-button:hover {
	background: #000;
	color: #fff;
}


/* Teaser fullwidth */

.ge-teaser-fullwidth-wrap {
	display: block;
	padding: 60px 0;
}
.ge-teaser-fullwidth {
	width: 100%;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 0 auto;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
	justify-content: space-between;
	align-content: center;
	align-items: center;
}
.ge-teaser-fullwidth .ge-teaser-image {
	display: block;
	width: 100%;
	overflow: hidden;
	position: relative;
}
.ge-teaser-fullwidth .ge-teaser-image-caption {
	display: inline-block;
	position: absolute;
	right: 0;
	bottom: 0;
	background: rgba(255,255,255,0.5);
	color: #000;
	font-size: 0.9em;
	line-height: 1.4em;
	z-index: 10;
	padding: 0 5px;
}
.ge-teaser-fullwidth img {
	display: block;
	width: 100%;
	height: auto;
}
.ge-teaser-fullwidth .ge-teaser-text {
	display: block;
	width: 100%;
	font-size: 1em; 
	line-height: 1.8em;
	position: relative;
	padding: 0 5%;
	background: #b6aba0;
	text-align: center;
	padding: 100px 20%;
}
.ge-teaser-fullwidth .ge-teaser-text.bg-blue { background: #000; }
.ge-teaser-fullwidth .ge-teaser-text * { color: #fff; }
.ge-teaser-fullwidth h3 {
	font-size: 2.4em;
	font-size: 2em;
	color: #000;
	font-weight: normal;
	text-transform: none;
	padding: 0 0 20px 0;
	margin: 0;
	line-height: 1.4em;
}

.ge-teaser-fullwidth h4 {
	font-size: 1.2em;
	color: #000;
	text-transform: normal;
	padding: 0 0 20px 0;
	margin: 0;
	line-height: 1.4em;
}


/* Teaser multi columns */



/* Team */

.ge-team-wrap {
	display: block;
	padding: 30px 0;
	width: 100%;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 0 auto;
}
.ge-team-slider {
	display: block;
	padding: 30px 0;
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
	position: relative;
}
.ge-team {
	display: block;
	width: 320px;
	float: left;
}
.ge-team a { text-decoration: none; }
.ge-team-image {
	max-width: 240px;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
}
.ge-team-image:after {
	display: block;
	width: 100%;
	padding-top: 100%;
	content: '';
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 0;
	box-shadow: 0 0 20px rgba(0,0,0,0.1) inset;
}	
.ge-team img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 50%;
}
.ge-team-cat {
	display: block;
	height: 20px;
	line-height: 20px;
	font-weight: bold;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	font-size: 0.8em;
	color: #b6aba0;
}

.ge-team-text {
	padding: 20px;
}
.ge-team-text * { text-align: center; }
.ge-team h2 {
	font-size: 1.6em;
	color: #000;
	text-transform: none;
	padding: 20px 0;
	margin: 0;
	line-height: 1.4em;
	float: none;
	clear: both;
}
.ge-team h3 {
	font-size: 2em;
	color: #000;
	text-transform: none;
	padding: 0 0 10px 0;
	margin: 0;
	line-height: 1.4em;
}
.ge-team h4 {
	font-size: 1.2em;
	text-transform: normal;
	padding: 0 0 20px 0;
	margin: 0;
	line-height: 1.4em;
}

.ge-team-slider .flex-direction-nav { position: static; }
.ge-team-slider .flex-direction-nav a { top: 150px; }
.ge-team-slider .flex-direction-nav a.flex-next { right: -50px; }
.ge-team-slider .flex-direction-nav a.flex-prev { left: -50px; }
.ge-team-slider .flex-direction-nav a.disabled { display: none; }


/* Collage */

.ge-collage-wrap { display: block; padding: 60px 20px; }
.ge-collage {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
	justify-content: space-between;
	align-content: center;
	align-items: center;
	width: 100%;
	max-width: 1140px;
	max-width: var(--content-max-width);
	margin: 0 auto;
}
.ge-collage-image { position: relative; }
.ge-collage img { display: block; margin-bottom: 20px; opacity: 1; }
.ge-collage-item a:hover img { opacity: 0.2; }
.ge-collage-caption {
	display: block;
	width: 100%;
	position: absolute;
	top: 50%;
	left: 0;
	padding: 20px;
	margin-top: -10px;
	text-align: center;
	color: #fff;
	font-size: 2em;
	-webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
	opacity: 1;
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
.ge-collage-item a:hover .ge-collage-caption { opacity: 1; color: #000; text-shadow: 0px 0px 5px rgba(255, 255, 255, 0.5); }
.ge-collage .ge-left { display: block; width: 50%; padding-right: 10px; }
.ge-collage .ge-right { display: block; width: 50%; padding-left: 10px; }
.ge-collage .ge-left .ge-collage-image { float: right; }
.ge-collage .ge-right .ge-collage-image { float: left; }
.ge-collage-text { padding: 40px 0; }

.ge-collage.w4060 .ge-left { width: 40%; }
.ge-collage.w4060 .ge-right { width: 60%; }
.ge-collage.w6040 .ge-left { width: 60%; }
.ge-collage.w6040 .ge-right { width: 40%; }

.ge-collage.w3070 .ge-left { width: 30%; }
.ge-collage.w3070 .ge-right { width: 70%; }
.ge-collage.w7030 .ge-left { width: 70%; }
.ge-collage.w7030 .ge-right { width: 30%; }



/* Icons */

.ge-icon-wrap { display: block; text-align: center; }
.ge-icon { display: inline-block; vertical-align: top; width: 26%; padding: 40px 20px; min-width: 260px;  }
.ge-icon-symbol {
	display: block;
	width: 120px;
	height: 120px;
	line-height: 120px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	background-color: #008237;
	background-position: center center;
	background-repeat: no-repeat;
	font-family: 'FontAwesome';
	color: #fff;
	font-size: 40px;
	margin: 5px auto;
}
.ge-icon a { text-decoration: none; }
.ge-icon:hover .ge-icon-symbol { width: 130px; height: 130px; line-height: 130px; margin: 0 auto; background-color: #3d313f; }
.ge-icon:hover h3 { color: #008237; }

/* Testimonials */

.ge-testi-wrap { display: block; width: 100%; max-width: 760px; margin: 0 auto; padding: 60px 0; position: relative; }
.ge-testi { display: block; }
ul.slides .ge-testi { display: block; padding: 0 80px; }
.ge-testi-image {
	display: block;
	width: 200px;
	height: 200px;
	float: left;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	overflow: hidden;
}
.ge-testi-text {
	display: block;
	width: 360px;
	width: calc(100% - 240px);
	float: right;
	font-size: 0.9em;
}
ul.slides .ge-testi-text { width: 360px; }
.testi-name { font-size: 1.6em; font-weight: 800; }
.testi-company { font-size: 1.2em; padding: 10px 0; }

.ge-testi-wrap .flex-direction-nav { position: static; }
.ge-testi-wrap .flex-direction-nav a {
    background: transparent;
    cursor: pointer;
	text-decoration: none;
    display: block;
	width: 50px;
    height: 80px;
    position: absolute;
    text-indent: -9999px;
	overflow: hidden;
    top: 145px;
	z-index: 60;
	background: transparent url('../images/slide_left.png') no-repeat center center;
}

.ge-testi-wrap .flex-direction-nav a.flex-next { right: 0; }

.ge-testi-wrap .flex-direction-nav a.flex-prev { left: 0; }
.ge-testi-wrap .flex-direction-nav a.disabled { display: none; }


/* call to action */

.ge-calltoaction { padding: 60px 0 40px 0; position: relative; }

.ge-cta-full {
	display: block;
	width: 100%;
	height: 640px;
	margin: 0 0 20px 0;
	position: relative;
    background-attachment: scroll;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
}

.ge-cta-text {
	display: block;
	width: 80%;
	max-width: 570px;
	position: absolute;
	left: 50%;
	margin-left: -570px;
	bottom: 0;
}
.ge-cta-text .inner { display: block; background: #000; padding: 40px; }
.ge-cta-text .inner * { color: #fff; }
.ge-cta-text h2 { display: inline-block; color: #fff; padding-top: 0; font-size: 2em; }

.ge-cta-text a.overlay-button {
	display: inline-block;
	height: 50px;
	line-height: 46px;
	background: #fff;
	border: 2px solid #fff;
	padding: 0 30px;
	margin: 20px 0 0 0;
	font-family: 'xeye_sans', Arial, Helvetica, sans-serif;
	text-transform: uppercase;
	text-decoration: none;
	font-weight: normal;
	font-size: 1.1em;
	letter-spacing: 0.04em;
	color: #000;
	text-shadow: none;
}
.ge-cta-text a.overlay-button:after {
	display: inline;
	content: "\f054";
	padding: 0 0 0 0.8em;
	font-family: 'FontAwesome';
	font-weight: normal;
	text-transform: none;

}
.ge-cta-text a.overlay-button:hover{
	background: transparent;
	border-color: #fff;
	color: #fff;
}

.ge-cta-full.textonly { background: #000; }
.ge-cta-full.textonly .ge-cta-text {
	max-width: 700px;
	margin: 0;
	top: 50%;
	left: 50%;
	bottom: auto;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}
.ge-cta-full.textonly .inner { text-align: center; padding: 0 50px; }


/* ----- */

.content-underlay {
	display: block;
	width: 100%;
	background: #f2f2f2;
	position: absolute;
	z-index: -1;
}

/* Toggle Element */

.toggle-element {
	display: block;
	width: 100%;
	max-width: 1220px;
	padding: 0 40px;
	margin: 0 auto;
}
.toggle-element h3.slide-210 {
	display: block;
	font-size: 1.1em;
	font-weight: bold;
	text-transform: none;
	text-align: left;
	padding: 14px 20px;
	margin: 0 0 4px 0;
	cursor: pointer;
	background: #000;
	color: #fff;
	position: relative;
}
.toggle-element h3.slide-210:hover { background: #555; }
.toggle-element h3.slide-210:after {
	display: block;
	content: ' ';
	width: 40px;
	height: 40px;
	line-height: 40px;
	position: absolute;
	top: 50%;
	margin-top: -20px;
	right: 10px;
	background: transparent url('../images/toggle_down_white.png') no-repeat center center;
}
.toggle-element h3.slide-210.active:after { background-image: url('../images/toggle_up_white.png'); }

.toggle-element .slide-me-210 {
	padding: 10px 0;
}


/* Newsletter Subscription */

#newstroll-frame {
	display: block;
	width: 100%;
	height: 500px;
	padding: 0;
	margin: 0;
	border: none;
	overflow: auto;
}

#nl-form {
	display: block;
	width: 100%;
	max-width: 1140px;
	margin: 40px auto;
}

#nl-form .group-wrap {
	display: inline-block;
	margin: 20px 0 0 0;
	max-width: 100%;
}

#nl-form label { 
	display: inline-block;
	height: 40px;
	line-height: 40px;
	padding: 0 20px 0 0;
	vertical-align: middle;
	width: 150px;
}

#nl-form .nl-fieldwrap {
	display: block;
	padding: 0 0 20px 0;
}

#nl-form label span { color: #FF0000; } 

#nl-form input[type="text"], #nl-form select { 
	font-size: 1em;
	font-family: inherit;
	border: 1px solid #555;
	background: #FFF;
	color: #555555;
	margin: 0 20px 0 0;
	height: 40px;
	line-height: 40px;
	padding: 0 10px;
	width: 400px;
	max-width: 100%;
	vertical-align: middle;
}

#nl-form input[type="submit"] {
	cursor: pointer;
	font-family: inherit;
	margin: 0 20px 0 0;
	vertical-align: middle;
	line-height: 26px;
	padding: 10px 20px;
}

#nl-form .clear-floating { display: block; height: 10px; }

.newstroll-iframe-wrap {
	display: block;
	width: 100%;
	max-width: 1140px;
	margin: 0 auto;
}

#nl-archive { display: block; margin-top: 40px; }
#nl-archive hr, #nl-archive br { display: none; }
#nl-archive span.rssheadline { display: block; padding: 4px 0 2px 0; }
#nl-archive span.rssheadline a { text-decoration: none; }
#nl-archive span.rssheadline a:before { content: '» '; }
#nl-archive span.rssheadline a:hover { text-decoration: underline; }


.ce-media video, .tx-videotag video { width: 100%; height: auto; }

.responsive-iframe {
	position: relative;
	overflow: hidden;
	width: 100%;
}
.responsive-iframe.ar-16-9 { padding-top: 56.25%; }
.responsive-iframe.ar-4-3 { padding-top: 75%; }

.responsive-iframe iframe {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	border: none;
}

a.burgenland-logo {
	display: block;
	width: 300px;
	height: 100px;
	background: transparent url('../images/burgenland_logo.png') no-repeat left center;
	position: fixed;
	left: 0;
	bottom: 0;
	z-index: 200;
	text-decoration: none;
	text-indent: -999em;
	overflow: hidden;
}



/* ------------------------- */
/* ----- media queries ----- */
/* ------------------------- */


.showmobile { display: none; }
.hidemobile { display: block; }


@media only screen and (max-width: 1600px) and (min-width: 1025px) {
	
	
	
}


@media only screen and (min-width: 1200px) {
	

	/* ----- Content ----- */
	
	.sidebar {
		display: block;
		width: 260px;
		float: left;
		padding: 50px 0 0 0;
	}
	.content.subpage {
		width: 800px;
		float: right;
		padding-top: 30px;
	}
	.content.subpage h1.page-header { text-align: left; }

}


@media only screen and (min-width: 1025px) {
	
	/* ----- Header ----- */
	
	.search-small { display: none; }
	

	/* ----- Breadcrumb ----- */
	
	.breadcrumb-wrap {
		display: block;
		position: relative;
	}
	.breadcrumb {
		display: block;
		width: 100%;
		text-align: center;
		font-size: 1em;
		color: #000;
		background: #fff;
		letter-spacing: 0.02em;
		padding-top: 20px;
	}
	.breadcrumb a { display: inline-block; height: 50px; line-height: 50px; color: #000; text-decoration: none; vertical-align: top; }
	.breadcrumb a:hover { text-decoration: underline; }
	span.bc-level { display: inline-block; height: 50px; line-height: 48px; width: 40px; text-align: center; vertical-align: top; }
	span.bc-level:after { content: '\f105'; font-family: 'FontAwesome'; font-size: 0.7em; }

	
	/* ----- Navigation ----- */
	
	
	.sticky-nav-wrap {
		display: block;
		width: 100%;
		background: #fff;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 1000;
	}
	/*
	.sticky-nav-wrap {
		-webkit-box-shadow: 0px 4px 10px 0px #eee;
		-moz-box-shadow: 0px 4px 10px 0px #eee;
		box-shadow: 0px 4px 10px 0px rgba(0,0,0,0.1);
	}
	*/
	.sticky-nav {
		display: block;
		width: 100%;
		z-index: 100;
	}

	.main-nav {
		display: block;
		position: absolute;
		top: 120px;
		width: 100%;
		/* background: rgba(0,0,0,0.3); */
		/* background: #000; */
		
	}
	body.nav-fixed .main-nav {
		top: 60px;
		background: transparent;
	}
	
	.dropdown-bg {
		display: block;
		width: 100%;
		height: 200px;
		background: linear-gradient(0deg, rgba(0,0,0,0) 0%, rgba(0,0,0,0.3) 100%);
		position: absolute;
		top: 120px;
		left: 0;
		z-index:9;
	}

	ul.dropdown-menu {
		list-style-type: none;
		list-style-image: none;
		text-align: center;
		background: transparent;
		position: static;
		display: block;
		padding: 0 20px;
		font-family: 'xeye_sans', Arial, Helvetica, sans-serif;
	}

	ul.dropdown-menu > li {
		padding: 0;
		margin: 0;
		position: static;
		display: inline-block;
		vertical-align: bottom;
	}
	
	ul.dropdown-menu > li.single-col { position: relative; }

	ul.dropdown-menu > li > a.t3nav {
		position: relative;
		white-space: nowrap;
		display: block;
		text-align: center;
		text-transform: none;
		margin: 0;
		text-decoration: none;
		background: transparent;
		color: #fff;
		font-weight: bold;
		font-size: 1.2em;
		letter-spacing: 0.06em;
		height: 60px;
		line-height: 60px;
		padding: 0 10px;
		background-position: center bottom;
		background-repeat: no-repeat;
		text-transform: uppercase;
	}
	body.nav-fixed ul.dropdown-menu > li > a.t3nav {
		color: #000;
		font-weight: normal;
	}

	ul.dropdown-menu > li > a.t3nav.act:before {
		display: block;
		width: 100%;
		height: 2px;
		background: #fff;
		content: '';
		position: absolute;
		left: 0;
		bottom: 0;
	}
	body.nav-fixed ul.dropdown-menu > li > a.t3nav.act:before { background: #000; }

	ul.dropdown-menu > li:hover > a.t3nav {
		text-decoration: none;
	}
	
	ul.dropdown-menu > li > a.social-media-awesome { font-size: 26px; }

	a.menu-icon-pc span.hide { display: none; }
	
	.nav-logo {
		display: block;
		width: 202px;
		height: 74px;
		margin: 0 auto 0 32%;
		padding: 20px 0 0 0;
	}
	.nav-logo img {
		display: block;
		width: 100%;
		height: auto;
	}
	
	.nav-hotel-home {
		position: absolute;
		left: 90px;
		top: 0;
	}
	.nav-hotel-home a {
		display: inline-block;
		text-decoration: none;
		font-weight: 800;
		height: 74px;
		line-height: 74px;
		font-size: 20px;
	}
	.nav-hotel-home a sup {
		font-size: 12px;
		position: relative;
		top: -0.6em;
		right: -0.2em;
	}
	
	ul.dropdown-menu li.nav-logo {
		display: inline-block;
		width: 280px;
		height: 80px;
	}
	ul.dropdown-menu li.nav-logo a {
		display: block;
		width: 260px;
		height: 80px;
		background: transparent url('../images/logo_zusatz.svg') no-repeat center center;
		background-size: 240px;
		text-indent: -999em;
		text-decoration: none;
		overflow: hidden;
		padding: 0;
	}
	
	ul.dropdown-menu > li.icons-rel { position: relative; height: 80px; width: 20px; }
	ul.dropdown-menu > li.icons-rel .footer-above {	display: block; float: left; position: absolute; top: -40px; left: 0; white-space: nowrap; }

	ul.dropdown-menu > li.tagline-rel { position: relative; height: 80px; width: 1px; }
	.tagline-abs { display: block; float: left; position: absolute; top: -40px; left: 15px; white-space: nowrap; padding: 22px 0 0 0; font-size: 14px; }
	
	ul.dropdown-menu > li:hover a.t3nav:after {
		content: '';
		display: block;
		position: absolute;
		left: 50%;
		margin-left: -15px;
		bottom: -30px;
		width: 30px;
		height: 15px;
		background: transparent url('../images/main_nav_hover_bg.png') no-repeat center bottom;
		z-index: 2010;
	}
	body.nav-fixed ul.dropdown-menu > li:hover a.t3nav:after { bottom: -60px; }
	
	ul.dropdown-menu li.nav-search a {
		display: block;
		text-align: center;
		text-transform: none;
		text-decoration: none;
		background: transparent url('../images/nav_search.png') no-repeat center center;
		color: #b6aba0;
		width: 30px;
		height: 80px;
		line-height: 120px;
		padding: 0;
		margin: 0 0 0 20px;
		position: relative;
		cursor: pointer;
	}
	ul.dropdown-menu li.nav-search a:after {
		font-family: 'FontAwesome';
		font-size: 20px;
		content: '\f002';
		display: none;
	}
	
	/* ----- 2. Ebene ----- */

	div.dropdown-menu-sub-custom {
		display: block;
		padding: 30px 60px 0 60px;
		margin: 0;
		width: 100%;
		position: absolute;
		left: -999em;
		top: 100%;
		z-index: 2000;
		text-align: center;
		/*
		-webkit-box-shadow: 0px 4px 10px 0px #eee;
		-moz-box-shadow: 0px 4px 10px 0px #eee;
		box-shadow: 0px 4px 10px 0px rgba(0,0,0,0.1);
		*/
		opacity: 0;
		-webkit-transition: opacity 0.3s ease;
		-moz-transition: opacity 0.3s ease;
		-o-transition: opacity 0.3s ease;
		-ms-transition: opacity 0.3s ease;
		transition: opacity 0.3s ease;
	}
	body.nav-fixed div.dropdown-menu-sub-custom { padding-top: 60px; }
	
	ul.dropdown-menu > li:hover > div.dropdown-menu-sub-custom { left: 0; opacity: 1; }
	
	.dropdown-menu-row {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: flex-start;
		justify-content: space-between;
		padding: 40px;
		max-width: 1280px;
		margin: 0 auto;
		position: relative;
		height: 100%;
		background: #fff;
	}
	.dropdown-menu-col {
		flex-basis: 30%;
		padding: 0;
		text-align: left;
		color: #000;
		font-size: 1.1em;
		line-height: 1.4em;
	}
	.dropdown-menu-row.has-header .dropdown-menu-col > ul:first-child { margin-top: 120px; }
	.dropdown-menu-row .row-header {
		position: absolute;
		left: 40px;
		top: 40px;
		font-size: 4.0em;
		color: #c2b4b5;
		border-bottom: 2px solid #c2b4b5;
		padding-bottom: 20px;
	}
	
	.dropdown-menu-row.cols-4 .dropdown-menu-col { flex-basis: 22%; }
	
	.dropdown-menu-row.cols-1 .dropdown-menu-col { display: none; }
	.dropdown-menu-row.cols-1 .dropdown-menu-col:first-child { display: block; }
	
	.dropdown-menu-col:first-child { margin-left: 0; }
	.dropdown-menu-col a { text-decoration: none; }
	.dropdown-menu-col a.cur { color: #000; }
	/* .dropdown-menu-col a:hover { text-decoration: underline; } */
	
	.dropdown-menu-header { padding: 0.2em 0; }

	ul.dropdown-menu-sitemap a {
		display: block;
		padding: 0.2em;
		color: #000;
	}
	ul.dropdown-menu-sitemap > li > a { font-size: 1.1em; padding: 0.5em 0; border-bottom: 1px solid #eee; }
	ul.dropdown-menu-sitemap.two-levels { padding-bottom: 10px; }
	
	
	.ge-nav_cols_4 { position: relative; }
	
	.dropdown-menu-image { display: block; /* padding: 0 0 20px 0; */ }
	.dropdown-menu-image img { display: block; max-width: 100%; height: auto; }

	
	/* ----- 2. Ebene simpel ----- */

	ul.dropdown-menu-sub1 {
		display: inline-block;
		position: absolute;
		left: -999em;
		top: 100px;
		z-index: 2000; 
		background: transparent;
		padding: 0;
		margin: 0;
		
		opacity: 0;
		-webkit-transition: opacity 0.3s ease;
		-moz-transition: opacity 0.3s ease;
		-o-transition: opacity 0.3s ease;
		-ms-transition: opacity 0.3s ease;
		transition: opacity 0.3s ease;
	}

	ul.dropdown-menu > li:hover > ul.dropdown-menu-sub1 { left: auto; margin-left: -50px; opacity: 1; }

	ul.dropdown-menu-sub1 > li {
		float: none;
		position: relative;
		display: block;
		width: 100%;
		margin: 0;
		background: transparent;
	}

	ul.dropdown-menu-sub1 li.active-hotel { position: static; }
	ul.dropdown-menu-sub1 li.active-hotel a { width: 270px; float: none; }
	
	/* ----- Content ----- */
	
	.content { min-height: 480px; }
	
	body.template-pagets__subnoheader #content-offset { display: block; width: 100%; height: 60px; }
	
	
	/* ----- Plugins ----- */
	
	/* holidayinquiry */
	
	.inquiry-wrap-top {
		display: inline-block;
		max-width: 300px;
		position: absolute;
		top: 0;
		right: 70px;
	}
	
	/* extendedteaser */
	

	
	.exteaser-textpic {
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: stretch;
		-webkit-align-items: stretch;
		-ms-flex-align: stretch;
		align-items: stretch;
		height: 100%;
	}

	.exteaser-text {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.exteaser-image {
		-ms-flex-preferred-size: 40%;
		-webkit-flex-basis: 40%;
		flex-basis: 40%;
		max-width: 40%;
	}
	.exteaser-image:after { display: none; }
	.exteaser-text {
		-ms-flex-preferred-size: 60%;
		-webkit-flex-basis: 60%;
		flex-basis: 60%;
		max-width: 60%;
		padding: 0 40px;
	}
	
	/* ----- */
	
	.et-fw-image {
		width: 50%;
	}
	.et-fw-text {
		width: 50%;
		padding: 80px 6%;
		position: absolute;
		left: 50%;
		bottom: 0;
	}
	
	/* ----- */

	.wl-room-list .wl-room-teaser:nth-child(even) {
		background: #fff;
	}
	.wl-rt-image {
		width: 50%
	}
	.wl-rt-image img {
		object-fit: cover;
	}
	.wl-rt-text {
		width: 50%;
		padding: 80px 6% 160px 6%;
		position: absolute;
		left: 50%;
		bottom: 0;
	}
	.wl-rt-spec {
		margin-left: 40px;
	}
	/*
	.wl-rt-text-align {
		display: block;
		width: 100%;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
	}
	*/

	
	/* ----- */	
	
	.et-tp-image, .et-tp-text {
		flex-basis: 48%;
		padding: 0;
	}
	
	/* ----- Icons ----- */
	
	.ah-icon-text {
		display: inline-block;
		background: #fff;
		height: 36px;
		line-height: 36px;
		padding: 0 10px;
		color: #000;
		font-size: 1.1em;
		position: absolute;
		top: -60px;
		left: 50%;
		opacity: 0;
	}
	.ah-icon-text:after {
		display: block;
		content: '';
		width: 4px;
		height: 30px;
		background: #fff;
		position: absolute;
		left: 0;
		bottom: -24px;
	}
	.ah-icon:hover .ah-icon-text { opacity: 1; }
	
	.ah-icon-wrap { padding-top: 26px; }
	.ah-icon-wrap .ah-icon-text, .no-slideshow .ah-icon-text { height: 40px; line-height: 40px; font-size: 1.1em; background-color: #eee; top: -46px; padding: 0 14px; }
	.ah-icon-wrap .ah-icon-text:after, .no-slideshow .ah-icon-text:after { background-image: url('../images/icon_title_bubble_grey.png'); }
	

	/* ----- Gridelements ----- */
	
	.ge-teaser:hover .ge-teaser-image { opacity: 0; }
	.ge-teaser:hover .ge-teaser-text, .ge-teaser.text-only .ge-teaser-text { opacity: 1; }
	.ge-teaser:hover .ge-teaser-title, .ge-teaser.text-only .ge-teaser-title { background: linear-gradient(0deg, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%); }
	
	.ge-tiles-wrap {
		display: block;
		padding: 20px 0;
	}
	
	.ge-tiles {
		display: block;
		position: relative;
		padding-top: 53.1%;
	}
	.ge-tile {
		display: block;
		width: 24.22%;
		position: absolute;
		overflow: hidden;
	}
	/*
	.ge-tile:after {
		display: block;
		width: 100%;
		content: '';
	}
	*/
	.ge-tile > a {
		display: block;
		position: relative;
		text-decoration: none;
	}
	.ge-tile .tile-image {
		display: block;
		width: 100%;
		position: relative;
	}
	.ge-tile .tile-image img {
		display: block;
		width: 100%;
		height: auto;
	}
	.ge-tile .tile-image-title {
		display: inline-block;
		position: absolute;
		left: 0;
		bottom: 0;
		padding: 20px;
		font-size: 2em;
		background: #fff;
	}
	.ge-tile .tile-text {
		display: block;
		width: 100%;
		position: absolute;
		left: -100%;
		top: 0;
		bottom: 0;
		background: #f5f5f5;
		opacity: 0;
	}
	.ge-tile .tile-text h3 { font-size: 2.4vw; }
	.ge-tile .tile-text-inner {
		max-width: 400px;
	}
	.ge-tile:hover .tile-text {
		left: 0;
		opacity: 1;
	}
	
	.img7 .ge-tile.nr1 { left: 0; top: 0; }
	.img7 .ge-tile.nr2 { left: 25.26%; top: 0; }
	.img7 .ge-tile.nr3 { left: 50.52%; top: 0; }
	.img7 .ge-tile.nr4 { right: 0; top: 0;}
	.img7 .ge-tile.nr5 { left: 0; bottom: 0; }
	.img7 .ge-tile.nr6 { left: 25.26%; bottom: 0; }
	.img7 .ge-tile.nr7 { right: 0; bottom: 0; width: 49.48%; }
	
	.ge-teasers-multicol-wrap .exteaser-multicol:nth-child(3n) { margin-right: 0; }
	.ge-teasers-multicol-wrap .exteaser-multicol:nth-child(3n+1) { clear: left; }
	
	
	.footer-left {
		width: 60%;
		float: left;
	}
	.footer-right {
		width: 40%;
		float: right;
	}
	.footer-nav {
		padding-top: 80px;
	}
	.footer-logos-wrap {
		float: none;
		clear: both;
		text-align: right;
	}
	.footer-logos { padding: 50px 0; }
	
	.footer-logos { text-align: right; }
	.footer-logos .single-logo:last-child { padding-right: 0; }
	
	
	body.template-pagets__home a.burgenland-logo,
	body.template-pagets__subhome a.burgenland-logo {
		background-image: url('../images/burgenland_logo_white.png');
	}
	body.template-pagets__home.logo-triggered a.burgenland-logo,
	body.template-pagets__subhome.logo-triggered a.burgenland-logo {
		background-image: url('../images/burgenland_logo.png');
	}

}


@media only screen and (min-width: 1600px) {
	
	.magazine .frame-default { max-width: 1440px; }
	.magazine .ge-cols_2 .ge-left, .magazine .ge-cols_2 .ge-right { flex-basis: 47.4%; }
	
	.nav-toggle { left: 68px; }
	.header-button-wrap { right: 68px; }
	
	.nav-logo { margin: 0 auto; }
	.nav-hotel-home { left: 180px; }
	
	ul.dropdown-menu li.nav-logo, ul.dropdown-menu li.nav-logo a { height: 120px; }
	ul.dropdown-menu li.nav-search a { height: 120px; }
	
	ul.dropdown-menu > li.dd-menu-item-688 > a.t3nav {
		padding-left: 80px;
		background-image: url('../images/gemeinde_logo_nav.png');
	}
	ul.dropdown-menu > li.dd-menu-item-696 > a.t3nav {
		padding-left: 210px;
		background-image: url('../images/region_logo_nav.png');
	}
	
	ul.dropdown-menu li.nav-logo { width: 400px; }
	ul.dropdown-menu li.nav-logo a { width: 360px; background-size: 320px; }
	
	a.enquiry-button { font-size: 1.4em; font-weight: normal; height: 120px; line-height: 120px; padding: 0 20px; }

	/* ----- Gridelements ----- */
	
	.ge-teaser-wrap { border: 1px solid #fff; }

	.ge-teaser:after { padding-top: 100%; }
	.ge-teaser .ge-teaser-image:after { padding-top: 100%; }

	.ge-teaser .ge-teaser-text { font-size: 1.2em; }
	.ge-teaser-title { font-size: 2em; font-size: 2vw; }
	
}


@media only screen and (max-width: 1599px) {
	
	.snap-item-overlay-icon { padding-bottom: 20px; }
	.snap-item-overlay-icon img { width: 200px; }
	.header-scroll-down { bottom: 20px; }

}


/* Notebook */

@media only screen and (max-width: 1599px) {

	.sub-header h1 { font-size: 2em; }
	.sub-header .no-h1 { font-size: 2em; }

}


@media only screen and (max-width: 1400px) {
	
	:root {
		--content-max-width: 1140px;
	}

}


@media only screen and (max-width: 1199px) {
	
	/* ----- Fluid styled content ----- */

	.ce-gallery[data-ce-columns="2"] .ce-column { max-width: 49.375%; margin-right: 1.25%; }
	.ce-gallery[data-ce-columns="3"] .ce-column { max-width: 32.5%; margin-right: 1.25%; }
	.ce-gallery[data-ce-columns="4"] .ce-column { max-width: 24.06%; margin-right: 1.25%; }
	.ce-gallery[data-ce-columns="5"] .ce-column { max-width: 19%; margin-right: 1.25%; }
	.ce-gallery[data-ce-columns="6"] .ce-column { max-width: 15.62%; margin-right: 1.25%; }
	.ce-gallery .ce-column:last-child { margin-right: 0; }

	/* ----- Content ---- */
	
	.content > .frame-default,
	.content > .frame-type-shortcut > .frame-default,
	.content > .frame-custom-100,
	.content > .frame-type-shortcut > .frame-custom-100,
	.content-wrap > .frame-default,
	.content-wrap > .frame-custom-100,
	.content-wrap > .frame-custom-110,
	.content-wrap > .frame-custom-130,
	.content-wrap > .frame-custom-160,
	#nl-form { padding-left: 40px; padding-right: 40px; }
	
	.content .frame-type-shortcut { padding: 0; }
	
	/* ----- Gridelements ---- */
	
	.ge-teaser:after { padding-top: 100%; }
	.ge-teaser .ge-teaser-image:after { padding-top: 100%; }

	.ge-teaser .ge-teaser-text { font-size: 1.2em; }
	.ge-teaser-title { font-size: 3em; font-size: 2.4vw; }
	
}



/* ----------------- */
/* ----- MOBIL ----- */
/* ----------------- */

@media only screen and (max-width: 1024px) {
	
	.showmobile { display: block !important; }
	.hidemobile { display: none !important; }
	
	.sub-header { margin-top: 130px; }
	.sub-header .sub-intro { padding: 40px;	}
	
	a.booking-button {
		display: block;
		width: 100%;
		height: 40px;
		line-height: 40px;
		font-size: 20px;
		padding: 0;
		background: #b61f29;
		position: fixed;
		bottom: 0;
		left: 0;
		color: #fff;
		text-align: center;
		text-decoration: none;
		z-index: 200;
	}
	
	.nav-hotel-home {
		display: block;
		width: 100%;
		height: 40px;
		line-height: 40px;
		position: absolute;
		top: 74px;
		left: 0;
		background: #fff;
		z-index: 100;
		text-align: center;
	}
	.nav-hotel-home a {
		text-decoration: none;
		font-weight: 800;
		font-size: 18px;
	}
	
	#header-slideshow.no-slideshow { padding-bottom: 80px; }
	#header-slideshow ul.slides li:after { padding-top: 75%; }
	
	#scroll-snap-wrap { padding: 0; }
	.scroll-snap-container .scroll-snap-item { height: 100vh; }

	/* ----- Fluid styled content ---- */
	
	.typo3-editPanel { display: block !important; }
	
	/* ----- Content ---- */
	
	.ce-row img { width: 100%; height: auto; }
	
	#page-wrap { padding-top: 0; }
	
	.ah-icon-symbol { max-width: 15vw; max-height: 15vw; line-height: 15vw; background-size: 80%; }
	
	div.clear-floating-mobile { display: block; clear: floating; height: 0px; overflow: hidden; }
	
	.ce-bodytext, .frame-layout-3 .ce-bodytext {
		-webkit-column-count: auto;
		-moz-column-count: auto;
		column-count: auto;
	}
	
	.content, .content-col-1, .content-col-2, .content-col-3, .sub-page { width: 100%; float: none; margin: 0; }
	
	.footer-header-big { font-size: 2em; }
	.footer-col-ce { display: block; width: 100%; text-align: center; padding: 20px; font-size: 1em; }
	
	.footer-logos { padding-bottom: 70px; }
	.footer-logos-div {
		display: block;
		width: 100%;
		height: 3px;
		margin: 20px 0;
	}

	.hotel-contact {
		position: relative;
		max-width: 100%;
		right: auto;
		bottom: auto;
	}
	
	.mobile-contact-wrap {
		display: block;
		width: 100%;
		height: 50px;
		padding: 6px 0;
		background: #fff;
		position: fixed;
		z-index: 100;
		bottom: -50px;
		left: 0;
		right: 0;
		text-align: center;
	}
	a.mobile-fixed-booking {
		display: inline-block;
		vertical-align: top;
		height: 38px;
		width: 148px;
		line-height: 38px;
		background: #f2f2f2;
		text-align: center;
		text-decoration: none;
		font-weight: 800;
		font-size: 16px;
	}
	a.mobile-fixed-icon {
		display: inline-block;
		vertical-align: top;
		text-decoration: none;
		color: #000;
		height: 38px;
		padding: 4px 0;
	}
	a.mobile-fixed-icon img {
		display: block;
		height: 30px;
		width: auto;
	}
	.mobile-contact-wrap a { margin: 0; }
	.mobile-contact-wrap a.mfi-phone { position: absolute; top: 6px; left: 20px; }
	.mobile-contact-wrap a.mfi-mail { position: absolute; top: 6px; right: 20px; }
	body.content-triggered .mobile-contact-wrap { bottom: 0; }
	
	/* ----- Scroll Up ---- */
	
	#scroll-up { display: none !important; }
	
	
	/* ----- Navigation ---- */
	
	.sticky-nav-wrap { display: block; width: 100%; position: absolute; top: 0; left: 0; z-index: 10; }
	.sticky-nav-wrap:before {
		display: block;
		content: '';
		width: 100%;
		height: 74px;
		background: #fff;
		position: absolute;
		left: 0;
		top: 0;
	}
	.top-nav { display: block; width: 100%; float: none; position: relative; text-align: right; padding: 0 10px 0 0; height: 50px; line-height: 50px; border-right: none; border-bottom: 2px solid #fff; }
	.top-nav:before { display: block; content: ''; width: 82px; height: 50px; background: #fff; position: absolute; left: 0; top: 0; }
	.top-nav a.hic span.icon-text { display: none; }
	.top-nav a.hic span.icon-symbol {
		width: 35px;
		height: 50px;
		line-height: 50px;
		text-align: right;
		font-family: 'FontAwesome';
		font-size: 1.8em;
		padding: 0;
		text-align: center;
	}
	
	.mobile-tools { display: block; }
	
	ul.lang-menu-text.lang-mobile { display: block; }
	ul.lang-menu-text.lang-pc { display: none; }
	
	.be-button-wrap { margin: 20px -40px 20px 0; }
	
	
	/* ----- Gridelements ---- */
	
	.ge-cta-text {
		width: 100%;
		max-width: 100%;
		left: 0;
		margin-left: 0;
		bottom: 0;
	}
	.ge-cta-text .inner { background: #000; padding: 20px; font-size: 0.8em; }
	.ge-cta-full.textonly .inner { font-size: 1em; }
	
	.ge-teaser-wrap { border: none; }
	.ge-teaser { border: none; margin-bottom: 10px; flex-basis: 100%; }
	.ge-teaser:after { display: none; }
	.ge-teaser .ge-teaser-image, .ge-teaser .ge-teaser-text, .ge-teaser .ge-teaser-title { display: block; opacity: 1; position: relative; top: auto; right: auto; bottom: auto; left: auto; }
	.ge-teaser.text-only .ge-teaser-image { display: none; }
	.ge-teaser .ge-teaser-title { background: none; padding-bottom: 0; font-size: 2em; }
	.ge-teaser .ge-teaser-image:after { padding-top: 57%; }
	.ge-teaser .ge-teaser-text { font-size: 1em; }
	
	.ge-team-slider { width: 320px; }
	.ge-team-slider .flex-direction-nav a.flex-next { right: -20px; }
	.ge-team-slider .flex-direction-nav a.flex-prev { left: -20px; }
	
	.ge-teasers-multicol-wrap .exteaser-multicol { width: 48%; margin-right: 4%; }
	.ge-teasers-multicol-wrap .exteaser-multicol:nth-child(2n) { margin-right: 0; }
	.ge-teasers-multicol-wrap .exteaser-multicol:nth-child(2n+1) { clear: left; }

	
	/* ----- Themen ---- */
	
	.topics-teaser-wrap { padding: 60px 0; }
	.topics-teaser { width: 47%; margin-left: 2%; }
	.topics-teaser img { display: block; width: 100%; height: auto; }
	.topics-teaser:first-child { margin-left: 2%; }
	.topics-teaser:after { display: block; content: ''; width: 100%; padding-top: 4%; background: #fff; }
	
	
	a.burgenland-logo {
		width: 80px;
		height: 80px;
		left: auto;
		right: 0;
		bottom: 0;
		background-image: url('../images/burgenland_logo_segment.png');
	}
	body.content-triggered a.burgenland-logo {
		display: none;
	}
}



@media only screen and (max-width: 767px) {
	
	body { font-size: 16px; }
	
	h1, h2, h3, h4, h5 { 
		/*
		-moz-hyphens: auto;
		-o-hyphens: auto;
		-webkit-hyphens: auto;
		-ms-hyphens: auto;
		hyphens: auto; 
		*/
		word-wrap: break-word;
	}
	
	/* ----- Fluid styled content ---- */
	
	.ce-left .ce-gallery, .ce-right .ce-gallery { float: none; text-align: center; }
	.ce-intext.ce-left .ce-gallery, .ce-intext.ce-right .ce-gallery { margin-left: 0; margin-right: 0; }

	
	/* ----- Header ---- */
	
	.sticky-nav-wrap:before { height: 135px; }
	
	.header-logo { padding-bottom: 75px; }
	
	.header-button-wrap { display: block; width: 100%; text-align: right; right: 0; padding: 0 18px; }
	a.header-button {
		position: absolute;
		top: 60px;
		width: calc(50% - 27px);
		float: none;
		margin: 0;
	}
	a.header-button.inquiry { left: 18px; }
	a.header-button.booking { right: 18px; }
	
	.nav-hotel-home { top: 120px; }
	
	.snap-item-overlay { font-size: calc(24px + 3vw); width: 100%; padding: 0 40px; margin-top: 40px; }
	.snap-item-overlay span:first-child { font-size: calc(8px + 1.6vw); line-height: 1.4em; }
	.snap-overlay-r { margin-top: 92px; }
	
	img.header-top-overlay-top { top: 0; }
	
	.sub-header { margin-top: 160px; }
	.sub-header #header-slideshow { width: 100%; margin-top: 0; }
	.sub-header .sub-intro {
		position: relative;
		left: auto;
		bottom: auto;
		width: 100%;
		padding: 40px;
	}
	.sub-headerimage { width: 100%; }
	
	div.stoerer-wrap {
		top: 300px;
		right: 20px;
		width: 180px;
		height: 180px;
		-moz-border-radius: 90px;
		-webkit-border-radius: 90px;
		border-radius: 90px;
	}
	a.stoerer {
		width: 160px;
		height: 160px;
		-moz-border-radius: 80px;
		-webkit-border-radius: 80px;
		border-radius: 80px;
		font-size: 26px;
	}
	
	blockquote {
		padding: 20px 10px;
		margin: 20px 0;
		text-align: left;
		border-top: 2px solid #000;
		border-bottom: 2px solid #000;
	}
	blockquote:before, blockquote:after {
		width: 100px;
		left: 50%;
		right: auto;
		margin-left: -50px;
		background: #fff;
		text-align: center;
		font-size: 30px;
	}
	blockquote:before { top: -20px; }
	blockquote:after { bottom: -20px; }
	
	td { white-space: normal !important; }
	table { display: block; overflow-x: auto; }	
	table::-webkit-scrollbar {
		-webkit-appearance: none;
		width: 20px;
		height: 20px;
		background-color: rgba(0, 0, 0, .1);
	}
	table::-webkit-scrollbar-thumb {
		border: 2px solid #fff;
		background-color: rgba(0, 0, 0, .3);
	}
	
	.hotel-teaser { width: 100%; margin: 0 0 20px 0; float: none; }
	
	.footer-right { padding-top: 40px; }
	.footer-icons a, .footer-icons a img { width: 40px; }
	.footer-icons a { margin-right: 10px; }
	
	
	/* ----- Header slideshow ---- */
	
	/* #header-slideshow ul.slides li:after { padding-top: 50%; } */
	.header-video-wrap:after { padding-top: 50%; }
	
	
	/* ----- Powermail ---- */
	
	.powermail_fieldwrap { width: 100% !important; }
	.powermail_form button.btn-default { display: block; width: 100%; }
	
	
	/* ----- Gridelements ---- */
	
	.ge-cols_2 .ge-left, .ge-cols_2 .ge-right { flex-basis: 100%; }
	.ge-cols_3 .ge-col { flex-basis: 100%; }
	
	
	.ge-teaser .ge-teaser-image, .ge-teaser .ge-teaser-text { width: 100%; float: none !important; }
	.ge-teaser .ge-teaser-text { padding: 40px; }
	.ge-teaser-fullwidth .ge-teaser-text { padding: 40px; }
	
	.ge-package-image-wrap, .ge-package-text { width: 100%; float: none; }
	
	.ge-teasers-multicol-wrap .exteaser-multicol { width: 100%; margin: 0; float: none; }
	
	
	.frame-space-before-extra-small { margin-top: 20px; }
	.frame-space-before-small { margin-top: 20px; }
	.frame-space-before-medium { margin-top: 20px; }
	.frame-space-before-large { margin-top: 40px; }
	.frame-space-before-extra-large { margin-top: 80px; }

	.frame-space-after-extra-small { margin-bottom: 20px; }
	.frame-space-after-small { margin-bottom: 20px; }
	.frame-space-after-medium { margin-bottom: 20px; }
	.frame-space-after-large { margin-bottom: 40px; }
	.frame-space-after-extra-large { margin-bottom: 80px; }
	
	.exteaser-space-before-extra-small { margin-top: 20px; }
	.exteaser-space-before-small { margin-top: 20px; }
	.exteaser-space-before-medium { margin-top: 20px; }
	.exteaser-space-before-large { margin-top: 40px; }
	.exteaser-space-before-extra-large { margin-top: 80px; }

	.exteaser-space-after-extra-small { margin-bottom: 20px; }
	.exteaser-space-after-small { margin-bottom: 20px; }
	.exteaser-space-after-medium { margin-bottom: 20px; }
	.exteaser-space-after-large { margin-bottom: 40px; }
	.exteaser-space-after-extra-large { margin-bottom: 80px; }
	
	.ge-testi-image {
		float: none;
		margin: 0 auto;
	}
	.ge-testi-text {
		width: 100%;
		float: none;
		text-align: center;
		margin: 40px auto 0 auto;
	}
	
}


@media only screen and (max-width: 479px) {
	
	body { font-size: 14px; }
	
	/* ----- Content ---- */
	
	h1 { font-size: 1.6em; }
	h3 { font-size: 1.2em; }
	p.p-large { font-size: 1.2em; }
	p.p-xlarge { font-size: 1.6em; }
	p.p-uppercase { letter-spacing: 0.1em; }
	h1.h1-intext-large, h2.h2-intext-large { font-size: 1.6em; }
	h2 { font-size: 1.6em; }
	h2.ge-package-header { font-size: 1.4em; }
	h2.header-large { font-size: 1.6em; }
	h3.h3-intext-large { font-size: 1.4em; line-height: 1.2em; font-weight: 800; }
	.et-fw-text h3 { font-size: 1.6em; }
	.sub-header .no-h1, .sub-header h1 { font-size: 1.6em; }
	
	.search-small { width: 80%; margin-left: 10%; }
	
	.button-style { font-size: 0.9em; }
	
	.footer-block, .footer-block.first, .footer-block.last { width: 96%; margin: 0 2%; min-height: 100px; float: none; clear: both; }
	
	.ge-collage { display: block; padding: 0 20px; }
	.ge-collage .ge-left, .ge-collage .ge-right { width: 100% !important; padding: 0; }
	.ge-collage .ge-left .ge-collage-image { float: none; }
	.ge-collage-image img { width: 100%; height: auto; }
	
	.snap-item-overlay { font-size: calc(20px + 3vw); line-height: 1.2em; }
	
	.et-image-label, .article-category, .sub-pricelabel { height: 70px; line-height: 70px; }
	.exteaser-multicol .et-image-label { bottom: -35px; }
	
	.frame-default { padding-top: 10px; padding-bottom: 10px; }
	.frame-custom-100.ge-cols_3 { row-gap: 0; }
	.et-mc-text { padding-top: 60px; }
	
	
}

@media only screen and (min-width: 350px) {
	a.mobile-phone, a.mobile-contact, a.mobile-location, .mobile-tools .header-icon { margin-right: 14px; }
}


img.frontEndEditIcons, a.frontEndEditIconLinks img { width: 16px !important; max-width: 16px !important; height: 16px !important; max-height: 16px !important; }
#content img.frontEndEditIcons, #footer img.frontEndEditIcons, #header img.frontEndEditIcons { width: 16px !important; max-width: 16px !important; height: 16px !important; max-height: 16px !important; }
























@media only screen and (min-width: 1024px) {

	ul.mobile-menu { display: flex; }
	ul.mobile-menu span.no-sub, ul.mobile-menu span.has-sub { display: none; }
	.mobile-menu-bg { height: auto; bottom: auto; top: 74px; }
	.mobile-menu-wrap { position: relative; top: auto; right: auto; bottom: auto; left: auto; overflow: auto; }
	.mobile-menu-wrap nav { margin: 70px 15px 0 75px; }
	ul.mobile-menu > li > ul { display: block !important; }
	ul.mobile-menu > li > ul li ul { display: none !important; }
	ul.mobile-menu li, ul.mobile-menu li a { padding-left: 0; margin-left: 0; }
	ul.mobile-menu > li { padding-right: 20px; }
	ul.mobile-menu-sub { padding: 0; }
	ul.mobile-menu-sub li a { font-size: 0.8em; font-weight: 500; text-transform: uppercase; }
	
	ul.mobile-menu > li:nth-child(7),
	ul.mobile-menu > li:nth-child(8),
	ul.mobile-menu > li:nth-child(9) { display: none; }

}






/* ----- Magazine ----- */

.showmobile-mag { display: block; }

.magazine h1 { font-size: calc(2.4vw + 32px); }

.mag-header {
	display: block;
	width: 100%;
	position: relative;
	background: #fff;
}

.mag-type-nav {
	display: block;
	border-bottom: 1px solid #000;
	margin: 0 auto;
	width: 80%;
	max-width: 1440px;
	padding-top: 70px;
}
.mag-type {
	display: inline-block;
	vertical-align: top;
	height: 160px;
	text-align: center;
	margin-right: 160px;
	/* margin-right: 7vw; */
	margin-right: 5.5vw;
}
.mag-type img {
	display: block;
	width: 80px;
	height: auto;
	margin: 0 auto;
}
.mag-type div {
	text-align: center;
	padding-top: 15px;
	font-weight: bold;
	text-transform: uppercase;
	font-size: 0.8em;
}
.mag-type a {
	text-decoration: none;
}
	


.mag-cat-nav {
	display: block;
	padding: 60px 0;
	margin: 0 auto;
	width: 80%;
	max-width: 1440px;
}
.mag-cat {
	display: inline-block;
	vertical-align: top;
	height: 50px;
	line-height: 50px;
	margin-right: 50px;
	font-weight: 800;
	font-size: 1.2em;
	font-size: calc(0.4vw + 14px);
}
.mag-cat a {
	text-decoration: none;
}


.mag-header-logo, .mag-header-icons {
	display: block;
	width: 200px;
	width: 10vw;
	position: absolute;
	left: 0;
	top: 0;
	text-align: center;
}
.mag-header-icons {
	left: auto;
	right: 0;
}
.mag-header-logo a {
	display: inline-block;
	width: 40px;
	margin-top: 70px;
}
.mag-header-logo img {
	display: block;
	width: 100%;
	height: auto;
}
.mag-header-logo-mobile {
	display: block;
	width: calc(100% - 82px);
	margin-left: 82px;
	height: 74px;
	background: #fff;
	position: relative;
}
.mag-header-logo-mobile a {
	display: block;
	width: 60%;
	max-width: 200px;
	padding-right: 40px;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}
.mag-header-logo-mobile img {
	display: block;
	width: 100%;
	height: auto;
}

.mag-hi-pos {
	display: inline-block;
	margin-top: 70px;
}
.mag-header-icons a {
	display: block;
	width: 45px;
	height: 70px;
	
	/* 4 social media icons */
	width: 40px;
	height: 55px;
}
.mag-header-icons img {
	display: block;
	width: 100%;
	height: auto;
}

.article-info-wrap {
	display: block;
	width: 100%;
	background: #f2f2f2;
	padding: 0 40px;
}
.article-info {
	display: block;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}
.article-category {
	font-size: 1.1em;
}
.article-meta {
	display: block;
	padding: 20px 0;
	text-transform: uppercase;
	font-size: 0.8em;
	font-weight: 500;
}
.article-meta span {
	display: inline-block;
	vertical-align: top;
	padding: 0 20px 20px 0;
}

.magazine .page-header { max-width: 1200px; }
.article-h1-wrap {
	display: block;
	width: 100%;
	background: #f2f2f2;
	padding: 0 40px;
}
.article-h1 {
	display: block;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}

.magazine .ce-bodytext { max-width: 1000px; }


@media only screen and (min-width: 480px) {
	
	.mag-header.toggle-menu {
		left: auto;
		opacity: 1;
	}
	
	.showmobile-mag { display: none; }

}

@media only screen and (max-width: 479px) {

	.mag-header {
		position: fixed;
		left: -999em;
		opacity: 0;
		top: 0;
		height: 100vh;
		padding-top: 20px;
		z-index: 500;
	}
	
	.mag-type-nav {
		width: 60%;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		align-items: stretch;
		justify-content: space-between;	
	}
	.mag-type {
		flex-basis: 50%;
		height: 120px;
		margin: 0;
	}
	.mag-cat-nav { margin: 0 0 0 20vw; }
	
	.mag-cat {
		display: block;
		font-size: 1.2em;
	}

	.mag-header-logo, .mag-header-icons { width: 20vw; margin-top: 20px; }
	.mag-header-logo a { width: 30px; }
	.mag-header-icons a { width: 30px; height: 53px; }
	
}
