:root{
	 --color-c1:#052440;
	 --color-c2:#166B8C;
	 --color-c3:#248EA6;
	 --color-c4:#50B4BF;
	 --color-c5:#BF3E21;	 
	 --color-bright:#ffffff;
	 --color-dark:#000000;
	 --color-grey:#f1f4f7;
	 --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%;}
.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{margin: 0;padding: 0; overflow-wrap: anywhere; font-weight: normal; margin-bottom: 40px;}



.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-bright{color: var(--color-bright);}
.c-grey{color: var(--color-grey);}
.c-dark{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-bright{background-color: var(--color-briight) !important;}
.bg-c-dark{background-color: var(--color-dark) !important;}

.bg-c-grey{background-color: var(--color-grey) !important;}





#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;}
	



/* .cta{ background-color: var(--color-highlight); padding: 14px 20px; border-radius: 25px; color: #ffffff; 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:hover{ background-color: var(--color-highlight-hover); color: #ffffff;} */

.cta{background-color: var(--color-c5) !important; color: var(--color-bright); border:none;  font-weight: normal;cursor: pointer; border-radius: 30px; padding: 1rem 2rem;}
.cta:hover{background-color: var(--color-c3) !important;}

.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-color: var(--color-highlight-2nd); color: #ffffff;}


.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[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="date"],
textarea {
	background-color: var(--color-grey) !important;
}

input:focus,textarea:focus {
	border-color: #20c4cb !important;
	outline: none !important;
	box-shadow: none !important;
}

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

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


.form-check-input:checked {
	background-color: var(--color-c3);
	border-color: var(--color-c3);
}

.form-check-input:focus {
	border-color: var(--color-c3);
	box-shadow: none;
}


 .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-c4) !important;border:none;  font-weight: normal;cursor: pointer; border-radius: 30px; padding: 1rem 2rem;}
.btn-primary:hover{background-color: var(--color-c5) !important;}








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%;  
			
		}
   }


.main-container
{
	line-height: 1.8em;
}
.main-container ul
{
padding: 0 ;
margin: 0 ;	
}

.main-container li
{
	display: flex;
	flex-direction: row;
	align-items: center;
	
}

.main-container img
{
	border-radius: 5px;
}










#c976, #c977
{
	margin-bottom: 60px;
}


#content2631 a, #content2632 a
{
	color: var(--color-c1);
}

#content2631 a:hover, #content2632 a:hover
{
	color: var(--color-c5);
}


.tsolis
{
	color: var(--color-bright);
	font-size: 12px;
}

.main-container
{
	margin-bottom: 60px;
}





.ts-select {
  
  padding: 10px;
  border: 1px solid var(--color-c2);
  border-radius: 8px;
  font-size: 16px;
  background-color: var(--color-c4);
  color: var(--color-bright);
}

.ts-select:focus {
  border-color: var(--color-c2);
  box-shadow: 0 0 5px rgba(32,196,203,0.5);
  outline: none;
}

.btn-primary
{
	background-color: var(--color-c5) !important;	
	font-size: 16px !important;
}

.btn-primary:hover
{
	background-color: var(--color-c1) !important;	
}

#content2632 a,#content2631 a{
	color:white;
}

#content2632 a:hover,#content2631 a:hover{
	color:#103d95;
}



#c1055 button
{
	background-color: #d7d7d7 !important;
}



.row-cols-7 > * {
	flex: 0 0 auto;
	width: 14.285714%;
}












/* =========================================================
   Desktop Dropdown-Menü per Hover
   Nur Desktop-Version, Mobile bleibt unverändert
   ========================================================= */
.navbar-nav > li > a.nav-link {
	   color: white !important;
	   padding: 10px 15px;
	   border-radius: 5px;
   }
   
.navbar-nav > li > a.nav-link:hover {
		 background-color: var(--color-c3) !important;
		 
	 }
	     
   /* 
.navbar-nav > li#nav-482 > a.nav-link {
		  color: white !important;
		  background-color: var(--color-c1) !important;
		  padding: 10px 15px;
		  border-radius: 5px;
	  }    */
   
  

@media (min-width: 992px) {

	/* Dropdown-Elternpunkt */
	.navbar-nav .nav-item.dropdown {
		position: relative;
	}

	/* Dropdown standardmässig ausblenden */
	.navbar-nav .nav-item.dropdown > .dropdown-menu {
		display: none;
		position: absolute;
		top: 100%;
		right: 0;
		left: auto;
		z-index: 1000;
		min-width: 220px;
		margin-top: 0;
		padding: 8px 0;
		background-color: #ffffff !important;
		border: 0 !important;
		border-radius: 6px;
		box-shadow: 0 8px 20px rgba(0,0,0,0.12);
	}

	/* Dropdown bei Hover anzeigen */
	.navbar-nav .nav-item.dropdown:hover > .dropdown-menu {
		display: block;
	}

	/* Hauptlink beim Hover */
	.navbar-nav .nav-item.dropdown:hover > .nav-link {
		color: #ffffff !important;
		background-color: var(--color-c2) !important;
		border-radius: 5px;
	}

	/* Dropdown-Listenelemente */
	.navbar-nav .dropdown-menu li {
		display: block;
		width: 100%;
		margin: 0;
	}

	/* Dropdown-Links */
	.navbar-nav .dropdown-menu .dropdown-item {
		display: block;
		width: 100%;
		padding: 9px 16px;
		color: var(--color-c1) !important;
		background-color: transparent !important;
		border-radius: 0;
		white-space: nowrap;
	}

	/* Dropdown-Link Hover */
	.navbar-nav .dropdown-menu .dropdown-item:hover,
	.navbar-nav .dropdown-menu .dropdown-item:focus {
		color: #ffffff !important;
		background-color: var(--color-c2) !important;
	}

	/* Verhindert, dass deine allgemeine li:hover-a-Regel alle Dropdown-Links färbt */
	.navbar-nav .nav-item.dropdown:hover .dropdown-menu .dropdown-item {
		color: var(--color-c1) !important;
		background-color: transparent !important;
	}

	.navbar-nav .nav-item.dropdown:hover .dropdown-menu .dropdown-item:hover {
		color: #ffffff !important;
		background-color: var(--color-c2) !important;
	}
}

.navbar-nav > li#nav-482  > a.nav-link {
	 background-color: var(--color-c2) !important;
	 
 }
 
 .navbar-nav > li#nav-482  > a.nav-link:hover {
	  background-color: var(--color-c3) !important;
	  
  }


.ts-badge-lessen
{
	background-color: var(--color-bright);
	padding: 0.25rem 0.5rem;
	border-radius: 5px;
	display: inline-block;
	margin: 0 0.5rem 0.5rem 0;
	border: 1px solid var(--color-grey);
}


.ts-badge-home-title .google-font
{
	color: var(--color-bright);
}

.ts-badge-home-title .cta
{
	background-color: var(--color-c5) !important;border:none;  font-weight: normal;cursor: pointer; border-radius: 30px; padding: 1rem 2rem;
}

.ts-badge-home-title .cta:hover
{
	background-color: var(--color-c1) !important;
}


.ts-courses-overview img
{
	height: 50px;
	  width: auto;
	  max-width: none;
	  flex-shrink: 0;
	  object-fit: contain;
}

.navbar-toggler
{
	border-color: var(--color-bright);
}






@media (max-width: 767.98px) {

	.mobile-w-100 {
		width: 100% !important;
	}

	#main_nav.collapsing,
	#main_nav.show {
		position: fixed;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		background: var(--color-c1);
		z-index: 9999;
		padding: 80px 30px 30px 30px;
		overflow-y: auto;
		transition: none;
	}

	#main_nav.collapsing .navbar-nav,
	#main_nav.show .navbar-nav {
		width: 100%;
		text-align: left;
	}

	#main_nav.collapsing .nav-link,
	#main_nav.show .nav-link {
		color: #fff;
		font-size: 1.4rem;
		padding: 12px 0;
	}

	#main_nav.collapsing .dropdown-menu,
	#main_nav.show .dropdown-menu {
		display: block;
		position: static;
		float: none;
		width: 100%;
		margin: 0;
		padding: 0 0 15px 15px;
		background: transparent;
		border: 0;
		box-shadow: none;
	}

	#main_nav.collapsing .dropdown-item,
	#main_nav.show .dropdown-item {
		color: #fff;
		font-size: 1rem;
		padding: 7px 0;
		white-space: normal;
		background: transparent;
	}

	.navbar-toggler {
		position: relative;
		z-index: 10000;
	}
	
	
	#main_nav  li a
	{
		font-size: 1rem !important;
		
	}
	
	.navbar-nav > li#nav-482  > a.nav-link	{
		background-color: transparent !important;
		color: var(--color-c4) !important;
	}
}

.mobile-menu-toggle .icon-close {
	display: none;
}

.mobile-menu-toggle[aria-expanded="true"] .icon-open {
	display: none;
}

.mobile-menu-toggle[aria-expanded="true"] .icon-close {
	display: inline-block;
}