
:root {
  --blau: #25a1dc;
  --hellblau: #8ad1f4;
  --lichtblau: #eaf6fd;
  --dunkelblau: #226a98;
  --grau: #918f90;
  --lichtgrau: #eceaec;
  --hellgrau: #c9c6c9;
  --dunkelgrau: #020306;
  --silber: silver;

  --color-link: #25a1dc;
  --color-link-hover: #226a98;

  --shadow-box: 1px 1px 3px #918f90;

  --randbreite: 1rem;

  --bs-body-font-family: 'Qanelas', Arial, Helvetica, sans-serif;
}


@font-face {
  font-family: 'Qanelas';  /* Qanelas Regular*/
  font-style: normal;
  font-weight: normal;
  src: local('Qanelas Regular'), url('../fonts/QanelasRegular.woff') format('woff');
}
@font-face {
  font-family: 'Qanelas Thin';
  font-style: normal;
  font-weight: normal;
  src: local('Qanelas Thin'), url('../fonts/QanelasThin.woff') format('woff');
}
@font-face {
  font-family: 'Qanelas Bold';
  font-style: normal;
  font-weight: normal;
  src: local('Qanelas Bold'), url('../fonts/QanelasBold.woff') format('woff');
}

h1, h2, h3, h4 {
  color: var(--dunkelgrau);
  /*font-weight: 600;*/
  /*font-size   : 1.8rem*/
}
h1, h2, h3, h4 {
  hyphens: none;
  -ms-hyphens: none;
  -moz-hyphens: none;
  -webkit-hyphens: none;
}
h1 {
  text-align: center;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  font-family: 'Qanelas Bold', Arial, Helvetica, sans-serif;
  font-size: 2rem;
}
/* Überschriften in der Größe anpassen */
h2 {
  /*font-size: 2rem;*/
  margin-bottom: 1rem;
}
h3 {
  font-size: 1.5rem;
  font-family: 'Qanelas Light', Arial, Helvetica, sans-serif;
  margin-bottom: 1rem;
}
h4 {
  font-family: 'Qanelas Bold', Arial, Helvetica, sans-serif;
  font-size: 1.3rem;
}

/* Überschriften bei Desktop-Ansicht etwas größer */
@media (min-width: 768px) {
  h1 {
    font-size: 3rem;
  }
  h3 {
    font-size: 2rem;
  }
  .grid-item h3 {
    font-size: 1.25rem;
  }
}

p + h2 {
  margin-top: 1em;
}

/*.post-inpage-title, .sidebar-box h3, .teaser-head {*/
/*  font-size : 1.5rem*/
/*}*/

.post-inpage-title {
  color         :  var(--blau);
  margin-bottom : 1em;
  text-align: center;
}
* + .post-inpage-title {
  margin-top : 2em;
}

.post-text-intro {
  font-size : 1.15rem
}

@media (min-width : 768px) {
  .post-text-intro {
    font-size : 1.3rem
  }
}

.meta-subline {
  /*font-weight    : bold;*/
  font-size      : .75rem;
  text-transform : uppercase;
  letter-spacing : 0.1rem
}

/*.box-item.linkliste li {*/
/*  font-size : 1.1rem*/
/*}*/

.groesser {
  font-size: 1.3em;
}
.kleiner {
  font-size: 0.8em;
}

a {
  color:  var(--blau);
  transition: color 0.2s ease;
}

a:hover {
  color: var(--dunkelblau);
  text-decoration: none;
}

@keyframes fade {
  from { opacity: 1.0; }
  50% { opacity: 0.5; }
  to { opacity: 1.0; }
}

a:focus {
  outline: 1px dotted var(--grau);
  animation: fade 500ms 1;
}

b, strong, .fw-bold {
  font-family: 'Qanelas Bold', Arial, Helvetica, sans-serif;
  font-weight: 500;
}

/* Einstellungen fuer Pop-Up Dialoge von bootstrap zurueckstellen */
.ui-dialog, .ui-widget {
  font-family: inherit;
}
.ui-widget-content {
  color: inherit;
}
.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button {
  font-family: inherit;
  font-size: inherit;
}
.ui-widget-content a {
  color:  var(--blau);
}


.text-weiss a,
a:not(.box-item).text-weiss {
  color: #ffffff;
  text-decoration: underline;
}
.text-weiss a:hover,
a.text-weiss:hover {
  color: #ffffff;
  text-shadow: 0 0 1px #ffffff;
  text-decoration: none;
}
.text-schwarz a,
a.text-schwarz {
  color: #000000;
  text-shadow: 0.3px 0.3px #000000;
}

.transparent {
  background-color : transparent !important
}

/* Service-Links oben im Header (bzw. in der mobilen Version unter dem Hauptmenue */
#headerservicelinks {
  position: absolute;
  display: block;
  right: 0;
  top: 0;
  border-bottom-left-radius: 2rem;
  padding: 0.2rem 0 0.25rem 1.5rem;
  z-index: 100;
  width: 25%;
  min-width: 15em;
}
#headerservicelinks .nav-item {
  font-size: inherit;
}
#headerservicelinks a {
  display: inline-block;
  padding: 0;
  margin-right: 1rem;
  color: white;
  border-bottom: 1px solid transparent;
  text-decoration: inherit;
  font-size: 0.9rem;
  font-weight: normal;
}
#headerservicelinks a i {
  font-size: 1rem;
  vertical-align: middle;
  padding-right: 0.2rem;
}

.mobile-mode #headerservicelinks {
  margin-top: 1rem;
  border-top: 1px solid white;
  padding: 1rem 1rem 1rem 0;
  position: relative;
  font-size: inherit;
  background-color: inherit;
}
.mobile-mode #headerservicelinks ul {
  display: block;
}
.mobile-mode #headerservicelinks a {
  margin-bottom: 0.3rem;
  display: block;
}
.mobile-mode #headerservicelinks a i {
  margin-right : 1rem;
}
#headerservicelinks a:hover, #headerservicelinks a:focus {
  border-bottom: 1px solid;
}
/*!* im Mobil-Layout, die Links an dieser Stelle ausblenden (werden per JS an anderer Stelle platziert *!*/
/*@media (max-width: 991px) {*/
/*  header #headerservicelinks {*/
/*    display: none;*/
/*  }*/
/*}*/

.region-primary-menu {
  display: flex;
  margin-left: auto;
}

body.mobile-menu-open {
  overflow-y : hidden
}

body.mobile-menu-open .navbar .icon {
  color                    : #fff;
  -webkit-transition-delay : 0.3s !important;
  transition-delay         : 0.3s !important;
  -webkit-transition       : all 0.3s cubic-bezier(0.05, 0.5, 0.3, 1);
  transition               : all 0.3s cubic-bezier(0.05, 0.5, 0.3, 1)
}

.sidebar-box > .content > .without-picture {
  padding: 1rem 1rem 0.1rem 1rem;
}
/* letzter Absatz in einer Box ohne Abstand unten */
.sidebar-box > div > p:last-child {
  margin-bottom: 0;
}


/* nicht sichtbare Links als Sprungmarken */
.visually-hidden-focusable {
  visibility: hidden;
  line-height: 0;
  display: none;
}

/* Element in der Ausgabe ausblenden (aber im Layout Builder sichtbar halten) */
.ausblenden {
  display: none;
}


/* Elemente mit farbigem Hintergrund und Text (z.B. für bunte Icons) */
.farbig {
  display: inline-block;
  padding: 0.1rem;
}

.margin-auto {
  margin: auto;
}

#mainmenu .submenu .nav-link.nav-link-empty,
#mainmenu ul li a[href=""], #mainmenu ul li a[href="#"] {
  opacity: 0.7;
  cursor: default;
}
#mainmenu .submenu .nav-link.collapsed {
  display: inline-block;
  width: 90%;
}
#mainmenu .submenu .nav-link-button {
  display: inline-block;
  width: 5%;
  text-align: right;
  color: white;
}
#mainmenu .submenu-wrap.column-break {
  break-before: left;
  /*flex-basis: 100%;*/
}
#mainmenu .nav-link-deepmenu {
  font-size: 1rem;
}
#mainmenu .nav-link-deepmenu.active {
  font-weight: bold;
}
@media (min-width: 992px) {
  #mainmenu .submenu .nav-link-button {
    display: none;
  }
  #mainmenu .submenu .nav-link.collapsed {
    display: block;
    width: inherit;
  }
}


div.section-title {
  margin-bottom: 0.5em;
}


.content article .layout.transparent .layout__region--main {
  background-color: transparent;
}
.content article .layout.bg-lighter .layout__region--main {
  background-color: rgba(255,255,255,0.8);
}


.is-unpublished, .node--unpublished, .media--unpublished {
  box-shadow: 0 0 5px inset rgba(255, 165, 0, 0.5);
  outline: rgba(255, 165, 0, 0.5) dashed thin;
}
.node--unpublished, .media--unpublished {
  box-shadow: 0 0 10px rgba(255, 165, 0, 0.7);
  padding: inherit;
}
.is-missing {
  box-shadow: 0 0 5px inset rgb(255, 0, 0);
  outline: rgba(255, 0, 0, 0.5) dashed thin;
}


/* Header */
.header {
  z-index: 100;
  margin-bottom: 1rem;
}
/* Abstände im Hauptmenü */
.header .navigation-main li.nav-main-item .nav-main-sub ul {
  margin: 10px 0 30px 0;
}
.header .navigation-main li.nav-main-item .nav-main-sub {
  margin-top: 50px;
}


/* Breadcrumb */
.block.breadcrumbs {
  padding-left: 0;
}
.breadcrumb {
  background-color: inherit;
  margin-bottom: 0;
}
.breadcrumb-item + .breadcrumb-item::before {
  content: ""; /* "›";*/
  speak: none;
  width: 0;
  height: 0;
  border-top: 0.2rem solid transparent;
  border-bottom: 0.2rem solid transparent;
  border-left: 0.2rem solid #6c757d;
  padding-right: 0.2rem;
  margin-bottom: 0.1rem;
  float: none;
  display: inline-block;
}

/* MLAG RBE 24.04.2025: seit Update auf 10.4 ? greift affix sonst nicht mehr ?! */
header .navbar.affix {
  position: fixed;
  top: var(--drupal-displace-offset-top, 0);
}

header .navbar-brand img {
  max-width: min(33vw, 240px);
}
header a.navbar-brand:hover {
  background-color: white;
  outline: 0.5rem solid white;
}

header .navbar-toggler {
  border: 2px solid var(--blau);
  border-radius: 50%;
  aspect-ratio: 1;
  background-color: white;
  padding: 0.3rem;
}
header .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

header .block-language .nav-link {
  padding: 0.3rem 0.5rem;
}
header .block-language .nav-link a img {
  border: 2px solid white;
}
header .block-language .nav-link a:hover img,
header .block-language .nav-link a:focus img {
  border-color: var(--blau);
}
/* Platz für Block/Sprachflagge vorab bereitstellen, da lazy-loading? */
header .block-language  {
  min-width: 80px;
  padding: 0 1rem 0 1rem;
}
@media (min-width: 992px) {
  header .block-language {
    order: 3;
    margin-left: -80px;
  }
  .navbar-expand-lg .offcanvas {
    margin-right: 80px;
  }
}

  /* Hauptmenü allgemein */
.nav ul.dropdown-menu {
  padding-top: 0;
  padding-bottom: 0;
}
.nav .dropdown-item.active, nav .dropdown-item:active {
  text-decoration: none;
  font-weight: bold;
}
.nav .dropdown-item a {
  display: block;
  text-decoration: none;
}

/* Hauptmenü Desktop */
@media (min-width: 992px) {
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: .5rem;
    padding-left: .5rem;
    color: var(--dunkelgrau);
    font-size: 1.2rem;
    font-weight: lighter;
  }
  .navbar-nav .nav-item .nav-link:hover {
    background-color: white;
  }
  .nav ul.dropdown-menu {
    background-color: var(--blau);
    color: white;
    border-radius: 0;
    margin-top: 0;
  }
  .nav .dropdown-item {
    padding: 0;
  }
  .nav .dropdown-item.active, nav .dropdown-item:active {
    color: var(--dunkelgrau);
    background-color: var(--blau);
  }
  nav .dropdown-item:hover {
    background-color: rgba(255, 255, 255, 0.2);
  }
  .nav .dropdown-item a {
    color: white;
    padding: 0.3rem 1rem;
  }
}

/* Hauptmenü Mobil */
@media (max-width: 991px) {
  nav.menu--main {
    margin-left: inherit;
  }

  .nav-item {
    font-size: 1.2rem;
  }
  .dropdown-item {
    font-size: 1rem;
  }
  .nav-item.active {
    /*outline: 2px solid cyan;*/
  }
  .nav-item .dropdown-menu {
    border: 0;
  }
  .nav-item.active .dropdown-menu {
    display: block;
  }
  .nav .dropdown-item.active, nav .dropdown-item:active,
  .nav .dropdown-menu li.active > a {
    color: var(--dunkelgrau);
    font-weight: bold;
    background-color: white;
  }

}
/*
header .desktop-mode button.navbar-toggler {
  display: none !important;
  position: absolute;
  right: -1.5rem;
}
header .desktop-mode button.navbar-toggler .icon {
  padding: 0.2rem 0;
}
.screen-menu-open header .desktop-mode button.navbar-toggler {
  display: inherit !important;
}
@media (min-width: 992px) {
  header .navbar-collapse, header .navbar-controls-wrap {
    padding-top: 1.7rem;
  }
}
*/


/* Webform */
.block-webform > .content > a {
  display: inherit;
}

.webform-submission-form, .node form {
  background-color: rgba(128, 128, 128, 0.1);
  padding: 0.5rem 1rem 0.5rem 1rem;
}

.webform-submission-form fieldset, .node form fieldset, .node form details {
  background-color: #fff;
}
.webform-submission-form .form-group, .node form:not(.search-block-form) .form-group {
  margin-bottom: 0.5rem;
  padding-right: 0;
  padding-left: 0;
}
.webform-submission-form label, .node form label {
  margin-bottom: 0;
}
.webform-submission-form label.form-check, .node form label.form-check {
  padding-left: 0.2rem;
}
.webform-submission-form .form-text, input.form-text {
  margin-top: 0;
}
.webform-submission-form .form-control, .node form:not(.search-block-form) .form-control,
.webform-submission-form .form-select, .node form:not(.search-block-form) .form-select {
  height      : calc(1.5em + .3rem + 2px);
  padding     : .15rem .3rem;
  line-height : 1.3;
}
.webform-submission-form textarea.form-textarea.form-control,
.node form textarea.form-textarea.form-control {
  height: inherit;
}
.webform-submission-form fieldset legend,
.node form fieldset legend,
.node form details legend {
  font-size: 1rem;
}
.webform-submission-form fieldset.webform-type-fieldset,
.node form fieldset.field-group-fieldset {
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 10px;
}
.webform-submission-form fieldset.webform-type-fieldset > legend,
.node form fieldset.field-group-fieldset > legend {
  padding: 0.2rem;
  margin-top: 0.3rem;
  margin-left: -1.1rem;
}
.webform-submission-form fieldset.webform-type-fieldset > legend span,
.node form fieldset.field-group-fieldset > legend span,
.node form details.field-group-details > summary {
  font-weight: bold;
  background-color: #fff;
  display: inline-block;
  padding: 0 1rem 0 0.8rem;
  letter-spacing: 0.05rem;
  border-radius: 0.2rem;
}
.webform-element-description {
  padding-left: inherit;
  padding-right: inherit;
  font-size: 0.9rem;
}
.webform-submission-form .text-count-wrapper {
  font-size: 0.9rem;
  font-style: italic;
  color: #6c757d;
}
.webform-submission-form .form-actions,
.node form:not(.search-block-form) .form-actions {
  margin-top: 1em;
}
.node form.views-exposed-form .col-auto {
  margin-right : 0.35em;
}
.node form.views-exposed-form .col-auto:nth-last-child(2) {
  margin-right: 1em;
}
.node form.views-exposed-form .form-actions {
  background-color: inherit;
  padding: inherit;
  margin-top: 0;
}
.node form.views-exposed-form .form-actions.mb-3  {
  margin-bottom: 0 !important;
}

.webform-submission-form .form-required::after {
  display: inline-block;
  width: 6px;
  height: 6px;
  margin: 0 0.3em;
  content: "";
  vertical-align: super;
  background-image: url(../../../../core/misc/icons/ee0000/required.svg);
  background-repeat: no-repeat;
  background-size: 6px 6px;
}
.webform-confirmation__message, .webform-confirmation__back {
  padding-top: 1em;
}
.webform-submission-form .btn {
  padding: 0.1rem .5rem;
}
/* kuerzerer Formular-Elemente */
form .item-short {
  width: 25% !important;
  min-width: 5em;
}
form .item-medium {
  width: 50% !important;
  min-width: 10em;
}
form .item-long {
  width: calc(100% - 10em) !important;
  min-width: 10em;
}
form .container-inline > .form-control {
  display: inline-block;
}
form .container-inline > label {
  width: 25%;
  min-width: 10em;
}
.webform-submission-form details > summary {
  color:  var(--dunkelgrau);
}
.webform-submission-form details > .details-wrapper {
  padding-left: 1.2rem;
}
.sidebar-box .webform-submission-form, .node .sidebar-box form {
  background-color: inherit;
  padding: inherit;
}


/* Tabellenformat von bootstrap_barrio rueckgaengig machen */
table {
  font-size: 0.95rem;
}
tr {
  border-bottom: inherit;
  padding: inherit;
  background: inherit;
}
tr td, tr th {
  border: inherit;
  vertical-align: top;
  padding-left: 0;
  padding-right: 1rem;
}
tr td:last-of-type, tr th:last-of-type {
  padding-right: 0;
}

.field--type-entity-reference {
  margin-bottom: 0;
}

/* Tabelle fuer zwei Spalten mit Werteliste der Form "Bezeichnung (th): Wert (td)" */
table.table-label-value {
  font-size: inherit;
}
table.table-label-value th, table.table-label-value td {
  border-top: 0;
  border-bottom: 0;
}
table.table-label-value th {
  background-color: unset;
  color: unset;
  font-weight: normal;
  max-width: 30%;
}
/* Gruppierungen in Tabellen sollen oben sein. (bootstrap setzt caption auf bottom) */
.views-table caption {
  caption-side: inherit;
}

.table-sm td, .table-sm th {
  padding: 0.2rem;
  border-top: none;
}

.table.valign-middle td, .table.valign-middle th {
  vertical-align: middle;
}

.field-group-icon {
  position: relative;
  padding-left  : 1.75rem;
  margin-bottom : 0.5rem;
}
.field-group-icon i:first-of-type {
  margin-left : -1.75rem;
  position: absolute;
  top: 0.2rem;
  font-size: 1.25rem;
}
.field-group-icon p {
  margin-bottom: 0.5rem;
}

.mlagicon-inline  {
  vertical-align: middle;
}

/* vergroesserte Schrift von bootstrap_barrio rueckgaengig machen */
.node__content {
  font-size: inherit;
  margin-top: 0;
}

/* fixed-Meldungen von bootstrap_barrio rueckgaengig machen */
body .alert-wrapper {
  position: relative;
  z-index: inherit;
  overflow: auto;
}

/* grosse Abstaende bei Aufklapp-Knoepfen von bootstrap_barrio rueckgaengig machen */
.js td .dropbutton-multiple {
  margin-right: 0;
  padding-right: 0;
}

/* Rahmen bei Knoepfen von bootstrap_barrio rueckgaengig machen */
.btn-primary, .ui-dialog .btn-primary, .ui-dialog .button {
  border: 0;
  background:  var(--blau);
  font-size: inherit;
  font-family: inherit;
  color: white;
  padding: .5rem 1rem;
}
.webform-submission-form .form-actions .btn-primary {
  padding : .5rem 1rem;
}
.btn-primary:hover, .btn-primary:focus, .ui-dialog .btn-primary:hover, .ui-dialog .btn-primary:focus {
  background-color: var(--dunkelblau);
  color: white;
}
.btn-primary.webform-button--reset, button[id^="edit-reset"] {
  background-color: var(--grau);
  margin-left: 1rem;
}
.btn-primary.webform-button--reset:hover, button[id^="edit-reset"]:hover,
.btn-primary.webform-button--reset:focus, button[id^="edit-reset"]:focus {
  background-color: var(--dunkelgrau);
}


.generic-button,
.entity-pager-item > a {
  display            : inline-block;
  text-align         : center;
  text-decoration: inherit;
  vertical-align     : middle;
  padding            : .375rem 1rem;
  font-size          : 1rem;
  line-height        : 1.5;
  border-radius      : 0;
  min-width          : 7.5rem;
  margin-bottom      : 0.25rem;
  transition         : background-color 0.25s ease;
  background-color   :  var(--blau);
  color              : white !important;
}

.generic-button:active, .generic-button:hover, .generic-button:focus {
  /*background-color : var(--rot-d);*/
  filter: grayscale(30%);
}

.generic-button.back::before, .generic-button.next::before,
.generic-button.up::before, .generic-button.down::before,
a.back::before, a.next::before, a.up::before, a.down::before,
.entity-pager-item-prev > a::before, .entity-pager-item-next > a::after {
  display: inline-block;
  line-height: 100%;
  margin-right: 0.4em;
  margin-left: -0.2em;
}
/*.entity-pager-item-prev > a::before,*/
/*.entity-pager-item-next > a::after {*/
/*  font-family: Arial, sans-serif;*/
/*}*/
.generic-button.back::before, a.back::before, .entity-pager-item-prev > a::before {
  /*content: "⯇"; !* "\25C0"; *! !* triangle left "⯇ ◂ *!*/
  /*content: "‹";*/
  content: "➤";
  transform: rotate(-180deg);
}
.generic-button.next::before, a.next::before, .entity-pager-item-next > a::after {
  /*content: "⯈"; !* "\25B6"; *! !* triangle right "⯈ ▸ *!*/
  /*content: "›";*/
  content: "➤";
}
.entity-pager-item-next > a::after {
  margin-right: -0.2em;
  margin-left: 0.4em;
}
.generic-button.up::before, a.up::before {
  /*content: "⯅"; !* "\25B2"; *! !* triangle up "⯅" *!*/
  content: "➤";
  transform: rotate(-90deg);
  vertical-align: text-bottom;
}
.generic-button.down::before, a.down::before {
  /*content: "⯆"; !* "\25BC"; *! !* triangle down "⯆" *!*/
  content: "➤"; /* "\25BC"; */ /* triangle down "⯆" */
  transform: rotate(-90deg);
}

.generic-button.small {
  min-width: inherit;
  padding: 0.2rem 0.55rem;
}
.generic-button.wide {
  width: 100%;
}

ul.menu ul {
  margin-left: 1rem;
}

blockquote, p.blockquote, div.blockquote, div.post-note {
  border-left: 3px solid  var(--grau);
  padding: 1rem;
  margin: 1rem 0;
  background-color: var(--lichtgrau);
}
blockquote p:last-child {
  margin-bottom: 0;
}
blockquote.r-blau {
  border-left-color: var(--blau);
  background-color: var(--lichtblau);
}
blockquote.r-dunkelblau {
  border-left-color: var(--dunkelblau);
  background-color: var(--lichtblau);
}
blockquote.r-hellgrau {
  border-left-color: var(--hellgrau);
}


a.picture-link {
  display: block;
}
.sidebar-box a.picture-link {
  padding-left: 0;
}


.view-filters {
  background-color: var(--lichtgrau);
  padding: 15px;
  margin-bottom: 1em;
}
/* Exposed Filter in Views ausblenden (z.B. bei ineinander verschachtelten Views) */
.hide-view-filters .view-filters {
  display: none;
}
/* Sonderklassen, die am Eltern-Element gesetzt werden, um view-content zu beeinflussen */
.view-content--ml--3 .view-content {
  margin-left: -1rem;
}

.sidebar-box,
.layout__region--aside,
.box-item,
.box-item h2, .box-item h3, .box-item h4 {
  hyphens: auto;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
}

/*ul.list-unstyled, article ul.list-unstyled {*/
/*  margin: 0;*/
/*}*/
/*ul.list-unstyled > li:before, article ul.list-unstyled > li:before, article ul.dropbutton > li::before {*/
/*  content: none !important;*/
/*}*/
/*ul.list-unstyled > li ul:not(.list-unstyled) {*/
/*  margin-left: 1em;*/
/*}*/

/* Icons zu manchen Links hinzufügen (Grundkonfiguration über Modul extlink)
  aber einige externe Links sollen keine Icons erhalten (aber dennoch in einem neuen Fenster aufgehen!)
*/
.no-extlink span.extlink,
ul.links.icon span.extlink,
.box-item span.extlink {
  display: none;
}

/* Download */
a[href$=".pdf"] span.text-link-icon:before,
a[href$=".dot"] span.text-link-icon:before,
a[href$=".doc"] span.text-link-icon:before {
  content: "\e901";
}
/* interner Link mit Icon */
a.link-intern:before {
  content: "\e908";
  font-family: 'mlag-ui', sans-serif;
  font-size: 0.75em;
  margin-right: 0.4em;
}
/* Download Link mit Icon */
a.link-download:before {
  content: "\e901";
  font-family: 'mlag-ui', sans-serif;
  font-size: 0.75em;
  margin-right: 0.4em;
}
/* Kontaktperson Link mit Icon */
a.link-kontakt:before {
  content: "\e91e";
  font-family: 'mlag-ui', sans-serif;
  margin-right: 0.2em;
}
/* Link mit Icon Karte/Ort */
a.link-karte:before {
  content: "\e90e";
  font-family: 'mlag-ui', sans-serif;
  margin-right: 0.2em;
}

/*.sidebar-box > .content > .without-picture {*/
/*  padding: 1rem 1rem 0.1rem 1rem;*/
/*}*/
/*!* letzter Absatz in einer Box ohne Abstand unten *!*/
/*.sidebar-box > div > p:last-child {*/
/*  margin-bottom: 0;*/
/*}*/

/*.sidebar-box > .content > .without-picture  > ul:not(.list-unstyled) {*/
/*  padding-left: 1rem;*/
/*}*/

.block.sidebar-box {
  padding-bottom: 1rem;
}
.block.sidebar-box > .block-title {
  padding: 1rem 1rem 0 1rem;
}
.block.sidebar-box > div:not(.container-flex) {
  padding: 0 1rem 1rem 1rem;
}
.block.sidebar-box {
  padding: 0;
  border-radius: 1rem;
}
.block.sidebar-box > .content > .row {
  margin-left: 0;
  margin-right: 0;
}
.block.sidebar-box > .content > .row > div:first-child {
  margin-top: 1rem;
}
.block.sidebar-box > .content > .row > div.picture-top {
  margin: 0 0 1.5rem 0;
  padding: 0;
}
.block.sidebar-box > .content > .row > div.picture-bottom {
  margin: 0.5rem 0 0 0;
  padding: 0;
}
.block.sidebar-box > .content > .row > div.picture-top-text,
.block.sidebar-box > .content > .row > div.picture-bottom-text {
  padding-bottom: 1rem;
}

/* Anpassungen fuer Bloecke, die fast global vorkommen */
.block-mlag-block-contact .field--name-field-bemerkung {
  margin-top: 0.5rem;
}

.view-display-id-block_listitem {
  border: 1px solid lightgrey;
  padding: 0.5rem;
  margin-bottom: 1rem;
}

.block-back-link {
  padding: 0.5rem 0 1rem 0;
}
.block-back-link .icon {
  font-size: 1.25rem;
  margin-right: 0.5rem;
  vertical-align: top;
}
.sidebar-box .block-back-link {
  padding-left: 1rem;
  padding-bottom: 1rem;
}
.block-back-link a::before {
  margin-left: 0.2rem;
  margin-right: 0.6rem;
}

.block.abstand-unten {
  margin-bottom: 2rem;
}


/* letzten Block in der Sidebar unten ohne Abstand */
.layout__region:not(.layout__region--important) .sidebar-box:last-of-type {
  margin-bottom: 0;
}
/* theiaStickySidebar fuegt ein div.resize-sensor ein ?! */
/*
.theiaStickySidebar > div > .block:last-of-type {
  margin-bottom: 0;
}
*/
/* wenn lange Worte ueberlappen, rutscht die sidebar sonst unter den content */
div.col-12.stickysidebar {
  overflow-x: hidden !important;
}

.box-transparent {
  background-color: inherit;
}

/*.sidebar-box.bg-lighter,*/
/*.main-bg-lighter .layout__region--main,*/
/*.main-bg-lighter .layout__region--important {*/
/*  background-color: #f4f2f0;*/
/*}*/
/*.sidebar-box.bg-darker {*/
/*  background-color: rgba(0,0,0,0.5);*/
/*}*/



.masonry-item {
  width: 100%;
}
.masonry-item .box-item {
  width: inherit;
}
.region-first-lower.masonry-layout .block.masonry-item {
  padding-left: 0;
}


/* Media-Image wenn es im Text-Editor platziert wurde */
.text-formatted .field--type-image,
.contains-text .field--type-image {
  float: unset;
  margin: 0;
}
.text-formatted .field--type-image img,
.contains-text .field--type-image img {
  margin-bottom: 0;
}


/* block gallery */
.gallery .field--type-image {
  margin-right: 0;
  float: none;
}
.gallery > div.row {
  margin-bottom: -1rem;
}
.gallery .picture img  {
  max-width: 100%;
  height: auto;
  margin-bottom: 0;
}
.gallery .picture a {
  display: block;
}
.gallery a:hover img, .gallery a:focus img {
  opacity: 0.7;
}
.gallery .gallery-thumbs-more-info {
  display: none;
}

.block-mlag-block-gallery.gallery-grid .picture .caption {
  position: inherit;
}


.block-mlag-block-video video {
  max-width: 100%;
}

.section-breakout .block-mlag-block-video video {
  width: 100%;
}

.carousel .field--type-image {
  float: none;
  margin-right: 0;
}
.carousel .field--type-image img {
  margin-bottom: 0;
}
.carousel .carousel-control-prev, .carousel .carousel-control-next {
  opacity: 0.9;
}
.carousel .carousel-control-prev-icon, .carousel .carousel-control-next-icon {
  background-color: var(--blau);
  border-radius: 50%;
}
.carousel .carousel-control-prev:hover, .carousel .carousel-control-next:hover,
.carousel .carousel-control-prev:focus, .carousel .carousel-control-next:focus {
  background-color: rgba(255,255,255,0.2);
}
.carousel .carousel-control-prev:hover .carousel-control-prev-icon,
.carousel .carousel-control-prev:focus .carousel-control-prev-icon,
.carousel .carousel-control-next:hover .carousel-control-next-icon,
.carousel .carousel-control-next:focus .carousel-control-next-icon {
  width: 3rem;
  height: 3rem;
  background-color :  var(--dunkelblau);
  border: 0.3rem solid  var(--dunkelblau);
}


.layout--bootstrap-mlag-one-col .field--type-image {
  margin: 0;
}
.layout--bootstrap-mlag-one-col .field--type-image > a:after {
  content: unset;
}

.layout.masonry-layout .masonry-item .box-item,
.layout.masonry-layout .block-mlag-block-text-picture.masonry-item .without-picture {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.layout.masonry-layout .block-mlag-block-text-picture.masonry-item .contains-picture .text {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}
.layout.masonry-layout .block-mlag-block-text-picture.masonry-item .box-item,
.layout.masonry-layout .block-mlag-block-text-picture-news.masonry-item .box-item {
  padding-left: 0;
  padding-right: 0;
}
.layout.masonry-layout .box-item a {
  color: black;
}
.layout.masonry-layout .box-item:hover a, .layout.masonry-layout .box-item:focus a {
  color: white;
}

div.masonry.row {
  margin-left: -15px;
}

/* neue Version von masonry_views setzt irgendwoher ein 'col-auto' */
/* Container Element der Masonry Ansicht*/
.view-content > .masonry.col-auto,
.masonry-view > .masonry.col-auto {
  padding-left: 0;
  padding-right: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -15px;
  margin-right: -15px;
  max-width: unset;
}

.masonry-layout-frontpage {
  margin-right: -5px;
}
.masonry-layout-nodes-kacheln {
  margin-right: -20px;
}

/* Das eigentliche Masonry Item */
.view-content > .masonry .masonry-item,
.masonry-view > .masonry .masonry-item {
  padding-right: 15px;
  padding-left: 0;
  width: 100%;
}

/* Das eigentliche Masonry Item, wenn es ein Formular ist */
.masonry > form.masonry-item {
  padding-top: 0;
}


/* Verlinkung innerhalb des Masonry Items */
.view-content > .masonry.col-auto a.box-item,
.masonry-view > .masonry.col-auto a.box-item {
  width: 100%;
  margin: 0;
}

/* Masonry-Box in voller Breite (z.B. in Sidebar), wenn einspaltige Ausgabe */
.masonry-item.col-12:not(.col-md-6):not(.col-xl-4):not(.col-xl-3) > .masonry-view-item > a.box-item,
form.masonry-item.col-12:not(.col-md-6):not(.col-xl-4):not(.col-xl-3) > div.box-item {
  width: 100%;
}
/* letzte Masonry-Box unten ohne Abstand */
.masonry > .masonry-item:last-child .box-item {
  margin-bottom: 0;
}

/* Icon in der (Masonry) Box */
.box-icon-wrapper {
  float: right;
  margin: 1em;
}
.box-icon {
  font-size: 3em;
}
.box-icon.small {
  font-size: 0.66em;
}
.box-icon.large {
  font-size: 1.5em;
}

/** Masonry image **/
.masonry-item a.box-item img {
  object-fit: cover;
  width: 100%;
}

.masonry-item a.box-item .image-wrap {
  width: calc(100% + 0.4px);
}

.masonry-item.list-item {
  padding-bottom: 1rem;
}

.block .masonry .masonry-item:last-child,
.masonry-view > .masonry .masonry-item:last-child {
  padding-bottom: 0;
}

.views-view-responsive-grid .views-view-responsive-grid__item-inner,
.views-view-responsive-grid .views-view-responsive-grid__item-inner .box-item {
  height: 100%;
  width: 100%;
}

.block-mlag-block-links .grid-item {
  margin-bottom: 1.5rem;
}
.grid-item .box-item {
  border: 2px solid var(--blau);
  border-radius: 2rem;
  overflow: clip;
  display: block;
  text-decoration: none;
  color: inherit;
  height: 100%;
}
.grid-item .box-item:hover {
  background-color: var(--lichtblau);
}
.grid-item .box-item img {
  margin-bottom: 0;
}
.grid-item .box-item div.text *:last-child {
  margin-bottom: 0;
}

.grid-item .box-item.media-file {
  /*background-color: var(--lichtblau);*/
  padding: 0.5rem 1rem 0.5rem 3.5rem;
  min-height: 4rem;
  align-content: center;
  position: relative;
}
.grid-item .box-item.media-file h4 {
  margin-bottom: 0;
}

.grid-item .box-item a {
  color: inherit;
  text-decoration: inherit;
}

.grid-item .media .icon {
  display: block;
  color: var(--dunkelblau);
  position: absolute;
  left: 0.7rem;
  top: 0.7rem;
}
.grid-item .media .icon svg {
  width: 2.5rem;
  height: 2.5rem;
}

ul.link-list {
  list-style-type: "◉ "; /* "◯" */
  /*list-style-position: outside;*/
  color: var(--blau);
  /*list-style : none;*/
  /*padding    : 0*/
  padding-left: 1rem;
}

ul.link-list li {
  margin : 0.25rem 0
}

ul.link-list a {
  text-decoration: none;
}
ul.link-list a:hover {
  text-decoration: underline;
}


.card-header {
  position         : relative;
  border-top       : none;
  border-bottom    : 1px solid var(--hellblau);
  background-color : transparent;
  border-radius    : 0;
  padding          : .5rem 0
}
.card-header-active {
  padding-bottom: 0;
}

.card-header:first-child {
  border-radius : 0
}

.card-header button {
  width             : 100%;
  display           : flex;
  justify-content   : flex-start;
  align-items       : center;
  white-space       : inherit;
  text-align        : left;
  font-size         : 1.14rem
}

.card-header button  {
  color              : #000;
  background         : transparent;
  box-shadow         : none;
  text-decoration    : none;
  font-weight        : bold
}

.card-header button:hover, .card-header button:focus {
  transition         : .3s ease-in-out
}

.card-header p:empty {
  display : none
}

.card-body, .card-header .btn {
  padding-left  : 0;
  padding-right : 0
}
.card-body {
  padding-top: 0.5rem;
}
.card-header .btn {
  padding-left: 15px;
}
.collapseIcon {
  width    : 1em;
  height   : 1em;
  display  : block;
  /*position : relative*/
  position: absolute;
  top: 1.4em;
  left: 0;
}
.card-header > button > h1 {
  font-size: 1.8rem;
  margin-bottom: 0;
}
.card-header > button > h2 {
  font-size: 1.5rem;
  margin-bottom: 0;
  margin-top: inherit;
}
.card-header > button > h3 {
  font-size: inherit;
  margin-bottom: 0;
}
.collapseIcon.heading-h2 {
  top: 1.4em;
}
.collapseIcon.heading-h3 {
  top: 1.1em;
}

.collapseIcon:before {
  position          : absolute;
  left              : 100%;
  top               : 50%;
  transform         : translate(-50%, -96%);
  transition: transform 0.4s linear;
  /*height            : 100%;*/
  width             : 100%
}

.collapseIconFixed {
  position          : absolute;
  top               : 50%;
  right             : 0;
  transform         : translateY(-50%);
  margin-top        : 1px
}

.card-header .btn:hover, .card-header .btn:focus, .card-header-active .btn {
  color              :  var(--blau) !important;
  text-decoration    : none;
  transition         : color 0.2s ease-out
}

.text-weiss .card-header .btn {
  color: white;
}
.text-weiss .collapseIcon::before {
  border-left-color: white;
}
.text-weiss .card-header .btn:hover,
.text-weiss .card-header .btn:focus,
.text-weiss .card-header-active .btn {
  color: white !important;
}


.akkordeon button.btn:focus {
  box-shadow: none;
}
.akkordeon button:not(.collapsed) .collapseIcon:before {
  transform         : translate(-10%, -60%) rotate(90deg);
  left: auto;
}


.content article .block.akkordeon {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
  border-bottom: 1px solid #cfcecc;
}
.content article .akkordeon .card-header {
  border-bottom: 0;
}

.content .container.akkordeon {
  margin-bottom: 2rem;
  overflow: hidden;
  border-bottom: 1px solid #cfcecc;
}
.content .container.akkordeon > .row {
  margin-left: 0;
  margin-right: 0;
}
.content .container.akkordeon .section-title {
  margin-bottom: 0;
}
.container.akkordeon > .section-title .collapseIcon:before {
  top: 35%;
  border-left-width: 0.75rem;
  border-bottom-width: 0.5rem;
  border-top-width: 0.5rem;
}
.content .container.akkordeon > .section-title .card-header {
  padding: 0;
}
.container.akkordeon > .section-title .card-header .btn {
  padding-left: 1.2em;
}
.container.akkordeon > .section-title.card-header-active .collapseIcon::before {
  left: 25%;
  top: 25%;
}



/* Task-Links wieder auf Standard setzen */
.nav-tabs .nav-link {
  white-space: nowrap;
  font-weight: normal;
  font-size: 1rem;
}
.subpage-image-bg nav.tabs {
  background-color: rgba(255,255,255,0.8);
}

/* Menue-Block (z.B. in einer Sidebar) formatieren */
/* (koennte ggf. vereinfacht werden, wenn dem Block, bzw. der UL passende Standard-Klassen gesetzt werden) */
.main-content .block-menu ul.nav {
  display: inherit;
}
.main-content .block-menu ul.menu {
  padding: 0;
}
.main-content .block-menu ul li.nav-item:before {
  content: none !important;
}
.main-content .block-menu ul li.nav-item .nav-link {
  font-weight: normal;
  font-size: 1rem;
  display: inline;
  padding: 0.1rem 0 0.1rem 1rem;
  line-height: 120%;
  color: inherit;
}
.main-content .block-menu ul li.nav-item a.active {
  font-weight: bold;
}
.main-content .block-menu ul li.nav-item a:after {
  display: none;
}
.main-content .block-menu ul li.nav-item a:hover, .main-content .block-menu ul li.nav-item a:focus {
  color:  var(--blau);
}


/* Media-Image wenn es im Text-Editor platziert wurde */
.text-formatted .field--type-image,
.contains-text .field--type-image {
  float: unset;
  margin: 0;
}
.text-formatted .field--type-image img,
.contains-text .field--type-image img {
  margin-bottom: 0;
}


/* image caption (block text + picture or block gallery) */
.picture .picture-inner {
  position: relative;
}
.picture .picture-inner .caption {
  font-size: 0.85rem;
  background-color: rgba(255,255,255,0.7);
  position: absolute;
  right: 0;
  bottom: 0;
  max-width: 100%;
  text-shadow: 0 0 2px #fff;
  padding-left: 0.3rem;
  padding-right: 0.3rem;
  padding-bottom: 0.2rem;
  line-height: 110%;
}

.picture.width-12 > .picture-inner > .field--type-image {
  float: none;
  margin-right: 0;
}

/* Autocomplete Vorschlaege in der Suche im Menuebrett sichtbar machen?! */
.ui-autocomplete {
  z-index: 2000;
}


.welle-hoch {
  background-image: url(../images/bg-welle-hoch.png);
  background-size: max(1000px, 100%) 68vw;
  background-position-y: bottom;
  background-repeat: no-repeat;
  padding-bottom: 42vw;
}

.bg-verlauf-blau {
  margin-top: -10vw;
  padding-top: 0;
  background: rgb(1,163,210);
  background: linear-gradient(90deg, rgba(1,163,210,1) 0%, rgba(106,202,240,1) 100%);
  background-size: max(1000px, 100%);
}

.welle-flach {
  background-image: url(../images/bg-welle-flach.png);
  background-size: cover;
  height: 38vw;
}


footer.site-footer {
  background-color: inherit;
  font-family: inherit;
}

@media (min-width: 851px) {
  .site-footer__top .region {
    /* width: 48%; */
  }
}

.site-footer .content {
  font-size: inherit;
  color: inherit;
}
.site-footer .block,
.site-footer__bottom {
  border: none;
}

.site-footer a {
  text-decoration: none;
  text-shadow: 0 0 1px white;
}
.site-footer a:hover {
  text-decoration: underline;
}

.site-footer input[type="search"],
.site-footer button {
  height: 2.5rem;
}
.site-footer .form-actions {
  margin-left: 0.5rem;
}

  /* Seiten ohne Abstand zum Footer ermöglichen */
body.no-space-before-footer section {
  padding-bottom: 0;
}
body.no-space-before-footer .footer {
  margin-top: 0 !important;
}

/* Colorbox Pop-Up (Bildergalerie, bzw. Buchen-iFrames, ...) */
#cboxOverlay {
  background-color: #d1cbc6;
}

section.full-width {
  width: calc(100vw - calc(var(--scrollbar-width) / 2));
}

.section-breakout, .backdrop-breakout {
  /*width: calc(100vw - calc(var(--scrollbar-width) / 2));*/
  max-width: calc(100vw + 4px);
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  /*padding: 2em 0;*/
}
.section-breakout:not(.w-container) > .container {
  max-width: inherit;
}
.section-breakout:not(.w-container) > .container > div.row > div.col-12 {
  padding: 0;
}

.background-cover {
  background-size: cover;
}

.subpage-image-bg.backdrop-blur {
  padding-top: 0;
}



/* Preview Toolbar */
.node-preview-container {
  z-index: 1050!important;
}

@supports (-webkit-touch-callout: none) {
  /* CSS specific to iOS devices with small resolution (problems with safari mobile) */
  @media (max-width: 768px) {
    #popup-message-window {
      width: unset;
    }
    #popup-message-window img {
      max-width: 100%;
      max-height: 100%;
    }
  }
}

/* Node views */
article > a:after,
article > a:hover::after,
a.node:after,
a.node:hover::after {
  content: unset;
}

article > a,
a.node {
  color: black;
}

/* Page */
article .field.image-left-notext {
  display: flex;
  justify-content: left;
}
article .field.image-center {
  display: flex;
  justify-content: center;
}
article .field.image-right-notext {
  display: flex;
  justify-content: right;
}
article .field.image-left-textwrap {
  display: inline;
  float: left;
  padding-right: 15px;
}
article .field.image-right-textwrap {
  display: inline;
  float: right;
  padding-left: 15px;
}

article .field.image-full-top {
  margin: -1rem -1rem 0;
}

article .field.image-full-top img {
  width: 100%;
}

@media (min-width: 576px) {
  article .field.image-full-top {
    margin: -1.5rem -1.5rem 0;
  }
}

@media (min-width: 768px) {
  article .field.image-full-top {
    margin: -2rem -2rem 0;
  }
}

/* Kontakt sidebar */
.block .field--name-field-kontakt .field__item:not(:last-of-type) {
  border-bottom: 1px solid var(--blau);
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}


.websitetype-marker {
  position: absolute;
  top: 0;
}



/* Block mit rundem Bild */
.block-rund-rand .row.contains-picture {
  margin: auto;
  max-width: 60vw;
}
.block-rund-rand .field--type-image {
  border-radius: 50vw;
  position: relative;
  overflow: clip;
}
.block-rund-rand .field--type-image:before {
  content: "";
  display: block;
  aspect-ratio: 1;
  border-radius: 50vw;
  position: relative;
  transform: rotate(0deg);
  background: linear-gradient(90deg, var(--hellgrau) 40%, var(--lichtblau) 50%, var(--hellgrau) 60%);
  animation: drehen 5s infinite linear;
}
.block-rund-rand .field--type-image img {
  width: calc(100% - 2 * var(--randbreite));
  position: absolute;
  top: 0;
  border-radius: 50vw;
  aspect-ratio: 1;
  margin: var(--randbreite);
  box-sizing: border-box;
  /*filter: sepia(50%) hue-rotate(150deg) saturate(200%);*/
}
@keyframes drehen {
  to {
    transform: rotate(360deg);
  }
}

img.bild-lichtblau,
.bild-lichtblau img,
.block-rund-rand:not(.bild-normal) .field--type-image img,
.block-halbrund-rand:not(.bild-normal) img {
  filter: grayscale(30%) sepia(50%) hue-rotate(150deg) saturate(100%);
}

.block-halbrund-rand {
  border-color: var(--hellgrau);
  border-width: var(--randbreite);
  border-radius: 0 0 50vw 50vw;
  border-style: solid;
  max-width: 60vw;
  margin: auto;
  /* background: linear-gradient(135deg, var(--grau) 40%, var(--lichtgrau) 50%, var(--grau) 60%); */
}
.block-halbrund-rand img {
  /* width: calc(100% - 2 * var(--randbreite)); */
  border-radius: 0 0 50vw 50vw;
  /* margin: var(--randbreite); */
  box-sizing: border-box;
  margin-bottom: 0;
}

.bild-rund img, img.bild-rund {
  border-radius: 50vw;
}

.bild-halbrund img, img.bild-halbrund {
  border-radius: 0 0 50vw 50vw;
}

.block-rund {
  border-radius: 50vw;
  aspect-ratio: 1;
  align-content: center;
  text-align: center;
  padding: 2vw !important;
}


.block-halbrund {
  border-radius: 0 0 50vw 50vw;
  padding-bottom: 5vw !important;
  min-height: 50vw;
}

.block-rand,
img.bild-rand,
.bild-rand img {
  border-color: var(--hellgrau);
  border-width: var(--randbreite);
  border-style: solid;
}


/* Block Mlag Number */
.block-mlag-block-number .large-text {
  text-align: center;
  align-items: center;
}
.block-mlag-block-number .large-text > span {
  font-size: 3em;
  font-weight: bolder;
  color: var(--dunkelblau);
  line-height: 120%;
}
.block-mlag-block-number .small-text {
  text-align: center;
  font-size: 1.7em;
  color: var(--grau);
}

/* Stellenangebote als Kacheln */
.jobliste .box-item.job-item {
  align-content: center;
  text-align: center;
  padding: 1rem;
}
.jobliste .box-item.job-item h3 {
  margin-bottom: 0;
}


/* Vor-/Zurück Links bei bei Views */
@media (min-width: 576px) {
  .entity-pager-list {
    display: table;
    width: 100%;
  }
  .entity-pager-list .entity-pager-item {
    width: 33%;
    display: table-cell;
  }
  .entity-pager-list .entity-pager-item .inactive {
    display: none;
  }
  .entity-pager-list .entity-pager-item-prev {
    text-align: left;
  }
  .entity-pager-list .entity-pager-item-all {
    text-align: center;
  }
  .entity-pager-list .entity-pager-item-next {
    text-align: right;
  }
}

/* Pager (Seiten vor/zurück) bei Views */
ul.pagination {
  margin-top: 2rem;
  --bs-pagination-color: #25a1dc;
  --bs-pagination-active-bg: #226a98;
}

/* besondere (mittige) Darstellung von Blöcken mit Bild links und Text rechts */
.region-blocks-full-height .block {
  height: 100%;
}
.block-bild-text-mittig {
}
.block-bild-text-mittig .picture,
.block-bild-text-mittig .text {
  padding: 1rem;
  align-content: center;
}


/* Neuerdings hat sich das Layout der Status-Meldungen geändert?! */
div.alert > svg {
  max-width: 1rem;
  max-height: 1rem;
  margin-right: 0.5rem;
  opacity: 0.6;
}
div.alert > div > h2,
div.alert > div > hr:first-of-type,
div.alert > button.btn-close {
  display: none;
}



/* Farben für Texte */
.text-primary {   color: var(--blau) !important; }
.color-blau, .text-blau { color:  var(--blau); fill:  var(--blau); }
.text-hellblau {  color: var(--hellblau); fill: var(--hellblau); }
.text-dunkelblau {  color: var(--dunkelblau); fill: var(--dunkelblau); }
.text-grau {      color: var(--grau); fill: var(--grau); }
.text-hellgrau {      color: var(--hellgrau); fill: var(--hellgrau); }
.text-dunkelgrau {      color: var(--dunkelgrau); fill: var(--dunkelgrau); }
.text-weiss {     color: white;   fill: white; }
.text-schwarz {   color: black;   fill: black; }

.bg-primary {   background-color: var(--blau) !important; }
.bg-secondary { background-color: var(--grau) !important; }

.bg-light {     background-color: var(--lichtgrau) !important; }
.bg-blau {      background-color: var(--blau); }
.bg-hellblau {  background-color: var(--hellblau); }
.bg-dunkelblau {  background-color: var(--dunkelblau); }
.bg-lichtblau {  background-color: var(--lichtblau); }
.bg-grau {      background-color: var(--grau); }
.bg-hellgrau {      background-color: var(--hellgrau); }
.bg-dunkelgrau {      background-color: var(--dunkelgrau); }
.bg-lichtgrau {      background-color: var(--lichtgrau); }
.bg-weiss {     background-color: white; }
.bg-schwarz {   background-color: black; }
