* {
    padding: 0;
    margin: 0;
}

*, :before, :after {
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-repeat: no-repeat;
}

.clear {
    clear: both;
}

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

.hidden {
    display: none !important;
    visibility: hidden;
}

.visuallyhidden {
    border: 0;
    clip: rect(0000);
    height: 1px;
    overflow: hidden;
    position: absolute;
    width: 1px;
    margin: -1px;
    padding: 0;
}

.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    overflow: visible;
    position: static;
    width: auto;
    margin: 0;
}

.invisible {
    visibility: hidden;
}

.clearfix:before, .page > div:before, .page > section:before, .mainnav ul:before, .layer-entrypoints:before, .grid0:before, .grid1:before, .grid2:before, .grid3:before, footer:before, .clearfix:after, .page > div:after, .page > section:after, .mainnav ul:after, .grid0:after, .grid1:after, .grid2:after, .grid3:after, footer:after {
    content: " ";
    display: table;
}

.clearfix:after, .page > div:after, .page > section:after, .mainnav ul:after, .layer-entrypoints:after, .grid0:after, .grid1:after, .grid2:after, .grid3:after, footer:after {
    clear: both;
}

.margin-bottom {
    margin-bottom: 2em;
}

body {
    background: #fff;
    font-family: "Segoe UI", "Arial", Helvetica, sans-serif;
    line-height: 1.5;
    font-size: 16px;
    color: #333;
    word-wrap: break-word;
}

.h1, h1 {
    font-size: 24px;
    line-height: 1.2;
    font-weight: normal;
}

.h2, h2 {
    line-height: 1.2;
    font-weight: normal;
}

.h3, h3 {
    line-height: 1.2;
    font-weight: bold;
    margin-bottom: 1em;
}

.h4, h4, h5, h6, button, input[type="submit"] {
    font-size: 14px;
    font-weight: 600;
}

h1 {
    color: #FF6600;
    font-size: 24px;
}

h2 {
    color: #FF6600;
    font-size: 18px;
    padding-bottom: 5px;
    clear: left;
}

h3 {
    color: #333;
    font-size: 16px;
    padding-bottom: 5px;
}

a {
    text-decoration: none;
    font-weight: inherit;
    outline: 0;
    color: #0099CC;
    font-weight: bold;
}

a:hover, a:active {
    outline: 0;
    text-decoration: underline;
}

a:focus {
    outline: 0;
}

a > img {
    border: none;
}

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

img.left {
    float: left;
    margin-right: 2em;
    margin-bottom: 2em;
}

img.right {
    float: right;
    margin-left: 2em;
    margin-bottom: 2em;
}

blockquote {
    display: block;
    line-height: 2;
    font-size: 22px;
    font-weight: 300;
    left: -3em;
    border-left: 3px solid #008ab1;
    font-style: italic;
    margin: 2em 0;
    padding: 0 1.8em 0 1.5em;
}

strong, .strong {
    font-weight: 600;
}

em, .em, .pageauthor .authormeta, .pageauthor .authordescription {
    font-style: italic;
}

hr {
    display: block;
    border: none;
    border-top: 1px solid #e5f3f7;
    margin: 2em 0;
}

p {
    padding-bottom: 1em
}

form, fieldset {
    border: none !important;
    margin: 0;
    padding: 0;
}

.border-bottom {
    border-bottom: 1px solid #D6D6D6;
    margin-bottom: 0.5em;
}

.pagebrowser {
    color: #ff6600;
    font-size: 14px;
}

form {
    padding-top: 1em;
    margin-bottom: 3em
}

form.searchform {
    margin-bottom: 2em
}

label {
    color: #5e6d81;
    padding-bottom: 0.2em;
    display: inline-block
}

label.after_checkbox {
    border-left: 1px solid #D6D6D6;
    padding-left: 1.5em;
    margin-left: 0.5em;
    width: 80%
}

label.optional {
    display: none
}

html.lt-ie10 #tx_indexedsearch .grid2 label.optional {
    display: none
}
input[type="text"], input[type="tel"], input[type="email"], select, textarea {
    color: #333;
    width: 100%;
    padding: 10px 15px;
    background: #f1f1f1;
    border: 1px solid #f1f1f1;
    border-top: 1px solid #d0d0d0;
    border-left: 1px solid #d0d0d0;
    margin: 0 0 1em;
}

input[type="text"]:focus, input[type="tel"]:focus, input[type="email"]:focus, select:focus, textarea:focus {
    background: #fff;
    border: 1px solid #f1f1f1;
    border-top: 1px solid #d0d0d0;
    border-left: 1px solid #d0d0d0;
}

input[type="text"].input_search {
    height: 50px;
}

button, input[type="submit"] {
    border: none;
    display: block;
    font-weight: normal;
    font-size: 24px;
    color: #fff;
    background: #0099cc;
    padding: 12px 20px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    margin: 1em 0;
    min-width: 49%;
}

input[type="submit"].submit_search {
    background-color: #FF6600;
    margin: 0;
    height: 50px;
    min-width: 100%;
}

input.checkbox {
    float: left;
    position: relative;
    top: 4px
}


/* powermail */
.tx-powermail {
    background: #f5f5f5;    
    border-radius: 4px;
}
.tx-powermail form {
  padding-top: 0;
}
.tx-powermail h3 {
    margin: 0;
    font-weight: normal;
}
.powermail_fieldset {
    padding: 20px 30px;    
}

.tx-powermail input[type="text"], 
.tx-powermail input[type="tel"], 
.tx-powermail input[type="email"], 
.tx-powermail select, 
.tx-powermail textarea {
    background: #fff;
    border: 1px solid #4d7886 !important;
}
.tx-powermail input[type="text"]:focus, 
.tx-powermail input[type="text"]:focus-visible, 
.tx-powermail input[type="tel"]:focus, 
.tx-powermail input[type="tel"]:focus-visible, 
.tx-powermail input[type="email"]:focus, 
.tx-powermail input[type="email"]:focus-visible, 
.tx-powermail select:focus, 
.tx-powermail select:focus-visible, 
.tx-powermail textarea:focus,
.tx-powermail textarea:focus-visible {
    background: #fff;
    border-color: #FF6600 !important;
}

.powermail_fieldwrap {
    clear: both;
}
.powermail_fieldwrap.layout1 {
    float: left;
    width: 48%;
    margin-right: 2%;
}
  
.powermail_fieldwrap.layout2 {
    clear: none;
    float: right;
    width: 48%;
    margin-left: 2%;
}
@media(max-width:768px) {
    .powermail_fieldwrap.layout1,
    .powermail_fieldwrap.layout2 {
        clear: both;
        float: none;
        width: 100%;
        margin-left: 0;
        margin-right: 0;
    }
}

/*------------------- indexed_search ---------------------------- */

/* Seite: Suche */
.content .tx-indexedsearch-searchbox,
.content .tx-indexedsearch-rules {
  display: none;
}

.content .tx-indexedsearch-rules + .tx-indexedsearch-browsebox {
    display: none;
}

.tx-indexedsearch-noresults {
  font-style: italic;
}

.tx-indexedsearch-searchfor .sword {
  text-transform: capitalize;
}
.tx-indexedsearch-searchfor .sword:before,
.tx-indexedsearch-searchfor .sword:after {
  content: '"';
}

.tx-indexedsearch-res {
    margin-top: 20px;
}

.tx-indexedsearch-icon img {
}
.tx-indexedsearch-title a[href$='.pdf'],
.tx-indexedsearch-title a[href$='.PDF'] {
  padding: 0;
  background: none;
}

.tx-indexedsearch-percent {
  color: #aaa;
  font-size: 80%;
  padding-left: 10px;
}
.tx-indexedsearch-description {
  margin-bottom: 0;
}

.tx-indexedsearch-info {
  color: #AAA;
  font-style: italic;
  font-size: 13px;
}
.tx-indexedsearch-info > * {
    display: inline-block;
}
.tx-indexedsearch-info a {
  color: #AAA;
  text-decoration: underline;
}

.tx-indexedsearch-browsebox ul {
  padding-bottom: 20px;
}
.content .tx-indexedsearch-browsebox li:before {
  content: "";
  display: none;
}
.content .tx-indexedsearch-browsebox li {
  background: none;
  padding: 0;
  float: left;
  display: inline;
  margin: 0 10px 10px 0;
  text-indent: 0;
}
.tx-indexedsearch-browsebox a {
  display: block;
  padding: 6px 13px;
  text-decoration: none;
  background: #DDD;
  color: #333;
}
.content .tx-indexedsearch-browsebox a:hover,
.tx-indexedsearch-browselist-currentPage a {
  background: #333;
  color: #FFF !important;
  text-decoration: none;
}



.l {
    text-align: left
}

.c {
    text-align: center
}

.r {
    text-align: right
}

table {
    width: 100%;
    border-bottom: 1px solid #d6d6d6;
    margin-bottom: 3em
}

table th {
    text-align: left;
    padding: 0.6em 0.5em 0.8em 0
}

table td {
    padding: 0.3em 0.5em 0.3em 0;
    vertical-align: top
}

table tfoot td {
    padding-bottom: 1em;
}

ul {
    margin: 0;
    padding: 0;
    list-style: none
}

.csc-default > ul, .content ul, .cke_editable ul {
    margin-bottom: 1em
}

.csc-default > ul li,
.content ul > li,
aside > ul > li,
.contact_teaser .bottom ul li,
footer .linklist ul li,
.cke_editable ul li {
    list-style: none;
    margin-left: 0;
    padding-left: 25px;
    background: url(../images/list_icon.png) 5px 8px no-repeat;
}
.csc-default > ul.blau li,
.content ul.blau li,
.contact_teaser .bottom ul.blau li,
footer .linklist ul.blau li,
.cke_editable ul.blau li {
    background: url(../images/list_icon_blau.png) 5px 8px no-repeat;
}

ul.list {
    margin: 0 0 3em;
    padding: 0;
    list-style: none
}

ul.list li {
    list-style: none;
    margin-left: 0;
    padding-left: 25px;
    background: url(../images/list_icon.png) 5px 8px no-repeat;
}


ul.toggle-list {
    list-style: none;
    margin: 0 0 3em;
    padding: 0;
}

ul.toggle-list.toggle-list-single-item {
    margin: 0 0 2em;
}

ul.toggle-list > li {
    border: 1px solid #ccc;
    padding: 20px;
    margin: 0 0 1em;
    background: none;
}

ul.toggle-list h2 {
    background: url("../images/arrows.png") no-repeat right 5px;
    padding-right: 2em;
    cursor: pointer;
}

ul.toggle-list h2.opened {
    background-position: right -45px;
}

ul.toggle-list .toggle-content {
    margin-top: 1em;
    display: none;
}

ol {
    margin: 0 0 3em;
    padding: 0;
}

ol li {
    margin-left: 22px;
}

html {
    min-width: 320px;
}

.page, footer {
    width: 100%;
    margin: 0 auto;
}

.page {
    padding-top: 100px;
    padding-bottom: 2em;
}

.folge .page {
    padding-top: 215px
}

.outer_wrap {
    max-width: 1615px;
    margin: 0 auto;
}

.wrapper {
    max-width: 1005px;
    margin: 0 auto;
}

html .header .logo {
    position: absolute;
    left: 0;
    top: 14px;
    z-index: 101;
}

.header {
    background-color: #fff;
    color: #333;
    z-index: 2;
    width: 100%;
    top: 0;
    left: 0;
    padding: 1em 0 0.5em;
    position: fixed;
    border-bottom: 0;
    height: 196px;
}

html.lt-ie9 .header {
    display: block !important;
    opacity: 1;
    height: 175px !important;
}

html.lt-ie9 .layer {
    padding-top: 0;
    margin-top: 196px
}

html.lt-ie9 .layer .keyvis {
    height: 171px !important;
    border-top: 0
}

html.lt-ie9 .layer .contact-bar, html.lt-ie9 .layer > div > div.wrapper {
    display: none
}

.header .wrapper {
    height: 85px
}

.header.skrollable-before {
    z-index: 0
}

.functionbar {
    left: 1em;
    position: fixed;
    top: 0.4em;
    z-index: 20;
}

#page {overflow: hidden;}

.login {
    background: url(../images/symbol_sprite.png) no-repeat 0 -1000px;
    display: none !important;
    height: 47px;
    width: 70px;
    cursor: pointer;
}

.leftsearchform { position: relative; top: 30px }

.leftsearchform a.searchopen {
    background: url(../images/symbol_sprite.png) no-repeat 0 -900px;
    cursor: pointer;
    display: block;
    height: 47px;
    width: 70px;
    text-indent: -999em;
}

.leftsearchform div.openedsearch {
    background: #323A45;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    display: none;
    height: 40px;
    left: 0;
    position: absolute;
    top: 0;
    width: 195px;
    z-index: 99;
    margin-left: 15px;
    margin-top: 1px;
}

.leftsearchform div.openedsearch span.closesearch {
    background: url("../images/closesearch.png") no-repeat 50% 50%;
    cursor: pointer;
    display: block;
    height: 40px;
    left: 0;
    position: absolute;
    top: 0;
    width: 40px;
    z-index: 2;
}

.leftsearchform div.openedsearch input {
    background: none;
    border: none;
    color: #fff;
    font-size: 14px;
    height: 40px;
    margin-left: 40px;
    padding: 0;
    box-shadow: none;
    width: 140px;
}

.leftsearchform form {
    padding: 0;
    margin: 0
}

.header .logo a {
    z-index: 1;
}

.breadcrumb {
    margin: 0;
    padding: 0;
    list-style: none;
    font-size: 13px;
    padding-bottom: 2em
}

.breadcrumb a {
    color: #FF6600;
    font-weight: normal
}

.breadcrumb a:hover,
.breadcrumb li:last-child a {
    color: #0099CC
}

.breadcrumb li:before {
    content: ">";
    padding: 0px 10px;
}

.breadcrumb li {
    display: inline-block;
    margin: 0;
    list-style: none
}

.breadcrumb li:first-child:before {
    display: none;
}

.menuswitch {
    display: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background: url(../images/toggle_icon.png) no-repeat;
    position: absolute;
    cursor: pointer;
    right: 2.5%;
    text-indent: -999em;
    width: 35px;
    height: 35px;
    top: 1.8em;
}

.mainnav {
    top: 33px;
    left: 0;
    z-index: 100;
}

.mainnav .lvl_1 {
    padding-left: 200px
}

.mainnav .lvl_1 > li {
    position: static;
    display: inline-block;
}

.mainnav .lvl_1 > li > a {
    font-size: 18px;
    font-weight: normal;
    display: inline-block;
    text-decoration: none;
    padding: 10px 10px 18px;
}

.mainnav .lvl_1 > li:hover, mainnav .lvl_1 > li.active {
    background: #323a45;
    color: #fff;
    text-decoration: none;
}

.mainnav .lvl_1 > li > a.active {
    padding-bottom: 10px
}

.mainnav li > ul.lvl_2 {
    background: #323a45;
    position: absolute;
    z-index: 100;
    display: none;
    width: 100%;
    left: 0;
    top: 52px;
    padding: 15px 25px 40px;
}

.mainnav .lvl_2 > li {
    padding-bottom: 10px;
    display: block
}

.mainnav .lvl_2 > li:before {
    color: #70757d;
    font-size: 48px;
    padding-right: 15px;
    width: 40px;
    text-align: right;
}

.mainnav .lvl_2 > li > a {
    font-size: 20px;
    font-weight: normal;
    color: #fff
}

.mainnav .lvl_3 {
    padding-left: 40px
}

.mainnav .lvl_3 > li > a {
    font-size: 16px;
    font-weight: normal;
    color: #9e9fa2;
    padding: 0.3em 0;
    display: inline-block
}

.mainnav .lvl_3 > li {
    padding-right: 30px
}

.mainnav .lvl_2 > li:nth-child(1):before {
    content: "1";
}

.mainnav .lvl_2 > li:nth-child(2):before {
    content: "2";
}

.mainnav .lvl_2 > li:nth-child(3):before {
    content: "3";
}

.mainnav .lvl_2 > li:nth-child(4):before {
    content: "4";
}

.mainnav .lvl_2 > li:nth-child(5):before {
    content: "5";
}

.mainnav .lvl_2 > li:nth-child(6):before {
    content: "6";
}

.mainnav .lvl_2 > li:nth-child(7):before {
    content: "7";
}

.mainnav .lvl_2 > li:nth-child(8):before {
    content: "8";
}

.mainnav .lvl_2 > li:nth-child(9):before {
    content: "9";
}

.mainnav .lvl_2 > li:nth-child(10):before {
    content: "10";
}



.leadtext {
    font-size: 20px;
}

.layer {
    background: #fff;
    color: #333;
    z-index: 1;
    width: 100%;
    padding: 1em 0 0;
}

.layer .logo {
    display: block;
    position: absolute;
    top: 5px;
    left: -2px;
    margin: 0 auto;
    z-index: 101;
}

.layer > div > div.wrapper {
    height: 85px
}

.layer .keyvis .wrapper {
    height: auto;
}

.layer .icons {
    background: #c7c7c7;
    /* height: 170px; */
    border-top: 9px solid #323a45;
    border-bottom: 1px solid #b2b2b2;
    padding-top: 1.2em;
}

.layer .keyvis {
    background: #c7c7c7;
    border-top: 9px solid #323a45;
    border-bottom: 1px solid #b2b2b2;
    padding-top: 1.2em;
    padding-bottom: 1.2em;
}

.layer .keyvis h2 {
    background: #323a45;
    color: #fff;
    font-size: 14px;
    display: inline-block;
    padding: 0.2em 1em;
    font-weight: bold
}

.layer .keyvis p {
    font-size: 24px;
    line-height: 29px;
}

.layer .keyvis span {
    background: #fff;
    padding: 0.1em 0.5em;
    display: inline-block
}

.layer .keyvis img {
    /* position: absolute; */
    /* right: 0; */
    /* top: 0; */
    float: right;
    /* max-width: 40%; */
    position: relative;
    top: -10px;
}

.layer .keyvis p {
    padding-bottom: 10px
}

.slider {
    background: #e1e2e2;
    height: 350px;
    min-height: 350px;
    padding-top: 30px;
    overflow: hidden
}

.grid4 > div {
    width: 20%;
    float: left;
    margin-left: 2.5%;
    margin-right: 2.5%
}

.slider .grid4 > div {
    text-align: center
}

.slider .grid4 > div *.align-center {
    text-align: center
}

.homeicon {
    position: relative;
    text-align: center;
    padding: 20px 0;
    font-weight: normal;    
    transition: all 200ms ease;  
    transform: scale(0);      
}
.homeicon.load {
    transform: scale(1);
}
.homeicon a {
    display: block;
    color: #333 !important;    
    transition: all 200ms ease;    
}
.homeicon .icon {    
    border-radius: 50%;
    box-shadow: 0 0 20px rgba(255,255,255,1);
    transition: all 200ms ease;
}
.homeicon .title {
    transition: all 200ms ease;
    font-size: 20px;
    padding-bottom: 2px;
    /* font-weight: normal; */
    /* text-transform: uppercase; */
}
.homeicon a:hover .icon {
    transform: scale(0.95);
    box-shadow: 0 0 10px rgba(255,255,255,1);
}
.homeicon a:hover {
    color: #000 !important;
    text-decoration: none;
}
.homeicon a:hover .title {
  
}

.bubbles {
    position:absolute;
    z-index: 10;
    top: -35px;
    right: 80px;
}
#home .layer .wrapper > .bubbles {
    display: none;
}

.bubbles .homeicon {
    float: left;
    margin: 5px;
}
.bubbles .homeicon .title {
    display: none;
}
.bubbles .homeicon .icon {
    width: 40px;
    height: 40px;
}

#nav .bubbles {
  position: relative;
  right: auto;
  left: 0px;
  top: -10px;  
  display: none;  
}
#nav .homeicon {
    padding: 0;
    width: 70px;
}
#nav .homeicon .icon {
    box-shadow: none;
}
#nav .homeicon .title {
  display: block;
  color: #fff;
  font-size: 13px;
  font-weight: normal;
}

@media(max-width: 1149px) {
  .bubbles {
      display: none;
  }
  #nav .bubbles {
    display: block;  
  }    
}



.contact_teaser .top,
.tx-powermail h3 {
    display: block;
    background: #323a45;
    background: #004d67;
    line-height: 1.2;
    padding: 15px 20px;
    color: #f1f1f3;
    font-size: 18px;
    -webkit-border-radius: 4px 4px 0 0;
    -moz-border-radius: 4px 4px 0 0;
    border-radius: 4px 4px 0 0;
}

.contact_teaser .top a {
    color: #FFF;
}

.contact_teaser p {
    background: #fff;
    padding: 17px 20px;
    overflow: hidden;
    min-height: 160px;
    font-size: 14px;
}

.contact_teaser img {
    float: left;
    margin-right: 15px
}

.contact_teaser .mail {
    clear: left;
    display: block;
    background: #ccc;
    padding: 10px 20px;
    color: #f1f1f3;
    font-size: 24px;
    -webkit-border-radius: 0 0 4px 4px;
    -moz-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px;
    height: 50px;
    line-height: 50px;
    padding-top: 0;
    padding-bottom: 0;
}

.contact_teaser .mail a {
    color: #323a45;
    font-weight: normal;
    display: block;
    text-align: center;
    font-size: 22px;
}

.contact_teaser .bottom {
    background: #f5f5f5;
    -webkit-border-radius: 0 0 4px 4px;
    -moz-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px;
    padding: 20px;
}

.contact_teaser .bottom p {
    background: none;
    float: none;
    padding: 0;
    min-height: inherit
}

.contact_teaser .bottom h2 {
    padding-top: 20px
}

.contact_teaser .bottom .tel {
    display: block;
    padding-top: 1em
}

.contact_teaser ul {
    margin-bottom: 0 !important
}

.contact_teaser ul li {
    list-style: none !important;
    margin: 0 !important;
}

.sitemap_level .top {
    display: block;
    background: #323a45;
    height: 50px;
    line-height: 50px;
    padding: 0px 20px;
    color: #f1f1f3;
    font-size: 18px;
    -webkit-border-radius: 4px 4px 0 0;
    -moz-border-radius: 4px 4px 0 0;
    border-radius: 4px 4px 0 0;
}

.sitemap_level .top a {
    color: #FFF;
}

.sitemap_level .bottom {
    background: #f5f5f5;
    -webkit-border-radius: 0 0 4px 4px;
    -moz-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px;
    padding: 20px;
    margin-bottom: 30px;
}

.sitemap_level ul {
    margin-bottom: 0 !important
}

.sitemap_level ul li {
    list-style: none !important;
    margin: 0 !important;
    padding-left: 0 !important
}

.sitemap_level ul li.next_level {
    margin: 5px 0 15px 15px !important
}

.sitemap_level.choose {
    margin-bottom: 3em
}


.news .content_teaser {
    float: left;
    width: 48%;
    margin-right: 2%;
    margin-bottom: 4px;
}
.news .content_teaser:nth-child(2n+1) {
    clear: left;
}

.news_teaser .top {
    display: block;
    background: #323a45;
    padding: 10px 20px;
    color: #f1f1f3;
    font-size: 18px;
    -webkit-border-radius: 4px 4px 0 0;
    -moz-border-radius: 4px 4px 0 0;
    border-radius: 4px 4px 0 0;
}

.news_teaser .bottom {
    background: #f5f5f5;
    -webkit-border-radius: 0 0 4px 4px;
    -moz-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px;
    padding: 20px;
}

.news_teaser .bottom .date {
    font-size: 13px
}

.news_teaser .bottom h2 {
    padding-top: 10px
}

.news_teaser .bottom .tel {
    display: block;
    padding-top: 1em
}

.news_teaser .bottom p {
    padding: 0
}

.news-single .teaser_text_margin {
  margin-left: 80px;
}

.download_teaser .top {
    display: block;
    height: 50px;
    line-height: 50px;
    background: #323a45;
    background: #FF6600;
    padding: 0px 20px;
    color: #f1f1f3;
    font-size: 18px;
    -webkit-border-radius: 4px 4px 0 0;
    -moz-border-radius: 4px 4px 0 0;
    border-radius: 4px 4px 0 0;
}

.download_teaser form {
    padding: 0;
    margin: 0
}

.download_teaser p {
    background: #fff;
    padding: 20px;
    float: left;
    overflow: hidden
}

.download_teaser img {
    float: left;
    margin-right: 15px
}

.download_teaser input[type="submit"] {
    border: none;
    background: #0099CC;
    text-align: center;
    color: #fff;
    font-size: 24px;
    -webkit-border-radius: 0 0 4px 4px;
    -moz-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px;
    width: 100%;
    margin: 0;
    min-width: inherit;
    height: 50px;
    line-height: 50px;
    padding-top: 0;
    padding-bottom: 0;
}

.download_teaser div.search {
    margin-bottom: 10px;
}

.download_teaser select[name="tx_facetedsearch_pi1[options][65][]"] {
    display: none;
}

.download_teaser input[type="text"] {
    border: none;
    box-shadow: none;
    padding: 0px 60px 0px 20px;
    margin: 0;
    height: 50px;
    line-height: 50px;
    -webkit-border-radius: 0 0 4px 4px;
    -moz-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px;
}

.download_teaser div.search span {
    background: url(../images/btn_search.png) no-repeat center;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    position: absolute;
    right: 0px;
    top: 0;
    width: 50px;
    height: 50px;
    text-indent: -999em;
    padding: 0;
    border-left: 1px solid #eceef1;
}

.download_filter {
}

.download_filter ul {
    margin-bottom: 2em
}

.download_filter ul li {
    display: inline-block;
    width: 32%;
    font-size: 0.9em;
    padding: 0.3em 0;
    margin: 0;
    list-style: none
}

.download_filter input.search {
    background: url(../images/btn_search_place.png) no-repeat right center;
    padding-right: 40px;
    height: 50px;
    line-height: 50px
}
.download_filter select,
.download_teaser select {
    padding: 0 0 0 1em;
    height: 50px;
    line-height: 50px;
    color: grey;
    background: #f5f5f5;
    border: 1px solid #f1f1f1;
    border-top: 1px solid #d0d0d0;
    border-left: 1px solid #d0d0d0;  
    width: 100%;
    cursor: pointer;
}

.download_filter select option,
.download_teaser select option {
    color: grey;
    padding: 5px 1em;  
}

.download_filter input[type="submit"] {
    background: #FF6600;
    margin: 0;
    width: 100%;
    height: 50px;
    line-height: 50px;
    padding: 0
}

.page {
    max-width: 1005px;
}

.page .content {
    width: 67%;
    float: left
}

.page aside {
    width: 27%;
    float: right
}

#home .page .content,
.fullwidth .page .content { width: 100%; float: none; }
.fullwidth .page aside { width: 0; display: none; }

.page aside > div {
    margin-bottom: 3em
}

.page aside > div.csc-header-n2 {
  margin-bottom: 0em;
}

/* styles for the powermail formular */
.grid2 > div,
.grid2-display-labels > div {
    width: 49%;
    float: left;
    margin-bottom: 4px;
}

.grid2 > div:nth-child(2n+1),
.grid2-display-labels > div:nth-child(2n+1){
    width: 48%;
    clear: left;
    margin-right: 20px;
}
/* display text input labels */
.grid2-display-labels label.optional,
.display-labels label.optional {
    display: block;
}


footer .grid2 > div {
    width: 48%;
    float: left;
}

footer.grid2 > div:nth-child(2n+1) {
    width: 52%;
    clear: left;
}

.grid3 .wrapper > div {
    padding-left: 1.5%;
    padding-right: 1.5%;
}

.grid3 div.wrapper > div:first-child {
    padding-left: 0;
    padding-right: 3%;
}

.contact-bar {
    background: #323a45;
    background: #004d67;
    height: 95px;
    color: #808fa3;
    padding: 20px 0;
    z-index: 1
}

.contact-bar .wrapper { padding-top: 10px; padding-bottom: 10px }

.contact-bar span {
    color: #fff;
    font-size: 20px;
}

.contact-bar span.big { padding-right: 10px; font-size: 25px }
.contact-bar span.link { background: url(../images/icon_tel.png) no-repeat 0 center; height: 34px; line-height: 34px; padding-left: 40px; display: inline-block; color: #ef8c54; margin-left: 10px }
.contact-bar span.link a { font-weight: normal; color: #ef8c54;  }
.contact-bar span.tel-strom {
    background: url(../images/contact_sprite.png) no-repeat 0 5px;
    color: #e95e0f;
    font-size: 24px;
}

.contact-bar span.tel-gas2 {
    background: url(../images/gas.png) no-repeat 10px -10px;
    color: #0091d4;
    font-size: 24px;
}

.contact-bar span.tel-gas {
    background: url(../images/gas.png) no-repeat 10px -10px;
    color: #0091d4;
    font-size: 24px;
}

.contact-bar span.tel-service {
    background: url(../images/contact_sprite.png) no-repeat 0px -100px;
    color: #b3b3b3;
    font-size: 24px;
}

.service-person {
    background: url(../images/service-person.png) no-repeat;
    width: 152px;
    height: 170px;
    position: absolute;
    right: 200px;
    top: -95px;
    transition: all 1000ms ease;
    background-size: contain;
    background-position: bottom right;
    transition: all 300ms ease;
}
.service-person.var1 { background-image: url(../images/startseite/Frau_hell.png); }
.service-person.var2 { background-image: url(../images/startseite/Frau_hell.png); }
.service-person.var3 { background-image: url(../images/startseite/Monteur2.png); }
.service-person.var4 { background-image: url(../images/startseite/Monteur2.png); }

#home .service-person {
    display: none;
}

@media(max-width:1480px) {
  .service-person {
      right: 40px;
  }
}

#popup img {
    float: left;
    max-width: 50%;
    width: auto;
    margin: 0 20px 20px 0;
}
#popup .text {
    min-width: 320px;
    max-width: 800px;
    font-size: 150%;  
    overflow: hidden;  
}
#popup .leadtext {
    width: 100%;
    font-weight: bold;
    color: #c00;
    text-align: center;
    -moz-transform: translateX(100%);
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
    -moz-animation: scroll-left 5s linear infinite;
    -webkit-animation: scroll-left 5s linear infinite;
    animation: scroll-left 5s linear infinite;    
}
@-moz-keyframes scroll-left {
    0% {
        -moz-transform: translateX(100%);
    }
    100% {
        -moz-transform: translateX(-100%);
    }
}

@-webkit-keyframes scroll-left {
    0% {
        -webkit-transform: translateX(100%);
    }
    100% {
        -webkit-transform: translateX(-100%);
    }
}

@keyframes scroll-left {
    0% {
        -moz-transform: translateX(100%);
        -webkit-transform: translateX(100%);
        transform: translateX(100%);
    }
    100% {
        -moz-transform: translateX(-100%);
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
    }
}

.grid1 h2:first-child {
    font-size: 32px;
}

ul.symbollist {
    margin: 0;
    padding: 0;
    list-style: none
}

ul.symbollist li {
    float: left;
    margin: 0 0 2em;
    list-style: none;
}

.symbollist li:nth-child(2n) {
    width: 48%;
}

.symbollist li:nth-child(2n+1) {
    width: 48%;
    clear: left;
    margin-right: 4%;
}

html .symbollist > li {
    padding-left: 6em;
}

html .symbollist > li:before {
    position: absolute;
    text-align: center;
    top: -1px;
    left: 0;
    width: 70px;
    height: 70px;
    background: url(../images/symbol_sprite.png) no-repeat;
    margin-top: 25px;
}

html .symbollist > li:nth-child(1):before {
    background-position: 0 0;
    content: "";
}

html .symbollist > li:nth-child(2):before {
    background-position: 0 -100px;
    content: "";
}

html .symbollist > li:nth-child(3):before {
    background-position: 0 -200px;
    content: "";
}

html .symbollist > li:nth-child(4):before {
    background-position: 0 -300px;
    content: "";
}

html .symbollist > li:nth-child(5):before {
    background-position: 0 -400px;
    content: "";
}

html .symbollist > li:nth-child(6):before {
    background-position: 0 -500px;
    content: "";
}

.content_teaser, .infobar_teaser {
    margin-bottom: 2em;
}

.content_teaser .csc-textpic-imagewrap {
    margin-top: 25px;
}

.content_teaser .teaser_text_margin,
.infobar_teaser .teaser_text_margin {
    margin-left: 6em;
}

.infobar_teaser .csc-textpic-imagewrap {
    margin-top: -10px;
}

.infobar_teaser h2 {
    color: #323A45;
}

.infobar_teaser li {
    padding: 0.2em 0;
}

footer .infobar_teaser .teaser_text_margin {
    margin-left: 5em;
}

footer .infobar_teaser .csc-textpic-imagewrap {
    margin-top: 0;
}

.infobar {
    background: #f5f5f5;
    padding-top: 2em
}

/* grauer Bereich auf Unterseiten ausblenden */
body.folge .infobar,
body.folge .layer {
    display: none;
}

.infolist {
    margin: 0;
    padding: 0;
    list-style: none
}

.infolist h2 {
    color: #323a45
}

.infolist > li {
    float: left;
    margin-bottom: 2em;
    list-style: none;
    margin-left: 0;
}

.infolist ul {
    list-style: none
}

.infolist li {
    padding: 0.2em 0;
    margin-left: 0;
    list-style: none
}

.infolist li:nth-child(2n) {
    width: 48%;
}

.infolist li:nth-child(2n+1) {
    width: 48%;
    clear: left;
    margin-right: 4%;
}

html .infolist > li {
    padding-left: 6em;
}

html .infolist > li:before {
    position: absolute;
    text-align: center;
    top: -1px;
    left: 0;
    width: 70px;
    height: 70px;
    background: url(../images/symbol_sprite.png) no-repeat;
}

html .infolist > li:nth-child(1):before {
    background-position: 0 -600px;
    content: "";
}

html .infolist > li:nth-child(2):before {
    background-position: 0 -700px;
    content: "";
}

ul.jobs-list {
    margin: 1em 0 3em;
    padding: 0;
    list-style: none
}

ul.jobs-list li {
    list-style: none;
    padding: 0;
    margin: 0
}

.jobs-list img {
    max-width: 80px;
    float: left
}

.jobs-list h2 {
    font-weight: bold;
    font-size: 16px;
    color: #333
}

.jobs-list p {
    padding-bottom: 0.5em
}

.jobs-list .downloads {
    margin-bottom: 2em
}

.jobs-list .jobs_content {
    margin-left: 80px
}

ul.downloads {
    margin: 1em 0 3em;
    padding: 0;
    list-style: none
}

ul.downloads li, .csc-default > ul.downloads li {
    padding: 0.2em 0;
    background: url(../images/download_sprite.png) no-repeat;
    padding-left: 45px;
    min-height: 50px;
    margin-left: 0;
    list-style: none;
    background-position: 0 0px
}

.downloads li.csc-uploads-element-jpg, .downloads li.csc-uploads-element-jpeg, .downloads li.csc-uploads-element-png, .csc-default > ul.downloads li.csc-uploads-element-jpg, .csc-default > ul.downloads li.csc-uploads-element-jpeg, .csc-default > ul.downloads li.csc-uploads-element-png {
    background-position: 0 -370px
}

.downloads li.csc-uploads-element-zip, .csc-default > ul.downloads li.csc-uploads-element-zip {
    background-position: 0 -770px
}

.toggle-list-single-item .downloads {
    margin: 1em 0 0;
}


/* Farbkacheln */
.farbkacheln {
    margin-bottom: 15px;
}
.farbkachel {
    padding: 15px 15px 10px;
    border-radius: 5px;
    margin: 15px 15px 0 0;
    text-align: center;
    transition: all 200ms ease;
    display: inline-block;
    width: 25%;
    width: calc(25% - 15px);
    min-height: 130px;
    float: left;
}
.farbkachel:nth-child(4n+1) {
    clear: left;
}
.farbkachel:hover {
    box-shadow: 0 0 5px rgba(0,0,0,0.5);
}
.farbkachel a {
    display: block;
    text-decoration: none;
    font-weight: normal;
}
.farbkachel * {
    color: #FFF;   
}
.farbkachel h2,
.farbkachel h3 {
  font-size: 18px;
  font-weight: normal;
  padding-bottom: 5px;
  margin-bottom: 0;
}
.farbkachel p {
    font-size: 90%;
}
.farbkachel.blau {
background: #0091d4; /* Old browsers */
background: -moz-linear-gradient(45deg,  #0091d4 0%, #0079b2 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(45deg,  #0091d4 0%,#0079b2 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(45deg,  #0091d4 0%,#0079b2 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0091d4', endColorstr='#0079b2',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
       
}
.farbkachel.orange {
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#e95e0f+0,cc4a0e+100 */
background: #e95e0f; /* Old browsers */
background: -moz-linear-gradient(45deg,  #e95e0f 0%, #cc4a0e 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(45deg,  #e95e0f 0%,#cc4a0e 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(45deg,  #e95e0f 0%,#cc4a0e 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e95e0f', endColorstr='#cc4a0e',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.farbkachel.hellblau {
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#5cb9e4+0,0292d5+100 */
background: #5cb9e4; /* Old browsers */
background: -moz-linear-gradient(45deg,  #5cb9e4 0%, #0292d5 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(45deg,  #5cb9e4 0%,#0292d5 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(45deg,  #5cb9e4 0%,#0292d5 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5cb9e4', endColorstr='#0292d5',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */

}
.farbkachel.hellorange {
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ef8c54+0,dd6a27+100 */
background: #ef8c54; /* Old browsers */
background: -moz-linear-gradient(45deg,  #ef8c54 0%, #dd6a27 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(45deg,  #ef8c54 0%,#dd6a27 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(45deg,  #ef8c54 0%,#dd6a27 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ef8c54', endColorstr='#dd6a27',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */

}

footer {
    background: #ededed;
    color: #333;
}

footer h2 {
    color: #333
}

footer > * {
    padding-top: 2em;
    padding-bottom: 2em;
}

footer ul li {
    list-style: none
}

footer a {
    color: #09c
}

footer .linklist {
    padding-left: 2.25em
}

footer .linklist li {
    margin: 0.2em 0;
    padding: 0;
}

footer .metalinks {
    color: #333;
    text-align: right;
    padding-top: 2em
}

footer .metalinks > * {
    margin-left: 10px;
    margin-right: 10px;
}

footer .metalinks a {
    color: #333;
    font-weight: normal
}

footer .grid2 > div {
    width: 42%;
    float: left;
}

footer .grid2 > div:nth-child(2n+1) {
    width: 54%;
    clear: left;
}

footer .social {
    position: absolute;
    top: 0em;
    left: 1em;
    display: none;
}

footer .social li {
    text-indent: -999em;
    position: relative;
    width: 70px;
    height: 60px
}

footer .social li.facebook {
    background: url(../images/symbol_sprite.png) no-repeat 0 -1100px
}

footer .social li.xing {
    background: url(../images/symbol_sprite.png) no-repeat 0 -1200px
}

iframe {
    z-index: 0;
    border: 0;
}

header, footer, section, figure, nav, aside, article, .header .logo {
    display: block;
}

.clearfix, .page > div, .page > section, .mainnav ul, .layer-entrypoints, .grid0, .grid1, .grid2, .grid3, footer {
    zoom: 1;
}

.mainnav ul {
    list-style-type: none;
    padding-left: 0;
}

.mainnav li {
    display: inline;
    margin-left: 0;
}

.mainnav a, .layer a {
    color: inherit;
}

.sitemap h3 {
    margin: 0;
}

.sitemap h3 a {
    color: #333;
}

.sitemap ul {
    clear: left;
}

.sitemap ul li {
    float: left;
    list-style: none;
    margin-bottom: 0;
    margin-left: 0;
    padding: 0;
}

.sitemap ul li:nth-child(2n) {
    width: 48%;
}

.sitemap ul li:nth-child(2n+1) {
    width: 48%;
    clear: left;
    margin-right: 4%;
}

.showBelow1150px, .showAbove1150px {
    display: none !important;
}

.tablestyle {}
.tablestyle table { margin-top: 10px }  
.tablestyle th {
  background: #f60;
  color: #fff;
}

.tablestyle th, .tablestyle td, .customstyle th, .customstyle td {
  padding: 6px 5px;
  text-align: left;
}

.tablestyle td.td-0, .tablestyle th.td-0 {
    text-align: left;
}

.tablestyle .tr-even td {
  background: #F5F5F5;
}

table.customstyle {background: none;}
table.customstyle .row-even {background: #f5f5f5;}
table.customstyle .row-odd {background: #fff;}

div.csc-textpic {
  overflow: inherit;
}

ul.csc-uploads span.csc-uploads-fileName {
  text-decoration: none;
}

/* Filtersuche auf Tabellen */
#filterTerm {
  background-image: url(data:image/png;base64,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);
  background-position: 10px 12px;
  background-repeat: no-repeat;
  width: 280px;
  font-size: 16px;
  padding: 12px 20px 12px 40px;
  border: 1px solid #ddd;
  margin-bottom: 12px;
}

.content .tx-facetedsearch-searchresult-facetoption {
  margin-bottom: 20px;
}

.content .tx-facetedsearch-searchresult-facetoption li {
  list-style: none;
  background: #eee;
  padding: 15px;
  margin-bottom: 10px;
  word-break: break-word;
}
.content .tx-facetedsearch-searchresult-facetoption li .preview {
  float: left;
  display: inline-block;
  margin: 0 10px 10px 0;
}
.content .tx-facetedsearch-searchresult-facetoption li .preview img {
  max-height: 50px;
  width: auto;
  min-width: 26px;
  border: 1px solid #ccc;
  background: #fff;
}
.content .tx-facetedsearch-searchresult-facetoption li a.title {
    transition: all 300ms ease;
}
.content .tx-facetedsearch-searchresult-facetoption li a.title:hover {
  text-decoration: none;
  color: #FF6600;
}
.content .tx-facetedsearch-searchresult-facetoption li .filename {
  display: block;
  font-weight: normal;
  font-size: 13px;
  margin-left: 46px;
  color: #555;
  word-break: break-all;
}

@media (max-width: 1600px) {
  .contact_teaser .mail a {
    font-size: 17px;
  }
}

@media (min-width: 1151px) {
    .mainnav {
        display: block !important
    }

    .showAbove1150px {
        display: block !important
    }
}

@media (max-width: 1250px ) {
  .service-person {
      display: none
  }
}

@media (max-width: 1150px ) {
    .menuswitch {
        display: block;
    }

    .header, .layer {
        padding-top: 0
    }

    html .logo {
        padding-left: 2.5%;
        width: 125px;
        height: inherit;
        top: 20px !important
    }

    .functionbar {
        right: 10.5em;
        left: inherit;
        position: absolute;
        top: 1.6em;
    }

    .functionbar > div {
        display: inline-block;
        width: 50px;
    }

    .login {
        background-position: center -1000px
    }
    
    .leftsearchform { top: 0 }

    .leftsearchform a.searchopen {
        background-position: center -900px;
        width: 50px
    }

    .mainnav, ul.lvl_2 {
        display: none
    }

    .mainnav {
        background: #323a45;
        position: absolute;
        left: 0;
        width: 100%;
        top: 85px
    }

    .mainnav .lvl_1 {
        padding: 10px 0px 20px
    }

    .mainnav .lvl_1 li {
        display: block;
        position: inherit;
        padding: 0 2.5%
    }

    .mainnav .lvl_1 > li > a {
        padding: 5px 0;
        color: #fff
    }

    .mainnav .lvl_1 > li:hover {
        background: #fff;
    }

    .mainnav .lvl_1 > li > a:hover {
        color: #323a45
    }

    ul.lvl_2 {
        display: none !important
    }

    .header {
        display: none;
        height: auto;
        position: inherit;
    }

    html.lt-ie9 .layer {
        padding-top: 0;
        margin-top: 0px
    }

    .header .contact-bar .wrapper {
        height: inherit
    }

    .folge .header {
        display: block
    }

    .slider {
        padding-top: 40px
    }

    .layer .keyvis, .slider {
        height: auto;
    }

    .layer .keyvis p {
        padding-bottom: 0
    }

    .keyvis .wrapper {
        padding: 0 2.5%
    }

    .keyvis .wrapper img {
        max-width: 40%;
        top: 0;
    }

    .page {
        padding: 40px 2.5% 0
    }

    .folge .page {
        padding: 20px 2.5% 0
    }

    .grid4 > div {
        width: 45%;
        margin-bottom: 2em;
    }
    .grid4 > .homeicon {
        width: 20%;        
        margin-bottom: 1em;      
    }
    .showBelow1150px {
        display: block !important
    }
}

@media (max-width: 979px) {
    html .logo {
        top: 15px !important;        
        left: 15px !important;
        width: 150px !important;
        height: auto !important;
    }
    .functionbar {
        top: 20px;
        right: 5.5em;
    }    
    .menuswitch {
        top: 25px;
        right: 20px;
    }

    .contact-bar {
        height: inherit;
        padding: 10px 20px;
    }

    .grid3 .wrapper > div {
        float: none;
        width: 95%;
        padding: 0 2.5% 10px
    }

    .grid3 div.wrapper > div:first-child {
        padding: 0 2.5% 10px
    }

    .service-person {
        right: 2.5%;
        bottom: 0;
        top: inherit
    }
    
    .folge .service-person {
        right: 9.5%;
    }

    .page .content, .page aside {
        float: none;
        width: 100%
    }

    footer div.wrapper > .grid2 .map {
        float: left;
        width: 54%;
        padding-left: 10px;
    }

    footer .social {
        left: 2.5%
    }

    .infobar, footer {
        padding-left: 2.5%;
        padding-right: 2.5%
    }

    .openedsearch {
        display: none !important
    }

    .leftsearchform a.searchopen {
        display: block
    }
}

@media (max-width: 960px) {
    .contact_teaser .mail a {
      font-size: 20px;
    }
    .content_teaser, .infobar_teaser {
        margin-bottom: 0;
    }

    footer .grid2 > div:nth-child(2n+1), footer .grid2 > div {
        width: 100%;
        float: none
    }

    footer .metalinks > a:first-child {
        margin-left: 0
    }

    footer .location {
        margin-top: 0;
        padding-left: 2.5%;
    }

    footer .infobar_teaser .teaser_text_margin {
        margin-left: 5em;
    }

    footer .linklist {
        padding-top: 10px;
        padding-left: 10px;
    }

    footer .metalinks {
        padding-left: 6em;
        margin-top: 2em;
        text-align: left
    }

    aside .contact_teaser img {
        position: absolute;
        float: none;
        width: 93px;
        height: 101px;
        left: 20px
    }

    aside .contact_teaser .bottom {
        padding-left: 9em
    }
}

@media (max-width: 880px) {
    .keyvis {
        padding-bottom: 1.2em;
    }
    .keyvis .wrapper img {        
        display: none;
    }
}

@media (max-width: 767px) {    
    .grid4 > div {
        width: 95%
    }
    .grid4 > .homeicon {
        width: 45%;        
        margin-bottom: 1em;      
    }    

    .infolist li:nth-child(2n+1), .infolist li:nth-child(2n), .infolist > li,
    .symbollist li:nth-child(2n+1), .symbollist li, .symbollist li:nth-child(2n) {
        width: 97%;
        float: none
    }

    .news .content_teaser {
        float: none;
        clear: left;
        width: 98%;
    }

    .service-person {
        display: block
    }

    .contact-bar span { display: block; }
    .contact-bar span.link { margin-left: 0 }

    .farbkachel {
        width: 33.333%;   
        width: calc(33.333% - 15px);   
    }
    .farbkachel:nth-child(4n+1) {
        clear: none;
    }
    .farbkachel:nth-child(3n+1) {
        clear: left;
    }     
}

@media (max-width: 700px) {
    .download_filter ul li {
        display: inline-block;
        width: 48%;
        font-size: 0.9em;
        padding: 0.3em 0
    }
}

@media (max-width: 640px) {
    .grid2 > div:nth-child(2n+1), .grid2 > div {
        width: 100%;
        float: none
    }

    img.left {
        float: none;
        margin-right: 0
    }

    ul.downloads li {
        display: block;
        overflow-x: hidden;
        overflow-y: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    footer div.wrapper > .grid2 .map {
        float: none;
        width: 100%;
    }
    .keyvis {
        display: none;
    }    
  
}

@media (max-width: 600px) {
    .farbkachel {
        width: 50%;   
        width: calc(50% - 15px);   
    }
    .farbkachel:nth-child(3n+1) {
        clear: none;
    }
    .farbkachel:nth-child(2n+1) {
        clear: left;
    }      
}

@media (max-width: 470px) {
  .service-person {
      display: none
  }
  .homeicon .icon {    
    width: 64px;
    height: 64px;
  }
  .homeicon .title {
    font-size: 16px;
  }
    
}

@media (max-width: 400px) {
    .breadcrumb {
        display: none
    }

    aside .contact_teaser img {
        float: none;
        display: block;
        text-align: center;
        margin: 0 auto;
        position: inherit;
        left: 0;
        margin-bottom: 20px
    }

    aside .contact_teaser .bottom {
        padding-left: 20px
    }

    .download_filter ul li {
        display: inline-block;
        width: 99%;
        font-size: 0.9em;
        padding: 0.3em 0
    }
    .farbkachel {
       width: 100%;      
       margin-right: 0;
       margin-bottom: 15px;
    }     
}