a:focus-visible,
button:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid var(--bs-primary)!important;
  outline-offset: 2px;
}

.card-link:focus,
.btn-link:focus {
  outline: 2px solid var(--bs-primary);
  outline-offset: 2px;
  border-radius: 4px;
}

.card-link:focus img,
.btn-link:focus {
  box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.5); /* Optional: zusätzliche Sichtbarkeit */
}



.glightbox-clean .gslide-description,
.glightbox-modern .gslide-description {
  background: var(--bs-body-bg);
}

.bg-darkblue {
  background-color:rgb(33, 63,96)!important;
}



/* Hamburger Menü zu X */
.navbar-toggler-icon {
position: relative;
width: 24px;
height: 2px;
transition: all 0.3s ease;
}
/* Zusätzliche Linien erstellen */
.navbar-toggler-icon::before,
.navbar-toggler-icon::after {
content: '';
position: absolute;
width: 24px; /* Gleiche Breite wie die Hauptlinie */
height: 2px;
transition: all 0.3s ease;
}
.navbar-toggler-icon::before {
top: -8px; /* Abstand nach oben */
left: 0;
}
.navbar-toggler-icon::after {
top: 8px; /* Abstand nach unten */
left: 0;
}
/* Standardfarben für Light Mode */
.navbar-toggler-icon,
.navbar-toggler-icon::before,
.navbar-toggler-icon::after {
background-color: black;
}
[data-bs-theme="dark"] .navbar-toggler-icon,
[data-bs-theme="dark"] .navbar-toggler-icon::before,
[data-bs-theme="dark"] .navbar-toggler-icon::after {
background: #fff !important;
}
/* Aktiver Zustand: Linien in ein X verwandeln */
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
background: none!important; /* Mittlere Linie verstecken */
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::before {
transform: rotate(45deg);
top: 0; /* In die Mitte bewegen */
}
.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::after {
transform: rotate(-45deg);
top: 0; /* In die Mitte bewegen */
}



.navbar-expand-lg .navbar-nav .dropdown-menu.show {
  top: 100%;
  visibility: visible;
  opacity: 1;
}


/*shariff*/
.shariff li a {color: var(--bs-gray-800);}
.shariff li a:hover {color:#fff;}

.shariff .twitter .fa-x-twitter, 
.shariff .threema .fa-lock,
.shariff .facebook .fa-facebook-f,
.shariff .whatsapp .fa-whatsapp {
  font-size:inherit
}

.shariff .orientation-horizontal li {
    margin-right: 0;
  }

.shariff .facebook .fa-facebook-f {
  color: inherit !important;
}

/* cookiebanner */
#theme-dialog {
  z-index:9999!important;
}

.card-img-scale .card-img {
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
  object-fit: cover;
  height: 100%;
}

.sztitle{
  font-size: 70%;
}

.sznumber{
  color: #f70000; 
  font-size: 2em !important;
  font-family: 'DS-Digital';
  line-height: 1.3;
}

// zoom und hover Text für masonry Gallery

.zoom-wrapper {
  overflow: hidden; /* Bild darf nicht rauslaufen */
  transition: transform 0.4s ease-in-out;
}

.zoom-image {
  transition: transform 0.4s ease-in-out;
}

.zoom-wrapper:hover .zoom-image {
  transform: scale(1.1); /* Hier passiert der Zoom-Effekt */
}

.hover-text {
  opacity: 0; /* Text ausblenden */
  background: rgba(0, 0, 0, 0.6); /* Dunkler Overlay-Effekt */
  transition: opacity 0.4s ease-in-out;
  pointer-events: none; /* Damit der Text nicht den Hover blockiert */
}

.zoom-wrapper:hover .hover-text {
  opacity: 1; /* Text einblenden */
}

figure{position: relative;}
figure.image{text-align: center;border: solid 1px #ccc;border-radius: 2px;background: rgba(0,0,0,0.05);padding: 10px;display: inline-block;}
figure.image[style*="float:left"]{margin: 5px 20px 10px 0;}
figure.image[style*="float:right"]{margin: 5px 0 10px 20px;}
figure.image[style*="display:inline-block"]{margin:20px;}
figure.image figcaption{margin-top: 10px;font-size: 12px;}
figure.image > figcaption{text-align: center;display: block;}
figure.image-grayscale img{filter: grayscale(100%);}
figure.image-clean{border: 0;background: none;padding: 0;}
figure.image-clean > figcaption{font-size: .9em;text-align: right;}


.gs-day-wrapper {
  position: relative;
  display: inline-block;
}

.gs-day-main {
  font-size: 1.5rem;
  font-weight: bold;
}

.gs-day-end {
  font-size: 0.75rem;
  vertical-align: top;
  display: inline-block;
  line-height: 1.1rem;
}

.gs-meta{
  font-size: 0.75rem;
}

.copyright a {
  color: rgba(var(--bs-light-rgb))!important;
}

/* Für das gesamte Accordion */
#accordionEvents {
  --bs-accordion-active-color: white;
  --bs-accordion-btn-bg: transparent;
}



#accordionEvents .accordion-item:nth-child(even) {
  background-color: var(--bs-light); 
}

#accordionEvents .multiday {
  background: repeating-linear-gradient(135deg,var(--bs-light), var(--bs-light) 10px, rgba(250,250,250,0.8) 10px, rgba(250,250,250,0.8) 20px) !important;
}

[data-bs-theme="dark"] #accordionEvents .multiday {
  background: repeating-linear-gradient(135deg,var(--bs-light), var(--bs-light) 10px, rgba(var(--bs-dark-rgb),0.8) 10px, rgba(var(--bs-dark-rgb),0.8) 20px) !important;
}

@media (max-width: 991px) {
  #accordionEvents .accordion-button::after {
    content: none;
    display: none;
  }
}

.ts-dropdown, .ts-control, .ts-control input {
  color: var(--bs-gray-700)!important;
}


[data-bs-theme="dark"] .leaflet-layer,
.leaflet-control-zoom-in,
.leaflet-control-zoom-out,
.leaflet-control-attribution {
  filter: invert(100%) hue-rotate(180deg) brightness(95%) contrast(90%);
}

[data-bs-theme="dark"] .leaflet-container {
  background-color: transparent;
}

[data-bs-theme="dark"] .shariff .threema a:hover {
  background-color: #000;
}

@media (min-width: 768px) {
  .float-md-box {
    float: right;
    width: 350px;
    margin: 0 0 1rem 1rem;
  }
}

[data-bs-theme="dark"] .link-theme-aware {
  color: #ffffff !important;
}

.btn-link {
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.3s ease 0.2s;
  background: none;
}

.btn-link:hover,
.btn-link:focus {
  text-decoration-color: currentColor;
}

.leaflet-popup-content {
  margin: 13px 5px!important;
}

.leaflet-container {
  font-family: var(--bs-body-font-family)!important;
}