/*--------------------------------------------------------------------
	Author: {ths} Thomas Schostok Design
	Version: 1.0
---------------------------------------------------------------------*/
/*@import url("ths_fonts_static.css");*/
@import url("ths_fonts_static.css");
@view-transition {
	navigation: auto;
}
/* Swatch Variables */
:root{
	--thsBody: #ffffff;				/*Body BG */
	--thsTextfarbe: #000000;				/* Textfarbe */
	--thsRahmen: #000000;				/* Linien: Buttons, Trenner */
	--thsButtonBG: #ffffff;	
	--thsButtonTextHover: rgb(240, 240, 240);
	--thsButtonHover: #000000;
	--thsLinks: #000000;				/* Textlinks */
	--thsLinksHover: rgb(105, 105, 105);		/* Textlinks Hover */
	--thsSidebarLinks: #000000;				
	--thsSidebarLinksHover: rgb(105, 105, 105);
	--thsSidebarLinksActive: #000000;	
	--thsFooterLinks: #ffffff;		/* Textlinks */
	--thsFooterLinksHover: #000000;	/* Textlinks Hover */
	--thsAccordionHover: #000000;
	--thsOffcanvasBG: #ffffff;
	--thsmitu: #00deff;
	--footer-actual-height: 56px; /* footer fullscreencarousel */ 
	--thsLogoColor: #000000;
	--thsLogoColor2: rgb(255, 255, 255);
}
.offcanvas {
	background:#00deff;
}
.navbar {
	background:#00deff;
	--bs-navbar-color: var(--thsTextfarbe);				/* links */
	--bs-navbar-hover-color: var(--thsFooterLinks); 		/* linksHover */
	--bs-navbar-active-color: var(--thsFooterLinks);	/* Active */
	font-family: "BebasNeue";
	font-size: 25px;
	letter-spacing: 0.1rem;
}
.navbar-brand {
	color: var(--thsTextfarbe);
	padding-bottom: 11px;
}

.dropdown-menu {
	--bs-dropdown-bg:#ffffff;	/* BG hover dropdown) */
	--bs-dropdown-link-color: var(--thsTextfarbe);
	--bs-dropdown-link-hover-color:var(--thsTextfarbe);
	--bs-dropdown-link-hover-bg: #00deff;	/* BG hover dropdown) */
	border: 1px solid #ffffff;	
	font-size: 18px;
	line-height: 1.2;
}
.dropdown-toggle::after {
 /* Dropdown Pfeil */
	/* border:0; */
}
.container{
	max-width:1140px;
}
@media (max-width: 991px) { 
	.container{width:100%;}
}
.bloc{
	width:100%;
	clear:both;
	background: 50% 50% no-repeat;
	/* padding:0 20px; */
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	position:relative;
	display:flex;
}
@media (max-width: 576px) {
	.bloc{
		padding-left: 0;
		padding-right: 0;
	}
}
.bloc .container{
	padding-left:0;
	padding-right:0;
	position:relative;
}
.bloc, .navbar{
	max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}
.no-gap-y > * {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  .custom-gap {
    column-gap: 1rem;
    row-gap: 0; /* kein vertikaler Abstand */
  }
body {
	margin:0;
	padding:0;
    background:var(--thsBody);
    overflow-x:hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	font-family: "mitu_text", sans-serif;
	font-size: 18px;
	display: flex;
	flex-direction: column;
	font-weight: normal;
}
.bebas, h1, h2, h3, h4, h5, h6, 
h1.text, h2.text, h3.text, h4.text, h5.text, h6.text
{
	font-family:"BebasNeue";
	font-weight: 400; font-variation-settings: "wght" 450;
	letter-spacing: 0.1rem;
	font-style: normal;
}
.h1, h1 {
    font-size: calc(1rem + 1vw);
}
.h3, h3 {
    font-size: calc(1.1rem + .6vw);
}
h4 {
	line-height: 1;
}
.bluewater {
background-color: var(--thsmitu);
	height: 290px;
	position:fixed;
	top:0;left:0;right:0;
	transition: all .2s ease-out;
	z-index:-10;
}
@media (max-width: 767px) {
	.bluewater {
		height: 260px;
	}
}
.container-fluid
/* fixes */
a,button{
	/* Prevent ugly blue glow on chrome and safari */
	outline: none!important;
}
.a-block{
	width:100%;
	text-align:left;
	display: inline-block;
}
.text-center .a-block{
	text-align:center;
}
.navbar-toggler:focus,.btn-close:focus, button:focus {
    text-decoration: none;
    outline: 0;
    box-shadow: none;
}
.switcher {
	transition: all .4s ease-out;
}
.switcher:hover {
	color:#ffffff;
}
/* footer sticky bottom */
html, body {
	height: 100%;
}
main {
	flex: 1; 
}
/* end footer sticky bottom */

.pfeil img {
	width:60px;
	transition: all .2s ease-out;
}
.pfeil img:hover {
	opacity:0.2;
}
.page-container{overflow: hidden;} /* Prevents unwanted scroll space when scroll FX used. */

/* navigation */
.dropdown-menu {
    border-radius: 0;
	width:100%; /* fix */
	min-width: 200px;
}
.dropdown-item {
	white-space: normal; /* fix */
	transition: all .2s ease-out;
}
/* footer */
footer {
	font-family:"BebasNeue";
	font-size: 16px;
	letter-spacing: 0.1875rem;
  }
footer.standard {
	margin-top: auto; 
	background-color: var(--thsmitu);
}
footer a, .text-footer a {
	color:var(--thsFooterLinks);
	text-decoration: none;
	transition: all .2s ease-out;
}
footer a:hover, a.text-footer a:hover {
	color:var(--thsFooterLinksHover);
}
.activeNav{
	color: var(--bs-navbar-active-color)!important;
}
.activeNavitem {
	color: var(--thsmitu)!important;
}
.navbar-brand svg { width:auto; height:50px; transition: all .2s ease-out;}
@media (min-width:768px) { /* ab MD */
	.navbar-brand svg { height:70px;}
  }
/* end navigation */

/* mobile navigation */
.navbar-toggler {
	border:none;
	padding: 0;
}
.offcanvas {
	border-left: #f1f1f1 solid 1px!important;
}
.offcanvas.offcanvas-end {
    border:none;
}
.offcanvas-backdrop {
	background-color: var(--thsOffcanvasBG);
}
/* offcanvas nav */
.sidebaritem {
	color:var(--thsTextfarbe);
	font-size:34px;
	line-height: 1.1;
	letter-spacing: 0.032em;
	font-family: "BebasNeue";
    padding-bottom: 2px;
    padding-top: 2px;
	overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}
a.sidebaritemlink {
	color:var(--thsSidebarLinks)!important;
	text-decoration: none;
}
a.sidebaritemlink:hover {
	color:var(--thsSidebarLinksHover)!important;
	text-decoration: none;
	transition: all .2s ease-out;
}
a.sideactive, a.sidesubactive {
	color:var(--thsSidebarLinksActive)!important;
	text-decoration: none;
}
/* end offcanvsas navigation */


/* subnav */
.subnav {
	font-family: "BebasNeue";
	list-style: none; /* Entfernt Standard-Aufzählungszeichen */
	margin: 0;
	padding: 0;
	font-size: 22px;
	line-height: 1.1;
	letter-spacing: 0.1rem;
}

.subnav a {
	text-decoration: none;
	color: var(--thsLinks);
	transition: all .2s ease-out;
}
.subnav a:hover {
  color: #ffffff;
}
.hoverblue a:hover {
  color: var(--thsmitu)
}

.poster {
	top: 0px;
	z-index: -8;
	left: 0px;
	position: fixed;
	width: 100%;
}
@media screen and (max-width: 924px)  {
	.poster {
	z-index: -8;
}
.poster img {
	width: 1193px;
	left: -50px;
	position: relative;
}
}
/* thumbnail artists+categories */
  /* Fügt 120px Abstand oben hinzu, wenn per Anker gescrollt wird */
  [id^="genre-"] {
    scroll-margin-top: 120px;
  }
.thumbnail {
	transition: all 0.4s ease;
}
.thumbnail-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	cursor: pointer;
	display: block;
}
.thumbnail-content {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/* Play Button Style */
.play-button {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 35px;
	height: 50px;
	background-color: white;
	clip-path: polygon(0% 0%, 100% 50%, 0% 100%);
	cursor: pointer;
	z-index: 10;
}
.video-column-wrapper {
	position: relative;
	width: 100%;
	transition: opacity 0.4s ease;
	}
.video-wrapper {
	position: relative;
	width: 100%;
	padding-top: 56.25%; /* 16:9 Ratio */
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	background-color: black;
}
/* Hide Play button once video is playing */
.video-wrapper iframe {
	z-index: -1;
}
    .col-12 .credit-text {
      display: block !important;
    }

    [class*="col-"]:not(.col-12) .play-button {
      display: none;
    }

    @media (max-width: 576px) {
      .play-button {
        display: block !important;
      }
    }

/* fullscreencarousel */
/* Bild-Abschnitt Global */
.image-section {
  position: relative;
  width: 100%;
  overflow: hidden; /* Wichtig für Desktop mit 100vh Bild und Padding */
}

.image-section img {
  width: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  /* Höhe ist 'auto' für Mobile, '100vh' für Desktop (siehe unten) */
    filter: brightness(0.9); /* Wert zwischen 0 (ganz dunkel) und 1 (normal) */

}

/* Text auf dem Bild - Basis (Desktop-orientiert) */
.image-caption {
  position: absolute;
  bottom: 30px; /* Basis-Abstand vom unteren Rand des Inhaltsbereichs der Sektion */
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  width: fit-content;
  color: white;
  text-align: center;
  z-index: 10; /* Über dem Bild */
}

.image-caption a {
  color: white;
  text-decoration: none;
 transition: all 0.3s ease; 
}
.image-caption a:hover {
  color: var(--thsmitu);
}
.image-caption p {
  margin: 0;
}
.credit {
	font-style: italic;
		line-height: 1;
}
.credit a {
	text-decoration: none!important;
}
/* Indikator-Dots */
.indicator {
  position: fixed;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  gap: 1rem;
  z-index: 9999; /* Höchster z-index */
}

.indicator-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: transparent;
  border: 2px solid rgba(255, 255, 255, 0.7);
  transition: background-color 0.3s, border-color 0.3s;
  cursor: pointer;
}

.indicator-dot.active {
  background-color: white;
  border: 2px solid white;
}

.indicator-dot:hover {
  background-color: rgba(255, 255, 255, 1);
}

/* Footer Basis-Styling */
.footer-transparent {
    width: 100%;
}
.footer-transparent a {
	color: rgba(255, 255, 255, 0.5);
}
.footer-transparent a:hover {
	color:var(--thsmitu);
}
/* -------- Mobile Ansicht (bis 768px) -------- */
@media (max-width: 768px) {
.footer-transparent {
    margin-top: auto; 
	background-color: var(--thsmitu);
}
.footer-transparent a {
	color: rgba(255, 255, 255, 1);
}
.footer-transparent a:hover {
	color:var(--thsLinks);
}
  .image-section {
    height: auto;
    padding-bottom: 0; /* Kein zusätzliches Padding für den Footer */
    overflow: visible; /* Inhalt normal fließen lassen */
  }
  .image-section img {
    height: auto; /* Natürliche Bildhöhe */
  }
  .image-caption {
    position: static; /* Überschreibt Desktop 'absolute' */
    padding: 1rem;
    color: var(--thsLinks);
    text-shadow: none;
    width: 100%;
    text-align: left;
    bottom: auto; /* Zurücksetzen der Desktop-Positionierung */
  }
  .image-caption a {
    color: var(--thsLinks);
  }
	.image-caption a:hover {
    color: var(--thsmitu);
  }
  .indicator {
    display: none;
  }
  .footer-transparent {
    position: static; /* Explizit statisch, erscheint am Ende des Dokuments */
  }
}
@media (min-width: 769px) {
  .image-section {
    height: 100vh;
    scroll-snap-align: start;
    padding-bottom: var(--footer-actual-height); /* Platz für den fixierten Footer schaffen */
  }

  .image-section img {
    height: 100vh; /* Bild versucht, die ursprünglichen 100vh auszufüllen */
  }

  .image-caption {
    /* Anpassen, um über dem durch padding-bottom reservierten Bereich zu sitzen */
    bottom: calc(var(--footer-actual-height) + 30px);
  }

  .footer-transparent {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 1030; /* Über dem Inhalt, aber unter Indikatoren/Modals falls diese höher sein sollen */
  }


}
/* ScrollToTop button */
.scrollToTop {
	width:36px;
	height:36px;
	padding:5px;
	position:fixed;
	bottom:20px;
	right:20px;
	border-radius:50%;
	opacity:0;
	z-index:999;
	transition: all .3s ease-in-out;
	pointer-events:none;
}
.scrollToTop, .scrollToTop:hover, .scrollToTop:focus {
	color: #FFF;
    background: rgba(255, 255, 255, 0.9);
	border: 2px solid var(--thsRahmen);
}
.scrollToTop:hover {
	opacity: 0.5;
}
.showScrollTop{
	opacity: 1;
	pointer-events:all;
}
.scrollToTop svg {
	vertical-align: top;
}
.scroll-to-top-btn-icon{
	fill: none;
	stroke: var(--thsRahmen);
	stroke-width: 3px;
	fill-rule: evenodd;
	stroke-linecap:round;
}
.maxigmH {
	max-height: 50vh;
}
/* Images inside Text */
.align_left {float: left; margin: 0 15px 0 0;}
.align_right {float: right; margin: 0 0 0 15px;}
.align_center{margin: 0px auto; margin-bottom:15px;display:block;}

p.align_left {text-align: left;}
p.align_center {text-align: center;}
p.align_right {text-align: right;}


/* ↓ --------- THS-Accordion - see jquery */
dl.THSaccordion {
	margin: 0;
	padding: 0;
	position: relative;
	border-bottom: 1px solid var(--thsRahmen);
}
dl.THSaccordion > dt {
	list-style: none;
	margin: 0;
	padding: 0;
	border-width: 1px 1px 0 1px;
	border-style: solid;
	border-color: var(--thsRahmen); 
}
dl.THSaccordion > dt > a {
	display: block;
	padding: 10px 40px 10px 10px;
	position: relative;
	transition: all .2s ease; 
	text-decoration: none;
	color: var(--thsRahmen)!important
}
dl.THSaccordion > dt > a:after {
	color:  var(--thsRahmen); 
	right: 16px;
	position: absolute; 
	top: 8px;
    width: 30px;
    height: 30px;
    content: "";
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' style='fill-rule:evenodd%3Bclip-rule:evenodd%3Bstroke-linejoin:round%3Bstroke-miterlimit:2' viewBox='0 0 125 125'%3E%3Cpath d='M24.574 20.824 62.048 58.25l37.328-37.417L122 43.436 62.048 103.62 1.944 43.436l22.63-22.612Zm-.004 6.556L8.496 43.436l53.552 53.703 53.405-53.703L99.38 27.37 62.048 64.773 24.574 27.37l-.004.01Z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
   transition: all .2s ease; 
}
dl.THSaccordion > dt > a:hover {
	text-decoration: none;
	color:var(--thsButtonTextHover)!important;
	background: var(--thsAccordionHover);
}
dl.THSaccordion > dt > a.open {
	transform: 0.2s ease-in-out;
}
dl.THSaccordion > dt > a.open:after {
	top: 7px;
	content: "";
	transform: 0.2s ease-in-out;
	transform: rotate(-180deg);
}
dl.THSaccordion dd {
	color: var(--thsRahmen)!important;
	display: none;
	padding: 10px 20px;
    margin: 0;
	border-width: 1px 1px 0 1px;
	border-style: solid;
	border-color: var(--thsRahmen);
}
/* ↓ --------- THS-Accordion2 - css only*/



/* ↓ --------- THS-B5-Carousel-Slider mit eigener BU - see jquery */
/*	THS bootstrap 5 carousel addon
	center img, maxheight img, caption below */
.THScarousel5 {
	max-height: 50vh; /* bildhöhe begrenzen */
	max-width: 100%!important;
	width: auto!important;
	margin-right: auto!important; /* center img */
	margin-left: auto!important; /* center img */
	display: block!important; /* center img */
}
.carousel-caption-center {
	/* fix BU links unter dem Bild */
	transform: none;
}

.THS_B5_SLIDER_CAPTION, .BU{
	color: var(--thsTextfarbe);
}
.carousel-caption {  /* stdn captions ausschalten */
	display: none !important;
}
.carousel-control-prev-icon{background-image: url('data:image/svg+xml,<%3Fxml version="1.0" encoding="UTF-8" standalone="no"%3F><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg width="100%" height="100%" viewBox="0 0 105 175" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-miterlimit:1.5;"><path d="M93.75,4.167l-83.333,83.333l83.333,83.333" style="fill:none;stroke:%23000;stroke-width:8.33px;"/><path d="M89.583,4.167l-83.333,83.333l83.333,83.333" style="fill:none;stroke:%23fff;stroke-width:8.33px;"/></svg>');
}
.carousel-control-next-icon{background-image: url('data:image/svg+xml,<%3Fxml version="1.0" encoding="UTF-8"%3F><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg clip-rule="evenodd" fill-rule="evenodd" stroke-miterlimit="1.5" version="1.1" viewBox="0 0 105 175" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><path d="m14.583 4.167 83.334 83.333-83.334 83.333" fill="none" stroke="%23000" stroke-width="8.33px"/><path d="m10.417 4.167 83.333 83.333-83.333 83.333" fill="none" stroke="%23fff" stroke-width="8.33px"/></svg>');
}
.carousel-control-next-icon, .carousel-control-prev-icon {
	width: 27px; height: 44px; transition: all .2s ease-out;
}
.carousel-control-next, .carousel-control-prev  {
	opacity: 1;
}
.carousel-control-next:hover, .carousel-control-prev:hover  {
	opacity: .5;
}
/*	end THS bootstrap 5 carousel addon -------------------- */
/* masonry fake gallery 3-spaltig */
.masonry {
	display: grid;
	/*   grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));*/
	grid-template-columns: repeat(3, 1fr); /* Force 3 columns */
	grid-auto-rows: 250px;
	gap: 10px;
	transition: all .2s ease-out;
}
.masonry-item {
	box-sizing: border-box;
	transition: transform 0.3s;
	display: flex;
	align-masonry-items: center;
	justify-content: center;
	font-size: 1.2em;
	margin:0;
	position: relative; /* Add position: relative to the masonry-item */
}

.masonry-item a {
	display: block; 
	width: 100%; 
	height: 100%; 
	cursor: zoom-in;
}
.image-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.4); /* Adjust opacity as needed */
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
	display: flex; /* Make image-overlay a flex container */
	align-items: flex-end; /* Align title to the bottom */
	justify-content: center; /* Center title horizontally */
}
.image-title {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%); /* Center the title */
	opacity: 0; /* Initially hide the title */
	transition: opacity 0.3s ease-in-out; /* Add transition for smooth fading */
	color: #fff;
	padding: 10px 15px;
	border-radius: 5px;
	text-align: center;
	max-width: 100%; /* Limit the width of the title */
}
.masonry-item:hover .image-overlay {
	opacity: 1; /* Show the overlay on hover */
}
.masonry-item:hover .image-title {
	opacity: 1; /* Show the title on hover */
}
.masonry_portrait { grid-row: span 2;} /* Bildhöhe > Bildbreite */

.masonry-item img {
	width: 100%; /* Make the image fill the container width */
	height: 100%; /* Make the image fill the container height */
	object-fit: cover; /* Crop the image to fill the container while maintaining aspect ratio */
}
@media (max-width: 978px) { 
	.masonry {
		grid-auto-rows: 200px;
	}
}
@media (max-width: 768px) { 
	.masonry {
		grid-template-columns: repeat(2, 1fr); /* Force 3 columns */
		grid-auto-rows: auto;
        gap: 15px;
    }
}
/* end masonry-gallery */
.artist-link {
	text-decoration: none;
	color: inherit; /* Keeps the original text color */
	display: block; /* Makes the entire area clickable */
}
.artist-link:hover .artist-title {
	color: var(--thsmitu); 
	transition: color 0.3s ease; 
}
.artist-title {
	font-size: 18px;
}
.nolinks a, .nolinks p a, .nolinksblack a, .nolinksblack p a{
	text-decoration: none!important;
	color: var(--thsTextfarbe)!important;
	border: 0!important;
}
.nolinks a:hover {
	text-decoration: none!important;
	color: var(--thsLinks)!important;
	border: 0!important;
}
/* searchbox height */
.searchboxheight {
	 height: auto!important; 
	 padding-bottom: 50px!important;
	 bottom: inherit !important;
}

.text{
	overflow-wrap: break-word;
	word-wrap: break-word;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	font-size: 1rem;
	line-height: 1.37;
}
.text p:last-child {
	margin-bottom: 0;
}
.text-footer {
	font-family: "mitu_text", Times, Georgia, serif;
	font-size: 18px;
	color:var(--thsTextfarbe)!important;
	overflow-wrap: break-word;
	word-wrap: break-word;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	font-variation-settings: "wght" 400;
	letter-spacing: 0.00625em;
}
.text a {
	text-decoration:none;
	border-bottom:1px solid var(--thsLinks)!important;
	transition: all .2s ease-out;
	color:var(--thsLinks);
}
.text a:hover {
	text-decoration:none;
	border-bottom:1px solid var(--thsmitu)!important;
	padding-bottom:0px;
	color:var(--thsmitu)!important;
}
.text ol li, .text ul li {
	margin-bottom: 5px;
}
strong {
	font-variation-settings: "wght" 700;
}
.ths_button {
	border-bottom-width: 1px;
	border: 1px solid var(--thsRahmen);
	padding: 8px 12px 6px;
	display: inline-block;
	transition: all .2s ease-out;
	background-color: var(--thsButtonBG);
}
.ths_button a{
	text-decoration: none;
	color: var(--thsRahmen);
}
.ths_button:hover{
	color: var(--thsButtonTextHover);
	background-color: var(--thsButtonHover);
}
.ths_button:hover a {
	color: var(--thsButtonTextHover);
}

.inline_button,
a > .inline_button {
		border: 1px solid var(--thsRahmen);
		padding: 8px 12px 6px;
		display: inline-block;
		transition: all .2s ease-out;
		background-color: var(--thsButtonBG);
		margin-bottom: -1px;
		text-decoration: none !important;
		color: var(--thsRahmen) !important;
	}
/* This targets links specifically inside inline_button */
.inline_button a {
    text-decoration: none !important;
    color: inherit !important;
    border-bottom: none !important;
}
.inline_button:hover,
a:hover > .inline_button {
    background-color: var(--thsButtonHover);
    color: var(--thsButtonTextHover) !important;
}
/* Hover state for the link inside */
.inline_button:hover a {
    color: inherit !important;
	border-bottom: none !important;

}
/* Hover state for inline button links */
.Xinline_button a:hover {
    border-bottom: none !important;
	color: var(--thsButtonTextHover)!important;
	background-color: var(--thsButtonHover);
}
.inputsearchbutton {
    height: 66px;
    background-color: transparent;
    border-color: var(--thsRahmen)!important;
    border-width: 1px 1px 1px 1px;
    padding-top: 4px;
    padding-bottom: 4px;
    border-style: solid;
    border-radius: 0px 0px 0px 0px;
    color: var(--thsTextfarbe)!important;
}
blockquote {
	display: grid;
	grid-template-columns: 50px auto; /* Eine Spalte für das Icon (50px breit), eine für den Text (restliche Breite) */
	grid-gap: 1rem; /* Abstand zwischen den Spalten */
}
blockquote p {
	font-style: italic;
	margin: 0; /* Remove default margins */
	grid-column: 2; /* Platziere alle <p>-Elemente in der zweiten Spalte */
}
blockquote::before {
	content: "\F250"; /* Unicode representation of your icon */
	font-family: bootstrap-icons;
	font-size: 36px;
	margin-right: 20px; /* Adjust spacing between icon and text */
	font-style: normal;
}
hr {
    opacity: 1;
}
 /* simplelightbox */
 .sl-wrapper .sl-close {
    background: url('../img/lx_close.svg') center center no-repeat;
    background-size: contain;
    width: 34px;
    height: 34px;
	transition: all .2s ease-out;
}
.sl-wrapper button:hover {
    opacity: 1;
    background: url('../img/lx_close_hover.svg') center center no-repeat;
    background-size: contain;
    width: 34px;
    height: 34px;
}
.sl-wrapper .sl-image .sl-caption {
    color: #b1b1b1;
    padding-left: 0;
    line-height: 22px;
    font-size: 14px;
}
.sl-wrapper .sl-counter {
    color: #b1b1b1;
    line-height: 22px;
    font-size: 14px;
}
.sl-wrapper .sl-navigation button.sl-prev {
    opacity: 1;
    background: url(../img/lx_left.svg) center center no-repeat;
    width: 40px;
    height: 40px;
}

.sl-wrapper .sl-navigation button.sl-prev:hover {
    opacity: 1;
    background: url(../img/lx_left_hover.svg) center center no-repeat;
    width: 40px;
    height: 40px;
}
.sl-wrapper .sl-navigation button.sl-next {
    opacity: 1;
    background: url(../img/lx_right.svg) center center no-repeat;
    width: 40px;
    height: 40px;
}
.sl-wrapper .sl-navigation button.sl-next:hover {
    opacity: 1;
    background: url(../img/lx_right_hover.svg) center center no-repeat;
    width: 40px;
    height: 40px;
}
.trenner {
	border-top: 1px solid var(--thsRahmen);
}
/* superhero */
.fullscreen {
	width: 100%;
    min-height: 100vh;
    padding: 0;
}
.halfscreen {
	min-height: auto;
    height: 70vh;
    padding: 0;
}
.bgimage {
	background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
/* -------------- cookie ----------------*/
.privacywire {
	position: fixed;
	bottom: -250%;
	font-style: italic;
	width: 90%;
	margin: auto;
	box-shadow: 0 -1px 28px rgba(0, 0, 0, .3) !important;
	opacity: 1!important;
	background-color: #ffffff;
	z-index: 10001 !important;
	padding: 2rem !important;
	transition: bottom .3s ease-in, opacity .3s ease;
}
.privacywire button,
.privacywire-consent-button
{
	background-color: #ffffff;
	border-radius: 42px;
	border: 4px solid var(--thsLinks);
	display: inline-block;
	cursor: pointer;
	color: var(--thsLinks);
	font-size: 17px;
	font-style: italic;
	padding: 7px 33px;
	text-decoration: none;
	font-weight: bold;
	transition: all .2s ease;
	margin-bottom: 3px;
}
.privacywire-consent-message {
		font-size: 20px;
	font-style: italic;
}
.privacywire button:focus,
.privacywire-consent-button:focus
{
	outline: none;
	box-shadow: none;}
.privacywire button:hover,
.privacywire-consent-button:hover{
	background-color: var(--thsmitu);
}
.privacywire button:active,
.privacywire-consent-button:active{
	position: relative;
	top: 1px;
}
.privacywire-text input {
	margin-right: 8px;
}
.show-banner .privacywire-banner,
.show-message .privacywire-message,
.show-options .privacywire-options {
	bottom: 0;
	opacity: 1;
}
.privacywire-header {
	font-weight: 700;
}
.privacywire-ask-consent {
	padding: 4rem;
}
.privacywire-ask-consent-blueprint,
.privacywire button[hidden],
[data-ask-consent-rendered="1"] {
	display: none;
}
.privacywire-page-links  {margin-top: 10px;}
.privacywire-page-links a{
	transition: all .2s ease-out;
	color: var(--thsLinks)
}
.privacywire-page-links a:hover{
	color: var(--thsmitu)
}
.allow-all {background-color: #e7ffe3!important;}
.boxed {
	padding: 18px;
}
/* ths ----------------------------------------- styles */
.editme {
	z-index:90000;
	color: #ff0946;
	background-color: rgba(210, 215, 63, 0.439);
	position: fixed;
	top: 85px; 	left: 10px;
	padding:6px 7px 3px 7px;
	font-weight: bold;
	font-size: 18px;
	border-radius:50%;
	box-shadow: 5px 5px 5px rgba(169, 169, 169, 0.51);
	transition: all .2s ease-out;
}
.editme:hover {
	background-color: rgba(91, 206, 204, 0.539);
}
.editme a {
	text-decoration: none; font-weight: bold;
}