
/* dienstgeberservice

	14px = 0.7rem
	16px = 0.8rem
	18px = 0.9rem
	24px = 1.2rem
	26px = 1.3remf
	31px = 1.55rem
	37px = 1.85rem
	42px = 2.1rem
	43px = 2.15rem
	51px = 2.55rem

*/

.tools {
display:none;
}

.meta {
display:none;
}

/* meineSV colors
green: #008e5c
bg_green: #008e5c
bg_blue: #87cacf

custom1: changes standard to green
custom3: makes contentline without padding
custom5: makes lines to special accordion lines
custom8: line with less margin-bottom and margin-top
custom9: 3 columns overlapping image in center
custom4: service-list-line
*/


/*meineSV special*/

.tile .text .size_25pc {
	max-width: 130px;
}

.textshadow_black {
	text-shadow: 2px 0px 4px rgba(0,0,0,.7);
}

.textshadow_white {
	text-shadow: 2px 0px 4px rgba(255,255,255,.7);
}

/*service list*/


body #esv-header {
height: 105px;
}

body #esv-header .logo img {
height: 90px;
}

#esv-content_mitnav .text h1 {
margin-top: 50px;
font-weight: 500;
color:  #008e5c;
}

#esv-content_mitnav > div.custom4:nth-child(odd) {
	background: #f5f8f8;
}

.contentline.custom4 {
	padding: 20px 0;
	
}.contentline.custom4 .tile {
	margin: 0;
}

.contentline.custom4 .tile .text {
	padding: 10px;
}

.custom4 .columns4_layout .tile:first-child  {
	max-width: 130px;
}

.custom4 .columns4_layout .tileimg {
	max-width: 110px;
}

.custom4 .columns4_layout .tile:nth-child(2)  {
	flex: 1;
}

.custom4 .tile:nth-child(3) .esvlink {
	color: white;
	display: inline-block;
	width: 100%;
	border-radius: 14px;
	padding: 3px 10px;
	line-height: 1rem;
	white-space: nowrap;
	font-weight: 300;
	margin-bottom: 3px;
	background: rgb(160,170,180);
	font-size: .85rem;
	vertical-align: middle;
	min-height: 24px;
	text-decoration: none;
}

.custom4 .tile:nth-child(3) .esvlink .icon_small {
	display: none;
}

.custom4 .tile:nth-child(3) .esvlink:before {
	content: '';
	width: 7px;
	height: 7px;
	transform: rotate(45deg);
	border: 1px solid white;
	display: inline-block;
	margin: 0 8px 0 0;
	border-left: none;
	border-bottom: none;
	vertical-align: 1px;
}

@media (max-width: 960px) {
	
	.custom4 .columns4_layout .tile:first-child  {
		max-width: 130px;
	}
	
	.custom4 .columns4_layout .tile:last-child  {
		width: 33%;
	}
	
}

@media (max-width: 600px) {

	html {
		font-size: 14px;
	}

	.custom4 .columns4_layout .tile:last-child  {
		width: 100%;
		padding-left: 130px;
	}
	
}

@media (max-width: 400px) {

	.custom4 .columns4_layout .tile:nth-child(2),
	.custom4 .columns4_layout .tile:first-child  {
		max-width: 100%;
		width: 100%;
		flex: none;
	}


	.custom4 .columns4_layout .tile:last-child  {
		padding-left: 0;
	}
	
}



/*end meineSV special*/



nav:focus,
ul:focus,
dd:focus,
div:focus {
     outline: none;
}

body,
html {
   font-size: 17px;
   line-height: normal;
   color: rgb(0,0,0);
   font-weight: 300;
   font-family: 'Roboto', sans-serif;
}

#esv-content_with_nav,
#esv-content_mitnav { /*old*/
   display : block;
}

.esv-application #esv-container,
#esv-main {
   width: 100%; /*old*/
}

.titelzone .titeltext, /*old*/
.detail, .onlydetail {
   padding-left: 0;
}

.titelzone /*old*/ {
   padding-top: 40px;
}


a {
   cursor: pointer;
   color: rgb(0,142,92);
}

a:visited,
a:active,
a:focus,
a:hover {
   color: #57575a;
}

.text a {
   font-weight: 400;
}

.bg_color2 a,
.bg_color1 a {
	color: #fff;
}

.colored {
   color: rgb(0,142,92);
}

.bg_colored {
     background: rgb(255,255,255);
}

hr,
hr.zonecloser,
.text hr {
   background: none;
   margin: 20px 0;
   border-color: rgb(0,142,92);
}

hr:not(.dashed):not(.dotted):not(.hidden_clearer) {
   border-bottom: 1px solid rgb(0,142,92); }

.titel, /*very old*/
h1, h2, h3, h4, h5, h6,
.cat,
.text blockquote {
   font-weight: normal;
   font-family: 'Roboto', sans-serif;
	text-transform: none;
	letter-spacing: .05rem;
}

h6 {
   font-weight: 300;
   color: black;
   font-family: 'Roboto', sans-serif;
}

.bg_color1 h1, .bg_color1 h2, .bg_color1 h3, .bg_color1 h4, .bg_color1 h5,
.bg_color2 h1, .bg_color2 h2, .bg_color2 h3, .bg_color2 h4, .bg_color2 h5,
.bg_color1 .text blockquote, .bg_color2 .text blockquote {
   color: rgb(255,255,255);
}


.text b, .text strong {
   font-weight: 400;
}

.text h1 b, .text h2 b, .text h3 b, .text h4 b, .text h6 b, .text blockquote b {
   font-weight: 700;
}

.tile.free_column .text,
.freetext.text {
   font-size: 1.059rem;
   line-height: 1.3rem;
   padding: 0;
}

.freetext.text p {
   /*clear: both;*/
}

.titlezone h1,
.titelzone h1, /*old*/
.titel { /*very old*/
   color: rgb(0,0,0);
}

.text h1,
.bigimage_teaser .text h2 {
   font-size: 2.692rem;
   line-height: 2.8rem;
   padding-right: 0;
}

.text h1 {
   margin: 0 0 20px;
   font-size: 2.235rem;
   line-height: 2.353rem;
	font-weight: 300;
}

.text h2 {
   font-size: 2.235rem;
   line-height: 2.353rem;
   padding-right: 0;
   margin: 0 0 20px;
  	font-weight: 300;
    color: black;
}

.text h3 {
   font-size: 1.55rem;
   line-height: 1.85rem;
   margin: 0 0 15px;
   color: rgb(0,142,92);
	font-weight: 300;
}

.text h4 {
   font-size: 1.2rem;
   line-height: 1.3rem;
   margin: 0 0 15px;
}

.text h5 {
   font-size: 1rem;
   line-height: 1.2rem;
   margin: 10px 0 20px;
   margin: 0 0 10px;
}

.text h6 {
     font-size: 1rem;
     line-height: 1.15rem;
   margin: 0 0 3px 0;
}

.text ol,
.text ul {
   padding-left: 40px;
}

.text li {
   padding: 5px 0;
}


.text blockquote {
   font-size:  1.2rem;
   line-height: 1.55rem;
   width: 80%;
   display: block;
   margin: 0 auto;
   padding: 15px 0;
   color: rgb(0,142,92);
   font-style: italic;
}

.text blockquote .quote_end,
.text blockquote .quote_start {
	display: none;
}

/*
.text blockquote .quote_end,
.text blockquote .quote_start {
   display: block;
   position: absolute;
   color: rgb(0,142,92);
   font-family: 'Adamina', serif;
   font-size: 8.5rem;
   line-height: 8.5rem;
   width: 65px;
   height: 50px;
   right: 0;
   top: 20px;
}

.text blockquote .quote_end {
   right: auto;
   top: auto;
   left: 0;
   bottom: 23px;
}


.text blockquote:after,
.text blockquote:before {
     content: '';
     display: block;
     border-top: 3px solid rgb(0,142,92);
     width: 75px;
     margin: 0 auto;
     position: relative;
}

.text blockquote:after {
   bottom: -15px;
}
*/

.light a,
.light {
   /*color: white;*/
}

video {
	width: 100%;
	height: auto;
	max-width: none;
}

.esv-arrow li::before {
    content: "";
    display: inline-block;
	border: 2px solid rgb(0,142,92);
    border-bottom: none;
    border-left: none;
    margin: 0 15px 2px -10px;
    width: 12px;
    height: 7px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
}


/*PVE spcecial - green part*/

.custom1 a {
   color: #008e5c;
}

.custom1 h1, .custom1 h2, .custom1  h3, .custom1 h4, .custom1 h5,
.custom1 .cat,
.custom1 .text blockquote {
   color: #008e5c;
}

.bg_color1 .custom1 h1, .bg_color1 .custom1 h2, .bg_color1 .custom1 h3, .bg_color1 .custom1 h4, .bg_color1 .custom1 h5 {
	color: white;
}

/*header*/

#mobilenavjump {
   display: none;
}

#esv-header {
   height: 155px;
   box-shadow: 0 0 30px rgba(0,0,0,.1);
}

#esv-header .logo {
   top: 0px;
   z-index: 12;
}

#esv-header .logo img {
   height: 130px;
     margin-top: 5px;
}

header .menuicon {
   background: none;
   float: right;
	z-index: 11;
	position: relative;
}


/*fixed header*/

#esv-header.fixed {
   position: fixed;
   top: 0;
   left: 0;
   height: 50px;
   transition: all .2s;
}

#esv-header.fixed .logo {
   width: 280px;
   overflow: hidden;
   transition: all .2s;
   position: relative;
   z-index: 21;
	top: 3px;
}

#esv-header.fixed .logo img {
   height: 40px;
   max-width: none;
   margin-top: 2px;
   transition: all .2s;
}

.fixed .tools {
   display: none;
}

.fixed #esv-content_mitnav {
	margin-top: 105px;	
}

/*footer*/


footer {
   min-height: 300px;
   background: #dfe7e7;
	position: relative;
	width: 100%;
	float: left;
}


.footerlogo img {
   width: 90%;
   max-width: 80px;
}

footer .contentline > .center > .freetext {
	margin: 0;
}

footer .esvlink {
	font-size: 0.7rem;
	color: black;
	font-weight: 300;
	text-decoration: none;
}

footer img.size_25pc {
	max-width: 230px;
}

.top {
	color: white;
	text-decoration: none;
	text-transform: lowercase;
	font-weight: 500;
}

.cookie_check {
    border-radius: 0;
    font-size: .8rem;
}

.cookie_check a.esvlink {
    color: white;
    font-size: .8rem;
    text-decoration: underline;
}

/*navigation*/

nav.main, nav.dropdown { /*hide mainnav*/
   display: none;
}

#esv-navigation {
   position: absolute;
   width: 100%;
   top: -60px;
   background: none;
   min-height: 0;
   z-index: 11;
}

.fixed #esv-navigation {
   position: fixed;
   top: 0;
   z-index: 20;
   height: 0;
}

#esv-navigation .left {
   position: relative;
}

#esv-navigation .left > ul {
   padding: 0 0 0 370px;
   transition: all .2s;
}


.fixed #esv-navigation .left > ul {
   padding: 0px 0 0 370px;
   transition: all .2s;
}

.fixed #esv-navigation .left a {
   transition: all .2s;
	padding-bottom: 9px;
}

.fixed #esv-navigation .left .hide-in-sub.current-menu-ancestor
.hide-in-sub.current-menu-ancestor > ul.sub-menu {
     height: 50px;
     transition: all .2s;
}



#esv-container #esv-navigation .left .hide-in-sub > a:not(.toggle-link) {
}

/*main menu_level*/
#esv-navigation .left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul.sub-menu {
   justify-content: flex-end;
   align-items: flex-end;
   display: flex;
   position: absolute;
   right: 0;
   height: 60px;
   z-index: 30;
   width: 100%;
}

.left .menu-item a {
   font-family: 'Roboto', sans-serif;
   color: #000;
   font-weight: 400;
	letter-spacing: 1px;
     padding: 0 18px 15px;
     text-decoration: none;
	border-bottom: 4px solid white;
}

.left .hide-in-sub.current-menu-ancestor .hide-in-sub.current-menu-ancestor > ul > li.menu-item.has-children > a {
	height: 50px;
	display: flex;
	align-items: flex-end;
}

.left .menu-item  {
   position: relative;
   padding: 0 0 0 0;
}

.fixed .left .menu-item a {
     padding-top: 15px;
}

.current-menu-item > a:hover,
.menu-item > a:hover,
.left .current-menu-item > a,
.current-menu-item > a:focus,
.menu-item > a:focus,
.menu-item.open a,
.current-menu-ancestor .current-menu-ancestor .current-menu-ancestor > a,
nav a:hover {
   color: rgb(0,142,92);
}

.left .menu-item > a:hover,
.left .current-menu-item > a,
.left .current-menu-item > a:focus,
.left .menu-item > a:focus,
.left .menu-item.open a,
.left .current-menu-ancestor .current-menu-ancestor .current-menu-ancestor > a,
nav.left a:hover {
	border-bottom: 4px solid rgb(0,142,92);
}


.left .has-children a.toggle-link,
.left .current-menu-ancestor ul.sub-menu ul.sub-menu,
.left .current-menu-item.no-ancestor ul.sub-menu {

}

/*drop menu*/
/*sub-menu_level*/

.left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul > 
li.menu-item.has-children.hover > ul.sub-menu,
.left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul > 
li.menu-item.has-children:hover > ul.sub-menu {
   display: block;
   position: absolute;
   padding: 9px 9px 18px;
   left: 34px;
   width: 100%;
   top: 50px;
   background: white;
	min-width: 250px;
}

.fixed .left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul > 
li.menu-item.has-children.hover > ul.sub-menu,
.fixed .left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul > 
li.menu-item.has-children:hover > ul.sub-menu {
   top: 40px;
}

.fixed .left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul > 
li.menu-item.has-children.hover > ul.sub-menu,
.fixed .left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul > 
li.menu-item.has-children:hover > ul.sub-menu {
   background: white;
}

.left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul > 
li.menu-item.has-children.hover > ul.sub-menu li a,
.left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul > 
li.menu-item.has-children.hover > ul.sub-menu li,
.left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul > 
li.menu-item.has-children:hover > ul.sub-menu li a,
.left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor > ul > 
li.menu-item.has-children:hover > ul.sub-menu li {
   padding: 9px 0 0 0;
   font-size: .8rem;
   text-transform: none;
   font-weight: normal;
}

.left ul ul ul ul li {
   padding-left: 0;
   border: none;
}


/*no branch open*/
#esv-navigation .left .no-ancestor.has-children a.plus.toggle-link,
#esv-navigation .left .current-menu-ancestor.has-children 
a.minus.toggle-link,
#esv-navigation .left .no-ancestor.has-children.current-menu-item 
a.minus.toggle-link,
.left .current-menu-item.no-ancestor ul.sub-menu,
.left .hide-in-sub.current-menu-ancestor 
.hide-in-sub.current-menu-ancestor .current-menu-ancestor ul.sub-menu {
   display: none;
}

#esv-navigation.lightbox {
   background: rgba(255,255,255,.98);
}

/*hide first levels for mobile*/

.mobilenavi li.hide-in-sub > ul.sub-menu  {
   margin: 0;
   padding: 0;
   border: none;
}

.mobilenavi li.hide-in-sub  {
   padding: 0;
}

/*hide hide-in-sub plus/minus and links*/
#esv-container #esv-navigation .mobilenavi .hide-in-sub > a {
   display: none;
}


/*mobilenavi*/

.mobilenavi .menu-item a {
   font-family: 'Roboto', sans-serif;
   color: #000;
   font-weight: 400;
   text-decoration: none;
	font-size: 1.2rem;
	text-align: center;
}

.mobilenavi .current-menu-item > a,
.mobilenavi .current-menu-item > a:focus,
.mobilenavi .menu-item > a:focus,
.mobilenavi .menu-item > a:hover,
.mobilenavi .menu-item.open a,
.mobilenavi .current-menu-ancestor .current-menu-ancestor .current-menu-ancestor > a {
   color: rgb(0,142,92);
}

.mobilenavi li li li li.menu-item a { 
   font-size: 1rem;
}

.mobilenavi li li:first-child {
   border-top: none;
}

.mobilenavi li {
   border-bottom: none;
}

.mobilenavi li li li {
   padding-top: 15px;
}


/*lines*/


.meta_container {
     float: left;
     width: 100%;
     position: relative;
     background: transparent;
	 padding: 65px 0;
}

.meta_container.bg_color2 {
	background-color: #87cacf;
}

.meta_container.bg_color1 {
	background-color: #008e5c;
}

.meta_container.bg_grey,
.meta_container.grey {
	background-color: #f5f8f8;
}



/*contentlines*/

.contentline {
   padding: 80px 0;
}

.meta_container .contentline {
   padding: 0 0 80px 0;
}

.custom8.contentline {
   margin-bottom: -80px;
  margin-top: -40px;
}


.meta_container > div:last-child {
   padding: 0;
}

.content > .contentline:nth-child(2) {
   padding: 0; /*#top makes it second*/
}

.content > .contentline:nth-child(4):not(.custom4) { /*loginbox*/
   position: absolute;
    padding: 0;
    z-index: 1;
}

.contentline > .center > .freetext {
     margin-bottom: -40px; /*must be a section title*/
}

.contentline > .center > .editFreetext {
  margin-bottom: 0px; /*only for edit-mode*/
}

.contentline .more_link {
   font-style: normal;
   font-family: 'Roboto', sans-serif;
   font-weight: 300;
}

.cover {
   float: left;
   width: 100%;
}


/*loginbox*/

.mysv_loginlinkbox {
	display: block;
	position: absolute;
	background: rgb(242,245,245);
	border: 10px solid white;
	width: 25%;
	min-height: 500px;
	top: 50px;
	right: 20px;
	padding: 0 10px 20px;
	z-index: 101;
}

.mysv_loginlinkbox h2 {
	font-size: 25px;
	line-height: 30px;
	font-weight: 300;
	font-family: "Roboto",sans-serif;
	padding: 0 0 0 70px;
	min-height: 60px;
}

.mysv_loginlinkbox h2 img {
	width: 60px;
	height: auto;
	margin-left: -70px;
	float: left;
}

.mysv_loginlinkbox a {
	display: block;
	text-decoration: none;
	padding: 15px 0 0 30px;
	color: black;
}

.mysv_loginlinkbox a:hover {
	color: rgb(0,142,92);
}

.mysv_loginlinkbox a.button {
	width: 90%;
	height: 48px;
	margin: 30px auto;
	padding: 10px 0 0;
	color: white;
}

.mysv_loginlinkbox a.button:hover {
	margin: 31px auto 29px;
}

.mysv_loginlinkbox a img {
	float: left;
	margin: -2px 5px 0 -30px;
	width: 24px;
}

@media (max-width: 1600px) { /* 1280 = 80%*/

	.mysv_loginlinkbox {
		right: 20px;
		min-height: 200px;
		width: 33.3%;
	}

}

@media (max-width: 1400px) {

	.mysv_loginlinkbox {
		width: 33.3%;
	}

}


@media (max-width: 1180px) {

	.mysv_loginlinkbox {
		width: 33.3%;
	}

}

@media (max-width: 960px) {
	
	.mysv_loginlinkbox {
		width: 100%;
		position: relative;
		float: left;
		right: auto;
		top: auto;
		margin: 25px auto;
	}
	
	.content > .contentline:nth-child(4):not(.custom4) { /*loginbox*/
	   position: relative;
		padding: 0;
		z-index: 1;
	}	
}


/*////////////////
esv-slider*/

.esv-slider {
     overflow: hidden;
     position: relative;
}

.esv-slider_row {
     display: flex;
     position: relative;
}

.esv-slider .bigimage_teaser {
	max-height: 500px;
}


.esv-slider .bigimage_teaser .teaser_text {
   position: absolute;
   top: 0;
   z-index: 3;
   height: 100%;
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
	max-width: 1280px;
	margin-left: calc((100% - 1280px) / 2);
}

.esv-slider .bigimage_teaser .freetext {
	padding-left: 35%;
	width: 100%;
}

.esv-slider .teaser_text.h-align_right {
     justify-content: flex-end;
}

.esv-slider .teaser_text.h-align_left {
     justify-content: flex-start;
}

.esv-slider .teaser_text.v-align_top {
     align-items: flex-start;
}

.esv-slider .teaser_text.v-align_bottom {
     align-items: flex-end;
}

.esv-slider .bigimage_teaser .freetext h2 {
	font-size: 1.55rem;
	line-height: 1.85rem;
	font-weight: 400;
	color: white;
}




.esv-slider .bigimage_teaser {
     
}

.esv-slider .slider_controls {
     position: absolute;
     bottom: 20px;
     width: 100%;
     text-align: center;
}

.current_image_dot {
     opacity: .5;
}


ul.slider_dots li {
     list-style: none;
     display: inline-block;
}

ul.slider_dots li button {
     font-size: 0;
     line-height:0;
     min-height: 0;
     width: 10px;
     height: 10px;
     padding: 0;
     border-radius: 50%;
     cursor: pointer;
     color: transparent;
     border: 0;
     outline: none;
     background: white;
}

.slider_arrow_prev, .slider_arrow_next {
     position: absolute;
     top: 50%;
     left: 0;
}

.slider_arrow_next {
     position: absolute;
     top: 50%;
     left: auto;
     right: 0;
}

@media (min-width: 1500px) {
	.esv-slider .bigimage_teaser {
		max-height: 600px;
	}
}

@media (min-width: 2200px) {
	.esv-slider .bigimage_teaser {
		max-height: 700px;
	}
	.esv-slider .bigimage_teaser .teaser_text {
	 margin-left: 0;
	 padding: 0 2%;
   }
}

@media (max-width: 1300px) {
	
   .bigimage_teaser {
     height: 450px;
   }

   .bigimage_teaser .cover {
     object-fit: cover;
     width: 100%;
     height: 100%;
	  max-width: none;
   }

   .esv-slider .bigimage_teaser .teaser_text {
	 margin-left: 0;
	 padding: 0 2%;
   }

}

@media (max-width: 960px) {
	
   .bigimage_teaser .cover {
	  width: auto;
	}
	
	.esv-slider .bigimage_teaser .freetext {
		padding-left: 50%;
	}	
	
 }

@media (max-width: 750px) {
	
	.bigimage_teaser .cover {
	  margin-left: -10%;
	}
	
	.bigimage_teaser .teaser_text {
   		bottom: 150px;
	}
}


@media (max-width: 600px) {

	.bigimage_teaser .cover {
	  margin-left: -30%;
	}
	
}



/*////////////////
bigimage_teaser*/

.bigimage_teaser {
   position: relative;
   overflow: hidden;
   z-index: 0;
}

.fullwidth:not(.esv-slider) .bigimage_teaser {
	height: 450px;
}

/*
.bigimage_teaser .teaser_text {
   position: absolute;
   bottom: 180px;
   z-index: 3;
   width: 100%;
   display: flex;
   align-items: center;
   justify-content: center;
}

.bigimage_teaser.cutout .freetext h3, .bigimage_teaser.cutout .freetext h1 {
   font-size: 2.15rem;
   line-height: 2.55rem;
   margin: 0;
   color: rgb(0,0,0);
	width: 50%;
}

.bigimage_teaser.cutout .freetext h2 {
   font-size: 1.2rem;
   line-height: 1.4rem;
   margin: 0 0 15px 0;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	color: black;
	width: 50%;
}

.h-align_right h2, .h-align_right h3 {
	text-align: right;
	float: right;
	clear: both;
}
*/


/*////////////////
header_tile*/

.headertile_container {
     display: none;
}


/*////////////////
text_banner


.textimage_banner {
   overflow: hidden;
   position: relative;
}

.textimage_banner .freetext {
   position: absolute;
   top: 24px;
   left: 24px;
}

.textimage_banner .freetext h2 {
   font-size: 2.692rem;
   line-height: 2.8rem;
   margin: 0;
}


.textimage_banner .more_link_box {
   position: absolute;
   bottom: -40px;
   right: -20px;
   transform: rotate(10deg);
   min-height: 150px;
   padding: 18px;
}

.textimage_banner .more_link {
   transform: rotate(-10deg);
   font-size: 1rem;
   font-weight: 500;
   padding: 28px 38px 18px 18px;
}
*/



/*////////////////
column_layouts*/


.column1_layout,
.columns2_layout,
.columns3_layout,
.columns4_layout {
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
   align-items: stretch;
   margin: 0;
   padding: 0;
   list-style: none;
   width: 100%;
}

.column1_layout > div,
.column1_layout > li {
   width: 100%;
}

.columns2_layout > div,
.columns2_layout > li {
   width: 49%;
}

.columns2_layout > div.free_column,
.columns2_layout > li.free_column {
   width: 48%;
}

.columns3_layout > div,
.columns3_layout > li {
   width: 32%;
}

.columns3_layout > div.free_column,
.columns3_layout > li.free_column {
   width: 31%;
}

.columns4_layout > div,
.columns4_layout > li {
   width: 23.5%;
}

/*tiles*/

.tile {
   margin-bottom: 18px;
   position: relative;
   overflow: hidden;
}

.contentline.custom9 {
	padding-bottom: 80px;
}

.custom9 .tile {
	background: #f5f8f8;
}

.custom9 .tile .text h4 {
	color: rgb(0,142,92);
}

.custom9 .tile .text {
	padding: 20px;
}

.custom9 .columns3_layout .tile:nth-child(2) {
	background: transparent;
	margin-bottom: -80px;
}

.custom9 .columns3_layout .tile:nth-child(2) .tileimg {
	 max-height: 450px;
}

@media (max-width: 960px) {

	.custom9 .columns3_layout > div {
		width: 100%;
	}
}



div.columns2_layout div.tile:last-child,
div.columns2_layout div.tile:nth-last-child(2),
ul.columns2_layout li.tile:last-child,
ul.columns2_layout li.tile:nth-last-child(2) {
   margin-bottom: 0px;
}

a.tilelink, a.tilelink a {
   text-decoration: none;
}

.tile.image_right, .tile.image_left {
     display: flex;
     justify-content: space-between;
}

.tile.image_right .imagebox,
.tile.image_left .imagebox,
.tile.image_right .textbox,
.tile.image_left .textbox {
     width: 48%;
}

.tile.image_right .imagebox {
     order: 2;
}



.tile .tileimg {
   display: block;
   margin: 0 auto;
}

.tile .text, .tile:not(.free_column) h3 {
   padding-left: 10px;
   padding-right: 10px;
}

.tile:not(.free_column) h3 {
   margin: 18px 0;
}

.tile .text {
   padding-bottom: 60px;
   float: left;
   width: 100%;
}

.tile .text small {
   font-size: .8rem;
	
}

.tile .text pre {
   font-size: .8rem;
	font-family: 'Roboto', sans-serif;
	font-weight: 300;
	margin: 0;
	white-space: normal;
}

.tile .more_link {
   font-size: 1rem;
}


/*imagetile
bg_yellow is the defining class????*/

.tile.bg_yellow picture img {
	border-radius: 50%;
}


/*teamtile

.team.tile {
     flex-flow: wrap;
}

.tileline {
     width: 100%;
     display: flex;
}

.tileline .textbox,
.tileline .imagebox {
     width: 50%;
}

.team .textbox > h3 {
     text-transform: uppercase;
     font-size: 1.2rem;
     line-height: 1.3rem;
}

.team .tileline .text {
     padding-bottom: 0;
}

.team .tileline:last-child .text {
     border-left: 1px solid rgb(0,142,92);
}
*/

/*
@media (min-width: 1280px) {

   .columns2_layout .tile:not(.free_column) .text {
     width: 66%;
   }
}
*/


/*articles*/

.article {
	position: relative;
}

div.columns2_layout.featured div.article:nth-last-child(2):first-child,
ul.columns2_layout.featured li.article:nth-last-child(2):first-child,
.article {
   margin-bottom: 60px;
}

div.columns2_layout div.article:last-child,
div.columns2_layout div.article:nth-last-child(2),
ul.columns2_layout li.article:last-child,
ul.columns2_layout li.article:nth-last-child(2) {
   margin-bottom: 0px;
}

.column1_layout .article:last-child {
	margin-bottom: 0;
}

.featured .article:first-child {
   width: 100%;
}

.article .imagebox img {
   width: 100%;
   float: left;
}

.article .imagebox {
   width: 64%;
   float: right;
   overflow: hidden;
	min-height: 1px;
	max-height: 400px;
	background-color: #87cacf;
	margin-bottom: 20px;
}

.featured .article:first-child .imagebox img,
.column1_layout .imagebox img {
   width: 100%;
}

.textbox {
   width: 32%;
   float: left;
}

.article .textbox h3 {
   font-size: 1.55rem;
   line-height: 1.85rem;
   margin: 0 0 18px;
}

.article .textbox .text {
	font-size: .9rem;
}

.cat,
.article .more_link {
   font-size: 1rem;
}

.article a {
   text-decoration: none;
   color: rgb(0,0,0);
}

.article a:hover {
   color: #1c819c;
}

.article a.more_link {
   font-size: 1rem;
   color: rgb(0,142,92);
   position: absolute;
	left: 32%;
	top: 250px;
	background: white;
	border: 1px solid rgb(0,142,92);
	min-width: 130px;
	display: flex;
	min-height: 40px;
	align-items: center;
	justify-content: center;
}

.article a.more_link:hover {
	background: rgb(0,142,92);
	color: white;
	text-decoration: none;
}

/*header*/


.articlelist_header {
	margin-bottom: 60px;
	background-color: #f5f8f8;
	padding: 50px 0 25px !important;
}

.articlelist_header .columns3_layout div:last-child a {
    text-align: right;
	width: 100%;
	display: block;
	padding-right: 60px; 
	position: relative;
	text-decoration: none;
}

.articlelist_header .columns3_layout div:last-child a small {
    font-weight: 300;
	color: rgb(0,0,0);
}

.articlelist_header .columns3_layout div:last-child a img {
	top: -2px;
	right: 0;
	position: absolute;
	width: 50px;
}

/*detail*/

.article_detail .titlezone {
	background: #fff;
	box-shadow: 0 1px 1px 1px rgba(0,0,0,.2);
	border: 1px solid white;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	align-content: center;
	min-height: 180px;
	width: 50%;
	padding: 0 20px;
	position: absolute;
	top: 360px;
}

.article_detail .titlezone h1,
.article_detail .titlezone h6 {
	width: 100%;
	padding: 0;
	margin: 0;
}

.article_detail .titlezone h6 {
	font-size: 1rem;
	line-height: 1rem;
}

.article_detail .imagebox {
	height: 450px;
	overflow: hidden;
}

.article_detail .imagebox img {
	width: 100%;
    height: 100%;
    object-fit: cover;
}

.article_detail .textbox {
	width: 100%;
	margin-top: 130px;
	padding: 0 10% 60px;
}

.article_detail .textbox h2 {
   font-size: 1.2rem;
   line-height: 1.3rem;
   margin: 15px 0;
}




/*article in tile*/

.tile.newslist > ul {
     list-style: none;
     display: flex;
     flex-flow: wrap;
     margin: 0;
     padding: 0;
}

.tile.newslist .imagebox,
.tile.newslist .textbox {
     width: 50%;
}

.newslist .article {
     margin-bottom: 20px;
}

.newslist .article .text {
     padding-bottom: 0px;
}

.tile.newslist.textonly .textbox {
     width: 100%;
     border-left: 1px solid rgb(0,142,92);
}

.tile.newslist:not(.free_column) h3 {
     margin-top: 0;
}

.tile.newslist .textbox > h3 a {
     color: rgb(0,142,92);
}




/*detail pages*/


.tile.free_column .text {
   padding: 0;
}

.columns2_layout .tile.columns2 {
   width: 100%;
}

.columns3_layout .tile.columns2 {
   width: 64%;
}

.columns4_layout .tile.columns2 {
   width: 47%;
}

.columns4_layout .tile.columns3 {
   width: 70.5%;
}

.freetext .size_50pc {
   max-width: 48%;
   margin-left: 4%;
}

.infobox {
   border: 1px solid rgb(0,142,92);
   color: rgb(0,142,92);
   background: none;
   padding: 18px
}

.detail_meta {
   border-top: 1px solid rgb(0,142,92);
   border-bottom: 1px dotted rgb(0,142,92);
   color: rgb(0,142,92);
   display: flex;
   justify-content: space-between;
   padding: 10px 0;
   font-size: 1rem;
   margin: 20px 0 40px;
   flex-wrap: wrap;
}

.detail_meta .share {
   text-align: right;
}

/*share


#socialshareprivacy {
   display: inline-block;
   height: 25px;
   width: 190px;
   margin-top: -12px;
}

.social_share_privacy_area {
   margin: 10px 0 !important;
}

.switch,
.settings_info {
   display: none;
}

.social_share_privacy_area .facebook {
   width: 70px;
}
.social_share_privacy_area .twitter,
.social_share_privacy_area li div.tweet {
   width: 60px;
}

.social_share_privacy_area .gplus,
.social_share_privacy_area li div.gplusone {
   width: 49px;
}
*/

/*////////////////
accordion*/

.custom5.contentline {
	background-color: #f5f8f8;
	padding: 0;
	margin-bottom: 0px;
}

.custom5.contentline .center {
	margin-top: -45px;
	margin-bottom: -55px;
}

.accordion {
   margin: 0;
}

.accordion dt {
   list-style: none;
	font-family: 'Roboto', sans-serif;
   font-size: 1.2rem;
   line-height: 1.3rem;
   position: relative;
	min-height: 80px;
}

.custom5 .accordion dt {
   background-color: #87cacf;
   font-size: 1.2rem;
   line-height: 1.3rem;
	box-shadow: 0 1px 1px 1px rgba(0,0,0,.2);
	min-height: 90px;
}

.accordion dt.open {
   background-color: #87cacf;
	margin-bottom: 0;
}

/*
.accordion dt.open:after {
   content: '';
   position: absolute;
   display: block;
   background: rgb(249, 178, 0);
   width: 20px;
   height: 20px;
   transform: rotate(45deg);
   bottom: -7px;
   left: 50%;
   margin-left: -8px;
}*/

.accordion dt a {
   color: white;
   display: flex;
   width: 100%;
   padding: 18px;
	min-height: 80px;
   text-decoration: none;
	align-items: center;
}

.custom5 .accordion dt a {
	min-height: 90px;
}

.accordion dt a img {
   transform: rotate(180deg);
   margin-right: 18px;
}

.accordion dt.open a img  {
   transform: none;
}

.accordion dd {
   margin: 0 0 40px 0;
   padding: 0 18px;
}

.custom5 .accordion dd {
   padding: 30px 18px 84px 18px;
}

.ac_control.open img {
   transform: rotate(0deg);
}

.accordion .ac_content {
   display: none;
}



/*searchlist

.searchlist h1,
.searchlist .lead {
   text-align: center;
}

.searchlist .search {
   margin: 0 auto;
   float: none;
}

.searchlist .searchbutton[type="submit"] {
   position: absolute;
}

.searchlist .list {
   padding-right: 5%;
}

.searchlist .textbox {
   width: 100%;
}

.searchlist .listline .text {
   font-size: 1rem;
}
*/

/*newsletter form

form[name='root:newsletterForm'] legend {
   display: none;
}

form[name='root:newsletterForm'] fieldset div:last-child,
form[name='root:newsletterForm'] fieldset label[for='categories'],
form[name='root:newsletterForm'] fieldset select[name='categories'] {
   display: none;
}

form[name='root:newsletterForm'] input[type='submit'] {
   background: rgb(0,142,92);
   width: 100% !important;
}
*/

/*formulargenerator
.pbr-body used as center



.esv-application #esv-content_mitnav {
   display: block;
   width: 100%;
   padding: 0;
}
*/


/*overlays

.overlay {
      top: 0px;
    left: 0;
      position: fixed;
      width: 100%;
      height: 100%;
      overflow: scroll;
      background: rgba(242, 245, 245, 0.98);  /*sv*//*
      padding: 40px 10%;
      display: none;
      z-index: 300;
    -webkit-overflow-scrolling: touch;
}

.close_overlay {
   position: absolute;
   right: 20px;
   top: 20px;
}

.close_overlay img {
   height: 60px;
   width: auto;
}

.overlay legend {
   font-size: 1.55rem;
   line-height: 1.85rem;
   font-weight: normal;
   color: #000;
}
*/

/*control buttons esvlink*/
a.esvlink_button_right, a.esvlink_button_left, a.esvlink_button_center {
   width: 70%;
   display: flex;
   min-height: 50px;
   color: white;
   font-weight: 300;
	letter-spacing: 1px;
   align-items: center;
   text-decoration: none;
   margin: 18px 0;
   padding: 10px 15px;
   font-size: 1rem;
   border: 1px solid white;
   background: #008e5c;
   justify-content: center;
   text-align: center;
	border-radius: 4px;
}

a.esvlink_button_right.color2, a.esvlink_button_left.color2, a.esvlink_button_center.color2 {
	background: #008e5c;
}

a.esvlink_button_right {
   float: right;
}

a.esvlink_button_center {
   margin-left: auto;
	margin-right: auto;
}

a.esvlink_button_left:link,
a.esvlink_button_left:hover,
a.esvlink_button_left:active,
a.esvlink_button_left:visited,
a.esvlink_button_center:link,
a.esvlink_button_center:hover,
a.esvlink_button_center:active,
a.esvlink_button_center:visited,
a.esvlink_button_right:link,
a.esvlink_button_right:hover,
a.esvlink_button_right:active,
a.esvlink_button_right:visited {
   border: 1px solid white;
}

.esvlink_arrow_down,
.esvlink_arrow_right {
	padding-left: 25px;
	text-decoration: none;
}

.esvlink_arrow_right:before {
	content: "";
    display: inline-block;
	border-right: 2px solid #1c819c;
	border-top: 2px solid #1c819c;
    margin: 0 15px 2px -10px;
    width: 10px;
    height: 10px;
    transform: rotate(45deg);
	
}

.bg_color2 .esvlink_arrow_right:before,
.bg_color1 .esvlink_arrow_right:before {
	border-right: 2px solid #fff;
	border-top: 2px solid #fff;
}

.esvlink_arrow_down:before {
	content: "";
    display: inline-block;
	border-right: 2px solid #1c819c;
	border-top: 2px solid #1c819c;
    margin: 0 15px 2px -10px;
    width: 10px;
    height: 10px;
    transform: rotate(135deg);
	
}

.bg_color2 .esvlink_arrow_down:before,
.bg_color1 .esvlink_arrow_down:before {
	border-right: 2px solid #fff;
	border-top: 2px solid #fff;
}




/*////////////////////////////////////////////////////////////////////////////////////////
respond*/

/*fluid cetered frame*/

.center,
.contentline > .right, /*behave like center*/
.pbr-body,
#esv-navigation .left {
   float: none;
   width: 1280px;
   margin: 0 auto;
}



@media (max-width: 1300px) {

   .center,
   .contentline > .right, /*behave like center*/
   .pbr-body,
   #esv-navigation .left {
     width: 96%;
   }

}

@media (max-width: 960px) {


   center,
   .contentline .center,
   .contentline > .right, /*behave like center*/
   .pbr-body,
   #esv-navigation .left {
     width: 94%;
   }

   .searching #search {
     height: 90px;
   }

   html {
     font-size: 18px;
   }
	
	#esv-header .center {
     width: 100%;
   }

   header.fixed .menuicon {
     display: block;
     padding: 10px 0;
   }
	
	#esv-header.fixed .logo {
	   width: 80px;
	}

   .searchicon {
       display: none;
   }

   .tools {
     z-index: 2;
     width: 102px;
     top: 0;
   }

a[href='#navigation'],
   a[href='#esv-navigation'] {
   display: none;
   }

   #mobilenavjump {
   display: block;
   }

   #esv-content_without_nav {
     width: 100%;
   }

   #esv-header {
     height: 50px;
   }
	
  #esv-header .logo  {
     left: 2%;
	 top: 0px;
   }

   #esv-header .logo img {
     height: 50px;
     margin-top: 0px;
   }
	
	.fixed #esv-content_mitnav {
		margin-top: 50px;	
	}
	
	.meta_container, .contentline {
		padding: 60px 0;
	}
	
	.meta_container .contentline {
   		padding: 0 0 60px 0;
	}
	
	.custom8.contentline {
   		margin-bottom: -60px;
	}
	
   .columns4_layout > div,
   .columns4_layout > div.free_column,
   .columns4_layout > li,
   .columns4_layout > li.free_column {
     width: 50%;
   }
	
	.columns4_layout .tile.columns2
	.columns3_layout .tile.columns2,
   	.columns3_layout > div,
   	.columns3_layout > div.free_column,
   	.columns3_layout > li.free_column {
		width: 100%;
	}
	
	 a.esvlink_button_right, a.esvlink_button_left, a.esvlink_button_center {
     width: 48%;
   	}

}



@media (max-width: 800px) {
	
	.article_detail .titlezone {
	  width: 100%;
	}
	
   .columns3_layout > li,
   .columns2_layout .article .imagebox,
   .columns2_layout .textbox {
     width: 100%;
   }

   .article {
     margin-bottom: 50px;
   }

   .columns3_layout > div.bg_yellow .tileimg
   .columns3_layout > li.bg_yellow .tileimg {
     max-width: 50%;
     margin: 0 0;
   }

   .columns2_layout .textbox {
     margin-top: 18px;
   }
	
   .column1_layout .article .imagebox,
   .column1_layout .textbox {
     width: 100%;
   }

   .textimage_banner {
     min-height: 300px;
   }

   .textimage_banner img {
     object-fit: cover;
     width: 100%;
     height: 100%;
     min-height: 300px;
   }
	
	
	.articlelist_header .columns3_layout div:first-child {
		width: 100%;
		margin: 0;
	}
	
	.articlelist_header .columns3_layout div:nth-child(2) {
		width: 66.6%;
		margin: 0;
	}
	
	.article a.more_link {
		left: auto;
		top: auto;
		right: 0;
		bottom: 0px;
	}
	
	.article_detail .titlezone {
		top: 300px;
	}
	
	.article_detail .imagebox {
     height: 300px;
	}
	
	.article_detail .imagebox img {
     object-fit: cover;
     width: 100%;
     height: 100%;
	}
	
	.article_detail .textbox {
     margin-top: 200px;
	padding: 0;
	}

}


@media (max-width: 600px) {

   html {
     font-size: 16px;
   }
	
   .text h1,
   .textimage_banner .freetext h2,
   .bigimage_teaser .text h2 {
   }

   .tile:not(.free_column) h3 {
   }

   .text h2 {
   }

   .text h3 {
   }

   .text blockquote {
   }

   .bigimage_teaser {
   }

   .bigimage_teaser .teaser_text {
   }

   .bigimage_teaser.cutout .freetext {

   }

   .columns3_layout .tile.columns2,
   .columns2_layout > div,
   .columns3_layout > div,
   .columns2_layout > div.free_column,
   .columns3_layout > div.free_column,
   .columns4_layout > div.free_column,
   .columns2_layout > li,
   .columns2_layout > li.free_column,
   .columns3_layout > li.free_column,
   .columns4_layout > li.free_column {
     width: 100%;
   }

   .column1_layout .article .imagebox,
   .column1_layout .textbox {
     width: 100%;
   }

   .column1_layout .textbox {
     margin-top: 18px;
   }

   div.columns2_layout div.article:nth-last-child(2),
   ul.columns2_layout li.article:nth-last-child(2) {
     margin-bottom: 50px;
   }

   div.columns2_layout div.tile:nth-last-child(2),
   ul.columns2_layout li.tile:nth-last-child(2) {
     margin-bottom: 18px;
   }

   footer .columns4_layout > div {
     width: 100%;
     text-align: center;
   }

   .freetext .size_50pc {
     max-width: 100%;
     margin-left: 0;
   }

   .text blockquote {
     padding: 80px 20px;
   }
	
	.articlelist_header .columns3_layout div:nth-child(2) {
		width: 100%;
		margin-bottom: 18px;
	}
	
	.article a.more_link {
		right: 0;
		bottom: 0;
		position: relative;
		margin-top: 20px;
	}

}


@media (max-width: 400px) {

   .columns3_layout > li.bg_yellow .tileimg,
   .columns3_layout > li.bg_yellow .tileimg {
     max-width: 100%;
   }

   .bigimage_teaser.cutout .freetext  h2 {
   }

}










/*/////////////////////////////////// end*/



#angebotInputError {
   display: none;
   padding: 20px 0px 20px 0px;
}





/*////////////////////////////////// galllery 




.fancybox_gallery {
     overflow: hidden;
     width: 100%;
     position: relative;
   }

   .fancybox_gallery .next,
   .fancybox_gallery .prev {
     height: 100%;
     width: 100px;
     display: flex;
     position: absolute;
     z-index: 2;
     background-color: rgba(255,255,255,.8)
   }

   .fancybox_gallery .next {
     right: 0px;
   }

   .fancybox_gallery .next img,
   .fancybox_gallery .prev img {
     width: 100%;
     height: auto;
   }


   .fancybox_row {
     display: flex;
     position: relative;
   }

   .fancybox_row img {
     width: 400px;
     height: auto;
     opacity: .5;
   }

   .fancybox_row a {
     flex-shrink: 0;
     flex-grow: 0;
     padding: 0 10px;
     position: relative;
   }

   .fancybox_row a:hover:before {
     content: '';
     display: block;
     width: 100%;
     height: 100%;
     background-image: url();
     background-size: contain;
     background-repeat: no-repeat;
     position: absolute;
     opacity: .8;
   }

   .fancybox_gallery_text {
     padding: 30px 0;
   }


   .fancybox_row_dots {
     margin: -30px 0 0 0;
     height: 30px;
     text-align: center;
     position: relative;
     z-index: 200;
   }

   .fancybox_row_dots a {
     width: 15px;
     height: 15px;
     background: rgba(255,255,255,.5);
     margin: 5px;
     border-radius: 50%;
     display: inline-block;
   }

   a.current_image_dot {
     background: rgba(255,255,255,1);
   }

   .current_image img {
   opacity: 1;
   }


   @media (max-width: 960px) {

     .fancybox_gallery .next,
     .fancybox_gallery .prev {
       height: 60px;
       width: 60px;
       padding: 10px;
       top: calc(50% - 30px);
     }

   }

     @media (max-width: 600px) {

     .fancybox_row a:hover:before {
       content: '';
       display: none;
     }

   }

*/






