@charset "utf-8";

/* TODO */


body {
    overflow-x: hidden;
}

a,
p {
    color: #333;
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
}

a:link,
a:visited,
a:hover,
a:active,
a:focus {
    color: #333;
    font-size: 14px;
    text-decoration: none;
}

h1,
h2,
h3,
h4,
h5 {
    color: #333;
    font-family: 'Open Sans', sans-serif;
    font-weight: bold;
}

h1 {
    font-size: 22px;
}

h2 {
    font-size: 20px;
}

h3 {
    font-size: 18px;
}

h4 {
    font-size: 16px;
}

h5 {
    font-size: 14px;
}

h5.italic {
    font-weight: 500;
}

b,
strong {
    font-weight: 600;
}


/*
 *
 * Buttons
 */

.btn-primary,
.btn-primary:focus,
.btn-primary:hover {
    background: #399B3F;
    border-color: #399B3F;
    transition: background 300ms ease;
}

.btn-primary:focus,
.btn-primary:hover {
    background: #399B3F;
    border-color: #399B3F;
}

.navbar li a:link,
.navbar li a:visited,
.navbar li a:hover,
.navbar li a:active,
.navbar li a:focus {
    font-size: 14px;
    text-decoration: none;
}


.xxx--page-header--img {
    text-align: center;
}

.xxx--page-header--img img {
    width: 100%;
    max-width: 150px;
    margin-bottom: 30px;
}

.head_menue a span {
    color: #399B3F;
    font-size: 14px;
}

.xxx--page-header--menu {
    background-color: #F1EFEC;
}

.navbar-default {
    background-color: transparent;
}

.navbar-default .navbar-collapse {
    background-color: transparent;
}

.navbar {
    margin: 0;
}

.xxx--page-footer--block {
    background-image: url("../images/bg_green1.png");
    background-repeat: no-repeat;
    background-position-x: right;
    margin-top: 30px;
}

.xxx--page-footer--block--img img {
    width: 100%;
    max-width: 100px;
    margin-bottom: 30px;
}

.xxx--page-footer--block--buttons {
    text-align: center;
}

.xxx--page-footer--block--buttons .fa {
    font-size: 40px;
    color: #fff;
}

.xxx--page-footer--block--buttons a {
    font-size: 14px;
    line-height: 30px;
    color: #fff;
}

.xxx--page-footer--block--buttons > div > div {
    border: 3px solid #FFF;
    border-radius: 20px;
    margin: 15px 1vw;
    padding: 45px 0;
}

.xxx--page-footer--block1 > div > div {
    padding: 15px 15px 0 15px;
}

.xxx--page-footer--block2 {
    background-color: #F1EFEC;

}

.xxx--page-footer--block2 > div > div {
    padding: 8px 0px 8px 45px;
}

.modal-dialog .btn-default,
.modal-dialog .btn-default:focus,
.modal-dialog .btn-default:hover,
.btn-primary,
.btn-primary:focus,
.btn-primary:hover {
    background: #CB2527 !important;
    border-color: #CB2527 !important;
    border-radius: 18px !important;
    padding: 2px 8px !important;
    transition: background 300ms ease;
    color: #FFF
}

.fuss_form {
    padding: 0;
    margin: -17px -15px 0 -15px;
}

.fussform > div {
    margin: -7px 0;
}

.fuss_form_form .input-group .form-control:last-child {
    min-width: 100px;
}

.store_img {
    width: 54px;
}

.xxx--page-footer--block--content {
    min-height: 320px;
}

.xxx--page-footer--block--content h4 {
    margin-bottom: 22px;
}

.xxx--portal-mod--block {
    margin-top: 18px;
    margin-bottom: -5px;
    padding: 0;

}

.clearfix.news {
    background-color: #F1EFEC;
    padding: 30px 0;
    margin-bottom: 30px;
}

.news_titel {
    min-height: 50px
}

.xxx--portal-mod--headline {
    text-align: center;
}

.grossbild {
    position: relative;
    background-repeat: no-repeat;
    background-size: 100%;
    padding-top: 22vw;
    margin-top: 0;
}

.grossbild.pic_aktuell {
    background-image: url("../images/aktuell.jpg");
}

.grossbild.pic_feste {
    background-image: url("../images/feste.jpg");
}

.grossbild.pic_mediathek {
    background-image: url("../images/mediathek.jpg");
}

.grossbild.pic_verein {
    background-image: url("../images/verein.jpg");
}

.grossbild.pic_kontakt {
    background-image: url("../images/kontakt.jpg");
}

.grossbild div {
    position: absolute;
    top: 8vw;
    text-align: left;
    padding-left: 20vw;
    width: 100%;
    font-family: "Arial Black";
    font-weight: 900;
    font-size: 3vw;

    color: #fff;
}

.startslider .xxx--portal-mod--block {
    padding: 0;
    margin-top: -0;
}

.xxx--portal-1 .knt_katalog div.galbild_vorsch,
.xxx--portal-4 .knt_katalog div.galbild_vorsch {
    padding: 0;
    height: 332px;
}

.xxx--portal-1 .knt_katalog div.galbild_vorsch img,
.xxx--portal-4 .knt_katalog div.galbild_vorsch img {
    border-radius: 0;
}

.xxx--portal-1 .knt_news div.galbild_vorsch {
    /* height: 372px; */
}

.xxx--portal-1 .knt_news div.galbild_vorsch img {
    border-radius: 0;
}

.xxx--portal-1 .knt_termin div.galbild_vorsch {
    /* height: 372px; */
}

.xxx--portal-1 .knt_termin div.galbild_vorsch img {
    border-radius: 0;
}

.knt_list {
    padding: 0 0 15px 0;
    margin-top: 30px;
}

.knt_list div div.galbild_vorsch img {
    border-radius: 0;
}

.knt_list div.galbild_vorsch {

    padding: 0;
    height: 332px;
}

.knt_list .knt_odd {
    background-color: #F1EFEC;

}

.knt_list .knt_even {

}

.knt_list .knt_odd div.galbild_vorsch img {
    top: 0;
    right: unset;
    bottom: unset;
    left: -15px;

}

.knt_list .knt_even div.galbild_vorsch img {
    top: 0;
    right: -15px;
    bottom: unset;
    left: unset;
}

.knt_list .xxx--portal-mod--block-knt--teaser-btn {
    margin-bottom: 15px;
}

.knt_katalog_welkome {
    width: 100vw;
    position: relative;
    padding: 30px;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    margin-top: -10px;
    background-image: url(../images/bg_green2.png);
    background-repeat: no-repeat;
    background-position-x: center;
    background-color: #56A44E;
}

.knt_katalog_welkome h3,
.knt_katalog_welkome p {
    color: #FFF;
}

.knt_katalog_welkome h3 {
    font-size: 22px;
    line-height: 35px;
}

.knt_katalog_welkome .xxx--portal-mod--block-knt--teaser-btn,
.knt_katalog_welkome .xxx--portal-mod--block-knt--teaser-btn:hover {
    margin-top: 30px;
    background-color: #fff !important;
    border-color: #fff !important;
    color: #666;
    float: left !important;
    padding: 3px 15px !important;
}

.portal_html {
    width: 100vw;
    position: relative;
    padding: 30px;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    margin-top: -10px;
    background-image: url(../images/rummel.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position-x: right;
    background-color: #56A44E;
}

.portal_html:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(86, 164, 78, 0.75);
    padding: 50px;

}

.portal_html h2,
.portal_html p {
    position: relative;
    color: #FFF;

}

.portal_html h2 {
    padding: 45px;
    width: 60%;
    text-align: left;
    font-size: 32px;
    line-height: 36px
}

.xxx--portal-4 .knt_katalog_welkome h3 {
    display: none;
}

.xxx--portal-mod-4-1 {
    margin-top: 40px;
}

.xxx--portal-mod-4-1 p {
    padding: 0.5vw 3vw;

}

.portal_html p {
    padding: 0 60px;
}

.portal_html p button,
.portal_html p button:hover {
    margin-top: 30px;
    background-color: #fff !important;
    border-color: #fff !important;
    color: #666;
    float: left !important;
    padding: 3px 15px !important;
}

a.link_red {
    color: #CB2527;
}

.fw-600 {
    font-weight: 600 !important;
}

.link-color {
    color: #399B3F !important;
}

.row.adresse {
    margin-top: 30px;
}

.row.adresse div.galbild_vorsch img {
    bottom: unset;
    right: unset;
}

.mitglieder .adresse {
    height: 475px;
    border: 1px solid grey;
    background-color: #F1EFEC;
}

.adresse > .xxx---w-100 {
    background-color: #c0c0c0;
}

.mitglieder .adresse.gruen {
    height: 475px;
    border: 1px solid #46893F;
    background-color: #56A44E;
}

.adresse.gruen > .xxx---w-100 {
    background-color: #46893F;
}


.adresse div.galbild_vorsch {
    height: 260px;
}

.adresse.gruen p,
.adresse.gruen h2 {
    color: #FFF;
}

.adresse.gruen p {
    font-size: 16px;
}

.adresse.gruen h2 {
    font-size: 30px;
}

.adr_name p {
    font-weight: 900;
    font-size: 16px;
    line-height: 22px;
}

.adr_funktion p {
    font-weight: 900;
    font-size: 14px;
}

.adr_kontakt p {
    /*line-height: 9px;*/
    margin-bottom: 0;
}


.carousel-inner {
    margin-bottom: 0;
}

.carousel-control {
    /*display: none;*/
}


.carousel-indicators .active,
.carousel-indicators li {
    width: 13px;
    height: 13px;
    margin: 0 3px;

}


.carousel-indicators {
    display: block;
    position: absolute;
    bottom: 15px;
    left: 50%;
    z-index: 15;
    width: 100%;
    padding-left: 0;
    margin-left: -50%;
    text-align: center;
    list-style: none;
}

.carousel-indicators .active {
    width: 13px;
    height: 13px;
    background-color: #FFF;
    border: 4px solid #FFF;
}

.carousel-indicators li {
    border: 2px solid #FFF;
    background-color: transparent;
}

.xxx--portal-3 .xxx--gallery--image-notation {
    position: absolute;
    text-align: left;
    padding-left: 20vw;
    width: 100%;
    font-family: "Arial Black";
    font-weight: 900;
    font-size: 5vw;
    line-height: 5.5vw;
    bottom: 16vw;
    color: #fff;
}


@media (max-width: 768px) {
    .xxx--page-footer--block {
        background-size: cover;
    }

    .knt_list .knt_even div.galbild_vorsch img,
    .knt_list .knt_odd div.galbild_vorsch img {
        top: 3vw;
        right: 0;
        bottom: unset;
        left: 0;
    }

    .knt_list div.galbild_vorsch {

        height: calc(67vw - 60px);
    }

    .home-link img {
        margin: 15px -15px;
        height: auto;
        max-height: 60px;
    }

    .navbar-toggle {
        margin-top: 26px;
        border: 1px solid #46893F !important;
        padding: 9px 10px 4px 10px !important;
    }

    .navbar-default .navbar-toggle .icon-bar {
        background-color: #CB2527;
    }

    .navbar-collapse.collapse.in {
        z-index: 1000;
        width: 90%;
    }
    .fussform label.form_elem_desc, div.labelb {
        padding: 10px 10px 0px 0;
        line-height: 10px;
    }
}

@media (min-width: 768px) {
    .modal-dialog {
        margin: 15vh auto;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .adresse div.galbild_vorsch {
        height: 248px;
    }

    .home-link img {
        margin: 15px -15px;
        height: auto;
        max-height: 60px;
    }

    .navbar-toggle {
        margin-top: 26px;
        border: 1px solid #46893F !important;
        padding: 9px 10px 4px 10px !important;
    }

    .navbar-default .navbar-toggle .icon-bar {
        background-color: #CB2527;
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .adresse div.galbild_vorsch {
        height: 19vw;
    }
}

@media (min-width: 992px) {
    .xxx--scroll-sticky .xxx--page-header--head {
        display: none;
    }

    ul.ul__menu {
        width: 100%;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: flex-start;
        align-content: space-between;
    }

    .ul__menu > li {
        width: 100%;
    }

    .nav > li {
        position: inherit;
        /*display: block;*/
    }

    .navbar-default .navbar-nav > li > a:hover {
        color: #CB2527;
        background-color: #c0c0c0;
        border-bottom: 3px solid #CB2527;
    }

    .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:focus, .navbar-default .navbar-nav > .active > a:hover {
        color: #CB2527;
        background-color: #F1EFEC;
        border-bottom: 4px solid #CB2527;
    }

    .navbar li a:link,
    .navbar li a:visited,
    .navbar li a:hover,
    .navbar li a:active,
    .navbar li a:focus {
        text-align: center !important;
        /*text-transform: uppercase;*/
        font-size: 16px;
        font-weight: 700;
        border-bottom: 4px solid transparent;
    }

    .dunkelgrau {
        background-color: #c0c0c0;
    }

    /*.navbar li.menue > a:hover,*/
    /*.navbar li.menue > div > a:hover {*/
    /*    border-bottom: 2px solid red;*/
    /*}*/
}

@media (min-width: 1200px) {
    .navbar-default .navbar-nav {
        margin: 0;
    }
}