html body  {
  --frame-color: inherit;
  /*--frame-link-color: #FFD900;*/
 /* --frame-link-hover-color: #ccae00;*/
  --frame-background: transparent;
  --frame-embedded-border-radius: 0.5rem;
  --frame-width-large: 1600px;
  --frame-width-medium: 870px;
  --frame-width-small: 600px;
  --frame-spacing: 1.25rem;
  --frame-spacing-small: 0.75rem;
  --frame-spacing-xs: 1.25rem;
  --frame-spacing-small-xs: 0.75rem;
  --frame-spacing-sm: 1.5rem;
  --frame-spacing-small-sm: 0.9rem;
  --frame-spacing-md: 1.5rem;
  --frame-spacing-small-md: 0.975rem;
  --frame-spacing-lg: 1.5rem;
  --frame-spacing-small-lg: 1.05rem;
  --frame-spacing-xl: 1.5rem;
  --frame-spacing-small-xl: 1.125rem;
  --frame-outer-spacing-before: 0;
  --frame-outer-spacing-after: 0;
  --frame-outer-spacing-variant-none: 0rem;
  --frame-outer-spacing-variant-extra-small: 1rem;
  --frame-outer-spacing-variant-small: 1.5rem;
  --frame-outer-spacing-variant-medium: 2rem;
  --frame-outer-spacing-variant-large: 2.5rem;
  --frame-outer-spacing-variant-extra-large: 3rem;
}
#page-content .section:last-child {
  padding-bottom: 2rem;
}
body {
  min-height: 100vh;
}



html body .waconcookiemanagement {
  z-index: 1000000;
}
#CookieBox .cookie-management, #CookieBox .cookie-refuse {
  display: block;
}
a > u {
  text-decoration: none;
}
.card-menu-item .card{overflow:hidden;}

.navbar-mainnavigation .nav-link:not(.nav-link-toggle).show::before, .navbar-mainnavigation .nav-link:not(.nav-link-toggle).active::before {
  margin-left: -.5rem;
}

html body .footer-section-content {
    background: #e8e8e8;
    --frame-color: #262626;
    --frame-link-color: #262626;
    --frame-link-hover-color: #262626;
}
footer .section-row .frame{padding-top:1.5rem;padding-bottom:1.5rem;}
footer .section-row,
.col-md-12.sociallinks .frame {
    padding: 0;
}
.section.footer-section.footer-section-meta .footer-info-section, .section.footer-section.footer-section-meta .footer-menu-section {
    width: 50%;
}
.section.footer-section.footer-section-meta .frame-inner {
    display:flex;
}

footer .footer-menu-section + .footer-info-section {
    margin-top: 0px;
}
body footer   .footer-info-section {
    text-align: right;
}
.section-column.footer-section-content-column a {
    color: #262626;
}
#page-footer {
    padding-top: 2rem;
    background: #e8e8e8;
    border-top: 2rem solid #ffd900;;
}
.section-column.footer-section-content-column img {
    margin-top: 2rem;
}
.section.footer-section.footer-section-meta > div {
    padding: 1rem 0;
}



html,body{overflow-x:hidden;}
body{
    font-size: 18px;
}

body main h2{
font-size:2rem;
}
body main h1,
body main h2,
body main h3,
body main h4,
body main h5,
body main h6,
body main .h1,
body main .h2,
body main .h3,
body main .h4,
body main .h5,
body main .h6 {
    /*    font-family: "source-serif-pro", serif;*/
    font-weight: 400;
    font-style: normal;
}
#page-header.fixed {
    position: fixed;
    z-index: 9999;
    width: 100%;
    top: 0;
}

body main h1,
body main .h1{
	font-size:2.5rem;
}
.headsearch {
    padding-right: 15.5rem;
    transition: all 1s;
    width: 0;
    overflow: hidden;
}
.headsearch input {
    opacity: 0;
    transition: all 2s;
}
.search-open
.headsearch input {
    opacity: 1;margin:4px;
}
.search-open .headsearch {
    padding-right: 15.5rem;
    width: calc(460px + 15.5rem);
    transition: all 1s;
    overflow: hidden;
}
.headsearch .btn{
    display: none;
}

.header-box {
    position: absolute;
    right: 1rem;
    min-width: 300px;
    display: block;
    text-align:right;
    top: -.25rem;
}
.yellow-round {
    border-radius:2rem;
    background:#FFD900;
    display: block;
    width: auto;
}

.yellow-round div {
    display: inline-block;
    width: 3rem;
    height: 3rem;
    line-height: 2.75rem;
    text-align: center;
}
.yellow-round div img {
    width:2rem;
}
.yellow-round div.b1 img {
    width:1.5rem;
}
.header-box > span {
    display: inline-block;
}

.page-1 #page-content .section.section-default {
    display: none;
}


html body .carousel {
    container-type: inline-size;
    overflow: visible;
}
html body .carousel-indicators{bottom:-2rem;}
.carousel .carousel-indicators button.active {

    border: 0;
    min-width: 2rem;
    padding-left: 1rem;
    padding-right: 1rem;background:#ffd800;
}

html body .carousel .carousel-indicators button {
    border-radius:.5rem;
    transition:all 1s;
    border: 0;
    min-width: 0rem;
    padding-left: 0rem;
    padding-right: 0rem;
    height: 8px;
    border-top-width: 8px;
    border-bottom-width: 8px;
    background: #ddd;

}
#carousel-224 {
    margin-top: 0rem;
    max-width: 1280px;
    margin: auto;
}
#carousel-224.carousel .item {
    height: 400px; background:transparent;
}
#carousel-224  .carousel-content-inner {
    background: #ddd;
    overflow: hidden !important;
    border-radius: 2rem;
}


#c245 .card-footer .btn.btn-default {
  position: relative;
  width: 100%;
  height: 200px;
  margin-top: -1rem;
  background: transparent;
  border: 0;
}
#c245 .card-footer .btn.btn-default  .btn-text{
  display:none;
}
#c245 .card-footer .btn.btn-default .btn-icon, #c245 .card-footer .btn.btn-default .btn-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}
.navbar-mainnavigation.navbar-fixed-top {
    border: 0;
    box-shadow: none !important;
}
.fullmenu  .navbar-mainnavigation .nav-link.nav-link-main::before {
   display:none ;
}
.dropdown-menu-mega .dropdown-nav[data-level="3"] a  {
    font-size: 1rem;
}
.dropdown-menu-mega .dropdown-nav[data-level="3"] > .nav-item {
    margin-bottom:1rem;
}
.dropdown-menu-mega  .dropdown-nav[data-level="4"] {
  flex-wrap: nowrap;
  flex-direction: column;
  display: flex;
}

.navbar-nav .nav-item.nav-style-mega button{display:none}
.dropdown-nav[data-level="3"] a.active > span {
  border-bottom: 2px solid var(--bs-primary);
}
.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="2"] > li {
  display: none;
}
.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav li.subactive {
  display: block;
}
.dropdown-menu-mega .nav-link.nav-link-main {
  margin-top: -2rem;
}

.navbar-mainnavigation  .dropdown-nav[data-level="4"]{
  position:relative
}
.navbar-mainnavigation  .dropdown-nav[data-level="5"]{
  display: none;
}
.navbar-mainnavigation .dropdown-nav[data-level="4"] > li.open .dropdown-nav[data-level="5"] {
  display: block;
  position: absolute;
  background: #363636;
  z-index: 3;
  width: 100%;
  translate: -1rem 1.5rem;
  z-index: 9999999999999999999999999999999999999;
  color: #fff;
  --bs-nav-link-color: #fff;
  padding: .5rem;
}

ul.dropdown-nav[data-level="4"] .nav-item.withsub {
  margin-left: 1rem;
}
ul.dropdown-nav[data-level="4"] .nav-item.withsub a::before {
  margin: 0;
}
.dropdown-nav[data-level="5"] a::before {
  display: none !important;
}
.navbar-mainnavigation .dropdown-nav[data-level="4"] .nav-item.withsub > .nav-link.nav-link-dropdown:not(.nav-link-toggle)::before {
  display: block;
  content: "";
  position: absolute;
  left: -1rem;
  top: 50%;
  opacity: 1;
  transition: opacity 0.25s ease-in-out;
  border: 4px solid transparent;
  border-left: 4px solid var(--mainnavigation-hightlight);
  transform: translate(1px,-50%);
  background-image: url(/fileadmin/kvsa/dropdown.svg);
  width: 1rem;
  height: 1rem;
  background-size: contain;
  border: 0;
  background-repeat: no-repeat;
}
.navbar-mainnavigation .dropdown-nav[data-level="4"] .nav-item.withsub.open > .nav-link.nav-link-dropdown:not(.nav-link-toggle)::before {
  display: block;
  content: "";
  position: absolute;
  left: -1rem;
  top: 40%;
  opacity: 1;
  transition: opacity 0.25s ease-in-out;
  border: 4px solid transparent;
  border-left: 4px solid var(--mainnavigation-hightlight);
  transform: translate(1px,-50%);
  background-image: url(/fileadmin/kvsa/dropdown.svg);
  width: 1rem;
  height: 1rem;
  background-size: contain;
  border: 0;
  background-repeat: no-repeat;
  transform: rotate(90deg);
  transform-origin: center;
}
.dropdown-menu-mega .dropdown-nav[data-level="5"] a.nav-link:hover {
  color: #ffd900;
}
.nav-item.nav-style-mega > a {
  margin-top: -2rem;
  min-height: 2rem;
  z-index: 999;
}






#carousel-224  h1.carousel-header {
    font-size: 2rem;
    margin-bottom:1rem;
    /* font-family: "source-serif-pro", serif;*/
    font-weight: 500;
}
#carousel-224  .carousel-image picture img {
    object-fit: cover;
    width: auto !important;
    height: auto !important;
    max-width: inherit !important;
    min-height: 100% !important;
    min-width: 100% !important;
}
#carousel-224  .carousel-image picture {
    height: 100%;
    max-width:100%;
}
#carousel-224  .carousel-image {
    height: 100%;
    width: 50%;
    overflow: hidden !important;
}
#carousel-224  .carousel-text {
    width: 50%;
    padding: 2rem;
}


#carousel-224 .carousel-control.carousel-control-prev{display:none !important;}
#carousel-224 .carousel-control.carousel-control-next{display:none !important;}



#carousel-224  .carousel-text a {
    background: #ffd800;
    padding: 1rem 2rem;padding-right:3rem;
    border-radius: 2rem;
    margin-top: .5rem;
    display: inline-block;
    position: relative;transition:all 1s;
    text-decoration: none;
}

#carousel-224  .carousel-text a:hover {
    padding: 1rem 2rem;padding-right:4rem;
}
#carousel-224  .carousel-text a::after {
    content: '';
    width: 1rem;
    height: 1rem;
    position: absolute;
    right: 1.5rem;
    background-image: url(/fileadmin/kvsa/kvsa-arrow-right-button.svg);
    background-repeat: no-repeat;
    background-size: contain;
    top: 1.25rem;
}



.row.home_3_box img {
    background: #ffd800;
    max-width: 5rem;
    margin: 0;
    padding: 1rem;
}
.row.home_3_box .frame {
    background: #fff;
    padding: 3rem !important;
    border-radius: 2rem;
}
.row.home_3_box .frame
.textmedia, .row.home_3_box .frame .textpic {
    gap: 20px;
}



.service-suche .element-header {
  font-size: 1rem;
  line-height: 2rem;
}
.row.service-suche {
    margin-bottom: 2rem;
    background: #FFD800;
    padding: 2rem !important;
    border-radius: 2rem;
    margin-left: 0;
    margin-right: 0; margin-top:1rem;
}
.service-suche .col-10 .frame {
    background: #fff;
    border-radius: 2rem;
    line-height: 4rem;
    height: 4rem;
    padding: 1.25rem 2rem !important;
}

.service-suche .col-1 .frame {
    background: #51798B;
    border-radius: 2rem;
    line-height: 4rem;
    height: 4rem;
    padding: 1rem !important;
    max-width: 4rem;
}


.home_news .article .teaser-text .more {
  padding: 1rem 0rem;
    padding-right: 0rem;
  padding-right: 0rem;
  background: transparent;
  display: inline-flex;
  align-items: center;
  gap: 0.15em;
  padding-right: 3rem;
  margin-top: 0;  position: absolute;
  bottom: 1rem;
}
.home_news .article .teaser-text .more:hover {
    padding: 1rem 0rem;
    padding-right: 0rem;
    background: transparent;
    display: inline-flex;
    align-items: center;
    gap: 0.15em;
    padding-right: 3rem;
}
.news {
    margin-top: 2.5rem;
}

.home_news .news .article {
    flex-basis: 30%;
    display: inline-block;
    vertical-align: top;
    padding: 1rem;
    border-radius: 2rem;
    box-shadow: 0px 5px 25px rgba(0,0,0,.1);
    padding-bottom: 0rem;
    overflow: hidden;
    position:relative;
}
.home_news .news .article {
    padding-bottom: 4rem;
    overflow: hidden;
    position:relative;
}
.home_news .news .article .footer {
    position: absolute;
    bottom: 1rem;
    width: calc(100% - 2rem);
    overflow: hidden;
}
html body .news .article:last-child {

    margin-bottom: 15px;
}
.home_news .news-list-view {
    gap: 2rem;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}
 .news-list-view {
  gap: 2rem;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
 .news .news-list-view.article {
  flex-basis: 30%;
  display: inline-block;
  vertical-align: top;
  padding: 1rem;
    padding-bottom: 1rem;
  border-radius: 2rem;
  box-shadow: 0px 0px 10px rgba(0,0,0,.1);
  padding-bottom: 3rem;
  overflow: hidden;
  position: relative;
}
.news-img-wrap {
    display: none;
}
.news-list-view a{ color:#262626;}
.frame .news-list-view h3 a{ color:#262626;text-decoration:none;margin-bottom:2rem;}
.frame .news-list-view h3 {padding-bottom:2rem;}

html body .frame-layout-embedded {
    padding-top: 0;
}
html body .frame-layout-embedded .row-column .col .frame {
    max-width: 1280px;
    margin: auto;
}
html body .frame-layout-embedded > .frame-group-container {
    max-width: 100%;
    margin: 0 !important;
    padding: 0;
    border-radius: 0 !important;
}
html body .frame-layout-embedded > .frame-group-container > .frame-group-inner > .frame-container {
    padding: 0;
    max-width: 100% !important;
}
html body .frame-layout-embedded .frame-container-default{
    padding: 0;
    max-width: 100% !important;
}

html body .frame-layout-embedded   .card-group-element-align-center .card-title {
    text-align: center;
}
html body .frame-layout-embedded   .card-group-element-columns-4 {
    --cardgroup-columns: 9;
}

html body .frame-layout-embedded  .card-group-element-item .card img{margin-top:1rem;}
@media (max-width:1380px){
    html body .frame-layout-embedded   .card-group-element-columns-4 {
        --cardgroup-columns: 6;
    }
}
@media (max-width:1080px){
    html body .frame-layout-embedded   .card-group-element-columns-4 {
        --cardgroup-columns: 4;
    }
}
@media (max-width:768px){
    html body .frame-layout-embedded   .card-group-element-columns-4 {
        --cardgroup-columns: 2 !important;
    }
}
#c245 {
    margin-bottom: 4rem;
}
#c245 .card-group-element .slick-slide {
    display: flex !important; /* wichtig für Höhe */
    height: auto;
    flex-direction: column;
}

#c245 .card-group-element .card {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    height: 100%;
}

#c245 .card-group-element .slick-slide {
    padding: 0 0.5rem; /* 0.5rem links + 0.5rem rechts = 1rem gap */
}
#c245 .slick-track
{
    display: flex !important;
}

#c245 .slick-slide
{
    height: inherit !important;
}
#c245 .slick-slide > div, #c245  .slick-slide > div > div {
    height: 100% !important;
    max-width: calc(100vw - 3rem);
}


#c245 .card-group-element {
    margin: 0 -0.5rem; /* kompensiert Padding der Slides */
}
.card-group-element-align-center .card-body {
    text-align: center;
}
html body .frame-layout-embedded   .card-img-top picture, html body .frame-layout-embedded   .card-img-top img {
    width: auto;
    height: auto;
    margin: auto;
    display: block;
}
html body .frame-space-after-extra-small {
    margin-bottom: -2.75rem;
}

.card-group-element-item .card {
    border-radius: 2rem;
    overflow: hidden;
    border-color: transparent;
}
footer a,
main a,
main .link-arrow,
main .article .more { text-decoration: none !important;}
.link-arrow,
.article .more {
    background: #ffd800;color:#262626;
    padding: 1rem 2rem;padding-right:3rem;
    border-radius: 2rem;
    margin-top: 2rem;
    display: inline-block;
    position: relative;transition:all 1s;
}
.link-arrow:hover,
.article .more:hover {
    padding: 1rem 2rem;padding-right:4rem;
}

main .frame-inner p a.external-link-new-window,
 main .frame-inner p a:not([class]),
body .link-arrow, 
.article .more {
  position: relative;
  margin-right: .5rem;
}
main .frame-inner p a:not([class]) {
  position: relative;
  margin-right: .05rem;
}


main .filelink-filename a{
font-weight:bold;
}
main .filelink-filename a:after,
main .frame-background-secondary p:not(.text-right) a:after,
main .frame-inner p a.external-link-new-window::after, 
main .frame-inner li a:not([class])::after,
main .frame-inner p a:not([class])::after {
  content: '';
  width: .8rem;
  height: .8rem;
  position: relative;
  background-image: url(/fileadmin/kvsa/kvsa-arrow-right-button.svg);
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  margin-left: .15rem;
  transform: rotate(-30deg);
  background-position: left bottom;
}
body .link-arrow:after,
.article .more::after {
    content: '';
    width: 1rem;
    height: 1rem;
    position: absolute;
    right: 1.5rem;
    background-image: url(/fileadmin/kvsa/kvsa-arrow-right-button.svg);
    background-repeat: no-repeat;
    background-size: contain;
    top: 1.25rem;
}
.media-body h2 a {
    text-decoration: none;
    font-size: 1.25rem;
    line-height: 1.25;
    font-weight: 900;
    font-family: "Source Sans Pro" !important;
    display: block;
}

#carousel-224 .carousel-text a:after,
body .link-arrow:after
.more:after {
    transition:all 1s;
}

#carousel-224 .carousel-text a:hover:after,
body .link-arrow:hover:after,
.more:hover::after {
    transform: rotate(180deg);transition:all 1s;
}

body .frame-option-ruler-after {
    border: 0 !important;
    margin-bottom: 0rem;
    padding-bottom: 0;
}
body:not(.fullmenu) .navbar-mainnavigation  .nav-style-mega{ display:none; }
.fullmenu .nav-style-mega{display:block;}




.row.gleichehoehe:not(.frame) .frame {
  margin-top: 1rem;
}
.row.gleichehoehe:not(.frame) .frame > .frame-group-container .image-container {
  margin-top: -1.5rem;
  margin-bottom: -.5rem;
  border-radius: 2rem;
  overflow: hidden;
}
.gleichehoehe > .col > .frame, .gleichehoehe > .col-12 > .frame {
  height: calc(100% - 2rem);
}
.gleichehoehe .contentcontainer-column > .frame {
  height: 100%;
}
.gleichehoehe > .col, .gleichehoehe > .col-12 {
  /*margin-bottom: 2rem;*/
}
.row.gleichehoehe.frame {
  margin-bottom: 0rem;
  /*padding-bottom: 2rem;*/
}
.row.gleichehoehe {
  /*margin-bottom: rem;*/
}
.gleichehoehe .personabox {
  margin-bottom: 1rem;
}

html body main .icongroup {
    min-height: 20rem;
	margin-bottom: 0 !important;
    position: relative;
    transition: all 1s;
}
.contentcontainer[data-container-identifier="container_2_columns"]  .icongroup{
  margin: -20px 0 !important;
}
.frame-type-icon_group{overflow:hidden;}
.icongroup-iconposition-above .icongroup-item-icon, .icongroup-iconposition-below .icongroup-item-icon {
  pointer-events: none;
}
.icongroup .icongroup-item-icon {
	transition: all 1s;
}
.icongroup:has(a):hover .icongroup-item-icon{
    transform: scale(1.1);
}
.icongroup-align-center  .icongroup-item {
    text-align:center;
}
.icongroup-columns-auto .icongroup-item {
    width: auto;
    min-width: 100%;
  margin-bottom:40px;
}
.contentcontainer[data-container-identifier="container_2_columns"] .contentcontainer-column[data-container-column="left"] .frame .icongroup-item {
  margin-bottom: 60px;
}
.contentcontainer[data-container-identifier="container_2_columns"] .contentcontainer-column[data-container-column="right"] .frame .icongroup-item {
  margin-bottom: 60px;
}
html body main .icongroup-columns-auto .icongroup-item {
  width: 100%;
  max-width: calc(100% - 40px);
  min-width: auto;
}

html body .icongroup-item-text-header a::before {
  content: '';
  display: block;
  position: absolute;
  top: -300%;
  left: 0;
  width: 100%;
  height: 500%;
}

footer h5 a, footer h5 {
  font-weight: 500 !important;
  font-weight: 500 !important;
}
.calendarize-item .date {
    background: #fff;
    padding: 1rem;
    border-radius: 2rem;
    display: block;
    width: 6rem;
    text-align: center;
    position: absolute;
    left: 0;
    top: 0;
}

.calendarize-item .date .day {
    display: inline-block;
    width: 100%;
    font-size: 4rem;
    margin-bottom: -1rem;
    margin-top: -1rem;
    /*font-family: "source-serif-pro", serif;*/
    font-weight: 400;
}
.f3-widget-paginator {
  width: 100%;
  display: flex;
  gap: 2rem;
  margin-top: 2rem;
  list-style-type: none;
}
.f3-widget-paginator li {
  background: var(--bs-primary);
  color: #000;
  padding: 0;
  border-radius: 100%;
  line-height: 2rem;
  width: 2rem;
  height: 2rem;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
}
.f3-widget-paginator li a {
  color: #000 !important;
}
.f3-widget-paginator li.previous,
.f3-widget-paginator li.next {
  width: auto;
  border-radius: 2rem;
  padding: 0 1rem;
}



..tx-indexedsearch-browsebox {
  width: 100%;
  display: flex;
  gap: 2rem;
  margin-top: 2rem;
  list-style-type: none;
}
.tx-indexedsearch-browsebox li {
  background: var(--bs-primary);
  color: #000;
  padding: 0;
  border-radius: 100%;
  line-height: 2rem;
  width: 2rem;
  height: 2rem;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
}
.tx-indexedsearch-browsebox li a {
  color: #000 !important;
}
.tx-indexedsearch-browsebox li.previous,
.tx-indexedsearch-browsebox li.next {
  width: auto;
  border-radius: 2rem;
  padding: 0 1rem;
}


.media.calendarize-item h2 a {
  color: #000;
  margin-top: 1rem;
}
.media.calendarize-item .btn.btn-default.btn-primary {
  background: var(--bs-primary);
}
.calendarize {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: normal;
    align-content: space-between;
    justify-content: space-between;
}
.calendarize .panel {
    width:33%;padding-right:2rem;
    padding-left: 8rem;position:relative;  hyphens: auto;
	margin-bottom:2rem;
}
.termindetail .calendarize .panel {
  width: 100%;
  padding-left: 0;
}
.calendarize h4 {
    margin-top: 2rem;
    margin-bottom: 2rem;
    font-weight: bold;
    font-size: 1rem;
    /*font-family: "source-serif-pro", serif;*/
    font-weight: 400;
}
.media-body .date .month {
    font-size: .9rem;
    word-break: keep-all;
    hyphens: none;
}




.b5 .open{
    display:none;
}
.b5 .closed{
    display:inline-block;
}


.fullmenu .b5 .open{
    display:inline-block;
}
.fullmenu .b5 .closed{
    display:none;
}
.b1,.b2,.b3,.b4,
.b5{cursor:pointer;transition:all 1s;
    border-radius: 100%;}

.b1:hover,
.b2:hover,
.b3:hover,
.b4:hover,
.b5:hover {
    background: rgba(0,0,0,.2);
    border-radius: 100%;
}



.open.b5 .open{
    display:inline-block;
}
.open.b5 .closed{
    display:none;
}
.fullmenu #mainnavigation:before {
    position: fixed;content:'';
    top: 0px;  top: var(--mainnavigation-nav-height);
    left: 0;
    width: 100vw;
    height: 100vh;
    background: #E8E8E8;
    max-width: 100vw;
}
.navbar-mainnavigation  .dropdown-nav[data-level="2"] {
  width: 100%;
  display: block;
}

.navbar-mainnavigation  .dropdown-nav[data-level="2"]  > .nav-item > .nav-link.nav-link-dropdown{display:none;}
.navbar-mainnavigation  .dropdown-nav[data-level="3"]  > .nav-item > .nav-link.nav-link-dropdown{
	font-size:1.5rem;font-weight:bold;
	padding-right: 1rem;
	margin-bottom: 1rem;
	hyphens:auto;
}
.fullmenu .navbar-mainnavigation .navbar-brand-image {
    /*position: absolute;*/
    z-index: 999;
    /*filter: invert(1) grayscale(1) contrast(1);*/
}
.navbar-mainnavigation .navbar-collapse {
    width: 100%;
}
.fullmenu  header .container.container-mainnavigation {
    position: relative;
}
.fullmenu .navbar-mainnavigation .nav-style-mega .dropdown-menu {
    margin-left: auto;
    margin-right: auto;
    left: 0;
    right: 0;
    z-index: 999999999999999;
    top: 0;
    position: relative; display:block;
    background: transparent;
    border: 0;
    color: #262626;  padding: 0;
    max-width:100%;
}
.navbar-collapse {
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center;
    align-content: flex-end;
    position: relative;
    transition:all 1s;
}
.fullmenu .navbar-collapse .nav-style-mega{
    flex-basis: 100%;
    flex-grow: 1;
    align-items: center;
    align-content: flex-start;
    height: 100vh;
    position: absolute;transition:all 1s;
}
/*
.fullmenu  .navbar-mainnavigation .navbar-nav > .nav-item {display:none;position:relative; }*/
.fullmenu .navbar-mainnavigation .navbar-nav > .nav-item.nav-style-mega {
  display: block;
  width: 88vw;
  left: calc((100vw - 100%) / -2);
  top: 6rem;
  max-height: calc(100vh - (var(--mainnavigation-nav-height) * 2));
  overflow-y: auto;
}
.fullmenu .navbar-mainnavigation .dropdown-menu-mega > .dropdown-nav > .nav-item > .nav-link {
    font-weight: bold;
    font-size: 2rem;
}
.header-box.mobil {
    display:none;
}
.header-box.desktop {
    display:block;
}


body main .textmedia {
  gap: 15px;
}
iframe {
  border-radius: 2rem;
}



.hoverimgLink .frame-backgroundimage-container{
	transition:all .5s;
}
.hoverimgLink:hover .frame-backgroundimage-container{
	transition:all .5s;
	transform:scale(1.1);
}
.no_left_padd{
	padding-left:0 !important;
}
.no_right_padd{
	padding-right:0 !important;
}
.container .row:not(.frame) .frame.no_left_padd.no_right_padd {
  padding: 0;
    padding-top: 0px;
    padding-right: 0px;
    padding-left: 0px;
}


footer ul {
    list-style-type: none;
    padding: 0;
}
.footerlogo {
    max-width: 18rem;
}


main .container > .row > div > .frame:not(:first-child) {
    margin-top: 2rem;
}


.frame-has-backgroundimage.frame-background-light .frame-container.frame-container-default {
  color: #fff;
  background: #000;
  background: -webkit-linear-gradient(0deg,rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);
  background: -moz-linear-gradient(0deg,rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
  background: linear-gradient(0deg,rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#000000", endColorstr="#000000", GradientType=0 );
}
.frame-has-backgroundimage.frame-background-light   .icongroup-item-text-header a{
	color:#fff;
}
.frame-has-backgroundimage.frame-background-light   .icongroup-item-text-header:hover a{
	color:#fff;
}
.frame-has-backgroundimage.frame-background-light  .icongroup-iconposition-left-center .icongroup-item {
  align-items: baseline;
}
.row .col-12 [class^="frame-background-"] {
    min-height: 100%;
}
html body .icongroup-item-icon {
    min-width: 50%;
}
.icongroup-item-icon svg {
	max-width:12rem;
	margin:auto;
}
html body .frame-background-primary .icongroup-item-icon svg {
    /*fill: #fff;*/ fill: #4B4B4B;
}
html body .icongroup-item-text-header {
    font-size: 1.5rem;hyphnes:none; text-decoration:none
}
html body .frame-background-primary  .icongroup-item-text-header {
    /*color:#fff;*/ color : #4B4B4B;
}
html body .frame-background-primary .icongroup-item-text a {
  color: #4B4B4B;
}
html body .frame-background-secondary .icongroup-item-icon svg {
    fill: #4B4B4B;
}
html body .frame-background-secondary  .icongroup-item-text-header {
    color:#4B4B4B;
}
.slick-slide svg path {
  fill: #4B4B4B;
}
html body .frame-background-tertiary .icongroup-item-icon svg ,
html body .frame-background-tertiary .icongroup-item-icon svg path{
  fill: #fff;
}

html body .frame-background-tertiary .icongroup-item-text a,
html body .frame-background-quaternary .icongroup-item-text a {
  color: #fff;
}
html body .frame-background-quaternary .icongroup-item-icon svg ,
html body .frame-background-quaternary .icongroup-item-icon svg path{
  fill: #fff;
}


.frame-has-backgroundimage {
    height: 100%;  min-height: 20rem;
}
.frame-has-backgroundimage {
    min-height: 20rem;
}
.frame-has-backgroundimage .icongroup{min-height:0px;margin:0px !important;}
.frame-has-backgroundimage .icongroup.icongroup-iconposition-below .icongroup-item-text {
    margin-top: -10px;
}

.frame-has-backgroundimage .icongroup .icongroup-item-text p:last-of-type {
    margin-bottom: -1rem;
}
.contentcontainer[data-container-identifier="container_2_columns_right"] > .contentcontainer-column:nth-child(1) .frame-type-container_1_columns .icongroup-item {
    flex-direction: column;
}
.contentcontainer[data-container-identifier="container_2_columns_right"] > .contentcontainer-column:nth-child(1) .frame-type-container_1_columns .icongroup-item .icongroup-item-icon {
    min-width: 100%;
}

.contentcontainer[data-container-identifier="container_2_columns_left"] > .contentcontainer-column:nth-child(2) .frame-type-container_1_columns .icongroup-item {
    flex-direction: column;
}
.contentcontainer[data-container-identifier="container_2_columns_left"] > .contentcontainer-column:nth-child(2) .frame-type-container_1_columns .icongroup-item .icongroup-item-icon {
    min-width: 84%;
}

.icongroup-iconposition-  .icongroup-item .icongroup-item-icon,
.icongroup-iconposition-below  .icongroup-item .icongroup-item-icon,
.icongroup-iconposition-before  .icongroup-item .icongroup-item-icon{
    min-width: 84%;
}
.frame-has-backgroundimage{
    overflow:hidden;
}
.frame-has-backgroundimage .frame-group-inner {
    display: flex;
    flex: 1;
    justify-content: space-between;
    flex-direction: column;
    height: 100%;
}
.frame-has-backgroundimage .frame-group-container,
.frame-has-backgroundimage .frame-group-container .frame-inner{
    height: 100%;
}
.frame-has-backgroundimage  .frame-container.frame-container-default {
    margin-top: auto;
    background: rgba(0,0,0,.5);
    margin-left: -2rem;
}
.frame-has-backgroundimage .frame-container.frame-container-default {
  margin-top: auto;
  background: rgb(255, 217, 0);
  margin-left: -3rem;
  width: calc(100% + 6rem);
  margin-right: -3rem;
  margin-bottom: -3rem;
  color: #262626;
  padding-top: 1rem;
  padding-left: 3rem !important;
  padding-right: 2rem !important;
  padding-bottom: 0rem;
  max-width: calc(100% + 6rem);
}
/*
.gleichehoehe .frame-has-backgroundimage  .hoverimgLink .frame-container.frame-container-default { 
  width: calc(100% + 9rem);
  max-width: calc(100% + 9rem);
}*/
.gleichehoehe > .contentcontainer-column {
  min-height: 400px;
}
.frame-has-backgroundimage.frame-background-light  .frame-container.frame-container-default {
  padding-bottom:1rem;
  padding-top: 5rem;
}

.frame-has-backgroundimage.frame-background-tertiary  .frame-container.frame-container-default {
    background: var(--bs-tertiary);
    color: #ffffff;
}
.frame-has-backgroundimage.frame-background-light .frame-container.frame-container-default  {
    padding-top: 5rem;
}

.frame h5.icongroup-item-text-header a {
    color: #262626;
    font-family: "Source Sans Pro";
    font-size: 1.5rem;
}


.col-md-4 .icongroup-item,
.col-md-6 .icongroup-item,
.col-md-3 .icongroup-item ,
.col-md-2 .icongroup-item {
    flex-direction: column;
}
.col-md-4 .icongroup-item .icongroup-item-icon,
.col-md-6 .icongroup-item .icongroup-item-icon,
.col-md-3 .icongroup-item .icongroup-item-icon,
.col-md-2 .icongroup-item .icongroup-item-icon {
    min-width: 50%;
}

.icongroup-iconposition-
.icongroup-item{
    flex-direction: column-reverse  !important;
}
.icongroup-iconposition-above .icongroup-item-text, .icongroup-iconposition-below .icongroup-item-text {
    margin-bottom: 20px;
}


main .frame-background-light,
main .frame-has-backgroundimage,
main .frame-background-primary,
main .frame-background-secondary,
main .frame-background-tertiary,
main .frame-background-quaternary {
    border-radius:2rem;
}

main > .section > .container {
    margin-top: 1rem;
}
main > .section:first-child > .container:first-child {
  margin-top: 3rem;
}

.contentcontainer .frame-background-none:first-child, .contentcontainer .frame-layout-embedded:first-child {
  padding-top: 1rem !important;
}

.contentcontainer .frame-background-none:first-child .gallery-row , .contentcontainer .frame-layout-embedded:first-child .gallery-row{
  margin-top: -1rem !important;
}
html body .contentcontainer .service-suche .frame-background-none:first-child .gallery-row {
  margin-top: 0 !important;
}
.breadcrumb-link-title {
    color: #262626;
}

html body main .tx-indexedsearch-browsebox {
    list-style-type: none;
    padding-left: 0;
}

.contentcontainer .contentcontainer-column .frame {
    /*height: 100%;*/
}

#calendarizeSearchForm .form-check {
  display: none;
}

.personabox .img img {
    max-width: 100%;
    height: 100%;
    aspect-ratio: 2 / 3;
    object-fit: cover;
    border-radius: 2rem;
}
.personabox{
    background:#E8E8E8;
    overflow:hidden;border-radius:2rem;
}
.personabox .text {
    padding: 1rem 2rem;
    padding-left: 2rem;
    padding-left: 3rem;
}
@media (min-width:1023px){
	.personabox .personaimg {
		margin-left:-2rem;width:calc(33.33333333% + 2rem);
	}
}
.personabox i {
    margin-right:.5rem;
}
.personabox p{margin:0;}
.personabox .img {
    height: 100%;
}
body main .frame .personabox .text a{color:#262626;}



.f3-widget-paginator a:after{display:none !important;}
.tx-indexedsearch-browsebox a:after{display:none !important;}
.news-list-view .news-list-date {
  display: none;
}

.teamitem img {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 3/4;
    height: 100%;
}
.teamitem {
    margin-bottom: 1rem;
    min-height: 10rem;
}
.teamitem p {
    margin: 0;
}

.filelink-filename a {
    word-break: break-word;
}
.link-chevron {
    background: transparent;
    padding-left: 0;
}


html body main .calendarize {
    padding-bottom: 2rem;
}
.home_news .col-md-2 .link-arrow,
.home_3_box .link-arrow {
    background: transparent;
    padding-left: 0;
}
.frame-layout-embedded > .frame-group-container > .frame-group-inner {
    border-radius: 0;
}
main > .section > .frame {
    border-radius: 0 !important;
}

html body .frame-layout-embedded   .card-group-element-align-center .card-title,
h1, h2, h3, h4 ,h5,h6{
    -o-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
    -ms-hyphens: auto;
    word-break: break-word;
    hyphenate-limit-chars: 10 4 4;
    -ms-hyphenate-limit-chars: 10 4 4;
    -o-hyphenate-limit-chars: 10 4 4;
    -web-hyphenate-limit-chars: 10 4 4;
    hyphenate-character: '-';
}

html body main .card {
    color: #212121;
    background: var(--bs-body-bg);
    border-radius: 2rem;
    margin-bottom: 1rem;
}/*
html body main .frame:not(.frame-background-tertiary):not(.frame-background-secondary) a[class=""]{
    color: #262626;
}
html body main .frame:not(.frame-background-quaternary):not(.frame-background-secondary) a[class=""]{
    color: #fff;
}
html body main  .frame:not(.frame-background-tertiary):not(.frame-background-secondary) a:not([class]) {
    color: #ffffff;
}*/

html body .headsearch.desktop{display:flex !important;}
html body .headsearch.mobil{display:none !important;}





#page-content .section:first-child .frame:first-child .gallery-item.gallery-item-size-1 {
    border-radius: 2rem;
    overflow: hidden;
}



/* footer */
.col-md-12.sociallinks li:nth-child(1) a::before {
    content: '';
    width: 1rem;
    height: 1rem;
    display: inline-block;
    background-image: url(/fileadmin/kvsa/icon-instagram.svg);
    background-size: cover;
    margin-right: .5rem;
    margin-top: .25rem;
    margin-bottom: -.25rem;
    filter: grayscale(1) brightness(0.2);
}
.col-md-12.sociallinks li:nth-child(2) a::before {
    content: '';
    width: 1rem;
    height: 1rem;
    display: inline-block;
    background-image: url(/fileadmin/kvsa/icon-facebook.svg);
    background-size: cover;
    margin-right: .5rem;
    margin-top: .25rem;
    margin-bottom: -.25rem;
    filter: grayscale(1) brightness(0.2);
}
.col-md-12.sociallinks li:nth-child(3) a::before {
    content: '';
    width: 1rem;
    height: 1rem;
    display: inline-block;
    background-image: url(/fileadmin/kvsa/icon-linkedin.svg);
    background-size: cover;
    margin-right: .5rem;
    margin-top: .25rem;
    margin-bottom: -.25rem;
    filter: grayscale(1) brightness(0.2);
}
.col-md-12.sociallinks li:nth-child(4) a::before {
    content: '';
    width: 1rem;
    height: 1rem;
    display: inline-block;
    background-image: url(/fileadmin/kvsa/icon-xing.svg);
    background-size: cover;
    margin-right: .5rem;
    margin-top: .25rem;
    margin-bottom: -.25rem;
    filter: grayscale(1) brightness(0.2);
}
.col-md-12.sociallinks ul {
    display: flex;
    gap: 2rem;
}

/* sonder */
.verbunden .frame,
.verbunden {
    padding: 0 !important;
}
.verbunden > div{
    padding: 0 !important;
    margin: 0 !important;
    padding-right:2rem !important;
}
.row.verbunden {
    margin-left: 0rem;
    margin-right: 0rem;
}
.verbunden .frame-type-image *, .verbunden .frame-type-image {
    height: 100% !important;
    object-fit: cover;
}
.verbunden .frame:not(.frame-type-image){
    padding-top:2rem !important;
    padding-bottom:2rem !important;
}








/*map */
.map { position: relative; }
.map .map-controls{
  position:absolute; top:.75rem; right:.75rem; z-index:5;
  display:flex; gap:.5rem; background:rgba(255,255,255,.9);
  border-radius:.75rem; padding:.4rem; box-shadow:0 4px 16px rgba(0,0,0,.1);
  backdrop-filter:saturate(1.2) blur(4px);
}
.map .map-controls button{
  border:0; padding:.45rem .6rem; border-radius:.5rem; cursor:pointer;
  font:600 14px/1 system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
}

/*
.svgmap svg{
  width:100%; height:auto; display:block;
  touch-action:none; /* für Pan/Pinch nötig */
  user-select:none; -webkit-user-select:none;
}

.svgmap svg {
  width: 100%;
  height: auto;
  display: block;
  /* wichtig für Touch: erlaubt Pinch/Pan per Pointer Events */
  touch-action: none;
  /* verhindert Scrollen beim Pinch auf iOS/Android */
  -webkit-user-select: none; user-select: none;
}
*/

/*
.mapcontainer svg a:hover {
  translate: -10% -1%;
  position: relative;
  z-index: 99999;
  transform: scale(120%);
}*/
.mapcontainer svg path {
  fill: #ffd900;

}
/*
.mapcontainer svg a:hover  path{
  fill: #f00;

}*/
svg a.maphover path {
  stroke-width: 5px;
  fill: #e1c107  !important;
  stroke: #e1c107 !important;
  filter: 
drop-shadow(0 5px 5px #fff) 
drop-shadow(5px 0 5px #fff)
drop-shadow(-5px 0 5px #fff)
drop-shadow(0 -5px  5px #fff);

}
.mapcontainer svg text {
  font-size:.75rem
}


.interactive-map-container-menu-left .btn svg {
  width: 2rem;
  height: 2rem;margin-right:1rem;
}
.listactive  .btn.btn-list.interactive-map-toggle-list {
  display: none;
}
.mapactive  .btn.btn-map.interactive-map-toggle-map {
  display: none;
}

.mapactive .accordion{display:none;}
.listactive .svgmap{display:none;}

.mapcontainer .map{display:none;}
.mapcontainer .map.active{display:block;}


.buttonswitch {
  display: inline-block;
  vertical-align: middle;
  width: 49%;
}
.map.active  {

  position: relative;
 
}
.mapcontainer svg path {
  fill: #ffd900;
  stroke-width: 1px;
  stroke: #fff;
}
.map.active .popup {
  display: none;
  position: absolute; top: 50%;
  left: 50%;
  translate: -50% -50%;
	z-index:12;
}
.popup.open button {
  position: absolute;
  top: 0rem;
  right: 1rem;
  background: transparent;
  border: 0;
  font-size: 2rem;
}
.popup .inner {
  max-width: 90vw;
  width: 980px;
  background: #fff;
  padding: 2rem;
  border-radius: 2rem;
  z-index: 999;
  background: #fff;
  max-height: 70vh;
  overflow: auto;
}
.map.active .popup{display:none}
.map.active .popup.open{display:block}
.popup.open .inner {
  position:relative;z-index:1;
}
.popup.open::after {
  content: '';
  display: block;
  background: rgba(0,0,0,.3);
  position: fixed;
  top: 0;
  left: 0;
  width: 2000vw;
  height: 2000vw;
  translate: -50% -50%;
  z-index: -1;
}
.mapcontainer svg a {
  cursor: pointer;
}
.mapcontainer svg a:hover text {
  font-size: .75rem;
}
.mapcontainer svg a text {
  transition: all 1s;
}
select {
  word-wrap: normal;
  background: var(--cookieconsent-button-bg);
  border: 0;
  padding: .5rem 1rem;
  border-radius: 1rem;
}

html body footer .col-md-4 {
    margin-bottom: 0rem;
    min-height: inherit;
}

html body main .accordion-button:not(.collapsed) {
  color: #000;
}
html body .table-responsive table {
  width: 100%;
}


html body main  .frame-type-uploads {
  margin-bottom: 4rem;
}
html body main .frame-type-shortcut {
  margin-top: 0;
  padding-top: 0;
}

.navbar-nav .withsub .dropdown-nav[data-level="5"] .nav-link.active {
  color: var(--bs-primary);
}


.downloadbox_wrapper .image-container img {
  aspect-ratio: 1 / 1;
  width: auto !important;
  height: auto !important;
  max-width: 100%;
}


.contentcontainer[data-container-identifier="container_2_columns"] {
    margin-bottom: 1rem;
}
.contentcontainer[data-container-identifier="container_2_columns"]  .contentcontainer-column[data-container-column="left"] .frame.frame-default.frame-type-icon_group.frame-layout-default.frame-size-default.frame-height-default.frame-background-light.frame-space-before-none.frame-space-after-none.frame-has-backgroundimage {
  min-height: 300px;
}
.backendlayout-special_start .contentcontainer[data-container-identifier="container_2_columns"]  .contentcontainer-column[data-container-column="left"] .frame.frame-default.frame-type-icon_group.frame-layout-default.frame-size-default.frame-height-default.frame-background-light.frame-space-before-none.frame-space-after-none.frame-has-backgroundimage {
  min-height: 480px;
}

.contentcontainer[data-container-identifier="container_2_columns"]  .contentcontainer-column[data-container-column="right"] .frame{
  height:100%;
}

hr {
  border: 0 !important;
}

html body main .subpages .card {
  background: var(--bs-card-cap-bg);
}
.frame-no-backgroundimage .icongroup-item-text-header {
  display: inline-block;
}
.tx-indexedsearch-browsebox li:has(strong) ,
.f3-widget-paginator li.current {
  background: var(--bs-gray-300);
}






@media (min-width: 992px) {
    .navbar-mainnavigation .navbar-nav {
        flex-direction: row; transition:all .0s;
        max-width: calc(100% - 250px);
        padding-left: 2rem;
    }

	#mainnavigation{
	   --mainnavigation-dropdown-column-min-width:19%;
	}

	.dropdown-menu-mega .dropdown-nav[data-level="3"] a {
	  padding: 0;
	}
	.dropdown-menu-mega .dropdown-nav[data-level="5"] a {
	  padding: 0.2rem;
	}
    .fixed.navbar-mainnavigation .navbar-nav {
        padding-left: 3.5rem;
    }
    header .container.container-mainnavigation {
        max-width: 95vw;
    }
}
@media (min-width: 1400px) {
    html body .carousel .carousel-content-inner {
        max-width: 92vw;
        /* left: -.5rem;*/
        position: relative;
    }
    .section.footer-section.footer-section-content > .container {
        /*max-width: 95vw;*/
    }
    #carousel-224 .carousel-text {
        padding: 3rem;
    }
}
@media (max-width:981px){
    .header-box.mobil {
        display:block;position: relative;
        margin-bottom: 1rem;
        width: 100%;
    }
    .header-box.desktop {
        display:none;
    }

    #carousel-224 .carousel-text {
        width: 100%;
    }
    #carousel-224 .carousel-image {
        height: 100%;
        width: 100%;
        overflow: hidden !important;
        display: block;
    }
    #carousel-224 .carousel-content-inner {
        flex-direction: row;
        flex-wrap: wrap;
    }
    body #carousel-224.carousel .item {
        height: auto;
    }
    .service-suche .col-10 .frame {
        background: #fff;
        border-radius: 2rem;
        line-height: 4rem;
        height: auto;
        padding: 1.25rem 2rem !important;
        padding-top: 1.25rem;
    }
	.service-suche .col-1 .frame {
		width: 4rem;
		margin-left: -2rem;
	  }
    x.service-suche .col-1{margin-left:-10%;}
    .row.service-suche {
        display: flex;
        flex-direction: row;    align-items: center;
    }
    .service-suche .textmedia, .service-suche .textpic {
        gap: 15px;
    }
    .row.home_3_box .frame {
        margin-bottom: 2rem;
    }
    .home_news .article {
        flex-basis: 100%;
    }
    html body .frame-layout-embedded .card-group-element-columns-4 {
        --cardgroup-columns: 3;
    }
    .calendarize .panel {
        width: 100%;
    }

    html,body{overflow-x:hidden;}
}
@media (min-width:1200px){
    header .b5{display:none;}
}
@media (max-width:1200px){
    .fullmenu .navbar-collapse::before {
        top: 0 !important;
        z-index: 1;
    }
    .fullmenu .navbar-mainnavigation .navbar-brand-image {
        display: none;
    }
    .fullmenu .navbar-collapse {
        align-content: center;
    }
    .fullmenu .navbar-mainnavigation .nav-style-mega .dropdown-menu {
        max-height: 65vh;
        overflow-y: auto;overflow-x:hidden;
    }
	.fullmenu .navbar-collapse .nav-style-mega {
		position: static;
	}
}

@media (min-width: 768px) {

	.map-select {
	  margin-left: auto;
	  margin-right: 0;
	  display: block;
	}
    .fullmenu li.nav-item.nav-style-mega::before {
        content: '';
        display: inline-block;
        width: 2rem;
        height: 2rem;
        background-image: url(/fileadmin/kvsa/kvsa-icons_menue-schliessen.svg);
        background-size: cover;
		z-index: 999999;
		position: relative;
		pointer-events:none;
		left:calc(100% - 2rem);
    }
    body:not(.fullmenu) li.nav-item.nav-style-mega::before {
        content: '';
        display: inline-block;
        width: 2rem;
        height: 2rem;
        background-image: url(/fileadmin/kvsa/kvsa-icons_menue-offen.svg);
        background-size: cover;
        margin-bottom: -.5rem;
        margin-top: .25rem;
    }
    .fullmenu li.nav-item.nav-style-mega > a > .nav-link-text {
        display: inline-block;
        color: transparent;
        margin-left: -2rem;
        margin-top: -4rem;
        z-index: 2;
        position: relative;
    }

    html body .footer-section-content-column-left, html body .footer-section-content-column-middle, html body .footer-section-content-column-right {
        --section-gaps: 3;
        --section-colspan:6;
    }
    .section-column.footer-section-content-column.footer-section-content-column-middle, .section-column.footer-section-content-column.footer-section-content-column-left {
        --section-gaps: 2;
        --section-colspan: 2;
    }
    html body .footer-section-content-column-right.right2 {
        --section-gaps: 1;
        --section-colspan: 1;
        margin-left: -12%;
    }
}

@media (max-width:1380px){

    html body .contentcontainer[data-container-identifier="container_2_columns_right"] {
        grid-template-columns: 1fr 1fr;
    }
    html body .contentcontainer[data-container-identifier="container_2_columns_left"] {
        grid-template-columns: 1fr 1fr;
    }

    .icongroup-iconposition-right-center .icongroup-item, .icongroup-iconposition-left-center  .icongroup-item{
        flex-direction:column;flex-wrap:wrap;
    }
    .personabox .img img {
        max-width: 100%;
        height: 100%;
        aspect-ratio: 1 / 1;
        object-fit: cover;
    }
    html body .personabox .col-md-4 img,
    html body .personabox .col-md-4{width:100%;}
}


@media (max-width:1179px){
    .section.footer-section.footer-section-meta .frame-container {
        padding: 0 1rem;
    }
    .footer-navigation ul {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
    }
    .section-column.footer-section-content-column {
        width: 45%;
    }
    html body .container, html body .container-sm, html body .container-md,html body .frame-container-default {
        max-width: 94%;
    }
    html body .col-md-8,
    html body .col-md-7,
    html body .col-md-6,
    html body .col-md-5,
    html body .col-md-4 {
        flex: 0 0 auto;
        width: 50%;
    }

    .gleichehoehe > .col > .frame, .gleichehoehe > .col-12 > .frame {
        height: inherit;
    }
    html body .col-md-8 .frame, html body .col-md-7 .frame, html body .col-md-6 .frame, html body .col-md-5 .frame, html body .col-md-4 .frame {
        margin-bottom: 1rem;
    }
}
@media (min-width:980px) and (max-width:1200px){
    .fullmenu .navbar-mainnavigation .navbar-brand-image {
        position: relative;
        padding: 0;
        display: none;
    }
    html body .navbar-mainnavigation .navbar-nav > .nav-item {
        display: none;
    }
    html body .nav-item.nav-style-mega {
        display: flex;
    }
	#mainnavigation.show .navbar-nav {
		max-width: calc(100% - 0px);
	  }
	.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="2"] > li {
	  display: block;
	}
	.navbar-mainnavigation .dropdown-nav[data-level="3"] > .nav-item > .nav-link.nav-link-dropdown {
	  hyphens: auto;
	}
}
@media (max-width:980px) and (min-width:768px){
	.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="2"] > li {
	  display: block;
	}
	.navbar-mainnavigation .navbar-nav > .nav-item:nth-child(1),
	.navbar-mainnavigation .navbar-nav > .nav-item:nth-child(2),
	.navbar-mainnavigation .navbar-nav > .nav-item:nth-child(3),
	.navbar-mainnavigation .navbar-nav > .nav-item:nth-child(4),
	.navbar-mainnavigation .navbar-nav > .nav-item:nth-child(5) {
	  display: none;
	}
}
@media (max-width:768px){
	.mapcontainer .map{margin-top:2rem;}
    .section-column.footer-section-content-column {
        width: 95%;
    }
    html body .container, html body .container-sm, html body .container-md, html body .frame-container-default {
        max-width: 100%;
        --bs-gutter-x: 40px;
    }
    html body .col-md-8,
    html body .col-md-7,
    html body .col-md-6,
    html body .col-md-5,
    html body .col-md-4 {
        flex: 0 0 auto;
        width: 100%;
    }
	.search-open .header-box.mobil {
	  z-index: 999999;
	}
    .search-open #page-header {
        padding-bottom: 5rem;overflow-y:visible;
    }
    .header-box.mobil {
        flex-flow: row wrap;
    }
    html body .fixed .navbar-brand.navbar-brand-image {
        height: 1rem;
        visibility: hidden;
        margin-top: 1rem;
    }
    .teamitem .col-md-4 {
        width: 33%;
        min-height: auto;
    }
    .teamitem .col-md-8 {
        width: 66%;
        min-height: auto;
    }

    html body .headsearch.desktop{display:none !important;}
    html body.search-open .headsearch.mobil {
        display: flex !important;
        padding: 0;
        flex-wrap: 1;
        flex-basis: 100%;    margin-top: 1rem;
    }
    .header-box.mobil {
        display: flex;
        position: absolute;
        margin-bottom: 1rem;
        width: calc(100% - 2rem);
        top: .5rem;
        z-index: 9;
        align-content: space-between;
        justify-content: space-between;
    }
    .icongroup-item {
        flex-direction: column;
    }
    html body .contentcontainer[data-container-identifier="container_2_columns_right"] {
        grid-template-columns: 1fr ;
    }
    html body .contentcontainer[data-container-identifier="container_2_columns_left"] {
        grid-template-columns: 1fr;
    }
    html body .col-md-4 {
        flex: 0 0 auto;
        width: 100%;
        margin-bottom: 2rem;
    }
    .icongroup-iconposition-right-center .icongroup-item, .icongroup-iconposition-left-center  .icongroup-item{
        flex-direction:column;flex-wrap:wrap;
    }
    .personabox .img img {
        max-width: 100%;    width: 100%;
        height: 100%;
        aspect-ratio: 2 / 1;
        object-fit: cover;    
		margin-bottom: -30%;
    }
	.personabox .img {
	  min-height: 50vh;
	}
    html body .personabox .col-md-4{width:100%;margin-bottom:-2rem;}
    main .frame-has-backgroundimage{
        min-height: 50vh;
    }
    html body .navbar-mainnavigation .navbar-brand-image {
        margin-top: 4rem;
    }
    .navbar-toggler{display:none;}
    .home_news .news .article {
        flex-basis: 100%;
    }
    .fullmenu #mainnavigation:before {
        top: 160px;
    }
    .navbar-collapse {
        transition: none !important;
    }
    .col-md-12.sociallinks ul {
        display: flex;
        gap: 0rem;
        flex-direction:column;
    }
    .row.service-suche {
        padding: 1rem 0 !important;
    }
    .service-suche .col-10 .frame {
        padding: 0 1rem 1rem !important;
    }
    .section.footer-section.footer-section-meta .frame-inner {
        display: flex;
        flex-direction: column;
    }
    body footer .footer-info-section {
        text-align: left;
    }

	.verbunden > div {
	  padding-right: 0rem !important;
	}
	.verbunden .frame-container.frame-container-default {
	  padding-left: 1rem;
	  padding-right: 1rem;
	}
	.verbunden .frame-container.frame-container-default .gallery-row{
	  margin-left: -1rem;
	  margin-right: -1rem;
	}
	body main .frame-has-backgroundimage .frame-container.frame-container-default {
	  margin-left: -4rem;
	  width: calc(100% + 4rem);
	  max-width:inherit;
	  margin-right: 0;    
		margin-top: -1.5rem;     position: absolute;
    bottom: 3rem;
	}
	.navbar-mainnavigation .dropdown-nav {
	  --mainnavigation-dropdown-column-min-width: 95vw;
	}
	.fullmenu #mainnavigation:before {
		position: fixed;
		content: '' !important;
		top: 0px;
		display:block !important;
		top: -100vh!important;;
		left: 0;
		width: 100vw;
		height: 200vh;
		max-width: 100vw; 
	  z-index:1 !important;
	}
	nav#mainnavigation{
	   posizion:sticky
	}
	.collapse:not(.show) {
		display: block;
	}
	.navbar-mainnavigation .navbar-nav > .nav-item{display:none}
	.buttonswitch {
	  display: block;
	  vertical-align: middle;
	  width: 100%;
	}
  .navbar-mainnavigation .dropdown-nav .nav-item.withsub  .dropdown-nav[data-level="2"] > .nav-link.nav-link-dropdown:not(.nav-link-toggle)::before {
    width: 1.1rem;
    height: 1.1rem;
  }
  .navbar-mainnavigation .dropdown-nav .nav-item.withsub  .dropdown-nav[data-level="3"] > .nav-link.nav-link-dropdown:not(.nav-link-toggle)::before {
    width: .8rem;
    height: .8rem;
  }
	.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="3"] {
	  margin-left: 2rem;    max-width: calc(100% - 2rem);
	}
.dropdown-menu-mega .dropdown-nav[data-level="3"] > .nav-item {
  margin-bottom: 0rem;
}
}

@media (max-width:1180px){ 

	body:not(.fullmenu) #mainnavigation.show {
	  display: none;
	}
	body.fullmenu #mainnavigation {
	  display: block;
	}
  .fullmenu .navbar-mainnavigation .navbar-nav > .nav-item:nth-child(n+5) {
    display: inline-block;
    z-index: 999;
    width: auto;
    float: left;
    flex-basis: 10%;
    position: relative;
	  }
	html body.fullmenu   .navbar-mainnavigation .nav-spacer {
	  display: block;
	  margin-top: 5rem;
	}
	#c245 .card-group-element .slick-slide{display:block !important;}
	#c245 .slick-slide > div, #c245 .slick-slide > div > div {
	  height: 100% !important;
	  max-width: calc(100vw - 2.5rem);
	}
	.slick-slider{
	max-width: 92vw;
	width: 100%;
	overflow: hidden !important;
	}
	.slider-container {
		max-width: 100vw;
		width: 100%;
		overflow: hidden;
	}
}


@media (max-width:980px){
		#page-header.fixed {
		  padding-top: .5rem;
		  padding-bottom: .5rem;
		  min-height: calc(var(--mainnavigation-nav-height) + 0rem);
		}
	  .fullmenu .navbar-collapse::before {
		top: 0 !important;
		z-index: 3;
	}
	.navbar-mainnavigation .navbar-nav {
	  width: 100%;
	  position: static;
	  display: block;
	}
	.navbar-mainnavigation .nav-link:not(.nav-link-toggle).show::before, .navbar-mainnavigation .nav-link:not(.nav-link-toggle).active::before {
	  margin-left: 0;
	}
	.navbar-mainnavigation .navbar-nav {
	  width: 100%;
	  position: static;    min-height: 90vh;
    overflow-y: auto;
	}
	.navbar-toggler{display:none;}
	
	.fullmenu .navbar-mainnavigation .navbar-nav > .nav-item.nav-style-mega {
	  display: block;
	  width: calc(100vw - 6rem);
	  left: 0;
	  padding-top: 3rem;    clear: both;
    top: 0;
  max-height: calc(95vh - (var(--mainnavigation-nav-height) * 2));7

	}
}

.subpages .card-menu.card-menu-align-.card-menu-columns- .card-menu-item {
  flex-basis: 32%;
}
.subpages .card-menu-columns-,
 .subpages .card-menu-columns-2 {
    --cardmenu-columns: 3;
  }

@media (max-width:768px){

.subpages .card-menu.card-menu-align-.card-menu-columns- .card-menu-item {
  flex-basis: 100%;
}
	.fullmenu .navbar-mainnavigation .navbar-nav > .nav-item.nav-style-mega {
	  width: calc(100vw - 2rem);
	}
	.news .article .footer {
	  position: relative;
	}
	#c245 .card-group-element .slick-slide{display:block !important;}
	#c245 .slick-slide > div, #c245 .slick-slide > div > div {
	  height: 100% !important;
	  max-width: calc(100vw - 2.5rem);
	}
	.slick-slider{
	max-width:100vw;
	width: 100%;
	overflow: hidden !important;
	}
	.slider-container {
		max-width: 100vw;
		width: 100%;
		overflow: hidden;
	}
.navbar-mainnavigation .dropdown-nav[data-level="2"] > .nav-item > .nav-link.nav-link-dropdown {
  display: block;
}
	.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="2"] > li {
	  display: block;margin-bottom:1rem;
	}
  .navbar-mainnavigation .navbar-nav {
    min-height: 95vh;
    overflow-y: auto;
  }
	.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="3"] {
		margin-top:1rem;
	}
	.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="1"] > li:hover  ul.dropdown-nav[data-level="2"] > li {
	  display: block;
	}

	.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="2"] > li  .dropdown-nav{
		display:none;
	}
	.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="2"] > li:hover > .dropdown-nav{
		display:block;
	}
	.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="3"] > li  .dropdown-nav{
		display:none;
	}
	.navbar-mainnavigation .navbar-nav > .nav-item ul.dropdown-nav[data-level="3"] > li:hover > .dropdown-nav{
		display:block;    padding-left: 1rem;
	}


	.navbar-mainnavigation .nav-link:not(.nav-link-toggle)::before, .navbar-mainnavigation .nav-link:not(.nav-link-toggle)::before {
	/*  opacity: 0 !important;*/
	}
	.navbar-mainnavigation .nav-link:not(.nav-link-toggle), .navbar-mainnavigation .nav-link:not(.nav-link-toggle) {
	  padding-left:1rem;
	}







	.navbar-mainnavigation .dropdown-nav .nav-item.withsub > .nav-link.nav-link-dropdown:not(.nav-link-toggle)::before {
	  display: block;
	  content: "";
	  position: absolute;
	  left: 0rem;
	  top: 50%;
	  opacity: 1;
	  transition: opacity 0.25s ease-in-out;
	  transform: translate(1px,-50%);
	  background-image: url(/fileadmin/kvsa/dropdown.svg);
	  width: 1.5rem;
	  height: 1.5rem;
	  background-size: contain;
	  border: 0;
	  background-repeat: no-repeat;
	}
	.navbar-mainnavigation .dropdown-nav .nav-item.withsub.open > .nav-link.nav-link-dropdown:not(.nav-link-toggle)::before {
	  display: block;
	  content: "";
	  position: absolute;
	  left: 0rem;
	  top: 40%;
	  opacity: 1 !important;
	  transition: opacity 0.25s ease-in-out;
	  transform: translate(1px,-50%);
	  background-image: url(/fileadmin/kvsa/dropdown.svg);

	  background-size: contain;
	  border: 0;
	  background-repeat: no-repeat;
	  transform: rotate(90deg);
	  transform-origin: center;
	}
  .navbar-mainnavigation .dropdown-nav[data-level="4"] > li.open .dropdown-nav[data-level="5"] {
    display: block !important;
    position: static;
    background: #363636;
    width: 100%;
    translate: -1rem 0rem;
    z-index: 9999999999999999999999999999999999999;
    color: #fff;
    --bs-nav-link-color: #fff;
  }
	.navbar-mainnavigation .dropdown-nav[data-level="4"] .nav-item.withsub > .nav-link.nav-link-dropdown:not(.nav-link-toggle)::before {
	  left: 0;
	}
	.navbar-mainnavigation .dropdown-nav[data-level="4"] .nav-item.withsub.open > .nav-link.nav-link-dropdown:not(.nav-link-toggle)::before {
	  left: 0;
	}
	.fullmenu .navbar-mainnavigation .dropdown-menu-mega > .dropdown-nav > .nav-item > .nav-link {
	  font-weight: 500;
	  font-size: 2rem;
	  padding-left: 2rem;
	}
	.navbar-mainnavigation .dropdown-nav[data-level="3"] > .nav-item > .nav-link.nav-link-dropdown {
	  font-size: 1.5rem;
	  font-weight: 500;
	  padding-left: 2rem;
	}

	.icongroup-align-left .icongroup-item{
		margin:40px;
	}
}







/* high-font */

.high-font .b2 {
    background: rgba(0,0,0,.8);
}
.high-font .b2 img{
    filter: invert(1);
}

body.high-font p,
body.high-font a,
body.high-font div,
body.high-font span,
body.high-font h1,
body.high-font h2,
body.high-font h3,
body.high-font h4,
body.high-font h5 {
  font-size: 22px;
}


/* high-contrast */

.high-contrast  .frame-background-primary,
.high-contrast  .frame-background-secondary,
.high-contrast  .frame-background-tertiary,
.high-contrast  .frame-background-quaternary    {
    --frame-color: #ffffff;
    --frame-background: #262626;
    --frame-link-color: #ffffff;
    --frame-link-hover-color: #ffffff;
}
.high-contrast .personabox{
    background:#262626;
}
.high-contrast .personabox *{
    color:#fff !important
}

.high-contrast .frame-has-backgroundimage .frame-container.frame-container-default{
    background: #262626;
    color: #ffffff;
}

.high-contrast .frame-has-backgroundimage .frame-container.frame-container-default *,
.high-contrast .frame-has-backgroundimage .frame-container.frame-container-default a{
    color: #ffffff;
}
.high-contrast .b3 {
    background: rgba(0,0,0,.8);
}
.high-contrast .b3 img{
    filter: invert(1);
}
.high-contrast .breadcrumb-section {
    background-color: #262626;
}
.high-contrast .breadcrumb-section span,
.high-contrast .breadcrumb-section a {
    color: #fff !important;
}
.high-contrast.fullmenu #mainnavigation::before {
    background: #262626;
}
.high-contrast.fullmenu .nav-style-mega .nav-link,
.high-contrast.fullmenu .navbar-nav .nav-style-mega  .nav-link.active,
.high-contrast.fullmenu .navbar-nav .nav-style-mega  .nav-link.show {
    color: #fff !important;
}

.high-contrast .home_3_box .frame{
    --frame-color: #262626;
    --frame-background: #ffffff;
    --frame-link-color: #262626;
    --frame-link-hover-color: #262626;
}
  .fullmenu.high-contrast li.nav-item.nav-style-mega::before {
    filter: invert(1) brightness(200);
  }
.high-contrast .date{
    color: #262626;
}


.high-contrast  .navbar-mainnavigation .nav-link:not(.nav-link-toggle)::before {
  filter: invert(1);
}

html body.high-contrast .frame-background-primary .icongroup-item-text-header ,
html body.high-contrast .frame-background-primary p,
html body.high-contrast .frame-background-secondary  .icongroup-item-text-header ,
html body.high-contrast .frame-background-secondary  p,
html body.high-contrast .frame-background-tertiary .icongroup-item-text-header ,
html body.high-contrast .frame-background-tertiary p,
html body.high-contrast .frame-background-quaternary .icongroup-item-text-header ,
html body.high-contrast .frame-background-quaternary p
html body.high-contrast .frame-background-primary a,
html body.high-contrast .frame-background-secondary  a,
html body.high-contrast .frame-background-tertiary a,
html body.high-contrast .frame-background-quaternary a{
  color: #fff;
}
html body.high-contrast .link-arrow{
color:#000 !important
}

html body.high-contrast .frame-background-primary .icongroup-item-icon svg ,
html body.high-contrast .frame-background-primary .icongroup-item-icon svg path,
html body.high-contrast .frame-background-secondary  .icongroup-item-icon svg ,
html body.high-contrast .frame-background-secondary .icongroup-item-icon svg path,
html body.high-contrast .frame-background-tertiary .icongroup-item-icon svg ,
html body.high-contrast .frame-background-tertiary .icongroup-item-icon svg path,
html body.high-contrast .frame-background-quaternary .icongroup-item-icon svg ,
html body.high-contrast .frame-background-quaternary .icongroup-item-icon svg path{
  fill: #fff;
}
html body.high-contrast  .footer-section-content {
  background: #262626;
  --frame-color: #fff;
  --frame-link-color: #fff;
  --frame-link-hover-color: #fff;
}

.high-contrast #page-footer {
  background: #262626;
}

.high-contrast .col-md-12.sociallinks li a::before {
  filter: grayscale(1) brightness(1.2);
}
.high-contrast .service-suche .element-header {
  color: #262626;
}
.high-contrast .service-suche .col-10 .frame a{ color:#262626}

.high-contrast  .mapcontainer svg path {
  fill: #000000;
  stroke-width: 2px;
  stroke: #fff;
}
.high-contrast .mapcontainer svg text {
  color: #fff !important;
  fill: #fff !important;
}
.high-contrast select {
color:#fff;
  background: #000;
}



.high-contrast  .frame-has-backgroundimage .frame-container.frame-container-default {
    padding-top: 0rem;
}







/* cookie */

html body #CookieBox .cookie-btn {
    background: #ffd800;color:#262626;
}






























/*experimentell */

hr {
  margin: 0rem 0;
}
main .section:first-child .frame-type-image:first-child {
  margin-bottom: 2rem;
}
.frame-background-dark.frame-has-backgroundimage .frame-container.frame-container-default {
  background: transparent;
}
.frame-background-dark.frame-has-backgroundimage .frame-container.frame-container-default .frame-inner h2 a {
  color: transparent;
}


.gleichehoehe .contentcontainer-column .frame-group-container .gallery-row {
  margin-bottom: -2rem;
  min-height: 300px;
}
.gleichehoehe .contentcontainer-column .frame-group-container .gallery-row .image img {
  min-height: 300px;
}
html body .icongroup-item-text-header {
  display: inline;
}

main .frame-background-tertiary  .filelink-filename a::after {
  filter: invert(1);
}
.spitzmarke {
  display: block;font-size:1rem;
}


.navbar-mainnavigation .nav-link:not(.nav-link-toggle):hover::before, .navbar-mainnavigation .nav-link:not(.nav-link-toggle):focus-visible::before {
  opacity: 0 !important;
}


@media (min-width:880px){
	/*.frame-group-inner.hoverimgLink {
	   aspect-ratio: 4 / 2;    
	}*/
	.frame-group-inner.hoverimgLink {
		display: flex;
		align-items: center;
	}/*
   .contentcontainer[data-container-identifier="container_2_columns"]  .contentcontainer-column[data-container-column="left"] .frame.frame-default.frame-type-icon_group.frame-has-backgroundimage .frame-group-inner.hoverimgLink {
	   aspect-ratio: 3 / 2;
	}.contentcontainer[data-container-identifier="container_2_columns"]  .contentcontainer-column[data-container-column="right"] .frame.frame-default.frame-type-icon_group.frame-has-backgroundimage .frame-group-inner.hoverimgLink {
	   aspect-ratio: 3 / 2;
	}*/
}

@media (min-width: 992px) {
    html body main .contentcontainer[data-container-identifier="container_2_columns_left"] {
        grid-template-columns: calc(66% -  (var(--contentcontainer-gap) / 4 )) calc(33%  -  (var(--contentcontainer-gap) / 4 ))
    }
    html body main .contentcontainer[data-container-identifier="container_2_columns_right"] {
        grid-template-columns: calc(33% -  (var(--contentcontainer-gap) / 4 )) calc(66%   -  (var(--contentcontainer-gap) / 4 ))
    }
}


/*main .frame-inner p a:not([class]) {
  background: #fd0;
  border-radius: 5px;
  padding: 0 5px;
}*/