html {
    width:100%;
    height:100%;
}
body {
    height:100%;
    margin:0;
    background-color:#f5f5f5;
    font:1.4rem Verdana,Helvetica,Arial,"Times New Roman",sans-serif;
    color:#005;
}

/* erforderlich, wegen der fixen Bootstrap-Nav-Bar im Seitenkopf */
body {
    padding-top:70px;
}

/* padding-bottom sollte min. Höhe footer + 15px sein */
#wrapper {
    height:100%;
    min-height:100%;
    position:relative;
    margin-bottom:-100px;
    height:auto !important;
}

/* padding-bottom sollte min. Höhe footer + 10px sein */
#main {
    padding-bottom:100px;
}
footer {
    width:100%;
    height:90px;
    position:fixed;
    overflow:hidden;
    margin:0;
    padding:0;
    font-size:1.1rem;
    bottom:0px !important;
    background-color: transparent;
    background-position: left top, top;
    background-repeat: no-repeat, repeat-x;
    z-index:999;
}

/* margin-Höhe + padding-Höhe + Höhe = footer-Höhe */
footer .inside {
    width:100%;
    height:45px;
    margin:45px auto 0;
    padding-top:0;
    padding-bottom:0;
    text-align:center;
    background-color:#fff;
}
.footernav {
    line-height:1.4rem;
}
.fl_erster {
    margin-right:5px;
}
.fl_mitte {
    margin-right:5px;
    margin-left:5px;
}
.fl_letzter {
    margin-left:5px;
}
.bgweiss {
    padding:10px;
    background-color:#fff;
    -webkit-box-shadow:0 0 2px 0 #e0e0e0;
    box-shadow:0 0 2px 0 #e0e0e0;
    border-radius:5px;
}
.bgabsu {
    margin-bottom:1.2rem;
    padding-right:15px;
    padding-left:15px;
}

/* col12 margin left 0px - nur bei einspaltigem Layout */
.col12_ml0 {
    padding-left: 10px !important;
    padding-right: 10px !important
}
.somedia {
    margin-top:1em;
    margin-bottom:1em;
}
.btn-social {
    margin-bottom:1rem;
}
h1,
h2,
h3,
h4 {
    text-align:center;
}
h1,
.h1 {
    font-size:2.5rem;
}
h2,
.h2 {
    font-size:2.2rem;
}
h3,
.h3 {
    font-size:2rem;
}
h4,
.h4 {
    font-size:1.75rem;
}
h5,
.h5 {
    font-size:1.5rem;
}
h6,
.h6 {
    font-size:1.25rem;
}
p {
    margin-bottom:1.5rem;
}
.mittig {
    text-align:center;
}
.links {
    margin-right:auto;
    text-align:left;
}
.rechts {
    margin-left:auto;
    text-align:right;
}
.groesser {
    font-size:1.25rem;
}
.kursiv {
    font-style:italic;
}
.fett {
    font-weight:bold;
}
.kein_absatz_unten {
    margin-bottom:0;
    padding-bottom:0;
}
.absatz {
    margin-top:1rem;
    margin-bottom:1rem;
}
.absatz_oben {
    margin-top:1rem;
}
.absatz_unten {
    margin-bottom:1rem;
}
.absatz_mittel {
    margin-top:1.5rem;
    margin-bottom:1.5rem;
}
.absatz_oben_mittel {
    margin-top:1.5rem;
}
.absatz_unten_mittel {
    margin-bottom:1.5rem;
}
.absatz_gross {
    margin-top:2rem;
    margin-bottom:2rem;
}
.absatz_oben_gross {
    margin-top:2rem;
}
.absatz_unten_gross {
    margin-bottom:2rem;
}
hr.comment {
    width:100%;
    height:1px;
    background-color:#e0e0e0;
}
.kommblock {
    margin-top:2rem;
    margin-bottom:2rem;
}
.kommentar {
    bottom:3rem;
    left:0;
    right:0;
    top:1rem;
    position:relative;
    margin-top:.7rem;
    margin-bottom:1rem;
    padding:10px;
    background-color:#f5f5f5;
    border:2px solid #acacac;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
    border-radius:10px;
}
.kommentar:before {
    top:-20px; /* value = - border-top-width - border-bottom-width */
    bottom:auto;
    right:auto;
    left:22px;
    border-width:0 20px 20px;
    content: "";
    position: absolute;
    border-style: solid;
    border-color: #acacac transparent;
    display: block;
    width: 0;
}
.kommentar:after {
    top:-17px; /* 16 / value = - border-top-width - border-bottom-width */
    bottom:auto;
    right:auto;
    left:25px; /* 26 / value = (:before left) + (:before border-left) - (:after border-left) */
    border-width:0 17px 17px; /* 0 16 16 */
    content: "";
    position: absolute;
    border-style: solid;
    border-color: #f5f5f5 transparent;
    display: block;
    width: 0;
}
.kommentar > p:last-child {
    margin-bottom:0;
}
.kommreply {
    margin-left:3rem;
}
.kommreplytxt {
    bottom:3rem;
    left:0;
    right:0;
    top:1rem;
    position:relative;
    margin-top:.7rem;
    margin-bottom:1rem;
    padding:10px;
    background-color:#eaeaff;
    border:2px solid #7b7b9e;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
    border-radius:10px;
}
.kommreplytxt:before {
    top:-20px; /* value = - border-top-width - border-bottom-width */
    bottom:auto;
    right:auto;
    left:22px;
    border-width:0 20px 20px;
    content: "";
    position: absolute;
    border-style: solid;
    border-color: #7b7b9e transparent;
    display: block;
    width: 0;
}
.kommreplytxt:after {
    top:-17px; /* 16 / value = - border-top-width - border-bottom-width */
    bottom:auto;
    right:auto;
    left:25px; /* 26 / value = (:before left) + (:before border-left) - (:after border-left) */
    border-width:0 17px 17px; /* 0 16 16 */
    content: "";
    position: absolute;
    border-style: solid;
    border-color: #eaeaff transparent;
    display: block;
    width: 0;
}
.kommreplytxt > p:last-child {
    margin-bottom:0;
}
div.mod_newsmenu {
    margin:0;
    padding:0;
}
.mod_newsmenu ul {
    margin-left:0;
    padding-left:0;
}
.mod_newsmenu li {
    margin:0;
    list-style-type:none;
}
.mod_newsmenu li.year {
    margin-bottom:1rem;
    font-weight:bold;
}
.mod_newsmenu .level_2 {
    margin-left:1rem;
    font-weight:normal;
}
.newsinfo {
    font-size:.85em;
    color:#6e6e6e;
}
.newsfullinfo {
    font-size:.85em;
    color:#6e6e6e;
}
.newstpcaption {
    max-width:250px;
    margin-right:auto;
    margin-left:auto;
    text-align:center;
}

/* Tag */
.kalenderdatum {
    width:70px;
    position:relative;
    display:block;
    margin:0 auto 5px 0;
    text-align:center;
    background-color:#fcfcfc;
    border:1px solid #888885;
    border-radius:5px;
    font-size:17px;
}
.kalenderdatum abbr {
    text-decoration:none;
    border-bottom: none;
}

/* Monat + Jahr */
.kalenderdatumMonat,
.kalenderdatumJahr {
    display:block;
    border-radius:5px;
    font-size:15px;
}

/* Monat */
.kalenderdatumMonat {
    width:70px;
    margin:-1px 0 0 -1px;
    padding:0 5px;
    text-align:left;
    background-color:#a33537;
    border-bottom:1px solid #832a28;
    line-height:18px;
    color:#eaa;
}

/* Jahr */
.kalenderdatumJahr {
    width:70px;
    left:0;
    top:0;
    position:absolute;
    padding:0 3px;
    text-align:right;
    line-height:18px;
    color:#eaa;
}

/* Zeit */
.kalenderdatumZeit {
    height:17px;
    display:block;
    margin:0 3px;
    text-align:center;
    border-top:1px solid #bbd;
    font-size:14px;
    color:#6e6e6e;
}
.event.layout_upcoming {
    margin-bottom:.75rem;
    padding-bottom:.75rem;
    border-bottom:1px dashed #ccc;
}
.mod_subscribe .confirm {
    text-shadow:0 1px 0 rgba(255,255,255,.2);
    -webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);
    background-image:-webkit-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);
    background-image:-o-linear-gradient(top,#dff0d8 0,#c8e5bc 100%);
    background-image:-webkit-gradient(linear,left top,left bottom,from(#dff0d8),to(#c8e5bc));
    background-image:linear-gradient(to bottom,#dff0d8 0,#c8e5bc 100%);
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdff0d8', endColorstr='#ffc8e5bc', GradientType=0);
    background-repeat:repeat-x;
    border-color:#b2dba1;
    padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px;
    color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6
}
.mod_subscribe .error {
    text-shadow:0 1px 0 rgba(255,255,255,.2);
    -webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 1px 2px rgba(0,0,0,.05);
    background-image:-webkit-linear-gradient(top,#f2dede 0,#e7c3c3 100%);
    background-image:-o-linear-gradient(top,#f2dede 0,#e7c3c3 100%);
    background-image:-webkit-gradient(linear,left top,left bottom,from(#f2dede),to(#e7c3c3));
    background-image:linear-gradient(to bottom,#f2dede 0,#e7c3c3 100%);
    filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2dede', endColorstr='#ffe7c3c3', GradientType=0);
    background-repeat:repeat-x;border-color:#dca7a7;
    padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px;
    color:#a94442;background-color:#f2dede;border-color:#ebccd1
}
.gallerycaption {
    text-align:center;
    }
    @media (min-width: 1200px) { .gallerycaption {width: 270px;}}
    @media (max-width: 1199px) and (min-width: 992px) { .gallerycaption {width: 220px;}}
    @media (max-width: 991px) and (min-width: 768px) { .gallerycaption {width: 160px;}}
    @media (max-width: 767px) and (min-width: 500px) { .gallerycaption {width: 240px;}}
    @media (max-width: 499px) { .gallerycaption {width: 40%;}
}
.hrakfirst {
    height:20px;
    overflow:visible;
    margin:10px 0 0;
    padding:0;
    border-top:1px solid #9c9c9c;
    border-right:0px solid #9c9c9c;
    border-bottom:0px solid #9c9c9c;
    border-left:0px solid #9c9c9c;
    border-radius:20px;
}
.hrak {
    height:20px;
    overflow:visible;
    margin:20px 0 0;
    padding:0;
    border-top:1px solid #9c9c9c;
    border-right:0px solid #9c9c9c;
    border-bottom:0px solid #9c9c9c;
    border-left:0px solid #9c9c9c;
    border-radius:20px;
}
.hrak:before {
    height:20px;
    display:block;
    margin-top:-21px;
    border-top:0px solid #9c9c9c;
    border-right:0px solid #9c9c9c;
    border-bottom:1px solid #9c9c9c;
    border-left:0px solid #9c9c9c;
    border-radius:20px;
    content:"";
}
.hraklast {
    height:20px;
    overflow:visible;
    margin:0 0 20px;
    padding:0;
    border-top:0px solid #9c9c9c;
    border-right:0px solid #9c9c9c;
    border-bottom:1px solid #9c9c9c;
    border-left:0px solid #9c9c9c;
    border-radius:20px;
}
.caption {
    text-align:center;
}
.pager {
    margin:0 0 20px 0 !important;
}
.mwdropdown-submenu > li > a {
    clear:both;
    display:block;
    padding:3px 20px;
    white-space:nowrap;
    line-height:1.42857143;
    font-weight:normal;
    color:#333;
}
.mwdropdown-submenu > li > a:hover,
.mwdropdown-submenu > li > a:focus {
    background-color:#f5f5f5;
    font-family:262626;
    text-decoration: none;
}
.mwdropdown-submenu > .active > a,
.mwdropdown-submenu > .active > a:hover,
.mwdropdown-submenu > .active > a:focus {
    background-color:#337ab7;
    color:#fff;
    text-decoration: none;
    outline: 0;
}
.mwdropdown-submenu > .disabled > a,
.mwdropdown-submenu > .disabled > a:hover,
.mwdropdown-submenu > .disabled > a:focus {
    color:#777;
}
.mwdropdown-submenu > .disabled > a:hover,
.mwdropdown-submenu > .disabled > a:focus {
    text-decoration: none;
    background-color: transparent;
    background-image: none;
    filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
    cursor: not-allowed;
}
.open > .mwdropdown-submenu {
    display:block;
}
.mwdropdown-submenu > li > a:hover,
.mwdropdown-submenu > li > a:focus {
    background-image: -webkit-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
    background-image: -o-linear-gradient(top, #f5f5f5 0%, #e8e8e8 100%);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#f5f5f5), to(#e8e8e8));
    background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#ffe8e8e8', GradientType=0);
    background-color: #e8e8e8;
}
.mwdropdown-submenu > .active > a,
.mwdropdown-submenu > .active > a:hover,
.mwdropdown-submenu > .active > a:focus {
    background-image: -webkit-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
    background-image: -o-linear-gradient(top, #337ab7 0%, #2e6da4 100%);
    background-image: -webkit-gradient(linear, left top, left bottom, from(#337ab7), to(#2e6da4));
    background-image: linear-gradient(to bottom, #337ab7 0%, #2e6da4 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff337ab7', endColorstr='#ff2e6da4', GradientType=0);
    background-color: #2e6da4;
}
ul.mwdropdown-submenu {
    margin:0;
    padding:0;
    list-style-type:none;
}
.mwdropdown-submenu > li {
    padding-left:10px;
}
.mwdropdown-submenu > li > a:before {
    padding-right:8px;
    color:#666;
    content:"\2937"
}
ul.ulsitemap,
ul.ulsitemap ul {
    margin:0;
    padding:0;
    list-style-type:none;
}
.ulsitemap li {
    margin:.5em 0;
    padding-left:2em;
}
.ulsitemap li.first {
    margin-top:1rem;
}
.ulsitemap li:before {
    font-family: "mw_icons";
    font-style: normal;
    font-weight: normal;
    speak: none;
    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    margin-right: .5em;
    text-align: center;
    color:#666;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    margin-left: .2em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.ulsitemap li:not(.lisitemapsub):before {
    content:'\f15c';
}
.ulsitemap li.lisitemapsub:before {
    content:'\e81a';
}
mark.highlight {
    background: #ff0 !important;
}
.ce_accordion {
    margin-top:-1px;
    border-top:1px solid #9c9c9c;
    border-right:1px solid #9c9c9c;
    border-bottom:0px solid #9c9c9c;
    border-left:1px solid #9c9c9c;
}
.toggler {
    position:relative;
    padding:1rem;
    background-color:#fff;
    border-top:0px solid #9c9c9c;
    border-right:0px solid #9c9c9c;
    border-bottom:1px solid #9c9c9c;
    border-left:0px solid #9c9c9c;
    font-size:1.75rem;
    font-weight:bold;
    color:#373778;
    cursor: pointer;
}
.toggler:focus {
    outline: none;
}
.toggler:after {
    width:20px;
    height:20px;
    right:10px;
    top:10px;
    position:absolute;
    display:block;
    font-family:'Glyphicons Halflings';
    content:"\e081"
}
.toggler.ui-state-active:after {
    font-family:'Glyphicons Halflings';
    content:"\e082"
}
.accordion > div {
    padding:1rem;
    border-bottom:1px solid #9c9c9c;
}
section.ce_accordion + div {
    margin-top:1.5rem;
}
.slider-control {
    height:34px;
}
.slider-control a {
    top:0 !important;
}
div.ce_sliderStart + div {
    margin-top:1.5rem;
}
