/* Import Webfonts */
@font-face {
	font-family: "Roboto-Light";
	font-weight: 300;
	src: url("../Fonts/Roboto-Light.ttf") format("truetype");
	font-display: swap;
  }

@font-face {
  font-family: "Roboto-Regular";
  font-weight: 400;
  src: url("../Fonts/Roboto-Regular.ttf") format("truetype");
  font-display: swap;
}

@font-face {
	font-family: "Roboto-Medium";
	font-weight: 500;
	src: url("../Fonts/Roboto-Medium.ttf") format("truetype");
	font-display: swap;
}
 
@font-face {
  font-family: "Roboto-Bold";
  font-weight: 700;
  src: url("../Fonts/Roboto-Bold.ttf") format("truetype");
  font-display: swap;
}



@import url("constants.css"); 


body {
	font-family: var(--ff-prim), Sans-Serif;
	font-weight: 400;
	font-size:22px; 
	line-height:140%;
	color:var(--fc-prim);
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
}

p {  
	margin-bottom: 20px;
}

h1, h2, h3, h4, h5 {
	font-family: var(--ff-sec), Sans-Serif;
    margin-top: 0px !important;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
}
	
h1 {
	font-family: var(--ff-sec), Sans-Serif;
	font-size: 23px;
	font-weight:700;
	color:var(--fc-sec);
	letter-spacing:0.5px; 
	margin-bottom:25px;
	line-height:100%;
	text-transform:uppercase;
}

h2 {
	font-size: 48px;
	font-weight:700;
	color:var(--fc-prim);
	margin-bottom:20px;
	line-height: 120%;
}

h3 {
	font-size: 28px;
	font-weight:700;
	color:var(--fc-sec);
	margin-bottom:8px;
	line-height:130%;
}

h4 {
	font-family: var(--ff-ter);
	font-size:36px;
	font-weight:300;
	color:var(--fc-prim);
	margin-bottom:10px;
	line-height:140%;
}

h5 {
	font-size: 34px;
	font-weight:700;
	color:var(--fc-prim);
	margin-bottom:10px;
	line-height: 120%;
}

strong {
	font-family: var(--ff-sec);
	font-weight:700;
}

.font-green {
	color:#94D44A !important;
} 

.font-black, .font-black p {
	color:#2E2E2E;
}

.font-white, .font-white p {
	color:#fff;
}

.font-small {
	font-size:18px; 
}

.downloads h5 {
	font-size: 22px;
	font-weight:700;
	color:var(--fc-quar);
	margin-bottom:10px;
	line-height:100%;
	text-transform:uppercase;
}


.faq h1 {
  font-family: var(--ff-qua);
  font-size:18px; 
}


/* Background Modes */
.bg-1,
.bg-1 p,
.bg-1 h1,
.bg-1 h2,
.bg-1 h3,
.bg-1 h4,
.bg-1 li  {
	color:#fff;
}

.form-block,
.form-block p,
.form-block h1 {
	color:initial; 
}

.form-block h3,
.form-block h5  {
	color:var(--fc-sec);
}


.frame-tboxgreen,
.frame-tboxgreen p,
.frame-tboxgreen h1,
.frame-tboxgreen h2,
.frame-tboxgreen h3,
.frame-tboxgreen h4,
.frame-tboxgreen h5,
.frame-tboxgreen li  {
	color:#fff;
}

.frame-tboxrohr,
.frame-tboxrohr p,
.frame-tboxrohr h1,
.frame-tboxrohr h2,
.frame-tboxrohr h3,
.frame-tboxrohr h4,
.frame-tboxrohr li  {
	color:#fff;
}




/* Fusszeile */
footer h3 {
	font-size: 19px;
	font-weight: 700;
	color: #fff;
	margin-bottom: 10px;
	text-align: left;
	text-transform: uppercase;
}

footer p,
footer ul li {
	color:#fff;
	line-height:140%;
	font-weight:400;
	font-size:18px;
}

footer #footer-c3 p {
	line-height:160%;
}





/* Linkstile */
main a img, a, a img, img { border:0px; outline:none !important;}
a img, a, a img, img { border:0px; outline:none !important;}

main a, main a:visited,
main a.download,
main a.internal-link,
main a.external-link-new-window,
main a.mail,
main a.pdf { 
	color:var(--fc-prim);
	text-decoration: underline;
	padding: 0;
	background-color:transparent;
	transition: all .2s ease;
}

main a:hover,
main a.internal-link:hover, 
main a.external-link-new-window:hover, 
main a.internal-link-new-window:hover,
main a.pdf:hover, main a.download:hover,
main a.mail:hover { 
	color:var(--fc-sec);
}

main .font-white a {
	color:#fff;
}

main .font-white a:hover {
	color:#2E2E2E;
}

.downloads p {
	font-size:19px; 
}

.downloads a,
.downloads a:visited {
	color:#fff;
	text-decoration:underline; 
	font-size:19px; 
	line-height:120%; 
	display:inline-block;
	margin-bottom:8px; 
	transition: all .2s ease;
}

.downloads a:hover {
	color:#2E2E2E; 
}




/* Linkbutton CTA Stil 1 */
a.linkbutton1,
a.linkbutton1:visited {
	position: relative;
	display: inline-block;
	text-decoration:none !important;
	outline: none !important;
	padding: 8px 25px;
	border-radius: 0px;
	color: #fff ;
	background-color: #2E2E2E ;
	border: 2px solid #94D44A !important;
	background-color:#fff;
	color:#94D44A;
	font-size:20px;
	font-weight:400;
	transition: all .4s ease;
}

a.linkbutton1:hover {
	/* border: 2px solid #94D44A !important; */
	background-color:#94D44A;
	color:#fff; 
}



/* Linkbutton CTA Stil 2 */
a.linkbutton2,
a.linkbutton2:visited {
	position: relative;
	display: inline-block;
	text-decoration:none !important;
	outline: none !important;
	padding: 8px 25px;
	border-radius: 0px;
	color: #fff ;
	background-color: #2E2E2E;
	border: 2px solid #2E2E2E !important;
	color:#fff;
	font-size:20px;
	font-weight:400;
	transition: all .4s ease;
}

a.linkbutton2:hover {
	/* border: 2px solid #94D44A !important; */
	background-color:#fff;
	border: 2px solid #2E2E2E !important;
	color:#2E2E2E; 
}


/* Linkbutton CTA Special  */
.cta-special {
	display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;

}

.cta-special-title {
	margin-bottom:6px;
	text-align:center; 
}

/*
.cta-special a.linkbutton2:hover {
	background-color:#94D44A;
	border: 2px solid #94D44A !important;
	color:#fff; 
}
*/






a.linkstyle1,
a.linkstyle1:visited {
	text-decoration:none;
	transition: all .2s ease;
}

a.linkstyle1:hover {
	color:#009FE3;
}

a.linkstyle1::after {
	content: "";
	width: 14px;
	height: 22px;
	background-image: url('/fileadmin/user_upload/Dokumente/Bilder/Icons/angle-right.svg');
	background-size: 14px 18px;
	background-repeat: no-repeat;
	background-position: 0px 6px;
	display: inline-block;
	position: absolute;
	margin-left: 4px;
	transition: all .25s ease;
}

a.linkstyle1:hover:after {
	margin-left:9px; 
}







/*
.infobutton-up,
.infobutton-down  {
	display:inline-block;
	left: 50%;
	transform: translateX(-50%);
	text-decoration:none !important;
	outline: none !important;
	padding: 10px 50px;
	border-radius: 0px;
	background-color: transparent; 
	position: relative;
	border: 1px solid #E84691;
	transition: all .25s ease;
	color: #2E2E2E !important;
	font-weight:700;
}

.infobutton-up.text-center,
.infobutton-down.text-center {
	text-align: center;
}

.infobutton-up:before {
	content: "";
	width: 21px;
	height: 21px;
	background-image: url('/fileadmin/user_upload/Dokumente/Bilder/Icons/pfeil-nach-oben.svg');
	background-size: 21px 21px;
	background-repeat: no-repeat;
	background-position: 0px 0px;
	display: inline-block;
	position: absolute;
	top: calc(0% - 16px);
	left: 50%;
	transform: translateX(-50%);
	transition: all .25s ease;
}

.infobutton-down:before {
	content: "";
	width: 21px;
	height: 21px;
	background-image: url('/fileadmin/user_upload/Dokumente/Bilder/Icons/pfeil-nach-unten.svg');
	background-size: 21px 21px;
	background-repeat: no-repeat;
	background-position: 0px 0px;
	display: inline-block;
	position: absolute;
	top: calc(100% - 5px);
	left: 50%;
	transform: translateX(-50%);
	transition: all .25s ease;
}
*/



#switch-dlLink .btn {
	display: inline-block;
	border:1.2px solid #2E2E2E; 
	border-radius: 0 !important;
	background-color:#fff;
	width:260px; 
	text-decoration:none;
	transition: all .25s ease;
}


#switch-dlLink .btn:hover,
#switch-dlLink .btn.dlactive  {
	border:1.2px solid #2E2E2E; 
	background-color:#2E2E2E;
	color:#fff;
}





/* Listen */
ul {
	padding-left:1em; 
}

main ul {
	/* padding-left: 0.5rem; */
}

main ul li {
  /* list-style-type: none; */
  position: relative;
}



/* Listen */
/*
main ul {
	list-style-type:none;
	padding-left:0px !important; 
  }
  
main ul li {
	text-indent: -2em;
	padding-left: 2em;
	list-style-position: inside;
	line-height:130%; 
	margin-bottom:20px; 
  }
  
 main ul li::before {
	content: '';
	background-image: url('/typo3conf/ext/t3master/Resources/Public/Icons/arrow-right.svg');
	background-size: cover;
	background-repeat:no-repeat;
	display: inline-block;
	height: 25.5px;
	width: 22px;
	margin-right:20px; 
	vertical-align: middle;
 }
 */



/* Footer Linkstile */
footer a, footer a:visited { color:#fff; text-decoration:none; transition: all .2s ease;}
footer a:hover, footer a:focus { color:#94D44A; text-decoration:none; }
a.megura {text-decoration:none !important; color:#fff !important; font-size:12px !important; padding:0px;  }
a.megura:hover {color:#fff !important;}




/* Buttons */
.btn {
	font-size:inherit !important; 
}

.btn.focus, .btn:focus {
	outline: 0;
	box-shadow:none !important; 
}

.btn-primary{
   background-color: #008F9B;
   border-color: #008F9B;
}

.btn-primary:hover{
	 background-color: #AAAAAA;
   border-color: #AAAAAA;
}


/* Cookie Consent */
.cc-message {
	font-size: 16px;
	line-height: 130%;
}

.cc-btn {
	text-decoration: none;
}

.cc-allow,
.cc-deny {
    color: #fff !important;
}



/* Referenzen Titel */
.refTitel p {
    border-top: 1px solid #bdbdbd;
    color:#bdbdbd;
    font-weight: 400;
	padding-top:5px;
}



/* RESPONSIVE FONTS
------------------------------------------------- */

@media screen and (max-width: 1840px) { 	
	h1 { font-size:22px; margin-bottom:20px;  }
	h2 { font-size:42px; }
}


@media screen and (max-width: 1580px) { 	
	h1 { font-size:20px; margin-bottom:18px;  }
	h2 { font-size:39px; }
	h4 { font-size: 31px; }
	h5 { font-size: 32px;}

	body,p { font-size: 21px;  }
}


@media screen and (max-width: 1300px) { 	
	h4 { font-size: 30px; }
	h5 { font-size: 30px;}
}


@media screen and (max-width: 1024px) { 	

	h1 { font-size:19px; margin-bottom:15px;  }
	h2 { font-size:36px; }
	h4 { font-size: 27px; }
	h5 { font-size: 28px; } 
}


@media screen and (max-width: 992px) { 	
	#switch-dlLink .btn {
		width:200px; 
	}

	html[lang="fr"] #switch-dlLink .btn {
		width:260px; 
	}
}

@media screen and (max-width: 767px) { 	

	h2 { font-size:33px; }
	h3 { font-size:26px; }
	h4 { font-size: 24px; }
	h5 { font-size: 24px; } 
	h2 br { display:none; }
	h3 br { display:none; }

	body, p {
		font-size:20px; 
	}
}

@media screen and (max-width: 576px) { 

	h1 { font-size:18px;  }
	h2 { font-size:23px; }
	h3 { font-size:21px; }
	h4 { font-size: 19px; }
	h5 { font-size: 21px; } 

	body, p {	font-size: 19px;}

	a.linkbutton2, a.linkbutton2:visited {
		padding: 7px 20px;
		font-size: 18px;
	}

	html[lang="fr"] #switch-dlLink .btn {
		width:50%; 
	}

	.faq h1 {
		font-size:17px; 
	}

}

@media screen and (max-width: 480px) { 

	body, p {font-size: 18px;}

	
	#switch-dlLink .btn {
		width:50%; 
		padding: .35rem .5rem;
		font-size: 17px !important;
	}

	html[lang="fr"] #switch-dlLink .btn {
		font-size: 16px !important;
	}

	.downloads h5 {
		font-size: 20px;
	}

	.downloads p,
	.downloads a, 
	.downloads a:visited {
		font-size: 17px;
	}

/*
	h1 {	font-size: 28px;}
	h2 {	font-size: 27px;}
	h3 {	font-size: 18px;}
	h4 {	font-size: 19px;}
	h5 { font-size: 17px; }

 	body, p {
		font-size:17px; 
		line-height:130%;
	}
	*/
}


@media screen and (max-width: 400px) { 
		
	#switch-dlLink .btn {
		width:155px; 
		font-size:17px; 
		padding: .30rem .5rem;
	}

	a.linkbutton2, a.linkbutton2:visited {
		padding: 5px 18px;
		font-size: 17px;
	}
}





/* RTE STYLES
------------------------------------------------- */
.text-center {
	text-align: center;
  }
  
.text-right {
	text-align: right;
}

.text-justify {
	text-align: justify;
}

