/* Local embedding of Google Fonts
---------------------------------------------*/
/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v47-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/roboto-v47-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/roboto-v47-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* crete-round-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Crete Round';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/crete-round-v15-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* Header
---------------------------------------------*/
.home .header {
	background: #494949;
}

.mainmenu {
	padding-top: 12px;
}

.hyphens-auto *, .hyphens-auto * {
	hyphens: auto !important;
	-webkit-hyphens: auto !important;
}


/* Content
---------------------------------------------*/
html, body {
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 400;
}

#main .mod_article {
	z-index: 2;
}

h1, h2, h1, h1 a, .h1, .h1 a, .h1 p, h2, h2 a, .h2, .h2 a, .h2 p, .content_page h3 {
	font-family: 'Crete Round';
	font-style: normal;
	font-weight: 400;
	color: var(--accentColor);
	hyphens: none;
	-webkit-hyphens: none;
}

h1 {
	font-size: 68px;
}

.content_page h1 {
	color: #fff;
	margin-top: 115px;
}

.headline-white h1 {
	color: #fff;
}

.id-404 h1 {
	margin-top: 0;
}

.content_page h2:not(.content_page .ce_text:first-child h2) {
	margin-top: 50px;
}

.content_page h2 {
	margin-bottom: 5px;
	line-height: 3rem;
}

.content_page h2 + p {
	margin-top: 15px;
}

.content_page h3, .content_page h4 {
	padding-top: 25px;
	margin-bottom: 0;
}

.content_page h3 {
	font-size: 2rem;
	line-height: 2.33rem;
}

.content_page h4 {
	font-size: 1rem;
	line-height: 1.33;
	color: #fff;
}

.content_page .ce_text:first-child h3:not(.content_page .ce_text:first-child h2 + h3) {
	padding-top: 0;
}

#main p a, #main li a {
	opacity: 1;
	transition: All 0.3s ease;
	-webkit-transition: All 0.3s ease;
}

#main p a:hover, #main li a:hover {
	opacity: 0.8;
	transition: All 0.3s ease;
	-webkit-transition: All 0.3s ease;
}

#main .mod_article.stoerer {
	position: sticky;
	float: right;
	justify-content: flex-end;
	width: 60px;
	right: 15px;
	top: 200px;
	padding: 0;
	z-index: 999;
	margin-bottom: -157px;
}

#main .mod_article.stoerer .container {
	padding: 0;
}

#main .mod_article.stoerer .ce_iconbox:hover .ce_iconbox_outside.padding {
	box-shadow: none;
}

#main .mod_article.stoerer .ce_iconbox:first-of-type {
	margin-bottom: 8px;
}

#main .mod_article.stoerer .ce_iconbox .ce_iconbox_outside.padding {
	padding: 8px 15px 7px;
}

#main .mod_article.stoerer .ce_iconbox:first-of-type .ce_iconbox_outside.padding {
	padding: 10px 15px 5px;
}

#main .mod_article.stoerer .ce_iconbox.default i {
	font-size: 1.5rem;
}

#main .mod_article.stoerer .ce_iconbox:first-of-type i {
	font-size: 1.7rem;
}

#main .mod_article.stoerer .ce_iconbox_cwrapper {
	display: none;
}

.intro {
	background: #373737;
	background: linear-gradient(0deg,rgba(55, 55, 55, 1) 100%, rgba(77, 77, 77, 0) 0%);
}

.ce_hyperlink a, a.btn {
	background: transparent;
	color: var(--accentColor);
	text-transform: uppercase;
	letter-spacing: 0.03rem;
	margin-top: 15px;
}

.ce_iconbox {
	z-index: 1;
}

.ce_iconbox h3:not(.ce_iconbox a h3) {
	color: #fff;
}

.ce_iconbox a.link {
	background: transparent;
	color: var(--accentColor);
	text-transform: uppercase;
	letter-spacing: 0.03rem;
	margin-top: 15px;
	display: inline-block;
	padding-left: var(--hyperlink-default-padding-left);
	padding-right: var(--hyperlink-default-padding-right);
	padding-top: var(--hyperlink-default-padding-top);
	padding-bottom: var(--hyperlink-default-padding-bottom);
	margin-bottom: 15px;
	cursor: pointer;
	transition: all 0.2s ease-out 0s;
	border: var(--hyperlink-default-border-width) solid var(--accentColor);
	min-width: var(--hyperlink-default-min-width);
	text-align: center!important;
	position: relative;
	font-weight: var(--hyperlink-default-font-weight);
	line-height: 1.3rem;
	font-size: var(--hyperlink-default-font-size);
}

.ce_iconbox a.link:hover {
	opacity: 0.8;
}

.ce_iconbox h2, .home h3 {
	font-family: 'Crete Round';
	font-style: normal;
	font-weight: 400;
	font-size: 2rem;
	line-height: 2.1rem;
	color: #fff;
}

.ce_iconbox .link:before {
	display: none;
}

.ce_text.width-l {
	max-width: 830px;
}

:root {
	--hyperlink-small-padding-top: 10px;
	--hyperlink-small-padding-bottom: 10px;
}

.googlerezensionen {
	display: inline-block;
	text-align: center;
	padding: 10px 20px 0;
	margin: 10px 0 30px;
	border: 1px solid #ccc;
	transition: All 0.3s ease;
	-webkit-transition: All 0.3s ease;
	opacity: 1;
}

.googlerezensionen:hover {
	opacity: 0.8;
	transition: All 0.3s ease;
	-webkit-transition: All 0.3s ease;
}

.googlerezensionen p {
	font-size: 1.4rem;
	font-weight: bold;
	color: #373737;
	margin: 0 0 10px;
}

.googlerezensionen img:first-of-type {
	margin-right: 10px;
	position: relative;
	top: 3px;
}

.googlerezensionen img:nth-of-type(2) {
	margin-left: 5px;
}

.ce_iconbox_v2.style3 .image_container img {
	margin: 0 auto;
}

.ce_iconbox_v2.style3 .ce_iconbox_outside {
	background: #494949;
	border: 1px solid rgba(220,220,220, 0.33);
	text-align: center;
}

.ce_iconbox_v2.style3 .ce_iconbox_outside p {
	color: #ccc;
}

.hintergrund {
	position: absolute;
	z-index: 0;
	opacity: 0.15;	
}

.oben-rechts {
	top: 50px;
	right: 50px
}

.oben-rechts.offset-x, .grundlinie-rechts.offset-x {
	right: -100px;
}

.oben-rechts.offset-y, .oben-links.offset-y {
	top: -100px;
}

.oben-links {
	top: 50px;
	left: 50px
}

.oben-links.offset-x {
	left: -100px;
}

.unten-links {
	bottom: 50px;
	left: 50px;
}

.unten-links.offset-x, .grundlinie-links.offset-x {
	left: -100px;
}

.unten-links.offset-y, .unten-rechts.offset-y {
	bottom: -100px;
}

.unten-rechts {
	bottom: 50px;
	richt: 50px;
}

.unten-rechts.offset-x {
	right: -100px;
}

.spiegeln {
	transform: scaleX(-1);
}

.grundlinie-links, .grundlinie-rechts {
	bottom: 0;
}

.ce_accordion {
	border-left: none;
	border-right: none;
	border-bottom: none;
}

.ce_accordion:first-of-type {
	margin-top: 30px;
}

.ce_accordion .toggler.ui-state-active {
	border-bottom: 0;
}

.ce_accordion .toggler, .ce_accordion .accordion {
	padding-left: 0;
	padding-right: 0;
	padding-top: 0;
}

.ce_accordion .toggler {
	color: #fff;
	padding-top: 10px;
}

.ce_accordion .toggler:hover {
	color: rgba(255,255,255,0.8);
}

.ce_accordion .accordion * {
	font-size: 0.8rem;
	line-height: 1.3rem;
}

.ce_accordion .toggler.ui-state-active:before {
	color: #fff;
}

.ce_accordion .toggler:not(.toggler.active) {
	color: var(--accentColor);
}

.ce_divider_extended.version3 {
	background: rgba(255,255,255,0.8);
	margin-bottom: 45px;
}

form.style5 select {
	height: 70px;
}

.form-confirmation p {
	color: #fff;
}

button.submit {
	background: none;
	border-radius: 0;
	border: 2px solid var(--accentColor);
	color: var(--accentColor);
	text-transform: uppercase;
	letter-spacing: 0.05rem;
	font-weight: bold;
	margin: 15px 0 30px;
}

button.submit:hover {
	background: none !important;
	opacity: 0.7;
}

label.select {
	padding-bottom: 10px;
	display: inline-block;
}

.ml--xl {
	margin-left: -100px;
}

.ce_icon_text.align-left[data-align="center"] {
	justify-content: left;
}

#main .overlay {
	background:transparent;
	position:absolute;
	width: 100%;
	height: 650px;
	top: 650px;
	margin-top: -650px;
	z-index: 999;
}

#main object {
	width: 100%;
	height: 650px;
	-webkit-filter: grayscale(100%); 
	filter: grayscale(100%); 
	margin-top: 0;
	margin-bottom: -12px;
}

.mh-600 {
	min-height: 600px;
}

.ce_bgimage.img-leftside-50 .ce_bgimage-inside {
	padding: 0 40px;
}

.mod_newsreader {
	max-width: 980px;
}

.blogdatum {
	margin-top: 15px;
}

.newsteaser .content {
	min-height: 300px;
}

.newsteaser, .newsreader {
	animation-duration: 0s;
}

.newsteaser .image_container, .newsteaser .content {
	border-radius: 0;
	background: var(--secondColor);
	border: none;
}

.newsteaser .h6 a {
	color: var(--accentColor);
}

.id-404 .column.col_6:nth-child(2) {
	background: rgba(55,55,55,0.66);
}

.ce_image_text_box .ce_headline {
	margin-bottom: 15px;
	padding-top: 0;
}

.ce_image_text_box a.hyperlink_txt {
	margin: 5px 0 15px;
	padding: 7px 15px;
	border: 2px solid var(--accentColor);
	color: var(--accentColor);
	transition: All 0.3s ease;
	-webkit-transition: All 0.3s ease;
	font-weight: bold;
	line-height: 1.33rem;
}

.bgsecond {
	background: #494949;
}

.datenschutz {
	max-width: 980px;
	margin: 0 auto;
}

.datenschutz a {
	color: var(--accentColor);
}

.content_page .datenschutz h2 {
	font-size: 2rem;
	line-height: 2.33rem;
}

.content_page .datenschutz h3 {
	font-size: 1.5rem;
	line-height: 1.66rem;
	margin-bottom: 5px;
}

.content_page .datenschutz .ce_text ul li {
	list-style: none;
}

.datenschutz .ce_text ul {
	padding-left: 0;
}

.datenschutz .ce_text ul ul {
	padding-left: 22px;
}

.ce_iconbox.icongross.default i {
	font-size: 6rem;
}

span.mandatory {
	display: none;
}

form fieldset {
	padding: 0;
	border: 0;
	margin-bottom: 0;
}

form fieldset legend {
	padding: 0;
	background: transparent;
	color: var(--body-color);
}

form div.widget-radio {
	margin-bottom: 0;
}

.ce_text_extented a {
	color: #fff;
	text-decoration: none;
}

.ce_text_extented a:hover {
	text-decoration: underline;
}

.ce_leadertext.version2 {
	max-width: 800px;
}


/* Footer
---------------------------------------------*/
#footer {
	z-index: 10;
	position: relative;
}

#footer .inside {
	max-width: none;
	padding: 0;
	transform: none !important;
}

#footer .inside * {
	hyphens: none;
	-webkit-hyphens: none;
}

#footer .inside .ce_bgimage * {
	color: #fff;
}

#footer .inside .ce_iconbox {
	width: auto;
	display: inline-block;
}

#footer .inside .ce_iconbox:not(.version2):not(.version3) .ce_iconbox_cwrapper {
	margin-top: 10px;
}

#footer .inside .ce_bgimage .h2 {
	font-size: 60px;
	line-height: 72px;
	margin-bottom: 40px;
}

#footer .h3 {
	font-size: 1rem;
	margin-bottom: 0;
}

#footer .inside .ce_divider_extended.version1 {
	background: #ccc;
	width: 145px;
	margin-bottom: 42px;
}

#footer .inside p {
	margin-bottom: 10px;
}

#footer .inside span.middot {
	padding: 0 12px;
}

#footer .inside .ce_icon_text[data-icon-pos="before"] .icon {
	margin-right: 0;
}

#footer .inside .format-p-small p {
	font-size: 0.75rem;
	letter-spacing: 0.01rem;
}

#footer .inside .tel, #footer .inside .email {
	white-space: nowrap;
}

#footer .inside .format-p-small p a:first-of-type {
	margin-right: 12px;
}


/* Media Queries
---------------------------------------------*/
@media only screen and (max-width: 1240px) and (min-width: 1025px) {
	
	.header.original .logo {
		width: 26vw;
	}
	
	.mainmenu ul li {
		margin-left: 0.7em;
		margin-right: 0.7em;
	}
	
	.mainmenu ul li a {
		font-size: 1.6vw;
	}
	
	.pl-m {
		padding-left: 80px !important;
	}
	
	.pr-m {
		padding-right: 80px !important;
	}
	
	.header.original .logo {
		height: 184px;
	}
	
}


@media only screen and (max-width: 1024px) {
	
	#main .mod_article.fullwidth.pl-m {
		padding-left: 20px !important;
	}
	
	#main .mod_article.fullwidth.pr-m {
		padding-right: 20px !important;
	}
	
}


@media only screen and (min-width: 768px) {
	
	.header .inside {
		max-width: 1400px !important;
	}
	
	.landingpage .header {
		background: rgba(55,55,55,0.8)
	}
	
	#footer .inside span {
		display: inline-block;
	}
	
	#footer .inside br {
		display: none;
	}
	
}


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

	.header {
		background: #373737;
	}
	
	.home .header .inside {
		padding-bottom: 20px;
	}
	
	.header {
		background: #494949;
	}
	
	#mmenu {
		top: 0;
	}
	
	body.fixed-header .header.cloned {
		box-shadow: none;
	}
	
	.mmenu_trigger {
		right: 20px;
		top: 55%;
	}
	
	h1, .h1, .h1 p {
		line-height: 2rem;
		font-size: 1.5rem;
		hyphens: auto !important;
		-webkit-hyphens: auto !important;
	}
	
	.content_page h1 {
		margin-top: 0;
	}
	
	h2, .h2, .h2 p {
		line-height: 1.66rem;
	}
	
	.content_page h3 {
		font-size: 1.3rem;
		line-height: 1.66rem;
	}
	
	.ce_leadertext.version1 p, .ce_leadertext.version2 p {
		font-size: 1rem;
		line-height: 1.66rem;
	}
	
	.ce_iconbox h2, .home h3 {
		font-size: 1.4rem;
		line-height: 1.66rem;
	}
	
	.ce_hyperlink.small a, a.btn.small, .ce_hyperlink a, a.btn {
		line-height: 1.33rem;
	}
	
	#footer .inside .ce_bgimage .h2 {
		font-size: 2rem;
		line-height: 2.66rem;
	}
	
	.autogrid_row>.column.align_right_center, .autogrid_row>.column.align_left_center {
		text-align: center;
	}
	
	.mmenu_trigger .label, #footer .inside span {
		display: none;
	}
	
	.mobile-left {
		text-align: left;
		display: inline-block;
	}
	
	.h-align-right, .align-right, .align-right * {
		text-align: left !important;
	}
	
	.ce_text_extented {
		max-width: none !important;
	}
	
	.ce_bgimage.img-leftside-50 .ce_bgimage-inside {
		padding: 0 20px;
	}
	
	#footer .inside br {
		display: block;
	}
	
}

@media only print {
	
	body, p {
		font-size: 9pt;
		line-height: 15pt;
	}
	
	#fix-wrapper, .mainmenu, .hintergrund, .cta, span.middot, #footer .ce_bgimage-inside.contentwrap.pt-s.pb-s {
		display: none;
	}
	
	.mod_article:not(.fullwidth) > .container {
		padding-top: 0;
	}
	
	h1, .content_page h1 {
		margin-top: 2cm !important;
		padding-top: 0 !important;
		font-size: 27pt !important;
		line-height: 36px !important;
	}
	
	h2 {
		font-size: 18pt !important;
		line-height: 24px !important;
	}
	
	h3 {
		font-size: 13pt !important;
		line-height: 18px !important;
	}
	
	h4 {
		font-size: 9pt !important;
		line-height: 15px !important;
	}
	
	.ce_text.width-l {
		max-width: 100%;
	}
	
	.adresse {
		padding-top: 100px;
	}
	
}