@charset "utf-8";
/* CSS Document */
.frame {
  width: 100%;
  height: auto;
  float: left;
  padding: 16px;
}
.frame header {
  width: 100%;
  height: auto;
  display: block;
  float: left;
  padding-bottom: 18px;
}
.frame p {
  line-height: 1.7;
}
.frame p a {
  color: #ae0143;
  font-weight: 600;
  text-decoration: none;
}
body.section-sparringspartner .frame p a {
  color: #00529C;
}
.frame p a, .frame-type-text ul li a, .frame-type-text ul li a, .acc-content a {
  position: relative;
  color: #ae0143;
  text-decoration: none;
  font-weight: 600;
}
body.section-sparringspartner .frame p a, body.section-sparringspartner .frame-type-text ul li a, body.section-sparringspartner .frame-type-text ul li a, body.section-sparringspartner .acc-content a {
  color: #00529C;
}
.frame-type-text p a::after, .frame-type-text ul li a::after, .frame-type-text ul li a::after, .acc-content a::after {
  content: '';
  position: absolute;
  width: 100%;
  transform: scaleX(0);
  height: 3px;
  bottom: -1px;
  left: 0;
  background-color: #ae0143;
  transform-origin: bottom right;
  transition: transform 0.25s ease-out;
}
body.section-sparringspartner .frame-type-text p a::after, body.section-sparringspartner .frame-type-text ul li a::after, body.section-sparringspartner .frame-type-text ul li a::after, body.section-sparringspartner .acc-content a::after {
  background-color: #00529C;
}
.frame-type-text p a:hover::after, .frame-type-text ul li a:hover::after, .frame-type-text ul li a:hover::after, .acc-content a:hover::after {
  transform: scaleX(1);
  transform-origin: bottom left;
}
h1, h2, h3, h4, h5, h6 {
  width: 100%;
  height: auto;
  display: block;
  font-size: 1em;
  margin: 0;
  padding: 0;
  float: left;
  font-weight: 400;
  line-height: normal;
}
h1 {
  font-weight: 600;
  font-size: 1.7em;
  color: #ae0143;
  padding-bottom: 10px;
}
body.section-sparringspartner h1 {
  color: #00529C;
}
h2 {
  font-weight: 600;
  color: #5A6E7B;
  font-size: 1.4em;
  line-height: 1.2;
}
/* Bilder und Bild und Text */
.ce-outer, .ce-inner, .ce-row {
  width: 100%;
  height: auto;
  float: left;
}
.ce-column {
  padding: 8px;
  height: auto;
  float: left;
}
.ce-gallery[data-ce-columns='1'] div.ce-column {
  width: 100%;
}
.ce-gallery[data-ce-columns='2'] div.ce-column {
  width: 50%;
}
.ce-gallery[data-ce-columns='3'] div.ce-column {
  width: 33.3333%;
}
.ce-gallery[data-ce-columns='4'] div.ce-column {
  width: 25%;
}
.ce-gallery[data-ce-columns='5'] div.ce-column {
  width: 20%;
}
.ce-gallery[data-ce-columns='6'] div.ce-column {
  width: 16.6666%;
}
.ce-gallery[data-ce-columns='7'] div.ce-column {
  width: 14.2857%;
}
.ce-gallery[data-ce-columns='8'] div.ce-column {
  width: 12.5%;
}
figure, figure img {
  padding: 0;
  margin: 0;
  float: left;
  max-width: 100%;
  display: block;
  height: auto;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}
.ce-border figure img {
  border: 1px solid #666;
}
.frame-type-textpic, .frame-type-image {
  padding: 8px 8px;
}
.frame-type-textpic header, .frame-type-image header {
  padding-left: 8px;
  padding-right: 8px;
}
.ce-textpic, .ce-image {
  width: 100%;
  height: auto;
  float: left;
}
.ce-textpic.ce-intext .ce-gallery {
  width: 40%;
  height: auto;
  padding-bottom: 5px;
}
.ce-textpic.ce-left.ce-intext .ce-gallery {
  float: left;
  padding-right: 10px;
}
.ce-textpic.ce-right.ce-intext .ce-gallery {
  float: right;
  padding-left: 10px;
}
.ce-textpic.ce-intext .ce-bodytext {
  padding: 8px;
}
.ce-textpic.ce-intext .ce-bodytext p:first-child {
  padding-top: 0;
  margin-top: 0;
}
.ce-textpic.ce-intext.ce-nowrap .ce-gallery {
  width: 40%;
  float: left;
  height: auto;
}
.ce-textpic.ce-intext.ce-nowrap .ce-bodytext {
  width: 60%;
  float: right;
  height: auto;
  padding: 8px;
}
.ce-textpic.ce-intext .ce-bodytext header {
  padding-left: 0px;
  padding-right: 0px;
}
.ce-textpic.ce-left.ce-nowrap .ce-gallery {
  float: left;
}
.ce-textpic.ce-left.ce-nowrap .ce-bodytext {
  float: right;
}
.ce-textpic.ce-right.ce-nowrap .ce-gallery {
  float: right;
}
.ce-textpic.ce-right.ce-nowrap .ce-bodytext {
  float: left;
}
.ce-textpic.ce-center.ce-above .ce-gallery, .ce-textpic.ce-center.ce-above .ce-bodytext {
  width: 100%;
  height: auto;
  float: left;
}
.ce-textpic.ce-center.ce-above .ce-bodytext {
  padding: 8px;
  width: 100%;
  height: auto;
  float: left;
}
/* Willkommen */
.meldung-welcome {
  width: 100%;
  height: auto;
  float: left;
  padding-bottom: 50px;
}
.meldung-welcome-content {
  width: 60%;
  height: auto;
  float: right;
}
.meldung-welcome-subtitle {
  width: 100%;
  height: auto;
  float: left;
  padding-bottom: 16px;
}
.meldung-welcome-title {
  width: 100%;
  height: auto;
  float: left;
}
.meldung-welcome-image {
  width: 40%;
  float: left;
  padding-right: 50px;
  padding-top: 16px;
}
.meldung-welcome-image img {
  max-width: 100%;
  height: auto;
  float: left;
}
/* Trenner */
.frame-type-div {
  width: 100%;
  height: auto;
  float: left;
  padding-top: 16px;
  padding-bottom: 16px;
}
.frame-type-div hr.ce-div {
  width: 100%;
  height: 1px;
  overflow: hidden;
  background-color: #C6C6C6;
  border: 0;
  margin: 0;
}
/* uploads */
/* Plugins (Lists) */
.frame-type-list {
  padding: 0;
}
.frame-type-list header {
  padding-left: 16px;
  padding-right: 16 px;
}
/* Unsorted Lists, Sorted Lists */
.frame-type-bullets ul, .frame-type-bullets ol, .address-description ul, .frame-type-text ul, .frame-type-text ol, .ce-bodytext ul, .ce-bodytext ol {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  padding: 0;
  margin: 0;
  list-style: none;
  padding-bottom: 20px;
}
.frame-type-bullets ul li, .frame-type-bullets ol li, .address-description ul li, .frame-type-text ul li, .frame-type-text ol li, .ce-bodytext ul li, .ce-bodytext ol li {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  padding: 4px 0px 4px 20px;
  position: relative;
}
.frame-type-bullets ul li::before, .address-description ul li::before, .frame-type-text ul li::before, .ce-bodytext ul li::before, .ce-bodytext ol li::before {
  content: '';
  width: 6px;
  height: 6px;
  background-color: #ae0143;
  left: 4px;
  top: 12px;
  position: absolute;
  display: block;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}
body.section-sparringspartner .frame-type-bullets ul li::before, body.section-sparringspartner .address-description ul li::before, body.section-sparringspartner .frame-type-text ul li::before, body.section-sparringspartner .ce-bodytext ul li::before, body.section-sparringspartner .ce-bodytext ol li::before {
  background-color: #00529C;
}
/* Bestehende Zählung auf den gewünschten Elementen */
.frame-type-bullets ol, .address-description ol, .frame-type-text ol, .ce-bodytext ol {
  counter-reset: list-counter;
}
.frame-type-bullets ol li, .address-description ol li, .frame-type-text ol li, .ce-bodytext ol li {
  counter-increment: list-counter; /* Zähler für jedes Listenelement erhöhen */
  position: relative; /* Für die Positionierung des Pseudo-Elements */
  padding-left: 30px;
  padding-bottom: 12px;
}
/* Pseudo-Element für nummerierte Liste */
.frame-type-bullets ol li::before, .address-description ol li::before, .frame-type-text ol li::before, .ce-bodytext ol li::before {
  content: counter(list-counter) ".";
  position: absolute;
  left: 1px;
  top: 4px;
  font-weight: 600;
  color: #fff;
  border-radius: 50%;
  background-color: #ae0143;
  width: 22px;
  height: 22px;
  font-size: 14px;
  line-height: 20px;
  text-align: center;
  vertical-align: middle;
}
body.section-sparringspartner .frame-type-bullets ol li::before, body.section-sparringspartner .address-description ol li::before, body.section-sparringspartner .frame-type-text ol li::before, .ce-bodytext ol li::before {
  background-color: #00529C;
}
/* Reset für UL innerhalb von OL, damit die Aufzählung nicht beeinflusst wird */
.frame-type-bullets ol ul, .address-description ol ul, .frame-type-text ol ul, .ce-bodytext ol ul {
  counter-reset: none;
}
.frame-type-bullets ol ul li, .address-description ol ul li, .frame-type-text ol ul li, .ce-bodytext ol ul li {
  counter-increment: none; /* Kein Zähler-Inkrement in UL innerhalb von OL */
  position: initial; /* Positionierung zurücksetzen, wenn nötig */
  padding-left: 0;
}
/* Optional: Anpassungen für verschachtelte UL-Listen */
.frame-type-bullets ol ul li::before, .address-description ol ul li::before, .frame-type-text ol ul li::before, .ce-bodytext ol ul li::before {
  content: none; /* Kein Pseudo-Element für verschachtelte UL-Listen */
}
.frame-type-bullets ol li ul, .address-description ol li ul, .frame-type-text ol li ul {
  padding-top: 10px;
}
.frame-type-bullets ul li ul, .address-description ul li ul, .frame-type-text ul li ul {
  padding-top: 10px;
}
/* Untermenu (abstract) */
.frame-type-menu_abstract {
  width: 100%;
  height: auto;
  float: left;
  padding: 8px;
}
.frame-type-menu_abstract ul {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  padding: 0;
  margin: 0;
  list-style: none;
  padding-bottom: 20px;
}
.frame-type-menu_abstract ul li {
  width: 33.3333%;
  height: auto;
  float: left;
  display: block;
  padding: 8px;
}
.frame-type-menu_abstract ul li a {
  width: 100%;
  height: auto;
  display: block;
  background-color: #ae0143;
  color: #fff;
  padding: 10px;
  text-decoration: none;
  float: left;
  min-height: 160px;
  position: relative;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}
body.section-sparringspartner .frame-type-menu_abstract ul li a {
  background-color: #00529C;
}
.frame-type-menu_abstract ul li a::after {
  content: url("../img/long-arrow-right-light-white.svg");
  width: 25px;
  height: auto;
  position: absolute;
  bottom: 10px;
  right: 10px;
  background-position: bottom right;
  background-size: 20px auto;
  background-repeat: no-repeat;
}
.frame-type-menu_abstract ul li a span {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  padding-bottom: 10px;
  font-weight: 600;
  font-size: 1.4em;
}
.frame-type-menu_abstract ul li a p {
  display: block;
  width: auto;
  height: auto;
  float: left;
  padding: 0;
  margin: 0;
  font-size: 0.8em;
  font-weight: 600;
}
.frame-type-uploads ul {
  width: 100%;
  height: auto;
  float: left;
  padding: 0;
  margin: 0;
  display: block;
  list-style: none;
  border-top: 1px solid #efefef;
  font-size: 1em;
}
.frame-type-uploads ul li {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  border-bottom: 1px solid #efefef;
  padding-top: 10px;
  padding-bottom: 10px;
}
.frame-type-uploads ul li div {
  width: 100%;
  height: auto;
  float: left;
  position: relative;
}
.frame-type-uploads ul li.has-img div {
  width: 80%;
}
.frame-type-uploads ul li.has-img img {
  width: 100%;
  height: auto;
  float: left;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  border: 1px solid #efefef;
}
.frame-type-uploads ul li.has-img a {
  width: 20%;
  padding-right: 16px;
}
.frame-type-uploads ul li.has-img div a {
  width: 100%;
  padding-right: 0px;
}
.frame-type-uploads ul li a {
  width: 100%;
  height: auto;
  float: left;
  display: block;
}
.frame-type-uploads ul li span.ce-uploads-description {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  font-size: 0.9em;
  color: #727272;
}
.frame-type-uploads ul li span.ce-uploads-fileName {
  width: 100%;
  height: auto;
  float: left;
  display: block;
  color: #ae0143;
  font-weight: 600;
  padding-left: 20px;
}
body.section-sparringspartner .frame-type-uploads ul li span.ce-uploads-fileName {
  color: #00529C;
}
.frame-type-uploads ul li a[href$=".pdf"] span.ce-uploads-fileName::after, .frame-type-uploads ul li a[href$=".PDF"] span.ce-uploads-fileName::after {
  content: ' ( .pdf)';
  font-size: 8px;
  text-transform: uppercase;
  color: #ccc;
}
.frame-type-uploads ul li a[href$=".pdf"] span.ce-uploads-fileName::before, .frame-type-uploads ul li span.ce-uploads-fileName a[href$=".pdf"]::before, .frame-type-uploads ul li a[href$=".PDF"] span.ce-uploads-fileName::before, .frame-type-uploads ul li span.ce-uploads-fileName a[href$=".PDF"]::before {
  content: '';
  background-image: url('../img/pdf-icon.svg');
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 12px;
  height: 18px;
  position: absolute;
  left: 0px;
  top: 2px;
}
body.section-sparringspartner .frame-type-uploads ul li a[href$=".pdf"] span.ce-uploads-fileName::before, body.section-sparringspartner .frame-type-uploads ul li span.ce-uploads-fileName a[href$=".pdf"]::before, body.section-sparringspartner .frame-type-uploads ul li a[href$=".PDF"] span.ce-uploads-fileName::before, body.section-sparringspartner .frame-type-uploads ul li span.ce-uploads-fileName a[href$=".PDF"]::before {
  background-image: url('../img/pdf-icon-blue.svg');
}
.frame-type-uploads ul li a[href$=".pptx"] span.ce-uploads-fileName::after {
  content: ' ( .pptx)';
  font-size: 8px;
  text-transform: uppercase;
  color: #ccc;
}
.frame-type-uploads ul li a[href$=".pptx"] span.ce-uploads-fileName::before, .frame-type-uploads ul li span.ce-uploads-fileName a[href$=".pptx"]::before {
  content: '';
  background-image: url('../img/powerpoint-icon.svg');
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 12px;
  height: 18px;
  position: absolute;
  left: 0px;
  top: 2px;
}
body.section-sparringspartner .frame-type-uploads ul li a[href$=".pptx"] span.ce-uploads-fileName::before, body.section-sparringspartner .frame-type-uploads ul li span.ce-uploads-fileName a[href$=".pptx"]::before {
  background-image: url('../img/powerpoint-icon-blue.svg');
}
.frame-type-uploads ul li a[href$=".docx"] span.ce-uploads-fileName::after {
  content: ' ( .docx)';
  font-size: 8px;
  text-transform: uppercase;
  color: #ccc;
}
.frame-type-uploads ul li a[href$=".docx"] span.ce-uploads-fileName::before, .frame-type-uploads ul li span.ce-uploads-fileName a[href$=".docx"]::before {
  content: '';
  background-image: url('../img/word-icon.svg');
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 12px;
  height: 18px;
  position: absolute;
  left: 0px;
  top: 2px;
}
body.section-sparringspartner .frame-type-uploads ul li a[href$=".docx"] span.ce-uploads-fileName::before, body.section-sparringspartner .frame-type-uploads ul li span.ce-uploads-fileName a[href$=".docx"]::before {
  background-image: url('../img/word-icon-blue.svg');
}
.frame-type-uploads ul li a[href$=".zip"] span.ce-uploads-fileName::after {
  content: ' ( .zip)';
  font-size: 8px;
  text-transform: uppercase;
  color: #ccc;
}
.frame-type-uploads ul li a[href$=".zip"] span.ce-uploads-fileName::before, .frame-type-uploads ul li span.ce-uploads-fileName a[href$=".zip"]::before {
  content: '';
  background-image: url('../img/zip-icon.svg');
  background-size: 100% auto;
  background-repeat: no-repeat;
  width: 12px;
  height: 18px;
  position: absolute;
  left: 0px;
  top: 2px;
}
body.section-sparringspartner .frame-type-uploads ul li a[href$=".zip"] span.ce-uploads-fileName::before, body.section-sparringspartner .frame-type-uploads ul li span.ce-uploads-fileName a[href$=".zip"]::before {
  background-image: url('../img/zip-icon-blue.svg');
}
@media only screen and (max-width:828px) {
  .meldung-welcome-content, .meldung-welcome-image {
    width: 100%;
  }
  .meldung-welcome-image {
    padding-bottom: 30px;
    padding-right: 0px;
  }
  .meldung-welcome {
    padding-bottom: 30px;
  }
}
@media only screen and (max-width:828px) {
  h1, .teaser header h1 {
    font-size: 1.5em;
  }
  h2, .teaser header h2 {
    font-size: 1.2em;
  }
  .frame p, .teaser p {
    font-size: 0.9em;
  }
}
@media only screen and (max-width:862px) {
  .frame-type-menu_abstract ul li a {
    min-height: 200px;
  }
}
@media only screen and (max-width:760px) {
  .frame-type-menu_abstract ul {
    padding-left: 50px;
    padding-right: 50px;
  }
  .frame-type-menu_abstract ul li {
    width: 100%;
  }
  .frame-type-menu_abstract ul li a {
    height: auto;
    min-height: 20px;
  }
  .frame-type-menu_abstract ul li a p {
    font-size: 0.95em;
    padding-bottom: 30px;
  }
}
@media only screen and (max-width:760px) {
  .frame-type-menu_abstract ul {
    padding-left: 0px;
    padding-right: 0px;
  }
}