@font-face {
    font-family: 'Open Sans';
    src: local('Open Sans Regular'), local('OpenSans-Regular'),
        url('../fonts/OpenSans-Regular.woff2') format('woff2'),
        url('../fonts/OpenSans-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sans';
    src: local('Open Sans Italic'), local('OpenSans-Italic'),
        url('../fonts/OpenSans-Italic.woff2') format('woff2'),
        url('../fonts/OpenSans-Italic.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sans';
    src: local('Open Sans Bold'), local('OpenSans-Bold'),
        url('../fonts/OpenSans-Bold.woff2') format('woff2'),
        url('../fonts/OpenSans-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Open Sans';
    src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'),
        url('../fonts/OpenSans-BoldItalic.woff2') format('woff2'),
        url('../fonts/OpenSans-BoldItalic.woff') format('woff');
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

/* ANIMATONS */

@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes fadeInFromTop {
	from {
		opacity: 0;
		transform: translateY(-20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes fadeInFromBottom {
	from {
		opacity: 0;
		bottom: -20px;
		transform: translateY(20px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes fadeInFromLeft {
	from {
		opacity: 0;
		transform: translateX(-20px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes fadeInFromRight {
	from {
		opacity: 0;
		transform: translateX(20px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

/* http://meyerweb.com/eric/tools/css/reset/ v2.0 | 20110126 License: none (public domain) */
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;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, main {
	display: block;
}
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;
}

html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
}

body {
	font-family: 'Open Sans';
	font-weight: normal;
	background: #ffffff;
	text-align: left;
	font-size: 20px; 
	font-size: 2.0rem;
	line-height: 1.4;
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1 {
	font-weight: bold;
	font-size: 17px;
	font-size: 1.7rem;
	margin-bottom: 2rem;
	line-height: 1.2;
	text-transform: uppercase;
	color: #7aaae8;
	letter-spacing: 0.03rem;
}
body.home h1:not(.has-huge-font-size) {
	font-size: 40px;
	font-size: 4.0rem;
	margin-top: 9rem;
	margin-bottom: 6rem;
}
body.home h1:first-child {
	margin-top: 0;
	margin-bottom: 9rem;
}

h2 {
	font-weight: bold;
	font-size: 34px;
	font-size: 3.4rem;
	margin-top: 6rem;
	margin-bottom: 5rem;
	line-height: 1.2;
	text-transform: uppercase;
	color: #7aaae8;
	letter-spacing: 0.03rem;
}
h1 + h2 {
	margin-top: 2rem;
}

h3, .h3, footer .title, .wpforms-page-indicator-page-title {
	font-weight: bold;
	font-size: 19px;
	font-size: 1.9rem;
	margin-top: 4rem;
	margin-bottom: 3rem;
	line-height: 1.2;
	text-transform: uppercase;
	color: #7aaae8;
	letter-spacing: 0.03rem;
}

h4, .h4 {
	font-weight: normal;
	font-size: 18px;
	font-size: 1.8rem;
	margin-top: 3rem;
	margin-bottom: 3rem;
	line-height: 1.2;
	text-transform: uppercase;
	color: #7aaae8;
	letter-spacing: 0.03rem;
}

main article p, main article ul, main article ol {
	margin-bottom: 3rem;
}

.has-huge-font-size {
	font-size: 80px;
	font-size: 8.0rem;
}

main article ul {
	list-style: disc;
	padding-left: 2rem;
}
	main article ul li {
		margin-bottom: 0.5rem;
	}

a {
	text-decoration: none;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}

main article p a, main article ul li a, main article ol li a, main article .cn-revoke-inline {
	color: #ee0d1f;
	text-decoration: underline;
}
main article p a:hover, main article ul li a:hover, main article ol li a:hover {
	opacity: 0.7;
}

main article h1 a, main article h2 a, main article h3 a, main article h4 a {
	color: #7aaae8;
	text-transform: none;
}

/* Default WP Alignment Classes */

.aligncenter,.alignleft,.alignright {
    display: block;
    padding: 0;
}

.aligncenter {
    float: none;
    margin: .5em auto 1em;
}

.alignright {
    float: right;
    margin: 0 0 1em 1em;
}

.alignleft {
    float: left;
    margin: 0 1em 1em 0;
}

.wp-caption {
    padding: 5px 0;
    border: 1px solid #555;
    background: #444;
    text-align: center;
}

.wp-caption img {
    display: inline;
}

.wp-caption p.wp-caption-text {
    margin: 5px 0 0;
    padding: 0;
    text-align: center;
    font-size: 75%;
    font-weight: 100;
    font-style: italic;
    color: #ddd;
}

/* buttons */
.wp-block-buttons {
	
}
	.wp-block-buttons > .wp-block-button {
		
	}
		a.button, .wp-block-button__link {
			border-radius: 99px;
			text-transform: uppercase;
			font-size: 19px; 
			font-size: 1.9rem;
			font-weight: bold;
			letter-spacing: 0.03rem;
			padding: 2.2rem 5.6rem;
			background-color: #ee0d1f;
			display: inline-block;
			color: #fff;
			text-decoration: none;
		}
		a.button {
			margin: 3rem 0;
		}
		a.button.small {
			font-size: 16px; 
			font-size: 1.6rem;
			padding: 0.8rem 1.8rem;
			margin: 1.5rem 0;
		}
		a.button:hover, .wp-block-button__link:hover {
			text-decoration: none;
			color: #ffffff;
			transform: scale(1.03);
			opacity: 1;
		}
		.wp-block-button__link:active, .wp-block-button__link:focus, .wp-block-button__link:visited {
			text-decoration: none;
			color: #ffffff;
		}
		.wp-block-button__link.has-white-background-color:hover {
			text-decoration: none;
			color: #ee0d1f;
		}
		.wp-block-button__link.has-white-background-color:active, .wp-block-button__link.has-white-background-color:focus, .wp-block-button__link.has-white-background-color:visited {
			text-decoration: none;
			color: #ee0d1f;
		}

		.wp-block-button.anfrage .wp-block-button__link, .wp-block-button.telefon .wp-block-button__link, .wp-block-button.settings .wp-block-button__link, .wp-block-button.manage-search .wp-block-button__link {
			min-width: 40rem;
			box-sizing: border-box;
			position: relative;
			display: flex;
			justify-content: center;
			align-items: center;
			/* grid-gap: 1rem;
			gap: 1rem; no browser support */
		}
		.wp-block-button.anfrage .wp-block-button__link:before, .wp-block-button.telefon .wp-block-button__link:before, .wp-block-button.settings .wp-block-button__link:before, .wp-block-button.manage-search .wp-block-button__link:before {
			content: '';
			width: 3rem;
			height: 3rem;
			background-size: contain;
			margin-right: 1rem;
		}
		.wp-block-button.anfrage .wp-block-button__link:before {
			background-image: url(../img/groups_red_24dp.svg);
		}
		.wp-block-button.telefon .wp-block-button__link:before {
			background-image: url(../img/phone_white_24dp.svg);
		}
		.wp-block-button.settings .wp-block-button__link:before {
			background-image: url(../img/settings_white_24dp.svg);
		}
		.wp-block-button.manage-search .wp-block-button__link:before {
			background-image: url(../img/manage_search_white_24dp.svg);
		}

strong {
	font-weight: bold;
}

em {
	font-style: italic;
}

strong em {
	font-weight: bold;
	font-style: italic;
}

sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	top: -0.5em;
}

.wp-block-image img, .alignnone {
	display: block;
	width: 100%;
	height: auto;
}

/* colors */
.has-red-color {
	color: #ee0d1f;
}
.has-blue-color {
	color: #7aaae8;
}
.has-white-color {
	color: #ffffff;
}

.has-red-background-color {
	background-color: #ee0d1f !important;
}
.has-blue-background-color {
	background-color: #7aaae8 !important;
}
.has-white-background-color {
	background-color: #ffffff !important;
}

/* ICONS */
.has-icon {
	position: relative;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
.has-icon:before {
	content: '';
	width: 2.2rem;
	height: 2.2rem;
	margin-top: 0.1rem;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	flex-shrink: 0;
	margin-right: 1rem;
}
footer .has-icon:before {
	margin-top: 0.4rem;
}
.has-icon.groups:before {
	background-image: url(../img/groups_white_24dp.svg);
}
	.has-icon.groups.red:before {
		background-image: url(../img/groups_red_24dp.svg);
	}
.has-icon.phone:before {
	background-image: url(../img/phone_white_24dp.svg);
}
.has-icon.mail:before {
	background-image: url(../img/mail_white_24dp.svg);
}
.has-icon.article:before {
	background-image: url(../img/article_white_24dp.svg);
}
.has-icon.manage-search:before {
	background-image: url(../img/manage_search_white_24dp.svg);
}
.has-icon.settings:before {
	background-image: url(../img/settings_white_24dp.svg);
}
.has-icon.arrow-circle-right:before {
	background-image: url(../img/arrow_circle_right_white_24dp.svg);
}
.has-icon.arrow-circle-right.red:before {
	background-image: url(../img/arrow_circle_right_red_24dp.svg);
}
.has-icon.facebook:before {
	background-image: url(../img/facebook.svg);
}
.has-icon.instagram:before {
	background-image: url(../img/instagram.svg);
}


/* HEADER */
header {
	-webkit-box-shadow: 0 0 6px 2px rgba(0,0,0,0.1);
	box-shadow: 0 0 6px 2px rgba(0,0,0,0.1);
}
	header #logo {
		width: 28rem;
		max-width: 80%;
		display: block;
		padding: 2rem 0;
		margin: auto;
	}
		header #logo img {
			display: block;
			width: 100%;
			height: auto;
		}
	header nav#main-menu {
		padding: 0;
		border-top: 1px solid rgba(122, 170, 232, 0.3);
	}
		header nav#main-menu > div {

		}
			header .menu {
				margin: 0;
				display: flex;
				justify-content: center;
				align-items: center;
			}
				header nav#main-menu ul li {
					/* do not add position relative because of sub menu */
				}
					header nav#main-menu ul li a {
						text-transform: uppercase;
						font-size: 17.8px; 
						font-size: 1.78rem;
						font-weight: bold;
						display: block;
						padding: 2rem 4.3rem;
						color: #7aaae8;
						letter-spacing: 0.03rem;
					}
						header nav#main-menu ul li a span {
							color: #ee0d1f;
						}
					header nav#main-menu ul li a:hover {
						text-decoration: none;
						color: #ee0d1f;
					}
					header nav#main-menu > div > ul > li.menu-item-has-children:hover > a {
						background-color: #7aaae8;
						color: #ffffff;
					}
					header nav#main-menu > div > ul > li.menu-item-has-children:hover > a span {
						color: #ee0d1f;
					}
					header nav#main-menu ul li.current-menu-item > a {
						color: #ee0d1f;
					}

					/* SUBMENU */
					header nav#main-menu .sub-menu {
						opacity: 0;
						visibility: hidden;
						position: absolute;
						z-index: 999;
						background-color: rgba(122, 170, 232, 0.9);
						margin: 0;
						padding: 2rem 5vw;
						box-sizing: border-box;
						width: 100%;
						left: 0;
						display: grid;
						grid-template-columns: 1fr 1fr 1fr 1fr;
						grid-column-gap: 4rem; /* old Safari fix */
						column-gap: 4rem;
						-webkit-box-shadow: 0 8px 4px -4px rgba(0,0,0,0.1);
						box-shadow: 0 8px 4px -4px rgba(0,0,0,0.1);
						-webkit-transition: all 300ms ease;
						-moz-transition: all 300ms ease;
						-ms-transition: all 300ms ease;
						-o-transition: all 300ms ease;
						transition: all 300ms ease;
					}
					header nav#main-menu .col-5 .sub-menu {
						grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
					}
					header nav#main-menu > div > ul > li.menu-item-has-children:hover > .sub-menu {
						opacity: 1;
						visibility: visible;
					}
						header nav#main-menu .sub-menu li {
							
						}
							header nav#main-menu .sub-menu li a {
								padding: 2rem 0;
								color: #ffffff;
								border-bottom: 1px solid rgba(255, 255, 255, 0.3);
							}
							header nav#main-menu .show-thumbnails .sub-menu li a {
								display: flex;
								flex-direction: column;
								position: relative;
							}
							header nav#main-menu .show-thumbnails .sub-menu li a:after {
								content: '';
								display: block;
								padding-bottom: 70%;
							}
								header nav#main-menu .show-thumbnails .sub-menu li a img {
									display: block;
									width: 100%;
									height: auto;
									order: 2;
									object-fit: cover;

									/*margin-top: 1.5rem; only use when aspect ratio is set */
									/*aspect-ratio: 3.2 / 2; not really supported at this moment */

									/* delete below if aspect ratio is set */
									position: absolute;
									left: 0;
									top: 6rem;
									height: calc(100% - 8rem);
									margin-top: 0;
									/* end of delete */
								}
						header nav#main-menu .sub-menu .sub-menu {
							display: none;
						}

	#nav-icon {
		display: none;
	}

#header-image {
	
}
	#header-image img {
		display: block;
		width: 100%;
		height: auto;
	}
.home #header-image {
	position: relative;
}
	.home #header-image .wp-block-buttons {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
		.home #header-image .wp-block-buttons .wp-block-button {
			margin: 0.7rem 0;
			opacity: 0;
		}
		.home #header-image .wp-block-buttons .wp-block-button.anfrage {
			animation: fadeInFromLeft 0.4s ease-out 0.2s forwards;
		}
		.home #header-image .wp-block-buttons .wp-block-button.telefon {
			animation: fadeInFromLeft 0.4s ease-out 0.4s forwards;
		}
			.home #header-image .wp-block-buttons .wp-block-button .wp-block-button__link {
				
			}

#header-image.has-headpic, #header-image.no-headpic {
	min-height: 40rem;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.single #header-image {
	position: relative;
	height: calc(100vh - 238px);
}
	.single #header-image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.single #header-image .title {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background-color: rgba(0, 0, 0, 0.5);
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
	}
		.single #header-image .title h1 {
			font-weight: normal;
			color: #ffffff;
			text-transform: none;
			font-size: 38px;
			font-size: 3.8rem;
			max-width: 86rem;
			text-align: center;
			padding: 0 5vw;
		}
		.single #header-image .title .date {
			font-style: italic;
			color: #7aaae8;
		}

#header-image-split {
	display: flex;
}
	#header-image-split .left {
		flex-grow: 1;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
	}
		#header-image-split .left img {
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	#header-image-split .right {
		flex-shrink: 0;
		width: 100rem;
		padding: 12rem;
		box-sizing: border-box;
		background-color: #7aaae8;
	}

/* MAIN */
.page-template-default main, .single main, .page-template-content_tpl_anfrage main, .error404 main, .-template-default main {
	max-width: 86rem;
	margin: auto;
	padding: 9rem 5vw 0 5vw;
}

.category main {
	max-width: 131rem;
	margin: auto;
	padding: 9rem 5vw 0 5vw;
}

main.has-cols {
	max-width: 131rem;
	margin: auto;
	padding: 9rem 5vw 0 5vw;
	display: flex;
	justify-content: space-between;
	/*gap: 4rem;*/
}

	/* ASIDE LEFT */
	.has-cols #side_nav {
		width: 30rem;
		flex-shrink: 0;
		align-self: flex-start;
		margin-top: -14.5rem;
		margin-right: 4rem;
	}
	.has-cols #side_nav.sticky {
		position: sticky;
		top: 2em;
	}
		.has-cols #side_nav h3 {
			height: 5.5rem;
			display: flex;
			justify-content: flex-start;
			align-items: center;
			box-sizing: border-box;
			padding-left: 2.2rem;
			background-color: #7aaae8;
			color: #ffffff;
			margin: 0;
		}
		.has-cols #side_nav ul a {
			color: #7aaae8;
			display: block;
			border-bottom: 1px solid rgba(122, 170, 232, 0.3);
		}
		.has-cols #side_nav > ul > li > a {
			font-size: 19px;
			font-size: 1.9rem;
			padding: 1.42rem 2.2rem;
			background-color: rgba(122, 170, 232, 0.1);
		}
		.has-cols #side_nav > ul > li > a:hover {
			background-color: #ffffff;
		}
		.has-cols #side_nav > ul > li.current_page_item > a, .has-cols #side_nav > ul > li.current_page_parent > a, .has-cols #side_nav > ul > li.current_page_ancestor > a {
			background-color: #ffffff;
		}
		.has-cols #side_nav > ul > li > .children a {
			font-size: 17px;
			font-size: 1.7rem;
			padding: 0.6rem 2.2rem;
		}
		.has-cols #side_nav > ul > li > .children a:hover {
			opacity: 0.7;
		}
		.has-cols #side_nav .children {
			margin-left: 2rem;
		}
		.has-cols #side_nav > ul > li > .children {
			margin-left: 0;
		}
		.has-cols #side_nav .children {
			display: none;
		}
		.has-cols #side_nav > ul > .current_page_item > .children, .has-cols #side_nav > ul > .current_page_parent > .children, .has-cols #side_nav > ul > .current_page_ancestor > .children {
			display: block;
		}
		.has-cols #side_nav > ul > li > .children .current_page_item .children, .has-cols #side_nav > ul > li > .children .current_page_parent .children, .has-cols #side_nav > ul > li > .children .current_page_ancestor .children {
			display: block;
		}
		.has-cols #side_nav .current_page_item > a {
			font-weight: bold;
		}
		.has-cols #side_nav.reiseziele:not(.incentive) .children {
			display: block;
		}

		.has-cols #side_nav p {
			margin-top: 3rem;
		}
			.has-cols #side_nav p a {
				color: #ee0d1f;
			}

main.widesize {
	max-width: 131rem;
	margin: auto;
	padding: 9rem 5vw 0 5vw;
}

	/* ARTICLE */
	.has-cols article {
		flex-grow: 1;
	}

	/* ASIDE RIGHT */
	.has-cols #side_images {
		width: 30rem;
		flex-shrink: 0;
		margin-left: 4rem;
	}
		.has-cols #side_images img {
			display: block;
			width: 18.6rem;
			height: 18.6rem;
			object-fit: cover;
			margin: 0 auto 7rem auto;
			border-radius: 9999px;
		}

/* FOOTER */
footer {
	
}
	footer h2 a {
		color: #7aaae8;
	}
	footer nav#footer-menu {
		margin: 9rem auto;
		max-width: 131rem;
		padding: 0 5vw;
	}
		footer nav#footer-menu ul {
			column-count: 6;
			column-gap: 2em;
			column-width: 18rem;
			margin: 0;
		}
			footer nav#footer-menu ul li {
				margin-bottom: 2em;
				break-inside: avoid;
			}
				footer nav#footer-menu ul li a {
					color: #ffffff;
					display: block;
					width: 100%;
					position: relative;
					border-radius: 9999px;
					overflow: hidden;
					-webkit-transform: translateZ(0); /* fixes Safari :hover bug */
				}
					footer nav#footer-menu ul li a .title {
						position: absolute;
						z-index: 2;
						top: 0;
						right: 0;
						bottom: 0;
						left: 0;
						display: flex;
						justify-content: center;
						align-items: center;
						background-color: rgba(122, 170, 232, 0.5);
						color: #ffffff;
						margin: 0;
						-webkit-transition: all 300ms ease;
						-moz-transition: all 300ms ease;
						-ms-transition: all 300ms ease;
						-o-transition: all 300ms ease;
						transition: all 300ms ease;
					}
					footer nav#footer-menu ul li a:hover .title {
						background-color: rgba(122, 170, 232, 0);
					}
					footer nav#footer-menu ul li a img {
						display: block;
						width: 100%;
						height: auto;
						-webkit-transition: all 300ms ease;
						-moz-transition: all 300ms ease;
						-ms-transition: all 300ms ease;
						-o-transition: all 300ms ease;
						transition: all 300ms ease;
					}
					footer nav#footer-menu ul li a:hover img {
						transform: scale(1.1);
					}
	#blue-footer {
		background-color: #7aaae8;
		padding: 9rem 5vw 16rem 5vw; /* more padding bottom because of cookie banner */
	}
		#blue-footer a {
			color: #ffffff;
		}
		#blue-footer a:hover {
			color: #ee0d1f;
		}
		#blue-footer-inner {
			max-width: 131rem;
			margin: auto;
			display: flex;
			justify-content: space-between;
			align-items: center;
		}
			#blue-footer .left {
				margin: 0;
				flex-grow: 1;
			}
				#blue-footer .left ul {
					margin: 0;
					display: flex;
					justify-content: flex-start;
					align-items: center;
				}
					#blue-footer .left li {
						margin-right: 5rem;
					}
			#blue-footer .right {
				margin: 0;
				flex-shrink: 0;
			}
				#blue-footer .right ul {
					margin: 0;
					display: flex;
					justify-content: flex-end;
					align-items: center;
				}
					#blue-footer .right li {
						margin-left: 2rem;
					}
						#blue-footer .right li img {
							display: block;
							width: 3.5rem;
							height: auto;
						}

#overlay {
	position: fixed;
	z-index: 9990;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.5);
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}
body.schnellanfrage-active #overlay, body.iframe-active #overlay {
	opacity: 1;
	visibility: visible;
}

#schnellanfrage {
	position: fixed;
	z-index: 9998;
	right: 5vw;
	bottom: calc(5vw - 1.2rem);
	cursor: pointer;
	opacity: 0;
	animation: fadeIn 1s ease 2s forwards;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}
.page-template-content_tpl_anfrage #schnellanfrage {
	display: none !important;
}
body.schnellanfrage-active #schnellanfrage {
	right: calc(5vw + 85rem);
}
	#schnellanfrage-icon {
		position: relative;
	}
		#schnellanfrage img {
			position: relative;
			display: block;
			width: 7.4rem;
			height: 7.4rem;
			padding: 1.2rem;
		}
	@keyframes schnellanfrage {
		0% {
			opacity: 1;
			transform: scale(1);
		}
		10% {
			opacity: 0;
			transform: scale(1.2);
		}
		20% {
			opacity: 1;
			transform: scale(1);
		}
		100% {
			opacity: 1;
			transform: scale(1);
		}
	}
	#schnellanfrage-icon:before {
		content: '';
		position: absolute;
		width: 100%;
		height: 100%;
		border: 1px solid rgba(238, 13, 31, 0.3);
		border-radius: 99px;
		transform: scale(1);
		box-sizing: border-box;
		animation: schnellanfrage 8s ease 3s infinite;
	}
	#schnellanfrage:hover {
		transform: scale(1.1);
	}

#schnellanfrage_buttons {
	position: fixed;
	z-index: 9999;
	bottom: 5vw;
	right: -1000px;
	column-gap: 2.5rem;
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}
	#schnellanfrage_buttons .wp-block-button {
		margin-bottom: 0;
	}
body.schnellanfrage-active #schnellanfrage_buttons {
	right: 5vw;
}

/* expand main wrapper */
.alignwide {
	width: 100vw;
	max-width: 131rem;
	margin-left: calc(50% - 131rem / 2);
}

.alignfull {
	width: 100vw;
	max-width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
}

/* image alignment */
.wp-block-image {
	margin-bottom: 3rem;
}
	.wp-block-image .alignleft {
		float: left;
		margin-right: 3rem;
		margin-bottom: 3rem;
		max-width: 330px;
	}
	.wp-block-image .alignright {
		float: right;
		margin-left: 3rem;
		margin-bottom: 3rem;
		max-width: 330px;
	}

/* image with caption */
.wp-caption {
	width: 100%;
	margin-bottom: 3rem;
}
.wp-caption.alignleft {
	float: left;
	margin-right: 3rem;
}
.wp-caption.alignright {
	float: right;
	margin-left: 3rem;
}
	.wp-caption-text {
		font-size: 17px;
		font-size: 1.7rem;
		color: #8b8b8b;
		margin-top: 1rem;
	}

/* horizontal line */
hr, .wp-block-separator {
	margin-top: 9rem;
	margin-bottom: 9rem;
	border: 0;
	border-bottom: 1px solid rgba(122, 170, 232, 0.3);
}
.wp-block-separator.half {
	margin-top: 4.5rem;
	margin-bottom: 4.5rem;
}

/* BLUE WAVES */
#blue-waves {
	position: relative;
}
#blue-waves:before {
	content: '';
	position: absolute;
	z-index: -2;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 100%;
	height: 2000px;
	background-image: url(../img/blue-waves.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 110%;
	opacity: 0;
	animation: fadeIn 0.8s ease-in 1s forwards;
}
#bubbles {
	display: none;
	position: absolute;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 700px;
	background-image: url(../img/bubbles.png);
	background-image: url(../img/bubbles.webp);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
	/* this is for parallax effect */
	-moz-transform: translate3d(0,0,0);
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}

/* BLOCK SPACER */
.wp-block-spacer {
	height: 9rem !important;
}
.wp-block-spacer.times-2 {
	height: 18rem !important;
}
.wp-block-spacer.times-3 {
	height: 27rem !important;
}
.wp-block-spacer.half {
	height: 4.5rem !important;
}

/* BLOCK COLUMNS */
main article .wp-block-columns {
	margin-top: 9rem;
	margin-bottom: 9rem;
}
main article h1 + .wp-block-columns {
	margin-top: 2em;
	margin-bottom: 2em;
}
body.home main article h1 + .wp-block-columns {
	margin-top: 9rem;
}

/* BLUE BOX */
.wp-block-columns.blue-box {
	
}
.wp-block-columns.blue-box + .wp-block-columns.blue-box {
	margin-top: 2em;
	margin-bottom: 2em;
}
	.wp-block-columns.blue-box .wp-block-column, .news-box {
		background-color: #7aaae8;
		padding: 2.5rem;
	}
		.wp-block-columns.blue-box .wp-block-column .wp-block-image, .news-box .wp-block-image {
			display: block;
			margin: -2.5rem -2.5rem 3rem -2.5rem;
		}
			.wp-block-columns.blue-box .wp-block-column .wp-block-image a, .news-box .wp-block-image a {
				position: relative;
				display: block;
				width: 100%;
				height: 100%;
				overflow: hidden;
			}
				.wp-block-columns.blue-box .wp-block-column .wp-block-image a img, .news-box .wp-block-image a img {
					-webkit-transition: all 300ms ease;
					-moz-transition: all 300ms ease;
					-ms-transition: all 300ms ease;
					-o-transition: all 300ms ease;
					transition: all 300ms ease;
				}
				.wp-block-columns.blue-box .wp-block-column:hover .wp-block-image a img, .news-box:hover .wp-block-image a img {
					transform: scale(1.05);
				}
		.wp-block-columns.blue-box .wp-block-column *:not(.has-inline-color), .news-box *:not(.has-inline-color) {
			color: #ffffff !important;
		}
		.wp-block-columns.blue-box .wp-block-column *:last-child, .news-box *:last-child {
			margin-bottom: 0;
		}
		.wp-block-columns.blue-box .wp-block-column .plain, .news-box .plain {
			display: block;
			width: 3rem;
			height: 3rem;
			height: auto;
			float: left;
		}
		.wp-block-columns.blue-box .wp-block-column .plain-wrapper, .news-box .plain-wrapper {
			-webkit-transition: all 300ms ease;
			-moz-transition: all 300ms ease;
			-ms-transition: all 300ms ease;
			-o-transition: all 300ms ease;
			transition: all 300ms ease;
		}
		.wp-block-columns.blue-box .wp-block-column:hover .plain-wrapper, .news-box:hover .plain-wrapper {
			transform: translateX(4px);
		}
		.wp-block-columns.blue-box .wp-block-column .wp-block-group, .news-box .wp-block-group {
			padding: 0.3rem 0 0.3rem 1.1rem;
			margin-left: 4rem;
			border-left: 1px solid rgba(255, 255, 255, 0.3);
			margin-bottom: 2.3rem;
		}
			.wp-block-columns.blue-box .wp-block-column .wp-block-group .wp-block-group__inner-container a:hover, .news-box .wp-block-group .wp-block-group__inner-container a:hover {
				color: #ee0d1f !important;
			}
			.wp-block-columns.blue-box .wp-block-column h2, .wp-block-columns.blue-box .wp-block-column h3, .wp-block-columns.blue-box .wp-block-column h4, .news-box h2, .news-box .h3, .news-box .h4 {
				margin: 0;
			}
		.wp-block-columns.blue-box .wp-block-column p, .news-box p {
			font-size: 16px;
			font-size: 1.6rem;
		}
		.wp-block-columns.blue-box p.quick-links {
			margin-bottom: 1rem;
		}
		.wp-block-columns.blue-box p.quick-links:last-child {
			margin-bottom: 0;
		}

/* BLOCK COVER */
.wp-block-cover {
	padding: 0;
	margin-top: 12rem;
	margin-bottom: 12rem;
}
	.wp-block-cover.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container {
		max-width: 131rem;
		margin: auto;
		flex-grow: 1;
	}
	.wp-block-cover h1 {
		text-transform: none;
	}

/* NEWS TEMPLATE */
/* most settings at .blue-box */
.news {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 2em;
}
	.news-box {
		margin-bottom: 2em;
	}

/* COOKIE BANNER */
#cookie-notice {
	font-family: 'Open Sans' !important;
	font-weight: bold !important;
	font-size: 13px !important;
	padding-right: 30px !important;
}
	.cookie-notice-container {
		padding: 15px 30px 15px 30px;
	}
		#cn-notice-text {
			margin-right: 10px;
			margin: 6px 10px 6px 0;
		}
			#cn-notice-text #cn-more-info {
				color: #ffffff;
				text-decoration: underline;
			}
		#cn-notice-buttons {
			margin: 1.5rem 0;
		}
		#cookie-notice .cn-button {
			margin: 0 10px 0 0;
			font-family: 'Open Sans';
			font-weight: bold;
			background-color: #ee0d1f;
			border-radius: 0;
			padding: 7px 15px;
			color: #ffffff;
		}
		#cn-notice-buttons #cn-more-info {
			display: none;
		}
main .cn-button {
	line-height: inherit;
}
footer .cn-button {
	line-height: inherit;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: 0;
}
main .cn-button:hover, footer .cn-button:hover {
	box-shadow: none;
}

/* BOX GANZ EINFACH */
#box-ganz-einfach {
	max-width: 131rem;
	padding: 4rem;
	background-color: #7aaae8;
	display: flex;
	align-items: stretch;
	margin: 9rem auto 9rem auto;
	box-sizing: border-box;
}
#box-ganz-einfach:last-child {
	margin-bottom: 2rem;
}
	#box-ganz-einfach h2, #box-ganz-einfach h3, #box-ganz-einfach p {
		color: #ffffff;
	}
	#box-ganz-einfach h2 {
		font-size: 18px;
		font-size: 1.8rem;
		margin: 0;
		letter-spacing: 0;
	}
		#box-ganz-einfach h2 span {
			font-size: 2.6rem;
			display: inline-block;
			line-height: 1.4;
		}
	#box-ganz-einfach h3 {
		text-transform: none;
		font-weight: bold;
		margin: 0;
		letter-spacing: 0;
		font-size: 17px;
		font-size: 1.7rem;
	}
	#box-ganz-einfach p {
		margin-bottom: 0;
		font-size: 17px;
		font-size: 1.7rem;
		padding-left: 3.2rem;
	}
	#box-ganz-einfach a:not(.button) {
		color: #ee0d1f;
		text-decoration: underline;
	}
	#box-ganz-einfach .left {
		width: 34rem;
		flex-shrink: 0;
		padding-right: 4rem;
		margin-right: 4rem;
		border-right: 1px solid rgba(255, 255, 255, 0.3);
		display: flex;
		align-items: center;
	}
	#box-ganz-einfach .right div {
		margin-bottom: 3rem;
	}
	#box-ganz-einfach .right div:last-child {
		margin-bottom: 0;
	}
	#box-ganz-einfach .button.small {
		margin-bottom: 0;
	}

/* IFRAMES */
iframe {
	width: 100%;
}
iframe.popup {
	opacity: 0;
	visibility: hidden;
	position: fixed;
	z-index: 9999;
	left: 7rem;
	top: 7rem;
	width: calc(100vw - 14rem);
	height: calc(100vh - 14rem);
	-webkit-transition: all 300ms ease;
	-moz-transition: all 300ms ease;
	-ms-transition: all 300ms ease;
	-o-transition: all 300ms ease;
	transition: all 300ms ease;
}
body.iframe-active iframe.popup {
	opacity: 1;
	visibility: visible;
	background-color: rgba(255, 255, 255, 0.9);
}
.open-iframe {
	cursor: pointer;
}

/* CLASSIC GALLERY */
.gallery {
	display: grid;
	grid-gap: 2em;
}
.gallery.gallery-columns-3 {
	grid-template-columns: 1fr 1fr 1fr;
}
	.gallery .gallery-item {
		float: none !important;
		margin-top: 0 !important;
		text-align: center !important;
		width: auto !important;
	}
	.gallery img {
		display: block;
		border: 0 !important;
		width: 100%;
		height: auto;
	}

/* SU BOX */
.su-box {
	border-color: #ee0d1f !important;
	margin-bottom: 3rem !important;
}
	.su-box-title {
		background-color: #ee0d1f !important;
	}
	.su-box-content {
		color: inherit !important;
	}

/* SU DIVIDER */
.su-divider {
	border-color: rgba(122, 170, 232, 0.3) !important;
	margin: 3rem 0 !important;
}

/* GENERAL FORM FIELDS */
input[type="text"], input[type="email"], input[type="tel"] {
	background-color: #fff !important;
	box-sizing: border-box !important;
	border-radius: 4px !important;
	color: #333 !important;
	-webkit-box-sizing: border-box !important;
	-moz-box-sizing: border-box !important;
	display: block !important;
	float: none !important;
	font-size: 16px !important;
	border: 1px solid #ccc !important;
	padding: 3rem 1rem !important;
	height: 38px !important;
	width: 100% !important;
	line-height: 1.3 !important;
	font-family: 'Open Sans' !important;
}
textarea {
	background-color: #fff !important;
	box-sizing: border-box !important;
	-webkit-box-sizing: border-box !important;
	-moz-box-sizing: border-box !important;
	border-radius: 4px !important;
	color: #333 !important;
	font-size: 16px !important;
	border: 1px solid #ccc !important;
	padding: 1.5rem !important;
	line-height: 1.3 !important;
	font-family: 'Open Sans' !important;
}
button[type="submit"], input[type="submit"], .wpforms-form .wpforms-page-button {
	background-color: #ee0d1f !important;
	color: #fff !important;
	font-weight: bold !important;
	text-transform: uppercase !important;
	letter-spacing: 0.03rem !important;
	font-size: 1.9rem !important;
	border-radius: 4px !important;
	padding: 1.6rem 3rem !important;
	margin-top: 3rem !important;
	border: 1px solid #ee0d1f !important;
	cursor: pointer;
}
label, label .evf-label {
	font-weight: normal !important;
	font-size: 1.9rem !important;
	color: initial !important;
}
label.everest-forms-field-label-inline {
	margin-bottom: 0 !important;
}

/* WP FORMS GENERAL */
.wpforms-container .wpforms-form .wpforms-field {
	padding: 1.3rem 0 !important;
}
.wpforms-submit-container {
	padding: 1.3rem 0 !important;
}
.wpforms-form .wpforms-page-button.wpforms-page-prev {
	background-color: transparent !important;
	color: #ee0d1f !important;
}
.wpforms-container .wpforms-form .wpforms-error {
	margin-top: 5px !important;
	font-size: 12px !important;
	color: #990000 !important;
}
.wpforms-confirmation-container-full {
	background: #1c8f4e !important;
	border: 1px solid #1c8f4e !important;
	color: #ffffff !important;
	text-align: center !important;
}
.wpforms-container .wpforms-form .wpforms-field-sublabel {
	font-size: 13px !important;
	font-weight: normal !important;
}

/* WP FORMS TEMPLATE ANFRAGE */
.page-template-content_tpl_anfrage .wpforms-page.last .wpforms-field-pagebreak {
	float: left !important;
}
.page-template-content_tpl_anfrage .wpforms-submit-container {
	float: right !important;
	clear: none !important;
}
.page-template-content_tpl_anfrage .wpforms-container .wpforms-form .wpforms-page-indicator.circles {
	border: 0 !important;
}
.page-template-content_tpl_anfrage .wpforms-container .wpforms-form .wpforms-page-indicator.circles .wpforms-page-indicator-page-number {
	font-weight: bold !important;
}
.page-template-content_tpl_anfrage .wpforms-container .wpforms-form .wpforms-page-indicator.circles .wpforms-page-indicator-page-number {
	background-color: #ffffff !important;
	color: #7aaae8 !important;
}
.page-template-content_tpl_anfrage .wpforms-container .wpforms-form .wpforms-page-indicator.circles .wpforms-page-indicator-page.active .wpforms-page-indicator-page-number {
	background-color: #ee0d1f !important;
	color: #ffffff !important;
}
.page-template-content_tpl_anfrage .wpforms-container .wpforms-form .wpforms-page-indicator.circles .wpforms-page-indicator-page {
	margin: 0 20px 20px 0 !important;
}
.page-template-content_tpl_anfrage .wpforms-container .wpforms-form .wpforms-page-indicator.circles .wpforms-page-indicator-page:last-of-type {
	margin: 0 !important;
}
.page-template-content_tpl_anfrage .wpforms-container .wpforms-form .wpforms-page-indicator.circles {
	padding: 0 !important;
	display: flex;
	justify-content: space-between;
}
.page-template-content_tpl_anfrage .wpforms-page-indicator-page-title {
	color: #ffffff !important;
	font-size: 1.9rem !important;
	text-transform: uppercase !important;
	letter-spacing: 0.03rem !important;
}
.page-template-content_tpl_anfrage .wpforms-container .wpforms-form .wpforms-field-label {
	color: #ffffff !important;
}
.page-template-content_tpl_anfrage input[type="text"], .page-template-content_tpl_anfrage input[type="email"], .page-template-content_tpl_anfrage textarea {
	border: 0 !important;
}

/* EVEREST FORMS */
.everest-forms .evf-field-container .evf-frontend-row .evf-frontend-grid, .everest-forms .evf-submit-container, .evf-recaptcha-container .evf-error {
	padding: 0;
}
.everest-forms .evf-smart-phone-field {
	padding-left: 52px !important;
}
.everest-forms .evf-field-container .evf-frontend-row .evf-frontend-grid .evf-field {
	padding: 1.3rem 0 !important;
	margin: 0 !important;
}
.everest-forms input {
	margin-bottom: 0 !important;
}
.everest-forms label.evf-error {
	margin-top: 5px !important;
	font-size: 12px !important;
	color: #990000 !important;
}
.everest-forms h3 {
	font-weight: bold !important;
	font-size: 19px !important;
	font-size: 1.9rem !important;
	margin-top: 4rem !important;
	margin-bottom: 3rem !important;
	line-height: 1.2 !important;
	text-transform: uppercase !important;
	color: #7aaae8 !important;
	letter-spacing: 0.03rem !important;
}


/* MEDIA QUERIES */

/* second most used on desktop */
@media screen and (max-width: 1920px) {
	
}

@media screen and (max-width: 1660px) {
	/* html font size break? */
}

@media screen and (max-width: 1560px) {
	.page-template-default main, .single main, .page-template-content_tpl_anfrage main, .error404 main, .-template-default main {
		max-width: 65rem;
	}
	main.has-cols, .category main, .alignwide, .wp-block-cover.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, footer nav#footer-menu, #blue-footer-inner, #box-ganz-einfach {
		max-width: 110rem;
	}
	.alignwide {
		margin-left: calc(50% - 110rem / 2);
	}

	header nav#main-menu {
		padding: 0 3.4rem;
	}
		header nav#main-menu ul li a {
			padding: 2rem 3.4rem;
		}

	#blue-footer a {
		font-size: 16px;
	}
	footer .has-icon:before {
		margin-top: 0.2rem;
	}

	.has-cols #side_nav, .has-cols #side_images {
		width: 25rem;
	}
}

/* laptop with HiDPI */
@media screen and (max-width: 1440px) {
	
}

/* most used on desktop */
/* this is also iPad Pro 12.9-inch horizontal */
@media screen and (max-width: 1366px) {
	
}

@media screen and (max-width: 1360px) {
	html {
		font-size: 56%;
	}

	#blue-footer {
		padding: 9rem 5vw 20rem 5vw;
	}
		#blue-footer .left li {
			margin-right: 4rem;
		}

	.single #header-image {
		height: calc(100vh - 214px);
	}
}

/* laptop with MDPI */
@media screen and (max-width: 1280px) {
	
}

@media screen and (max-width: 1220px) {
	.page-template-default main, .single main, .page-template-content_tpl_anfrage main, .error404 main, .-template-default main {
		max-width: 55rem;
	}
	main.has-cols, .category main, .alignwide, .wp-block-cover.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, footer nav#footer-menu, #blue-footer-inner, #box-ganz-einfach {
		max-width: 100rem;
	}
	.alignwide {
		margin-left: calc(50% - 100rem / 2);
	}

	header nav#main-menu ul li a {
		padding: 2rem 2.7rem;
	}
	header nav#main-menu .show-thumbnails .sub-menu li a {
		font-size: 1.6rem;
	}

	#blue-footer .left li {
		margin-right: 3rem;
	}

	.has-cols .wp-block-columns.blue-box {
		flex-wrap: wrap;
	}
		.has-cols .wp-block-columns.blue-box .wp-block-column {
			background-color: #7aaae8;
			padding: 2.5rem;
			flex-basis: calc(50% - 18px) !important;
			margin-bottom: 36px;
			flex-grow: 0;
			box-sizing: border-box;
		}
		.has-cols .wp-block-columns.blue-box .wp-block-column:not(:first-child) {
			margin-left: 36px;
		}
		.has-cols .wp-block-columns.blue-box .wp-block-column:last-child {
			margin-bottom: 0;
			margin-left: 0;
		}

	.news {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media screen and (max-width: 1130px) {
	header nav#main-menu ul li a {
		padding: 2rem;
	}
}

@media screen and (max-width: 1120px) {
	.page-template-default main, .single main, .page-template-content_tpl_anfrage main, .error404 main, .-template-default main {
		max-width: 45rem;
	}
	main.has-cols, .category main, .alignwide, .wp-block-cover.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, footer nav#footer-menu, #blue-footer-inner, #box-ganz-einfach {
		max-width: 90rem;
	}
	.alignwide {
		margin-left: calc(50% - 90rem / 2);
	}

	#blue-footer-inner {
		display: block;
	}
		#blue-footer .left ul {
			display: block;
		}
			#blue-footer .left li {
				margin-right: 0;
				margin-bottom: 1rem;
			}
		#blue-footer .right {
			margin-top: 3rem;
		}
			#blue-footer .right ul {
				justify-content: flex-start;
			}
				#blue-footer .right li {
					margin-left: 0;
					margin-right: 2rem;
				}

	#box-ganz-einfach .left {
		width: 18rem;
	}
		#box-ganz-einfach h2 span {
			line-height: 1.2;
			font-size: 1.8rem;
		}

	main.has-3-col #side_images {
		display: none;
	}

	#header-image-split {
		flex-direction: column;
	}
		#header-image-split .left {
			min-height: 250px;
		}
		#header-image-split .right {
			width: 100%;
			padding: 5vw;
		}
}

@media screen and (max-width: 1040px) {
	header nav#main-menu ul li a {
		padding: 2rem 1.8rem;
	}
}

/* iPad Pro 10.5-inch horizontal */
@media screen and (max-width: 1112px) {
	
}

/* iPad horizontal */
@media screen and (max-width: 1024px) {
	
}

@media screen and (max-width: 1020px) {
	.page-template-default main, .single main, .page-template-content_tpl_anfrage main, .error404 main, .-template-default main {
		max-width: 38rem;
	}
	main.has-cols, .category main, .alignwide, .wp-block-cover.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, footer nav#footer-menu, #blue-footer-inner, #box-ganz-einfach {
		max-width: 83rem;
	}
	.alignwide {
		margin-left: calc(50% - 83rem / 2);
	}

	.wp-block-columns.blue-box {
		flex-wrap: wrap;
	}
		.wp-block-columns.blue-box .wp-block-column {
			background-color: #7aaae8;
			padding: 2.5rem;
			flex-basis: calc(50% - 18px) !important;
			margin-bottom: 36px;
			flex-grow: 0;
			box-sizing: border-box;
		}
		.wp-block-columns.blue-box .wp-block-column:not(:first-child) {
			margin-left: 36px;
		}
		.wp-block-columns.blue-box .wp-block-column:last-child {
			margin-bottom: 0;
			margin-left: 0;
		}

	#blue-waves::before {
		top: 0;
	}

	/* MENU BREAK */
	body {
		position: relative;
		right: 0;
		-webkit-transition: all 300ms ease;
		-moz-transition: all 300ms ease;
		-ms-transition: all 300ms ease;
		-o-transition: all 300ms ease;
		transition: all 300ms ease;
	}
	body.nav-active {
		right: 240px;
	}

	header {
		display: flex;
		justify-content: space-between;
		align-items: center;
		padding: 0 5vw;
		padding-right: calc(5vw - 15px);
	}
		header #logo {
			margin: 0;
			width: 20rem;
		}
		header nav#main-menu {
			position: fixed;
			z-index: 9999999;
			height: 100vh;
			width: 240px;
			background-color: #7aaae8;
			top: 0;
			right: -240px;
			padding: 0;
			border: 0;
			overflow-y: auto;
			-webkit-box-shadow: inset 0 0 9px 3px rgba(0,0,0,0.1);
			box-shadow: inset 0 0 9px 3px rgba(0,0,0,0.1);
			-webkit-transition: all 300ms ease;
			-moz-transition: all 300ms ease;
			-ms-transition: all 300ms ease;
			-o-transition: all 300ms ease;
			transition: all 300ms ease;
		}
		body.nav-active #main-menu {
			right: 0;
		}
			header nav#main-menu > div {
				height: 100%;
			}
				header .menu {
					height: 100%;
					flex-direction: column;
					justify-content: flex-start;
					align-items: stretch;
				}
					header nav#main-menu .menu > li {
						padding-right: 50px;
						border-bottom: 1px solid rgba(255, 255, 255, 0.6);
						position: relative;
					}
					header nav#main-menu .menu li .arrow {
						position: absolute;
						right: 0;
						top: 0;
						height: 58px;
						display: flex;
						justify-content: center;
						align-items: center;
						width: 50px;
						cursor: pointer;
					}
					header nav#main-menu .menu li .arrow:after {
						content: '+';
						color: #ffffff;
					}
					header nav#main-menu .menu li .arrow.active:after {
						content: '-';
					}
						header nav#main-menu ul li a, header nav#main-menu ul li a:hover {
							color: #ffffff;
						}
						header nav#main-menu ul li.current-menu-item:hover > a {
							color: #ee0d1f !important;
						}
						header nav#main-menu > div > ul > li.menu-item-has-children:hover > a {
							color: #ffffff;
							background-color: transparent;
						}
					header nav#main-menu .sub-menu {
						opacity: 1;
						visibility: visible;
						display: none;
						position: relative;
						padding: 0;
						background-color: transparent;
						width: calc(100% + 50px);
						-webkit-box-shadow: none;
    					box-shadow: none;
    					-webkit-transition: none;
						-moz-transition: none;
						-ms-transition: none;
						-o-transition: none;
						transition: none;
					}
						header nav#main-menu .sub-menu li {
							border: 0;
						}
							header nav#main-menu .show-thumbnails .sub-menu li a {
								display: block;
								padding: 2rem 1.9rem;
								border-bottom: 1px dotted rgba(255, 255, 255, 0.3);
							}
							header nav#main-menu .show-thumbnails .sub-menu li:first-child a {
								border-top: 1px dotted rgba(255, 255, 255, 0.3);
							}
							header nav#main-menu .show-thumbnails .sub-menu li:last-child a {
								border-bottom: 0;
							}
							header nav#main-menu .show-thumbnails .sub-menu li a:after {
								display: none;
							}
								header nav#main-menu .show-thumbnails .sub-menu li a img {
									display: none;
								}
		#nav-icon {
			display: block;
		}
		/* hamburger icon */
		/*!
		 * Hamburgers
		 * @description Tasty CSS-animated hamburgers
		 * @author Jonathan Suh @jonsuh
		 * @site https://jonsuh.com/hamburgers
		 * @link https://github.com/jonsuh/hamburgers
		 */
		.hamburger {
		  padding: 20px 15px 15px 15px; /* 20px because of last line offset */
		  position: relative;
		  cursor: pointer;
		  transition-property: opacity, filter;
		  transition-duration: 0.15s;
		  transition-timing-function: linear;
		  font: inherit;
		  color: inherit;
		  text-transform: none;
		  background-color: transparent;
		  border: 0;
		  margin: 0;
		  overflow: visible; }
		  .hamburger:hover {
		    opacity: 0.7; }
		  .hamburger.is-active:hover {
		    opacity: 0.7; }
		  .hamburger.is-active .hamburger-inner,
		  .hamburger.is-active .hamburger-inner::before,
		  .hamburger.is-active .hamburger-inner::after {
		    background-color: #87badd; }

		.hamburger-box {
		  width: 40px;
		  height: 24px;
		  display: inline-block;
		  position: relative; }

		.hamburger-inner {
		  display: block;
		  top: 50%;
		  margin-top: -2px; }
		  .hamburger-inner, .hamburger-inner::before, .hamburger-inner::after {
		    width: 40px;
		    height: 4px;
		    background-color: #ee0d1f;
		    border-radius: 0;
		    position: absolute;
		    transition-property: transform;
		    transition-duration: 0.15s;
		    transition-timing-function: ease; }
		  .hamburger-inner::before, .hamburger-inner::after {
		    content: "";
		    display: block; }
		  .hamburger-inner::before {
		    top: -10px; }
		  .hamburger-inner::after {
		    bottom: -10px; }
		.hamburger--spin .hamburger-inner {
		  transition-duration: 0.22s;
		  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
		  .hamburger--spin .hamburger-inner::before {
		    transition: top 0.1s 0.25s ease-in, opacity 0.1s ease-in; }
		  .hamburger--spin .hamburger-inner::after {
		    transition: bottom 0.1s 0.25s ease-in, transform 0.22s cubic-bezier(0.55, 0.055, 0.675, 0.19); }

		.hamburger--spin.is-active .hamburger-inner {
		  transform: rotate(225deg);
		  transition-delay: 0.12s;
		  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
		  .hamburger--spin.is-active .hamburger-inner::before {
		    top: 0;
		    opacity: 0;
		    transition: top 0.1s ease-out, opacity 0.1s 0.12s ease-out; }
		  .hamburger--spin.is-active .hamburger-inner::after {
		    bottom: 0;
		    transform: rotate(-90deg);
		    transition: bottom 0.1s ease-out, transform 0.22s 0.12s cubic-bezier(0.215, 0.61, 0.355, 1); }

	.single #header-image {
		height: calc(100vh - 121px);
	}
}

@media screen and (max-width: 960px) {
	main.has-cols, .category main, .alignwide, .wp-block-cover.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, footer nav#footer-menu, #blue-footer-inner, #box-ganz-einfach {
		max-width: 70rem;
	}
	.alignwide {
		margin-left: calc(50% - 70rem / 2);
	}

	#schnellanfrage {
		bottom: 5vw;
	}
	#schnellanfrage_buttons {
		flex-direction: column;
		bottom: calc(5vw + 13rem);
	}
		#schnellanfrage_buttons .wp-block-button.anfrage {
			margin-bottom: 1rem;
		}
	body.schnellanfrage-active #schnellanfrage {
		right: 5vw;
	}

	.has-cols .wp-block-columns.blue-box .wp-block-column {
		flex-basis: 100% !important;
		margin-bottom: 36px;
	}
	.has-cols .wp-block-columns.blue-box .wp-block-column:not(:first-child) {
		margin-left: 0;
	}

	.gallery {
		grid-gap: 1em;
	}
}

@media screen and (max-width: 840px) {
	main.has-cols, .category main, .alignwide, .wp-block-cover.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, footer nav#footer-menu, #blue-footer-inner, #box-ganz-einfach {
		max-width: 60rem;
	}
	.alignwide {
		margin-left: calc(50% - 60rem / 2);
	}

	header #logo {
		width: 15rem;
	}

	a.button, .wp-block-button__link {
		font-size: 1.6rem;
		padding: 1.5rem 4rem;
	}
	.wp-block-button.anfrage .wp-block-button__link, .wp-block-button.telefon .wp-block-button__link, .wp-block-button.settings .wp-block-button__link, .wp-block-button.manage-search .wp-block-button__link {
		min-width: 32.8rem;
	}

	#header-image img {
		min-height: 250px;
		object-fit: cover;
	}

	body.home h1:not(.has-huge-font-size) {
		font-size: 3.0rem;
	}

	h2 {
		font-size: 2.6rem;
	}

	.has-huge-font-size {
		font-size: 5rem;
	}

	#schnellanfrage img {
		width: 6rem;
		height: 6rem;
	}
	#schnellanfrage_buttons {
		flex-direction: column;
		bottom: calc(5vw + 11rem);
	}

	.news {
		grid-template-columns: repeat(1, minmax(0, 1fr));
	}

	.single #header-image {
		height: calc(100vh - 99px);
	}
}

@media screen and (max-width: 720px) {
	.page-template-content_tpl_anfrage .wpforms-page-indicator-page {
		display: flex !important;
		align-items: center !important;
	}
	.page-template-content_tpl_anfrage .wpforms-container .wpforms-form .wpforms-page-indicator.circles .wpforms-page-indicator-page:last-of-type {
		margin-bottom: 20px !important;
	}
		.page-template-content_tpl_anfrage .wpforms-page-indicator-page-number {
			display: flex !important;
			padding: 0 !important;
			justify-content: center !important;
			align-items: center !important;
			font-size: 1.8rem !important;
			height: 30px !important;
			width: 30px !important;
		}
		.page-template-content_tpl_anfrage .wpforms-page-indicator-page-title {
			font-size: 1.6rem !important;
		}
}

@media screen and (max-width: 660px) {
	main.has-cols, .category main, .alignwide, .wp-block-cover.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, footer nav#footer-menu, #blue-footer-inner, #box-ganz-einfach {
		max-width: 55rem;
	}
	.alignwide {
		margin-left: calc(50% - 55rem / 2);
	}

	#box-ganz-einfach {
		display: block;
	}
		#box-ganz-einfach .left {
			padding: 0;
		    padding-bottom: 0px;
			width: 100%;
			border: 0;
			margin-bottom: 3rem;
			padding-bottom: 3rem;
			border-bottom: 1px solid rgba(255, 255, 255, 0.3);
			margin-right: 0;
		}

	main.has-cols {
		display: block;
	}
		.has-cols #side_nav {
			margin-top: 0;
			margin-bottom: 6rem;
			width: 100%;
			position: static !important;
			margin-right: 0;
		}
			.has-cols #side_nav h3 {
				position: relative;
				padding-right: 50px;
				cursor: pointer;
			}
			.has-cols #side_nav ul {
				display: none;
			}
			.has-cols #side_nav h3:before {
				content: 'Menü';
				display: inline-block;
				margin-right: 6px;
				opacity: 0.7;
			}
			.has-cols #side_nav h3:after {
				content: '+';
				position: absolute;
				right: 0;
				top: 0;
				height: 100%;
				width: 50px;
				display: flex;
				justify-content: center;
				align-items: center;
			}
			.has-cols #side_nav h3.active:after {
				content: '-';
			}
}

@media screen and (max-width: 600px) {
	.page-template-default main, .single main, .page-template-content_tpl_anfrage main, .error404 main, .-template-default main, main.has-cols, .category main, .alignwide, .wp-block-cover.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container, footer nav#footer-menu, #blue-footer-inner, #box-ganz-einfach {
		max-width: 100%;
		width: 100%;
		box-sizing: border-box;
	}
	.alignwide {
		margin-left: 0;
	}
	footer nav#footer-menu {
		box-sizing: border-box;
	}
	.wp-block-cover.alignfull .wp-block-cover__inner-container, .wp-block-cover.alignfull.has-custom-content-position.has-custom-content-position .wp-block-cover__inner-container {
		padding: 5vw;
	}
	#box-ganz-einfach {
		width: 90vw;
	}

	.wp-block-columns.blue-box {
		max-width: 38rem;
		margin-left: auto;
		margin-right: auto;
	}
		.wp-block-columns.blue-box .wp-block-column {
			flex-basis: 100% !important;
			margin-left: 0 !important;
		}

	header #logo {
		width: 13rem;
	}

	footer nav#footer-menu ul {
		column-gap: 1em;
		column-width: 15rem;
	}
		footer nav#footer-menu ul li {
			margin-bottom: 1em;
		}

	.aligncenter, .alignleft, .alignright {
		float: none;
		margin: 0;
		margin-bottom: 3rem;
	}

	.single #header-image .title h1 {
		font-size: 3rem;
	}

	#header-image-split .left {
		position: relative;
	}
	#header-image-split .left:before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: rgba(0, 0, 0, 0.3);
	}
	#header-image-split .right {
		padding: 50px 5vw;
	}
	.wpforms-container .wpforms-form .wpforms-field.wpforms-field-pagebreak {
		padding: 0 !important;
	}
	.page-template-content_tpl_anfrage .wpforms-container .wpforms-form .wpforms-page-indicator.circles {
		flex-direction: column !important;
		justify-content: flex-start !important;
		margin-bottom: 0 !important;
		top: -200px !important;
		position: relative;
	}
	.page-template-content_tpl_anfrage .wpforms-field-container {
		margin-top: -180px !important;
	}
	.page-template-content_tpl_anfrage .wpforms-submit-container {
		padding: 0 !important;
	}

	iframe.popup {
		left: 3rem;
		top: 3rem;
		width: calc(100vw - 6rem);
		height: calc(100vh - 6rem);
	}

	.single #header-image {
		height: calc(100vh - 91px);
	}
}

/* smartphone */
@media screen and (max-width: 375px) {
	
}

