:root{
	 --color-c1:#f27405;
	 --color-c2:#F25430;
	 
	 --color-c3:#eff2f4;
	 --color-c4:#F28705;
	 --color-c5:#d96100;
	 
	 --color-white:#ffffff;
	 --color-highlight: #f27405;
	 --color-highlight-hover: #d96100;
	 --color-highlight-2nd:#B86E78;
	 
	 --color-border:#103d95;
}
 
 
 

body{
	font-family: Arial;
	color: #0D0D0D;
	letter-spacing: 0.01em;
	font-size: 1em;
	background-color:white;
	hyphens: auto;
}
*, :after, :before {
	box-sizing: border-box;
}

a{
	text-decoration: none;
	color: var(--color-c2);
	cursor: pointer !important;
}


#content1238 a,#content1248 a, #content1257 a {
	color: var(--color-white);
}



a:hover{
	text-decoration: none;
	color: var(--color-highlight);
}

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

a.white:hover{
	color: #D9D9D9;
}

a.active{
	text-decoration: none;
	color: var(--color-highlight);
}

strong{color: var(--color-c1);}
strong.blue{color: var(--color-c3);}

img {
	vertical-align: middle;
	border-style: none;
}

.test_bg{background-color:red;}
.test_bg_2{background-color:green;}



.google-font{font-family: 'Teko', sans-serif;font-weight: 200; 
  line-height:98%; margin: 0 0 2rem 0;}
.google-font-header{font-family: 'Teko', sans-serif; font-weight: 900;text-shadow: -1px 2px 6px #5f5f5f;}


.td-lt{text-decoration: line-through;}

.em-0_7{font-size: 0.7em;}  
.em-0_8{font-size: 0.8em;}  
.em-0_9{font-size: 0.9em;}  
.em-1{font-size: 1em;}  
.em-1_2{font-size: 1.2em;}  
.em-1_5{font-size: 1.5em;} 
.em-2{font-size: 2em;} 
.em-3{font-size: 3em;}
.em-3_5{font-size: 3em;}
.em-4{font-size: 4em; line-height: 1em;}
.em-5{font-size: 4em;}
.em-6{font-size: 6em;}

.lh-em-1{line-height: 1em;}
.lh-em-0_9{line-height: 0.9em;x}

.lh-em-1_5{line-height: 1.3em;}
.lh-em-2{line-height: 1em;}

.fw-b{font-weight: bold;}

h1,h2,h3,h4,h5{padding: 0; overflow-wrap: anywhere; font-weight: normal; font-size: clamp(2.5rem, 2.28rem + 1.11vw, 3rem);} 



.reveal{
  position: relative;
  transform: translateY(150px);
  opacity: 0;
  transition: 1s all ease;
}

.reveal.active{
  transform: translateY(0);
  opacity: 1;
}


/*
.h_animation {

	top:0; right:-50%;
	transition: right 1s 1s;	
	opacity: 0;
	visibility: hidden;
	transition: all 2s ease-in-out;
	
}

.slideright {
	right: 0;
opacity: 1;
	visibility: visible;

	
}
*/




.line{border-bottom: 1px solid var(--color-highlight); height: 1px; width: 33%; margin: 2em 0 0 0;}



/*
h3:after
	{
	background: var(--color-c5) none repeat scroll 0 0;
	bottom: -20px;
	content: "";
	height: 2px;
	left: 50%;
	margin-left: -40px;
	position: absolute;
	width: 80px;

}
*/
.spacer-em-0_25{height: 0.25em; clear: both; display: block;}
.spacer-em-0_5{height: 0.5em; clear: both; display: block;}
.spacer-em-0_5{height: 0.75em; clear: both; display: block;}
.spacer-em-1{height: 1em; clear: both; display: block;}
.spacer-em-2{height: 2em; clear: both; display: block;}
.spacer-em-4{height: 4em; clear: both; display: block;}
.spacer-em-6{height: 6em; clear: both; display: block;}
.spacer-em-8{height: 8em; clear: both; display: block;}
.spacer-bottom{height: 4em; clear: both; display: block;}

.p-10_0{padding: 10px 0;}
.p-0{padding: 0 !important;}
.p-0_20{padding: 0 20px ;}
.p-0_40{padding: 0 40px ;}
.p-20{padding: 20px ;}

.outline-1{outline: 1px solid var(--color-c1);}
.outline-1_10{outline: 16px solid  var(--color-c1);}
.outline-w_10{outline: 16px solid white;}


.bc-2{border-color: var(--color-c2) !important;}

.c-1{color: var(--color-c1);}
.c-2{color: var(--color-c2);}
.c-3{color: var(--color-c3);}
.c-4{color: var(--color-c4);}
.c-5{color: var(--color-c5);}
.c-higlight{color: var(--color-higlight);}
.c-higlight_2nd{color: var(--color-highlight-2nd);}

.c-white{color: var(--color-white);}
.c-black{color: #000000;}

.c-hihlight-bg-black{color:#A6A6A6;}


.bg-c-1{background-color: var(--color-c1) !important;}
.bg-c-2{background-color: var(--color-c2) !important;}
.bg-c-3{background-color: var(--color-c3) !important;}
.bg-c-4{background-color: var(--color-c4) !important;}
.bg-c-5{background-color: var(--color-c5) !important;}
.bg-c-highlight{background-color: var(--color-highlight)}

.bg-c-red{background-color: #EC5051 !important;}
.bg-c-green{background-color: #8bd485  !important;}
.bg-c-white{background-color: #ffffff  !important;}
.bg-c-black{background-color: #000000  !important;}

.ts-hero-holder {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}



#tsolis-header-gradient {
	display: -ms-flexbox;
	display: flex;
	position: relative;
	
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;	
}


.box-3-l{height: 66px;}
.stopper_everywhere{min-height:600px;}


.stopper_2nd{min-height:640px; display: none;}



.stopper_1
{
	background-image: url(images/traurednerin-rebecca-jaeger-parallax2.jpg);
	position: relative;
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	height: 640px;
}


@media screen and (min-width:720px) {

	.box-3-l{height:inherit;}
	
	.stopper_everywhere{min-height:400px; }
	.stopper_2nd{min-height:460px; }
	
	.stopper_1
	{
	
		height: 460px;
	}
 }


.spacer-img-pos1
{
	background-image: url(/fileadmin/user_uploads/stopper_1.webp);
	position: relative;
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	height: 460px;
}

.spacer-img-pos2
{
	background-image: url(/fileadmin/user_uploads/stopper_2.webp);
	position: relative;
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	height: 400px;
}

.spacer-img-pos2_m
{
	background-image: url();
	position: relative;
	background-position: center center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	height: 200px;
}





a#scrollUp {
	background: var(--color-c1) none repeat scroll 0 0;
	border-radius: 5px;
	bottom: 95px;
	color: #fff;
	font-size: 23px;
	height: 40px;
	line-height: 41px;
	position: fixed;
	right: 32px;
	text-align: center;
	width: 40px;
}
a#scrollUp:hover {
	background: var(--color-c2) none repeat scroll 0 0;
	font-size: 16px;
	font-weight: bold;
 
	border: 1px solid var(--color-c3) !important;
	transition: all 0.4s ease 0s;
}

*:focus {
	outline: none;
	 border-color: inherit;
  -webkit-box-shadow: none;
  box-shadow: none;
}










.tsolis-mh-300
{
	max-height: 300px;
	overflow: hidden;
}





.text-animation {
  position:relative;
  color:#eee;
  height:200px;
  line-height:200px;
  overflow:hidden;
}
.text-animation span {
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  opacity:0;
  text-transform:uppercase;
  letter-spacing:5px;
}






@keyframes pulse {
 0% {
 transform: scale(1, 1);
}
 50% {
 transform: scale(1.1, 1.1);
}
 100% {
transform: scale(1, 1);
};
}

.header_btn {

	width: 200px;
	height: 200px;
	-webkit-animation: pulse 1.5s linear infinite;
	animation: pulse 1.5s linear infinite;
	border-radius: 50%;
	
	
	
}

.header_btn span{transform: rotate(5deg);}

.header_btn:hover {
	-webkit-animation: none;
	animation:none;
}





.fade-in {
  animation: fadeIn ease 2s;
  -webkit-animation: fadeIn ease 2s;
  -moz-animation: fadeIn ease 2s;
  -o-animation: fadeIn ease 2s;
  -ms-animation: fadeIn ease 2s;
}
@keyframes fadeIn {
  0% {opacity:0;}
  100% {opacity:1;}
}

@-moz-keyframes fadeIn {
  0% {opacity:0;}
  100% {opacity:1;}
}

@-webkit-keyframes fadeIn {
  0% {opacity:0;}
  100% {opacity:1;}
}

@-o-keyframes fadeIn {
  0% {opacity:0;}
  100% {opacity:1;}
}

@-ms-keyframes fadeIn {
  0% {opacity:0;}
  100% {opacity:1;}
}






.main-menu{list-style: none;
	
	display: inline-block;
	text-align: left;
	width: 100%;
	margin: 0;
	padding: 0;

	
}



.main-menu li{  position: relative; display: inline-block; }
.main-menu li a{color: white; display:inline-block; padding: 10px 15px;}
/* .main-menu li a:hover{color:#e52020;} */


.mobile-menu-holder .main-menu li {display:block;}
.mobile-menu-holder .main-menu li.sub{padding: 0 0 0 20px;} 
.mobile-menu-holder .main-menu li a{color: white; display:inline-block; padding: 0 10px 10px 10px;}


.main-menu li:hover
{
	
}

.main-menu li.no_hover:hover
{
	background-color: transparent;
}



.main-menu li:hover a
{
	color: white;
	background-color: var(--color-c1);
}

.mobile-menu-holder .main-menu li:hover a
{
	color: white;
	background-color: transparent;
}

.main-menu li.highlight{background-color: var(--color-c1); border-radius: 5px;}
.main-menu li.highlight:hover{background-color: var(--color-highlight);}

.main-menu li:hover div.container{
	display: block;
	width: auto;

}


.main-menu li .container{display: none; z-index: 80; position: absolute;
	background-color: var(--color-c1); top: 70%;}
	
.main-menu li .container a { display: block;  }	

.main-menu li .container a:hover { outline: 1px solid white;}
	


  
  transition: background-size 0.8s ease;
	padding: 20px 24px;
	font-size: 1.2rem;
  
	/* Hover-Farbverlauf als Overlay */
	background-image: linear-gradient(
	  var(--color-highlight-hover),
	  var(--color-highlight-hover)
	);
	background-repeat: no-repeat;
	background-position: top left;
	background-size: 0% 100%;
  
}

.btn-primary:hover {
 background-size: 100% 100%;
}





.cta{ padding: 20px 24px; border-radius: 10px; color: #ffffff; font-size: 1.2em;  
  background-color: var(--color-highlight) !important;
transition: background-size 0.8s ease;
background-image: linear-gradient(
  var(--color-highlight-hover),
  var(--color-highlight-hover)
);
background-repeat: no-repeat;
background-position: top left;
background-size: 0% 100%;

}
.cta:hover{ background-size: 100% 100%; color:white;}

.cta_white{ background-color: #ffffff; padding: 14px 20px; border-radius: 18px; color: var(--color-c1); font-size: 0.8em;  -webkit-transition: background-color 0.5s ease-out;
  -moz-transition: background-color 0.5s ease-out;
  -o-transition: background-color 0.5s ease-out;
  transition: background-color 0.5s ease-out;}
.cta_white:hover{  background-size: 100% 100%;}


.cta_black{ background-color: var(--color-c5); padding: 14px 20px; border-radius: 18px; color: white; font-size: 0.8em;  -webkit-transition: background-color 0.5s ease-out;
  -moz-transition: background-color 0.5s ease-out;
  -o-transition: background-color 0.5s ease-out;
  transition: background-color 0.5s ease-out;}
.cta_black:hover{ background-color: var(--color-c3); color: white;}


.form-ts{font-size: 14px; width: 100%; border: none; padding: 10px 10px; background-color: var(--color-c1) !important; color:white; border:1px solid var(--color-c2) ; }
.form-ts:focus{background-color:  var(--color-c5) !important; color: white;}

input::-webkit-input-placeholder {
	color: var(--color-c3);
	font-size: 0.8em;
}
textarea::-webkit-input-placeholder {
	color: var(--color-c3);
	font-size: 0.8em;
}


input:focus::-webkit-input-placeholder {
	color: var(--color-c1);
	font-size: 0.8em;
}

textarea:focus::-webkit-input-placeholder {
	color: var(--color-c1);
	font-size: 0.8em;
}



 .ts-font-big{font-size: clamp(3rem, 2.56rem + 2.22vw, 4rem);}
  .ts-font-1{font-size: clamp(2.5rem, 2.28rem + 1.11vw, 3rem);}
  .ts-font-2{font-size: clamp(2rem, 1.78rem + 1.11vw, 2.5rem);}
  .ts-font-3{font-size: clamp(1rem, 0.56rem + 2.22vw, 2rem);}
  
  .ts-font-4{font-size: clamp(1.2rem, 1.07rem + 0.67vw, 1.5rem);}
  .ts-font-5{font-size: clamp(0.8rem, 0.71rem + 0.44vw, 1rem);}
  .ts-font-6{font-size: clamp(0.7rem, 0.66rem + 0.22vw, 0.8rem);}



.ts-ul-content
{
	margin: 0;
	padding: 0 0 0 16px;
}

.ts-ul-content-counter
{
	margin: 0;
	padding: 0 0 0 2px;
	list-style: none;
}


#cookie-popup { 
  text-align: center; 
  background:  var(--color-c4);
  position: fixed;
  bottom: 0; 
  color: white;
  left: 0;
  right: 0;
  z-index: 9999;
  font-size:14px; 
  line-height:20px;
  padding: 20px;
  -webkit-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.2);
  -moz-box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.2);
  box-shadow: 0px 0px 5px 0px rgba(0,0,0,0.2);
  }
 
#cookie-popup.hidden {
  display: none;
}


.btn-primary-highlight{background-color: var(--color-c5) !important;border:1px solid var(--color-border); text-transform: uppercase; font-weight: normal;cursor: pointer; color:white;}
.btn-primary-highlight:hover{background-color: var(--color-c1) !important; color:white;}


/*bootstrap ovverride*/
.btn-primary {
  background-color: var(--color-highlight) !important;
  border:0;
  text-transform: uppercase;
  font-weight: normal;
  cursor: pointer;
  color: white;
border-radius: 10px !important;
  /* Animation hinzufügen */
 
  padding: 20px 24px; border-radius: 25px;
  font-size: 1.2rem;
  
  
  transition: background-size 0.8s ease;
	padding: 20px 24px;
	font-size: 1.2rem;
  
	/* Hover-Farbverlauf als Overlay */
	background-image: linear-gradient(
	  var(--color-highlight-hover),
	  var(--color-highlight-hover)
	);
	background-repeat: no-repeat;
	background-position: top left;
	background-size: 0% 100%;
  
}

.btn-primary:hover {
 background-size: 100% 100%;
}








ul.timeline {
	list-style-type: none;
	position: relative;
}
ul.timeline:before {
	content: ' ';
	background: #d4d9df;
	display: inline-block;
	position: absolute;
	left: 29px;
	width: 2px;
	height: 100%;
	z-index: 400;
}
ul.timeline > li {
	margin: 20px 0;
	padding-left: 20px;
}
ul.timeline > li:before {
	content: ' ';
	background: white;
	display: inline-block;
	position: absolute;
	border-radius: 50%;
	border: 3px solid var(--color-c1);
	left: 20px;
	width: 20px;
	height: 20px;
	z-index: 400;
}



ul.ts-list li {margin-bottom: 0.5em;
}

.accordion-button{background-color: var(--color-c1) !important; color:var(--color-white) !important;}
.accordion-button:hover{background-color: var(--color-c2) !important; color:var(--color-white) !important;}
//.accordion-item button.collapsed{background-color: var(--color-c2) !important;}


.form-floating{margin: 0 0 20px 0;}
.ts-form-control{padding: 8px 8px !important; margin:0 !important; width: 100%; border: 1px solid black; border-radius: 5px; font-size: 1em;}
.ts-form-control:focus{ border: 1px solid var(--color-c1); color:var(--color-c1);}


.ts-form-selecz-control{padding: 8px 10px !important;width: 100%; border: 1px solid black; border-radius: 5px; font-size: 1em;  color: var(--color-c3);}
.ts-form-selecz-control:focus{border: 1px solid red;  color: var(--color-c1);}



.wave{
	position:absolute; bottom:-1%; left:0; z-index:200; width:100%;
	
}

@media (min-width: 768px) { 
	.wave{
		  bottom:-10%;  
	  }
	
 }

}
 
@media (min-width: 1400px) { 	
	 .wave{
		   bottom:-13%;  
		   
	   }
  }
  
  
 @media (min-width: 1800px) { 	
	  .wave{
			bottom:-16%;  
			
		}
   }




#c861, #c864
{
	margin-bottom: 0 !important;
}

.main-container ul
{
padding: 0 ;
margin: 0 ;	
}

.main-container img
{
	border-radius: 15px;
}
.main-container li
{
	display: flex;
	flex-direction: row;
	align-items: center;
	list-style: square !important;
	
}





























#main_nav
{
	
	position: fixed;
	z-index: 300;
	width: 100%;
	top: 0;
	bottom:0;
	right: 0;
	overflow: auto;
	background-color: white;

}	


.main-container, .footer
{
	line-height: 1.8em;
	margin-bottom: 6rem !important;
	
}



@media screen and (min-width:720px) {


	.main-container, .footer
	{
		line-height: 1.8em;
		margin-bottom: 8rem;
	}
	
	#main_nav
	{
		background-color: transparent; 
		position: unset;
		width: unset;
	}	

}

 @media (min-width: 1200px) {
   .container-small {
	 width: 900px !important;

   }
 }





@media (min-width: 768px) {
   .col-md-1-5 {
	 flex: 0 0 20%;
	 max-width: 20%;
   }
 }
 
 @media (min-width: 992px) {
   .col-lg-1-5 {
	 flex: 0 0 20%;
	 max-width: 20%;
   }
 }
 
 @media (min-width: 1200px) {
   .col-xl-1-5 {
	 flex: 0 0 20%;
	 max-width: 20%;
   }
 }
 
 
 
 .faq-item
 {
	  padding: 3rem 0 1rem 0 ;
	 border-bottom: 1px solid black;
 }
 
 .faq-item p{
	margin-top: 1rem;
 }
 
 .ts-faq-answer {
   max-height: 0;
   overflow: hidden;
   transition: max-height 0.4s ease;
 }
 
 .ts-transition-icon {
   transition: transform 0.3s ease;
 }
 
 .ts-faq-toggle[aria-expanded="true"] .ts-faq-icon {
   transform: rotate(180deg);
 }
 
 
 
 
.ts-faq-answer.open {
   max-height: 1000px; /* groÃŸ genug fÃ¼r den Text */
 }


.form-floating textarea.form-control {
   height: 120px;
 }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 /* entfernt den Dropdown-Pfeil bei allen Dropdown-Toggles */
   .nav-link.dropdown-toggle::after {
	 display: none !important;
   }
 
 /* Entfernt die blaue Outline/Box-Shadow bei Hover und Focus */
 .navbar .dropdown-toggle:hover,
 .navbar .dropdown-toggle:focus,
 .navbar .dropdown-toggle:focus-visible {
   outline: none !important;
   box-shadow: none !important;
   border: none !important;
 }
 
 
 li.nav-item ul
 {
	 background-color: #d96100;
	 border-radius: 0 !important;
 }
 
 li.nav-item ul li a
 {
	 margin: 8px 0;
	 padding: 10px 16px !important;
 }
 
 li.nav-item ul a {
	 color: white;
 }
 
 a.nav-link {
	 color:white;
	 font-size: 1.1rem;
	 padding: 10px 16px !important;
 
 }
 
 a.nav-link-active {
	 background-color: #d96100;
 
 }
 
 a.nav-link:hover{
	 background-color: #d96100;
	 color: white;
 }
 
 .navbar .dropdown-menu {
   margin-top: 0 !important;
 }
 
 
 
 /* 2. Behalte den Hover-Style auf dem Parent-Link, solange das .dropdown oder das .dropdown-menu gehovt ist */
 .navbar .dropdown:hover > .nav-link,
 .navbar .dropdown:focus-within > .nav-link {
   /* Beispiel: gleiche Hintergrund-/Textfarbe wie beim normalen Hover */
   background-color: #d96100;
   outline: none;
   box-shadow: none;
   color: white !important;
 }
 
 
 
 /* 2) Sorgt dafür, dass beim Verlassen (kein Hover mehr) sofort zurückgesetzt wird */
 .navbar .dropdown:not(:hover) > .nav-link {
   background-color: transparent !important;
   
   color: white !important;
 }


.ts-template-200-left
{
	padding-right: 2rem;
}

.ts-template-200-right
{
	padding-left: 2rem;
}