@font-face{
	font-family: 'PT Sans Narrow';
	font-style: normal;
	font-weight: 400;
	src: local('PT Sans Narrow'), local('PTSans-Narrow'), url('../fonts/pt_sans_narrow/pt_sans_narrow.woff2') format('woff2'), url('../fonts/pt_sans_narrow/pt_sans_narrow.woff') format('woff');
}

@font-face{
	font-family: 'PT Sans Narrow';
	font-style: normal;
	font-weight: 700;
	src: local('PT Sans Narrow Bold'), local('PTSans-NarrowBold'), url('../fonts/pt_sans_narrow/pt_sans_narrow_700.woff2') format('woff2'), url('../fonts/pt_sans_narrow/pt_sans_narrow_700.woff') format('woff');
}

body{
	font-family: 'Arial', sans-serif;
	color: #444;
	font-size: 14px;
	padding: 0px;
}

.page-header{
	margin: 2px 0px 10px 0px;
	padding-bottom: 5px;
}

#topwrapper{
	padding: 0px 20px;
}
/*
#language {
	padding: 40px 0px 0px 0px;
	line-height: 14px;
}

#language ul{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
	gap: 4px;
}

#language ul li{
	border-right: 1px solid #aaa;
	padding: 0px 0px 0px 0px;
	margin: 0px -3px 0px 0px;
}

#language ul li.lang-active a {
	color: #777;
}


#language ul li:first-child{
	border-left: none;
	padding-left: 0px;
	margin-left: 0px;
}

#language ul li:last-child{
	border-right: none;
	padding-right: 0px;
	margin-right: 0px;
}


#language a{
	color: #aaa;
	font-size: 14px;
}*/

#header{
	padding: 0px 0px 50px 0px;
}

#mainmenu{
	z-index: 100;
	position: relative;
	font-family: 'PT Sans Narrow', sans-serif !important;
}

#mainmenu nav ul{
	float: right;
	margin-right: 0px;
}

#mainmenu nav > ul > li{
	padding: 4px 20px;
}

#mainmenu nav > ul > li.active{
	background-color: #e85517;
	border-radius: 4px;
}

#mainmenu nav > ul > li.active > a{
	background: transparent;
	background-image: none;
	box-shadow: none;
	color: #fff;
}

#mainmenu nav > ul li a{
	font-size: 20px;
	color: #444;
	font-weight: normal;
	text-shadow: none;
	padding: 0px;
}

#mainmenu
#mainmenu .nav-collapse .nav > li > a:hover,
#mainmenu .nav-collapse .nav > li > a:focus,
#mainmenu .nav-collapse .dropdown-menu a:hover,
#mainmenu .nav-collapse .dropdown-menu a:focus{
	background: none;
}

#mainmenu nav > ul li.parent{
	position: relative;
}

#mainmenu nav > ul li:hover ul.nav-child{
	display: block;
}

#mainmenu nav > ul li ul.nav-child{
	display: none;
	position: absolute;
	background-color: #fff;
	padding: 10px 22px;
	border-bottom: solid 5px #e85517;
	-webkit-box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.2);
	box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.2);
	top: 36px;
	left: 0px;
	border-radius: 4px;
	min-width: 130px;
}

#mainmenu nav > ul li ul.nav-child li a{
	white-space: nowrap;
	font-size: 18px;
	line-height: 1.5em;
	margin: 2px 0px;
	display: inline-block;
}

#mainmenu nav > ul li ul.nav-child li a:hover,
#mainmenu nav > ul li ul.nav-child li.active a{
	text-decoration: none;
	color: #e85517;
}

#mainmenu .btn-navbar{
	background-color: transparent;
	background-image: none;
	border: none;
	box-shadow: none;
	padding-right: 0px;
	margin-right: 0px;
	float: none !important;
	margin: 0 auto !important;
}

#mainmenu .icon-bar{
	background-color: #e85517;
	width: 35px;
	box-shadow: none;
	height: 4px;
	margin-top: 4px;
}

#mainmenu .has-indicator{
	position: relative;
	padding-right: 25px;
}

#mainmenu .jobindicator{
	position: absolute;
	top: 7px;
	right: 0px;
	background: #e85517;
	color: #fff;
	border-radius: 50px;
	font-size: 12px;
	line-height: 12px;
	height: 18px;
	width: 18px;
	display: flex;
	align-items: center;
	align-content: center;
	text-align: center;
	justify-content: space-around;
	cursor: default;
}

#mainmenu nav > ul > li > .jobindicator{
	display: none;
}

#mainmenu nav ul{
	list-style: none;
}

#mainmenu nav > ul{
	display: flex;
	justify-content: flex-end;
	width: 100%;
}


#slideshow{
	z-index: 50;
	position: relative;
}

#slideshow .flexslider{
	border: none;
	margin: 0px;
}

#slideshow .flex-control-nav{
	bottom: 15px;
}

#slideshow .flex-direction-nav{
	display: none;
	visibility: hidden;
}

#slideshow .flex-control-paging li a{
	background: rgba(255, 255, 255, 0.6);
	box-shadow: none;
	width: 16px;
	height: 16px;
}

#slideshow .flex-control-paging li a.flex-active{
	background: rgba(255, 255, 255, 1)
}

#slideshow .flex-caption{
	display: none;
}


#beforecontent{
	background-color: #e8e8e8;
	padding: 40px 20px;
	text-align: center;
	font-size: 16px;
	line-height: 26px;
}

#teaser{
	padding: 0px 20px;
	text-align: center;
}

#teaser div.row > div{
	padding: 60px 0px;
}

#teaser .module_inner{
	max-width: 215px;
	margin: 0 auto;
}

#teaser h2,
#teaser h3,
#teaser h4,
#teaser h5,
#teaser h6{
	color: #444;
	font-weight: bold;
	font-size: 22px;
	line-height: 25px;
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	max-width: 200px;
	min-height: 70px;
	margin: 0 auto;
	padding: 10px 0px;
}

#teaser .btn{
	margin-top: 15px;
}

.start #content{
	display: none;
}

#content{
	padding: 20px;
}

#right .module{
	margin-bottom: 40px;
	border-left: solid 2px #e8e8e8;
	padding-left: 35px;
	margin-left: 25px;
	-webkit-hyphens: auto;
	-moz-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
}

#right .modulheadline{
	line-height: 18px;
	margin-bottom: 20px;
}

#right .module.box{
	margin-left: 50px;
	background-color: #e85718;
	color: #fff;
	padding: 10px 15px 10px 15px;
	position: relative;
}

#right .module.box::before{
	content: '';
	width: 35px;
	position: absolute;
	bottom: 0;
	top: 0;
	left: -27px;
	background-color: #fff;
	border-left: 2px solid #e8e8e8;
}


#right .module.box .modulheadline{
	color: #fff;
	margin-top: 10px;
}

#right .module.box .modulheadline,
#right .module.box .module_inner{
	padding-left: 35px;
}

#right .module.box a{
	font-weight: bold;
	color: #fff;
	font-size: 13px;
}


#right .company{
	hyphens: none;
	background-image: url(../images/company.png);
	background-repeat: no-repeat;
	background-size: 16px auto;
	display: block;
	background-position: left 10px center;
	background-color: #e8e8e8;
	padding: 8px 8px 8px 40px;
	margin-bottom: 7px;
}

.section{
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: left center;
	padding: 50px 0;
}

.section.default.left{
	background-size: auto 70%;
	background-repeat: no-repeat;
	background-position: right 20% center;
	padding: 50px 0;
}

.section:nth-child(2n+1){
	background-color: #f2f5f6;
}

.section.default{
	padding: 50px 0;
}

.section h2{
	margin-bottom: 20px;
}

.section.default p{
	margin-bottom: 40px;
}

.section.default .section-inner{
	max-width: 30%;
}

.section.default.right .section-inner{
	float: right;
}

#breadcrumbs{
	padding: 0px 20px;
}

#breadcrumbs .breadcrumb-item + .breadcrumb-item::before{
	content: '|';
	color: #ccc;
}

#breadcrumbs ul{
	padding: 0px;
	background-color: transparent;
	margin-bottom: 15px;
}

#breadcrumbs ul > li > *{
	font-size: 12px !important;
}



#breadcrumbs > li{
	text-shadow: 0 1px 0 #fff;
}

#breadcrumbs li span{
	display: inline-block;
	max-width: 400px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}



#breadcrumbs span.divider.icon-location{
	display: none;
}

#footer{
	background-image: url(../images/footer-bg.png);
	padding: 60px 20px 50px 20px;
	font-size: 14px;
}

#footer ul.mod-menu li{
	padding-left: 15px;
	background-image: url(../images/list-arrow.png);
	background-repeat: no-repeat;
	background-size: 5px auto;
	background-position: left center;
}

#footer ul.mod-menu li{
	width: 50%;
	display: inline-block;
}

#footer ul.mod-menu li a{
	color: #444;
	line-height: 30px;
}

#footer input.inputbox{
	border-radius: 0px;
	border: none;
	height: 25px;
	background-image: url(../images/search.png);
	background-repeat: no-repeat;
	background-position: center right 10px;
}

#footer iframe{
	border: solid 3px #fff !important;
}

#footer #footercontact{
	line-height: 28px;
	padding-left: 40px;
}

#footer #footercontact h4{
	margin-top: 0px !important;
	font-size: 20px;
	
}

#copyright{
	background-color: #989898;
	font-size: 12px;
	color: #444;
	padding: 14px 20px;
}

#copyright .social img{
	margin-right: 15px;
}

#copyright .owner{
	text-align: center;
}

/* BLOGANSICHT */

.blog .items-row{
	padding: 20px 0px 30px 0px;
	border-bottom: solid 2px #ebebeb;
}

.blog .items-row:last-of-type{
	border-bottom: none;
}

.blog .page-header{
	padding-bottom: 0px;
}

.blog .page-header h2{
	line-height: 1.2em;
}

.blog .image-intro{
	width: 200px;
	margin-left: 20px;
	float: right !important;
	text-align: center;
}

.blog .image-intro img{
	border: solid 3px #ebebeb;
	width: 100%;
	height: auto;
}

.item-page .pull-right{
	float: right;
}

.blog .icon-chevron-right{
	display: none;
}

.blog dd.published, .item-page dd.published{
	color: #a8a8a8;
	margin-left: 0;
	background-image: url('../images/calendar.png');
	background-repeat: no-repeat;
	background-position: left top;
	padding-left: 26px;
	line-height: 21px;
	font-size: 14px;
	text-transform: uppercase;
}

.blog dd.published .icon-calendar, .item-page dd.published .icon-calendar{
	display: none;
}

.item-page{
	margin-bottom: 40px;
}

#content .news-intro-image{
	margin-left: 20px;
	margin-bottom: 20px;
}

#content .news-intro-image img{
	max-width: 200px;
}

#content .item-page .news-intro-image img{
	max-width: 400px;
}

/* SEARCH */

.icon-search{
	display: none;
}

.label-info,
.badge-info{
	background-color: #e85517;
}

.result-text{
	padding-bottom: 30px;
}

.com-finder__search label.me-2 {
	display: none;
}

#finder-filter-window .filter-branch > .control-group:not(:last-child) {
	margin-bottom: 15px;
}

.com-finder .result__title-url,
.com-finder .result__taxonomy{
	display: none;
}

.com-finder .result__title-text {
	font-size: 16px;
	font-weight: 700;
	line-height: 20px;
}

.result__item + .result__item {
	border-top: none;
	padding-top: 0;
}


#searchForm{
	padding-bottom: 40px;
	border-bottom: solid 3px #ebebeb;
}

#searchForm legend{
	border: none;
	margin-bottom: 5px;
}


.search-results .highlight{
	background: #eee;
	padding: 2px;
	border-radius: 1px;
}

/* PAGINATION */

.pagination{
	margin-top: 10px;
}

.pagination ul{
	box-shadow: none !important;
	margin-bottom: 20px !important;
}

.pagination ul li::before{
	content: "" !important;
	padding: 0 !important;
}

.pagination ul li{
	padding: 0 !important;
}

.pagination .pagination-list li{
	display: inline-block;
	padding: 0px !important;
	margin: 0 5px !important;
	border-radius: 5px !important;
	background-image: none !important;
	background-color: #fff !important;
	min-height: 12px;
	min-width: 12px;
}

.pagination .pagination-list li > span,
.pagination .pagination-list li > a{
	border: none;
	border-radius: 5px !important;
	background: none;
	color: #e85517;
	line-height: 19px;
	min-height: 12px;
	min-width: 12px;
	padding: 4px 0 !important;
}

.pagination [class^="icon-"],
.pagination [class*=" icon-"]{
	vertical-align: baseline;
	line-height: 19px;
	margin-top: 0px;
	height: auto;
}

.pagination ul li.active a,
.pagination ul li.active span{
	background: #e85517;
	color: #fff;
	padding: 4px 8px !important;
}

.pagination ul li.active:hover a,
.pagination ul li.active:hover span{
	background: #e85517;
	color: #fff;
}

.pagination ul li:hover a,
.pagination ul li:hover span{
	background: #fff;
	color: #e85517;
}

.pagination ul li.disabled:hover a,
.pagination ul li.disabled:hover span{
	background: #fff;
}

.pagination ul li:first-child{
	margin-left: 0px !important;
}

.pagination ul li:last-child{
	margin-right: 0px !important;
}

.pagination .icon-previous,
.pagination .icon-next{
	background-position: center center !important;
	background-repeat: no-repeat !important;
	background-size: 10px auto !important;
}

.pagination .icon-previous{
	background-image: url("../images/pag-left.png") !important;
}

.pagination .icon-next{
	background-image: url("../images/pag-right.png") !important;
}


/* KONTAKTFORMULAR */

input, textarea{
	box-sizing: content-box;
}

textarea{
	resize: vertical;
}

.form-horizontal .control-label{
	text-align: left;
}

.optional{
	font-size: 12px;
}

#contact-form legend{
	display: none;
}

#contact-form input, #contact-form textarea{
	width: 70%;
}

#contact-form input[type="checkbox"]{
	width: auto;
}

.contact .contact-address{
	display: none;
}

.contact #jform_spacer-lbl{
	color: #e85517;
}

.contact input[type="text"],
.contact input[type="email"]{
	min-height: auto;
}

.teamsection{
	margin: 40px 0px;
	background-color: #ebebeb;
}

.teamsection .row{
	display: flex;
	align-items: center;
	padding: 20px;
	width: 100%;
}


.teamsection.highlighted{
	background-color: transparent;
	border: solid 4px #ebebeb;
}

.teamsection img{
	border-radius: 250px;
	max-width: 100%;
}

.quote{
	font-size: 19px;
	line-height: 1.3em;
	font-family: 'PT Sans Narrow', sans-serif;
	
}

.persdesc{
	text-align: left;
}

/* Success Story */

.success-story{
	margin: 40px 0px;
	padding: 20px;
	background-color: #ebebeb;
}

.success-story > .row-fluid{
	display: flex;
	align-items: center;
	margin-bottom: 15px;
}

.success-story > .row-fluid:last-child{
	margin-bottom: 0px;
}

.success-story.highlighted{
	background-color: transparent;
	border: solid 4px #ebebeb;
}

.success-story img{
	border-radius: 250px;
}

.success-story .quote{
	font-size: 19px;
	line-height: 1.3em;
	font-family: 'PT Sans Narrow', sans-serif;
	
}

.success-story .persdesc{
	text-align: left;
}

.success-story .success-story-content{
	padding-top: 10px;
	display: none;
}

/**/


body.projekte #topwrapper{
	-webkit-box-shadow: 0px 0px 11px -3px rgba(0, 0, 0, 0.3);
	-moz-box-shadow: 0px 0px 11px -3px rgba(0, 0, 0, 0.3);
	box-shadow: 0px 0px 11px -3px rgba(0, 0, 0, 0.3);
}

.toggler{
	background-color: #e8e8e8;
	padding: 5px 15px;
	cursor: pointer;
	position: relative;
	margin: 10px 0px 0px 0px;
	font-size: 20px;
	font-weight: normal;
}

.toggler::after{
	position: absolute;
	content: '+';
	display: inline-block;
	right: 16px;
	font-size: 26px;
}

.toggler.alive::after{
	content: '-';
}

.tabcontent{
	padding: 10px;
	border: solid 1px #e8e8e8;
}

#datenschutz p:first-of-type{
	display: inline;
}

.deactivate-ganalytics{
	display: inline-block;
}

.jobs img{
	margin-bottom: 40px;
}

th.right, td.right{
	text-align: right;
}

/* /////////////////////////////////////// VISFORMS */

.visform input, .visform textarea{
	width: 90%;
	border-radius: 6px;
	box-shadow: none;
}

.visform input[type="checkbox"], .visform input[type="submit"]{
	width: auto;
}

.visform textarea{
	height: 160px;
}

.visform .form-actions{
	padding: 0px;
	background-color: transparent;
	border: 0px;
}

#visform1 .field5 .visCustomText, #visform2 .field11 .visCustomText{
	margin: 0px;
	font-size: 14px;
	line-height: 20px;
	margin-left: 20px;
}

#visform1 .field5, #visform2 .field11{
	margin: 20px 0 30px 0;
}

.vis_mandatory,
form#visform1 div.required > label::after, form#visform1 div.required > label.checkbox.asterix-ancor::after, form#visform1 div.required > span.asterix-ancor::after, form#visform1 div.required > div.asterix-ancor > div::after,
form#visform2 div.required > label::after, form#visform2 div.required > label.checkbox.asterix-ancor::after, form#visform2 div.required > span.asterix-ancor::after, form#visform2 div.required > div.asterix-ancor > div::after{
	color: #e85517 !important;
}

/* /////////////////////////////////////// NEWSLETTER */

.newsletter input[type="text"], .newsletter input[type="email"]{
	width: 90%;
	border-radius: 6px;
	box-shadow: none;
}

.newsletter .radio_naked div:first-of-type{
	float: left;
	width: 50px;
}

.newsletter input[type="checkbox"]{
	float: left;
	margin-right: 10px;
}

.newsletter button{
	background-color: #e85517 !important;
}

/* /////////////////////////////////////// FOOTER FIX 01-21 

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

#footer .search{
	margin-top: 10px;
}

*/

/* /////////////////////////////////////// INFOBOX */

.quicklink-stripe a{
	display: inline-block;
	background-color: #e85517;
	border-top-left-radius: 50px;
	border-bottom-left-radius: 50px;
	position: fixed;
	top: 50px;
	right: -20px;
	color: #fff !important;
	padding: 10px 40px 11px 24px;
	transition: right 0.3s ease;
	font-size: 22px;
	line-height: 20px;
	font-weight: bold;
	font-family: 'PT Sans Narrow', sans-serif;
	box-shadow: 0px 2px 5px 0px rgba(0, 0, 0, 0.20);
	z-index: 1030;
}

.stripe-text > *:nth-child(2) a {
	top: 100px;
}

.quicklink-stripe a:hover{
	text-decoration: none;
	right: 0px;
}

@media (max-width: 978px){
	
	.stripe-text > *:nth-child(2) a {
		top: auto;
		bottom: 100px;
	}
	
	.quicklink-stripe a{
		top: auto;
		bottom: 50px;
		font-size: 18px;
		padding: 6px 32px 8px 18px;
	}
}

/* /////////////////////////////////////// COOKIEHINT */

#redim-cookiehint{
	background-color: #e8e8e8;
}

#redim-cookiehint .cookiecontent{
	color: #444;
	margin-top: 4px;
}

#redim-cookiehint .cookiebuttons .btn{
	background-color: #e8e8e8;
	color: #e75618;
}

#redim-cookiehint .cookiebuttons .btn:hover{
	background-color: #e75618;
}

.fa-long-arrow-alt-up:after{
	content: '▲';
	color: #444444;
	margin-left: 4px;
}

.fa-long-arrow-alt-down:after{
	content: '▼';
	color: #444444;
	margin-left: 4px;
}

/* Old Bootstrap Fix */
/*
.row-fluid{
	--bs-gutter-x: 1.5rem;
	--bs-gutter-y: 0;
	display: flex;
	flex-wrap: wrap;
	margin-top: calc(-1 * var(--bs-gutter-y));
	margin-right: calc(-0.5 * var(--bs-gutter-x));
	margin-left: calc(-0.5 * var(--bs-gutter-x));
}

@media (min-width: 768px){
	[class*="span"]{flex: 0 0 auto}
	.span1{width: 8.33333333%}
	.span2{width: 16.66666667%}
	.span3{width: 25%}
	.span4{width: 33.33333333%}
	.span5{width: 41.66666667%}
	.span6{width: 50%}
	.span7{width: 58.33333333%}
	.span8{width: 66.66666667%}
	.span9{width: 75%}
	.span10{width: 83.33333333%}
	.span11{width: 91.66666667%}
	.span12{width: 100%}
}
*/