@charset "utf-8";
:root {
--lighterred: #f5d0b7;
--lightred: #d72516;
--darkred: #8f1608;
}
@font-face {
	font-family: 'Linearicons-Free';
	src:url('../../files/template/fonts/Linearicons-Free.eot?w118d');
	src:url('../../files/template/fonts/Linearicons-Free.eot?#iefixw118d') format('embedded-opentype'),
		url('../../files/template/fonts/Linearicons-Free.woff2?w118d') format('woff2'),
		url('../../files/template/fonts/Linearicons-Free.woff?w118d') format('woff'),
		url('../../files/template/fonts/Linearicons-Free.ttf?w118d') format('truetype'),
		url('../../files/template/fonts/Linearicons-Free.svg?w118d#Linearicons-Free') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display:swap;
}
/* roboto-regular - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../../files/template/fonts/roboto-v27-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/template/fonts/roboto-v27-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/template/fonts/roboto-v27-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/template/fonts/roboto-v27-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../../files/template/fonts/roboto-v27-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/template/fonts/roboto-v27-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
	   font-display:swap;
}

/* roboto-700 - latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('../../files/template/fonts/roboto-v27-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/template/fonts/roboto-v27-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/template/fonts/roboto-v27-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/template/fonts/roboto-v27-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../../files/template/fonts/roboto-v27-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/template/fonts/roboto-v27-latin-700.svg#Roboto') format('svg'); /* Legacy iOS */
	   font-display:swap;
}
.iconfont {	font-family: 'Linearicons-Free';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	/* Better Font Rendering =========== */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;}
	
body {
	margin:0;
	padding:0;
	font-family: 'Roboto', sans-serif;
	color:#333;
	font-size:0.8rem;
	line-height:160%;
	position:relative;
	    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}
@keyframes scrolldown {
0% {transform:translateY(0);}
50% {transform:translateY(50%) scaleY(1.3);color:var(--darkred);}
100% {transform:translateY(0);}
	}

body::before {transition: opacity 1s ease-in-out;box-shadow: 0 0 30px rgba(0,0,0,.2);background:#FFF;border-radius:50%;content:'';position:fixed;display:block;bottom:0;left:0;right:0;margin:0 auto;font-size:3rem;z-index:100;width:100px;height:100px;text-align:center;}
body::after {transition: opacity 1s ease-in-out;padding:.5rem;color:#FFF;content:'↯';position:fixed;display:block;bottom:0;left:0;right:0;margin:0 auto;font-size:3rem;z-index:100;width:80px;height:80px;text-align:center;animation: scrolldown 1s infinite;}
body.isscrolled::before,body.isscrolled::after {visibility:hidden;opacity:0;transition: opacity 1s ease-in-out, visibility 0s 1s;}
html.noscroll {
    position: fixed; 
    overflow-y: scroll;
    width: 100%;
}
#wrapper * {
transition: all .5s ease-in-out;
}
h1, h2, h3, h4, h5, h6 {
	font-weight:700;
	text-transform:uppercase;
	color:var(--darkred);
	line-height:100%;
	margin:0;
	padding:0;
}
h1 {
	font-size:3rem;
}
h2 {
	font-size:1.7rem;
}
h3 {
	font-size:1.2rem;padding-bottom:.5rem;
}
h4 {font-size:1rem;color:#333;text-transform:none;font-weight:normal;
}
h5 {font-size:1.1rem;
}
h6 {font-size:1rem;
}
figure {
	margin:0;
	padding:0;
	overflow:hidden;
}
img {
	display:block;
	max-width:100%;
	height:auto;
}
a {
	color:var(--darkred);
	text-decoration:none;
}
a.button,button.submit {
	color:#FFF;
	border:1px solid #FFF;
padding: .5rem 1rem;
	background: rgb(215,37,22);
	background: linear-gradient(90deg, var(--lightred) 0%, var(--darkred) 100%);
	display:inline-block;
}
a.buttongrey {		background: rgb(114,114,114);
	background: radial-gradient(circle, rgb(114, 114, 114) 0%, rgb(76, 76, 76) 100%);
}
button.submit {
font-size:1rem;
}
.widget-text {display:inline-block;}

input,textarea,select{	font-family: 'Roboto', sans-serif;
	color:#333;
	font-size:1rem;
	line-height:160%;
	border:1px solid #CCC;
	background:#EEE;
	padding:.25rem 1rem;margin:1rem;
}
input.mandatory,textarea.mandatory,select.mandatory{
	background:#FFF;
}
	
.content-gallery ul {
	list-style:none;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	padding:0;
margin:-.5rem;
}
.content-gallery li {
	flex:1 1 120px;
margin:.5rem;
}
.content-gallery img:hover {
	transform:scale(1.2);
animation:electric .05s 5;
}
@keyframes electric {
0% {
transform: scale(1.025);
}
50% {
transform: scale(.975);
}
100% {
transform:scale(1);
}
}
/* HEADER */
#header {
	position:fixed;
	background:#FFF;
	width:100%;
	z-index:1000;
	box-shadow: 0 0 30px rgba(0, 0, 0, .3);
	color:var(--darkred);
	box-sizing:border-box;
}
#header > div {
	display:flex;
		padding: 0 4rem;
	flex-wrap:wrap;
	justify-content:space-between;
	margin: 1rem 4rem;
	align-items: center;
}
#header > div > div {
	flex: 1 1 220px;
}
#header #menubutton {
	font-size:1rem;
	text-transform:uppercase;
	cursor:pointer;
}
#header #menubutton:hover {
animation: electric .05s 5;
}
#header #logo {
	text-align:center;
}
#header #logo .logo_aussen {
	transform-origin:center;
	position:absolute;
	width:160px;
	height:160px;
	margin:0 auto;
	left:0;
	right:0;
	top:10px;
	border-radius:100%;
	box-shadow: 0 0 10px rgba(0, 0, 0, .3), 0 0 10px rgba(0, 0, 0, .3) inset;
	border:3px solid #FFF;
	display:flex;
	align-items:center;
	justify-content:center;transition:none;
}
.logo_aussen:hover {
animation: electric .05s 5;
}
.menuopener {
animation: electric .05s 5;
}
#header #logo .logo_innen {transition:none;
	width:140px;
	height:140px;
	border-radius:100%;
	box-shadow: 0 0 10px rgba(0, 0, 0, .3);
	background:#FFF;
	padding:1rem;
	box-sizing:border-box;
	display:flex;
	align-items:center;
}
#header #logo.fixed .logo_aussen,#header #logo.fixed .logo_innen {
	position:static;
	width:auto;
	height:auto;
	box-shadow:none;
	border-radius:unset;
	padding:0;
	border:none;
}
#header #logo.fixed img {
	width:100px;
}
#header #hotlinesocial {
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
	text-align:right;
}
#header #hotlinesocial img{
display:inline-block;
}
/* ENDE HEADER */

/* HAUPTMENÜ */
#header .navigationwrapper 
{display:none;width: 100%;
height: 100%;
position: fixed;
z-index: 1000;
top: 0;
left: 0;
transition:none;
	cursor: url(../../files/template/images/cursor_close.svg), auto;
}
#header .mod_navigation {
	cursor:auto;
	transition:none;
	width:100%;
	display:none;
	position:fixed;
	padding:4rem;
	box-sizing:border-box;
	height:100%;
	border-radius: 0 0 100% 0;
	top:0;
	left:0;
	box-shadow: 0 0 30px rgba(0,0,0,.2);
	z-index:1000;
	overflow-y:auto;}
#header .mod_navigation .closemenu {cursor: url(../../files/template/images/cursor_close.svg), auto;display:inline-block;padding:0 0 1rem 0;margin:0 0 2rem 0;border-bottom:1px solid var(--lightred);}	
#header .mod_navigation h2{
	color:var(--lightred);
}	
#header .mod_navigation ul{
	display:flex;
	flex-wrap:wrap;
	list-style:none;
	margin:2rem -2rem;
	padding:0;
}	
#header .mod_navigation ul li{
font-size:1.5rem;font-weight:bold;
margin:0 2rem;
flex: 0 1 220px;
}	
#header .mod_navigation ul li ul{
display:block;
margin:2rem 0;
}	
#header .mod_navigation ul li ul li{
display:block;
font-size:.8rem;font-weight:normal;
margin:0;
}	
#header .mod_navigation a:hover{color:var(--lightred);}
/* ENDE HAUPTMENÜ */
.mod_article {
	display:flex;
	flex-wrap:wrap;
	padding: 2rem 4rem;
}
.mod_article.noflex {display:block;}
.mod_article > div {
	margin: 2rem 4rem;
	flex: 1 1 220px;
}
.mod_article .content-text {
	flex: 1 1 220px;
}
#header .custom {padding:0;margin:0;}
.startseite #breadcrumb {display:none;}
#breadcrumb {color:#333;padding: 0.25rem 8rem;
margin: 0;
background: #EEE;}
#breadcrumb ul {margin:0;padding:0;list-style:none;display:flex;}
.mod_breadcrumb li:after { content: "»";margin:0 .25rem; }
.mod_breadcrumb li.active:after { content:""; }
/* THEME */
#theme {
	background:url('../../files/template/images/background_red.webp');
	background-size:cover;
	background-position:top center;
	color:#FFF;
	margin-bottom:0;
	padding-bottom:0;
	padding-top:5rem;
	position:relative;
	min-height:280px;
}
#theme::before {content:'';bottom:16px;left:0;position:absolute;width:100%;height:5px;background:rgba(255,255,255,.2);box-sizing:border-box;}
#theme::after {content:'';bottom:13px;left:0;position:absolute;width:10px;height:10px;border-radius:100%;background:#FFF;filter:blur(3px);animation:electricslide 2s linear infinite;box-sizing:border-box;}
.startseite #theme::before {display:none;}
.startseite #theme::after {display:none;}

#theme h1 {
	color:#FFF;
}
.startseite #theme h1 {
	font-size:1rem;
	font-weight:normal;
	color:var(--lighterred);
}
#theme h2 span.bigger {
	font-size:3rem;
	display:inline-block;
}
#theme h2 {
	color:#FFF;
	line-height:120%;
	margin-bottom:1rem;
}
#theme h4 {color: var(--lighterred);
margin-top: 1rem;
text-transform: none;
font-weight: normal;}
#theme > div {
	margin-bottom:0;
	text-align:center;
}
#theme .content-image {
	display:flex;
	align-items:flex-end;
}
#theme .content-image figure {
	display:flex;
	align-items:flex-end;
}
@keyframes textslide {
0% {
transform:scale(1);
}
100% {
transform:scale(1.2);
}
}
@keyframes textslide2 {
0% {
transform:scale(1);
}
100% {
transform:scale(1.4);
}
}
#theme .content-text span.animation {
	animation:textslide2 2s ease-in-out forwards;
	transform-origin:bottom right;
}
#theme .content-text span.animation2 {
	animation:textslide 1.5s ease-in-out .5s forwards;
	transform-origin:top left;
}
@keyframes deblur {
0% {
filter:blur(5px);
}
100% {
filter:none;
}
}
#theme .content-text {
	display:flex;
	justify-content:center;
	align-items:center;
	user-select:none;
	filter:blur(5px);
	animation:deblur 2s ease-in-out forwards;
}
#theme .content-text h2:hover {
animation:electric .05s 5;
}
/* END THEME */

/* KEYFACTS */
#keyfacts {
	background:url('../../files/template/images/background_white.webp') no-repeat;
	background-size:contain;
	background-position:top left;
	box-shadow: 0 -30px 30px rgba(0, 0, 0, .3);
	position:relative;
	z-index:6;display:block;
}
#keyfacts .inside {display:flex;
	
	align-items:center;
	padding: 0 4rem;margin:0 0 0 -1rem;}
#keyfacts .inside > div {
	flex: 1 1 10%;order:1;
}
#keyfacts .content-text {
	text-align: center;
	text-transform: uppercase;
	font-size: 1rem;
	margin:2rem 1rem;
}
#keyfacts .content-text:hover {
	transform:scale(1.1);
}
#keyfacts .content-text img {
	margin:0 auto;
}
#keyfacts .inside .keyfactsimagebild {
	flex: 1 1 15%;
	margin: 0 8%;position:relative;transform:scale(1.8);
}
#keyfacts .content-image figure:hover {
animation: electric .05s 5;
}
#keyfacts .content-image figure {
	border-radius:100%;
	box-shadow: 0 0 10px rgba(0, 0, 0, .3), 0 0 10px rgba(0, 0, 0, .3) inset;
	border:3px solid #FFF;
	padding:1rem;
	text-align:center;
}
#keyfacts .content-image img {
	border-radius:100%;
	box-shadow: 0 0 10px rgba(0, 0, 0, .3);
}
#keyfacts .stoerer_startseitenjob {user-select:none;z-index:5000;width:85px;height:85px;display:flex;justify-content:center;align-items:center;content:"Wir\A suchen\A dich!";text-align:center;line-height:100%;text-transform:uppercase;font-weight:bold;font-size:.7rem;transform:rotate(-15deg);white-space: pre;position:absolute;border-radius:100%;background:var(--darkred);color:#FFF;right:0;top:0;}
/* END KEYFACTS */

/* IMAGE GESCHAEFTSFÜHRUNG */
#image-geschaeftsfuehrung {
	align-items:stretch;
	min-height:50vh;
	background:var(--darkred);
	color:#FFF;
	background-size:contain;
	background-position:top right;
	position:relative;
	box-sizing:border-box;
	margin:0;padding:0;
	z-index:5;
}
#image-geschaeftsfuehrung .content-text {margin:0; padding: 4rem 8rem;align-content:center;box-sizing:border-box;}
#image-geschaeftsfuehrung .content-image {margin:0;}
#image-geschaeftsfuehrung .content-image figure{height:100%;}
#image-geschaeftsfuehrung .content-image figure img{width:100%;height:100%;object-fit:cover;}
#image-geschaeftsfuehrung h3{padding-bottom:.5rem;}
#image-geschaeftsfuehrung::before {content:'';top:16px;left:0;position:absolute;width:100%;height:5px;background:rgba(255,255,255,.2);}
#image-geschaeftsfuehrung::after {content:'';top:13px;left:0;position:absolute;width:10px;height:10px;border-radius:100%;background:#FFF;filter:blur(3px);animation:electricslide 1.5s .5s linear infinite;box-sizing:border-box;}
@keyframes electricslide {
	0 
	{left:0;opacity:0;}
	50% {left:50%;opacity:.6;width:10%;opacity:1;}
	100% 
	{left:90%;opacity:0}
	}
#image-geschaeftsfuehrung > .content-text {
	max-width:50%;
}
/* END IMAGE GESCHAEFTSFÜHRUNG */

/* BESCHREIBUNG */
#beschreibung {position:relative;padding:4rem 4rem 0 4rem;overflow:visible;}
#beschreibung:after {
content:'';
width:66px;
height:66px;
color:var(--darkred);
border-radius:100%;
padding:.5rem;
box-shadow: 0 0 30px rgba(0,0,0,.2), 0 0 30px rgba(0,0,0,.2) inset;
border: 3px solid #FFF;
position:absolute;
top:-33px;
z-index:7;
right: 0;
left: 0;
margin: -8px auto;
}
#beschreibung:before {
	display:flex;
	justify-content:center;
	align-items:center;
content:'+';
font-weight:bold;
font-size:3rem;
background:#FFF;
width:56px;
height:56px;
color:var(--darkred);
border-radius:100%;
padding:.5rem;
box-shadow: 0 0 30px rgba(0,0,0,.2);
position:absolute;
top:-33px;
z-index:8;
right: 0;
left: 0;
margin: 0 auto;
}
#beschreibung .iconfont {display:block;color:var(--darkred);font-size:2rem;margin:-2rem .25rem 1rem .25rem;}
/* ENDE BESCHREIBUNG */

/* ENDE UNTERNEHMENSBILDER */
#unternehmensbilder {padding-top:0;}
/* ENDE UNTERNEHMENSBILDER */
/* MEHR ZUM UNTERNEHMEN */
#mehrzumunternehmen {
	padding: 0 4rem;
	text-align:center;
}
#mehrzumunternehmen > div {
	margin: 0 4rem;
}
/* ENDE MEHR ZUM UNTERNEHMEN */

/* KUNDENMEINUNGEN */
#kundenmeinungen .mod_newslist {
	flex: 4 1 220px;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin: -2rem -4rem;
padding: 0 4rem;width:100%;box-sizing:border-box;
}
#kundenmeinungen .mod_newslist .layout_latest {
	flex: 1 1 220px;
	margin:4rem;
}
#kundenmeinungen .mod_newslist .layout_latest h3 {margin-bottom:.5rem;}
#kundenmeinungen .mod_newslist .layout_latest h3::before {
display:block;
content:'★★★★★';
color:var(--lightred);font-size:1.5rem;margin-bottom:.5rem;
}
#kundenmeinungen img {
	border-radius:100%;
	margin-bottom:1rem;
}
/* ENDE KUNDENMEINUNGEN */

/* REFERENZOBJEKTE */
#referenzobjekte {overflow:hidden;}
#referenzobjekte .mod_newslist {
	    flex: 4 1 220px;
    display: flex;
    flex-wrap: wrap;
    margin: -2rem -2rem;
    padding: 0 4rem;
    box-sizing: border-box;
}
#referenzobjekte .mod_newslist .layout_latest {
	flex: 1 1 320px;
	margin:2rem;
	position:relative;max-width:400px;padding:1rem;background:#EEE;box-sizing:border-box;
}
.startseite #referenzobjekte .mod_newslist .layout_latest {flex:1 1 180px;margin:3rem;}
#referenzobjekte.referenzarticle .mod_newslist .layout_latest {padding:0;}
#referenzobjekte .mod_newslist .layout_latest:hover {
transform:scale(1.1);
}
#referenzobjekte .mod_newslist .layout_latest a.buttonlink {
	width:100%;
	box-sizing:border-box;
	padding:1rem;
	position:absolute;
	bottom:0;
	background: rgba(143, 22, 8, .8);
	text-align:center;
}
#referenzobjekte .mod_newslist img {width:100%;}
#referenzobjekte img:hover {
	transform:scale(1.2);
animation:electric .05s 5;
}
#referenzobjekte h4 {
font-size:.8rem;
	text-transform:none;
margin-bottom:.25rem;color: var(--lighterred);
}
#referenzobjekte h5 {
	font-weight:normal;
font-size:.7rem;
	text-transform:none;
}
#referenzobjekte-lesen {padding:0;}
#referenzobjekte-lesen .mod_newsreader {margin:0 !important;}
#referenzobjekte-lesen .content-text {padding:4rem 8rem;font-size:.9rem;line-height:160%;}
#referenzobjekte-lesen .newsflex .rte {column-count:3;column-gap:4rem;}
#referenzobjekte-lesen .content-text.auflistungohnesymbole {column-count:unset;}
#referenzobjekte-lesen .content-text p:first-child strong {font-size:1rem;}
#referenzobjekte-lesen .content-gallery {padding:0 8rem}
#referenzobjekte-lesen .auflistungohnesymbole {column-count:unset;}
#referenzobjekte-lesen .content-text p{margin:0 0 1rem 0;}
#referenzobjekte-lesen .auflistungohnesymbole li::before {content:'';display: block;
color: var(--lighterred) !important;
text-align: center;
font-size: 1.8rem;
margin: .25rem;font-family: 'Linearicons-Free';
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;}
#referenzobjekte-lesen.jobslesen .content-text {column-count:unset;}
#main .layout_full .auflistungohnesymbole span.iconfont {color:var(--lighterred);}
#main .layout_full .content-text.auflistungohnesymbole li::before {content:'';display: block;position:static;
color: var(--lighterred) !important;
text-align: center;
font-size: 1.8rem;
margin: .25rem;font-family: 'Linearicons-Free';
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;}
#referenzobjekte-lesen.jobslesen .layout_full .content-text.auflistungohnesymbole li::before {display:none;}
p.back {padding:2rem 8rem;}
p.back:before {content:'';
text-align: center;
margin: .25rem;font-family: 'Linearicons-Free';
speak: none;
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;}
/* ENDE REFERENZOBJEKTE */

/* KONTAKT */
#kontakt {
	padding:0;
	border-bottom:40px solid var(--darkred);
}
#kontakt > div {
	margin:0;
}
#kontakt > .content-image {
	flex:2 1 220px;
}
#kontakt .content-image figure {
	width:100%;
	height:100%;
}
#kontakt .content-image img {
	object-fit:cover;
	width:100%;
	height:100%;
}
#kontakt > .content-text {
	display:flex;
	justify-content:center;
	align-items:center;
	padding:4rem;
}
/* ENDE KONTAKT */
.googlemapskarte {background:url('../../files/template/images/karte.webp');background-size:cover;}
/* JOBS */
#jobs_news {
	padding:0;
}
#jobs_news > div {
	margin:0;
}
#jobs_news > .content-image {
	flex:2 1 220px;
	background:var(--darkred);
}
#jobs_news .content-image figure {
	width:100%;
	height:100%;
}
#jobs_news .content-image img {
	object-fit:cover;
	width:100%;
	height:100%;
}
#jobs_news > .content-text {
	padding:4rem;
	margin:0 4rem;
}
#referenzobjekte-lesen.jobslesen .content-text.newsflex .rte {display:flex;flex-wrap:wrap;}
#referenzobjekte-lesen.jobslesen .content-text.newsflex ul{list-style:none;margin:1rem 0 1rem 0;}

#referenzobjekte-lesen.jobslesen .content-text.newsflex li::before {content: "»";
  display: inline-block; width: 1rem;
  margin-left: -1rem}
#referenzobjekte-lesen.jobslesen .content-text.newsflex .rte > div{flex:1 1 320px;}
.layout_full .ce_form .widget{
display:block;
}
.layout_full .ce_form fieldset{
border:none;margin:1rem 0;padding:0;
}
.layout_full .ce_form {
  padding: 4rem 8rem;
  font-size: .9rem;
  line-height: 160%;
}
.layout_full .ce_form .formbody{
  padding: 2rem;
background:#ded4d3;margin-top:1rem;
}
.layout_full .ce_form label{
display:block;
}
.layout_full .ce_form input{
margin:0;width:100%;box-sizing:border-box;
}
.layout_full .ce_form select{
margin:0;
}
.layout_full .ce_form .widget-checkbox label {display:inline-block;}
.layout_full .ce_form input.checkbox{
display:inline-block;width:auto;
}
.testimonials {padding:0 8rem;display:flex;justify-content:space-between;flex-wrap:wrap;}
#referenzobjekte-lesen .testimonials .content-text {padding: 4rem;}
.testimonials .content-text {border-radius: 100%;background:#EEE;margin:2rem;}
.testimonials h4 {margin-bottom:1rem;}
.testimonials p {line-height:120%;}
/* ENDE JOBS */

/* FOOTER */
#footer {
	display:flex;
	flex-wrap:wrap;
	padding: 2rem 4rem;
}
#footer > div {
	margin: 2rem 4rem;
	flex: 1 1 220px;
	display:flex;
}
#footer .mod_navigation {flex: 5 1 220px;}
#footer .mod_navigation h2{
	color:var(--lightred);
}	
#footer .mod_navigation ul{
	display:flex;
	flex-wrap:wrap;
	list-style:none;
	margin:0 -2rem;
	padding:0;width:100%;
}	
#footer .mod_navigation ul li{
font-size:1.5rem;font-weight:bold;
margin:0 2rem;
flex: 0 1 auto;
}	
#footer .mod_navigation ul li ul{
display:block;
margin:2rem 0;
}	
#footer .mod_navigation ul li ul li{
display:block;
font-size:.8rem;font-weight:normal;
margin:0;
}	
#footer .mod_navigation li.active,#footer .mod_navigation a.trail,#footer .mod_navigation li.trail {color:var(--lighterred);}
#footer #hotlinefooter {
	flex: 1 1 220px;	}
#footer #hotlinefooter img{
display:inline-block;}	
#footer a:hover{color:var(--lightred);}
/* ENDE FOOTER */

.inverstext h1, .inverstext h2, .inverstext h3, .inverstext h5, .inverstext a {
	color:#FFF;
}
 .inverstext h4 {color:var(--lighterred);}
.inversgrey {
	color:#FFF;
	background: rgb(114,114,114);
	background: radial-gradient(circle, rgb(114, 114, 114) 0%, rgb(76, 76, 76) 100%);
}
/* ALLGEMEINE FORMATIERUNGEN */
#copyright {
	text-align:center;
}
.invisible {
	display:none !important;
	visibility:hidden !important;
}
.fadein {
	transform:scale(0);
	filter:blur(20px);
	transition:transform 500ms ease-in-out;
}
.isfadedin {
	transform:none;
	filter:none;
}
.opacityin {overflow:hidden;
	opacity:0;
	transition:transform 500ms ease-in-out;
}
.isopacityin {
	transform:none;
	filter:none;
	opacity:1;
}
/* POPUP GALLERY */
#cboxOverlay {background:var(--darkred);}
#colorbox,#cboxWrapper {overflow:visible;}
#cboxContent {background: #333;}
#cboxLoadedContent {border: 5px solid var(--darkred);box-shadow: 0 0 30px rgba(0,0,0,.5);}
#cboxPrevious {
width: 65px;
height: 65px;
background: #FFF;
border-radius: 0 100% 100% 0;	}
#cboxPrevious:before {
content:"\1F878";
position:absolute;
width: 65px;
height: 65px;
z-index: 1000;
text-indent: 0;
left:0;font-weight:bold;
display: flex;
align-items: center;
justify-content: center;
top: 0;
font-size:1.5rem;color:var(--darkred);}

#cboxNext {
width: 65px;
height: 65px;
background: #FFF;
border-radius: 100% 0 0 100%;	}

#cboxNext:before {
content:"\1F87A";
position:absolute;
width: 65px;
height: 65px;
z-index: 1000;
text-indent: 0;
left:0;font-weight:bold;
display: flex;
align-items: center;
justify-content: center;
top: 0;
font-size:1.5rem;
color:var(--darkred);}
#cboxClose {
width: 75px;
height: 75px;
background: #FFF;
border-radius: 0 0 0 100%;	
	}
#cboxClose:before {
content:"\2716";
position:absolute;
width: 65px;
height: 65px;
z-index: 1000;
text-indent: 0;
right:0;font-weight:bold;
display: flex;
align-items: center;
justify-content: center;
top: 0;
font-size:1.5rem;	
	}
#cboxCurrent,#cboxTitle {color:#FFF;}	
/* ENDE POPUP GALLERY */
.ansprechpartner {text-align:center;}
.ansprechpartner figure{display:inline-block;border-radius:100%;}
.ansprechpartner figure a img:hover {
	transform:scale(1.2);
animation:electric .05s 5;
}
.mod_article .auflistungohnesymbole {margin-top:0;margin-bottom:0;overflow:hidden;}
.startseite .mod_article .auflistungohnesymbole {margin: 0 0 1rem 0;}
.auflistungohnesymbole ul{margin:0 -1rem;display:flex;flex-wrap:wrap;list-style:none;padding:0;justify-content:center;align-items:top;background:none !important;padding:0!important;margin:0!important;}
.auflistungohnesymbole li{margin:.5rem;text-align:center;font-size:.9rem;flex: 0 0 180px;}
.auflistungohnesymbole span.iconfont {display:block;color:var(--darkred);text-align:center;font-size:1.8rem;margin:.25rem .25rem 1rem .25rem;}
.inversgrey .auflistungohnesymbole span.iconfont {color:var(--lighterred) !important;}

/* The actual timeline (the vertical ruler) */
.timeline {
  position: relative;
  margin: 2rem auto;
  display:block;
  max-width:1200px;
}
.timeline h4 {color:#333;}
.timeline p {margin:0;}
.timeline .content-headline {text-align:center;}
.timeline.headline::after {display:none;}
/* The actual timeline (the vertical ruler) */
.timeline::after {
  content: '';
  position: absolute;
  width: 6px;
  background-color: #EEE;
  top: 0;
  bottom: 0;
  left: 50%;
  margin-left: -3px;
}

/* Container around content */
.timeline .container {
  padding: 10px 40px;
  position: relative;
  background-color: inherit;
  width: 50%;box-sizing:border-box;
  margin:0;
}

/* The circles on the timeline */
.timeline .container::after {
  content: '';
  position: absolute;
  width: 25px;
  height: 25px;
  right: -17px;
  background-color: #FFF;
  border: 4px solid #cb2a1d;
  top: 15px;
  border-radius: 50%;
  z-index: 1;
}

/* Place the container to the left */
.timeline .left {
  left: 0;
}

/* Place the container to the right */
.timeline .right {
  left: 50%;
}

/* Add arrows to the left container (pointing right) */
.timeline .left::before {
  content: " ";
  height: 0;
  position: absolute;
  top: 22px;
  width: 0;
  z-index: 1;
  right: 30px;
  border: medium solid white;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent white;
}

/* Add arrows to the right container (pointing left) */
.timeline .right::before {
  content: " ";
  height: 0;
  position: absolute;
  top: 22px;
  width: 0;
  z-index: 1;
  left: 30px;
  border: medium solid white;
  border-width: 10px 10px 10px 0;
  border-color: transparent white transparent transparent;
}

/* Fix the circle for containers on the right side */
.timeline .right::after {
  left: -16px;
}

/* The actual content */
#main div.timeline .content {
  padding: 20px 30px !important;
  background-color: white;
  position: relative;
  border-radius: 6px;
  margin:0;
  box-shadow: 0 0 20px #CCC;
}  
.fullwidthimage,.fullwidthimage div {padding:0 !important;margin:0 !important;overflow:hidden;}
.counter {font-size:1.7rem;margin-bottom:.25rem;}
/* ENDE ALLGEMEINE FORMATIERUNGEN */
#main .content-text table td {padding:5px;vertical-align:top;}
#main .content-text table tr:nth-child(even) {background:#EEE;}
#main .content-text table tr:nth-child(odd) {background:#ded4d3;}
#main .content-text ul {margin:1rem 0;padding:1rem 2rem;background:#ded4d3;list-style-type:none;}
#main .content-text ul li{padding:.25rem 0;}
#main .content-text ul li:before{content:'»';position:absolute;margin-left:-1rem;font-weight:bold;color:var(--darkred);}
#main .content-text.auflistungohnesymbole li:before{display:none;}
#main .content-text ul li ul{margin:0;padding:0 0 0 1rem;font-weight:normal;}
#main .content-downloads ul {list-style:none;margin:1rem 0; padding:0;}
#main .content-downloads li {background:#EEE;font-size:.9rem;padding:.5rem;}
#main .content-downloads li:nth-child(odd) {background:#ded4d3;}
#cookieconsent {box-shadow:0 0 20px rgba(0,0,0,.2);padding:1rem;display:flex;justify-content:space-between;align-items:center;position:fixed;left:0;bottom:0;padding:1rem;background:#FFF;color:#333;width:100%;font-size:0.8rem;box-sizing:border-box;z-index:1005;}
#cookieconsent>div {padding:1rem;}
#cookieconsent a {color:var(--darkred);}
#cookieconsent span.iconfont {font-size:2rem;color:var(--lighterred);}
#cookieconsent button {border:0; background:var(--darkred);color:#FFF;margin: .25rem;cursor:pointer;}
#cookieconsent button.decline {background:#666;}
.content-player {background:#333;text-align:center;}
.content-player figure {line-height:0;}
.content-player video{box-shadow: 0 0 100px #000;}
.mod_article.video,.mod_article.video > div {padding:0;margin:0;}
.cc-detail-btn {color:#000;}
.contao-cookiebar p {color:#333;}
.contao-cookiebar .highlight .success {background:#3d7532;}
 @media screen and (max-width:1200px) {
.mod_article {
padding: 1rem;
}
.mod_article > div {
margin: 1rem 2rem;
}
#header {
	padding: 0;position:static;
}
#header > div {
	padding: 1rem;
	flex-wrap:unset;
	margin:0;
}
#header .inside{padding: 1rem;}
#breadcrumb {padding:.25rem 1rem;}
#header #logo .logo_aussen,#header #logo .logo_innen {
	position:static;
	width:auto;
	height:auto;
	box-shadow:none;
	border-radius:unset;
	padding:0;
	border:none;
}
#header #logo .logo_aussen{
justify-content:flex-end;
}
#header #logo img {
	width:100px;
}
#header #hotlinesocial {
display:none;
}
#header .mod_navigation {
	border-radius: 0 0 50% 0;
}
#header .mod_navigation ul li ul{
display:block;
margin:.5rem 0 1rem 0;
}
#theme {min-height:unset;padding-top:2rem;}
#theme .content-image {order:2;width:100%;flex: 1 1 100%;}
#theme .content-text {margin:2rem 0;padding-bottom:2rem;}
#keyfacts .inside {
padding:0;flex-wrap:wrap;justify-content:center;margin:0;
}
#keyfacts .inside > div {
flex: 1 1 40%;box-sizing:border-box;
}
#keyfacts .inside .keyfactsimagebild {
order:2;transform:unset;flex: 0 1 40%;
}
#image-geschaeftsfuehrung {min-height:unset;padding:2rem 1rem;}
#image-geschaeftsfuehrung > .content-text {
    max-width: unset;
}
#beschreibung {
padding:4rem 1rem 0 1rem;box-sizing:border-box;	}
#kundenmeinungen {display:block;}
#kundenmeinungen .mod_newslist {
padding: 0;margin:0;}
#kundenmeinungen .mod_newslist .layout_latest {
    margin: 1rem 2rem;
}
#referenzobjekte {display:block;}
#referenzobjekte-lesen .content-text {padding:2rem 3rem;}
#referenzobjekte-lesen .newsflex .rte {column-count:2;column-gap:4rem;}
#referenzobjekte-lesen .content-gallery {
    padding: 0 3rem;
}
#referenzobjekte-lesen #theme .content-text {margin:2rem 0;padding: 0 0 2rem 0;}
#referenzobjekte .mod_newslist { margin:1rem -2rem;padding:2rem;}
.startseite #referenzobjekte .mod_newslist {padding:0;}
.startseite #referenzobjekte .mod_newslist .layout_latest{margin:1rem;}
#referenzobjekte .mod_newslist .layout_latest { margin:1rem 2rem;}
#kontakt > .content-text {padding:1rem;margin:1rem 2rem;justify-content:flex-start;}
#jobs_news > .content-text {
    padding: 1rem;
    margin: 1rem 2rem;
}
#footer{padding:1rem;}
#footer > div {display:unset;margin:1rem 2rem;}
.auflistungohnesymbole li{flex: 0 1 auto;}
#image-geschaeftsfuehrung {
background: var(--darkred);padding:0;
}
#image-geschaeftsfuehrung .content-text {padding:4rem;}
#image-geschaeftsfuehrung-bild,#image-geschaeftsfuehrung-bild .content-image {display:block;}

p.back {padding:2rem 3rem;}
}
 @media screen and (max-width:720px) {
body {
hyphens:auto;
}
h1 {
	font-size:2rem;
}
h2 {
	font-size:1.5rem;
}
h3 {
	font-size:1.25rem;
}
h4 {font-size:1rem;
}
h5 {font-size:.9rem;
}
h6 {font-size:.8rem;
}
.mod_article {
padding: 1rem 1rem;
}
.mod_article > div {
margin: 0;
}
#header {
	padding: 0;
}
#header .custom {display:none;}
#header #logo img {
	width:70px;
}
#header #hotlinesocial {
display:none;
}
#header .mod_navigation {
	border-radius: 0 0 50% 0;padding:2rem;
}
#header .mod_navigation ul li ul{
display:block;
margin:.5rem 0 1rem 0;
}
#theme h2 {margin-left:2rem;}
#theme h2 span.bigger {font-size:1.5rem;}
#keyfacts .inside > div {
	flex: 1 1 30%;
}
#keyfacts .inside .keyfactsimagebild {flex: 0 1 70%;}
#image-geschaeftsfuehrung {display:block;}
#image-geschaeftsfuehrung > .content-text {
    max-width: unset; padding:2rem 1rem;
}
#beschreibung {
padding:4rem 0 0 0;width:100%;}
#beschreibung .content-text{
margin:1rem;}
#beschreibung:after {
width:46px;
height:46px;
padding:.5rem;
top:-23px;
}
#beschreibung:before {
font-size:2rem;
width:36px;
height:36px;
padding:.5rem;
top:-23px;
}

#kundenmeinungen .mod_newslist {
margin:0 -1rem;padding:0;}
#kundenmeinungen .mod_newslist .layout_latest {
    margin: 1rem;
}
#referenzobjekte .mod_newslist { margin:0 -1rem;padding:0;}
#referenzobjekte .mod_newslist .layout_latest { margin:1rem;}
#referenzobjekte-lesen .content-text {padding:2rem 1rem;}
#referenzobjekte-lesen .newsflex .rte {column-count:unset;column-gap:4rem;}
#referenzobjekte-lesen .content-gallery {
    padding: 0 1rem;
}
.layout_full .ce_form {padding:2rem 1rem;column-count:unset;column-gap:4rem;}
#kontakt > .content-text {padding:1rem;margin:0;justify-content:flex-start;}
#jobs_news > .content-text {
    padding: 1rem;
    margin: 0;
}
#footer{padding:1rem;}
#footer > div {display:unset;margin:1rem 0;}
.auflistungohnesymbole li{flex: 0 0 40%;font-size:.8rem;box-sizing:border-box}
.testimonials {padding:0;}
#referenzobjekte-lesen .testimonials .content-text {padding:1rem;}
.testimonials .content-text {margin:1rem;border-radius:10%;}
#main  .timeline::after {
  left: 24px;
  }
  
  /* Full-width containers */
.timeline  .container {
  width: 100%;
  padding-left: 20px;
  padding-right: 0;
  }
.timeline  .content {
  width: 70%;
left:20px;
  }  
  /* Make sure that all arrows are pointing leftwards */
.timeline  .container::before {
  left: 30px;
  border: medium solid white;
  border-width: 10px 10px 10px 0;
  border-color: transparent white transparent transparent;
  }
  .timeline  .right::after , .timeline  .left::after {
  margin-left: -10px;  }

  /* Make sure all circles are at the same spot */
.timeline  .left::after,.timeline .right::after {
  left: 0px;
  }
  
  /* Make all right containers behave like the left ones */
.timeline  .right {
  left: 0%;
  }
  /* Place the timelime to the left */
  #main .greycontent figure {
    max-width: unset;width:100%;
}
.fullwidthimage,.fullwidthimage div {padding:0 !important;margin:0 !important;overflow:hidden;}
p.back {padding:2rem 1rem;}
#cookieconsent {bottom:0;left:0;right:0;padding:1rem;width:100%;display:block;}
}

