﻿/*
**********************************************
***      created by Boris Schmakowski      ***
***          www.schmakowski.de            ***
**********************************************
*/

.farbe-a { color: rgb(10, 71, 130);}
.farbe-b { color: rgb(156, 155, 155);}
.farbe-c { color: rgb(217, 217, 217);}

body {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-weight: 300;
	font-style: normal;
	font-variant: normal;
	font-size: 22px;
	line-height: 1.5em;
	margin: 0;
	padding: 0;
	overflow-y:scroll;
	color: #333333;
	hyphens: manual;
}
@media (max-width: 900px) {
	body {
		font-family: 'Open Sans', Helvetica, Arial, sans-serif;
		font-weight: 300;
		font-size: 20px;
		line-height: 1.4em;
		color: #333333;
		hyphens: manual;
	}
}
@media (max-width: 600px) {
	body {
		font-family: 'Open Sans', Helvetica, Arial, sans-serif;
		font-weight: 400;
		font-size: 18px;
		line-height: 1.3em;
		color: #111111;
		hyphens: auto;
	}
}

p       	{ padding: 0 0 1em 0; margin: 0;  }
td      	{ margin: 0; padding: 0; }
table   	{ border-collapse: collapse; }
strong, b 	{ color: rgb(10, 71, 130); font-weight: 400; }
ul { 
	list-style: circle outside;
	margin: 0 0 0 1em;
	padding: 0 0 1em 0;
}
ol { 
	list-style: decimal outside; 
	margin: 0 0 0 1em;
	padding: 0 0 1em 0; 
}
ol li > ol,
ol li > ul,
ul li > ol,
ul li > ul
{ padding: 0; margin: 0 0 0 1em;}

h1,h2,h3,h4,h5,h6 {
	margin: 0;
	letter-spacing: 0.05em;
	font-weight: 300;
	color: rgb(10, 71, 130);
}
h1 {  font-size: 2em;   line-height: 1.125; margin: 0 0 0.5em 0; }
h2 {  font-size: 1.5em; line-height: 1.25;  margin: 0 0 0.5em 0; }
h3 {  font-size: 1.25em;line-height: 1.25;  margin: 1.5em 0 0.5em 0; }
h4 {  font-size: 1em;   }
h5 {  font-size: 1em;   }
h6 {  font-size: 1em;   }

h3 {
	display: flex;
	align-items: center;
	gap: .25em;
}
h3::before {
	content: "";
	display: inline-block;
	flex: 0 0 2em;
	width: 1em;
	height: 1em;
	background: url("../images/flap-1-blau.svg") center / contain no-repeat;
	margin-left: -1.25em;
	transform: translateY(-.2em);
}

.projektliste {
	list-style: none;
	margin-left: 0;
	padding-left: 0;
}
ul.projektliste li {
	position: relative;
	padding-left: 1.5em;
}
ul.projektliste li::before {
	content: "";
	position: absolute;
	left: 0;
	top: .25em;
	width: .8em;
	height: .8em;
	background: url("../images/flap-1-dgrau.svg") center / contain no-repeat;
}
ul.projektliste li:has(a:hover)::before {
	background-image: url("../images/flap-1-blau.svg");
}

a {
	transition: all .35s ease;
}
a 					{ color: rgb(10, 71, 130); text-decoration: underline; }
a:visited 			{ color: rgb(10, 71, 130); text-decoration: underline; }
a:hover 			{ color: rgb(10, 71, 130); text-decoration: none; }
a:active 			{ color: rgb(10, 71, 130); text-decoration: none; }
a img 				{ border: 0 none; text-decoration: none; }
a:has(> i) 			{ text-decoration: none; }
a:visited:has(> i)	{ text-decoration: none; }
a:hover:has(> i)	{ text-decoration: underline; }
a:active :has(> i)	{ text-decoration: underline; }
h2 a 				{ color: rgb(10, 71, 130); text-decoration: none; }
h2 a:visited  		{ color: rgb(10, 71, 130); text-decoration: none; }

/*--- Logo Startseite ---*/

.mp-start section#content {
  padding: 0;
}
.svg-logo-link {
	min-height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 2em;
	box-sizing: border-box;
}
.svg-logo {
	width: 100%;
	max-width: 700px;
}
.svg-logo svg {
	display: block;
	width: 100%;
	height: auto;
}
/*--- Logo Animation ---*/

.svg-logo [id$="-outline"] {
	opacity: 0;
}

.svg-logo #flap-2-hell { animation: flap-1 4s infinite; }
.svg-logo #flap-2-grau { animation: flap-2 4s infinite; }
.svg-logo #flap-2-blau { animation: flap-3 4s infinite; }
.svg-logo #flap-1-hell { animation: flap-4 4s infinite; }
.svg-logo #flap-1-grau { animation: flap-5 4s infinite; }
.svg-logo #flap-1-blau { animation: flap-6 4s infinite; }

@keyframes flap-1 {
	0%, 33%		{ fill-opacity: 1; }
	50%			{ fill-opacity: 0; }
	55%, 100%	{ fill-opacity: 1; }
}
@keyframes flap-2 {
	0%, 33%		{ fill-opacity: 1; }
	50%, 53%	{ fill-opacity: 0; }
	58%, 100%	{ fill-opacity: 1; }
}
@keyframes flap-3 {
	0%, 33%		{ fill-opacity: 1; }
	50%, 56%	{ fill-opacity: 0; }
	61%, 100%	{ fill-opacity: 1; }
}
@keyframes flap-4 {
	0%, 33%		{ fill-opacity: 1; }
	50%, 59%	{ fill-opacity: 0; }
	64%, 100%	{ fill-opacity: 1; }
}
@keyframes flap-5 {
	0%, 33%		{ fill-opacity: 1; }
	50%, 62%	{ fill-opacity: 0; }
	67%, 100%	{ fill-opacity: 1; }
}
@keyframes flap-6 {
	0%, 33%		{ fill-opacity: 1; }
	50%, 65%	{ fill-opacity: 0; }
	70%, 100%	{ fill-opacity: 1; }
}

a.wf_file::before {
	content: '\f1c1';
	font-family: "Font Awesome 7 Pro";
	font-style: normal;
	font-weight: 300;
	display: inline-block;
	padding: 0 2px 0 2px;
	margin: 0 0.5em 0 0;
}
a.wf_link::before {
	content: '\f0c1';
	font-family: "Font Awesome 7 Pro";
	font-style: normal;
	font-weight: 300;
	display: inline-block;
	padding: 0 2px 0 2px;
	margin: 0 0.5em 0 0;
}

/*--- diverse ----*/

::selection {
	color: #000000;
	background: rgba(250, 250, 0, 1);
	text-shadow: none;
}

blockquote {
	padding: 1em 1.5em;
	margin: 0 0 1em 0;
	font-style:italic;
	color: #000000;
	background: #f5f5f5;
	border-left: 5px dotted rgb(10, 71, 130);
}
blockquote p:last-child {
	margin: 0;
	padding: 0;
}

pre {
	font-family: Consolas, Monaco, monospace;
	white-space: pre-wrap;
	overflow-wrap: break-word;
	background-color: #f5f5f5;
	border: 5px dotted rgb(10, 71, 130);
	padding: 1em 1.5em 1em 1.5em;
	margin: 0 0 1em 0;
}


/*---- print via Browser ----*/
@media print {
	* {
		text-shadow: none !important;
		color: #000 !important;
		background: transparent !important;
		box-shadow: none !important;
		font-family: Arial, sans-serif !important;
	}
	a,
	a:visited {
		text-decoration: underline;
	}
	abbr[title]::after {
		content: " (" attr(title) ")";
	}
	.ir a::after,
	a[href^="javascript:"]::after,
	a[href^="#"]::after {
		content: "";
	}
	pre,
	blockquote {
		border: 1px solid #999;
		page-break-inside: avoid;
		break-inside: avoid;
	}
	thead {
		display: table-header-group;
	}
	tr,
	img {
		page-break-inside: avoid;
		break-inside: avoid;
	}
	img {
		max-width: 100% !important;
	}
	@page {
		margin: .5cm;
	}
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	h2,
	h3 {
		page-break-after: avoid;
		break-after: avoid;
	}
	nav,
	.mobileonly {
		display: none;
	}
	#content_outright,
	#rightcolumn,
	#leftcolumn {
		width: 100%;
	}
	#rightcolumn div.moduletable,
	#leftcolumn div.moduletable {
		border-top: 1px solid #eee;
		padding: 2.5% 0;
	}
	body::before {
		display: none;
	}
	body {
		height: auto;
	}
}


/*---- JCE Editor Spezial ----*/

body.jce-content, body.jce-content td, body.jce-content pre  {
	font-size: 18px;
	background: #ffffff;
}
img.wf_file_icon {
	height: 30px;
	width: auto;
	margin-right: 10px;
	margin-bottom: 2px;
	vertical-align: text-bottom !important;
 }