/* source-sans-3-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: 'Source Sans 3';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/source-sans-3-v18-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


body {
	background:#fff;
	font-family: 'Source Sans 3';
	font-size:16px;
}

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

#content {
	padding-bottom:150px;
}

.container-small {
	max-width: 670px;
	margin-bottom:120px;
}

.content_inner {
	padding:70px 0 0px 0;
}

#p16 .content_inner {
	padding-top:0;
}


h2 {
	font-size:30px;
	line-height:60px;
	margin-top:15px;
	margin-bottom:15px;
	font-weight:bold;
	color:#3fa535;
}

.hellblauer-hintergrund .btn-primary {
    background: #3fa535;
    border-color: #3fa535;	
	font-size:17px;
    color: #fff;	
	margin-bottom:10px;	
}

.hellblauer-hintergrund .btn-primary:hover {
	background: #004494;
    border-color: #004494;
}

.hellblauer-hintergrund {
  margin-top: 80px;
  padding: 40px 0 40px 0;
  background: #b6bbbe;
  color: #fff;
  font-size:18px;
}

.hellblauer-hintergrund h1,
.hellblauer-hintergrund h2,
.hellblauer-hintergrund h3,
.hellblauer-hintergrund h4,
.hellblauer-hintergrund h5,
.hellblauer-hintergrund p {
	color:#fff;
}

.hellblauer-hintergrund a {
	color:#3fa535;	
}

.hellblauer-hintergrund .container {
  max-width: 900px;
}

.frame-type-form_formframework .form-group {
	margin-top:15px;
}

#c184 {
	padding:10px;
	border:1px solid #fff;
	margin:10px 0;
}

.frame-default header {
	box-shadow: none !Important;
}

/* #################### */
/* ###### subheader ###### */
/* #################### */
#subheader {
	background: #000;
	color:#fff;
	padding-right:0px;
	padding:10px 0;
	text-align:right;
}


#subheader .subheader-pipe {
	color:#3fa535;
	margin:0 10px;	
}

#subheader .subheader-pipe.last {
	margin-right:0;
}

#subheader a {
 color:#fff;
 margin-left:10px;
 text-decoration:none;
}

#subheader a:hover {
	color:#3fa535;
}

#subheader p {
	margin-bottom:0;
}

#subheader .frame-default, #subheader p {display:inline-block;}
#subheader {}
#subheader {}


/* #################### */
/* ###### HEADER ###### */
/* #################### */
#header {
	box-shadow:0px 1px 20px -4px #000000;
	position: relative;
	z-index: 999;	
}

#header .navbar {
	padding:0;
}

#header .navbar-brand {
	padding:15px 0;
}

#header .navbar-brand img {
	max-height:80px;
}

#header li.nav-item {
	border-top:10px solid #fff;	
	border-bottom:10px solid #fff;
	padding-top:20px;
	padding-bottom:20px;
}

#header li.nav-item.active, #header li.nav-item:hover {
	border-top-color:#3fa535;
}

#header li.nav-item a:not(.dropdown-item) {
	padding:15px 36px;
	border-right:1px solid #000;
	text-transform:uppercase;
	color:#000;
	font-size:15px;
}

#header li.nav-item:first-child a:not(.dropdown-item) {
	border-left:1px solid #000;
}

#header li.dropdown-toggle a:after { 
	display:none;
}

.dropdown-menu {
	margin-top:10px !important;
	border-radius:0;
	border:0 none;
	padding-bottom:0;
	background:#3fa535;
	min-width:230px;
}

.dropdown-menu a {
	color:#fff;
	padding-top:8px;
	padding-bottom:8px;
}

.dropdown-menu a:hover,
.dropdown-item.active, .dropdown-item:active {
	color:#fff;
	font-weight:bold;
	background:transparent;
}


/* #################### */
/* ###### carousel ###### */
/* #################### */
.carousel-control-prev-icon {
  background: #fff;
  color: #000;
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
}


.carousel-control-next-icon {
  background: #fff;
  color: #000;
  width: 4rem;
  height: 4rem;
  border-radius: 100%;
}

.carousel-control-next-icon:after,
.carousel-control-prev-icon:after {
  font-size: 40px;
  line-height: 60px;
  font-weight: 100;
  color: #333;
}

.carousel-control-prev-icon:after {
	content:"\2039";
}
.carousel-control-next-icon:after {
	content:"\203A";
}

.carousel-caption {
  background-image: url('../images/slider-caption-bg.png');
  background-repeat: repeat;
  font-size: 40px;
  text-transform: uppercase;
  bottom: 0;
  width: 100%;
  margin: 0;
  left: 0;
  right: 0;
  padding: 40px 20px;
}


/* #################### */
/* ###### marketing-claim ###### */
/* #################### */
.marketing-claim {
	margin-top:10px;
}

.marketing-claim hr {
	border-color:#000 !important;
	opacity:1;
	margin:0px 0;
}

.marketing-claim .text-element {
	padding:44px 0;
	font-weight:bold;
	text-align:center;
	font-size:26px;
}

/* #################### */
/* ###### marketing-claim ###### */
/* #################### */
.produkt-item {

}

.produkt-item hr, 
.produktseite hr {
	border-color:#000 !important;
	opacity:1;
	margin:0px 0;
	position:relative;
	z-index:5;
	margin:3px 0;	
}

.produkt-item p {
		margin:0;
}

.produkt-item .text-muted {
	color:red !important;
}

.produkt-item .produk-item-inhalt {
	padding:25px 0;
	position:relative;
	z-index:4;
}

.produkt-item h3,
.produktseite h3 {
	font-size:18px;
	font-weight:bold;
}

/* #################### */
/* ###### Kachel ###### */
/* #################### */
.own-row {
	position: relative;
	display: flex;
	width: 100%;	
	background: #eff0f2;
}
.textspalte {
	position: relative;
	background: transparent;
	text-align: center;
	z-index: 1;
	display: flex;
	justify-content: center;		
	width: 50%;
	vertical-align: middle;		
}
.text-wrapper {
	display: inline-block;
	max-width: 620px;
	padding: 80px 110px 0 110px;
	font-size: 16px;
	line-height: 22px;
	margin: 0;
	text-align: justify;
	hyphens: auto;	
}
.text-wrapper h2 {
	margin-top:0;
	margin-bottom:38px;
	font-size:22px;
	font-weight:bold;
	background:#fff;
	line-height:40px;
	text-align:center;
	color:#3fa535;
}	

.own-row .btn-primary {
  position: absolute !important;
  bottom: 30px;
  left: 0;
  right: 0;
  margin-inline: auto;
  width: fit-content;
  padding: 10px 50px;
  border: 0 none;
  font-weight: bold;
  border-radius: 0;
  background: #000;
  color: #3fa535;
  width: 280px;
  display: block;
  transition: all 0.5s ease-out;
}
.own-row .btn-primary::after {
position: absolute;
right: 15px;
border-style: solid;
border-width: 0.15em 0.15em 0 0;
content: '';
display: inline-block;
height: 1.1em;
top: 14px;
vertical-align: top;
width: 1.1em;
transform: rotate(45deg);
transition: all 0.2s ease-out;
color:#fff;
	
}
.own-row .btn-primary:hover {
	background:#333;
	color:#3fa535;
	text-decoration:none;
}
.own-row .btn-primary:hover::after {
	transform: rotate(135deg);
top: 8px;	
}
.bildspalte {
	position: relative;
	padding-bottom: 33.33%;
	background: transparent no-repeat 50% 50%;
	background-size: cover;	
	width: 50%;
	vertical-align: middle;		
}

.own-row-image-left .textspalte,
.own-row-image-right .bildspalte {
  border-left: 8px solid #fff;
  border-bottom: 16px solid #fff;
}

.own-row-image-right .textspalte,
.own-row-image-left .bildspalte {
  border-right: 8px solid #fff;
  border-bottom: 16px solid #fff;
}

@media (max-width:767px){
	.own-row {
		position: relative;
		display: block;
	}	
	.own-row {
		content: "";
		display: block;
		width: 100%;
		padding-bottom: 60%;
	}
}	
@media (max-width:767px){
	.textspalte {
		display: block;
		width: 100%;
		padding: 20px 0;
	}
}	
@media (max-width:767px){
	.text-wrapper {
		max-width: 500px;
		padding: 20px 40px;
	}	
}
@media (max-width:767px){
	.text-wrapper {
		max-width: 640px;
	}	
}	
@media (max-width:767px){
	.bildspalte {
		display: block;
		width: 100%;
		padding-bottom: 60%;
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
	}
}

/* #################### */
/* ###### Kachel ###### */
/* #################### */
.full-width-darkgrey {
	padding:18px 0 70px 0;
	background:#657278;
	color:#fff;
}

.full-width-darkgrey a {
	color:#fff;
}

.full-width-darkgrey .container { 
	max-width:900px;
}

.full-width-darkgrey h1,
.full-width-darkgrey h2,
.full-width-darkgrey h3,
.full-width-darkgrey h4,
.full-width-darkgrey h5 {
	font-weight:300;
}


.dropdown-toggle::after {
	display:none;
}


/* #################### */
/* ###### Footer ###### */
/* #################### */
.ce-bodytext p {
	line-height:28px;
}
	
/* #################### */
/* ###### Footer ###### */
/* #################### */
footer {
	min-height:540px;
	background-color: #000;
	color:#fff;
	font-size:18px;
}

footer hr {
	border-color:#fff !important;
	opacity:1;
	margin:40px 0;
}

.mainfooter {padding:60px 0;}
.subfooter {background:#3dae48;padding:15px 0;text-align:center;}
.subfooter  a {
    padding: 5px 15px;
    margin-bottom: 6px;
	text-decoration:none;
	font-size:14px;
}

footer h2 {
	font-size:18px;
	font-weight:bold;
	margin-bottom:35px;
}

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

footer a:hover { 
	background:none;
}

.footer-nav li:hover > a {
		background:none;
		color:#fff;
}

.footer-nav {
	justify-content:center;
}

#c12 p,#c13 p {margin:0;}

/* ####################### */
/* ###### Powermail ###### */
/* ####################### */
.tx-powermail {
	padding:50px 0;
}

.powermail_form h3,
.powermail_legend {
	display:none;
}

.powermail_captchaimage {
	margin-top:10px;
}

/* #################### */
/* ###### MOBILE ###### */
/* #################### */
@media (min-width:992px){

}


@media (max-width:1199px){

}

@media (max-width:991px){
	#header li.nav-item a {border-left:0 none !important;border-right:0 none !important;font-size:18px !important;padding:15px 15px !important;}
	#header li.nav-item {border: 0 none;padding-top: 0px; padding-bottom: 0px;}
	.dropdown-menu {margin:0 !important;padding:0 !important;}
	.subheader-pipe.first, .subheader-pipe.last {display:none;}
	.content_inner {padding-top:15px;}
	.frame-space-after-large {margin-bottom:2em;}
	..frame-space-before-medium {margin-bottom:1em;}
}

@media (max-width:767px){
	.h1, h1 {
		font-size: 30px;
	}
	.h2, h2 {
		font-size: 26px;
	}
	.h3, h3 {
		font-size: 22px;
	}
	.h4, h4 {
		font-size: 18px;
	}
	.h5, h5 {
		font-size: 14px;
	}
	.fa-bars {
		font-size: 30px;
		padding: 0px 0;
	}
	footer h2 {
	  margin-bottom: 5px;
	  line-height: 20px;
	}	
}

@media (max-width:520px){
	#subheader .frame-type-text, #subheader .subheader-pipe {display:none;}
}

@media (max-width:450px){
	.subheader-pipe.middle {display:none;}
}
@media (max-width:375px){
	.h1, h1 {
		font-size: 26px;
	}
	.h2, h2 {
		font-size: 22px;
		line-height:44px;
	}
	.h3, h3 {
		font-size: 18px;
	}
	.h4, h4 {
		font-size: 16px;
	}
	.h5, h5 {
		font-size: 14px;
	}	
}

.navbar-toggler-icon {color:#000;}

.lang-menu img {
	height:20px;
	width:auto;
	border:1px solid #fff;
	margin-top:-2px;
}

.lang-menu.active img {
	opacity:0.5;
}

