/*div {
  border: 1px solid blue;}*/
:root {
  --button-back-color: var(--mainColor);
  --button-hover-back-color: var(--mainColorLight);
  --button-hover-border-color: var(--mainColor);
  --drawer-back-color: var(--mainColor);
  --drawer-close-color: var(--mainColorLight);
  --footer-fore-color: var(--mainColorLight);
  --footer-back-color: var(--mainColor);
  --header-back-color: var(--mainColor);
  --header-hover-back-color: var(--mainColorLight);
  --header-hover-fore-color: var(--mainColor);
  --header-border-color: var(--mainColor);
  --nav-fore-color: var(--mainColorLight);
  --nav-back-color: var(--mainColor);
  --secondary-fore-color: #6e6e6e;
}

@media print {
  .noprint {
    visibility: hidden !important;
    display: none !important;
  }

  div {
    background-color: transparent !important
  }

  .ortZeit {
    background-color: black !important;
    color: white !important;
  }
}

@media screen {
  .noscreen {
    visibility: hidden !important;
    display: none !important;
  }
}

.nopagebreakafter {
  page-break-after: avoid;
}

body {
  font-family: Roboto, Helvetica, Arial, Verdana, sans-serif;
  font-size: calc(1rem * 2);
}

a:focus-visible {
  outline: 4px dashed darkorange;
}

.ci_chef {
  color: var(--bibblue)
}

.ci_kibi {
  color: var(--bibgreen)
}

.ci_jugend {
  color: var(--bibturkis)
}

.mainColor {
  background-color: var(--mainColor);
}

.mainColorLight {
  background-color: var(--mainColorLight);
}

h1, h2, h3, h4 {
  margin-left: 0;
}

.headTop {
  background-color: var(--mainColor);
  color: white;
  padding: 0;
}

.headTop a {
  color: white;
  text-decoration: none;
}

.headTop a:visited {
  text-decoration: none;
}

.headTop a:before {
  content: "";
  font-size: 0px
}

.headTop summary {
  text-decoration: none;
}

.headTop a:hover {
  color: white;
  text-decoration: none;
}

.vdb header .button:hover {
  color: var(--header-hover-fore-color);
}

summary:hover {
  cursor: pointer;
}

.kachel {
  /*padding:2%;*/
  background-color: var(--mainColorLight);
}

.svgCont {
  display: inline-block;
  height: 0.65em;
  padding-right: 0.3em;
}

.svgCont svg {
  fill: var(--secondary-fore-color);
}

.svgB {
  display: inline-block;
  height: 1.5em;
  padding-right: 0.5em;
}

.svgB svg {
  fill: var(--mainColorLight);
}

.svgPinCont {
  display: inline-block;
  height: 1em;
  padding-right: 0.3em;
}

.svgPinCont svg {
  fill: var(--mainColorLight);
  height: 100%;
  margin-bottom: -0.15em;
}

#svgPinCircle {
  stroke: var(--mainColorLight);
}

/* Auswahl und Erweiterte Suche*/
.auswahldrop {
  width: calc(100% - 40px);
}

.auswahldrops label {
  font-weight: bold;
}

#btnResetAuswahl {
  margin-left: 0px;
  margin-right: 1px;
  font-weight: bold;
}
button[id^="btnReset"] {
  margin-left: 0px;
  margin-right: 1px;
  font-weight: bold;
}
#allesZumLink {
  padding: calc(var(--universal-padding) / 2) var(--universal-padding);
  font-size: 0.9rem;
  padding-top: 0;
}

.monat, .infoText {
  font-weight: bold;
  margin-bottom: 0.5vh;
}

.monat {
  border-bottom: 1px solid #000;
}

.monat h1 {
  margin-bottom: 0;
}

.vaContainer {
  padding: 0 0 0 1%;
}

.ortZeit {
  padding-left: 0.5em;
  font-weight: bold;
  margin-bottom: 4px;
  background-color: var(--mainColor);
  color: white;
}

.ueberschrift {
  font-weight: bold;
  color: black;
  margin-bottom: 4px;
  font-size: 1.1em
}

.unterueberschrift1 {
  color: black;
  margin-bottom: 11px;
}

.unterueberschrift2 {
  font-style: italic;
  color: var(--secondary-fore-color);
  margin-bottom: 11px;
}

.beschreibung p {
  margin-left: 0;
}

.beschreibung2 {
  margin-bottom: 11px;
}

a:link {
  /* text-decoration: underline; */
  color: var(--mainColor);
  text-decoration-color: var(--mainColor);
}

a:visited {
  text-decoration: none;
  color: var(--mainColor);
}

a.nomark:before {
  content: "";
  font-size: 0px
}

a.nomark:link {
  text-decoration: none;
}

summary {
  text-decoration: none;
}

a:hover {
  color: black;
}

.kachel a,
.kachel a:link,
.kachel a:visited {
  text-decoration: none;
}

a.button:link,
a.button:visited,
a.linkTopline:link,
a.linkTopline:visited {
  color: var(--mainColorLight);
  background-color: var(--mainColor);
  text-decoration: none;
}

a.linkTopline:hover {
  color: var(--mainColor);
  background-color: var(--mainColorLight);
}

a.linkTopline:hover,
a.button:hover {
  color: var(--mainColor);
  background-color: var(--mainColorLight);
}

a.dropbtn:link {
  text-decoration: none;
}

/* Textzeile unter dem Veranstaltungstext*/
.linkFormatReihen {
  color: var(--secondary-fore-color);
}

.linkFormatReihen a:link,
.linkFormatReihen a:visited {
  color: var(--secondary-fore-color);
  text-decoration: underline;
  text-decoration-color: var(--secondary-fore-color);
}

.linkFormatReihen a:hover {
  text-decoration: underline;
  text-decoration-color: var(--mainColor);
  color: var(--mainColor);
  text-decoration-color: var(--mainColor);
}

.ci_0 {
  color: var(--bibblue)
}

.ci_1 {
  color: var(--bibblue)
}

.ci_2 {
  color: var(--bibturkis)
}

.ci_3 {
  color: var(--bibgreen);
  -webkit-text-stroke: 0.5px #719300;
}

.ciback_chef {
  background-color: var(--bibblue)
}

.ciback_kibi {
  background-color: var(--bibgreen)
}

.ciback_jugend {
  background-color: var(--bibturkis)
}

.ciback_0 {
  background-color: var(--bibblue)
}

.ciback_1 {
  background-color: var(--bibblue)
}

.ciback_2 {
  background-color: var(--bibturkis)
}

.ciback_3 {
  background-color: var(--bibgreen);
  -webkit-text-stroke: 0.3px #719300;
}

#vaHeadLink1:hover svg,
#vaHeadLink1:hover #svgPinCircle,
#vaHeadLink5:hover svg,
#vaHeadLink5:hover #svgPinCircle {
  fill: var(--bibblue);
  stroke: var(--bibblue);
}

#vaHeadLink2 {
  background-color: var(--bibturkis);
  color: white;
}

#vaHeadLink2,
#vaHeadLink2:visited {
  background-color: var(--bibturkis);
}

#vaHeadLink2:hover {
  background-color: white;
  color: var(--bibturkis);
}

#vaHeadLink2:hover svg,
#vaHeadLink2:hover #svgPinCircle {
  fill: var(--bibturkis);
  stroke: var(--bibturkis);
}

#vaHeadLink3,
#vaHeadLink3:visited {
  background-color: var(--bibgreen);
}

#vaHeadLink3:hover {
  background-color: white;
  color: var(--bibgreen);
}

#vaHeadLink3:hover svg,
#vaHeadLink3:hover #svgPinCircle {
  fill: var(--bibgreen);
  stroke: var(--bibgreen);
}

.vdb a:before {
  content: "";
}

.card img:hover {
  transform: scale(1.02);
}

.card img {
  transition: all 0.4s ease-in-out;
}

.card h3 {
  padding-left: 0.5em;
}

.uebersichtStartseite small {
  line-height: 1;
  padding-top: 0.4em;
}

.backgroundImg {
  padding: 1vh;
  background-position: center;
  background-size: cover;
}

ul li a:before {
  content: "";
  font-size: 0px
}

ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
}

li {
  float: left;
}

li a,
.dropbtn {
  display: inline-block;
  color: var(--mainColorLight);
  text-align: center;
  padding: 6px 12px;
  text-decoration: none;
}

li a:link {
  background-color: var(--mainColor);
  color: var(--mainColorLight);
}

li a:hover,
.dropdown:hover .dropbtn,
.dropdown:focus-within .dropbtn {
  background-color: var(--mainColorLight);
  color: var(--mainColor);
}

.linkTopline:hover .svgB svg{
  fill: var(--mainColor);
}

li a:visited,
.dropdown:hover {
  background-color: var(--mainColor);
  color: var(--mainColorLight);
}

li.dropdown {
  display: inline-block;
}

.dropdown-content {
  display: none;
  position: absolute;
  min-width: 160px;
  box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
  z-index: 1;
  background-color: var(--mainColor);
}

.dropdown-content a {
  padding: 12px 16px;
  text-decoration: none;
  display: block;
  text-align: left;
}

.dropdown a:visited {
  color: var(--mainColorLight);
  background: var(--mainColor);
}

.dropdown:hover .dropdown-content,
.dropdown:focus .dropdown-content,
.dropdown:focus-within .dropdown-content,
.dropdown:focus-visible .dropdown-content {
  display: block;
  color: var(--mainColor);
}

.dropdown-content a:visited {
  color: var(--mainColorLight);
  
}

.dropdown-content a:hover,
.dropdown-content a:focus-within {
  background-color: var(--mainColorLight);
  color: var(--mainColor);
  
}

nav a:visited,
nav a:link {
  color: var(--mainColorLight);
}

/* Menüersatzstriche bei kleinem Bildschirm*/
.drawer-toggle {
  color: var(--mainColorLight);
}

.drawer-toggle:hover,
.drawer:focus-within .drawer-toggle {
  color: var(--mainColor);
  background-color: var(--mainColorLight);
}

input#drawer-control.drawer:focus-within>label[for=drawer-control] {
  color: var(--mainColor);
  background-color: var(--mainColorLight);
}

/* Der Spoiler für die Stadtteile soll etwas größer als die default 400px sein*/
.collapse> :checked+label+div {
  max-height: 500px;
}

/* Suchformular*/
.responsive-label {
  align-items: center;
}

@media (min-width: 768px) {
  .responsive-label .col-md-3 {
    text-align: right
  }
}

#suchForm input[type="text"],
#suchForm input[type="date"],
#suchForm select {
  width: calc(100% - 40px)
}

#suchForm input[type="submit"]:hover {
  color: var(--mainColor);
}

#youtubeWrapper {
  visibility: hidden;
}

#abgesagtText {
 /* background: rgba(255, 255, 255, 0.5);*/
  color: red;
  bottom: 0;
  left: 1em;
  /*transform: rotate(-15deg);
    transform-origin: 0 100%;*/
  font-size: 1.5em;
  font-weight: bold;
  display: inline-block;
}

.event-container {
  position: relative; /* Erlaubt absolute Positionierung des Banners */
  overflow: hidden; /* Verhindert, dass Inhalte über den Rand hinaus angezeigt werden */
  /* Weitere Stile für den Container der Veranstaltung */
}

/*
.cancelled-banner {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-20%, -20%) rotate(45deg);
  transform-origin: center;
  background-color: rgba(255, 0, 0, 0.9);
  color: white;
  text-align: center;
  z-index: 2;
  height: 30px;
  line-height: 30px;
}
*/

/*
.cancelled-banner {
  position: absolute;
  top: 50%;
  left: 30%;
  background-color: rgba(255, 0, 0, 0.7);
  color: white;
  padding: 5px 15px;
  font-size: 1.5em;
  transform: rotate(-20deg);
  z-index: 10;
  box-shadow: 0px 0px 10px #000;
  border: 2px dashed white;
  min-width: 300px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
}

@media (max-width: 600px) {
  .cancelled-banner {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) rotate(-20deg);
    width: 80%;
    min-width: 0;
    font-size: 1em;
  }
}*/

/* Punkte für alterskategorien*/
.akp1, .akp2, .akp3, .akp4, .akp5 {
  height: 1rem;
  width: 1rem;
  border-radius: 50%;
  display: inline-block;
  margin-bottom: -2px;
}

.akp1 {
  background-color: #d20027;
}

.akp2 {
  background-color: #ffed00;
}

.akp3 {
  background-color: #92d5f6;
}

.akp4 {
  background-color: #0086a7;
}

.akp5 {
  background-color: #113c7d;
}
/* Gruppentermine */
.gtCards p {
  color:var(--mainColorLight);
  background-color:var(--mainColor);
  text-align:right;
  padding-right:0.3rem;
  margin:0;
  margin-top: -10px;
}
.gtCards .gtBox {
  padding-bottom:0.5rem;
}
.gtCards a {
  text-decoration:none;
}
.gtCards .imgCont{
  overflow:hidden;
  margin-bottom:-5px;
}
.gtCards .gtTextbox {
  background-color:var(--mainColorLight);
  color:var(--mainColor);
  padding-left:0.3rem;
  padding-bottom:0.2rem;
  line-height: 1;
}
.gtCards .gtTextbox small {
  color:grey;
  text-decoration:none;
}
.gtCards img:hover {
  transform: scale(1.02);
}
.gtCards img {
  transition: all 0.4s ease-in-out;
}

/* Standardmäßige CSS-Regel für große Bildschirme */
.zielgruppen-text {
  float: right;
  padding-right: 1em;
}

/* Media Query für kleinere Bildschirme */
@media (max-width: 768px) {
  .zielgruppen-text {
    float: none;
    padding-right: 0;
    display: block;

  }
}


/* Stil für kleine Bildschirme (z.B. Handys) */
@media (max-width: 767px) {
  .gtBox {
    display: none;
  }
  .gtBox:nth-child(-n+2) { /* Zeigt die ersten zwei Boxen an */
    display: block;
  }
}

/* Stil für mittlere Bildschirme (z.B. Tablets) */
@media (min-width: 768px) and (max-width: 1280px) {
  .gtBox {
    display: none;
  }
  .gtBox:nth-child(-n+3) { /* Zeigt die ersten drei Boxen an */
    display: block;
  }
}

/* Stil für große Bildschirme (z.B. Desktop) */
@media (min-width: 1281px) {
  .gtBox {
    display: none;
  }
  .gtBox:nth-child(-n+4) { /* Zeigt die ersten vier Boxen an */
    display: block;
  }
}