@charset "UTF-8";
:root {
  --cassiopeia-color-primary: #000000;
  --cassiopeia-color-link: #f74d71;
  --link-color: #f74d71;
  --cassiopeia-color-hover: #4f3353;
}
:root {
  --blue: #010156;
  --indigo: #6812f3;
  --purple: #6f42c2;
  --pink: #e93f8e;
  --red: #a51f18;
  --orange: #fd7e17;
  --yellow: #ad6200;
  --green: #448344;
  --teal: #5abfdd;
  --cyan: #30638d;
  --white: white;
  --gray: #F5F5F5;
  --gray-100: #f9fafb;
  --gray-200: #eaedf0;
  --gray-300: #dfe3e7;
  --gray-400: #ced4da;
  --gray-500: #adb5bd;
  --gray-600: #6d757e;
  --gray-700: #484f56;
  --gray-800: #353b41;
  --gray-900: #22262a;
  --primary: #010156;
  --secondary: #6d757e;
  --success: #448344;
  --info: #30638d;
  --warning: #ad6200;
  --danger: #a51f18;
  --light: #f9fafb;
  --dark: #353b41;
  --primary-rgb: 1, 1, 86;
  --secondary-rgb: 109, 117, 126;
  --success-rgb: 68, 131, 68;
  --info-rgb: 48, 99, 141;
  --warning-rgb: 173, 98, 0;
  --danger-rgb: 165, 31, 24;
  --light-rgb: 249, 250, 251;
  --dark-rgb: 53, 59, 65;
  --white-rgb: 255, 255, 255;
  --black-rgb: 0, 0, 0;
  --body-color-rgb: 34, 38, 42;
  --body-bg-rgb: 255, 255, 255;
  --font-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  --gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));
  --body-font-family: var(--cassiopeia-font-family-body, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
  --font-headings: "Outfit", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --body-font-size: 1rem;
  --body-font-weight: 400;
  --body-line-height: 1.5;
  --body-color: #22262a;
  --body-bg: white;
}
.container-wrap {
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
}
/* fonts */
/*<weight>: Use a value from 100 to 900*/
@font-face {
  font-display: swap;
  font-family: "Outfit";
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  src: url('../fonts/outfit-latin-ext.woff2') format('woff2');
}
@font-face {
  font-display: swap;
  font-family: "Outfit";
  font-optical-sizing: auto;
  font-weight: 600;
  font-style: normal;
  src: url('../fonts/outfit-latin.woff2') format('woff2');
}
/* überschriften */
h1, h2, h3, h4, h5 {
  font-family: var(--font-headings);
  font-weight: 600;
}
h1 {
  font-size: 1.8rem;
}
h2 {
  font-size: 1.6rem;
}
h3 {
  font-size: 1.4rem;
}
h4 {
  font-size: 1.2rem;
}
h5 {
  font-size: 1rem;
}
.item-page h1, .item-page h2 {
  border-bottom: 2px solid var(--gray);
  padding-bottom: 8px;
  margin-bottom: 20px;
}
.item-page h1::after, .item-page h2::after {
  background: var(--cassiopeia-color-primary);
  clear: both;
  display: block;
  float: left;
  content: " ";
  position: relative;
  height: 2px;
  width: 20%;
  margin: 8px 80% 10px 0;
  padding: 0;
}
.sidebar-right h3 {
  border-bottom: 2px solid var(--gray);
  padding-bottom: 8px;
  margin-bottom: 20px;
}
.sidebar-right h3::after {
  background: var(--cassiopeia-color-primary);
  clear: both;
  display: block;
  float: left;
  content: " ";
  position: relative;
  height: 2px;
  width: 20%;
  margin: 8px 80% 10px 0;
  padding: 0;
}
/* images */
.img-links {
  float: left;
  margin-top: 10px;
  margin-right: 20px;
  margin-bottom: 10px;
}
.img-rechts {
  float: right;
  margin-top: 10px;
  margin-bottom: 10px;
  margin-left: 20px;
}
@media (max-width: 480px) {
  .img-links {
    float: none;
    margin-right: 0;
    margin-top: 20px;
    display: block;
  }
  .img-rechts {
    float: none;
    margin-top: 20px;
    margin-left: 0;
    display: block;
  }
}
/*linien*/
.line-unten {
  background-color: var(--cassiopeia-color-primary);
  display: block;
  width: 150px;
  height: 3px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
  margin-bottom: 30px;
}
.line-unten-mini {
  background-color: var(--cassiopeia-color-primary);
  display: block;
  width: 100px;
  height: 3px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
  margin-bottom: 20px;
}
/*inhalt left right*/
.inhalt-left {
  width: 49%;
  display: inline-block;
  margin-right: 2%;
  vertical-align: top;
}
.inhalt-right {
  width: 48%;
  display: inline-block;
  vertical-align: top;
}
.inhalt-left-60 {
  width: 59%;
  display: inline-block;
  margin-right: 2%;
  vertical-align: top;
}
.inhalt-right-40-padleft {
  width: 38%;
  display: inline-block;
  vertical-align: top;
  padding-left: 50px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media (max-width: 480px) {
  .inhalt-left, .inhalt-right {
    width: 100%;
    margin-right: 0;
  }
  .inhalt-left-60 {
    width: 100%;
    margin-right: 0;
  }
  .inhalt-right-40-padleft {
    width: 100%;
    padding-left: 0;
  }
}
/*header*/
.container-header .container-nav {
  padding-top: 1em;
}
.container-header nav {
  margin-top: 0;
}
.container-header {
  background-color: white;
  background-image: none;
  border-bottom: 1px solid var(--gray);
}
.logo img {
  width: 190px;
  height: auto;
  margin-top: 0.2em;
}
/*menü*/
.container-header .mod-menu {
  color: #000000;
  text-transform: uppercase;
}
.container-header .metismenu > li.active > a:after, .container-header .metismenu > li.active > button:before, .container-header .metismenu > li > a:hover:after, .container-header .metismenu > li > button:hover:before {
  background: #000000;
  opacity: 1;
}
.metismenu.mod-menu .metismenu-item {	
  font-size: 1rem;
  font-weight: 700;
}
.container-header .metismenu > li.active > button.mm-toggler-link:before, .container-header .metismenu > li > button.mm-toggler-link:hover:before {
  left: 2em;
  top: 1em;
}
.metismenu.mod-menu .mm-toggler:after {
  border-left: .3em solid transparent;
  border-right: .3em solid transparent;
  border-top: .3em solid;
}
.container-header .metismenu > li.level-1 > a {
  padding-bottom: .2em;
}
/*menü mobil*/
.container-header .navbar-toggler {
  border: 1px solid #000000;
  color: #000000;
}
@media (max-width: 767.98px) {
  div.moduletable.logo {
    position: absolute;
    right: 1em;
  }
  .container-header .container-nav {
    justify-content: flex-start;
  }
  .container-header .container-nav .container-search, .container-header .container-nav nav {
    margin-top: 0em;
    margin-left: 1em;
  }
  .container-header .mod-menu {
    margin-top: 1em;
  }
  .metismenu.mod-menu .metismenu-item {
    padding: .5em 0em;
  }
  .logo img {
    width: 150px;
    height: auto;
    margin-top: 0.2em;
  }
}
/*slider*/
.slide-desc-bg-default {
  background: none !important;
}
.djslider-default .navigation-container-custom, .djslider-default .navigation-numbers {
  position: absolute;
  top: auto !important;
  right: 10px;
  bottom: 20px !important;
}
.djslider-default ul.djslider-in > li {
  margin: 0 !important;
}
/*banner*/
.container-banner {
  margin: 0;
}
.display-4 {
    font-size: clamp(1.5rem,5vw,2.5rem);
}
.lead {
  font-size: clamp(1.1rem,3vw,1.5rem);
}
/*header-bild*/
.header-bild {
  background-color: #eeeeee;
}
.header-bild .container-wrap {
  min-height: 300px;
  color: #fff;
}
.header-bild h1 {
  margin-top: 0;
  padding-top: 120px;
  font-weight: 700;
  font-size: clamp(1.2rem,3vw,1.8rem);
}
.header-bild .mod-custom {
  background-repeat: no-repeat;
  background-position: 50% 40%;
  background-size: 100% auto;
}
.header-bild .overlay {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100%;
  padding: 1em;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.5);
}
@media (max-width: 767.98px) {
  .header-bild h1 {
    padding-top: 80px;
    font-size: 1.4rem;
  }
  .header-bild .container-wrap {
    min-height: 240px;
  }
}
/*top-a*/
.top-a {
  text-align: center;
  margin: 0;
  background-color: var(--gray);
  padding: 3rem 0;
}
/*home-boxen*/
.home-boxen {
  text-align: center;
}
.home-boxen .far, .home-boxen .fab, .home-boxen .fas {
  font-size: 5em;
  margin-bottom: 1rem;
  color: #4f3353;
}
.home-boxen .col {
  margin-top: 2rem;
}
/*bottom a*/
.bottom-a {
  background-color: var(--cassiopeia-color-hover);
  padding: 2rem 0;
  margin: 0;
  color: white;
}
.bottom-a:nth-child(odd) {
  color: var(--body-color);
  background-color: white;
  flex-direction: row;
}
.flex-container {
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: space-evenly;
}
.flex-container-reverse {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  justify-content: space-evenly;
}
.flex-container-banner {
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: space-evenly;
  font-size: clamp(1.1rem,3vw,1.1rem);
}
.flex-item {
  flex: initial;
  padding: 4em;
}
.flex-item-home {
  flex: initial;
  padding: 2em;
}
.flex-item-banner {
  flex: initial;
  padding: 0.5em;
}
.icons-leistungen {
  font-size: 18em;
  margin-bottom: 1rem;
}
@media (max-width: 767.98px) {
  .flex-container, .flex-container-reverse, .flex-container-banner {
    flex-direction: column;
  }
  .icons-leistungen {
    font-size: 9em;
  }
  .flex-item {
    text-align: center;
    padding: 1em;
  }
}
/*breadcrumb*/
.bg-breadcrumb {
  background-color: var(--gray);
  margin-bottom: 2em;
}
.breadcrumb {
  background-color: transparent;
}
/*sidebar*/
.container-sidebar-right .sidebar-right:first-child {
  margin-top: 1.25em;
}
/*rscontact kontaktformular*/
.rscontact input {
  width: 80%;
}
.rscontact textarea {
  width: 80%;
}
.checkbox input {
  width: auto;
}
.container-sidebar-left, .container-sidebar-right {
  padding-left: 1em;
}
/*footer*/
.footer {
  background-color: var(--gray);
  background-image: none;
  color: var(--body-color);
}
.footer .grid-child {
  align-items: center;
  justify-content: space-between;
  padding: 1rem .5rem 0 .5rem;
}
.footer a {
  text-decoration: none;
}
.footer a:hover {
  color: var(--cassiopeia-color-link);
}
.footer1 {
    margin-bottom: 1rem;
}
.footer2 {
  display: none;
}
/***************************** COOKIES **************************
*****************************************************************/
#cookiehintsubmit {
  background: var(--cassiopeia-color-primary) !important;
}
#cookiehintsubmit:hover {
  background: var(--cassiopeia-color-hover) !important;
}
#cookiehintsubmitno {
  background: #fff !important;
  color: var(--cassiopeia-color-primary) !important;
  border: 2px solid var(--cassiopeia-color-primary) !important;
}
#cookiehintsubmitno:hover {
  background: #fff !important;
  color: var(--cassiopeia-color-primary) !important;
}