@charset "utf-8";
/* CSS Document */

/*----+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8*/
/*------------------------------- Texteinstellungen ------------------------------*/
html {
	scroll-behavior: smooth;
}		

html, body {
	padding:0;
	margin:0px, 10px, 0px, 10px;
	background:#F9FFF9;
	font:18px/22px 'Roboto', arial, sans-serif;
	/* font-family: 'Roboto', Arial, sans-serif; */
	font-size: 100%;
}

h1, h2, h3, h4 {
	font-weight:bold;
	margin:20px 0px 5px 0px;
}
h1 {
	font-size:140%;
}
h2 {
	font-size:130%;
}
h3 {
	font-size:120%;
}
h4 {
	font-size:110%;
}

.normtext {
	text-align:justify;
}

.normtextimportant {
	text-align:justify;
	font-weight: bold;
}

.companyvision {
	color:#336666;
	font-style:italic;
}

a.textlink {
	color: #336666;
	text-decoration: none;
	font-weight:bold;
}
a.textlink:visited {color:#336666;}
a.textlink:hover {color:#FF0000;}
a.textlink:active, a.textlink:focus {color:#336666;}

.textlist {
	margin:0px 0px 10px 20px;
	padding:0px 10px 0px 0px;
}
.textlist li {
}

.textlist li span {
	display:block;
	float:left;
	width:220px;
	margin:0px 0px 0px 10px;
}
.textlist li li {
	margin:0px 0px 0px 20px;
}

.textlist2 {
	margin:0px 0px 10px 20px;
	padding:0px 10px 0px 0px;
}
.textlist2 li {
	list-style-type: none;
}
.textlist2 li span {
	display:block;
	float:left;
	width:80px;
	margin:0px 0px 0px 10px;
}
.textlist2 li li {
	margin:0px 0px 0px 100px;
}

ol {
	padding:10px 0px 10px 20px;
	display:block;
}
ol ol {
	padding:0px 0px 0px 20px;
}
ol li {
	margin: 0px 10px 0px 10px;
}

.acronymclass {
	border-bottom: 1px dotted #0000FF;
}

.motto {
	font-family: 'Roboto', Arial, sans-serif;
	font-style:italic;
	font-weight:bold;
	margin-bottom:15px;
}

img {
	border:0;
}

table {
	border-collapse:collapse;
	width:97%;
	margin: 0px auto;
}
th {
	border:1px solid #000000;
	padding:3px;
	background-color:#FFCC00;
	font-weight:bold;
}
td {
	border:1px solid #000000;
	padding:3px;
}
.td160 {
	width:160px;
}

/* ---------------------------------EasyTools---------------------------------- */
.easytools {
	font-style:italic;
	font-weight:bold;
}
.easyblue {
	color:#0000FF;
}
.easyred {
	color:#FF0000;
}
.easygreen {
	color:#006600;
}
.easyyellow {
	color:#FF9900;
}


/*------------------------------ Seiteneinstellungen -----------------------------*/
.floatleft {
	float:left;
	margin:5px 10px 10px 0px;
	text-align:justify;
}

.floatright {
	float:right;
	margin:5px 0px 10px 10px;
	text-align:justify;
}

.clearall {
	clear:both;
}

.twocol {
	float:left;
	min-width:400px;
	margin-left: 10px;
	display:block;
}



/* ----------------------------------- Boxes ------------------------------------ */
.boxright_multi {
	position:relative;
	float:right;
	width:382px;
	display:block;
}

.boxright, .boxright_600, .boxright_422 {
	position:relative;
	float:right;
	display:block;
	margin:10px;
	padding:0px;
	border:1px solid #669999;
	border-radius:5px;
	border-radius:5px;
}
.boxright {
	width:360px;
}
.boxright_600 {
	width:600px;
}
.boxright_422 {
	width:422px;
}

.boxright_header {
	font-weight: bold;
	background-color: #99CCCC;
	padding:3px;
	color:#003333;
	border-top-left-radius:5px;
	border-top-right-radius:5px;
}

.boxright_header {
	text-align:center;
}

.boxright_text {
	padding:3px;
}

/*----------------------------------Beispiele------------------------------------*/
.beispielcontainer {
	border: 1px solid #336666;
	background-color:#DDEEEE;
	width:97%;
	margin: 10px auto 10px auto;
	padding:0px 10px 0px 10px;
	max-height:300px;
	overflow:auto;
}




/*------------------------------------ Header ------------------------------------*/
header {
	height:auto;
	min-height:80px;
	width:100%;
	position:relative;
}

#header_logo {
	position: absolute; /* Logo wird gescrollt */
	width:200px;
	height:68px;
	background-image: url("../pictures_root/StangerWebLogo_200.gif");
	background-repeat:no-repeat;
	background-position:left 10px;
}

header h1 {
	margin:10px 0 10px 20px;
	padding:0;
	font:300 30px/60px 'Roboto', arial, sans-serif; color:#336666;
	font-weight:bold;
	position: absolute;
	left: 50%;
	transform:translateX(-50%);
}

/*------------------------------------ Search ------------------------------------*/
#header_search {
	display:block;
	position:absolute;
	top:10px;
	right:10px;
}

.searchsubmit {
	margin:0px;
	border:0px none;
	padding:0px;
}

#searchtext {
	width:120px;
	height:16px;
	background-color:#FFFFEE;
	border:1px solid #669999;
}

header .search-icon {
	position:absolute;
	right:10px;
	top:10px;
	width:65px;
}

/*----------------------------------- Language -----------------------------------*/
.language_flags {
	display:block;
	position:absolute;
	top:50px;
	right:30px;
}

.language_flags span {
	margin: 0px 10px 0px 10px;
}


/*---------------------------------- Linkzeile -----------------------------------*/
ul.main {
	padding:0;
	margin:0;
	list-style:none;
	width:100%;
	min-height:30px;
	background:#336666;
	z-index:100002;
	box-shadow:0 3px 6px rgba(0,0,0,0.3);
	display:flex;
	justify-content:center;
	/*flex-flow: row wrap;*/
	flex-flow: nowrap;
}

ul.main li {
	display:block;
	font:400 15px/26px 'Roboto', arial, sans-serif;
	color:#F9FFF9;
	text-decoration:none;
	padding:2px 10px;
}

ul.main li a {
	display:block;
	font:400 15px/26px 'Roboto', arial, sans-serif;
	color:#F9FFF9;
	text-decoration:none;
	border-bottom:5px solid #336666;
}

ul.main li a:hover {
	border-color:#99BBBB;
}

/*---------------------------------  Menü links ----------------------------------*/
#sn_menu ul ul {
	border-left:1px solid #9e9; /* Farbe der Linie zum klammern */
	margin-left:8px;
	padding-left:15px;
	list-style:none;
}
#sn_menu {
	width:350px;
	margin:0;
	padding:0;
	position: absolute; /* Menü wird gescrollt */
	left:10px;
	top:88px;
}
#sn_menu ul {
	background:#336666;
	border-radius:0 0 10px 10px;
	margin-left:8px;
	display:block;
}
#sn_menu ul {
	padding-left:15px;
} 

#sn_menu li {
	display:grid;
	grid-template-rows:25px 0fr;
	/*grid-template-rows:22px 0fr;*/
	overflow:hidden;
	transition:0.75s;
	color:#9AA;
	font:18px/25px 'Roboto', arial, sans-serif;
	/*font:18px/22px 'Roboto', arial, sans-serif;*/
	width:100%;
	position:relative;
}
#sn_menu > li {
	display:grid;
	grid-template-rows:32px 0fr;
	overflow:hidden;
	transition:0.75s;
	width:100%;
}

#sn_menu li ul {
	min-height:0;
	align-self:end;
	position:relative;
	z-index:5;
}

#sn_menu a {
	font:18px/25px 'Roboto', arial, sans-serif;
	/*font:18px/22px 'Roboto', arial, sans-serif;*/
	text-decoration:none;
	color:#ddd; /* Farbe der Menüpunkte */
	transition:0.25s;
	outline:none;
	justify-self:start;
}
#sn_menu a:hover {
	color:#fff;
	text-decoration:underline;
}

#sn_menu p {
	font:400 18px/22px 'Roboto', arial, sans-serif;
	padding:0;
	margin:0;
	color:#9ee; /* Farbe der Menüeinträge */
	outline:none;
	background:#336666;
	border:0;
	position:relative;
	z-index:10;
}
#sn_menu p span {
	cursor:pointer;
} 
#sn_menu ul p::before {
	display:inline-block;
	content:"\25BC";
	padding-right:7px;
}
#sn_menu > li > p {
	font:400 30px/42px 'Roboto', arial, sans-serif;
	margin-left:20px;
	color:#fff;
	cursor:pointer;
} 
#sn_menu > li > span#close {
	display:block;
	width:100%;
	height:42px;
	font:400 30px/42px 'Roboto', arial, sans-serif;
	position:absolute;
	left:20px;
	top:0; /* -5px */
	z-index:5;
	background:#336666;
	cursor:pointer;
	color:#fff;
}

/* MENU SLIDE DOWN ACTION STYLING */
#sn_menu li:focus-within {
	grid-template-rows:22px 1fr;
}
#sn_menu > li:focus-within {
	grid-template-rows:30px 1fr;
}
#sn_menu li:focus-within #open {
	z-index:-1;
}
#sn_menu li:focus-within #close {
	z-index:10;
}
#sn_menu li:focus-within > p {
	color:#9e9;
}

/*-----------------------------------Footer-------------------------------------*/
ul.sub {
	padding:0;
	margin:0;
	list-style:none;
	width:100%;
	background:#336666;
	display:flex;
	justify-content:center;
	flex-flow: row wrap;
}

ul.sub li a {
	font:400 14px/30px 'Roboto', arial, sans-serif;
	color:#F9FFF9;
	text-decoration:none;
	padding:0 10px;
}

ul.sub li a:hover {
	color:#6cf;
}

ul.sub li a.current {
	color:#6cf;
	cursor:default;
}

.footer {
	text-align:center;
}

.footer p {
	padding:10px 0 20px 0;
	margin:0;
	color:#333;
}



@media screen and (max-width: 1260px) {
	header h1 {
		font-size:120%;
	}
	ul.main li {
		opacity:0;
	}
}

@media screen and (max-width: 1180px) {
	header h1 {
		font-size:120%;
	}
	ul.main {
		opacity:0;
	}
	#sn_menu {
		left:0px;
	}
	#sn_menu ul {
		background:#F9FFF9;
	}
	#sn_menu li {
		color:#311;
	}
	#sn_menu a {
		color:#336666; /* Farbe der Menüpunkte */
	}
	#sn_menu a:hover {
		color:#FF0000;
		text-decoration: none;
	}
	#sn_menu p {
		color:#288; /* Farbe der Menüeinträge */
		background:#F9FFF9;
	}
	#sn_menu > li > p {
		color:#000;
	} 
	#sn_menu > li > span#close {
		background:#F9FFF9;
		color:#000;
	}
	#sn_menu li:focus-within > p {
		color:#288;
	}
#sn_menu ul ul {
	border-left:2px solid #3A8; /* Farbe der Linie zum klammern */
}
}

@media screen and (max-width: 830px) {
	header h1 {
		display:none;
	}
	ul.main {
		opacity:0;
	}
	.boxright {
		width:320px;
	}
	img {
		max-width: 100%;
	}
}
