header,footer,nav,section,aside,main,article,figure,figcaption{display:block}body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea{margin:0;padding:0}table{border-spacing:0;border-collapse:collapse}caption,th,td{text-align:left;text-align:start;vertical-align:top}abbr,acronym{font-variant:normal;border-bottom:1px dotted #666;cursor:help}blockquote,q{quotes:none}fieldset,img,iframe{border:0}ul{list-style-type:none}sup{vertical-align:text-top}sub{vertical-align:text-bottom}del{text-decoration:line-through}ins{text-decoration:none}body{font:12px/1 "Lucida Grande","Lucida Sans Unicode",Verdana,sans-serif;color:#000}input,button,textarea,select{font-family:inherit;font-size:99%;font-weight:inherit}pre,code{font-family:Monaco,monospace}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}h1{font-size:1.8333em}h2{font-size:1.6667em}h3{font-size:1.5em}h4{font-size:1.3333em}table{font-size:inherit}caption,th{font-weight:700}a{color:#00f}h1,h2,h3,h4,h5,h6{margin-top:1em}h1,h2,h3,h4,h5,h6,p,pre,blockquote,table,ol,ul,form{margin-bottom:12px}
.mobile_menu{position:fixed;z-index:100;display:none}.mobile_menu .inner{height:100%;background:#000;overflow-y:scroll}.mobile_menu.active.position_left{box-shadow:2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_top{box-shadow:0 2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_right{box-shadow:-2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_bottom{box-shadow:0 -2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.no_shadow{box-shadow:none!important}.mobile_menu_trigger{display:none}.mobile_menu_wrapper{position:relative;width:100%;overflow:hidden}.mobile_menu_overlay{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:99}.mobile_menu_overlay.background{background:rgba(0,0,0,.5)}.mobile_menu li.submenu_hide>ul{display:none}.mobile_menu li.submenu_show>ul{display:block}body.ie8 .mobile_menu,body.ie8 .mobile_menu_trigger,body.ie9 .mobile_menu,body.ie9 .mobile_menu_trigger{display:none!important}
@charset "UTF-8";
/* CSS Document */
/* fira-sans-regular - latin */
@font-face {
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../../files/kkvl/fonts/fira-sans-v11-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/kkvl/fonts/fira-sans-v11-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-regular.svg#FiraSans') format('svg'); /* Legacy iOS */
}
/* fira-sans-italic - latin */
@font-face {
  font-family: 'Fira Sans';
  font-style: italic;
  font-weight: 400;
  src: url('../../files/kkvl/fonts/fira-sans-v11-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/kkvl/fonts/fira-sans-v11-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-italic.svg#FiraSans') format('svg'); /* Legacy iOS */
}
/* fira-sans-600 - latin */
@font-face {
  font-family: 'Fira Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../../files/kkvl/fonts/fira-sans-v11-latin-600.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/kkvl/fonts/fira-sans-v11-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-600.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-600.woff') format('woff'), /* Modern Browsers */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-600.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-600.svg#FiraSans') format('svg'); /* Legacy iOS */
}
/* fira-sans-600italic - latin */
@font-face {
  font-family: 'Fira Sans';
  font-style: italic;
  font-weight: 600;
  src: url('../../files/kkvl/fonts/fira-sans-v11-latin-600italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/kkvl/fonts/fira-sans-v11-latin-600italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-600italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-600italic.woff') format('woff'), /* Modern Browsers */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-600italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/kkvl/fonts/fira-sans-v11-latin-600italic.svg#FiraSans') format('svg'); /* Legacy iOS */
}

/* oxygen-regular - latin */
@font-face {
  font-family: 'Oxygen';
  font-style: normal;
  font-weight: 400;
  src: url('../../files/kkvl/fonts/oxygen-v10-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/kkvl/fonts/oxygen-v10-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/kkvl/fonts/oxygen-v10-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/kkvl/fonts/oxygen-v10-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../../files/kkvl/fonts/oxygen-v10-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/kkvl/fonts/oxygen-v10-latin-regular.svg#Oxygen') format('svg'); /* Legacy iOS */
}
/* oxygen-700 - latin */
@font-face {
  font-family: 'Oxygen';
  font-style: normal;
  font-weight: 700;
  src: url('../../files/kkvl/fonts/oxygen-v10-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../../files/kkvl/fonts/oxygen-v10-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../../files/kkvl/fonts/oxygen-v10-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../../files/kkvl/fonts/oxygen-v10-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../../files/kkvl/fonts/oxygen-v10-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../../files/kkvl/fonts/oxygen-v10-latin-700.svg#Oxygen') format('svg'); /* Legacy iOS */
}

html, body {
    width: 100%;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

body {
    position: relative
}

p.back  {
    margin-top: 1.5rem;
}

@media only screen and (min-width: 901px) {
    body {
        background: url("../../files/kkvl/img/body-bg_02.gif") repeat-x;
    }
}

#wrapper {
    margin: 0 auto;
    padding: 0;
    background: none;
    font-size: 15px;
    line-height: 20px;
}

#header {
    /*	background: url("../../files/kkvl/img/header_03.jpg") center 120px no-repeat;*/
    position: relative;
    margin: 0 auto;
    padding: 0;
    z-index: 20;
    height: 350px;
    width: 100%;
    font-family: 'Fira Sans', sans-serif;
}

body.home #header {
    background: url("../../files/kkvl/img/header_02.jpg") center 120px no-repeat;
    height: 700px;
}

#header .inside {
    margin: 0 auto;
    padding: 0;
    height: 400px;
    width: 1260px;
}

body.home #header .inside {
    margin: 0 auto;
    padding: 0;
    height: 700px;
    width: 1260px;
}

#topbar {
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 1260px;
    height: 90px;
}

.logobox {
    margin: 0 0 0 0;
    padding: 0;
    width: 450px;
}

#toplinks {
    margin: 0 auto;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
    height: 45px;
}

#toplinks a {
    color: #FFF;
    text-decoration: none;
}

.toplink, .login {
    margin: 0 30px 0 50px;
    width: 80px;
    height: 45px;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    text-align: left;
    line-height: 45px;
    vertical-align: middle;
}

.login::after {
    content: " ";
    display: inline-block;
    width: 25px;
    height: 30px;
    background: url("../../files/kkvl/img/login_w.svg") center center no-repeat;
}

.form-search form input {
    height: 28px;
    width: 450px;
    padding: 4px 0 4px 8px;
    background-color: #e0e0e0;
    border-radius: 3px;
    border: none;
    color: #FFF;
}

.form-search form {
    position: relative;
    display: flex;
    border: none;
    margin: 0 !important;
}

.form-search form button {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 2;
    padding: 4px;
    width: 35px;
    height: 30px;
    color: transparent;
    background: url("../../files/kkvl/img/search.svg") center center no-repeat;
    background-size: 25px;
    border: none;
}

.sr-only {
    display: none;
}

.menuhalter {
    margin: 0 0 0 0;
}

#topbar .mod_navigation, #footer .mod_customnav {
    margin: 0;
    font-family: 'Fira Sans', sans-serif;
    font-weight: normal;
    letter-spacing: .05em;
    font-size: 16px;
    width: auto;
    height: 55px;
    text-align: right;
    text-transform: uppercase;
}

#footer .mod_customnav {
    font-size: 12px;
}

/*/////////////// NAVIGATION ///////////////*/
#topbar .mod_navigation ul, #footer .mod_customnav ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}

#topbar .mod_navigation li, .footernavi ul li {
    margin: 0;
    padding: 8px;
    height: 16px;
    line-height: 16px;
    vertical-align: middle;
    text-align: center;
    color: #4d4849;
}

#topbar .mod_navigation li.active, #topbar .mod_navigation li.trail {
    vertical-align: middle;
    background: #e0e0e0;
    -moz-border-radius: 4px 4px 4px 4px;
    -webkit-border-radius: 4px 4px 4px 4px;
    border-radius: 4px 4px 4px 4px;
    -webkit-box-shadow: 3px 3px 0px 0px #63656a;
    -moz-box-shadow: 3px 3px 0px 0px #63656a;
    box-shadow: 3px 3px 0px 0px #63656a;
}

#topbar .mod_navigation li:last-child {
    margin-right: 0;
}

#topbar .mod_navigation a, #topbar .mod_navigation strong, .footernavi a, .footernavi strong {
    padding: 14px;
    color: #4d4849;
    text-decoration: none;
    white-space: nowrap;
}

#topbar .mod_navigation strong {
    font-weight: 400;
}

#topbar .mod_navigation a.trail, #topbar .mod_navigation a:hover, #topbar .mod_navigation strong.active {
    text-decoration: none;
}

/*/////////////// SUBNAVI ///////////////*/
#subnavi ul.level_1 {
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    font-size: 15px;
    line-height: 18px;
}

#subnavi ul.level_1 li strong.active, #subnavi ul.level_1 li a.trail {
    margin: 0 2% 1.5% 5%;
    width: 90%;
    padding: 0;
    height: 39px;
    line-height: 38px;
    vertical-align: middle;
    display: block;
    background: #0288c5;
    -moz-border-radius: 4px 4px 4px 4px;
    -webkit-border-radius: 4px 4px 4px 4px;
    border-radius: 4px 4px 4px 4px;
}

#subnavi, #left .mod_eventlist, #linkbox {
    margin: 0 0 0 2px;
    padding: 15px 0 30px 2px;
    width: 300px;
    text-align: left;
    color: #FFF;
    background: #22221c;
    -moz-border-radius: 4px 4px 4px 4px;
    -webkit-border-radius: 4px 4px 4px 4px;
    border-radius: 4px 4px 4px 4px;
    height: auto;
}

#subnavi ul.level_1 li {
    /*	text-indent:15px;*/
    background: none;
}

#linkbox a {
    text-decoration: none;
    color: #FFF;
}

#linkbox a:hover {
    text-decoration: none;
    color: #0090D2;
}

#subnavi ul.level_1 li a, #subnavi ul.level_2 li a {
    margin: 0 2% 1.5% 5%;
    width: 90%;
    /*   text-indent: 15px;*/
    min-height: 38px;
    line-height: 38px;
    vertical-align: middle;
    display: block;
    text-decoration: none;
    color: #FFF;
    border-bottom: 1px solid #464646;
}

#subnavi ul.level_1 li a.last, #subnavi ul.level_1 li strong.last {
}

#subnavi ul.level_1 li.active, #subnavi ul.level_1 li.trail {
    text-indent: 15px;
}

#subnavi ul.level_1 li.active:before {
    z-index: 20;
    content: "";
    width: 15px;
    height: 38px;
    background: url("../../files/kkvl/img/eck.svg") left center no-repeat;
    display: block;
    margin: 0 0 0 -2px;
    padding: 0;
    float: left;
}

#subnavi ul.level_2 li a, #subnavi ul.level_2 li strong.active {
    margin: 0 2% 1.5% 5%;
    text-indent: 15px;
    background: rgba(2, 136, 197, 0.6);
    -moz-border-radius: 4px 4px 4px 4px;
    -webkit-border-radius: 4px 4px 4px 4px;
    border-radius: 4px 4px 4px 4px;
}

.invisible {
    display: none !important;
}

#news-startseite {
    margin: 300px 0 0 0;
    padding: 20px;
    width: 500px;
    font-size: 15px;
    line-height: 19px;
    color: #FFF;
    background: #100701;
    border-radius: 4px 4px 4px 4px;
    border: 1px #FFF solid;
}

#container {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
    position: relative;
    margin: 0 auto;
    padding: 10px 0 40px 0;
    font-size: 16px;
    overflow: auto;
    margin-bottom: 0;
    width: 1260px;
    font-family: 'Fira Sans', sans-serif;
}

#main {
    color: #72706f;
    width: 70%;
}

#main .inside {
    padding: 40px 0 20px 20px;
    text-align: left;
    height: auto;
}

#main a {
    color: #0090D2;
    text-decoration: none;
}

#main figure img,
#main p img {
    max-width: 100%;
    height: auto;
}

#left {
    width: 26%;
}

#left .inside {
    padding: 40px 10px 20px 10px;
    text-align: left;
    height: auto;
    background-color: hsla(0, 0%, 100%, 0.85);
    -moz-border-radius: 4px 4px 4px 4px;
    -webkit-border-radius: 4px 4px 4px 4px;
    border-radius: 4px 4px 4px 4px;
}

#footer {
    width: 100%;
    height: 290px;
}

#footer .inside {
    margin: 0 auto;
    padding-top: 20px;
    width: 1260px;
    border-top: 1px solid #eee;
    display: flex;
    justify-content: space-between;
}

h1 {
    position: relative;
    margin: 0 0 15px 0;
    padding-bottom: 8px;
    font: 24px/30px 'Oxygen', sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    color: #565656;
}

h1::after, #left h3::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2px;
    background-color: #0090D2;
    width: 5%;
}

#left h3::after {
    left: 16px;
    width: 10%;

}

#left p.more a, #header p.more a, .event_container .teaser a {
    padding-right: 12px;
    text-decoration: none;
    color: #0090D2;
    font-weight: 400;
    font-size: 13px;
    text-transform: uppercase;
}

#main p.more a, #left p.more a, #header p.more a {
    padding: 6px 12px;
    -moz-border-radius: 4px 4px 4px 4px;
    -webkit-border-radius: 4px 4px 4px 4px;
    border-radius: 4px 4px 4px 4px;
    color: #000;
    background: #e0e0e0;
    -webkit-box-shadow: 3px 3px 0px 0px #63656a;
    -moz-box-shadow: 3px 3px 0px 0px #63656a;
    box-shadow: 3px 3px 0px 0px #63656a;
}

#main p.more, #left p.more, #header p.more {
    margin: 12px 0 20px 0;
    text-transform: uppercase;
    font-size: 13px;
}

#left p.more, #header p.more {
    margin: 12px 0 12px 0;
    padding: 0;
}

#left .content-text, #left .mod_subscribe {
    padding: 5px 15px 15px 15px;
}

#left .mod_subscribe label {
    color: #FFF !important;
}

#left p.more a, #header p.more a {
    padding: 3px 6px;
    color: #000;
    background: #e0e0e0;
    -webkit-box-shadow: 3px 3px 0px 0px #0090d2;
    -moz-box-shadow: 3px 3px 0px 0px #0090d2;
    box-shadow: 3px 3px 0px 0px #0090d2;
}

#main .mod_newslist .layout_short {
    margin: 0 0 16px 0;
    border-bottom: 1px solid #cccccc;

}

#left .mod_eventlist {
    padding: 20px 0 0 5px;
    width: 100%;
}

#left .event_container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

#left .mod_eventlist .header {
    padding: 0 0 12px 15px;
    width: 65px;
}

#left .mod_eventlist .date {
    margin: 0 8px 0 0;
    padding: 5px 8px 5px 8px;
    width: 30px;
    height: auto;
    background: #FFF;
    -moz-border-radius: 4px 4px 4px 4px;
    -webkit-border-radius: 4px 4px 4px 4px;
    border-radius: 4px 4px 4px 4px;
    text-align: center;
}

#left .mod_eventlist p.day, #left .mod_eventlist p.month, #left .mod_eventlist p.year, #left .mod_eventlist p.time {
    margin: 0 0 2px 0;
    color: #22221c;
}

#left .layout_teaser {
    padding: 0 12px 12px 4px;
}

#subnavi h3, #left .mod_eventlist h3, #linkbox h3.leftheading {
    position: relative;
    margin: 0 0 15px 0;
    padding-bottom: 8px;
    text-indent: 16px;
    height: 30px;
    color: #FFF;
    font: 20px/30px 'Oxygen', sans-serif;
    font-weight: 400;
    text-transform: uppercase;
}

#left .mod_eventlist h2, body.home #header h2, #main h2 {
    margin: 0 0 8px 0;
    font-size: 16px;
    font-weight: 700;
    font-family: 'Oxygen', sans-serif;
}

body.home #header h2 {
    font-size: 21px;
    line-height: 24px;
}

#main h2 a {
    color: #474747;
    text-decoration: none;
}

#left .mod_eventlist h2 a, body.home #header h2 a {
    color: #FFF;
    text-decoration: none;
}

.mod_mobile_menu {
    diplay: none;
}

.footernavi ul li a, .footernavi ul li strong.active {

}

.footernavi ul li span.active {
    color: #22221C;
}

.footernavi ul li.last a, .footernavi ul li.last strong.active {

}

#personen {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
}

.bio, .kont, .kontakt {
    margin: 0 0 15px 0;
    min-height: 300px;
    max-height: 480px;
}

.kont, .kontakt {
    min-height: 150px;
    max-height: 350px;
    width: 250px;
}

.bio {
    width: 300px;
}

#personen .content-headline:first-child {
    width: 90%
}

figure {
    margin: 0 0 8px 0;
    padding: 0;
}

#main ul {
    padding-left: 0;
    list-style: none;
    margin-bottom: 15px;
    max-width: 700px;
}

#main ul li {
    position: relative;
    padding-left: 16px;
    margin-bottom: 7px;
}

#main ul li::before {
    width: 7px;
    height: 7px;
    content: '';
    position: absolute;
    background-color: #0288c5;
    left: 0;
    top: 6px;
}

#main .content-gallery ul {
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 850px !important;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}

#main .content-gallery ul li::before {
    display: none;
}

#main .content-gallery li {
    padding: 0;
    width: 250px;
    height: auto !important;
    margin: 0px !important;
    margin-bottom: 25px !important;
}

.download-element {
    margin-bottom: 12px;

    a {
        display: inline-block;
    }
}

/*///////// AGENDA ///////////*/
/*//////// EVENTLISTE AGENDA MAIN //////*/
#main .agenda .layout_teaser, #main .agenda .layout_list {
    background: #f1f1f1;
    width: 98%;
    padding: 0 0 1.7% 2%;
    margin-bottom: 3px;
}

#main .agenda .header {
    padding: 8px 0 8px 0;
    width: 100%;
    background: #22221c;
    color: #FFF;
    text-indent: 2%;
    -moz-border-radius: 4px 4px 4px 4px;
    -webkit-border-radius: 4px 4px 4px 4px;
    border-radius: 4px 4px 4px 4px;
}

#main .agenda .mod_eventlist h2, #main .agenda .layout_list h2 {
    padding-top: 12px;
    font-size: 17px;
    font-weight: 600;
}

#main .agenda .layout_list h2 a {
    color: #0090D2;
}

#main .agenda .mod_eventlist h3 {
    padding: 12px 0 12px 0;
    margin: 0;
    font-size: 17px;
    font-weight: 700;
}

#main .agenda .mod_eventlist .date {
    padding: 0 0 0 15px;
}

#main .agenda .mod_eventlist .date div {
    display: inline;
}

.choere {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}

.choere h2 {
    min-width: 100%;
    min-height: 26px;
    white-space: nowrap;
}

.choere .content-hyperlink, .choere .content-text, .partner .content-hyperlink {
    width: 40%;
    height: 30px;
    line-height: 30px;
    vertical-align: middle;
    text-indent: 25px;
    white-space: nowrap;
}

.choere .intLink {
    background: url("../../files/kkvl/img/in.svg") 0 center no-repeat;
    background-size: 15px;
}

.choere .extLink, .partner .extLink {
    background: url("../../files/kkvl/img/out.svg") 0 center no-repeat;
    background-size: 15px;
}

.choere .noLink {
    background: url("../../files/kkvl/img/nix.svg") 0 center no-repeat;
    background-size: 15px;
}

.content-youtube {
    margin-bottom: 20px;
}

/*///////VIDEOS RESPONSIVE ////*/
.responsive.ratio-169 {
    padding-bottom: 56.25%;
}

.responsive {
    position: relative;
    height: 0;
}

.responsive iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/*///////////////// KONTAKT /////////*/
#kontakt .formzeile, #kontakt .checkbox_container, #kontakt .radio_container {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 15px;
}

#kontakt .widget-checkbox, #kontakt .widget-radio {
    border-bottom: 1px solid #D5D5D5;
}

#kontakt .widget-checkbox span, #kontakt .widget-radio span {
    line-height: 30px;
}

form .widget label, form legend {
    font-weight: normal !important;
    color: #393939;
}

#kontakt .widget-checkbox legend, #kontakt .widget-radio legend {
    margin-bottom: 6px;
    font-weight: 700 !important;
}

#kontakt .feldcontainer {
    margin: 0 0 15px 0;
    padding: 0;
    width: 46%;
    height: 60px;
}

#kontakt .text, #anmeldung .text {
    margin: 3px 0 0 0;
    padding: 3px;
    width: 95%;
    height: 36px;
    background: #EDEDED;
    border: none;
    -moz-border-radius: 3px 3px 3px 3px;
    -webkit-border-radius: 3px 3px 3px 3px;
    border-radius: 3px 3px 3px 3px;
    text-indent: 8px;
    color: #000;
}

form .checkbox {
    margin: 3px 0 0 0;
    padding: 3px;
    height: 26px;
    width: 26px;
    background: #EDEDED;
}

#kontakt .error {
    background: #cc0a0a;
    -moz-border-radius: 3px 3px 3px 3px;
    -webkit-border-radius: 3px 3px 3px 3px;
    border-radius: 3px 3px 3px 3px;
}

#kontakt p.error {
    color: #fff;
}

#kontakt .widget-textarea, #kontakt .widget-radio, #kontakt .widget-checkbox, #kontakt .widget-submit, #kontakt .tfw {
    width: 100%;
}

#kontakt .widget-submit {
    display: flex;
    justify-content: flex-end;
}

#kontakt button {
    margin: 0 0 0;
    padding: 4px 16px;
    width: 100px;
    height: 35px;
    display: block;
    background: #22221C;
    color: #FFF;
    cursor: pointer;
    border-color: #22221C;
    -moz-border-radius: 3px 3px 3px 3px;
    -webkit-border-radius: 3px 3px 3px 3px;
    border-radius: 3px 3px 3px 3px;
    -webkit-appearance: button;
    text-align: center;
    font-size: 16px;
}

#kontakt .textarea, #anmeldung .textarea {
    margin: 3px 0 0 0;
    padding: 8px;
    height: 150px;
    border: none;
    background: #EDEDED;
    -moz-border-radius: 3px 3px 3px 3px;
    -webkit-border-radius: 3px 3px 3px 3px;
    border-radius: 3px 3px 3px 3px;
    color: #000;
}

#kontakt .feldcontainer, #anmeldung .feldcontainer {
    min-height: 70px;
}

/*#kontakt .explanation, #anmeldung .explanation {
	border-top:1px solid #D5D5D5;
}*/
#main .pagination ul {
    display: flex;
    justify-content: flex-start;
}

#main .pagination ul li {
    margin: 0 5px 0 0;
    padding: 0 5px 0 0;
    width: auto;
    height: 14px;
}

.pagination ul li::before {
    display: none;
}

.content-table table td {
    padding: 2px 10px 2px 0;
}

.personentabelle table {
    min-width: 70%;
}

.personentabelle table td {
    width: 50%;
}

.stelle {
    margin-bottom: 25px;
    border-bottom: 1px solid #ECECEC;
}

/*/////////// MOBILE STYLES /////*/
@media only screen and (max-width: 900px) {
    #wrapper {
        width: 99%;
        margin: 0 auto;
    }

    #topbar {
        width: 100%;
        height: 90px;
        display: block;
        position: relative;
    }

    #toplinks {
        display: none;
    }

    .logobox {
        position: absolute;
        top: 15px;
        margin: 0 0 0 0;
        padding: 0;
        width: 100%;
    }

    .menuhalter {
        position: absolute;
        right: 0;
        top: 6px;
        margin: 0 0 0 0;
        z-index: 200;
    }

    .mod_mobile_menu {
        display: block;
        margin: 0;
        height: 50px;
        line-height: 50px;
        vertical-align: middle;
        width: 80px;
    }

    .mobile_menu_trigger {
        position: relative;
        z-index: 60;
        cursor: pointer;
        width: 100px;
        height: 42px;
        display: block;
    }

    .mobile_menu_hamburger {
        margin-left: 25px;
        position: absolute;
        width: 45px;
    }

    .mobile_menu_hamburger:after, .mobile_menu_hamburger:before {
        content: ""
    }

    .mobile_menu_hamburger:after, .mobile_menu_hamburger:before, .mobile_menu_hamburger i {
        display: block;
        height: 7px;
        margin: 6px 0;
        background-color: #100701;
        border-radius: 3px;
    }

    /* MOBILE MENU */
    .mobile_menu .inner {
        height: 100%;
        overflow-y: scroll;
        background: #f8f8f8;
    }

    .mobile_menu .inner .mod_navigation {
        margin: 0;
        font-family: 'Fira Sans', sans-serif;
        font-weight: normal;
        letter-spacing: .05em;
        text-transform: uppercase;
    }

    .mobile_menu .mod_navigation ul {
        margin: 0;
        padding: 0;
        list-style-type: none;
    }

    .mobile_menu .mod_navigation ul li {
        margin: 0;
        padding: 0;
    }

    .mobile_menu .mod_navigation .level_1 a,
    .mobile_menu .mod_navigation .level_1 strong {
        padding: 8px 15px;
        font-size: 20px;
        height: 42px;
        background-color: #f8f8f8;
        border-top: 1px solid #464646;
        color: #4d4849;
        text-transform: uppercase;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        align-content: center;
        text-decoration: none;
    }

    .mobile_menu .mod_navigation strong {
        color: #FFFFFF;
    }

    .mobile_menu .mod_navigation ul .level_2 {
        background: #22221c;
    }

    .mobile_menu .mod_navigation ul .level_1 li, .mobile_menu .mod_navigation ul .level_2 li {

    }

    .mobile_menu .mod_navigation .level_2 a,
    .mobile_menu .mod_navigation .level_2 strong {
        width: 95%;
        min-height: 42px;
        margin: 0 0 0 0;
        padding: 1% 0 1% 5%;
        font-size: 16px;
        line-height: 22px;
        color: #FFF;
        text-transform: none;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        align-content: center;
    }

    .mobile_menu .mod_navigation li .level_2 a {
        background: none;
    }

    .mobile_menu .mod_navigation .level_2 strong.active, .mobile_menu .mod_navigation .level_2 .submenu_show a, .mobile_menu .mod_navigation .level_2 .trail strong {
        background: #0288c5;
        color: #FFF;
    }

    .mobile_menu .mod_navigation .level_2 li:first-child, .mobile_menu .mod_navigation .level_2 li:first-child{
        border: none;
    }

    .mobile_menu .mod_navigation .level_2 strong.active {
        color: #FFF;
        border: none;
    }

    .mobile_menu .mod_navigation .level_3 li {
        text-indent: 10px !important;
    }

    .mobile_menu .mod_navigation .level_3 a, .mobile_menu .mod_navigation .level_3 strong {
        width: 95%;
        min-height: 39px;
        margin: 0 0 0 0;
        padding: 0 0 0 5%;
        font-size: 16px;
        line-height: 22px;
        background: none !important;
        border-radius: 0 !important;
        color: #FFF;
        text-transform: none;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        align-content: center;
    }

    .mobile_menu .mod_navigation ul.level_3 strong.active, .mobile_menu .mod_navigation ul.level_3 a.trail {
        background: #0288c5 !important;
        -moz-border-radius: 4px 4px 4px 4px;
        -webkit-border-radius: 4px 4px 4px 4px;
        border-radius: 4px 4px 4px 4px !important;
    }

    .mobile_menu .mod_navigation .level_3 strong, .mobile_menu .mod_navigation .level_3 li.trail span, .mobile_menu .mod_navigation .level_3 .submenu_show a {
        font-size: 16px;
        line-height: 22px;
        background: rgba(2, 136, 197, 0.6);
        -moz-border-radius: 4px 4px 4px 4px;
        -webkit-border-radius: 4px 4px 4px 4px;
        border-radius: 4px 4px 4px 4px;
        color: #FFF;
        text-transform: none;
    }

    .mobile_menu .mod_navigation ul.level_4 a, .mobile_menu .mod_navigation ul.level_4 strong, .mobile_menu .mod_navigation ul.level_4 li.active strong, .mobile_menu .mod_navigation ul.level_4 strong.active {
        width: 95%;
        padding: 0 0 0 5%;
        margin: 0;
        border-top: 1px solid #464646;
        background: rgba(2, 136, 197, 0.6) !important;
        -moz-border-radius: 4px 4px 4px 4px;
        -webkit-border-radius: 4px 4px 4px 4px;
        border-radius: 4px 4px 4px 4px !important;
    }

    .mobile_menu .mod_navigation .level_4 li {
        text-indent: 16px !important;
    }

    .mobile_menu .mod_navigation ul.level_4 span {
        background: none !important;
        border-radius: 0 !important;
    }

    .mobile_menu .mod_navigation .level_1 strong,
    .mobile_menu .mod_navigation .level_2 strong,
    .mobile_menu .mod_navigation .level_3 strong,
    .mobile_menu .mod_navigation a.trail {
        color: #0090D2;
    }

    #servicelinks {
        background: #63656a;
        width: 100%;
        padding-bottom: 15px;
    }

    #servicelinks a {
        color: #FFF;
        text-decoration: none;
    }

    #servicelinks .login {
        margin: 15px 0 0 15px;
        padding: 0;
    }

    #servicelinks a.login {
        padding: 0;
        margin: 0;
        height: 45px;
        line-height: 45px;
        vertical-align: middle;
    }

    .login::after {
        content: " ";
        display: inline-block;
        width: 25px;
        height: 45px;
        background: url("../../files/kkvl/img/login_w.svg") center center no-repeat;
    }

    .form-search form input {
        margin: 15px 0 15px 15px;
        height: 35px;
        width: 85%;
        padding: 4px 0 4px 8px;
        background-color: #e0e0e0;
        border-radius: 3px;
        border: none;
        color: #FFF;
    }

    .form-search form {
        position: relative;
        display: flex;
        border: none;
        margin: 0 !important;
    }

    .form-search form button {
        position: absolute;
        top: 15px;
        right: 0;
        bottom: 0;
        z-index: 2;
        padding: 4px;
        width: 10%;
        height: 30px;
        color: transparent;
        background: url("../../files/kkvl/img/search.svg") center center no-repeat;
        background-size: 25px;
        border: none;
    }

    #subnavi, #left .mod_eventlist, #linkbox {
        margin: 0 auto;
        padding: 2%;
        width: 96%;
    }

    #topbar .mod_navigation {
        display: none;
    }

    #news-startseite {
        margin: 180px 0 0 0;
        padding: 15px;
        width: 90%;
    }

    #header, #main, #left, #footer {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        clear: both;
    }

    #container {
        display: block;
        margin: 15px auto;
        padding: 0 0 40px 0;
        width: 100%;
    }

    #main .inside, #header .inside, #left .inside, #footer .inside {
        width: 96%;
        margin: 0 auto;
        padding: 2%;
    }

    #header, #header .inside {
        height: 300px;
    }

    body.home #header, body.home #header .inside {
        height: 540px;
        width: 96%;
        margin: 0 auto;
    }

    body.home #header {
        background: url("../../files/kkvl/img/header_hm.jpg") center 100px no-repeat;
    }

    .footerleft {
        display: none;
    }

    .choere h2 {
        white-space: nowrap;
    }

    .choere .content-hyperlink, .choere .content-text {
        width: 90%;
        height: 40px;
        line-height: 40px;
        vertical-align: middle;
        text-indent: 25px;
        white-space: nowrap;
    }

    #main .agenda .mod_eventlist .header, #main .agenda .layout_teaser {
        width: 97%;
        padding: 1.2% 1.5% 1.2% 1.5%;
    }

    #main .agenda .header {
        text-indent: 1.5%;
    }

    #vorstand {
        justify-content: space-around;
        align-items: center;
    }

    #kontakt .formzeile, #kontakt .checkbox_container {
        width: 100%;
        display: flex;
        justify-content: space-between;
    }

    #kontakt .feldcontainer {
        margin: 0 0 15px 0;
        width: 95%;
    }

    #kontakt .textarea, #anmeldung .textarea {
        width: 95%;
    }

    .personentabelle table {
        width: 100%;
    }

    .personentabelle table td:first-child{
        width: 60%;
    }

    .personentabelle table td:not(:first-child){
        max-width: 30%;
    }
}

/*//////////// Tablets bis 900 /////////*/
@media only screen and (min-width: 600px) and (max-width: 900px) {
    .logobox {
        top: 5px;
        min-width: 400px;
        max-width: 450px;
        max-height: 120px;
    }

    #news-startseite {
        margin: 280px 0 0 0;
    }
}

/*//////////// Tablets /////////*/
@media only screen and (min-width: 901px) and (max-width: 1100px) {
    #header {
        width: 100%;
    }

    body.home #header .inside {
        margin: 0 auto;
        padding: 0;
        height: 700px;
        width: 100%;

    }

    #header .inside {
        height: 350px;
        width: 100%;
    }

    .logobox {
        margin-top: -20px;
        min-width: 400px;
    }

    #topbar {
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        align-items: flex-start;
        width: 100%;
        height: 90px;
        background: #FFFFFF;
    }

    #topbar .mod_navigation, #topbar .mod_navigation ul, .menuhalter {
        margin-top: 5px;
        max-width: 450px;
        height: auto;
    }

    #container {
        width: 100%;
    }

    main .inside, #left .inside {
        width: 96%;
    }

    #subnavi, #left .mod_eventlist, #linkbox {
        width: 100%;
    }

    #footer .inside {
        width: 96%;
    }

    .choere .content-hyperlink, .choere .content-text {
        width: 90%;
        height: 40px;
        line-height: 40px;
        vertical-align: middle;
        text-indent: 25px;
        white-space: nowrap;
    }
}

/*//////////// DESKTOP bis 1260 /////////*/
@media only screen and (min-width: 1100px) and (max-width: 1259px) {
    #header, #footer {
        width: 100%;
    }

    #header .inside, body.home #header .inside {
        width: 100%;
    }

    #subnavi, #left .mod_eventlist, #linkbox {
        width: 100%;
    }

    .logobox {
        min-width: 400px;
    }

    #topbar {
        width: 100%;
    }

    #container {
        width: 100%;
    }

    #footer .inside {
        width: 96%;
    }
}

