/*Allgemein*/
html {
    position: relative;
    min-height: 100%;
}

body {
    font-family: 'Roboto', sans-serif;
    margin-bottom: 50px;
    overflow-x: hidden;
    font-size: 1.6em;
}

body a:hover, body a:focus {
    text-decoration: underline;
    color: #333;
}

img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

td, th {
    padding: 5px 10px;
    background: #eee;
    border-bottom: 1px solid #acacac;
}

th {
    text-align: left;
    color: white;
}

.content {
    padding-bottom: 50px;
}

/*Schrift, Titel*/
h1 {
    font-size: 2.6em;
}

h2 {
    font-size: 2.2em;
}

h3 {
    font-size: 1.7em;
}

h4 {
    font-size: 1.4em;
}

h5 {
    font-size: 1.2em;
}

h6 {
    font-size: 1em;
}

/*Home*/
.homeboxes a:hover {
    text-decoration: none;
}

.Home_Box {
    height: 200px;
    overflow: hidden;
    margin: 0 0 10px;
}

.homeboxes {
    padding: 0 0 20px;
}

.kontakt-slider h1, .kontakt-slider h2, .kontakt-slider h3, .kontakt-slider h4, .kontakt-slider h5, .kontakt-slider h6, .kontakt-slider a {
    color: white !important;
}

.kontakt-slider a:hover {
    opacity: 0.8;
    text-decoration: none
}


.more_infos, .kontakt .kontakt {
    padding: 5px 10px;
    width: 140px;
    border: 1px solid;
    margin: 10px 0;
    text-align: center;
}

/*Header*/
.logo {
    margin: 2%;
}

#logo {
    float: left;
    position: absolute;
    transform: translate(0, -50%);
    z-index: 999;
    width: 10em;
    top: 50%;
}

.lang {
    position: absolute;
    right: 0;
    font-size: 12px;
}

.lang a {
    color: #808080;
    padding-right: 7px;
}

.lang a:hover {
    text-decoration: none;
}

.fa-search {
    padding: 6px 7px;
    border: 1px solid;
    border-top: none;
}

.nav-logo {
    height: 110px;
}

.header {
    height: 380px;
    overflow: hidden;
    display: block;
    width: 100%;
}

.home .header {
    height: 760px;
}

.header {
    background-position: center;
    background-size: cover;
}

/*Object-fit IE*/
.responsive_IE {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    font-family: 'object-fit: cover';
    background-position: center;
    background-size: cover;
}

.header ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.kontakt-slider {
    height: 760px;
    font-size: 17px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.absolute {
    position: absolute;
    right: 0;
    z-index: 101;
    width: 100%;
    height: 353px;
    display: none;
}

.home .absolute {
    display: block;
}

.cycle-pager {
    text-align: center;
    font-size: 60px;
    text-align: center;
    width: 100%;
    z-index: 101;
    position: absolute;
    bottom: 0%;
}

.cycle-pager span {
    color: #b3b3b3;
    cursor: pointer;
    opacity: 0.8;
}

/*Navigation & subnavigation*/
.navigation>li {
    float: left;
    padding: 25px;
}

.navigation li.level-1.special {
    margin-right: 1px
}

.navigation li.level-1.special a {
    border: 1px solid;
    padding: 7px 21px 6px
}

.navigation li a {
    color: #383838;
    font-size: 15px;
    text-transform: uppercase;
    letter-spacing: .01em;
}

.navigation li.level-1:hover ul {
    display: block;
}

.navigation a:hover, #sidrbar a:hover {
    text-decoration: none;
}

ul.navigation {
    float: right;
    padding: 0;
}

ul.navigation ul {
    display: none;
    position: absolute;
    padding: 25px;
    border: none;
    margin-top: 25px;
    margin-left: -25px;
    width: 225px;
}

ul.navigation li li {
    float: left;
    width: 100%;
    padding-bottom: 10px;
    line-height: 20px;
}

ul.navigation li li a {
    color: #fff;
    text-transform: capitalize;
    font-size: 16px
}

ul.navigation li li:last-child {
    padding: 0;
}

#subnavigation li a {
    padding-top: 5px;
    padding-bottom: 5px;
    text-transform: uppercase;
    float: left;
    color: #000;
    width: 100%;
}

#subnavigation li.level-2 ul {
    display: none;
}

#subnavigation li.level-1>a, .navigation2, .open_navigation {
    display: none
}

#subnavigation {
    float: left;
    width: 100%;
    margin-top: 24px;
    font-size: 15px;
}

.fontnav {
    padding-top: 20px;
}

#right-nav ol, #right-nav ul {
    list-style: none;
    z-index: 500;
}

#right-nav {
    line-height: 60px;
}

.navigation, #subnavigation, #subnavigation ol, #subnavigation ul {
    list-style: none;
    padding: 0;
    margin: 0;
    padding-top: 10px;
}

li.level-1.starter_normal.kontakt {
    padding-right: 0px;
}

/*Footer*/
.footer {
    border-top: 1px solid #aaa;
    padding-bottom: 10px;
    padding-top: 10px;
    padding-left: 0;
    padding-right: 0;
}

.footerleft {
    display: block;
    padding: 0;
}

.footerright {
    display: block;
    text-align: right;
    padding: 0;
}

footer {
    font-family: 'Roboto', sans-serif;
    position: absolute;
    bottom: 0;
    width: 100%;
    background: white;
}
}

/*Formulare*/
input, button, select, textarea {
    float: right;
    width: 80%
}

div select, div textarea, input[type=text], input[type=password] {
    border: 0;
    border-bottom: 1px solid #9d9e9e;
    color: #000;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    padding: 5px 12px;
    width: 100%;
    margin-bottom: 15px;
}

input#coreCaptchaCode {
    width: 200px;
    display: table;
}

div select:hover, div textarea:hover, input[type=text]:hover, div select:focus, div textarea:focus, input[type=text]:focus {
    border-bottom: 1px solid;
    outline: none;
}

input.btn {
    margin-top: 10px;
    margin-right: 10px;
}

.contactFormClass_special {
    padding-left: 0px;
}

.form-group {
    margin: 0;
}

#fe_content ul #fe_content ol {
    list-style: none;
}

#news {
    list-style: none;
    padding: 0;
}

#contactFormError {
    display: none;
}

div.contact {
    margin: 0 0 15px;
}

span#captcha img {
    width: 85px;
}

body .btn-default {
    padding: 5px 10px;
    width: auto;
    border: 1px solid;
    border-radius: 4px;
}

body .btn-default:hover {
    color: #fff;
}

/*Responsive*/
.kontaktblock {
    height: 400px;
    font-size: 16px;
    padding: 20px 0;
    display: none;
}

.fa-times {
    display: none;
}

#mobile-navigation {
    height: fit-content;
    position: absolute;
    width: 100%;
    z-index: 105;
    font-size: 23pt;
    color: white;
    display: none;
    min-height: 0;
}

#mobile-navigation ul {
    list-style: none;
    padding: 0 20px 0 20px;
}

#mobile-navigation ul .level-1 {
    list-style: none;
    border-bottom: 1px solid;
    padding: 15px 0;
}

#mobile-navigation li.level-2 {
    font-size: 19pt;
}

#mobile-navigation li.level-3 {
    font-size: 17pt;
}

#mobile-navigation ul li a {
    background: none;
    padding: 0;
    border-bottom: none;
    font-size: 0.8em;
}

#mobile-navigation ul li a:hover {
    text-decoration: none;
}

.search_nav_mobile {
    text-align: center;
    width: 80%;
    margin: 150px auto 0;
}

.search_nav_mobile input.search-query {
    border-radius: 0;
    border: none;
    margin: 0;
    padding: 10px;
    color: #484647;
}

.search_nav_mobile .btn-default {
    border: none;
    margin: -14px 0px 0 -40px;
    height: 34px;
    background: #f1f1f1;
}

.search_nav_mobile .btn-default span {
    color: #484647;
}

.search_nav_mobile form {
    width: 300px;
    margin: 25px auto 50px;
}

.search_nav_mobile a {
    font-size: 16px;
    border: solid 1px;
    padding: 5px;
    text-decoration: none;
    margin: 5px;
}

@media (max-width: 1199px) {
    .Home_Box {
        max-height: 149px;
    }

    .nav-logo {
        height: 70px;
    }

    .lang {
        display: none;
    }

    #mobile-navigation {
        min-height: calc( 100vh - 70px );
    }

    #logo {
        width: 8em;
    }
}

@media (max-width: 992px) {
    .home .kontaktblock {
        height: 400px;
        font-size: 16px;
        display: block;
    }

    .home .header, .header {
        height: 300px;
    }

    .home .absolute {
        display: none;
    }
}

@media (max-width: 991px) {
    li.level-2 a:hover {
        text-decoration: none;
        border-bottom: solid 1px;
    }

    li.level-2 a {
        clear: left;
        width: 100%;
        background: #eee;
        padding-left: 10px;
        border-bottom: solid 1px #ddd;
    }

    .Home_Box {
        max-height: 110px;
    }
}

@media (max-width: 767px) {
    .footer, .footerright {
        text-align: center;
    }

    .Home_Box {
        max-height: 0%;
    }

    .home .kontaktblock {
        height: 350px;
        font-size: 15px;
    }

    .home .header, .header {
        height: 200px;
    }

    #logo {
        width: 8em;
    }
}

@media (max-width: 450px) {
    .more_infos {
        width: 100%;
        text-align: center;
    }
}

/* Erweiterungen ab 01.05.2019 */
.image.col-md-4 {
    /* padding: 4px; */
    height: 300px;
}

.image.col-md-4 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: 'object-fit:cover';
}

ul {
    padding-left: 15px;
}

div#gallery {
    margin: -15px;
}

.category_images.container-fluid {
    margin: 0px -15px;
}

.breadcrumb {
    background-color: transparent;
}

.img-hover-zoom--quick-zoom {
    overflow: hidden;
    height: 280px;
}

.img-hover-zoom--colorize {
    overflow: hidden;
    height: 100%;
}

.img-hover-zoom--quick-zoom img, .img-hover-zoom--colorize img {
    transition: transform .25s, filter 0.8s ease-in-out;
    filter: grayscale(80%);
}

/* The Transformation */
.img-hover-zoom--quick-zoom:hover img, .img-hover-zoom--colorize:hover img {
    filter: grayscale(0);
    transform: scale(1.05);
}

.header img {
    height: 100%;
    object-fit: cover;
    object-position: center;
}

header {
    color: #E6D690 !important;
    background-color: #7E7B52;
}

header a {
    color: #E6D690 !important;
}

.c7n-content {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

input[type=text] {
    padding: 5px 0px !important;
}

.contact-info {
    padding: 15px 0px;
}
