/*
Theme Name: Theme des TSV Ottenbach
Author: Christian Funk - Web und App
Author URI: https://christianfunk-webundapp.de/
Description: Theme für die Website des TSV Ottenbach
Requires at least: 6.4
Tested up to: 6.4
Requires PHP: 7.0
Version: 1.0
*/

/* roboto-100 - 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: 100;
    src: url('../assets/fonts/roboto/roboto-v30-latin-100.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-100.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-100.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-100.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-100.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-100.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* roboto-100italic - 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: 100;
    src: url('../assets/fonts/roboto/roboto-v30-latin-100italic.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-100italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-100italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-100italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-100italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-100italic.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* roboto-300 - 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: 300;
    src: url('../assets/fonts/roboto/roboto-v30-latin-300.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-300.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-300.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-300.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-300.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* roboto-300italic - 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: 300;
    src: url('../assets/fonts/roboto/roboto-v30-latin-300italic.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-300italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-300italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-300italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-300italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-300italic.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* 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('../assets/fonts/roboto/roboto-v30-latin-regular.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* 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('../assets/fonts/roboto/roboto-v30-latin-italic.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-italic.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* 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('../assets/fonts/roboto/roboto-v30-latin-500.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-500.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-500.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-500.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* roboto-500italic - 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: 500;
    src: url('../assets/fonts/roboto/roboto-v30-latin-500italic.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-500italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-500italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-500italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-500italic.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* 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('../assets/fonts/roboto/roboto-v30-latin-700.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-700.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-700.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-700.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* roboto-700italic - 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: 700;
    src: url('../assets/fonts/roboto/roboto-v30-latin-700italic.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-700italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-700italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-700italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-700italic.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* roboto-900 - 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: 900;
    src: url('../assets/fonts/roboto/roboto-v30-latin-900.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-900.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-900.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-900.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-900.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-900.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* roboto-900italic - 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: 900;
    src: url('../assets/fonts/roboto/roboto-v30-latin-900italic.eot'); /* IE9 Compat Modes */
    src: url('../assets/fonts/roboto/roboto-v30-latin-900italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../assets/fonts/roboto/roboto-v30-latin-900italic.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
         url('../assets/fonts/roboto/roboto-v30-latin-900italic.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
         url('../assets/fonts/roboto/roboto-v30-latin-900italic.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
         url('../assets/fonts/roboto/roboto-v30-latin-900italic.svg#Roboto') format('svg'); /* Legacy iOS */
  }


* {
     font-family: 'Roboto';
}

main {
     min-height: calc(100vh - 56px - 154px);
}

h1 {
     font-size: 42px;
     font-weight: 500;
}

h2 {
     font-size: 35px;
}

h3 {
     font-size: 28px;
}

h4 {
     font-size: 28px;
     font-weight: 500;
}

h5 {
     font-size: 24px;
}

h6 {
     font-size: 18px;
     font-weight: 500;
}


/*---------Kontakt-Formular---------*/
.wpcf7-list-item {
     margin: 0;
}

.tsv-cf-row {
     width: 100%;
     display: grid;
     grid-template-columns: 1fr 1fr;
     column-gap: 16px;
}

.tsv-cf-row input {
     width: 100%;
     border: none;
     box-sizing: border-box;
     background-color: unset;
     border-bottom: 1px solid var(--wp--preset--color--white);
     font-size: 16px;
     line-height: 1.5;
     padding: 4px 8px;
     color: var(--wp--preset--color--white);
     margin-bottom: 24px;
}

.tsv-cf-row.full-width {
     display: block;
}

.tsv-cf-row textarea {
     resize: none;
     width: 100%;
     border: none;
     box-sizing: border-box;
     background-color: unset;
     border-bottom: 1px solid var(--wp--preset--color--white);
     font-size: 16px;
     line-height: 1.5;
     padding: 4px 8px;
     height: 32px;
     overflow: hidden;
     color: var(--wp--preset--color--white);
     margin-bottom: 24px;
}

.tsv-cf-row input[type="checkbox"] {
     width: fit-content;
     margin: unset !important;
}

.tsv-cf-row input[type="submit"] {
     display: block;
     background-color: var(--wp--preset--color--tsv-yellow);
     color: var(--wp--preset--color--tsv-black);
     font-weight: 700;
     border: none;
     width: fit-content;
     padding: 5px 16px;
     margin-left: auto;
     margin-bottom: 0;
     border-radius: 2px;
}

.tsv-cf-row input:focus-visible, .tsv-cf-row textarea:focus-visible {
     border: none;
     border-bottom: 1px solid var(--wp--preset--color--tsv-yellow);
     outline: none;
}

.tsv-cf-row > p {
     position: relative;
}

.wpcf7-spinner {
     display: block;
     box-sizing: border-box;
     position: absolute;
     top: 0;
     left: 50%;
     margin: 0;
     transform: translateX(-50%);
}

.tsv-cf-row .wpcf7-list-item {
     margin-bottom: 24px;
}
.tsv-cf-row .wpcf7-list-item label {
     transform: translate(0, 0) !important;
}

.tsv-cf-row .wpcf7-not-valid {
     margin-bottom: 0;
     border-bottom: 1px solid var(--wp--preset--color--negativ);
}

.tsv-cf-row label {
     display: block;
     transform: translate(8px, 28px);
     transition: all .1s;
}

.tsv-cf-row label.clicked {
     transform: translate(0, 0);
}


/*---------Block-Styles---------*/
.head-image img {
     max-height: 406px;
     object-fit: cover;
}


/*.download .wp-block-file {
     width: inherit;
     overflow: hidden;
}*/
.download > .wp-block-group > figure {
     flex-shrink: 0;
}
.download > .wp-block-group > .wp-block-group {
     flex-shrink: 1;
     overflow: hidden;
}
.download > .wp-block-group > .wp-block-group > figure {
     flex-shrink: 0;
}

.abteilungen {
     position: relative;
}
.abteilungen > div.wp-block-group {
     width: 89%;
     max-width: 1280px;
}
.abteilungen .wp-block-cover {
     height: 168px;
}
.abteilungen .wp-block-cover img {
     transition: all .5s ease;
}
.abteilungen .wp-block-cover:hover img {
     scale: 1.1;
}
.abteilungen .wp-block-cover .wp-block-cover__inner-container {
     width: 100%;
     height: 100%;
}
.abteilungen .wp-block-cover .wp-block-cover__inner-container h4 {
     width: 100%;
     height: 100%;
}
.abteilungen .wp-block-cover .wp-block-cover__inner-container h4 a {
     display: flex;
     width: 100%;
     height: 100%;
     justify-content: center;
     align-items: center;
}

.bg-logo {
     z-index: -1;
     position: absolute;
     top: 720px;
     left: -50px;
     rotate: 15deg;
}

.buehne-loop .entry-content {
     padding-top: 0 !important;
}

.buehne-loop .buehne_post {
	margin-block-start: 0 !important;
}

.buehne_post:not(:first-of-type) {
     display: none;
}

.buehne_post h1 {
	font-size: 38px;
}

.buehne-nav {
     display: flex;
     justify-content: space-between;
     position: absolute;
     width: 400px;
     max-width: 100%;
     padding: 16px 24px;
     right: 0;
     bottom: 0;
     box-sizing: border-box;
}

.buehne-nav button {
     border: none;
     background-color: unset;
     color: var(--wp--preset--color--white);
     cursor: pointer;
}

.slide-buttons {
     height: 24px;
     display: flex;
     gap: 8px;
}

.slide-buttons button {
     display: block;
     margin-top: auto;
     margin-bottom: auto;
     height: 4px;
     width: 8px;
     border-radius: 2px;
     background-color: var(--wp--preset--color--grey-3);
}
.slide-buttons button.current {
     width: 32px;
     background-color: var(--wp--preset--color--white);
}

.mitgliedschaft {
	width: 90%;
	max-width: 1280px;
}

main:has(.contact-form-box) {
	box-sizing: border-box;
}

.entry-content {
	padding-top: 80px;
}
.entry-content:has(.wp-block-group > .head-image), .entry-content:has(.buehne-loop), .entry-content:has(.mitgliedschaft) {
     padding-top: 0;
}
.entry-content:has(:first-child.contact-form-box) {
     padding-top: 1px;
}

/*-----------Sponsoren-Banner-----------*/
.sponsor-banner {
     display: flex;
     justify-content: center;
}
.sponsor-container {
     width: 89vw;
     max-width: 1280px;
     display: flex;
     flex-shrink: 0;
     position: relative;
     overflow: hidden;
}
.sponsor-row {
     display: flex !important;
     width: fit-content;
     animation-name: loop;
     animation-timing-function: linear;
     animation-iteration-count: infinite;
     animation-direction: normal;
     animation-duration: 16s;
     height: 220px;
     gap: 0 !important;
}
.sponsor-row figure {
     width: 288px;
     height: 80px;
     margin-right: 40px;
}

.sponsor-banner .sponsor-row figure img {
     width: 288px;
     height: 80px;
     object-fit: contain;
}

@keyframes loop {
     0% {
          transform: translateX(0);
     }
     100% {
          transform: translateX(-50%);
     }
}

@media only screen and (max-width: 584px) {
     .sponsor-row figure {
          width: 240px;
     }
     
     .sponsor-banner .sponsor-row figure img {
          width: 240px;
     }
}

/*
.introducing-tsv .person-group .person-card:nth-of-type(n+5) {
     display: none;
}*/
.person-image {
     position: relative;
}
.person-image img {
     object-fit: cover;
}
.name-shortcut {
     position: absolute;
     top: 50%;
     left: 50%;
     transform: translate(-50%, -50%);
     font-size: 28px;
     color: var(--wp--preset--color--tsv-yellow);
     word-break: keep-all;
}
/*Personen-Karte gleich breit wie die gelbe Infobox, falls die Person unter der infobox steht*/
.wp-block-column:has(.infobox) .person-card {
     width: 100%;
     max-width: 375px;
}
.wp-block-column:has(.infobox) .person-card > figure:first-of-type img {
     width: 100%;
     height: 104px;
     object-fit: cover;
}

.post-image img {
     height: auto;
     max-height: 406px;
     object-fit: cover;
}

.unterabteilung {
     width: 100%;
}

.unterabteilung > .wp-block-button {
     display: flex;
     justify-content: space-between;
     border-bottom: 1px solid var(--wp--preset--color--grey-3);
}
.unterabteilung > .wp-block-button > a {
     padding: 8px 0;
     text-align: left;
}

.unterabteilung > .wp-block-button > a::after {
     content: "";
     background-image: url("./assets/images/arrow_right.svg");
     background-size: 24px 24px;
     width: 24px;
     height: 24px;
     float: right;
     text-align: right;
}



/*
.tsv-informiert {
     width: 89vw;
     margin-left: auto !important;
     margin-right: auto !important;
}
.tsv-informiert .wp-block-post-template {
     display: flex;
     flex-wrap: wrap;
     gap: 40px;
}
.tsv-informiert .wp-block-post-template .wp-block-post {
     flex-basis: 240px;
     flex-grow: 1;
     flex-shrink: 0;
     margin-top: 0 !important;
}
.tsv-informiert .wp-block-post-template .wp-block-post figure img {
     width: 100%;
     aspect-ratio: 343 / 177;
}
*/
.tsv-informiert .post {
     box-shadow: 0 0 32px rgba(0,0,0,0.12);
     border-radius: 4px 4px 4px 4px;
} 

.tsv-informiert img {
     border-radius: 4px 4px 0 0;
     width: 100%;
     height: 164px;
     object-fit: cover !important;
}

.tsv-informiert .wp-block-query .wp-block-post-template .wp-block-post {
     cursor: pointer;
     transition: all .5s ease;
     max-width: 360px;
     margin-left: auto;
     margin-right: auto;
}
.tsv-informiert .wp-block-query .wp-block-post-template .wp-block-post:hover {
     scale: 1.03;
}
.tsv-informiert .wp-block-query .wp-block-post-template .wp-block-post h6 a:hover {
     text-decoration: none;
}

@media only screen and (max-width: 1214px) {
     .tsv-informiert .wp-block-post-template .wp-block-post:last-of-type {
          display: none;
     }
}
@media only screen and (max-width: 900px) {
     .tsv-informiert .wp-block-post-template .wp-block-post:nth-last-of-type(2) {
          display: none;
     }
}
@media only screen and (max-width: 584px) {
     .tsv-informiert .wp-block-post-template .wp-block-post:nth-last-of-type(2) {
          display: list-item;
     }
}

/*---------Header---------*/

.mobile-nav {
     display: none;
}

body .header-bottom-inner {
     max-width:  min(var(--wp--style--global--wide-size), 89vw) !important;
}

ul.wp-block-navigation__container li:hover {
     background-color: var(--wp--preset--color--tsv-black);
     color: var(--wp--preset--color--tsv-yellow);
}

ul.wp-block-navigation__container > li > button.wp-block-navigation__submenu-icon {
     display: none;
}

ul.wp-block-navigation__container > li:hover {
     cursor: default;
     color: var(--wp--preset--color--white);
}
ul.wp-block-navigation__container > li:hover a {
     text-decoration: none;
}

footer .footer {
     flex-wrap: wrap !important;
}

body:has(.entry-content > div:last-child.has-background) footer .footer {
	margin-top: 0 !important;
}

@media only screen and (max-width: 1400px) {
     .become-member-banner p {
          font-size: 20px;
     }
}

.header .wp-block-search__inside-wrapper {
     box-sizing: border-box;
     height: 34px;
}

@media only screen and (max-width: 880px) {
     .header .wp-block-search__inside-wrapper {
          width: 200px;
     }
     .header h4 {
          font-size: 20px;
     }
}



@media only screen and (max-width: 1023px) {
     h1 {
          font-size: 32px;
     }
     
     h2 {
          font-size: 28px;
     }
     
     h3 {
          font-size: 26px;
     }
     
     h4 {
          font-size: 22px;
     }
     
     h5 {
          font-size: 22px;
     }
     
     h6 {
          font-size: 18px;
     }


     main {
          margin-top: 40px !important;
     }
     .header {
          height: 40px;
          border-bottom: 2px solid var(--wp--preset--color--tsv-black);
     }
     .header > div {
          height: 40px;
     }
     .header-top-right {
          display: none !important;
     }
     .header-logo-img {
          width: 48px;
          height: auto;
          transform: translateY(12px);
     }
     .mobile-nav {
          display: block;
     }
     .desktop-nav {
          display: none;
     }
     .header-top {
          display: flex;
          justify-content: space-between;
          width: 100%;
     }
     .header-top > div {
          padding-top: 0 !important;
          padding-bottom: 0 !important;
     }
     body header .is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
          margin-left: 0 !important;
          margin-right: 0 !important;
     }
     .header h4 {
          font-size: 16px;
          font-weight: 500;
     }
     .wp-block-navigation__responsive-container {
          display: none !important;
     }
     .wp-block-navigation__responsive-container.is-menu-open {
          display: flex !important;
     }
     .wp-block-navigation__responsive-container-open {
          display: flex !important;
     }
     .wp-block-navigation .has-child .wp-block-navigation__submenu-container {
          display: none;
     }
     .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon {
          display: inline-block;
          width: 24px;
          height: 24px;
          padding-left: 16px;
          border-left: 1px solid var(--wp--preset--color--grey-5);
          box-sizing: content-box;
     }
     .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-icon svg {
          width: 12px;
          height: 12px;
          rotate: -90deg;
          transform: unset;
     }
     .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation-item {
          flex-direction: row;
     }
     .wp-block-navigation__container {
          width: 100%;
     }
     .wp-block-navigation-item {
          width: 100%;
          justify-content: space-between;
     }
     .backButton {
          background-color: unset;
          color: inherit;
          width: 100%;
          text-align: left;
          border: unset;
          font-size: inherit;
          font-weight: 500;
          padding: 0;
          font-family: 'Roboto';
     }
     .backButton svg {
          display: inline-block;
          width: 12px;
          height: 12px;
          stroke: currentColor;
          rotate: 90deg;
          margin-right: 16px;
     }
     .header-top-left {
          z-index: 10000;
     }
     nav.mobile-nav {
          position: relative;
     }
     .header {
          position: relative;
          z-index: 1000000;
     }
     .wp-block-navigation .mobile-nav li {
          padding: 8px 16px;
          width: 100%;
          box-sizing: border-box;
          border-bottom: 1px solid var(--wp--preset--color--grey-5);
     }
     .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container {
          padding: 0;
          width: 100%;
     }

     .header-black-line {
          width: 100%;
          height: 2px;
          display: none;
          position: absolute;
          top: 38px;
          left: 0;
          z-index: 999999;
          background-color: var(--wp--preset--color--tsv-black);
     }

     .wp-block-navigation__responsive-container-close {
          transform: translateY(-8px);
     }

     nav.mobile-nav .wp-block-navigation__responsive-container .current-menu-item {
          background-color: var(--wp--preset--color--tsv-black) !important;
          color: var(--wp--preset--color--tsv-yellow) !important;
     }
     nav.mobile-nav .wp-block-navigation__responsive-container .current-menu-item > .wp-block-navigation__submenu-icon {
          border-left: 1px solid var(--wp--preset--color--tsv-yellow);
     }

     nav.mobile-nav .wp-block-navigation__responsive-container .current-menu-item > ul li {
          background-color: var(--wp--preset--color--white) !important;
          color: var(--wp--preset--color--tsv-black) !important;
     }

     nav.mobile-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
          gap: 0;
     }

     nav.mobile-nav a.wp-block-navigation-item__content {
          align-self: stretch;
     }

     .wp-block-navigation .mobile-nav li.in-submenu {
          border-bottom: none;
          padding: 0;
     }

     .contact-form-box {
          width: 100vw;
          border-radius: 0 !important;
          padding: 24px 16px !important;
          margin-right: calc(var(--wp--style--root--padding-right) * -1) !important;
          margin-left: calc(var(--wp--style--root--padding-left) * -1) !important;
     }
     .contact-form-box > .wp-block-columns, .contact-form-box > h2 {
          width: 89vw;
          margin-left: auto;
          margin-right: auto;
     }
     .contact-form-box > .wp-block-columns > .wp-block-column:first-of-type {
          display: none;
     }
     .contact-form-box .wpcf7-form .tsv-cf-row {
          display: flex;
          flex-direction: column;
     }
	
	.buehne_post h1 {
		font-size: 24px;
	}
}

.wp-block-column:nth-of-type(2) {
     flex-shrink: 0;
}

@media only screen and (max-width: 781px) {
     .wp-block-column:nth-of-type(2) {
          flex-shrink: 1;
          margin-top: var(--wp--preset--spacing--30);
     }
     .abteilungen .wp-block-column:nth-of-type(2) {
          flex-shrink: unset;
          margin-top: 0;
     }

     .infobox {
          margin-left: auto;
          margin-right: auto;
     }

	

     .bg-logo {
          display: none;
     }

     .buehne-loop {
          width: 100%;
     }
     .buehne-loop .buehne-template .buehne-overlay {
          width: 100%;
          height: fit-content;
          top: unset;
          right: unset;
          bottom: 0;
          left: 0;
          padding: 16px 24px;
     }
     .buehne-loop .buehne-nav {
          bottom: -56px;
          left: 50%;
          transform: translateX(-50%);
     }
     .buehne-loop .buehne-nav button {
          color: var(--wp--preset--color--tsv-black);
     }
     .buehne-loop .buehne-nav button svg path {
          fill: var(--wp--preset--color--tsv-black);
     }
     .buehne-loop .buehne-nav .slide-button.current {
          background-color: var(--wp--preset--color--tsv-black);
     }
     .buehne-template > li {
          height: 66vw;
     }
     .buehne-loop .buehne-template .buehne_post figure img {
          height: 66vw;
          max-height: 400px;
     }
     .buehne-loop .buehne-template .buehne_post .wp-block-post-content > p:not(:first-of-type) {
          display: none;
     }


     .info-banner figure {
          display: none;
     }

	.become-member-banner {
		margin-top: 40px !important;
	}
     .become-member-banner > .wp-block-group {
          flex-direction: column;
          padding: 24px !important;
     }
     .become-member-banner p {
          font-size: 16px;
          font-weight: 400;
     }
     .become-member-banner .images {
          height: 20px;
          transform: translateY(-32px);
     }
     
     .abteilungen .wp-block-columns {
          gap: 8px 8px !important;
     }
     .abteilungen .wp-block-columns > div.wp-block-column {
          flex-basis: 168px !important;
          flex-grow: 1;
          flex-shrink: 0;
     }
	
	.sub-abteilungen {
		margin-bottom: 16px;
	}

     .contact-box .wp-block-columns > .wp-block-column:first-of-type {
          flex-basis: 40px !important;
          flex-shrink: 0;
          flex-grow: 0;
     }
     .contact-box .wp-block-columns > .wp-block-column:nth-of-type(2) {
          flex-basis: 0 !important;
          flex-shrink: 0;
          flex-grow: 1;
          margin: 0;
     }
     
}

@media screen and (max-width: 782px) {
     .admin-bar header {top: 46px;}
}

/*
.tsv-informiert {overflow: hidden;} .tsv-informiert .wp-block-query {overflow: visible;} .tsv-informiert > ul {display: flex; width: fit-content; box-sizing: border-box;} .tsv-informiert > ul > li:first-of-type {margin-left: 16vw} .tsv-informiert > ul > li:last-of-type {margin-right: 5.555vw}
*/

.newsArticle .entry-content {
     max-width: 89vw;
     margin-left: auto;
     margin-right: auto;
     padding-top: 0;
}


/*---------------News-Seite---------------*/
.news-area-head {
     display: flex;
     justify-content: space-between;
     align-items: center;
     margin-bottom: 16px;
     margin-bottom: 40px;
}

.news-area-head form #categories {
     font-size: 16px;
     padding: 4px 8px;
     border: none;
     border-bottom: 2px solid;
}

.news-area-head form #categories option {
     display: block;
     font-size: 16px;
     padding: 8px 16px;
}

.news-area .wp-block-query ul {
     display: grid;
     gap: 40px;
     grid-template-columns: repeat(4, minmax(0, 1fr));
     list-style: none;
     padding: 0;
}

@media only screen and (max-width: 1100px) {
     .news-area .wp-block-query ul {
          grid-template-columns: repeat(3, minmax(0, 1fr));
     }
}
@media only screen and (max-width: 782px) {
     .news-area .wp-block-query ul {
          grid-template-columns: repeat(2, minmax(0, 1fr));
     }
}
@media only screen and (max-width: 580px) {
     .news-area-head {
          display: block;
     }
     .news-area-head h1 {
          margin-bottom: 24px;
     }
     .news-area-head form #categories {
          display: block;
          margin-left: auto;
          margin-right: auto;
     }

     .news-area .wp-block-query ul {
          grid-template-columns: repeat(1, minmax(0, 1fr));
     }
}

.news-area .wp-block-query ul li {
     flex-basis: 240px;
     flex-grow: 1;
     flex-shrink: 0;
     box-shadow: 0 0 32px rgba(0,0,0,0.12);
     border-radius: 4px;
}

.news-area .wp-block-query ul li a {
     display: block;
     width: 100%;
     height: 100%;
}

.news-area .wp-block-query ul li a figure {
     width: 100%;
}

.news-area .wp-block-query ul li a figure img {
     width: 100%;
     height: 160px;
     object-fit: cover;
     border-radius: 4px 4px 0 0;
}

.news-area .wp-block-query .pagination {
     margin-top: 24px;
     display: flex;
     justify-content: center;
     gap: 24px;
}

.news-area .wp-block-query .pagination .current {
     color: var(--wp--preset--color--grey-2);
}


/*---------------Details-Akkordeon---------------*/
.wp-block-details summary::marker {
     content: none;
}

.wp-block-details summary::after {
     content: "";
     background-image: url("./assets/images/accordeon-arrow.svg");
     background-size: 24px 24px;
     width: 24px;
     height: 24px;
     float: right;
     text-align: right;
}

.wp-block-details[open] summary::after {
     content: "";
     background-image: url("./assets/images/accordeon-arrow.svg");
     background-size: 24px 24px;
     rotate: 180deg;
     width: 24px;
     height: 24px;
     float: right;
     text-align: right;
}


/*----------------Blog-Post Standart-Abstände----------------*/
.blog-main h1 + p {margin-block-start: 24px;} .blog-main h2 + p {margin-block-start: 20px;} .blog-main h3 + p {margin-block-start: 20px;} .blog-main h4 + p {margin-block-start: 16px;} .blog-main h5 + p {margin-block-start: 8px;} .blog-main h6 + p {margin-block-start: 8px;} .blog-main p + p {margin-top: 16px;}


/*------------------Calendar Plugin from Joe Dolson-------------------*/
.mc-main .mc-content header {
     all: unset;
}
.mc-main .mc-content header * {
     z-index: 9997 !important;
}
main .mc-main .mc_general .event-title button {
     background: var(--wp--preset--color--tsv-black) !important;
     color: var(--wp--preset--color--tsv-yellow) !important;
}
.category-color-sample {
     background: var(--wp--preset--color--tsv-black) !important;
}
main .mc-main {
     --category-mc_general: var(--wp--preset--color--tsv-black) !important;
}
main .mc-main .mc_general .event-title, main .mc-main .mc_general .event-title a {
     background: var(--wp--preset--color--tsv-black) !important;
     color: var(--wp--preset--color--tsv-yellow) !important;
}
main .mc-main .mc_general .event-title button:hover, main .mc-main .mc_general .event-title button:focus {
     background: var(--wp--preset--color--tsv-black) !important;
}
main .mc-main svg {
     background: var(--wp--preset--color--tsv-black) !important;
}
.mc_edit_links {
     display: none !important;
}
.my-calendar-header .mc-time {
     display: none !important;
}
main .mc-main .calendar-event .details {
     z-index: 9998 !important;
}
main .mc-main .my-calendar-navigation select {
     padding-right: 32px;
}

main .mc-main h3 {
     font-size: 16px !important;
}
main .mc-list-details.event-count {
     display: none;
}
main .mc-main .list-event {
     margin: 0 !important;
 }
main .mc-main .mc-list .event-title, main .mc-main .mc-list .event-title a, main .mc-main .mc-list .event-title button {
     background: var(--wp--preset--color--white) !important;
     color: var(--wp--preset--color--tsv-black) !important;
}
main .mc-main .calendar-event * {
	word-break: break-word;
}

main .mc-main .calendar-event .details, .mc-main .calendar-events {
    position: absolute;
    top: 50%;
	transform: translateY(-50%);
    left: 1%;
    width: 98%;
    background: var(--primary-light);
    box-shadow: 0 0 4px var(--highlight-dark);
    color: var(--primary-dark);
    z-index: 3;
}