:root{
 --color-c1:#719430;
  --color-c2:#a4b763;
  
  --color-c3:#405b25;
  --color-c4:#d1e04f;
  --color-c5:#0D0D0D;
  
  --color-white:#ffffff;
  --color-dark:#1a2411;
  --color-highlight: #a4b763;
  --color-highlight-2nd:#d1e04f; 
}
 
 

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


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



.footer a {
	color: var(--color-white);
	line-height: 1.6em;
}


.footer
{
color: var(--color-white);
}

a{
	text-decoration: none;
}

strong{color: var(--color-c1);}

#c823 {color:white;}
#c823 strong{color: var(--color-c4);}

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

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



h1,h2,h3,h4,h5{margin: 0;padding: 0; overflow-wrap: anywhere; font-weight: normal; color: var(--color-dark); margin-bottom: 30px;}

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



.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-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);}



#tsolis-header-gradient {
  min-height: 100vh;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  flex-direction: column;
  justify-content: flex-start; /* optional: Inhalt oben halten */
}


@media (min-width: 768px) { 
	
	#tsolis-header-gradient {
	
		height: 100vh; 
		
	}

}


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

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




















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

   }
 }





.ts-hero-holder {

  max-width: 960px; /* oder 1140px, je nach gewünschter Breite */
  width: 100%;
  margin: 0 auto;
  
  text-align: center;
}

.ts-hero-holder .ts-font-4, .ts-hero-holder .ts-font-1
{


	  transform: translate(-50%, -50%);
	  color: #ffffff;
	  text-shadow: 0 2px 6px rgba(0, 0, 0, 0.7); /* starker dunkler Schatten */

	  font-weight: bold;
	  text-align: center;
	  z-index: 2;
	  font-size: 2em;
}


.cta-button-animated-small {
  display: inline-block;
  background-color: var(--color-c2);
  color: white;
  padding: 7px 14px;
  border-radius: 8px;
  font-size: 1rem;
  text-decoration: none;
  transition: transform 0.2s ease, background-color 0.3s ease;

}

.cta-button-animated-small:hover {
  animation: pulse 0.6s ease-in-out;
  background-color: var(--color-c1);
}


.cta-button-animated {
  display: inline-block;
  background-color: var(--color-c2);
  color: white;
  padding: 14px 28px;
  border-radius: 8px;
  font-size: 1.4rem;
  text-decoration: none;
  font-weight: 600;
  transition: transform 0.2s ease, background-color 0.3s ease;
  font-family: 'Teko', sans-serif;font-weight: 200; 
}

.cta-button-animated:hover {
  animation: pulse 0.6s ease-in-out;
  background-color: var(--color-c1);
}

@keyframes pulse {
  0% {
	transform: scale(1);

  }
  50% {
	transform: scale(1.05);

  }
  100% {
	transform: scale(1);
	
  }
}




.form-floating textarea.form-control {
  height: 150px;
}


/* Navigation selbst */
ul.navbar-nav {
  display: flex;
  gap: 24px;
  justify-content: center; /* Zentriert die Listenelemente innerhalb des ul */
  list-style: none;
  margin: 0;
  padding: 0;
  background-color: transparent; /* Rot nur zu Testzwecken, danach entfernen */
}

ul.navbar-nav li a {
  text-decoration: none;
  color: #405b25; /* sattes dunkles Grün */
  padding: 8px 12px;
  transition: color 0.3s ease, border-bottom 0.3s ease;
  border-bottom: 2px solid transparent;
}

ul.navbar-nav li a:hover,
ul.navbar-nav li a:focus {
  color: #719430;
  border-bottom: 2px solid #719430;
}







.cookie-popup {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0,0,0,0.9);
  color: white;
  padding: 1rem;
  z-index: 10000;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 0.9rem;
}

.cookie-popup-inner {
  max-width: 800px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1rem;
  align-items: center;
}

.cookie-popup p {
  margin: 0;
  flex: 1;
}

.cookie-popup a {
  color: #ffffff;
  text-decoration: underline;
}

.cookie-popup button {
  flex-shrink: 0;
}

