/* source-sans-pro-200 - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 200;
  src: url("../fonts/source-sans-pro-v19-latin-200.eot");
  /* IE9 Compat Modes */
  src: local(""), url("../fonts/source-sans-pro-v19-latin-200.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v19-latin-200.woff2") format("woff2"), url("../fonts/source-sans-pro-v19-latin-200.woff") format("woff"), url("../fonts/source-sans-pro-v19-latin-200.ttf") format("truetype"), url("../fonts/source-sans-pro-v19-latin-200.svg#SourceSansPro") format("svg");
  /* Legacy iOS */
}

@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 300;
  src: url("../fonts/source-sans-pro-v18-latin-300.eot");
  /* IE9 Compat Modes */
  src: local(""), url("../fonts/source-sans-pro-v18-latin-300.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v18-latin-300.woff2") format("woff2"), url("../fonts/source-sans-pro-v18-latin-300.woff") format("woff"), url("../fonts/source-sans-pro-v18-latin-300.ttf") format("truetype"), url("../fonts/source-sans-pro-v18-latin-300.svg#SourceSansPro") format("svg");
  /* Legacy iOS */
}

/* source-sans-pro-regular - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/source-sans-pro-v18-latin-regular.eot");
  /* IE9 Compat Modes */
  src: local(""), url("../fonts/source-sans-pro-v18-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v18-latin-regular.woff2") format("woff2"), url("../fonts/source-sans-pro-v18-latin-regular.woff") format("woff"), url("../fonts/source-sans-pro-v18-latin-regular.ttf") format("truetype"), url("../fonts/source-sans-pro-v18-latin-regular.svg#SourceSansPro") format("svg");
  /* Legacy iOS */
}

/* source-sans-pro-regular - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/source-sans-pro-v19-latin-regular.eot");
  /* IE9 Compat Modes */
  src: local(""), url("../fonts/source-sans-pro-v19-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v19-latin-regular.woff2") format("woff2"), url("../fonts/source-sans-pro-v19-latin-regular.woff") format("woff"), url("../fonts/source-sans-pro-v19-latin-regular.ttf") format("truetype"), url("../fonts/source-sans-pro-v19-latin-regular.svg#SourceSansPro") format("svg");
  /* Legacy iOS */
}

/* source-sans-pro-600 - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 600;
  src: url("../fonts/source-sans-pro-v19-latin-600.eot");
  /* IE9 Compat Modes */
  src: local(""), url("../fonts/source-sans-pro-v19-latin-600.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v19-latin-600.woff2") format("woff2"), url("../fonts/source-sans-pro-v19-latin-600.woff") format("woff"), url("../fonts/source-sans-pro-v19-latin-600.ttf") format("truetype"), url("../fonts/source-sans-pro-v19-latin-600.svg#SourceSansPro") format("svg");
  /* Legacy iOS */
}

/* source-sans-pro-700 - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/source-sans-pro-v19-latin-700.eot");
  /* IE9 Compat Modes */
  src: local(""), url("../fonts/source-sans-pro-v19-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v19-latin-700.woff2") format("woff2"), url("../fonts/source-sans-pro-v19-latin-700.woff") format("woff"), url("../fonts/source-sans-pro-v19-latin-700.ttf") format("truetype"), url("../fonts/source-sans-pro-v19-latin-700.svg#SourceSansPro") format("svg");
  /* Legacy iOS */
}

/* source-sans-pro-900 - latin */
@font-face {
  font-family: "Source Sans Pro";
  font-style: normal;
  font-weight: 900;
  src: url("../fonts/source-sans-pro-v18-latin-900.eot");
  /* IE9 Compat Modes */
  src: local(""), url("../fonts/source-sans-pro-v18-latin-900.eot?#iefix") format("embedded-opentype"), url("../fonts/source-sans-pro-v18-latin-900.woff2") format("woff2"), url("../fonts/source-sans-pro-v18-latin-900.woff") format("woff"), url("../fonts/source-sans-pro-v18-latin-900.ttf") format("truetype"), url("../fonts/source-sans-pro-v18-latin-900.svg#SourceSansPro") format("svg");
  /* Legacy iOS */
}

body {
  background-color: white;
  font-family: "Source Sans Pro";
  font-size: 16px;
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

html {
  font-size: 16px;
}

.header {
  background-color: #e9e9e9;
}

#header {
  position: fixed;
  width: 100%;
  z-index: 100;
}

#container {
  padding-top: 167px;
}

#preloader {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 91111111111222222222222222111999;
  background-image: url("../hg/logo.png");
  background-repeat: no-repeat;
  background-color: white;
  background-position: center;
}

.startseite #container {
  padding-top: 127px;
}

.toggler,
a,
a:visited {
  outline: none !important;
}

a:hover,
a:active,
a:focus {
  /*Edit at will*/
  background: none;
  outline: none !important;
  outline-style: none !important;
}

#headholder {
  width: 100%;
  background-color: #e9e9e9;
  padding: 25px 10px 10px;
  position: relative;
  z-index: 10005;
}

#headholder .inside {
  display: flex;
  flex-direction: row;
  max-width: 1800px;
  margin: 0 auto;
}

#headholder .inside .column {
  flex: 1 1 auto;
}

#headholder .inside .column img {
  max-width: 200px;
}

#headholder .inside .column:nth-child(1) {
  display: flex;
  flex-direction: row;
  justify-content: center;
  flex: 3 0 auto;
  align-items: flex-end;
}

#headholder .inside .column:nth-child(1) a {
  text-decoration: none;
  color: #24518c;
  text-transform: uppercase;
  font-weight: bold;
}

#headholder .inside .column:nth-child(1) li.active a,
#headholder .inside .column:nth-child(1) li.active strong,
#headholder .inside .column:nth-child(1) li.trail a,
#headholder .inside .column:nth-child(1) li.trail strong {
  color: #24518c;
  text-transform: uppercase;
}

#headholder .inside .column:nth-child(1) li.active a span,
#headholder .inside .column:nth-child(1) li.active strong span,
#headholder .inside .column:nth-child(1) li.trail a span,
#headholder .inside .column:nth-child(1) li.trail strong span {
  color: #24518c;
  text-transform: uppercase;
}

#headholder .inside .column:nth-child(3) {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
}

#headholder .inside .column:nth-child(3) .telH {
  color: #24518c;
  display: flex;
  padding-left: 100px;
  font-size: 1.3rem;
  font-weight: 700;
  display: flex;
  flex-direction: column;
  align-items: center;
}

#headholder .inside .column:nth-child(3) .telH::before {
  content: " ";
  background-image: url("../hg/24_7.png");
  background-size: 70px;
  height: 58px;
  width: 70px;
}

#headholder .inside .column #naviHolderTOP {
  width: 100%;
  max-width: 1100px;
}

#headholder .inside .column #naviHolderTOP a {
  font-size: 1rem;
}

#headholder .first_line {
  margin: 0 auto;
  width: 100%;
  max-width: 1100px;
}

#headholder .first_line img {
  max-width: 250px;
  height: auto;
}

#gp {
  position: relative;
  top: 0px;
  left: 50%;
  transform: translate(-50%, 0);
  z-index: 10003;
  opacity: 1;
  transition: all 0.5s ease-in-out;
  overflow-x: hidden;
}

#gp img {
  max-width: 500px;
}

#gp.topHH {
  position: absolute;
  z-index: 120331;
}

.aktiv #gp {
  transform: translate(-50%, -50%);
  opacity: 0;
}

#secondNav {
  background-color: #939393;
  text-align: center;
}

#secondNav .level_1 {
  display: flex;
  list-style: none;
  justify-content: center;
  margin-top: 0;
  margin-bottom: 0;
  padding: 10px;
}

#secondNav .level_1 a,
#secondNav .level_1 strong {
  text-decoration: none;
  color: #fff;
  text-transform: none;
  font-weight: normal;
  margin: 5px 10px;
}

#secondNav .level_1 strong {
  color: #ccc;
}

#naviHolder {
  overflow-y: auto;
  position: fixed;
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.95);
  top: calc(-100vh - 130px);
  transition: all 0.5s ease-in-out;
  opacity: 0;
  z-index: -1;
  z-index: 102;
}

#naviHolder #navigation {
  max-width: 800px;
  margin: 0 auto;
}

#naviHolder #navigation li {
  list-style: none;
}

#naviHolder #navigation li.trail {
  color: #24518c !important;
}

#naviHolder #navigation li.trail a {
  color: #24518c !important;
}

#naviHolder #navigation li.trail a span {
  color: #24518c !important;
}

#naviHolder #navigation a,
#naviHolder #navigation strong {
  text-decoration: none;
  color: #e9e9e9;
  font-size: 1.3rem;
  font-weight: 100;
}

#naviHolder #navigation .active {
  color: #ccc;
}

#naviHolder #navigation .level_1 > li {
  padding: 15px 30px;
  background-position: 0 20px;
}

#naviHolder #navigation .level_1 > li > a {
  text-transform: uppercase;
  width: 100%;
  display: block;
  border-bottom: 1px solid #e9e9e9;
}

#naviHolder #navigation .level_2 {
  padding-left: 10%;
}

#naviHolder #navigation .level_2 li {
  background-position: 0 20px;
}

#naviHolder #navigation .level_2 li a,
#naviHolder #navigation .level_2 li strong {
  padding: 10px 0;
  display: block;
}

body.aktiv #naviHolder {
  top: 0;
  padding-top: 130px;
  opacity: 1 !important;
  z-index: 102;
}

#wrapper {
  width: 100%;
  box-sizing: border-box;
  overflow-x: hidden;
  transition: all 0.5s ease-in-out;
  margin-left: 0;
}

#container #crumb {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  top: 63px;
}

.flexrow {
  display: flex;
}

#toTopBtn {
  position: absolute;
  right: 20px;
}

#toTopBtn img {
  max-width: 50px;
}

#naviHolderTOP .level_1 {
  display: flex;
  list-style: none;
  justify-content: space-between;
}

#naviHolderTOP .level_1 li {
  list-style-image: none;
}

#naviHolderTOP .level_1 li.trail {
  position: relative;
}

#naviHolderTOP .level_1 li.trail ::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: -10px;
  height: 1px;
  width: 50%;
  border-bottom: 1px solid #24518c;
}

#naviHolderTOP .level_1 li.trail a span {
  color: #24518c !important;
}

#telefonSlide {
  position: fixed;
  top: 150px;
  right: 0px;
  cursor: pointer;
  z-index: 1001;
  background: white;
  padding: 10px 2px;
  height: 75px;
  width: 60px;
  display: flex;
}

#telefonSlide #icon {
  position: absolute;
  background-color: #fff;
  z-index: 300;
  left: 0;
}

#telefonSlide #icUhr {
  margin-right: 10px;
}

#telefonSlide #icUhr img {
  max-width: 32px;
}

#telefonSlide #textSlide {
  display: flex;
  position: absolute;
  background-color: #fff;
  transition: all 0.5s ease;
  right: -225px;
  width: 290px;
  height: 75px;
  padding: 10px;
  padding-right: 70px;
  top: 0;
  box-shadow: -10px 12px 5px 0px rgba(0, 0, 0, 0.19);
  -webkit-box-shadow: -10px 12px 5px 0px rgba(0, 0, 0, 0.19);
  -moz-box-shadow: -10px 12px 5px 0px rgba(0, 0, 0, 0.19);
}

#telefonSlide #textSlide #linksTT {
  display: flex;
  flex-direction: column;
}

#telefonSlide .ttS {
  color: #24518c;
  font-size: 1.5rem;
  text-decoration: none;
  margin-top: 5px;
}

#telefonSlide .ttF {
  color: #333;
  font-size: 1.1rem;
  text-decoration: none;
  line-height: 2rem;
  position: relative;
  padding-left: 20px;
}

#telefonSlide .ttF::before {
  content: " ";
  background-image: url(../hg/bulletpoint_icon.png);
  position: absolute;
  left: 0px;
  top: 12px;
  z-index: 200;
  width: 15px;
  height: 15px;
  background-size: 9px;
  background-repeat: no-repeat;
}

.showTel #telefonSlide #textSlide {
  right: -10px;
}

.rsts-skin-default .rsts-prev {
  background-repeat: no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAIVBMVEWhoaE7PD15enqVlpaTk5N2d3h0dHVoaWpmZmcGBwj19fXsWX/bAAAAC3RSTlOAgICAgICAgICAgMiF55wAAAB9SURBVHja7dUxEoAgFANRFBTw/ge2YythEivHn/6VmU3XiwUOHPhPuGYf196zjLHPOi0tWsBYtICx/Zxgw4INCzYs2LBgw4INC55ZFadhN+NVbeh9jhf6mGJDgw0NNjTY0GBDgz0NXusiYDRWwGisgNHFL0Yrnwxd4MCBtd3+EosAicYyWQAAAABJRU5ErkJggg==);
  background-size: 30px,30px;
  height: 30px !important;
}

.rsts-skin-default .rsts-next {
  background-repeat: no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAHlBMVEWhoaE7PD2VlpaTk5N2d3h0dHVoaWpmZmcGBwj19fXtfGSSAAAACnRSTlOAgICAgICAgICAXdxslAAAAHxJREFUeNrt1TEOgDAMxdDSAi33vzBbPVUoZkLE+1O2/HK9KHHixH/A9fS4jnGGMfZZl6VFBzAWHcLHQD9gocFCg4UGCw0WGiw0WGjwum3qEsb7tH1xWViwsGBhwcKChQULC5Z2jRs2itHdfc+GjWB094vR+ieHLnHixK4bjyV89TB6vlgAAAAASUVORK5CYII=);
  background-size: 30px,30px;
  height: 30px !important;
}

.rsts-skin-default .rsts-next:hover, .rsts-skin-default .rsts-prev:hover {
  background-size: 30px,30px;
}

#nav_btn {
  position: absolute;
  display: none;
  left: auto;
  left: 50%;
  top: 10px;
  transform: translateX(-50%) scale(0.5);
  width: 40px;
  height: 40px;
  z-index: 10000000000001;
  transition: all 0.5s ease;
  cursor: pointer;
}

#nav_btn .btn_ham {
  display: inline-block;
  cursor: pointer;
  margin-bottom: 20px;
  position: relative;
}

#nav_btn .btn_ham:before {
  content: "Menu";
  position: absolute;
  font-weight: 600;
  font-size: 1.4rem;
  top: -25px;
  left: 0;
  text-align: center;
}

#nav_btn .bar1,
#nav_btn .bar2,
#nav_btn .bar3 {
  width: 65px;
  height: 3px;
  background-color: #24518c;
  margin: 10px 0;
  transition: 0.4s;
}

#nav_btn .change .bar1 {
  transform: rotate(-45deg) translate(-7px, 7px);
}

#nav_btn .change .bar2 {
  opacity: 0;
}

#nav_btn .change .bar3 {
  transform: rotate(45deg) translate(-12px, -10px);
}

#footer {
  background: #24518c;
}

#footer .inside {
  max-width: 1600px;
  margin: 0 auto;
  display: flex;
  flex-wrap: nowrap;
  color: #fff;
  padding: 20px 0;
}

#footer .inside .end .inside {
  justify-content: flex-end;
}

#footer .inside .trennerF,
#footer .inside .fullwidth {
  width: 100%;
  flex: 1 1 100%;
}

#footer .inside a {
  color: #fff;
  padding: 2px 10px;
  text-decoration: none;
  font-weight: 600;
  line-height: 1rem;
}

#footer .inside a:hover {
  color: #cccc;
}

#footer .inside .it_adresse {
  display: flex;
  flex-direction: column;
  gap: 10px 50px;
  flex: 1 1 30%;
}

#footer .inside .it_adresse .item {
  flex: 0 1 auto;
}

#footer .inside .it_adresse .inside p {
  margin: 5px 0;
}

#footer .inside .it_adresse .ce_text {
  box-sizing: border-box;
  padding-left: 60px;
}

#footer .inside .item {
  flex: 1 1 33% !important;
}

#footer .inside .fl_right {
  justify-items: flex-end;
}

#footer .inside .item.last {
  display: flex;
  flex-direction: column;
}

#footer .inside .item.last .item {
  flex: 0 0 auto !important;
}

#footer .inside .item.last .item .inside {
  padding: 0;
}

#footer .inside .item.last .ce_text.end.block .inside {
  padding: 0 !important;
}

#footer .inside .item.last .ce_text.end.block .inside p {
  font-size: 0.8rem;
}

#footer .inside .item.last .ce_image .inside {
  padding: 0 !important;
}

#footer .inside .item.last .fl_right .inside {
  justify-content: flex-end;
}

#footer .inside .column .inside {
  flex-direction: column;
}

#footer .ce_image.first img {
  width: 80%;
}

#footer .formbody {
  text-align: left !important;
}

#footer .formbody .widget-textarea {
  display: flex;
  flex-direction: column;
}

#footer .formbody .widget-text {
  display: flex;
  justify-content: space-between;
  margin-bottom: 5px;
}

#footer .formbody .widget-text input {
  width: 80%;
}

#footer .formbody h3 {
  font-size: 1rem;
  font-weight: 300;
}

#footer .formbody h3:before {
  content: url(../hg/brief_icon.png);
  margin-right: 10px;
}

#footer .formbody label {
  font-size: 0.9rem;
}

#footer .formbody button {
  background-color: transparent;
  border: 1px solid #fff;
  color: #fff;
  float: right;
  margin-top: 5px;
  padding: 5px 38px;
}

#main .mod_article.fullwidth.nopadding.startimage {
  margin-bottom: 0 !important;
}

#main .mod_article.w3070.ppk .column:nth-child(1) {
  flex: 0 0 39%;
}

#ctrl_35, #ctrl_36 {
  border: 0;
}

#lbl_36_0 {
  font-size: 0.6rem !important;
  line-height: 0.7rem !important;
}

#searchHolderTT {
  background-color: #24518c;
  display: inline-block;
  margin: 0 auto;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 123456;
  display: flex;
  padding: 5px 10px;
  align-items: center;
  /* Firefox 19+ */
  /* Firefox 18- */
  /* IE */
}

#searchHolderTT h3 {
  color: #fff;
  font-size: 0.9rem;
  margin: 0;
  padding: 0;
  padding-right: 15px;
  font-weight: 200;
}

#searchHolderTT #custom-template {
  padding: 2px 5px;
  border-radius: 0;
  border: 1px solid #fff;
}

#searchHolderTT #searchStart {
  padding: 1px;
  border-radius: 0;
  border: 0;
  background-color: #fff;
  cursor: pointer;
}

#searchHolderTT ::-moz-placeholder {
  font-size: 0.7rem;
}

#searchHolderTT :-moz-placeholder {
  font-size: 0.7rem;
}

#searchHolderTT :-ms-input-placeholder {
  font-size: 0.7rem;
}

#searchHolderTT #placeholder {
  font-size: 0.7rem;
}

#searchHolderTT input::-webkit-input-placeholder {
  font-size: 0.7rem;
}

#ergebnis {
  position: absolute;
}

.center {
  text-align: center;
}

.fl_right p {
  display: flex;
}

.fl_right p a:nth-child(1) {
  border-right: 1px solid #fff;
}

.fl_right p a:nth-child(2) {
  border-right: 1px solid #fff;
}

body.grau #main {
  background-color: #e9e9e9;
}

body.zart #main {
  background-color: #f9eeed;
}

.no_padding_bottom {
  padding-bottom: 0;
  margin-bottom: 0 !important;
}

.no_padding_bottom + .mod_article {
  margin-top: 0 !important;
}

#main h1,
#main h2,
#main h3 {
  color: #24518c;
  font-size: 1.8rem;
  font-weight: 500;
}

#main h1 {
  font-weight: 600;
  text-transform: uppercase;
  color: #23508b;
}

#main h3 {
  font-size: 1.3rem;
  text-transform: uppercase;
}

#main h4 {
  font-size: 1.3rem;
  color: rgba(51, 51, 51, 0.35);
  text-transform: none;
}

#main h5 {
  font-size: 1.3rem;
  color: #24518c;
  text-transform: none;
  font-weight: 300;
  margin-top: 1rem;
  margin-bottom: 0;
}

#main a {
  color: #24518c;
}

#main p {
  line-height: 1.5rem;
}

#main .caption {
  font-style: italic;
  color: #555;
  font-size: 0.9rem;
}

#main .c_center .caption {
  text-align: center;
}

#main .c_center .caption p {
  margin: 0;
  padding: 0;
}

#main .nomargin_bottom {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

#main .nomargin_top {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

#main .nomargin_top h5 {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

#main .inside .mod_article.margin_bottom.last.block {
  margin-bottom: 50px !important;
}

#main .mod_article.flex {
  display: flex;
}

#main .mod_article.flex .ce_text,
#main .mod_article.flex .ce_image,
#main .mod_article.flex .ce_gallery,
#main .mod_article.flex .column,
#main .mod_article.flex .item {
  flex: 1 1 50%;
}

#main .mod_article.flex .column {
  padding: 20px;
  padding-left: 0px;
}

#main .mod_article.flex .column .ce_text img {
  width: auto !important;
}

#main .mod_article.flex .item.ce_text.first, #main .mod_article.flex .item.ce_text.last {
  flex-direction: column;
}

#main .mod_article.flex .item.ce_text.first iframe, #main .mod_article.flex .item.ce_text.last iframe {
  width: 80%;
}

#main .mod_article.flex .ce_text.first.neg_margin,
#main .mod_article.flex .item.first.neg_margin {
  overflow: visible;
  z-index: 99;
}

#main .mod_article.flex .ce_text.first.neg_margin .inside,
#main .mod_article.flex .item.first.neg_margin .inside {
  margin-right: -60px;
}

#main .mod_article.flex .ce_text.first.neg_margin.weiss .inside,
#main .mod_article.flex .item.first.neg_margin.weiss .inside {
  background-color: #fff;
}

#main .mod_article.flex .ce_text.last.neg_margin,
#main .mod_article.flex .item.last.neg_margin {
  overflow: visible;
}

#main .mod_article.flex .ce_text.last.neg_margin .inside,
#main .mod_article.flex .item.last.neg_margin .inside {
  margin-left: -60px;
}

#main .mod_article.flex .ce_text.first.last,
#main .mod_article.flex .item.first.last {
  width: 100%;
  max-width: 100%;
  flex: 1 1 100%;
}

#main .mod_article.flex .ce_text.first.last .inside,
#main .mod_article.flex .item.first.last .inside {
  width: 100%;
  max-width: 100%;
}

#main .mod_article.flex .ce_gallery {
  margin: 20px;
}

#main .mod_article.flex .ce_gallery li {
  list-style-image: none;
  background: none;
  padding: 0;
}

#main .mod_article.flex.column {
  flex-direction: column;
}

#main .mod_article.flex.centerC {
  max-width: 1100px;
  margin: 0 auto;
  align-items: flex-start;
}

#main .mod_article.flex.centerFlex {
  align-items: center;
}

#main .mod_article.inline .ce_image.first {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

#main .mod_article.inline .ce_image.first .inside {
  text-align: right;
}

#main .mod_article.inline .ce_image.first img {
  margin: 30px;
}

#main .mod_article.inline .ce_image.last {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

#main .mod_article.inline .ce_image .inside {
  width: 80%;
  max-width: 600px;
  padding: 20px;
}

#main .mod_article.inline .ce_image.noimagemargin.first img {
  margin: 0px;
}

#main .mod_article.zart {
  background-color: #f9eeed;
}

#main .mod_article.zart .ce_text {
  background-color: #f9eeed;
}

#main .mod_article.gruen {
  background-color: #eeeeee;
}

#main .mod_article.gruen .ce_text {
  background-color: #eeeeee;
}

#main .mod_article.gruen .ce_text .inside {
  background-color: #eeeeee;
}

#main .mod_article.grau {
  background-color: #e9e9e9;
}

#main .mod_article.grau .ce_text {
  background-color: #e9e9e9;
}

#main .mod_article.rot {
  background-color: #24518c;
}

#main .mod_article.rot .ce_text {
  background-color: #24518c;
}

#main .mod_article.rot h1,
#main .mod_article.rot h2,
#main .mod_article.rot h3,
#main .mod_article.rot h4,
#main .mod_article.rot p,
#main .mod_article.rot li {
  color: #fff;
}

#main .mod_article.last {
  padding: 0px 0;
}

#main .mod_article.last.noPaddingBottom {
  padding-bottom: 0px;
}

#main .mod_article.flex_top .ce_text {
  align-items: flex-start;
}

#main .mod_article.flex_top .ce_text.first, #main .mod_article.flex_top .ce_text.last {
  align-items: flex-start;
}

#main .mod_article.w3070 {
  max-width: 1100px !important;
}

#main .mod_article.w3070 .column:nth-child(1) {
  flex: 0 0 30%;
}

#main .mod_article.w3070 .column:nth-child(2) {
  flex: 0 1 70%;
}

#main .mod_article.w3070 .column:nth-child(2) .ce_text + .ce_image {
  padding: 0 20px;
}

#main .mod_article.w7030 {
  max-width: 1100px !important;
}

#main .mod_article.w7030 .column:nth-child(1) {
  flex: 0 0 70%;
}

#main .mod_article.w7030 .column:nth-child(2) {
  flex: 0 0 30%;
}

#main .mod_article.w5050 {
  max-width: 1100px !important;
}

#main .mod_article.w5050 .column {
  flex: 0 0 50%;
}

#main .mod_article.w8020 {
  max-width: 1100px !important;
}

#main .mod_article.w8020 .column:nth-child(1) {
  flex: 0 0 80%;
}

#main .mod_article.w8020 .column:nth-child(2) {
  flex: 0 0 20%;
}

#main .mod_article .vcenter {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

#main .mod_article .ce_text.blau {
  background-color: #24518c;
  padding: 10px 36px !important;
  box-sizing: border-box;
  color: #fff;
  margin-left: 20px;
}

#main .mod_article .ce_text.blau strong,
#main .mod_article .ce_text.blau a,
#main .mod_article .ce_text.blau h2,
#main .mod_article .ce_text.blau h3,
#main .mod_article .ce_text.blau h4,
#main .mod_article .ce_text.blau h5 {
  color: #fff;
}

#main .mod_article .ce_text.blau li {
  background: url("../hg/bulletpoint_icon_w.png") no-repeat left 7px;
  padding: 3px 0px 3px 25px;
  /* reset styles (optional): */
  list-style: none;
  background-size: 12px;
}

#main .imageF {
  display: flex;
  align-items: center;
  margin: 10px;
  box-sizing: border-box;
}

#main .imageF a {
  padding: 10px;
}

#main .imageF img {
  padding: 10px;
}

#main .flexrow {
  display: flex;
  width: 100%;
  justify-content: space-evenly;
}

#main .swiper {
  width: 400px;
  height: 600px;
}

#main .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background: transparent;
}

#main .swiper-slide-shadow {
  display: none;
}

#main .ce_accordionStart {
  max-width: 600px;
  width: 100%;
}

#main .ce_accordionStart.weiss .inside {
  background-color: #fff;
}

#main .ui-accordion-header {
  color: #24518c;
  background: #fff;
  padding: 20px;
  font-weight: bold;
}

#main .ui-accordion-header.toggler {
  cursor: pointer;
}

#main .ui-accordion-header.toggler::after {
  content: url(../hg/pfeil_runter_icon.png);
  display: inline-block;
  transform: rotate(-90deg);
  transition: all 0.5s ease-in-out;
}

#main .ui-accordion-header.toggler.active::after {
  content: url(../hg/pfeil_runter_icon.png);
  transform: rotate(0deg);
}

#main .ui-accordion-content {
  background: #fff !important;
}

#main .ui-accordion-content > div > .ce_text {
  background: #fff !important;
}

#main ul {
  padding-left: 2px;
}

#main ul li {
  padding-bottom: 1.1rem;
  background: url("../hg/bulletpoint_icon.png") no-repeat left 7px;
  padding: 3px 0px 3px 25px;
  /* reset styles (optional): */
  list-style: none;
  background-size: 12px;
}

#main .marginTop {
  margin-top: 30px;
  margin-bottom: 30px;
}

#main .fullwidth .inside {
  max-width: 1380px;
  width: 100%;
  margin: 0 auto;
}

#main .fullwidth .flex50 {
  display: flex;
  flex-wrap: wrap;
  gap: 2%;
}

#main .fullwidth .flex50 .ce_accordionStart {
  position: relative;
}

#main .fullwidth .flex50 .ce_accordionStart.zart {
  background-color: #fff;
}

#main .fullwidth .flex50 .ce_accordionStart.zart .ui-accordion-header {
  background-color: #f9eeed;
}

#main .fullwidth .flex50 .ce_accordionStart .toggler {
  text-transform: uppercase;
}

#main .fullwidth .flex50 .ce_accordionStart .toggler::after {
  position: absolute;
  right: 10px;
  top: 20px;
}

#main .fullwidth .flex50 .section {
  flex: 1 1 auto;
  margin: 5%;
}

#main .fullwidth .paddingTopBot {
  padding-top: 50px;
  padding-bottom: 50px;
}

#main .paddingTopBot {
  padding-top: 50px;
  padding-bottom: 50px;
}

#main button {
  border: 0;
  display: inline-block;
  padding: 15px 30px;
  font-weight: bold;
  font-size: 1rem;
  cursor: pointer;
}

#main button::after {
  content: url(../hg/pfeil_runter_icon.png);
  display: inline-block;
  transform: rotate(-90deg);
  transition: all 0.5s ease-in-out;
  margin-left: 20px;
}

#main button.grau {
  background-color: #e9e9e9;
  color: #24518c;
}

#main strong {
  color: #24518c;
}

#main .flexkarte {
  width: 100%;
}

#main .flexkarte button {
  background-color: #24518c;
  border: none;
}

#main .flexkarte button::after {
  content: none;
}

#main .ce_accordionStart {
  margin-bottom: 20px;
}

#main .ce_accordionStart.zart, #main .ce_accordionStart.grau {
  background-color: #f9eeed;
}

#main .ce_accordionStart.zart .ui-accordion-header, #main .ce_accordionStart.grau .ui-accordion-header {
  background-color: #f9eeed !important;
}

#main .ce_accordionStart.zart .ui-accordion-content > div > .ce_text, #main .ce_accordionStart.grau .ui-accordion-content > div > .ce_text {
  background-color: #f9eeed !important;
  padding: 10px 20px;
}

#main .ce_accordionStart.grau {
  background-color: #e9e9e9;
}

#main .ce_accordionStart.grau .ui-accordion-header {
  background-color: #e9e9e9 !important;
}

#main .ce_accordionStart.grau .ui-accordion-content > div > .ce_text {
  background-color: #e9e9e9 !important;
  padding: 10px 20px;
}

#main .ce_accordionStart .ui-accordion-content > div > .ce_text {
  padding: 10px 20px;
}

#main .ce_accordionStart .ui-accordion-header .uu {
  font-size: 1rem;
  display: block;
  font-weight: 100;
  text-transform: none;
}

#main .zart .inside {
  background-color: #f9eeed;
}

#main .formbody .flex {
  display: flex;
}

#main .formbody .flex .column {
  flex: 0 0 50%;
}

#main .formbody input,
#main .formbody textarea,
#main .formbody select {
  padding: 15px;
  margin-bottom: 10px;
  font-family: "Source Sans Pro";
}

#main #trauerdruck .flex50 {
  flex-direction: column;
  align-content: space-around;
}

#main #trauerdruck .flex50 .ce_text p,
#main #trauerdruck .flex50 .ce_text li {
  color: #000;
}

#main #accFriedhof {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  max-width: 1380px;
  margin: 0 auto;
}

#main #accFriedhof .sliderFriedhof {
  padding: 5px;
  display: inline-block;
  flex: 1 1 25%;
  position: relative;
  z-index: 2;
}

#main #accFriedhof .sliderFriedhof .slideHead {
  cursor: pointer;
  position: relative;
  padding: 10px;
  padding-left: 0;
  padding-right: 0;
  text-align: left;
  border-bottom: 1px solid #24518c;
}

#main #accFriedhof .sliderFriedhof .slideHead .pfeil {
  position: absolute;
  right: 30px;
  top: 10px;
  z-index: 100000000;
  width: 40px;
  height: 25px;
  cursor: pointer;
}

#main #accFriedhof .sliderFriedhof .slideHead .pfeil::after {
  content: "...mehr";
  color: #24518c;
  display: inline-block;
  transition: all 0.5s ease-in-out;
  position: absolute;
  right: 10px;
  z-index: 100000001;
  background-color: #fff;
}

#main #accFriedhof .sliderFriedhof .slideHead.active .pfeil::after {
  content: "...weniger" !important;
}

#main #accFriedhof .sliderFriedhof .slideContent {
  overflow: hidden;
  height: 0;
  transition: all 0.5s ease-in-out;
  padding: 2px 10px;
}

#main #accFriedhof .sliderFriedhof .slideContent.active {
  height: 160px;
}

#main #accFriedhof .sliderFriedhof .slideContent.flex {
  display: flex;
  justify-content: space-between;
  gap: 6px;
}

#main #accFriedhof .sliderFriedhof .slideContent .adr {
  text-align: left;
}

#main #accFriedhof .sliderFriedhof.active .pfeil::after {
  content: "...weniger" !important;
}

#main #accFriedhof .erlaeuterung {
  font-style: italic;
  color: #24518c;
  font-size: 80%;
  padding-top: 10px;
}

#main #adresseMap {
  background: #24518c;
  padding: 10px;
  text-align: center;
  color: #fff;
  font-size: 2rem;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

#main #map .ol-zoom-out::after,
#main #map .ol-zoom-in::after {
  content: none;
}

#main .top200 {
  z-index: 988;
  position: relative;
  margin-top: -150px;
}

#main .overvisible {
  overflow: visible;
}

#main .hinweis {
  background-color: #fff;
  padding: 20px;
  border: 1px solid #24518c;
  font-size: 0.9rem;
}

#main .hhover .inside {
  transition: all 0.3s ease-in-out;
  transform: scale(1);
  overflow: hidden;
}

#main .hhover:hover .inside {
  transform: scale(0.99);
}

#main .margintop {
  margin-top: 50px;
}

#main .marginbottom {
  margin-bottom: 50px;
}

#main .paddingTop {
  padding-top: 50px;
}

#main .col2 ul {
  column-count: 2;
  column-gap: 20px;
}

#main .ol-control button {
  background-color: #24518c;
}

#main #gedenkportal_tpl .statistik {
  background-color: #575757;
  color: #fff;
  font-weight: 100;
}

#main #gedenkportal_tpl .statistik a {
  color: #fff;
}

#main #gedenkportal_tpl .boxU .name {
  color: #24518c;
}

#main #gedenkportal_tpl .traueranzeige {
  display: flex;
  flex-wrap: wrap;
}

#main span.nw {
  white-space: nowrap;
}

#main .mod_article.inline .ce_image.first.centerB {
  text-align: center;
}

#main .mod_article.inline .ce_image.first.centerB .inside {
  margin: 0 auto;
}

#main .inside .mod_article {
  max-width: 1100px;
  margin: 50px auto;
  gap: 30px;
  justify-content: space-between;
}

#main .inside .mod_article.first {
  display: block;
  max-width: 100%;
  margin-top: 0;
}

#main .inside .mod_article .ce_headline {
  flex: 1 1 20%;
  text-align: right;
}

#main .inside .mod_article .ce_headline.textleft {
  text-align: left;
  padding-left: 20px;
}

#main .inside .mod_article .ce_headline.w4_1 {
  flex: 4 1 50%;
}

#main .inside .mod_article .ce_text,
#main .inside .mod_article .ce_image {
  flex: 1 1 40%;
}

#main .inside .mod_article .ce_text {
  padding: 20px;
  padding-top: 0;
}

#main .inside .mod_article .npt {
  padding-top: 20px;
}

#main .inside .mod_article.team {
  max-width: 1600px;
}

#main .inside .mod_article.team .column .ce_text {
  display: inline-block;
}

#main .inside .mod_article.team p {
  font-style: italic;
}

#main .inside .mod_article.team .caption {
  font-style: normal;
}

#main .inside .mod_article.panorama {
  max-width: 100%;
  width: 1280px !important;
  height: 500px !important;
  margin-bottom: 100px;
}

#main .inside .mod_article.extended_width {
  max-width: 1600px;
}

#main #panorama {
  max-width: 100%;
  width: 1100px !important;
  height: 500px !important;
  margin: 0 auto;
  margin-bottom: 100px;
}

#main .topImage,
#main .topSlider {
  position: relative;
  margin-bottom: 80px;
}

#main .topImage .topHead,
#main .topSlider .topHead {
  position: absolute;
  bottom: 0;
  background: rgba;
  background-image: url("../hg/streifen_signets.png");
  background-size: 80px;
  width: 100%;
  font-size: 3rem;
  color: #fff;
  text-align: center;
  text-shadow: 2px 2px #000;
  padding: 2px 0;
  z-index: 99;
  font-weight: 900;
}

#main .topImage .rsts-prev,
#main .topImage .rsts-next,
#main .topSlider .rsts-prev,
#main .topSlider .rsts-next {
  display: none;
}

#main .teamB {
  position: relative;
}

#main .teamB .caption {
  position: absolute;
  bottom: 20px;
  right: -20px;
  background: #24518c;
  color: #fff;
  padding: 5px;
}

#main #page_head {
  position: absolute;
  width: 100%;
  text-align: center;
}

#main #page_head .inside {
  display: inline-block;
  padding-bottom: 20px;
  color: #b6b6b6;
  font-size: 1.8rem;
  font-weight: 300;
}

#main #page_head .inside:before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 0;
  height: 1px;
  width: 50%;
  border-bottom: 1px solid #24518c;
}

#main .mod_article.flex.team .ce_text {
  flex: 1 1 20% !important;
  padding-right: 20px;
}

#main .mod_article.flex.team .ce_text img {
  width: 100%;
}

#main .mod_article.flex.team .ce_text.block {
  overflow: visible !important;
}

main .inside .mod_article:nth-of-type(3) {
  margin-bottom: 0;
}

main .inside .mod_article:nth-of-type(4) {
  margin-top: 0;
  margin-bottom: 0;
}

main .inside .mod_article:nth-of-type(5) {
  margin-top: 0;
}

main .inside .mod_article.no_margin_bottom {
  margin-bottom: 0;
}

body.sortiment #main .inside .mod_article:nth-of-type(3),
body.sortiment #main .inside .mod_article:nth-of-type(4),
body.sortiment #main .inside .mod_article:nth-of-type(5),
body.sortiment #main .inside .mod_article:nth-of-type(6),
body.sortiment #main .inside .mod_article:nth-of-type(7),
body.trauerrede #main .inside .mod_article:nth-of-type(3),
body.trauerrede #main .inside .mod_article:nth-of-type(4),
body.trauerrede #main .inside .mod_article:nth-of-type(5),
body.trauerrede #main .inside .mod_article:nth-of-type(6),
body.trauerrede #main .inside .mod_article:nth-of-type(7),
body.zeremonien #main .inside .mod_article:nth-of-type(3),
body.zeremonien #main .inside .mod_article:nth-of-type(4),
body.zeremonien #main .inside .mod_article:nth-of-type(5),
body.zeremonien #main .inside .mod_article:nth-of-type(6),
body.zeremonien #main .inside .mod_article:nth-of-type(7),
body.erbrecht #main .inside .mod_article:nth-of-type(3),
body.erbrecht #main .inside .mod_article:nth-of-type(4),
body.erbrecht #main .inside .mod_article:nth-of-type(5),
body.erbrecht #main .inside .mod_article:nth-of-type(6),
body.erbrecht #main .inside .mod_article:nth-of-type(7),
body.patientenverfuegung #main .inside .mod_article:nth-of-type(3),
body.patientenverfuegung #main .inside .mod_article:nth-of-type(4),
body.patientenverfuegung #main .inside .mod_article:nth-of-type(5),
body.patientenverfuegung #main .inside .mod_article:nth-of-type(6),
body.patientenverfuegung #main .inside .mod_article:nth-of-type(7),
body.organspende #main .inside .mod_article:nth-of-type(3),
body.organspende #main .inside .mod_article:nth-of-type(4),
body.organspende #main .inside .mod_article:nth-of-type(5),
body.organspende #main .inside .mod_article:nth-of-type(6),
body.organspende #main .inside .mod_article:nth-of-type(7) {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

main .vertical_center {
  display: flex;
  align-items: center;
  padding: 30px;
}

main .vertical_center .inside {
  display: inline-block;
}

#main .column.aktu_texte .ce_text:nth-child(even) {
  background: rgba(230, 230, 230, 0.5);
}

#main .column.aktu_texte .ce_text {
  padding: 50px;
  margin-bottom: 50px;
}

#main .column.aktu_texte .ce_text:nth-child(1) {
  padding-top: 0;
}

#main .inside .mod_article.width_small {
  max-width: 750px !important;
}

#main .flexrow_galerie {
  display: flex;
  flex-wrap: wrap;
}

#main .flexrow_galerie .mod_rocksolid_slider {
  flex: 0 0 45%;
}

#main .mod_article.flex3.w100 .ce_accordionStart {
  max-width: 100% !important;
}

#main .twocolumn .inside ul {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
}

#main .twocolumn .inside ul li {
  width: 90%;
}

.flexapp {
  flex-wrap: wrap;
  align-items: flex-start;
}

.flexapp div {
  flex: 1 1 22%;
}

.flexapp p {
  padding: 0px 5px;
  flex: 0 0 15%;
  margin-top: 0;
}

.flexapp .item {
  display: none;
  padding: 5px !important;
}

.flexapp .item p:nth-child(1) {
  font-size: 1.8rem;
  font-weight: 100;
}

.flexapp .item p:nth-child(2) {
  padding: 0;
  margin-bottom: 0;
}

.flexapp .item p:nth-child(3) {
  font-size: 1rem;
  font-weight: 100;
  padding: 0;
  margin-top: 0;
}

.flexapp .item.showItem {
  display: block;
  width: 100%;
}

.flexapp.f_btn div {
  cursor: pointer;
  margin-right: 5px;
  margin-bottom: 5px;
  margin-top: 5px;
  transition: all 0.5s ease;
}

.flexapp.f_btn div:hover, .flexapp.f_btn div.selected {
  color: #24518c;
}

.flexapp.f_btn p {
  border-left: 2px solid #24518c;
}

.flexapp.f_btn p:hover {
  background: rgba(200, 200, 200, 0.2);
}

.flexapp.f_items .item {
  position: absolute;
  display: block !important;
  transition-duration: 2.2s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
  opacity: 0;
}

.flexapp.f_items .item.showItem {
  opacity: 1;
}

.flexapp .ppp {
  display: flex;
  flex-wrap: wrap;
}

.flexapp .ppp p {
  flex: 0 0 25%;
}

.flexapp .ppp .contp {
  opacity: 0;
  height: 0;
  overflow: hidden;
  border: 0;
  transition: all 0.5s linear;
  display: none;
}

.flexapp .ppp .contp p:nth-child(1) {
  display: none;
}

.flexapp .ppp .headerp {
  font-weight: bold;
}

.flexapp .ppp.showp .contp {
  opacity: 1;
  height: auto;
}

.flexapp .floristik_img {
  height: auto;
}

#floristi_canvas {
  height: 500px;
}

#floristi_canvas img {
  max-width: 450px;
  max-height: 450px;
}

#floristi_canvas #actuImage {
  position: absolute;
  z-index: 10;
  opacity: 0;
  transition-duration: 2.2s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

#floristi_canvas #actuImage.showImage {
  opacity: 1;
}

#floristi_canvas #newImage {
  position: absolute;
  z-index: 1;
  opacity: 0;
  transition-duration: 2.2s;
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

#floristi_canvas #newImage.showImage {
  opacity: 1;
}

#karte_footer {
  cursor: pointer;
}

.startseite #main #tableHolder .ce_text {
  padding: 0;
}

.startseite #main #tableHolder .ce_text.box {
  cursor: pointer;
}

.startseite #main #tableHolder .box_text {
  font-weight: 200;
}

.startseite #main #tableHolder .box_text p {
  font-weight: 200;
}

.startseite #main #tableHolder .box_text a {
  font-weight: 700;
}

#gp {
  cursor: pointer;
  position: absolute;
  top: 0;
  z-index: 123456;
}

#footer {
  position: relative;
}

#footer #toTopBtn {
  position: sticky;
  cursor: pointer;
  transform: scale(0);
}

#footer .frow {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

#footer .frow .column img {
  max-width: 100px;
  height: auto;
  padding-right: 10px;
}

#footer .frow .column .holder {
  padding: 10px 30px;
}

#footer .frow .column:nth-child(2) {
  text-align: center;
}

#footer #kontaktseite .field_text label {
  display: none;
}

.ol-attribution.ol-uncollapsible {
  bottom: 35px !important;
}

.showBtn #footer #toTopBtn {
  position: sticky;
  transform: scale(1);
}

#anchor-0,
#anchor-1,
.links {
  cursor: pointer;
}

body.startseite #tableHolder {
  display: grid;
  grid-template-columns: 33.3% 33.3% 33.3%;
  grid-gap: 0;
  background-color: #fff;
  color: #444;
}

body.startseite #tableHolder .box {
  background-color: #e9e9e9;
  color: #333;
  padding: 0px;
  margin: 0;
  font-size: 1rem;
}

body.startseite #tableHolder .box a {
  text-decoration: none;
  font-weight: bold;
  transform: translateX(0px);
}

body.startseite #tableHolder .box a:hover {
  color: #939393;
  transform: translateX(100px);
  transform: rotate(20deg);
}

body.startseite #tableHolder .box h2 {
  font-size: 1.3rem;
  font-weight: bold;
  text-align: center;
  width: 100%;
}

body.startseite #tableHolder .box.rot {
  background-color: #24518c;
  color: #fff;
}

body.startseite #tableHolder .box.rot h2 {
  color: #fff;
}

body.startseite #tableHolder .box.rot a {
  color: #fff;
}

body.startseite #tableHolder .box.gruen {
  background-color: #eeeeee;
  color: #333;
}

body.startseite #tableHolder .box.ce_image {
  background-image: url("../bilder/start/trauerfall.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}

body.startseite #tableHolder .box.ce_image img {
  object-fit: cover;
}

body.startseite #tableHolder .ce_text {
  position: relative;
  width: 100%;
  height: 100%;
}

body.startseite #tableHolder .ce_text .inside {
  position: relative;
}

body.startseite #tableHolder .ce_text.box::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #24518c;
  opacity: 0.3;
  transition: all 0.3s ease-in-out;
}

body.startseite #tableHolder .ce_text.box .box_text {
  position: absolute;
  background: rgba(36, 81, 140, 0.8);
  bottom: 50%;
  transform: translateY(50%);
  width: 70%;
  right: 0;
  color: #fff;
  box-sizing: border-box;
  transition: all 0.3s ease-in-out;
  padding: 25px;
  z-index: 2;
}

body.startseite #tableHolder .ce_text.box .box_text strong {
  color: #fff;
}

body.startseite #tableHolder .ce_text:hover.box::after {
  opacity: 0;
}

body.startseite #tableHolder .ce_text:hover.box .box_text {
  bottom: 0%;
  transform: translateY(0%);
}

body.startseite #tableHolder .image_container {
  font-size: 0;
}

body.startseite .schmal .inside {
  max-width: 800px !important;
}

body.startseite #main h1 {
  text-transform: none;
  font-size: 2.2rem;
}

body.startseite #main h1 strong {
  font-weight: 500;
}

body.startseite #main h3 strong {
  color: #939393;
}

@media only screen and (max-width: 1440px) {
  #footer .fl_right p {
    display: flex;
    flex-direction: column;
  }
  #footer .fl_right p {
    display: flex;
  }
  #footer .fl_right p a:nth-child(1), #footer .fl_right p a:nth-child(2) {
    border-right: 0px solid #fff;
  }
}

@media only screen and (max-width: 1260px) {
  #headholder .inside .column:nth-child(2),
  #navigationSecondp {
    display: none;
  }
  #secondNav {
    height: 2px;
  }
  #nav_btn {
    display: block;
  }
  #footer .inside {
    flex-wrap: wrap;
  }
  #footer .inside > .ce_image {
    width: 100%;
  }
  #footer .inside > .item {
    padding: 20px;
  }
  #footer .inside > .item:nth-child(2) {
    flex: 1 1 80%;
  }
  #footer .inside > .item:nth-child(3) {
    flex: 0 0 20%;
  }
  #footer .inside .it_adresse .item {
    flex: 1 1 28% !important;
  }
  #main .fullwidth .flex50 {
    justify-content: center;
  }
  #main .fullwidth .inside {
    padding: 10px;
  }
  .aktiv #header {
    position: fixed;
    z-index: 500;
    width: 100%;
  }
  .aktiv #container {
    padding-top: 100px;
  }
  .aktiv #nav_btn {
    position: fixed;
  }
  #gp {
    z-index: 10003;
  }
  #gp img {
    max-width: 500px;
  }
  #headholder .inside .column:nth-child(3) .telH::before {
    content: " ";
    background-image: url(../hg/24_7.png);
    background-size: 50px;
    height: 40px;
    width: 50px;
    margin-top: 10px;
  }
  #header {
    position: static;
  }
  #container {
    padding-top: 0;
  }
  #searchHolderTT {
    top: 50px;
  }
  #naviHolderTOP {
    display: none;
  }
  #kontaktseite .flex {
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media only screen and (max-width: 1220px) {
  #footer .inside {
    max-width: 1600px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    color: #fff;
    padding: 20px 0;
  }
  #footer .inside .item:nth-child(1),
  #footer .inside .item:nth-child(2) {
    flex: 1 0 50% !important;
  }
  #footer .inside .item:nth-child(3) {
    flex: 1 0 100% !important;
  }
  #footer .inside .item.last {
    flex-direction: row;
    flex-wrap: wrap;
  }
  #footer .inside .item.last div:nth-child(1) {
    flex: 1 0 48% !important;
  }
  #footer .inside .item.last div:nth-child(2) {
    flex: 1 0 48% !important;
  }
  #footer .inside .item.last div:nth-child(3) {
    flex: 1 0 100% !important;
  }
}

@media only screen and (max-width: 980px) {
  #main .mod_article.flex .ce_text.first .inside,
  #main .mod_article.flex .item.first .inside {
    width: 100%;
    max-width: 100%;
    padding: 20px;
  }
  #naviHolderTOP {
    display: none;
  }
  #searchHolderTT {
    top: 52px;
  }
  #naviHolder #navigation li.trail a,
  #naviHolder #navigation li.trail a span {
    color: #fff !important;
  }
  #main .mod_article.flex.team {
    flex-wrap: wrap;
  }
  #main .mod_article.flex.team .ce_text, #main .mod_article.flex.team .ce_text.first {
    flex: 1 1 40% !important;
    padding: 10px;
    max-width: 40%;
  }
  #main .mod_article.flex.team .ce_text.first .inside, #main .mod_article.flex.team .ce_text .inside {
    padding: 0;
    padding-right: 30px !important;
  }
}

@media only screen and (max-width: 920px) {
  #main .mod_article.flex .ce_text.first .inside,
  #main .mod_article.flex .item.first .inside {
    width: 100%;
    max-width: 100%;
    padding: 20px;
  }
  #footer .inside .fullwidth {
    width: 100%;
    flex: 1 1 100%;
  }
  #footer .inside .fullwidth .inside {
    padding: 5px;
  }
  #footer .inside .item.last {
    display: flex;
    justify-content: space-between;
    flex-direction: row;
  }
  #footer .inside > .item:nth-child(3) {
    flex: 0 0 100%;
  }
  #main .mod_article.flex .ce_text.first.neg_margin .inside,
  #main .mod_article.flex .item.first.neg_margin .inside {
    margin-right: 0px;
  }
  #main .mod_article.flex .ce_text.last.neg_margin .inside,
  #main .mod_article.flex .item.last.neg_margin .inside {
    margin-left: 0px;
  }
  #main .mod_article.flex.team.last {
    flex-wrap: wrap;
  }
  #main .mod_article.flex.team.last .column .ce_text {
    flex: 1 1 100% !important;
    padding: 10px;
    max-width: 100%;
  }
  #main .inside .mod_article .ce_headline {
    padding-left: 10px;
    padding-right: 10px;
  }
  #main #adresseMap {
    font-size: 1rem;
  }
  .mod_rocksolid_slider h2 {
    padding: 10px;
  }
  .pg_aktuelles .image_container.float_right, .pg_aktuelles .image_container.float_left {
    float: none;
    clear: both;
  }
}

@media only screen and (max-width: 740px) {
  #main .mod_article.flex {
    display: flex;
    flex-direction: column;
  }
  #article-77 {
    height: 800px;
  }
  #main .mod_article.flex .ce_text.last .inside,
  #main .mod_article.flex .item.last .inside {
    width: 100%;
    max-width: 100%;
    padding: 20px;
  }
  #main .mod_article.inline .ce_image.first,
  #main .mod_article.inline .ce_image.last {
    justify-content: center;
    margin: 0;
  }
  #main .mod_article.inline .ce_image.first img,
  #main .mod_article.inline .ce_image.last img {
    margin: 0;
  }
  .startseite #main .mod_article.flex {
    flex-direction: column;
  }
  .startseite #main .mod_article.flex .ce_text,
  .startseite #main .mod_article.flex video {
    flex: 1 1 100%;
    width: 100%;
  }
  .startseite #main .mod_article.flex .ce_text {
    text-align: center;
  }
  html,
  body {
    font-size: 13px;
  }
  .inside .ce_form {
    width: 100%;
  }
  #kontaktseite .formbody {
    width: 100%;
  }
  #kontaktseite .widget {
    width: 100%;
  }
  #searchHolderTT {
    flex-wrap: wrap;
  }
  .easy-autocomplete {
    width: auto !important;
  }
  #main .inside .mod_article .ce_headline {
    text-align: center;
  }
  #main .mod_article.flex.team {
    flex-wrap: wrap;
  }
  #main .mod_article.flex.team .ce_text, #main .mod_article.flex.team .ce_text.first {
    flex: 1 1 100% !important;
    padding: 10px;
    max-width: 100%;
  }
  #main .mod_article.flex.team .ce_text.first .inside, #main .mod_article.flex.team .ce_text .inside {
    padding: 0;
    padding-right: 30px !important;
  }
  #main .mod_article.flex .column {
    padding: 0px;
  }
  #preloader {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 91111111111222222222222222111999;
    background-image: url("../hg/logo.png");
    background-repeat: no-repeat;
    background-color: white;
    background-position: center;
    background-size: 80% auto;
  }
  #kontaktseite .flex {
    flex-direction: column;
  }
  #kontaktseite .flex input, #kontaktseite .flex textarea {
    width: 95%;
  }
  .pg_aktuelles .image_container.float_right, .pg_aktuelles .image_container.float_left {
    float: none;
    clear: both;
  }
}

@media only screen and (max-width: 620px) {
  body.startseite #tableHolder {
    grid-template-columns: 100%;
  }
  .pg_aktuelles .image_container.float_right, .pg_aktuelles .image_container.float_left {
    float: none;
    clear: both;
  }
  .pg_finanzierung .flexrow .flex.imageF {
    flex-direction: column;
    justify-content: flex-end;
  }
}

@media only screen and (max-width: 550px) {
  #main .col2 ul {
    -moz-column-count: 1;
    column-count: 1;
    -moz-column-gap: 20px;
    column-gap: 20px;
  }
  #nav_btn {
    left: auto;
    right: 10px;
  }
  #gp img {
    max-width: 500px;
    width: 100%;
  }
  #container {
    padding-top: 25px;
  }
  #searchHolderTT {
    width: 100%;
    left: 0;
    top: 82px;
    justify-content: center;
  }
  #searchHolderTT h3 {
    flex: 1 0 100%;
    text-align: center;
  }
}

@media only screen and (max-width: 438px) {
  #footer .it_adresse .ce_text.item.column {
    padding-left: 20px;
  }
}

@media only screen and (max-width: 420px) {
  #footer .inside .it_adresse .ce_image {
    overflow: visible;
  }
  #footer .inside .it_adresse .item {
    flex: 0 1 100% !important;
  }
  #footer .inside .it_adresse .item .inside {
    padding: 5px;
  }
  #footer .inside .it_adresse .item .inside .frow .column:nth-child(1) {
    flex: 1 0 auto;
  }
  #footer .inside .it_adresse .item .inside .frow .column:nth-child(2) {
    flex: 0 1 auto;
  }
  #headholder .inside .column:nth-child(3) .telH {
    font-size: 1rem;
    padding-left: 15px;
    text-align: center;
  }
}
