/* pt-sans-regular - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'PT Sans';
	font-style: normal;
	font-weight: 400;
	src: url('../fonts/pt-sans-v17-latin-regular.eot'); /* IE9 Compat Modes */
	src: url('../fonts/pt-sans-v17-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('../fonts/pt-sans-v17-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
		 url('../fonts/pt-sans-v17-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
		 url('../fonts/pt-sans-v17-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
		 url('../fonts/pt-sans-v17-latin-regular.svg#PTSans') format('svg'); /* Legacy iOS */
  }

body {
	margin: 0px;
    font-size:1.0em;
    color:#555; 
    font-family:'PT Sans', sans-serif;
    line-height:1.4em;
	background-color : #fff;
}

.container, #footer {
	width:1200px;
}

.container {
	margin:auto;
}

.fullsizecontainer {
	
}

.fullsizegrey {
	background-color:#f3f3f3;
	padding:3% 0%;
	text-align:center;
}

.fullsizegrey img {
	width:100%;
	height:auto;	
}

/*
	Header Start ##########################################################
*/

#headercontainer {
    -webkit-box-shadow: 0px 3px 7px -1px rgba(0,0,0,0.5);
	-moz-box-shadow: 0px 3px 7px -1px rgba(0,0,0,0.5);
	box-shadow: 0px 3px 7px -1px rgba(0,0,0,0.5);	
}

#header {
    min-height:110px;
}

#logo {
    float:left;
    width:400px;
    height:54px;
    padding: 28px 0px 0px 0px;
}

#mainnavigation {
    text-align:right;
    float:right;
    color:#000;
    width:700px;
}

#mainnavigation ul {margin:0; float:right; list-style:none outside; padding:0; }
#mainnavigation li {display:inline; float:left; margin:0px; padding:0px; }

#mainnavigation #subnavigation {
	display:none;	
}

#hamburger {
	display:none;
    border-radius: 3px 3px 3px 3px;
    cursor: pointer;
    height: 24px;
    padding: 3px 4px 3px;
    position: relative;
    background: #003072;
    background: -moz-linear-gradient(top,  #003072 0%, #003072 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#003072), color-stop(100%,#003072));
    background: -webkit-linear-gradient(top,  #003072 0%,#003072 100%);
    background: -o-linear-gradient(top,  #003072 0%,#003072 100%);
    background: -ms-linear-gradient(top,  #003072 0%,#003072 100%);
    background: linear-gradient(to bottom,  #003072 0%,#003072 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#003072', endColorstr='#003072',GradientType=0 );
}
 
/*
The white stripes in the hamburger button
*/
#hamburger div {
    background-color: #fff;
    border: 1px solid #eee;
    border-radius: 2px 2px 2px 2px;
    height: 2px;
    margin-top: 3px;
    width: 23px;
}

#hamburgerclose {
	display:none;
    border-radius: 3px 3px 3px 3px;
    cursor: pointer;
    height: 24px;
    padding: 3px 4px 3px;
    position: relative;
    background: #003072;
    background: -moz-linear-gradient(top,  #003072 0%, #003072 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#003072), color-stop(100%,#003072));
    background: -webkit-linear-gradient(top,  #003072 0%,#003072 100%);
    background: -o-linear-gradient(top,  #003072 0%,#003072 100%);
    background: -ms-linear-gradient(top,  #003072 0%,#003072 100%);
    background: linear-gradient(to bottom,  #003072 0%,#003072 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#003072', endColorstr='#003072',GradientType=0 );
}
 
/*
The white stripes in the hamburger button
*/
#hamburgerclose div {
    background-color: #ffa800;
    border: 1px solid #ec4e00;
    border-radius: 2px 2px 2px 2px;
    height: 2px;
    margin-top: 3px;
    width: 23px;
}


/*
	Header Ende ##########################################################
*/





/* OPENER */

#flexcontainer {
	position:relative;
	overflow:hidden;
}

.flex-caption {
	left:50%;
	top:100px;
	position:absolute;
	background-image: url("../img/bg-flex-caption-80.png");
	/*background-color:#003072;*/
	padding:30px;
	font-size:2.2em;
	line-height:normal;
	text-transform:uppercase;
	color:#fff;
	width:500px;
	margin-left:-250px;
}

#welcomebox {
	padding-top:2%;
	text-align:center;
}

#welcomebox h1 {
	font-size:2.0em;
	color:#6d6d6d;	
}

#openerboxen {
    margin:auto;
    padding-top:10px;
	margin-top:40px;
	margin-bottom:40px;
}

#openerboxen ul {
	
}

#openerboxen ul ul {
	
}

.openerbox {
    width:45%;
    float:left;
    background-image: url("../img/bgOpenerBox.jpg");
    background-repeat: no-repeat;
    margin-top:0px;
    margin-left:2%;
    padding:1.5%;
}

div#openerboxen div:first-child {
	margin-left:0;
}





#infobox {
	background-color:#efefef;
	width:327px;
	height:290px;
	float:right;
	padding:25px 20px 0px 20px;
}

#infobox h2 {
	padding:0px;
	/*font-family:'Antic Slab',serif; */
}

#infobox a {
	color:#494949;
}

#audiofile {
	border:1px solid #ccc;
	padding:10px 10px 10px 150px;	
    background-image: url("../img/bgAudio2.jpg");
    background-repeat:no-repeat;
}



#mainnavigation #subnavigation {
	/*display:none;	*/
}

#suche {
	background-color:#efefef;
	text-align:right;
	padding: 5px 20px 5px 0px;
	margin-bottom:1px;	
}

#content {
    margin:auto;
    margin-bottom:40px;
    padding-top:40px;
}

#leftcol {
    float:left;
    width:30%;
}


#subnavigation {
    float:left;
    text-align:left;
    color:#000;
}

#subnavigation ul { margin:0; list-style:none outside; padding-left:0px; padding-top:0px; }
#subnavigation li { display:block; }

.profiladdon {
	margin-top:20px;border-bottom:1px dotted #ccc;padding-bottom:10px;	
}

#glossarleft {
	padding-top:20px;
    float:left;
	width:40%;
}

#glossarright {
	padding-top:20px;
    float:left;
	width:60%;
}

#rightcol {
    float:left;
    width:68%;
	padding:0% 0% 0% 2%;
}

#centercol {
	padding:0px 20px 0px 20px;
}



/* FOOTER */


#footercontainer {
    margin-top:40px;
    border-top:1px solid #ababab;
}

#footer {
    margin:auto;
    padding:20px 0px 20px 0px;
    line-height:normal;
    text-align:center;
}

#social {
	float:right;	
}

#social img{
	margin-left:10px;
}

#footerlinks {
	border-top: 1px solid #dedede;
	border-bottom: 1px solid #dedede;
	padding:5px;	
}

#lawyerteaser {
	border: 1px solid #ddd;
	padding:15px;	
	margin-bottom:15px;
}

#lawyerteaser img {
	float:left;
	margin-right:10px;	
}

#lawyerteaserwrapper {	
	margin-bottom:15px;
}

.fest {
	position:fixed;
	width:268px;
	background-color:#fff;
	top:10px;
	-moz-box-shadow:1px 1px 6px #292929; /* Firefox */
	-webkit-box-shadow:1px 1px 6px #292929; /* Chrome, Safari */
	-khtml-box-shadow:1px 1px 6px #292929; /* Konqueror */
	box-shadow:1px 1px 6px #292929; /* CSS3 */
}

.sign {
	font-family:'Rock Salt',serif; font-size:1.3em;
}

.mobileteaser {
	border: 1px solid #999;
	background-color:#dedede;
	text-align:center;
	padding:20px;
	font-size:1.8em;
	margin-bottom:20px;	
}

/*  ************************************************************************************
*   Youtube Videos  
*/

.elastic-video {
	position: relative;
	padding-bottom: 55%;
	padding-top: 15px;
	height: 0;
	overflow: hidden;
}

.elastic-video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*  ************************************************************************************
*   Youtube Videos Ende  
*/


h1 { font-size:2.0em; color:#494949; padding-top:0px; padding-bottom:15px; margin:0px; font-weight:normal; line-height:normal; }
h2 { font-size:1.5em; color:#8B8C8E; padding-top:0px; padding-bottom:15px; margin:0px; font-weight:normal; line-height:normal; }
h3 { font-size:1.2em; color:#8B8C8E; padding-top:0px; padding-bottom:0px; margin:0px; font-weight:bold; }
h4 { font-size:1.0em; color:#9B9B9B; padding-top:0px; padding-bottom:10px; margin:0px; font-weight:bold; }

img { border:0px; }

.off { display:none; }

.clear { clear:both; }

.nopad {
	padding:0px;
}

.fullsize {
	width:100%;
	height:auto;
}

.linetop {
	border-bottom: 1px dotted #999;	
	margin-bottom:20px;	
}

.line {
	border-bottom: 1px dotted #999;
	margin-top:20px;	
	margin-bottom:20px;	
}

.phonenumber {
	color:#000;
	font-size:1.4em;	
}

.publikation {
	border-bottom: 1px dotted #999;	
	padding:0px 0px 40px 0px;
	margin-bottom:40px;	
}

.bigshadow {
	background-image: url("../img/schatten.png");
    background-repeat: no-repeat;
    background-position:top;
    height:20px;
    margin:auto;
}

.downloadblock {
	padding:20px 0px;
	border-bottom: 1px dotted #bbb;	
}

.normal {
	font-size:1.5em; color:#8B8C8E; padding-top:0px; padding-bottom:15px; margin:0px; font-weight:normal; line-height:normal;	
}

fieldset {
	border:0;
	margin:0;	
}

#accordion a {
	color:#C20B37;
}

a.headlinelink:link  { color:#8B8C8E; text-decoration:none; }
a.headlinelink:visited { color:#8B8C8E; text-decoration:none; }
a.headlinelink:hover { color:#8B8C8E; text-decoration:underline; }
a.headlinelink:active { color:#8B8C8E; text-decoration:none; }

a:link  { color:#769bd3; text-decoration:none; }
a:visited { color:#769bd3; text-decoration:none; }
a:hover { color:#769bd3; text-decoration:underline; }
a:active { color:#769bd3; text-decoration:none; }

a.top:link  { color:#fff; text-decoration:none; }
a.top:visited { color:#fff; text-decoration:none; }
a.top:hover { color:#fff; text-decoration:underline; }
a.top:active { color:#fff; text-decoration:none; }

a.white:link  { color:#fff; text-decoration:none; }
a.white:visited { color:#fff; text-decoration:none; }
a.white:hover { color:#fff; text-decoration:underline; }
a.white:active { color:#fff; text-decoration:none; }

/*
*   Hauptnavigation
*/

a.mainlevel:link, a.mainlevel:visited {
	display: inline;
    float:left;
	margin:0;
    font-size: 1.1em;
    line-height:110px;
    position:relative; 
    color:#003072;
    padding:0px 10px 0px 10px;
}

a.mainlevel:hover {
	text-decoration: none;
	color: #fff;
    background-color:#ccc;
}

a.mainlevelActive:link, a.mainlevelActive:visited {
	display: inline;
    float:left;
	margin:0;
    font-size: 1.1em;
    line-height:110px;
    position:relative; 
    color:#ffffff;
    padding:0px 10px 0px 10px;
    background-color:#003072;
}

a.mainlevelActive:hover {
	text-decoration: none;
	color: #fff;
    background-color:#ccc;
}


a.sublevel:link, a.sublevel:visited {
	margin:0; 
    line-height:40px;
    display:block;
    padding-left:20px;
    padding-right:20px;
    color:#003072;
    font-size:1.0em;
    border-bottom: 1px dotted #ccc;
}

a.sublevel:hover {
	text-decoration: none;
    background-color:#e9e9e9;
}

a.sublevelActive:link, a.sublevelActive:visited {
	margin:0; 
    line-height:40px;
    display:block;
    padding-left:20px;
    padding-right:20px;
    color:#fff;
    font-size:1.0em;
    border-bottom: 1px dotted #ccc;
    background-color:#003072;
}


a.thirdlevel:link, a.thirdlevel:visited {
	margin:0; 
    line-height:30px;
    display:block;
    padding-left:50px;
    color:#58585A;
    font-size:1.0em;
    background-color:#fff;
}

a.thirdlevel:hover {
	text-decoration: none;
	color: #C20B37;
}

a.thirdlevelActive:link, a.thirdlevelActive:visited {
	margin:0; 
    line-height:30px;
    display:block;
    padding-left:50px;
    color:#C20B37;
    font-size:1.0em;
    background-color:#e3e3e3;
    background-image: url("../img/thirdlevelActive.png");
    background-repeat:no-repeat;
}

a.thirdlevelActive:hover {
	text-decoration: none;
	color: #C20B37;
}



a.fourthlevel:link, a.fourthlevel:visited {
	margin:0; 
    line-height:30px;
    display:block;
    padding-left:70px;
    color:#58585A;
    font-size:1.0em;
    background-color:#eee;
    border-bottom:1px solid #fff;
}

a.fourthlevel:hover {
	text-decoration: none;
	color: #C20B37;
}

a.fourthlevelActive:link, a.fourthlevelActive:visited {
	margin:0; 
    line-height:30px;
    display:block;
    padding-left:70px;
    color:#C20B37;
    font-size:1.0em;
    background-image: url("../img/thirdlevelActive.png");
    background-repeat:no-repeat;
    background-color:#f3f3f3;
    border-bottom:1px solid #fff;
}

a.fourthlevelActive:hover {
	text-decoration: none;
	color: #C20B37;
}


@media screen and (max-width:1199px) {
	.container, #footer {
		width:95%;
	}
	
	
	.flex-caption {
		left:50%;
		top:50px;
		position:absolute;
		padding:30px;
		font-size:1.6em;
		line-height:normal;
		text-transform:uppercase;
		color:#fff;
		width:350px;
		margin-left:-175px;
	}
	
	#welcomebox h1 {
		font-size:1.6em;
		color:#6d6d6d;	
	}
	
	#logo {
	    float:left;
	    width:30%;
	    height:54px;
	    padding: 28px 0px 0px 0px;
	}
	
	#logo img {
		width:100%;
		height:auto;
	}
	
	#mainnavigation {
	    text-align:right;
	    float:right;
	    color:#000;
	    width:70%;
	}
	
	a.mainlevel:link, a.mainlevel:visited {
	    font-size: 1.0em;
	    padding:0px 9px 0px 9px;
	}
	
	a.mainlevelActive:link, a.mainlevelActive:visited {
	    font-size: 1.0em;
	    padding:0px 9px 0px 9px;
	}
}

@media screen and (max-width:768px) {
    #headercontainer {
	    -webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;	
	}
	
	.fullsizecontainer {
		width:95%;
		margin:auto;
	}
    
    #logo {
	    float:none;
	    width:50%;
	}
	
	.flex-caption {
		left:50%;
		top:30px;
		position:absolute;
		padding:30px;
		font-size:1.4em;
		line-height:normal;
		text-transform:uppercase;
		color:#fff;
		width:300px;
		margin-left:-150px;
	}
	
    #hamburger {
    	margin-top:40px;
		display:block;
	}
	
    #hamburgerclose {
    	margin-top:40px;
	}
	
	
	.slidetext {
		display:none;
	}
	
	#mainnavigation {
    	height:auto;
    	display:none;
        width:100%;
        text-align:left;
    	padding-top:1px;
	}
	
	#infobox {
		background-color:#efefef;
		width:86%;
		height:auto;
		float:none;
		padding:7%;
	}
	
	#mainnavigation ul {margin:0; float:none; list-style:none outside; padding:0; }
	#mainnavigation li {display:block; float:none; margin:0px; padding:0px; }
	
	
	#mainnavigation #subnavigation {
		display:block;
		width:100%;	
	}

	
	#leftcol {
		width:100%;
		float:none;
	}
	
	#rightcol {
		width:100%;
		float:none;
	}
	
	#subnavigation {
		display:none;
	}
	
	#centercol {
		padding:0;
	}
	
	#openerboxen {
	    margin:auto;
	    padding-top:10px;
		margin-top:20px;
		margin-bottom:40px;
	}
	
	#lawyerteaserwrapper {
		/*display:none;	*/
	}
	
	#lawyerteaser {
		/*display:none;	*/
	}
	
	#openerboxen ul {
		list-style-image: url("../img/list-bullet-ul.png");	
	}
	
	.openerbox {
	    width:100%;
	    float:left;
	    background-image: url("../img/bgOpenerBox.jpg");
	    background-repeat: no-repeat;
	    margin-top:40px;
	    margin-left:0;
	    padding:0;
	}
	
    a.mainlevel:link, a.mainlevel:visited {
		display: block;
	    float:none;
		margin:0;
	    font-size: 1.0em;
	    line-height:30px;
	    position:relative; 
	    color:#003072;
	    padding-left:10px;
	    padding-right:10px;
	    background-color:#dfdfdf;
	    border-top:1px solid #fff;
	}
	
	a.mainlevel:hover {
		text-decoration: none;
		color: #ababab;
	}
	
	a.mainlevelActive:link, a.mainlevelActive:visited {
		display: block;
	    float:none;
		margin:0;
	    font-size: 1.0em;
	    line-height:30px;
	    position:relative; 
	    color:#fff;
	    padding-left:10px;
	    padding-right:10px;
	    background-color:#003072;
	    border-top:1px solid #fff;
	}
	
    a.sublevel:link, a.sublevel:visited {
		display: block;
	    float:none;
		margin:0;
	    font-size: 1.0em;
	    line-height:30px;
	    position:relative; 
	    color:#003072;
	    padding-left:30px;
	    background-color:#efefef;
	    border-top:1px solid #fff;
	}
	
	a.sublevel:hover {
		text-decoration: none;
		color: #ababab;
	}
	
	a.sublevelActive:link, a.sublevelActive:visited {
		display: block;
	    float:none;
		margin:0;
	    font-size: 1.0em;
	    line-height:30px;
	    position:relative; 
	    color:#fff;
	    padding-left:30px;
	    background-color:#003072;
	    border-top:1px solid #fff;
	}
}

@media screen and (max-width:480px) {
	body {
    	background-image: none;
	}
	
    #logo {
	    float:none;
	    width:100%;
	}
	
    #hamburger {
    	margin-top:10px;
		display:block;
	}
	
    #hamburgerclose {
    	margin-top:10px;
	}
	
	#welcomebox {
		padding-top:2%;
		text-align:left;
	}
	
	.flex-caption {
		left:0;
		top:0;
		position:relative;
		background-image:none;
		background-color:#003072;
		padding:10px;
		font-size:1.2em;
		line-height:normal;
		text-transform:uppercase;
		color:#fff;
		width:100%;
		margin-left:0;
	}
}