/* =Reset default browser CSS. 
-------------------------------------------------------------- */

/* resets
------------------------------*/

*, *:after, *:before { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
body, html { /*font-size: 100%;*/ padding: 0; margin: 0;}

/* remove blue glow of focused elements in Chrome */
a:focus, button:focus, input:focus, select:focus, button:focus, .button:focus { outline: 0; }

/*  helper classes
------------------------------*/
.cf:before,
.cf:after {
	content: ' ';
	display: table;
}

form {
width: 55%;
}

.cf:after {
	clear: both;
}

.ns {
	overflow: hidden;
}

.eb {
	border: none;
	padding: 0;
	margin: 0;
	height: 42px;
	width: 100%;
	display: block;
	overflow: hidden;
	clear: both;
}

.df {
	display: flex;
	align-items: center;
	justify-content: center;	
}

.p-rel { position: relative; }

.cvh {
	margin: 0;
	position: absolute;
	top: 50%;
	left: 50%;	
	/* center element vertically and horizontally */
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.ceh {
	position: absolute;	
	/* center element horizontally */	
	left: 50%;
	-webkit-transform: translate(-50%, 0%);
	-moz-transform: translate(-50%, 0%);
	-ms-transform: translate(-50%, 0%);
	-o-transform: translate(-50%, 0%);
	transform: translate(-50%, 0%);
}


/* Debug */
.log { position: fixed; bottom: 0; padding: .5em; } .log p { margin: 0 0 .5em 0; } .shell { font: 12px/16px Menlo,Consolas,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif; border: none; width: 100%; background-color: black; color: green; }


html,body { line-height: 1.5; }
html {
    height: 100%;
    min-height: 100%;
}

body {
    background-color: #fff;
    color: #000;
    font-family: Verdana,Arial,sans-serif;
    font-size: 80%;
    height: 100%;
    min-height: 100%;
    position: relative;
    width: auto;
    padding: 0px;
    margin: 0px;	
    
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 a {
    font-weight: bold;
    text-decoration: none;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    margin: 0;
}

a, a:link {
	color: #000;
    font-size: 100%;
    font-weight: normal;
    text-decoration: underline;
}

a:hover {
    text-decoration: underline;
}

.page {
	height: 100%;
	width: 100%;
}

.header {
	background-color: #ffffff;
	height: 150px;
	width: 100%;
}

.nav {
	/* min-width: 216px; */
    padding-top: 8px;
	vertical-align: top;
	text-align: left;
	background-color: #ffffff;
}

.content {
	vertical-align: top;
    text-align: left;
	background-color: #ffffff;
    line-height: 1.5;
	padding-right: 20px;
	padding-left:10px;
    padding-top:30px;
}

/* addons: reset menu, sub-menu
----------------------------*/
.menu {
	padding-top: 0px;
    margin-left: -25px;
    margin-bottom: -12px;
    line-height: 1.5;
}

.menu-item {
	position: relative;
    padding-bottom: 8px;
}

.sub-menu {
    margin:0px;
    margin-left:-30px;
    margin-top: 10px;
}


.menu,
.sub-menu { 
	list-style-type: none; 
}

.menu a, .menu a:link,
.sub-menu a, .sub-menu a:link {
    text-decoration: none;
}

.menu a:hover {
    color: #1b707f;
    text-decoration: underline;
}

.sub-menu a:hover {
    color: #195ca9;
}

#fusszeile {
    border-bottom: 1px solid #bebebe;
    border-top: 1px solid #bebebe;
    font-size: 85%;
    line-height: 1;
    list-style-type: none;
    margin: 0 auto; 
    width: 50%; 
    text-align: center;
}

#fusszeile ul li a, #fusszeile ul li a:link {
    text-decoration: none;
}

#fusszeile ul li {
    display: inline;
    margin-left: 0;
    padding-left: 0;
}

#fusszeile ul {
    list-style-type: none;
}

.trennlinie {
    -moz-border-bottom-colors: none;
    -moz-border-image: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    background-color: #FFFFFF;
    border-style: dashed none none;
    border-width: 1px 0 0;
    color: #c0c0c0;
    margin-left: 0;
    margin-top: 0;
    text-align: left;
    width: 100%;
    padding-bottom:10px;
}

/* = fluid layout max-width: 216px;
---------------------------*/
td.nav { width: 20%; }
.content { width: 80%; }

/* home, home-back
---------------------------*/
.menu-home { padding: 0 1em 1em 0; }
.menu-item-back a { color: #ee3a3b; }
.menu-item-back::before {
	-webkit-transform: rotate(180deg);
          -ms-transform: rotate(180deg);
              transform: rotate(180deg);
	content: '';
    background-size: 100% 100%;
    background-image: url('icons/chevron_small.svg');
    width: 7px;
    height: 7px;
    position: relative;
    top: -2px;
    display: inline-block;
    margin-right: 10px;
}

/* = folding
--------------------------*/
.menu-item:not(.menu-home):not(.current-menu-parent):not(.current-menu-item) { display: none; }
.accordions-container .menu > .menu-item,
.accordion.is-open .menu-item,
.menu-item-has-children.current-menu-item .menu-item,
.current-menu-parent .sub-menu .menu-item { display: block !important; }

/* = higligth
--------------------------*/
.menu .current-menu-item > a,
.menu .current-menu-parent > a,
.menu .current-menu-parent .ico-plus-minus { color: #1b707f; }
.menu .sub-menu .current-menu-item a { color: #195ca9; }

/* = accordions 
--------------------------*/
.ico-plus-minus {
	cursor: pointer;
    width: 30px;
    height: 30px;
    display: block;
    margin: 0;
    padding: 0;
    position: absolute;
    top: 0; /* .5em */
    right: .5em;
}
.ico-plus-minus::after {
	/* content: '\002B';
	width: 15px;
	right: 10px;
	top: 2px;
	position: absolute; */
	content: '';
    background-size: 100% 100%;
    background-image: url('icons/plus_small.svg');
    width: 7px;
    height: 7px;
    position: relative;
    top: -2px;
    display: inline-block;
    margin-left: 10px;
}
.accordion.is-open .ico-plus-minus::after {
	/* content: '\2013'; */
	content: '';
    background-size: 100% 100%;
    background-image: url('icons/minus_small.svg');
    width: 7px;
    height: 7px;
    display: inline-block;
}

/* = tree 
--------------------------*/

.tree,
.tree ul {
	margin:0 0 0 1em; 
	padding:0;
	list-style:none;
	color:#1b707f;
	position:relative;
}

.tree ul {margin-left:.5em} 

.tree:before,
.tree ul:before {
	content:"";
	display:block;
	width:0;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	border-left:1px solid;
}

.tree li {
	margin:0;
	padding:0 1.5em; 
	line-height:2em; 
	font-weight:bold;
	position:relative;
}

.tree li:before {
	content:"";
	display:block;
	width:10px; 
	height:0;
	border-top:1px solid;
	margin-top:-1px; 
	position:absolute;
	top:1em; 
	left:0;
}

.tree li:last-child:before {
	background:white; 
	height:auto;
	top:1em; 
	bottom:0;
}

/* = header style
-------------------------*/
.bg-grey {
	background-color:#bebebe;
}
.site-logo-1 { float:left; position:absolute; top:50px; }
.site-logo-2 { float:right; text-align:right; }
.site-logo-1 img, .site-logo-2 img { border: none; }
.mr-20-px { margin-right:20px }
.site-title {
	font-size:29px; 
	font-weight:bold;
	/* rewrite with cvh
	position:absolute;
	top:60px;
	left:180px;*/
 }


/* = menu-trigger
------------------------------------*/
.bt-menu { display: none; }
.bt-menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 0;
	border-width: 0px;
	border-style: solid;
	border-color: #333;
	background-color: rgba(0,0,0,0);
	-webkit-backface-visibility: hidden;
	-webkit-transition: border-width 0.3s, background-color 0.3s, height 0s 0.3s;
	transition: border-width 0.3s, background-color 0.3s, height 0s 0.3s;
}

.bt-menu.bt-menu-open {
	height: 100%;
	border-width: 0px; /* off effect 30px 30px 30px 90px; */
	background-color: rgba(0,0,0,0.3);
	-webkit-transition: border-width 0.3s, background-color 0.3s;
	transition: border-width 0.3s, background-color 0.3s;
}

.bt-overlay {
	position: absolute;
	width: 100%;
}

.bt-menu-open .bt-overlay {
	height: 100%;
}

.bt-menu-trigger {
	position: fixed;
	top: 15px;
	left: 20px;
	z-index: 100;
	display: block;
	width: 50px;
	height: 50px;
	cursor: pointer;
}

.bt-menu-trigger span {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 100%;
	height: 4px;
	margin-top: -2px;
	background-color: #fff;
	font-size: 0px;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-transition: background-color 0.3s;
	transition: background-color 0.3s;
}

.bt-menu-open .bt-menu-trigger span {
	background-color: transparent;
}

.bt-menu-trigger span:before,
.bt-menu-trigger span:after {
	position: absolute;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	content: '';
	-webkit-transition: -webkit-transform 0.3s;
	transition: transform 0.3s;
}

.bt-menu-trigger span:before {
	-webkit-transform: translateY(-250%);
	transform: translateY(-250%);
}

.bt-menu-trigger span:after {
	-webkit-transform: translateY(250%);
	transform: translateY(250%);
}

.bt-menu-open .bt-menu-trigger span:before {
	-webkit-transform: translateY(0) rotate(45deg);
	transform: translateY(0) rotate(45deg);
}

.bt-menu-open .bt-menu-trigger span:after {
	-webkit-transform: translateY(0) rotate(-45deg);
	transform: translateY(0) rotate(-45deg);
}


/* = Menu button 
------------------------------------*/
.menu-button {
	display: none;
	position: absolute;
	z-index: 1000;
	top: 30px;
	left: 30px;
	width: 30px;
	height: 24px;
	padding: 0;
	cursor: pointer;
	border: none;
	outline: none;
	background: transparent;
}

.no-js .menu-button {
	display: none;
}

.menu-button::before,
.menu-button::after,
.menu-button span {
	background: #5f656f;
}

.menu-button::before,
.menu-button::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 2px;
	pointer-events: none;
	-webkit-transition: -webkit-transform 0.25s;
	transition: transform 0.25s;
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}

.menu-button span {
	position: absolute;
	left: 0;
	overflow: hidden;
	width: 100%;
	height: 2px;
	text-indent: 200%;
	-webkit-transition: opacity 0.25s;
	transition: opacity 0.25s;
}

.menu-button::before {
	-webkit-transform: translate3d(0, -10px, 0) scale3d(0.8, 1, 1);
	transform: translate3d(0, -10px, 0) scale3d(0.8, 1, 1);
}

.menu-button::after {
	-webkit-transform: translate3d(0, 10px, 0) scale3d(0.8, 1, 1);
	transform: translate3d(0, 10px, 0) scale3d(0.8, 1, 1);
}

.menu-button--open span {
	opacity: 0;
}

.menu-button--open::before {
	-webkit-transform: rotate3d(0, 0, 1, 45deg);
	transform: rotate3d(0, 0, 1, 45deg);
}

.menu-button--open::after {
	-webkit-transform: rotate3d(0, 0, 1, -45deg);
	transform: rotate3d(0, 0, 1, -45deg);
}	

/*  */
.menu-title { display: none; }

/* portrait */
@media screen and (orientation:portrait) {
	/* portrait-specific styles */
	.dbg { background-color: blue; }
	
	
}
/* landscape */
@media screen and (orientation:landscape) {
	/* landscape-specific styles */
	.dbg { background-color: red; }
}


/* = media queries
--------------------------------*/
@media only screen and (min-width: 640px) and (max-width: 1000px) {
	.site-logo-1 {
		position: absolute;
		left: 15px;
		top: 15px;
	}
	.site-logo-2 {
		position: absolute;
		right: 15px;
		top: 15px;
	}
	.site-title { 
		/*top: 5%;*/
		-webkit-transform: translate(-50%, 15%);
		-moz-transform: translate(-50%, 15%);
		-ms-transform: translate(-50%, 15%);
		-o-transform: translate(-50%, 15%);
		transform: translate(-50%, 15%);
	}
}

/* vertical centered */
/*@media (min-width: 601px) and (max-width: 650px) {
	.site-title { left: 23px; top: 15px; }
}
@media (min-width: 651px) and (max-width: 700px) {
	.site-title { left: 33px; top: 15px; }
}
@media (min-width: 701px) and (max-width: 720px) {
	.site-title { left: 43px; top: 15px; }
}
@media (min-width: 721px) and (max-width: 740px) {
	.site-title { left: 53px; top: 15px; }
}
@media (min-width: 741px) and (max-width: 760px) {
	.site-title { left: 76px; top: 15px; }
}
@media (min-width: 761px) and (max-width: 780px) {
	.site-title { left: 86px; top: 15px; }
}
@media (min-width: 781px) and (max-width: 790px) {
	.site-title { left: 96px; top: 15px; }
}
@media (min-width: 791px) and (max-width: 800px) {
	.site-title { left: 106px; top: 15px; }
}
@media (min-width: 801px) and (max-width: 820px) {
	.site-title { left: 116px; top: 15px; }
}
@media (min-width: 821px) and (max-width: 840px) {
	.site-title { left: 132px; top: 15px; }
}
@media (min-width: 841px) and (max-width: 860px) {
	.site-title { left: 142px; top: 15px; }
}
@media (min-width: 861px) and (max-width: 890px) {
	.site-title { left: 162px; top: 15px; }
}
@media (min-width: 891px) and (max-width: 910px) {
	.site-title { left: 182px; top: 15px; }
}
@media (min-width: 911px) and (max-width: 960px) {
	.site-title { left: 152px; top: 15px; }
}*/

	
@media only screen and (max-width: 600px) {
	
	.content { width: 100%; padding: 15px; }
	#fusszeile { width: 100% }
	
	.entry-content ul { padding: 15px; }
	/* register page */
	.entry-content blockquote { margin: 0; padding: 15px 0; }
	.entry-content blockquote a { padding: 0 15px; }
	.entry-content blockquote a { display: block;  }
	
	.entry-content img { max-width: 100%; height: auto; }
	
	.menu-main { width: 0px !important; }
	.menu-scroller { overflow-y: scroll; height: 100%; padding-bottom: 60px; }
	
	.slide-menu {
		top: 0;
		width: 100%;
		height: 100%;
	}
	.site-title { display: none; z-index: -1; }
	.menu { line-height: 2em; }
	.menu-title { display: block; }
	
	/* hu 598 s6 664 mi9 777 */
	.menu-button {
		cursor: pointer;
		display: block;
		left: 15px;
		top: 15px;
		width: 38px;
		height: 38px;
	}
	.menu-title {
		height: 40px;
		text-align: center;
	}
	.menu-title h3 { 
		display: inline-block; 
		font-size: 1.9em;
		margin: 0;
		font-weight: 300;
	}
	
	
	/* General styles for all menus */
	.slide-menu {
		position: fixed;
	}
	
	/* Orientation-dependent styles for the content of the menu */	
	.slide-menu-vertical {
		width: 240px;
		height: 100%;
		top: 0;
		z-index: 1000;
	}
	
	/* Vertical menu that slides from the left or right */	
	.slide-menu-left {
		left: -240px;
	}
	
	.slide-menu-right {
		right: -240px;
	}
	
	.slide-menu-left.slide-menu-open {
		left: 0px;
	}
	
	.slide-menu-right.slide-menu-open {
		right: 0px;
	}
	
	/* Transitions */	
	.slide-menu {
		-webkit-transition: all 0.3s ease;
		-moz-transition: all 0.3s ease;
		transition: all 0.3s ease;
	}
	
	/*.accordions-container {
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}*/
		
}	