/* Import Webfonts */
@font-face {
	font-family: "Open-Sans";
	src: url("../Fonts/OpenSans-VariableFont.ttf") format("truetype");
}


/* Import Constants */
@import url("constants.css"); 


body {
	font-family: var(--ff-prim);
	font-weight: 400;
	font-size:19px; 
	line-height:140%;
	color:var(--clr-quar);
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
}

p {  
	margin-bottom: 20px;
}

.main-rightcol {
	font-size:16.5px; 
	line-height:130%;
}

h1, h2, h3, h4, h5 {
	font-family: var(--ff-prim);
    margin-top: 0px !important;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
}
	
h1 {
	font-size: 35px;
	font-weight:700;
	color:var(--clr-prim);
	margin-bottom:20px;
	line-height:120%;
	letter-spacing:0.3px; 
}

h2 {
	font-size: 19px;
	font-weight:700;
	color:var(--clr-prim);
	margin-bottom:10px;
	line-height: 120%;
	text-transform:uppercase
}

h3 {
	font-size: 25px;
	font-weight:700;
	color:var(--clr-quar);
	margin-bottom:16px;
	line-height:130%;
}

h4 {
	font-size:17px;
	font-weight:700;
	color:var(--clr-prim);
	margin-bottom:10px;
	line-height:120%;
	text-transform:uppercase; 
}

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

h2.font-handwriting {
	font-family: var(--ff-sec);
	font-size:98px; 
	font-weight: 700;
	font-style: normal;
	color:#fff; 
	text-transform:none !important; 
	text-shadow: 2px 2px 5px #656565;
	line-height: 100%;
}

strong {
	font-weight:700;
}

.font-blue {
	color:var(--clr-prim);
} 

.font-black {
	color:var(--clr-quin);
} 


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

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

.frame-tboxblue p {
	margin-bottom:0px; 
}




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


/* Fusszeile */
footer h2 {
	font-size: 28px;
	font-weight: 900;
	color: var(--clr-prim);
	margin-bottom: 0px;
	text-align: left;
	text-transform:none;
}


footer h3 {
	font-size: 17px;
	font-weight: 700;
	color: var(--clr-prim);
	margin-bottom: 10px;
	text-align: left;
	text-transform: uppercase;
}

footer p,
footer ul li,
footer table td {
	color:#111;
	line-height:150%;
	font-weight:400;
	font-size:17px;
}

footer p  {
	margin-bottom:10px; 
}

footer #frow2,
footer #frow2 p,
footer #frow2 a {
  color: #6b6b6b;
  font-size: 16px;
}



footer #frow2 a:hover {
  color: #111;
  font-size: 16px;
}





/* 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(--clr-quar);
	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(--clr-prim);
}


main .frame-tboxblue a {
	color:var(--clr-default);
}

main .frame-tboxblue a:hover {
	color:var(--clr-sec);
}




.downloads a {
	color:#fff;
	text-decoration:underline; 
	font-size:18px; 
}

.downloads a:hover {
	color:var(--clr-prim-light); 
}




a.linkbutton1,
a.linkbutton1:visited {
	position: relative;
	display: inline;
	text-decoration:none !important;
	outline: none !important;
	border: none !important;
	padding: 8px 20px;
	border-radius: 22px;
	background-color: #2E2E2E;
	color: #fff !important;
	font-weight:700;
  transition: all .4s ease;
}

a.linkbutton1:hover {
	color:#fff !important;
	background-color: var(--clr-prim);
}



a.linkbutton2,
a.linkbutton2:visited {
	display: inline-block;
	text-decoration:none !important;
	outline: none !important;
	font-weight:600;
}

a.linkbutton2::after {
	display:inline-block;
	position:relative;
	margin-left:7px;
	width:15.7px;
	height:12.9px;
	content:'';
	background: url('/typo3conf/ext/t3master/Resources/Public/Icons/linkpfeil.svg');
	background-position: 0px 0px;
	background-size: contain;
	background-repeat: no-repeat;
	transition: all .4s ease;
}

a.linkbutton2:hover {
	color:var(--clr-prim);
}

a.linkbutton2:hover::after {
	margin-left:11px;
}


.flex-bottom {
	margin-top: 30px;
	align-content: flex-end;
	flex: 1 1 !important;
}



/* Listen */
main ol, main ul {
  padding-left: 1rem;
  margin-bottom:0px; 
  margin-top:6px; 
}

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




/* Footer Linkstile */
footer a, footer a:visited { color:#111; text-decoration:none; transition: all .2s ease;}
footer a:hover, footer a:focus { color:var(--clr-prim); text-decoration:none; }
a.megura {text-decoration:none !important; color:#111 !important; font-size:12px !important; padding:0px;  }
a.megura:hover {color:#111 !important;}

.meguralink {
	margin-top:12px; 
	font-size:14px !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 #D1D1D1;
    color: #BABABA;
    font-size: 28px;
    line-height: 42px;
    font-weight: 400;
}







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

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

	h1 { font-size: 34px; }
	h5 { font-size: 28px; }
	h2.font-handwriting { font-size:88px; }

}

@media screen and (max-width: 991.5px) { 	
	h1 { font-size:32px; }
	h3 { font-size:23px; }
	h5 { font-size:26px;} 
	h2.font-handwriting { font-size: 80px; }
}


@media screen and (max-width: 767.5px) { 	
	body { font-size:18px; }
	h2 { font-size:18px; }
	h4 { font-size:17px; }
	h5 { font-size:25px;} 
}

@media screen and (max-width: 710px) { 
	h2.font-handwriting .ltwo { padding-left:40px; }
}

@media screen and (max-width: 575.5px) { 
	h1 { font-size:30px; letter-spacing: 0.2px; }
	footer h2 {	font-size: 25px;}
	h2.font-handwriting { font-size: 70px; }
}

@media screen and (max-width: 480px) { 
	body { font-size:17px; }
	h1 { font-size:25px; }
	h2 { font-size:17px; }
	h3 { font-size:22px; }
	h4 { font-size:16px; }
	h5 { font-size:23px;} 

	.main-rightcol { font-size:16.5px;  }
	h2.font-handwriting { font-size: 54px; }


	a.linkbutton1, a.linkbutton1:visited {
		padding: 6px 17px;
		font-weight: 600;
	}

}





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

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

