* {
	margin: 0;
	padding: 0;
}
body {
	color: #343434;
	background-color: #d9d9d9;
	font-family: "Open Sans", sans-serif;
	font-size: 100%;
	line-height: 1.6;
	vertical-align: baseline;
}
img { /* IE 10 draws this ... strange */
	border: none;
}
@media print {
	body {
		color: #000000;
		background-color: #ffffff;
	}
}

/* Site Header */
header {
	background-color: #fafafa;
}
header.one_pic {
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: row nowrap;
	    flex-flow: row nowrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	padding: 20px 70px 20px 30px;
}
header.three_pic #logo {
	margin: 10px 0 0 10px;
	width: 200px;
	height: 47px;
}
header.one_pic #logo {
	margin: 0;
	width: 272px;
	height: 65px;
	display: block;
}
header.three_pic > div {
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: row nowrap;
	    flex-flow: row nowrap;
	-ms-flex-pack: distribute;
	    justify-content: space-around;
	padding: 20px 0;
}
.header_image {
	width: 200px;
	height: 200px;
}
header.one_pic .header_image {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
}
header h1 {
	font-family: "Open Sans", sans-serif;
	color: #343434;
	padding: 20px 0 0 60px;
	font-size: 20px;
}
#logo_heading {
	-webkit-box-flex: 1;
	    -ms-flex: 1 0 auto;
	        flex: 1 0 auto;
	margin-right: 10px;
}


@media screen and (max-width: 600px) {
	header {
		z-index: 9997;
	}
	header.three_pic > div {
		display: none;
	}
	header, nav, main, footer {
		margin: 0;
	}

	header.one_pic.color_scheme_1, header.one_pic.color_scheme_1 label {
		background-color: #018fb1;
	}
	header.one_pic.color_scheme_2, header.one_pic.color_scheme_2 label {
		background-color: #016E87;
	}
	header.one_pic {
		height: 45px;
		width: 100%;
		margin: 0;
		padding: 0;
		position: fixed;
		top : 0;
		left: 0;
	}
	.header_image {
		display: none;
	}
	header.one_pic #logo {
		width: 100px;
		height: 23px;
		margin: 0 5px 0 60px;
		padding: 0;
		float: left;
	}
	#logo_heading h1 {
		color: #fafafa;
		margin: 0 auto;
		padding: 0;
		font-size: 10px;
		text-align: center;
	}
}
@media screen and (min-width: 1000px) {
	header, main, nav, footer {
		box-sizing: border-box;
		width: 1000px;
		margin: 0 auto;
		overflow: hidden;
	}
	nav {
		overflow: visible;
	}
}
@media print {
	header {
		background-color: #ffffff;
	}
}

/* Navigation menu */

nav.button_style {
	background-color: #fafafa;
	padding: 10px 0;
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: column nowrap;
	    flex-flow: column nowrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
nav.button_style ul {
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: row wrap;
	    flex-flow: row wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	        justify-content: center;
	list-style: none;
	font-size: 18px;
	line-height: 24px;
}
nav.button_style ul li {
	border: none;
	margin: 20px;
	width: 200px;
	height: 200px;
}
/* Different style for menu-buttons */
nav.button_style li.color_scheme_1 {
	background-color: #018fb1;
}
nav.button_style li.color_scheme_2 {
	background-color: #016E87;	
}
nav.button_style span {
	display: block;
	font-size: 16px;
	font-weight: normal;
	letter-spacing: 1px;
	padding: 0;
	margin-bottom: 5px;
}
nav.button_style a,
nav.button_style a:hover,
nav.button_style a:visited,
nav.button_style a:active {
	color: #fafafa;
	box-sizing: border-box;
	text-decoration: none;
	display: inline-block;
	padding: 20px 0 0 15px;
	width: 100%;
	height: 100%;
	font-size: 20px;
}
nav.button_style a:hover {
	color: #990000;
}
nav.button_style path {
	pointer-events:all;
}
nav.button_style a:hover path {
 	fill: #990000;
}
nav.button_style li.color_scheme_1 > a:hover {
	background-color: #019DC1;
}
nav.button_style li.color_scheme_2 > a:hover {
	background-color: #01728D;
}
nav.dropdown_style {
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: row nowrap;
	    flex-flow: row nowrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
nav.dropdown_style ul {
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: row wrap;
	    flex-flow: row wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	font-family: "Open Sans", sans-serif;
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 18px;
	line-height: 24px;
	z-index: 9998;
}
nav #social_media_buttons {
	-webkit-box-flex: 0;
	    -ms-flex: 1 0 auto;
	        flex: 1 0 auto;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-end;
}
nav #social_media_buttons a {
	margin: 0;
	padding: 0 5px;
}
nav #social_media_buttons svg {
	fill: #fafafa;
}
nav.color_scheme_1 #social_media_buttons .hole {
	fill: #018fb1;
	stroke: #018fb1;
}
nav.color_scheme_2 #social_media_buttons .hole {
	fill: #016E87;
	stroke: #016E87;
}
nav.dropdown_style.color_scheme_1 ul {
	background-color: #018fb1;
}
nav.dropdown_style.color_scheme_2 ul {
	background-color: #016E87;
}
nav.dropdown_style ul li {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	border: none;
	position: relative;
}
nav.dropdown_style a:after {
	content: ' ▼';
}
nav.dropdown_style a:only-child:after, #social_media_buttons a:after {
	content: '';
}
nav.dropdown_style.color_scheme_1 ul li > a:hover {
	background-color: #019DC1;
}
nav.dropdown_style.color_scheme_2 ul li > a:hover {
	background-color: #01728D;
}
nav.dropdown_style ul ul {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
}
nav.dropdown_style ul li:hover > ul {
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: column nowrap;
	    flex-flow: column nowrap;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}
nav.dropdown_style a,
nav.dropdown_style a:hover,
nav.dropdown_style a:visited,
nav.dropdown_style a:active {
	color: #fafafa;
	text-decoration: none;
	display: block;
	padding: 5px 20px 10px 20px;
	border-top: 3px solid transparent;
}
nav.dropdown_style li a:hover {
	color: #990000;
	border-top: 3px solid #990000;
}
nav.dropdown_style ul li ul li a,
nav.dropdown_style ul li ul li a:hover,
nav.dropdown_style ul li ul li a:visited,
nav.dropdown_style ul li ul li a:active {
	display: block;
	border-top: none;
}
#tj_img {
	width: 100px;
	height: 100px;
	margin: 10px 0 0 25px;
}
#nav_checkbox, label {
	display: none;
}
@media screen and (max-width: 600px) {
	
	label {
		background-image: url("small_nav_icon.png");
		background-position: center center;
		cursor: pointer;
		display: block;
		height: 45px;
		left: 0;
		position: fixed;
		top: 0;
		width: 45px;
		z-index: 9999;
	}
	nav.dropdown_style {
		display: -webkit-box;
		    display: -ms-flexbox;
		        display: flex;
		-ms-flex-flow: row nowrap;
		    flex-flow: row nowrap;
		-webkit-box-align: stretch;
		    -ms-flex-align: stretch;
		        align-items: stretch;
		left: 0;
		top: 45px;
		position: fixed;
		/*width: 100%;*/
		z-index: 9998;
		padding: 0;
	}
	nav.dropdown_style ul {
		display: none;
	}
	nav #social_media_buttons {
		-ms-flex-order: -1;
		    order: -1;
		-webkit-box-pack: start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}
	nav.dropdown_style.color_scheme_1 #nav_checkbox:checked ~ ul {
		background-color: #018fb1;
	}
	nav.dropdown_style.color_scheme_2 #nav_checkbox:checked ~ ul {
		background-color: #016E87;
	}
	#nav_checkbox:checked ~ ul {
		display: -webkit-box;
		    display: -ms-flexbox;
		        display: flex;
		-ms-flex-flow: column nowrap;
		    flex-flow: column nowrap;
		-webkit-box-align: stretch;
		    -ms-flex-align: stretch;
		        align-items: stretch;
		
	}
	#nav_checkbox:checked ~ ul ul {
		display: -webkit-box;
		    display: -ms-flexbox;
		        display: flex;
		-ms-flex-flow: column nowrap;
		    flex-flow: column nowrap;
		-webkit-box-align: stretch;
		    -ms-flex-align: stretch;
		        align-items: stretch;
		position: relative;
		top: 0;
	}
	nav.dropdown_style ul ul a,
	nav.dropdown_style ul ul a:hover,
	nav.dropdown_style ul ul a:visited,
	nav.dropdown_style ul ul a:active {
		padding-left: 50px;
	}
	
	nav.dropdown_style a,
	nav.dropdown_style a:hover,
	nav.dropdown_style a:visited,
	nav.dropdown_style a:active {
		color: #fafafa;
		text-decoration: none;
		display: block;
		padding: 5px 20px 10px 20px;
		/*width: 100%;*/
		border: none;
	}
	nav.dropdown_style ul li > a:hover {
		color: #990000;
		border: none;
	}
}
@media screen and (min-width: 1000px) {
	nav.button_style {
		margin-bottom: 10px;
	}
	nav.button_style {
		margin-top: 10px;
	}
}
@media print {
	nav {
		display: none !important;
	}
}

/* Main */
main {
	display: block;
	background-color: #fafafa;
	min-height: 100px;
	font-size: 16px;
	padding: 60px 50px 40px 50px;
}
main h1 {
	font-size: 25px;
	font-family: Georgia, Times, "Times New Roman", serif;
	color: #990000;
	margin: 10px 0 15px 0;
}
main h2 {
	font-size: 22px;
	margin: 5px 0 15px 0;
}
main p {
	margin: 20px 0;
}
main blockquote {
	font-weight: bold;
	text-align: center;
	margin: 20px 40px;
	font-size: 95%;
}
main blockquote cite {
	display: block;
}
main img, main iframe, main svg {
	max-width: 100% !important;
	width: auto;
	height: auto;
}
iframe {
	display: block;
	margin: 0 auto;
}
.twocol {
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
}
.twocol > div {
	width: 50%;
}
.twocol > div:first-child {
	margin-right: 20px;
}
img.left_float {
	float: left;
	margin: 10px 30px 20px 15px;
}
img.right_float {
	float: right;
	margin: 10px 15px 20px 30px;
}
#feedback {
	opacity: 1;
	height: 60px;
	transition: opacity 3s ease-out;
}
#arrow_svg{
	height: 169px;
	width: 425px;
	margin: 10px auto;
	display: block;
}
.arrow_svg_text {
	fill: #fafafa;
	font-size: 22px;
}
.emphasized {
	font-weight: bold;
}
.demonstrative {
	color: #990000;
	font-size: 120%;
	font-weight: bold;
	font-style: italic;
	text-align: center;
	letter-spacing: 1px;
	margin: 40px 0;
}
.accented {
	font-style: italic;
}
.clear_float {
	clear: both;
}
.contact > span:first-child {
	font-weight: bold;
}
.contact > div {
	margin: 10px 0;
}
main ul {
	margin: 20px 20px;
	padding: 5px 20px;
	overflow: hidden;
}
main ul.ellipsis {
	list-style-type: none;
}
main ul.ellipsis li:before {
	content: "…";
}
#words_eye {
	display: block;
	margin: 0 auto 40px auto;
}

/* Styles for designyournewlife.htm */
#quote_image {
	padding: 0 100px;
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: row wrap;
	    flex-flow: row wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
#quote_container {
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: column nowrap;
	    flex-flow: column nowrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
#quote_container blockquote, #quote_container p {
	text-align: left;
	margin: 10px;
}
#translation_text {
	align-self: center;
}
/* Styles for referenzen.htm */
#references_flexbox {
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: row wrap;
	    flex-flow: row wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	padding: 20px 0;
	margin: 0 30px;
}
#references_flexbox figure {
	width: 200px;
	margin: 10px 0;
}
#references_flexbox img {
	width: 200px;
	height: 139px;
}
#references_flexbox figcaption {
	margin-top: 1px;
	font-size: 12px;
	font-weight: bold;
}
#references_flexbox cite {
	font-size: 10px;
	font-weight: normal;
	display: block;
}
#guestbook_container {
	width: 100%;
	text-align: center;
}
#guestbook_container > div{
	position: relative;
	display: inline-block;
}
#prev_button, #next_button {
	cursor: pointer;
	position: absolute;
	top: 50%;
	width: auto;
	padding: 16px;
	-moz-transform: translate(0 , -50%);
	-webkit-transform: translate(0 , -50%);
	-o-transform: translate(0 , -50%);
	transform: translate(0 , -50%);
	background-color: #fafafa;
	font-weight: bold;
}
#prev_button {
	left: 0;
	border-radius: 0 3px 3px 0;
}
#next_button {
	right: 0;
	border-radius: 3px 0 0 3px;
}
/* Styles for kontakt.htm */
#contact_form {
	width: 300px;
	margin: 0 auto;
}
#contact_form input, #contact_form textarea {
	width: 300px;
	display: block;
	margin: 10px 0;
}
#contact_form textarea {
	height: 100px;
}
#recaptcha_input {
	display: none;
}
#recaptcha_buttons {
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-ms-flex-flow: column nowrap;
	    flex-flow: column nowrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
@media screen and (max-width: 600px) {
	main {
		border: none;
		margin: 0;
		padding: 45px 10px 10px 10px;
	}
	.twocol {
		display: block;
	}
	.twocol > div {
		width: 100%;
		margin: 0;
		padding: 0;
	}
	#feedback {
		height: 80px;
	}
	#quote_image {
		padding: 0;
	}
	img.left_float, img.right_float {
		float: none;
		clear: both;
		display: block;
		margin: 10px auto;
	}
}
@media print {
	main {
		background-color: #ffffff;
	}
}

/* Footer */
footer {
	background-color: #fafafa;
	color: #343434;
	font-size: 10px;
	padding: 5px 0 24px 0;
	text-align: center;
	display: -webkit-box;
	    display: -ms-flexbox;
	        display: flex;
	-webkit-box-orient: horizontal;
	    -webkit-box-direction: normal;
	-ms-flex-direction: row wrap;
	    flex-direction: row wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
}
footer > * {
	width: 100px;
	-webkit-box-flex: 1;
	    -ms-flex: 1 0 auto;
	        flex: 1 0 auto;
}
footer ul {
	list-style: none;
	padding: 0;
}
#footer_menu {
	display: inline;
}
#footer_menu ul {
	display: table;
	margin: 10px auto;
}
#footer_menu li::after {
	content: " | ";
}
#footer_menu li:last-child::after {
	content: "";
}
footer li {
	float: left;
}
footer a,
footer a:hover,
footer a:visited,
footer a:active {
	color: #343434;
	margin: 1px;
	text-decoration: none;
}
footer #social_media_buttons {
	float: left;
}
footer #social_media_buttons a {
	margin: 0;
	padding: 0 5px;
}
footer #social_media_buttons svg {
	fill: #343434;
}
footer #social_media_buttons .hole {
	fill: #fafafa;
	stroke: #fafafa;
}
#link_to_top {
	float: right;
}
@media screen and (max-width: 600px) {
	footer {
		margin: 0;
	}
}
@media screen and (min-width: 1000px) {
	footer {
		margin-top: 10px;
		margin-bottom: 0;
	}
}
@media print {
	footer {
		display: none !important;
	}
}