/*
Theme Name: Fieldsets
Author: E&F
Version: 2.2 2020
*/


/* fonts */

@font-face {
	font-family: 'DINNextLTPro';
	src: url('assets/fonts/DINNextLTPro-Regular/font.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'DINNextLTPro';
	src: url('assets/fonts/DINNextLTPro-Bold/font.woff') format('woff');
	font-weight: bold;
	font-style: normal;
}
@font-face {
	font-family: 'DINNextStencil';
	src: url('assets/fonts/DINNextStencil-Medium/font.woff') format('woff');
	font-weight: bold;
	font-style: normal;
}



/* basics / resets */

html {
	position: relative;
	margin: 0;
	padding: 0;
	height: 100%;
	font-size: 15px;
}
@media (max-width: 1299px) {
	html { font-size: 1.2vw; }
}
@media (max-width: 999px) {
	html { font-size: 15px; }
}
@media (max-width: 719px) {
	html { font-size: 14.5px; }
}
@media (max-width: 511px) {
	html { font-size: 14px; }
}
@media (max-width: 359px) {
	html { font-size: 13px; }
}


body {
	margin: 0;
	padding: 0;
	min-height: 100%;
	font-family: DINNextLTPro, sans-serif;
	font-size: 1em;
	background-color: white;
	color: #282828;
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
}

* {
	-webkit-tap-highlight-color: transparent;
}


::-moz-selection {
	background: #333;
	color: #fff;
	text-shadow: none;
}
::selection {
	background: #333;
	color: #fff;
	text-shadow: none;
}

form {
	margin: 0;
	padding: 0;
}

table, td, input, textarea, select {
	font-family: inherit;
	font-size: 1em;
}

img, iframe {
	border: 0;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
	text-decoration: none;
}

.text-link,
main .content-text p a:not(.button-link),
main .content-text ol a:not(.button-link),
main .content-text ul a:not(.button-link) {
	color: #eb4137;
	font-weight: bold;
	text-decoration: underline;
}

.content-text_und_kontakte .content-bild_und_text .content-text a {
	color: inherit;
	font-weight: normal;
	text-decoration: none;	
}


/* page */

#page {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: stretch;
    align-items: stretch;
	
	min-height: 100vh;
}

main {
	-webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
	
	padding: 8em 0 6em 0;
	box-sizing: border-box;
	width: 100%;
	overflow: hidden;
}

main > div + div:not(.content-space) {
	margin-top: 4.5em !important;
}

main > :first-child:not(.content-image):not(.content-slider) {
	margin-top: 6em;
}

@media (max-width: 999px) {
	main {
		padding-bottom: 2em;
	}
	
	main > div + div:not(.content-space) {
		margin-top: 2em !important;
	}

	main > :first-child:not(.content-image):not(.content-slider) {
		margin-top: 2em;
	}
}


#page main > .kein-abstand-zum-vorherigen-inhalt {
	margin-top: 0 !important;
}
#page main > .kein-abstand-zum-naechsten-inhalt + div {
	margin-top: 0 !important;
}


/* header */

header {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	box-sizing: border-box;
	padding: 0 5.333em;
	background-color: white;
	z-index: 1000;
	transition: box-shadow 0.3s ease;
}

@media (max-width: 999px) {
	header {
		padding: 0 2.66em;
	}
}

@media (min-width: 1000px) {

	.primary-menu-open header {
		box-shadow: 0 8px 32px RGBA(0,0,0,0.15);
	}

}


#search-overlay > .wrap,
header > .wrap {

	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: top;
	align-items: top;
	
	margin: 0 auto;
	max-width: 85.333em;
}

#white-logo,
#logo {
	display: block;
	width: 10.5em;
	height: auto;
	margin-top: 2.6em;
}
#white-logo {
	filter: brightness(5);
}

#phone-button,
#shop-button,
#search-submit,
#close-search-button,
#search-button {
	display: block;
	width: 2em;
	height: 2em;
	background: url(assets/images/lupe.svg) center center no-repeat;
	background-size: 1.1em auto;
	margin-right: -0.5em;
	margin-top: 2.9em;
}
#close-search-button {
	background-image: url(assets/images/x.svg);
}

#shop-button {
	background-image: url(assets/images/marketplace.svg);
	background-size: contain;
	flex: 0 0 auto;
}

#phone-button {
	background: url(data:image/svg+xml;base64,PHN2ZyBpZD0iYSIgZGF0YS1uYW1lPSJFYmVuZSAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxMjAgMTIwIj4KICA8ZGVmcz4KICAgIDxzdHlsZT4KICAgICAgLmIgewogICAgICAgIGZpbGw6ICMwMDA7CiAgICAgICAgc3Ryb2tlLXdpZHRoOiAwcHg7CiAgICAgIH0KICAgIDwvc3R5bGU+CiAgPC9kZWZzPgogIDxwYXRoIGNsYXNzPSJiIiBkPSJNOTEuNTcsMTE5Yy0xMS45MSwwLTMwLjQyLTYuNzYtNTcuMTEtMzMuNDVoMEMzLjA2LDU0LjE1LS43NiwzNC4wNywxLjU2LDIyLjc1Yy43Ni0zLjczLDIuNjQtNy4xNyw1LjQyLTkuOTVsNy45OC03Ljk4YzIuNTMtMi41Myw2LjAyLTMuOTIsOS42MS0zLjgxLDMuNTguMTEsNi45OSwxLjcsOS4zNyw0LjM3bDE0LjM0LDE2LjA0YzMuOTksNC40OSw0LjQ5LDExLjE0LDEuMjIsMTYuMTdsLS4yNC4zMy02LjUsOC4wOGMtLjM1LjYyLS40LDEuMzctLjEzLDIuMDMsMS44OCw0LjYsNi4yNCwxMC4zOSwxMi42LDE2Ljc2LDYuMzcsNi4zNywxMi4xNywxMC43MywxNi43NiwxMi42LjY2LjI3LDEuNDEuMjIsMi4wMy0uMTNsOC40LTYuNzRjNS4wMy0zLjI3LDExLjY4LTIuNzcsMTYuMTYsMS4yMWwxNi4wNSwxNC4zNWMyLjY3LDIuMzcsNC4yNiw1Ljc4LDQuMzcsOS4zNnMtMS4yOCw3LjA4LTMuODEsOS42MWwtNy45OCw3Ljk4Yy0yLjc4LDIuNzgtNi4yMiw0LjY1LTkuOTUsNS40Mi0xLjcuMzUtMy41OS41Ni01LjY5LjU2Wk00MC4xMiw3OS44OGMzMC40LDMwLjQsNDcuODUsMzIuMjksNTUuNTMsMzAuNzEsMi4xOS0uNDUsNC4yMy0xLjU3LDUuODktMy4yM2w3Ljk4LTcuOThjLjk5LS45OSwxLjUxLTIuMzEsMS40Ny0zLjcxLS4wNC0xLjQtLjY0LTIuNjgtMS42OS0zLjYybC0xNi4wNS0xNC4zNWMtMS43NS0xLjU1LTQuMzItMS43OC02LjMyLS41N2wtOC40Miw2Ljc1Yy0yLjg0LDEuODUtNi40MiwyLjE5LTkuNTUuOTEtNS42NS0yLjMxLTEyLjE4LTcuMTQtMTkuNC0xNC4zNi03LjIyLTcuMjItMTIuMDUtMTMuNzQtMTQuMzYtMTkuNC0xLjI4LTMuMTQtLjk0LTYuNzEuOTEtOS41NWwuMjQtLjMzLDYuNTEtOC4wOWMxLjIxLTIsLjk4LTQuNTctLjU4LTYuMzNsLTE0LjM0LTE2LjA0Yy0uOTQtMS4wNi0yLjIyLTEuNjYtMy42Mi0xLjctMS40Mi0uMDQtMi43Mi40OC0zLjcxLDEuNDdsLTcuOTgsNy45OGMtMS42NywxLjY3LTIuNzgsMy43LTMuMjMsNS44OS0xLjU4LDcuNjkuMzIsMjUuMTQsMzAuNzEsNTUuNTNoMFoiLz4KPC9zdmc+) center center no-repeat;
	background-size: 1.29em auto;
	flex: 0 0 auto;
}


@media (max-width: 1399px) {
	#phone-button,
	#shop-button {
		margin-left: 0.5em;
	}
}

@media (max-width: 999px) {
	.mobile-head-fill {
		flex: 1 0 auto;
	}
	#phone-button {
		background-size: 1.5em auto;
		margin-top: 2.75em;
		margin-right: 0em;
	}
	#shop-button {
		margin-right: 0em;
		margin-left: -3em;
		position: relative;
		z-index: 1;
		margin-top: 2.7em;
		background-size: 118% auto;
	}
}
@media (min-width: 1000px) {
	.mobile-head-fill {
		display: none;
	}
	#phone-button:hover,
	#shop-button:hover {
		filter: brightness(0) saturate(100%) invert(32%) sepia(95%) saturate(2620%) hue-rotate(342deg) brightness(96%) contrast(91%);
	}
}

#search-button:hover {
	filter: brightness(0) saturate(100%) invert(32%) sepia(95%) saturate(2620%) hue-rotate(342deg) brightness(96%) contrast(91%);
}

#search-submit {
	outline: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	appearance: none;
	border-radius: 0px;
	background-color: transparent;
	font-size: 1em;
	border: 0;
	margin-right: 0;
	position: absolute;
	left: 0;
	top: 0;
	filter: brightness(10);
	cursor: pointer;
}


#search-overlay {
	background-color: #eb4137;
	color: white;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	height: 100%;
	padding: 0 5.333em;
	z-index: 100;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.4s ease;
}

.search-open #search-overlay {
	opacity: 1;
	pointer-events: all;
}

#search-overlay > .wrap {
	height: 8em;
}

#search-in {
	padding-left: 2.75em;
	position: relative;
	width: 60em;
	max-width: 70%;
}

#s {
	box-sizing: border-box;
	outline: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	appearance: none;
	border-radius: 0px;
	width: 90%;
	color: white;
	background-color: #eb4137;
	font-family: inherit;
	font-size: 1em;
	border: 0;
	margin-top: 2.7em;
}
#s:-moz-input-placeholder {
color: #fff;
}
#s::-moz-input-placeholder {
color: #fff;
}
#s:-ms-input-placeholder {
color: #fff;
}
#s::-ms-input-placeholder {
color: #fff;
}
#s::-webkit-input-placeholder {
color: #fff;
line-height: 2.8em;
}
#s::placeholder {
color: #fff;
line-height: 2.8em;
}



@media (max-width: 999px) {
	#search-button {
		display: none;
	}
}

.learn-more-p {
	padding-top: 2.25rem !important;
}
.teaser_box .learn-more-p {
	padding-top: 1rem !important;
} 
.arrow {
	display: inline-block;
	font-weight: bold;
	text-transform: uppercase;
	padding-right: 2em;
	background: url(assets/images/arrow.svg) right center no-repeat;
	background-size: 1em auto;
	transition: transform 0.3s ease;
}


/* .swiper-slide-active .arrow, */

#instagram-section .arrow,
:not(.swiper-slide) > .content-image > .image-wrap + .content-text .arrow {
	pointer-events: all;
}



/* pointer only */
@media (pointer: fine), not all and (-moz-touch-enabled) {
	.arrow:hover {
		transform: translateX(0.75em);
	}
}


[data-color=red] {color: #eb4137;}
[data-color=black] {color: #282828;}
[data-color=white] {color: #fff;}
p[data-style=medium] {
	font-size: 1.4em;
	line-height: 140%;
}
p[data-style=big] {
	font-size: 2.8em;
	line-height: 135%;
	padding-top: 0.6em;
	padding-bottom: 0.6em;
}
@media (max-width: 719px) {
	p[data-style=big] {
		font-size: 2em;
	}
}
@media (max-width: 511px) {
	p[data-style=big] {
		font-size: 1.4em;
	}
}

.slim-width {
	margin: 0 auto;
	box-sizing: border-box;
	width: 50em;
	max-width: calc(100% - 5.33em);
}

.text-width,
main > .content-slider:not(.slider-type-hero-slider),
main > .content-image,
main > .content-text {
	margin: 0 auto;
	box-sizing: border-box;
	width: 74.66em;
	max-width: calc(100% - 5.33em);
}

.hero-width,
main > .subpage-hero-image {
	width: 90.66em;
	max-width: calc( 100% - 5.33em );
}

@media (max-width: 719px) {
	#kalender-section,
	main > .content-youtube_video,
	main > .content-image,
	main > .content-slider:not(.slider-type-hero-slider),
	.hero-width,
	main > .subpage-hero-image {
		max-width: 100%;
	}
	
	.subpage-hero-image .ratio {
		min-height: 20em;
		box-sizing: border-box;
	}
	
	.slider-type-default-slider .ratio {
		box-sizing: border-box;
		min-height: 20em;
	}
	
}

.edge-width,
main > .content-bild_und_text {
	margin: 0 auto;
	box-sizing: border-box;
	max-width: 96em;
}

.content-bild_und_text .content-image {
	margin: 0.75rem 0;
}
.content-bild_und_text .content-text {
	margin: 0 auto;
	width: 30em;
	padding: 0 2.66em;
	max-width: 100%;
	box-sizing: border-box;
}


#home-teasers {
	position: relative;
	background-color: #eb4137;
	padding-bottom: 8em;
}

.link-box-bottom-right {
	position: absolute;
	right: 0;
	bottom: 0;
	background-color: white;
	padding: 2em 2.25em;
}
.link-box-bottom-right .arrow {
	filter: brightness(0) saturate(100%) invert(35%) sepia(90%) saturate(2633%) hue-rotate(341deg) brightness(95%) contrast(94%);
}


#instagram-section {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-content: flex-start;
	align-content: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}

#instagram-section > * {
	width: calc( (100% - 5.33em * 2) / 3);
	margin: 2.66em 0;
}

#instagram-section > a {
	display: block;
	background-position: center center;
	background-size: cover;
	position: relative;
}
#instagram-section > a::after {
	content: "";
	display: block;
	padding-top: 100%;
}
@media (min-width: 1000px) {
	#instagram-section > :nth-child(7) {
		display: none;
	}
}

@media (max-width: 999px) {
	#instagram-section > * {
		width: calc( (100% - 2.66em) / 2);
		margin: 1.33em 0;
	}

	#instagram-section > :first-child {
		width: 70%;
		margin: 0;
	}
}

.hover-overlay {
	background-color: RGBA(235, 65, 55, 0.9);
	color: white;
	opacity: 0;
	transition: opacity 0.25s ease;
	pointer-events: none;
	user-select: none;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

/* pointer only */
@media (pointer: fine), not all and (-moz-touch-enabled) {
	a:hover .hover-overlay {
		opacity: 1;
	}
}

.hover-overlay .arrow {
	position: absolute;
	left: 2.66em;
	bottom: 2.5em;
}

.teaser-date {
	padding-bottom: 0.25em !important;
}

.content-beitraege .content-bild_und_text + .content-bild_und_text {
	margin-top: 4em;
}


@media (min-width: 1000px) {
	#scroll-down {
	position: absolute;
	left: 3.25em;
	bottom: 5.75em;
	width: 2em;
	height: 9em;
	background: url(assets/images/scroll.svg) center center no-repeat;
	background-size: 0.7em auto;
	z-index: 100;
	transition: opacity 0.3s ease;
	}
	
	body:not(.at-top) #scroll-down {
		opacity: 0;
		pointer-events: none;
	}

	#start {
		width: 1px;
		height: 1px;
		position: absolute;
		bottom: -1px;
		left: 0;
	}
}


@media (min-width: 1000px) and (min-aspect-ratio: 200/110) {
	#scroll-down {
		bottom: 9em;
	}
}
@media (min-width: 1000px) and (min-aspect-ratio: 200/105) {
	#scroll-down {
		bottom: 12em;
	}
}
@media (min-width: 1000px) and (min-aspect-ratio: 200/100) {
	#scroll-down {
		bottom: 15em;
	}
}
@media (min-width: 1000px) and (min-aspect-ratio: 200/95) {
	#scroll-down {
		bottom: 17em;
	}
}
@media (min-width: 1000px) and (min-aspect-ratio: 200/90) {
	#scroll-down {
		bottom: 19em;
	}
}
@media (min-width: 1000px) and (min-aspect-ratio: 200/85) {
	#scroll-down {
		display: none;
	}
}

@media (min-width: 1000px) and (max-aspect-ratio: 4/3) {
	#scroll-down {
		display: none;
	}
}




.teaser-slider {
	margin-left: -40px !important;
	width: calc(100% + 80px)  !important;
}

.wrap-teaser-slider .card-text {
	background-color: #eb4137;
	box-shadow: none;
}

.wrap-teaser-slider,
#teaser-slider {
	position: relative;
}
@media (min-width: 720px) {
	#teaser-slider + div {
		margin-top: -4.5em;
	}
}
.teaser-card {
	position: relative;
	display: block;
	background-color: transparent !important;
	padding: 0 40px 40px 40px;
	box-sizing: border-box;
	align-self: stretch;
	
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    
}
.card-image {
	flex: 0 0 auto;
}
.card-text {
	position: relative;
	color: white;
	box-shadow: 0 8px 32px RGBA(0,0,0,0.15);
	padding: 1.25em 2em 4em 2em;
	flex: 1 0 auto;
}

.teaser-card-mobile {
	padding: 0 2.66em 2.66em 2.66em;
}
.teaser-card-mobile:last-child {
	padding-bottom: 0.66em;
}
.teaser-card-mobile .card-text {
	box-shadow: none;
	background-color: #eb4137 !important;
}

.card-learn-more {
	bottom: 1em;
	right: 2em;
	position: absolute;
}

.card-text h3 {
	font-size: 1.25em;
}


.wrap-teaser-slider .swiper-button-white,
#teaser-slider .swiper-button-white {
	margin-top: 0 !important;
	top: 0 !important;
	background: url(assets/images/next.svg) center center no-repeat !important;
	background-size: 0.5em auto !important;
}
.wrap-teaser-slider .swiper-button-prev,
#teaser-slider .swiper-button-prev {
	left: -6em !important;
	transform: scaleX(-1);
}
.wrap-teaser-slider .swiper-button-next,
#teaser-slider .swiper-button-next {
	right: -6em !important;
}
@media (max-width: 1399px) {
	.wrap-teaser-slider .swiper-button-prev,
	#teaser-slider .swiper-button-prev {
		left: -4em !important;
	}
	.wrap-teaser-slider .swiper-button-next,
	#teaser-slider .swiper-button-next {
		right: -4em !important;
	}
}
@media (max-width: 1299px) {
	.wrap-teaser-slider .swiper-button-prev,
	#teaser-slider .swiper-button-prev {
		left: -2.8em !important;
	}
	.wrap-teaser-slider .swiper-button-next,
	#teaser-slider .swiper-button-next {
		right: -2.8em !important;
	}
}
@media (max-width: 999px) {
	.wrap-teaser-slider .swiper-button-prev,
	#teaser-slider .swiper-button-prev {
		left: -2.3em !important;
	}
	.wrap-teaser-slider .swiper-button-next,
	#teaser-slider .swiper-button-next {
		right: -2.3em !important;
	}
}


.wrap-teaser-slider .swiper-button-disabled,
#teaser-slider .swiper-button-disabled {
	display: none;
}

.slider-teasers-mobile,
#home-teasers-mobile {
	display: none;
}

@media (max-width: 719px) {
	.slider-teasers,
	#teaser-slider-space,
	#teaser-slider {
		display: none;
	}
	.slider-teasers-mobile,
	#home-teasers-mobile {
		display: block;
	}
	#home-teasers {
		padding-top: 2em;
	}
}





.gallery-image > .content-text {
	padding: 0.5em 0;
}


#vr-container {
	position: relative;
}
#vr-container::before {
	content: "";
	display: block;
	padding-top: 56.25%;
}

#vr-container iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


@media (min-width: 1000px) {
	.search-result > a {
		box-sizing: border-box;
		padding-right: 25%;
	}
}


@media (min-width: 1000px) {
	#webcams .column:first-child {
		padding-right: 1.33em;
	}
	#webcams .column:last-child {
		padding-left: 1.33em;
	}
}




.hotspot {
	font-size: 0.75em;
	position: absolute;
	width: 5em;
	height: 5em;
	margin: -2.45em 0 0 -2.5em;
}
.hotspot-bottom {
	margin-top: -2.55em;
}

.hotspot::after {
	content: "";
	position: absolute;
	top: calc(50% - 0.5em);
	left: calc(50% - 0.5em);
	width: 1em;
	height: 1em;
	border-radius: 50%;
	box-sizing: border-box;
	border: 2px currentColor solid;
	background-color: #eb4137;
	font-size: 0.7em;
}


.hotspot-label {
	position: absolute;
	top: 90%;
	left: 50%;
	transform: rotate(-90deg) translateX(-100%);
	transform-origin: left center;
	white-space: nowrap;
	cursor: default;
	font-size: 1rem;
}
.hotspot-bottom .hotspot-label {
	top: -10%;
	transform: rotate(-90deg);
}

.hotspot:hover::after {
	background-color: currentColor;
}
.hotspot:hover .tip {
	opacity: 1;
	transform: scale(1) translateY(0);
}


.tip {
	position: absolute;
	left: calc(50% - 11em);
	top: 95%;
	width: 22em;
	box-sizing: border-box;
	background-color: white;
	box-shadow: 0 8px 32px RGBA(0,0,0,0.15);
	padding: 1.25em 2em;
	border-radius: 0.25em;
	pointer-events: none;
	transform-origin: top center;
	transform: scale(0.01) translateY(-2em);
	opacity: 0;
	transition: opacity 0.25s ease, transform 0.25s ease;
	z-index: 10;
	font-size: 1rem;
}
.tip::before {
	content: "";
	display: block;
	position: absolute;
	top: -1em;
	left: calc(50% - 1em);
	width: 2em;
	height: 2em;
	transform: rotate(45deg);
	background-color: white;
	font-size: 0.4em;
}

#meilensteine {
	margin-top: 4em;
	position: relative;
	height: 4em;
	font-size: 20px;
}
#meilensteine svg {
	position: absolute;
	top: 0;
	right: 0;
	width: 100em;
	height: 4em;
}

@media (max-width: 999px) {
	#meilensteine-wrap {
		display: none;
	}
}
@media (max-width: 1299px) {
	#meilensteine {
			font-size: 1.6vw;
	}
}


#meilensteine-mobile [data-color=red] {
	color: white !important;
}
#meilensteine-mobile .accordion-title {
	font-family: inherit;
}
#meilensteine-mobile .accordion-content .content-text > :first-child {
	padding-top: 0 !important;
}
#meilensteine-mobile .accordion-content {
	padding-bottom: 2em;
}
#meilensteine-mobile .content-text {
	font-size: 1.15em;
}



.arrow-link-text {
	padding-left: 1.2em;
	background: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHdpZHRoPSIxNXB4IiBoZWlnaHQ9IjVweCIgdmlld0JveD0iMCAwIDE1IDUiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDE1IDU7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBhdGggZmlsbD0iIzI4MjgyOCIgZD0iTTE1LDIuNUwxMiwwdjJIMHYxaDEydjJMMTUsMi41eiIvPgo8L3N2Zz4) left center no-repeat;
	background-size: 15px auto;
}

.cal-entry strong {
	display: inline-block;
	padding-bottom: 0.2em;
}
a:hover .hover-white {
	filter: contrast(0.5) brightness(10);
}



/* footer */

footer {
	position: relative;
	background-color: #eb4137;
	padding: 8em 5.333em;
	box-sizing: border-box;
}
footer > .wrap {	
	margin: 0 auto;
	max-width: 74.66em;
}

#footer-cols {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row;
	flex-direction: row;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: stretch;
	align-items: stretch;
}
#footer-social {
	width: 1.7em;
	position: relative;
	align-self: flex-end;
	margin-bottom: -0.3em;
}

.facebook,
.instagram {
	display: block;
	width: 2em;
	height: 2em;
	background: url(assets/images/insta.svg) center center no-repeat;
	background-size: 1.2em auto;
}
.facebook {
	background-image: url(assets/images/fb.svg);
}

#footer-headline {
	padding-bottom: 0.75em;
}

#footer-text1 {
	width: 14em;
}
#footer-text2 {
	width: 12em;
	margin-left: 1em;
}
#footer-text3 {
	width: 12em;
	margin-left: 1em;
}

#footer-navi {
	margin-left: 4em;
	padding-left: 6em;
	border-left: 1px #bc342c solid;
	width: 20em;
	max-width: 47%;
	box-sizing: border-box;
}

#footer-navi ul {
	margin: 0;
	padding: 0;
}
#footer-navi li {
	padding-left: 0;
}
#footer-navi li::before {
	content: none;
}

footer a:hover {
	color: white;
}
footer .instagram:hover,
footer .facebook:hover {
	filter: contrast(0.5) brightness(10);
}

@media (max-width: 999px) {
	footer {
		padding: 2.66em;
	}
	
	#footer-cols {
		display: block;
		position: relative;
	}
	#footer-text2,
	#footer-text3 {
		width: 15em;
		margin-left: 0;
		padding-top: 1em;
	}
	#footer-navi {
		margin-left: 0;
		padding-left: 0;
		border-left: 0;
		text-align: right;
		position: absolute;
		top: 0.75em;
		right: 0;
	}
	#footer-social {
		width: 1.7em;
		position: absolute;
		margin-bottom: 0;
		right: -0.1em;
		bottom: 0.4em;
		font-size: 1.4em;
	}
}

@media (min-width: 360px) and (max-width: 999px) {
	footer .content-text {
		font-size: 1.15em;
	}
}


/* breakpoints */

.mobile-only {
	display: none;
}

@media (max-width: 999px) {
	.desktop-only {
		display: none;
	}
	.mobile-only {
		display: block;
	}
}


/* mobile slider fix */

@media (max-width: 999px) {
	.slider-type-hero-slider .swiper-slide .content-text {
		pointer-events: none;
	}
	.slider-type-hero-slider .swiper-slide .content-text a {
		pointer-events: all;
	}
	.slider-type-hero-slider .swiper-slide .image-wrap > a {
		display: block;
		min-height: 100%;
	}
}


/* opening hours */

#primary-menu {
	padding-right: 0;
}

#opening-hours {
	position: relative;
	-webkit-align-self: flex-start;
	align-self: flex-start;
	margin-top: 3em;
	cursor: pointer;
	display: block;
	padding: 0.3em 0.75em 0.6em 0;
}

.oh-desktop-text {
	color: #eb4137;
	text-transform: uppercase;
}
@media (min-width: 1300px) {
	#opening-hours {
		margin-left: 3%;
	}
}
@media (min-width: 1400px) {
	#opening-hours {
		padding-right: 0;
	}
	.oh-desktop-text br {
		display: none;
	}
}


.oh-mobile-icon {
	display: none;

	width: 2em;
	height: 2em;
	-webkit-mask: url(data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJFYmVuZV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCINCgkgdmlld0JveD0iMCAwIDI1IDI1IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyNSAyNTsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6bm9uZTtzdHJva2U6I0Q2NEY0MTtzdHJva2Utd2lkdGg6MjtzdHJva2UtbWl0ZXJsaW1pdDoxMDt9DQoJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNENjRGNDE7c3Ryb2tlLXdpZHRoOjI7c3Ryb2tlLWxpbmVjYXA6cm91bmQ7c3Ryb2tlLWxpbmVqb2luOnJvdW5kO3N0cm9rZS1taXRlcmxpbWl0OjEwO30NCjwvc3R5bGU+DQo8Zz4NCgk8Y2lyY2xlIGNsYXNzPSJzdDAiIGN4PSIxMi41IiBjeT0iMTIuNSIgcj0iMTAuNSIvPg0KCTxwb2x5bGluZSBjbGFzcz0ic3QxIiBwb2ludHM9IjE2LDEzLjUgMTEuNSwxMyAxNCw2LjUgCSIvPg0KPC9nPg0KPC9zdmc+) center center no-repeat;
	-webkit-mask-size: 82% auto;
	background-color: currentColor;

}

.oh-mobile-info {
	display: none;
	opacity: 0;
	transition: opacity 0.25s ease;
	background-color: #eb4137;
	color: white;
	padding: 0.5em 0.7em 0.4em 0.7em;
	position: absolute;
	left: 1rem;
	top: calc(100% + 0.5rem);
	white-space: nowrap;
	transform: translateX(-50%);
}
.oh-mobile-icon:hover + .oh-mobile-info,
.oh-mobile-icon:active + .oh-mobile-info {
	opacity: 1;
}

.oh-mobile-info::before {
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	width: 0.7em;
	height: 0.7em;
	background-color: #eb4137;
	transform: translate(-50%, -50%) rotate(45deg);	
}


@media (max-width: 999px) {
	#opening-hours {
		padding: 0 3.5em 0 0;
		margin-top: 2.7em;
	}
	.oh-mobile-info,
	.oh-mobile-icon {
		display: block;
	}
	.oh-desktop-text {
		display: none;
	}
	
}



.mailpoet_text_label,
.mailpoet_select_label {
	padding: 0.2em 0;
}
.mailpoet_paragraph {
	padding-top: 0.75em !important;
	max-width: 25em !important;
	margin: 0 auto;
}

.mailpoet_submit {
	background-color: #eb4137;
	color: white;
	text-transform: uppercase;
	padding: 0.55em !important;
	letter-spacing: 0.02em;
}



#lang-select {
	margin-top: 3.15em;
    margin-left: 0.75rem;
	white-space: nowrap;
}
#lang-select ul,
#lang-select li {
	display: inline;
	list-style-type: none;
	padding: 0;
	margin: 0;
}
#lang-select a {
	display: inline-block;
	padding: 0.25em 0;
	font-weight: bold;
}
.current-language-menu-item a {
    color: #eb4137;
}
@media (max-width: 999px) {
	.current-language-menu-item {
		display: none !important;
	}
	#lang-select {
		font-size: 1.25em;
		margin-top: 2.75rem;
		margin-right: 3.3rem;
	}
	#logo {
		margin-right: 1.25em;
		max-width: 33vw;
	}
}
@media (min-width: 1000px) {
	#lang-select li + li {
		position: relative;
		padding-left: 0.55em;
	}
	#lang-select li + li::before {
		content: "";
		border-left: 2px #282828 solid;
		position: absolute;
		top: 0;
		left: 0.25em;
		height: 1.1em;
		opacity: 0.25;
	}	
}

