/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/roboto-v30-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/roboto-v30-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/roboto-v30-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* roboto-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/roboto-v30-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


.app-link  a[href^="http"]::after {
  content: none;
}

@media (max-width: 760px) {
  video {
    width: 100%;
  }
  .bigpic img {
    width: 100%
  }
}

@media (min-width: 1001px){
  .tel-off {
    display: initial;
  }
  .tel-on {
    display: none;
  }
  .tel-on_kb {
    display: none;
  }
}

@media (max-width: 1000px) {
  .tel-off {
    display: none;
  }
  .tel-on {
    display: initial;
  }
  .tel-on a {
    color: #0055a0;
    background-color: unset !important;
    margin-bottom: unset !important;
    padding: unset !important;
    border-bottom: 2px solid #aec9e1;
   }
  .tel-on a:hover, .tel-on a:active {
    border-color: #aec9e1;
   }

  .tel-on_kb {
    display: block;
  }
  .tel-on_kb a {
    color: #0055a0;
    background-color: unset !important;
    margin-bottom: unset !important;
    padding: unset !important;
  }
  .tel-on_kb a:hover, .tel-on_kb a:active {
    border-color: #aec9e1;
  }
}


/* Seite Patronatskomitee */

.patr_table {display:table;}
/*.patr_row {display:table-row;}*/
.patr_cell {display:table-cell;padding:0px;}
.patr_cell:nth-child(1) {font-size: 2.5rem;}
.patr_cell:nth-child(2) {vertical-align: middle; padding: 25px 12px 19px 12px;}
.patr_cell:nth-child(3) {font-size: 2.5rem; vertical-align: bottom;}

.ptr_wrapper {
height: 361px;
display: flex;
align-items: center;
justify-content: center;
}

@media (max-width: 830px) {
   .ptr_wrapper {
     height: auto;
     display: block;
   }
   .ptr_img {
     width: 400px;  
   }
}

/*  Kontaktboxen Namen unter Porträtbild  */
 figcaption {
   text-align: center !important;
 }

/* Slider-Banner responsive: Text und Name sollen immer übereinander stehen */
.slide__title--text {
  display: flex;
}

/* Bücher-Slider Text-Expander-Button  */
.text-expander {
  padding-right: 40px !important;
}


/* DSE-Seite */
.dse-toc {
  list-style-type: none !important;
}

.dse-toc li:before {
  content: none !important;
}

.dse-toc li {
  /*margin-left: 35px;*/
}

/* Chrome version 29 and above */
@media screen and (-webkit-min-device-pixel-ratio:0)
and (min-resolution:.001dpcm) {
.dse-toc li { margin-left: 35px; }
}

@supports (-moz-appearance:none) {
.dse-toc li { margin-left: 0px; }
}


/* Cookie-Hint */

#cookie-div {
  display: none;
  height: auto;
  background-color: #ebe8e6;
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 100;
  text-align: center;
  font-size: 16px;
  padding: 15px 0 15px 0;
}
#cookie-par {
  /*padding-top: 14px;
  margin-left: 404px;*/
}
#space-div {
  display: none;
  height: 40px;
  background-color: #ebe8e6;
  width: 100%;
}
#cookie-ok {
  margin-left: 15px;
}


/* Webinar 'Testament erstellen */
/*.testament-webinar::before {
  content: "Das einstündigen Webinar findet statt am:";
  font-weight: bold;
  display: block;
  margin-bottom: 10px;
  margin-left: -40px;
}*/


/* Aufklappboxen für Leitsätze in der Strategie */
.sl-container {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 20px;
  box-sizing: border-box;
  margin-bottom: 15px;
}

.leitsatz {
  position: relative;
  width: 80%;
  padding: 15px 0px 0px 0px;
  background-color: #ebe8e6;
  border-radius: 10px;
  text-align: center;
  transition: border-radius 0.25s ease;
  box-sizing: border-box;
}

.t-icon {
  padding-bottom: 10px;
  padding-left: 20px;
  margin-top: -15px;
}

.leitsatz .toggle-icon {
  bottom: 15%;
  left: 50%;
  transform: translate(-50%, 50%) rotate(-135deg);
  width: 30px;
  height: 30px;
  cursor: pointer;
  transform-origin: center;
  transition: transform 0.25s ease, bottom 0.25s ease;
}


@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

.leitsatz > h3 {
  padding: 0px 30px 0px 30px;
  margin-top: 15px;
}


@media (max-width: 830px) {
   .leitsatz {
  width: 100%;
   }
}

.leitsatz {
  cursor: pointer;
}


.leittext {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  text-align: left;
  padding: 0px 30px 0px 15px;
  background-color: #fcfbfb;
  border: 3px solid #ebe8e6;
  border-radius: 0 0 10px 10px;
  box-sizing: border-box;
  transition: max-height 0.4s ease, opacity 0.4s ease, padding 0.4s ease;
  pointer-events: none;
}
 
.leitsatz.open .leittext {
  max-height: 1000px; /* Anpassen je nach Inhalt */
  opacity: 1;
  padding: 20px 30px 0px 15px;
  pointer-events: auto;
}


/* 200 Jahre Brailleschrift */

/*@media (max-width: 470px) {
    .hero_div {
      min-height: 194px;
  }
}
@media (max-width: 400px) {
    .hero_div {
      min-height: 128px;
      overflow: unset !important;
  }
}
@media (max-width: 350px) {
    .hero_div {
      min-height: 144px;
  }
}*/


@media (max-width: 511px) {
    .hero_div {
      min-height: 211px;
      margin-bottom: 20px;
  }
}
@media (max-width: 400px) {
    .hero_div {
      min-height: 174px;
      margin-bottom: 20px;
  }
}

.hero_brlzwh {
    width: auto; /* Automatische Breite */
    height: auto; /* Proportionale Höhe */
    display: block; /* Optional, um Leerraum zu vermeiden */
    /* object-fit: cover; /* Verhindert Verzerrung */
    /* transform-origin: left center; /* Skalierung vom linken Rand aus */
}
 
@media (max-width: 511px) {
    .hero_brlzwh {
        /* clip-path: inset(0 0 0 40px); /* Schneidet 40px am linken Rand ab */
        /* transform: scaleX(calc((100vw - 40px) / 100vw)); /* Skaliert proportional nur die rechte Seite */
        width: 100%;
        height: auto;
    }
}

.brlzwhd-h2 {
  margin-top: 16px;
  margin-bottom: 0.5rem;
  font-size: 1.3rem;
}

.brlzwhd-pgr {
  margin-top: -20px;
}

.brlzwhd-fig {
  width: 21% !important;
  margin-right: 2.7% !important;
}

.brlzwhd-fig-evs {
  width: 21% !important;
  margin-right: 7% !important;
  float: right !important;
}

@media (max-width: 767px) {
  .brlzwhd-fig-evs {
  width: 21% !important;
  margin-right: unset !important;
  float: left !important;
  }
}


@media (max-width: 767px) {
    /* Entferne float und nutze Flexbox für .text-image__image */
    .brlzwhd_text-image {
        display: flex; /* Flexbox aktivieren */
        flex-direction: column; /* Inhalt (Bild + Caption) vertikal anordnen */
        align-items: center; /* Zentriert Bild und Caption */
        width: 100%; /* Volle Breite für das Bild */
        margin-left: 0;
        margin-right: 0;
        clear: both; /* Entfernt eventuell vorherigen float */
    }
 
    /* Zentriere das Bild */
    .brlzwhd_text-image img {
        display: block; /* Block-Element */
        margin: 0 auto 10px !important; /* Zentrierung */
    }
 
    /* Zentriere figcaption */
    .brlzwhd_text-image figcaption {
        text-align: center; /* Text in der Mitte ausrichten */
        margin-top: 0.5rem; /* Abstand zum Bild */
    }
 
    /* Ordne Text und Bild vertikal, Bild nach dem Text */
    .brlzwhd_text-image {
        display: flex; /* Flexbox für das Container-Layout */
        flex-direction: column; /* Vertikale Anordnung */
    }
 
    .brlzwhd_text-image-txt {
        order: 1; /* Text zuerst anzeigen */
        width: 100%; /* Volle Breite nutzen */
        margin: 0 !important; /* Keine Abstände */
    }
 
    .brlzwhd_text-image {
        order: 2; /* Bild (mit Caption) nach dem Text anzeigen */
    }
}

@media (max-width: 510px) {
  .brlzwhd_text-image img {
    width: 100% !important;
  }
  .brlzwhd_text-image figcaption {
    width: auto !important;
  }
}


/* Formhandler Alert Box */
.form-alert-box a {
  display: none !important;
}


/* <h2> margin-top Korrektur */
.h2plus {
  margin-top: 30px;
}
.h2min {
  margin-bottom: -2rem !important;
}


/* Action-Link 'Veranstaltungen' auf Startseite rechts von 'Aktuell' */
.action-link-events {
  position: relative;
  background-color: #eaeff5;
  clear: both;
  color: #0055a0;
  display: block;
  float: right;
  margin: 0 0 0.6665rem;
  padding: 0.33325rem 1.9995rem 0.33325rem 0.6665rem;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.33px;
  min-width: 300px;
}
  
  
.action-link-events::after {
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  right: 0.6665rem;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxMCIgdmlld0JveD0iMCAwIDE0IDEwIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZmlsbD0iIzAwNTVBMCIgZD0iTTE0IDVMOSAwdjMuNUgwdjNoOVYxMHoiLz48L3N2Zz4=);
  background-repeat: no-repeat;
  content: "";
  display: inline-block;
  height: 10px;
  width: 14px;
}  
 
.action-link-events:hover {
  background-color: #d8e3ee;
}
 
.action-link-events:hover::after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxMCIgdmlld0JveD0iMCAwIDE0IDEwIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZmlsbD0iIzFhMWExYSIgZD0iTTE0IDVMOSAwdjMuNUgwdjNoOVYxMHoiLz48L3N2Zz4=);
}

@media (min-width: 1025px) {
  .teaser--news h2 {
    margin-bottom: 1.7rem !important;
  }
}

/* Anforderungslisten in Stelleninseraten */
.job-skills li {
  margin-bottom: 5px;
}


/* dialog Interview */
.interview-wrapper {
      display: flex;
      flex-wrap: wrap; /* wichtig für kleine Bildschirme */
      align-items: flex-start;
      gap: 20px;
    }
 
    .interview-bild {
      flex: 0 0 auto;
      max-width: 200px;
    }
 
    .interview-text {
      flex: 1 1 300px;
    }
 
  

.link-yel:hover {
  background-color: #fde896;
}

.link-yel {
  position: relative;
  background-color: #fcf1c8;
  clear: both;
  color: #333;
  display: block;
  float: left;
  margin: 0 0 0.6665rem;
  width: 100%;              /* passt sich der Containerbreite an */
  max-width: 358px;         /* Begrenzung nach oben */
  padding: 0.33325rem 2.2rem 0.33325rem 0.6665rem; /* rechts mehr Platz fürs Icon */
  box-sizing: border-box;   /* Padding wird in Breite einberechnet */
}
 
.link-yel::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.6665rem;
  transform: translateY(-50%);
  width: 14px;
  height: 10px;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxMCIgdmlld0JveD0iMCAwIDE0IDEwIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZmlsbD0iIzMzMzMzMyIgZD0iTTE0IDVMOSAwdjMuNUgwdjNoOVYxMHoiLz48L3N2Zz4=);
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}

/* Jahresbericht */
.yrnav ul {
  list-style-type: none !important;  
}
.yrnav ul ul {
  list-style-type: none !important;  
}
.yrnav ul ul li::before {
  content: unset;  
}
.yrnav ul li a:not(.icon) {
  border-bottom: none !important;
}

.jb-betrag-rechts {
  text-align: right;
}
.jb_jahr_mitte {
  text-align: center;
}



figcaption a[href^="http"]::after {
  border: 5px solid #0055a0;
    border-bottom-color: rgb(0, 85, 160);
    border-left-color: rgb(0, 85, 160);
  border-bottom-color: transparent;
  border-left-color: transparent;
  content: "";
  display: inline-block;
  margin-bottom: 0.5rem;
}

.brl200_list li {
  margin-bottom: 0 !important;
}
.brl200_img {
  display: flex;
}
@media (max-width: 767px) {  
  .brl200_img figure {
   margin-top: 0.6665rem;
   margin-bottom: 2.666rem;
  }
}
@media (max-width: 496px) {
  .brl200_img {
  display: block;
  }
  .brl200_img figure {
   margin-right: 0px !important;
   margin-bottom: 30px !important;
  }
}

/* Footer Social Media Icon */

.footer__social-media > ul {
   display: none;
}

.footer-social-icons {
    display: flex;
    align-items: center;
    gap: 15px;
}
 
.footer-social-icons img {
    display: block;
    height: auto;
    width: 44px;
}
 
/* Mobile */
@media (max-width: 1024px) {
    .footer-social-icons {        
        margin-bottom: 22px;
    }
}

@media (max-width: 767px) {
    .footer-social-icons {
        justify-content: center;        
    }
}

/* Anmeldung */
ul ul.hoerbuecher-list li::before {
  content: unset !important;
}
ul ul.braille-list li::before {
  content: unset !important;
}

/* ol */
ol li::before {
  font-size: 1rem !important;
  top: unset !important;
}


/* Layout Anmeldung Varianten Buchauswahl */
.buchauswahl {
  margin-left: 18px;
}


.quantity__input {
margin-bottom: 40px !important;
}

.quantity__caption {
    font-size: 1.2em;
}

