/*--------------------------------------------------------------------
	Author: {ths} Thomas Schostok Design
	Version: 1.0
---------------------------------------------------------------------*/
@import url("ths_fonts_static.css");
/*@import url("ths_fonts_vf.css");*/

/* Swatch Variables */
:root{
	--thsBody: #ffffff;				/*Body BG */
	--thsTextfarbe: #42444d;				/* Textfarbe */
	--thsRahmen: #42444d;				/* Linien: Buttons, Trenner */
	--thsButtonBG: #ffffff;	
	--thsButtonTextHover: rgb(240, 240, 240);	
	--thsButtonHover: #7693a8;
	--thsLinks: #828282;				/* Textlinks */
	--thsLinksHover: #42444d;		/* Textlinks Hover */
	--thsSidebarLinks: #42444d;				
	--thsSidebarLinksHover: #828282;
	--thsSidebarLinksActive: #828282;	
	--thsFooterLinks: #42444d;		/* Textlinks */
	--thsFooterLinksHover: #828282;	/* Textlinks Hover */
	--thsAccordionHover: #7693a8;
	--thsOffcanvasBG: rgba(255, 255, 255, 1);
	--thsHeadline: #7693a8;
	--navbar-brand-padding-y: .5rem; /* Padding Y Logo */
	--navbar-brand-padding-x: .3rem; /* Padding X Logo */
}
.navbar {
	background:#7693a8;
	--bs-navbar-color: #ffffff;				/* links */
	--bs-navbar-hover-color: #a7c4d8;	;		/* linksHover */
	--bs-navbar-active-color: #ffffff;	;	/* Active */
	border-bottom: 2px solid #7693a8;
	text-transform: uppercase;
}
.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}
.dropdown-menu {
	--bs-dropdown-link-color: var(--thsTextfarbe);
	--bs-dropdown-link-hover-color:var(--thsHeadline)!important;
    --bs-dropdown-link-hover-bg: #ffffff;	/* BG hover dropdown) */
    border: 1px solid var(--thsHeadline);	
}
.dropdown-toggle::after {
 /* Dropdown Pfeil */
	/* border:0; */
}
.container{
	max-width:1140px;
}
.bg-corporate {
	background-color: #7693a8;
}
@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: 991px) {

}
.bloc .container{
	padding-left:0;
	padding-right:0;
	position:relative;
}
body {
	margin:0;
	padding:0;
    background:var(--thsBody);
    overflow-x:hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	font-family:"Familyname";
	display: flex;
	flex-direction: column;
}

h1, h2, h3, h4, h5, h6, 
h1.text, h2.text, h3.text, h4.text, h5.text, h6.text
{
	font-family:"headline";
	font-weight: 450; font-variation-settings: "wght" 450;
}
.headline {
		font-family: "headline"!important;
		line-height: 1.2;
}

.heroheadline {
	font-family: "heroheadline"!important;
	font-size: 4rem!important;
	line-height: .8;
}
@media (max-width: 700px) { 
.h2 ,h2{
	font-size: 22px;
}
}
@media (max-width: 550px) { /* bis MD */
	.heroheadline {
		/*font-size: 3.75rem!important;*/
		font-size:14vw!important;
	}
	.headline {
		font-size:4.5vw!important;
	}
}
@media (max-width: 400px) { /* bis MD */
	.headline {
		font-size:16px!important;
	}
}
@media (min-width:992px) { /* ab LG */
	.heroheadline {
		font-size: 5rem!important;
	}
 }
/* 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;
}

/* footer sticky bottom */
html, body {
	height: 100%;
}  
main {
	flex: 1; 
  }
footer {
	margin-top: auto; 
  }
.blatt {
	height:150px;
}
/* end footer sticky bottom */

.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 a, .text-footer a {
	color:var(--thsFooterLinks);
	text-decoration: none;
	transition: all .2s ease-out;
}
footer a:hover, v.text-footer a:hover {
	color:var(--thsFooterLinksHover);
}
.activeNav{
	color: var(--bs-navbar-active-color)!important;
}
.navbar-brand {
	padding-top: var(--navbar-brand-padding-y)!important;
    padding-bottom: var(--navbar-brand-padding-y)!important;
	padding-left: var(--navbar-brand-padding-x)!important;
}
.navbar-brand img { width:auto; height:60px; }
@media (min-width:768px) { /* ab MD */
	.navbar-brand img { height:90px;}
  }
/* 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:19px;
	letter-spacing: 0.032em;
	font-variation-settings: "wght" 500;
	border-color: var(--thsRahmen)!important;
    border-style: solid;
    border-width: 0px 0px 1px 0px;
    padding-bottom: 6px;
    padding-top: 8px;
	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 */

/* 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: 1px 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: 2px;
	fill-rule: evenodd;
	stroke-linecap:round;
}

.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);
}
.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-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 {
	/*  maximale breite insgesamt? dann hier: 
	width:300px; */
}
.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 -------------------- */
.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 p:last-child {
	margin-bottom: 0;
}

.text, .text-footer {
	font-family:"Familyname";
	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(--thsLinksHover)!important;
	padding-bottom:0px;
	color:var(--thsLinksHover)!important;
}
.text ol li, .text ul li {
	margin-bottom: 5px;
}
.text-h {
	color: var(--thsHeadline)!important;
}
strong {
	font-variation-settings: "wght" 700;
}

.text table {
	border: none!important;
}
.text table tbody tr{
	border-bottom: 1px solid var(--bs-border-color);
	border-top: 1px solid var(--bs-border-color);
}
.text table td{
	padding: 8px;
}

.text-footer ul {
	list-style:none;
	margin: 0;
	padding: 0;
}
.text-footer li {
	margin-bottom: 0px!important;
}
@media (min-width:1028px) { 
	.text-footer li {
		padding-right: 15px;
		display:inline;	
	}
	.text-footer li:last-child {
		padding-right: 0px;
	}
}
.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: flex;
	align-items: flex-start;
	margin: 20px 0;
}
blockquote p {
	font-style: italic;
	flex-grow: 1;
	margin: 0; /* Remove default margins */
}
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;
}
.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: 90vh;
    padding: 0;
}
.halfscreen {
	min-height: auto;
    height: 70vh;
    padding: 0;
}
.bgimage {
	background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: cover;
}
.superhero_textcolor
{
	color:#de675e!important;
}
.knopf {
	position:absolute;
	bottom:35px;
}
.mt--48 {
	position: relative;
	top: -48px;
}
.scrolldown img{ width:auto; height:40px;}
/* 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;
}