/* CSS file that extends generated files */

/*

Add class '.no-contrast' for every element that is supposed to be excluded from the default high contrast (background white, text black) feature.

*/

@font-face {
    font-family: 'Lato';
    src: url('Lato-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Lato';
    src: url('Lato-Italic.ttf') format('truetype');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Lato';
    src: url('Lato-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
}

@font-face {
    font-family: 'Lato';
    src: url('Lato-LightItalic.ttf') format('truetype');
    font-weight: 300;
    font-style: italic;
}

@font-face {
    font-family: 'Lato';
    src: url('Lato-Bold.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
}

@font-face {
    font-family: 'Lato';
    src: url('Lato-Black.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
}


body {
    font-family: Lato;
}

a {
    color: inherit;
}

p {
    font-weight: 300;
}

ul.nav-top {
    list-style-type: none;
    display:block;
    width:100%;
    float: left;
    margin: 12px 0px 0px 3.5%;

    /*padding-left: 7%;*/
}

ul.nav-top-secondary {
    list-style-type: none;
    float: top;
    margin: 16px 0 15px 0;
    padding-left: 7%;
    display: block;
    position: relative;
    left: 0px;
    background-color: #FFF;
    padding: 0px;
    width: 100%;
}
#text1 {
    float: left;
    font-size: 1em;
    width: auto;
    height: auto;
    text-align: left;
    font-weight: normal;
    line-height: 1em;
    margin-left: 14px;
    margin-top: 0px;
    clear: none;
    min-height: 0px;
    font-style: italic;
    margin-right: 0%;
    display: none;
}

ul.nav-top-secondary > li {
    padding: 10px 20px 10px 10px;
}

ul.nav-top-secondary > li:hover {
    background-color: #EEE;
}

.sitemap_footer {
    float: left;
    height: 567px;
    margin-left: 0%;
    margin-top: 0px;
    clear: both;
    width: 100%;
    background-color: rgb(87, 87, 87);
    margin-right: 0%;
    color:#FFF;
}

#sitemap_title {
    width:10%;
    margin-top:35px;
    line-height:1em;
    font-size:14px;
    color:#FFF;
    font-weight:400;
    float:left;
    text-align:center;
}

.sitemap_box {
    float:left;
    width:17%;
}

.sitemap_box > ul > li, .sitemap_box > ul > li > ul > li {
    list-style-type: none;
    font-size:12px;
}

.sitemap_box > ul > li > ul {
    padding-left:15px;
    margin:3px;
}

.sitemap_box > ul > li > ul > li {
    margin:5px;
}
   

ul.nav-top > li {
    float: left;
    margin:0px 3.2% 10px 0%;
    font-style: italic;
    font-family: Lato;
    font-size: 1em;
    font-weight: normal;
}

li > a {
    text-decoration: none;
}

li.pull-right {
    position: absolute;
    right: 1.75%;
}

#headerbox {
    float: left;
    height: auto;
    margin-left: 0%;
    margin-top: 0px;
    clear: none;
    width: 100%;
    display: block;
}


#balken {
    float: left;
    height: 2px;
    margin-left: 0%;
    margin-top: 0px;
    clear: none;
    width: 98.727273%;
    background-color: rgb(0, 0, 0);
    margin-right: 0%;
}

#balken2 {
    float: left;
    height: 2px;
    margin-left: 1.278409%;
    margin-top: 6px;
    clear: both;
    width: 98.727273%;
    background-color: rgb(0, 0, 0);
    margin-right: 0%;
}

#balken1 {
    float: left;
    height: 2px;
    margin-left: 1.278409%;
    margin-top: 6px;
    clear: both;
    width: 98.727273%;
    margin-right: 0%;
    background-color: rgb(0, 0, 0);
}

#minimenubalken {
    float: left;
    height: auto;
    margin-left: 0%;
    margin-top: 0px;
    clear: none;
    width: 27.35px;
    margin-right: 0%;
    display: none;
}


#minimenubox {
    float: left;
    height: auto;
    margin-left: 0%;
    margin-top: 0px;
    clear: none;
    width: 122.3287204265625px;
}

#menuleistenbox > a:hover {
    color: rgb(166, 31, 44);
    display: block;
}


#menubox {
    float: left;
    height: auto;
    margin: 15px 0px 0px 3.5%;
    clear: none;
    width: 93.002462%;
    overflow: hidden;
    display: block;
}

#menuleistenbox > a {
    float: left;
    font-size: 1em;
    width: auto;
    height: auto;
    text-align: left;
    font-weight: normal;
    line-height: 1em;
    margin: 0px 3.388395% 10px 0%;
    clear: none;
    min-height: 0px;
    font-style: italic;
}

#menuleistenbox > a:first {
    float: left;
    font-size: 1em;
    width: auto;
    height: auto;
    text-align: left;
    font-weight: normal;
    line-height: 1em;
    margin: 0px 3% 10px 0%;
    clear: none;
    min-height: 0px;
    font-style: italic;
    display: block;
}


div.nav-bars {
    width: 1.75%;
    height: 35px;
    float: left;
    margin-left: 3.5%;
    margin-top: 15px;
}

div.nav-bar {
    width: 25px;
    height: 7px;
    float: bottom;
    border-top: solid 2px #333;
}

div.navigation {
    
    width: 100%;
}

div.layer-1 {
    background-color: #DDD;
    float: left;
}

div.container {
    margin: 80px 3% 50px 3%;
}

/* Form stuff */

label {
    float: left;
    margin-right: 20px;
    font-weight: 300;
}

input {
    margin: 0 10px 0  10px;
    font-family: Lato;
}

.csc-mailform-field {
    float: left;
}

.csc-searchResultHeader {
    margin: 10px 0 10px 10px;

}

.csc-searchResult {
    margin: 0 0 20px 10px;
    padding-left: 10px;
    border-left: solid 3px #CCC;
    font-weight: 300;
}

.csc-searchResultInfo {
    font-weight: 300;
}

.csc-default {
    word-spacing: .1em;
}

.active {
    font-weight: 700 !important;
}

@media only screen and (max-width: 518px) {
    
    .fixed-offset {
      margin-top: 175px !important;
    }
    
    #teaserbox {
        width: 86%;
    }

    #teaserbox1 {
        width: 86%;
        margin-top: 0px;
    }

    #icon-flaeche {
        width: 35%;
        margin-top: 10px;
        margin-left: 47.125727%;
        clear: both;
    }

    #minimenubalken {
        display: block;
    }

    #box-kolumnentitel-startseite {
        height: 360px;
    }

    #text2 {
        font-size: 28px;
    }

    #fp-logo {
        margin-left: 3%;
        margin-right: 0px;
        float: left;
        margin-top: 10px;
        clear: both;
        width: auto;
        height: 51px;
    }

    #fp-logobox {
        margin-top: 15px;
    }

    #menuleistenbox > a {
        width: 100%;
        background-color: rgb(232, 232, 232);
    }
    #menuleistenbox > a:first {
        margin-left: 0%;
    }

    #menuleistenbox {
        margin-top: 15px;
    }

    #minimenubox {
        display: block;
    }

    #minimenubalken {
        display: block;
    }

    #text1 {
        display: block;
    }

    #menubox {
        height: 32px;
    }

    #menupunkt {
        width: 100%;
        background-color: rgb(232, 232, 232);
    }

    #footerBox {
        height: auto;
    }

    #Box-kontakt_impressum {
        width: 93%;
        margin-bottom: 20px;
    }

    #kontakt-box {
        width: 100%;
        margin-left: 0%;
        margin-top: 0px;
        margin-bottom: 35px;
    }

    #text4 {
        min-height: 0px;
    }

    #impressum-box {
        width: 100%;
        margin-left: 0%;
        margin-top: 0px;
        margin-bottom: 35px;
    }

    #sitemapbox {
        width: 93%;
        margin-left: 3.5%;
    }
}

.content-left > a,
.content-right > a,
.layer-text > a,
.content-half > a,
.content-wrapper > a,
.content-slim > a,
.left-col-text > a,
#text2 > a {
    text-decoration: none;
    border-bottom: solid 1px;
}


.content-left > a:hover,
.content-right > a:hover,
.layer-text > a:hover,
.content-half > a:hover,
.content-wrapper > a:hover,
.content-slim > a:hover,
.left-col-text > a:hover,
#text2 > a:hover {
    color: #A61F2C;
    border-bottom: solid 1px #A61F2C;
}

a.link-list {
    text-decoration: none;
    border-bottom: none;
}

a.link-list:hover {
    text-decoration: none;
    border-bottom: none;
}

.fixed-navbar {
    position: fixed;
    width: 100%;
    background-color: #FFF;
    box-shadow: 0 10px 20px rgba(0, 0, 0, .08);
    z-index: 9999;
}

.fixed-offset {
    margin-top: 137px;
}

ul.sitemap-layer-1 {
  list-style-type: none;
  padding: 0;
}

ul.sitemap-layer-2-and-3 {
  list-style-type: none;
  padding: 0;
  margin-top: 5px;
  padding-left: 6px;
}