/*
@font-face {
  font-family: 'moderat';
  src: url('../fonts/Moderat-Regular.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: 'almdudler';
  src: url('../fonts/Almdudler-Bold.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}
*/
html {
    overflow-y:scroll;
    min-height: 100%;
    max-width: 100%;
}
body {
    min-height: 100%;
    background-color: #fff;
    color: rgb(33, 37, 41);
    font-family: sans-serif;
    /* font-family: 'Gotham Narrow A','Gotham Narrow B','Open Sans',Impact,Haettenschweiler,'Franklin Gothic Bold',Charcoal,'Helvetica Inserat','Bitstream Vera Sans Bold','Arial Black',sans-serif;*/
    font-size: 18px;
    line-height: 27px;
    max-width: 100%;
    overflow:hidden;
}
.clear {
    margin: 0px;
    padding: 0px;
    height: 0px;
    font-size: 0px;
    line-height: 0px;
    clear: both;
    overflow: hidden;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
*:focus {
    outline: none;
}
textarea,
input[type="text"],
input[type="button"],
input[type="submit"] {
    -webkit-appearance: none;
    border-radius: 0;
}

select {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-background-clip: padding;
    -moz-background-clip: padding;
    background-clip:padding-box;
    -webkit-border-radius:0;
    -moz-border-radius:0;
    -ms-border-radius:0;
    -o-border-radius:0;
    border-radius:0;
    -webkit-appearance:none;
    background-color:#fff;
    color:#000;
    outline:0;
    margin:0;
    padding:0;
    text-align: left;
    font-size:1em;
    height: 1em;
    vertical-align: middle;
}
select {
    background:#fff url(data:image/png;base64,R0lGODlhDQAEAIAAAAAAAP8A/yH5BAEHAAEALAAAAAANAAQAAAILhA+hG5jMDpxvhgIAOw==);
    background-repeat: no-repeat;
    background-position: 97% center;
    padding:0 25px 0 8px;
    font-size: .875em
}

ul {
    list-style-type: none;
    list-style-position: outside;
    margin: 0;
    padding: 0 0 0 0px;
}
li {
    
}
h2 {
    color: #b0c92b;
    font-size: 36px;
    line-height: 36px;
    font-weight: 800;
    text-transform: uppercase;
    margin: 40px 0 20px 0;
}
h3 {
    color: #b0c92b;
    font-size: 24px;
    line-height: 24px;
    font-weight: 800;
    text-transform: uppercase;
    margin: 20px 0 10px 0;
}
h4 {
    color: #00a2a4;
    font-size: 24px;
    line-height: 24px;
    font-weight: 800;
    text-transform: uppercase;
    margin: 20px 0 10px 0;
}
b {
    font-weight: 800;
}
@media only screen and (max-width: 750px) {
    body {
        font-size: 14px;
        line-height: 22px;
    }
    h2 {
        font-size: 24px;
        line-height: 24px;
        margin: 20px 0 10px 0;
    }
}

/* layout */
a {
  color: rgb(33, 37, 41);
  text-decoration: none;
}
a:hover,
a:active,
a:focus {
    outline: none;
    text-decoration: underline;
    color: rgb(33, 37, 41);
}
a.internal {
    color: #00a2a4;
}

.box_blue {
    background-color: #00a2a4;
    padding: 20px 20px 20px 20px;
    color: #fff;
}
.box_green {
    background-color: #b0c92b;
    padding: 20px 20px 20px 20px;
    color: #fff;
}
.box_clear {
    padding: 0px 20px 0px 20px;
}
.button_green {
    background-color: #b0c92b;
    padding: 5px 10px 5px 10px;
    color: #fff;
    display: inline-block;
    float: right;
    font-weight: 800;
    text-transform: uppercase;
    text-decoration: none;
}
.button_green:hover {
    color: #b0c92b;
    background-color: #fff;
    text-decoration: none;
}




body {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: #888888;
	line-height: 15px;
}
a {
	text-decoration: none;
	color: #888888;
}
a:hover  {
	text-decoration: underline;
}
input, textarea, select {
	font-family: Verdana, Arial, Helvetica, sans-serif;
	font-size: 10px;
	color: #888888;
}





body {
    background: #000000;
}
#frontend #top-container {
    width: 100%;
	height: 185px;
	background: #000000 url(../img/top.background.gif) top center no-repeat;
}
#frontend #top-second-container {
    width: 100%;
    height: 185px;
    background: transparent url(../img/footer.background.gif) bottom left repeat-x;
}
#frontend #top-middle-container {
    width: 900px;
    height: 185px;
    margin: 0 auto;
}
#frontend #top-left-container {
    width: 641px;
    height: 185px;
	float: left;
}
#frontend #top-left-container .inner {
    padding-top: 68px;
}
#frontend #top-right-container {
    width: 259px;
    height: 185px;
    float: left;
}
#frontend #top-right-top-container {
    width: 259px;
    height: 149px;
}
#frontend #top-right-top-container .inner {
    padding-top: 51px;
	padding-left: 199px;
}
#frontend #top-right-bottom-container {
    width: 259px;
    height: 36px;
}
#frontend #middle-container {
    width: 100%;
    background: #ffffff url(../img/middle.background.gif) top center repeat-y;
}
#frontend #middle-second-container {
    width: 100%;
    background: transparent url(../img/middlesecond.background.gif) top center no-repeat;
}
#frontend #middle-middle-container {
    width: 900px;
    margin: 0 auto;
    font-family: Tahoma, Arial, Helvetica, sans-serif;
    font-size: 11px;	
}
#frontend #middle-left-container {
    width: 641px;
    float: left;
}
#frontend #middle-left-container .pagetitle {
    font-size: 16px;
    color: #666666;
	padding: 20px 0 20px 0;
}
#frontend #middle-left-container .item {
    padding: 20px 16px 20px 0px;
    border-bottom: 1px solid #cbcbcb;
}
#frontend #middle-left-container .last{
    border-bottom: none !important;
}
#frontend #middle-left-container .item .left {
    width: 184px;
	padding-right:10px;
    float: left;
}
#frontend #middle-left-container .item .title {
    padding-bottom: 5px;
    font-size: 12px;
    font-weight: bold;
    color: #666666;
	padding-top: 5px;
}
#frontend #middle-left-container .item .title a {
    font-size: 12px;
    font-weight: bold;
    color: #666666;
}


#frontend #middle-left-container .item .right {
    width: 430px;
    float: left;
}
#frontend #middle-left-container .item .right img {
    border: 1px solid #444444;
}


#frontend #middle-right-container {
    width: 259px;
    float: left;
}
#frontend #middle-right-container .inner {
    padding: 0px 0px 0px 0px;
}
#frontend #middle-right-container .inner .item {
    padding: 20px 0 20px 20px;
	border-bottom: 1px solid #cbcbcb;
}
#frontend #middle-right-container .inner .last{
    border-bottom: none !important;
}
#frontend #middle-right-container .inner .item .title {
    padding-bottom: 5px;
}
#frontend #middle-right-container .inner .item .description {
}
#frontend #middle-right-container .inner .item .title a {
    font-size: 12px;
	font-weight: bold;
	color: #666666;
}



#frontend #middle-left-container .item .thumbs {
    width: 420px; 
    height: 55px; 
    margin: 7px 0 0 0;
}
#frontend #middle-left-container .item .thumb {
    float: left; 
    width: 76px; 
    height: 55px; 
    margin: 0 10px 0 0;
}





#frontend #chooselang-container {
	position:relative;
	width:259px;
	height:17px;
}
#frontend #chooselang {
	position:absolute;
	right:1px;
	top:1px;
}
#frontend #chooselang .bereich {
	float:left;
	width:118px;
}
#frontend #chooselang .bereich .tree {
	background:transparent url(../img/chooselang.background.png) no-repeat scroll right top;
	height:17px;
	padding-left:15px;
	padding-top:5px;
	width:103px;
	font-size: 9px;
	color: #616161;
}
#frontend #chooselang .bereich .menu {
	width:118px;
}
#frontend #chooselang .bereich .menu a {
    color: #616161;
}






#frontend #name {
    width: 300px;
    height: 45px;
    background: transparent url(../img/name.png) top left no-repeat;
}
#frontend #logo {
    width: 61px;
    height: 52px;
    background: transparent url(../img/logo.gif) top left no-repeat;
}


#frontend #footer-container {
    width: 100%;
    height: 150px;
    background: transparent url(../img/footer.background.gif) top left repeat-x;
}
#frontend #footer-middle-container {
    width: 900px;
    height: 150px;
    margin: 0 auto;
}
#frontend #footer-middle-container .inner {
    padding-top: 54px;
	color: #616161;
}
#frontend #footer-middle-container .inner a {
    color: #616161;
}




.date {
    display: none;
}





.contenttext ol li {
    list-style-type: decimal;
	list-style-position: inside;
}

.contenttext ul li {
    list-style-type: circle;
    list-style-position: inside;
}

.contenttext ul, .contenttext  li {
    border-spacing:     0;
    margin:             0;
    padding:            0;
}

.contenttext li {    
    margin-left:        10px;
	line-height:        1.5em; 
}



/* Main Styles */	
	
#nav {
	position:relative;
	width:950px; 
}

ul#navigation {
	margin:0px auto;
	position:relative;
	float:left;
	/*
	border-left:1px solid #c4dbe7;
	border-right:1px solid #c4dbe7;
	*/
}

ul#navigation li {
	display:inline;
	margin:0 0 0 5px;
	float:left;
	position:relative;
}

ul#navigation li.first {
    margin:0;
}

ul#navigation li a {
	text-decoration:none;
	display:block;
    font-size: 13px;
    color: #000000;
    width: 186px;
    text-align: center;
    border-radius: 5px;
    color: #262f77;
    padding: 5px 0 0 0;
    text-decoration: none;
    background: url(../img/verlauf_navi.gif) bottom left repeat-x;
    height: 21px;
}

ul#navigation li a.has-hover:hover {
	background: url(../img/verlauf_navi_aktiv.gif) top left repeat-x;
	color: #ffffff;
}

ul#navigation li.has-hover:hover > a {
    background: url(../img/verlauf_navi_aktiv.gif) top left repeat-x;
    color: #ffffff;
}

ul#navigation li .nav_active {
    background: url(../img/verlauf_navi_aktiv.gif) top left repeat-x;
    color: #ffffff;
}

/* Drop-Down Navigation */
ul#navigation li.has-hover:hover > ul
{
	visibility:visible;
	opacity:1;
}

ul#navigation ul.active
{
    visibility:visible;
    opacity:1;
}

ul#navigation ul, ul#navigation ul li ul {
	list-style: none;
    margin: 0;
    padding: 0;    
	visibility:hidden;
    position: absolute;
    z-index: 99999;
	width:186px;
	background:#f0f2f4;
	box-shadow:1px 3px 3px #ccc;
	opacity:0;
	border-radius: 5px;
	-webkit-transition:opacity 0.2s linear, visibility 0.2s linear; 
	-moz-transition:opacity 0.2s linear, visibility 0.2s linear; 
	-o-transition:opacity 0.2s linear, visibility 0.2s linear; 
	transition:opacity 0.2s linear, visibility 0.2s linear; 	
}

ul#navigation ul {
    top: 26px;
    left: 0;
    padding: 12px 0 12px 0;
}

ul#navigation ul li ul {
    top: 0;
    left: 0;
    
}

ul#navigation ul li {
	clear:both;
	width:100%;
	border:0 none;
	
}

ul#navigation ul li a {
	padding:3px 0 3px 20px;
	text-decoration:none;
	display:block;
	border:0 none;
	float:left;
	clear:both;
	width:166px;
    font-size: 13px;
    color: #000000;
    text-transform: none;
    text-align: left;
    background: url(../img/pfeil_linksnavi_blau.gif) 7px 6px no-repeat;
}

ul#navigation ul li a:hover {
	text-decoration: underline;
}

ul#navigation li a.first {
	border-left: 0 none;
}

ul#navigation li a.last {
	border-right: 0 none;
}






#textcontainer {
    width:641px;
    overflow:hidden;
}
#cv {
	margin-left:641px;
	width:641px;
}
#clientcontainer {
	width:641px;
	overflow:hidden;
}
#clientcontainer2 {
    width:641px;
    overflow:hidden;
}
.clients {
	margin-left:641px;
	width:641px;
}
#cvcontainer {
    width:641px;
    overflow:hidden;
}
#mapsiframe {
	width:618px;
	height: 550px;
}
#projectcontainermobile {
    display: none;  
}

#contact_address {
	float: left; 
	display: inline-block; 
	padding: 50px 0 20px 50px;
}
#contact_image {
	float: right; 
	width: 208px;
}


#projectcontainermobile .item img {
  border: 1px solid #444444;
}
#projectcontainermobile .item {
  padding: 20px 0px 20px 0px !important;
  border-bottom: 1px solid #cbcbcb;
}
#projectcontainermobile .date {
  padding: 20px 0px 0px 0px !important;
}
#home {
    display: block;  
}
#homemobile {
    display: none;  
}
#home_menu {
	background-color: #eeeeee;
	border: 1px solid #cbcbcb;
}
#home_menu .item {
  padding: 20px 26px 20px 26px !important;
  border-bottom: 1px solid #cbcbcb;
}
#home_menu .item_last {
  border-bottom: none !important;
}







.nav-button { display: none; }
.primary-nav { display: none; }
#menutitle { display: none; }
@media only screen and (min-width: 0px) and (max-width: 900px) {

#contact_address {
    float: left; 
    display: inline-block; 
    padding: 20px 0 20px 0;
}
#contact_image {
    float: right; 
    width: 192px;
}

	#home {
    display: none;  
}
#homemobile {
    display: block;  
}
	
#middle-right-container  { display: none; }
#middle-left-container {
	width: auto !important;
	float: none !important;
	padding: 0 20px 0 20px !important;
}



#middle-middle-container {
    width: 100% !important;
    margin: 0 !important;
}
#middle-container {
    background: #ffffff none 0 0 no-repeat !important;	
}
#middle-second-container {
    background: #ffffff none 0 0 no-repeat !important;  
}
#top-right-bottom-container { display: none; }
#top-right-top-container { display: none; }
#top-right-container { display: none; }
#top-middle-container {
	width: auto !important;
}
#top-left-container {
	width: auto !important;
}
#name {
	margin: 0 0 0 20px;
}
#footer-middle-container {
	width: auto !important;
	margin: 0 0 0 20px !important;
}

/* projekte */

.subtabs {
    display: none;	
}
#projectcontainer {
    display: none;  
}
#projectcontainermobile {
    display: block;  
}


/* cv */

#textcontainer {
    width: 100% !important;
    overflow:auto;
}
#cv {
    margin-left:0 !important;
    width: 100% !important;
}
	
/* clients */

#clientcontainer {
    width: 100% !important;
}
#clientcontainer2 {
    width: 100% !important;
}
.clients {
    margin-left:0 !important;
    width: 100% !important;
}

/* contact */
#cvcontainer {
    width: 100% !important;
    overflow:auto;
}
#mapsiframe {
    width:99.6% !important;
    height: 400px;
}
	
#menutitle { display: block; }

	.nav-button {
		display: block;
		position: absolute;
		top: 7px;
		left: 7px;
		width: 50px;
		height: 35px;
		background: url('../img/menu-icon-large.png'), -webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background: url('../img/menu-icon-large.png'),    -moz-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background: url('../img/menu-icon-large.png'),     -ms-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background: url('../img/menu-icon-large.png'),      -o-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 21px, 100%;
		cursor: pointer;
		border: 0 none;
		border-bottom: 1px solid rgba(255,255,255,.1);
		box-shadow: 0 0 4px rgba(0,0,0,.7) inset;
		border-radius: 5px;
		z-index: 999;
		text-indent: -9999px;
	}
	.nav-button:hover { 
		background-color: rgba(0,0,0,.1); 
	}
	.nav-button.open {
		background: url('../img/close-icon-large.png'), -webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background: url('../img/close-icon-large.png'),    -moz-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background: url('../img/close-icon-large.png'),     -ms-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background: url('../img/close-icon-large.png'),      -o-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 21px, 100%;
	}

	/* Navigation Bar
	-------------------------------------------------------- */

	body { padding-top: 50px; } 

	.primary-nav {
		width: 100%;
		float: none;
		background-color: #505050; /* change the menu color */
		background-image: -webkit-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background-image:    -moz-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background-image:     -ms-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		background-image:      -o-linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,.2));
		display: block;
		height: 50px;
		margin: 0;
		padding: 0;
		overflow: hidden;
		box-shadow: 0 1px 2px rgba(0,0,0,.6);
		position: absolute;
		top: 0px;
		left: 0px;
		z-index: 998;
		clear: both;
	}
	.primary-nav li {
		display: none;
		width: 100%;
		font-family: Tahoma, Arial, Helvetica, sans-serif;
	}
	.primary-nav li a {
		display: block;
		width: 90%;
		padding: 10px 5%;
		font-size: 14px;
		font-weight: bold;
		text-shadow: -1px -1px 0 rgba(0,0,0,.15);
		color: white;
		text-decoration: none;
		border-bottom: 1px solid rgba(0,0,0,.2);
		border-top: 1px solid rgba(255,255,255,.1); 
	}
	.primary-nav li a:hover {
		background-color: rgba(0,0,0,.5);
		border-top-color: transparent;
	}
	.primary-nav > li:first-child {
		border-top: 1px solid rgba(0,0,0,.2);
	}

	/* Toggle the navigation bar open  */

	.primary-nav.open { 
		height: auto; 
		padding-top: 50px;
	}
	.primary-nav.open li { 
		display: block; 
	}

	/* Submenus – optional .parent class indicates dropdowns */

	.primary-nav > li:hover > a {
		background: rgba(0,0,0,.5);
		border-bottom-color: transparent;
	}
	.primary-nav li.parent > a:after {
		content: "▼";
		color: rgba(255,255,255,.5);
		float: right;
	}
	.primary-nav li.parent > a:hover {
		background: rgba(0,0,0,.75);
	}
	.primary-nav li ul {
		display: none;
		background: rgba(0,0,0,.5);
		border-top: 0 none;
		padding: 0;
	}
	.primary-nav li ul a {
		border: 0 none;
		font-size: 12px;
		padding: 10px 5%;
		font-weight: normal;
	}
	.primary-nav li:hover ul {
		display: block;
		border-top: 0 none;
	}
	
}




.parts {
    padding-top: 20px;
}
.parts ul {
    padding-top: 10px;
}



#cv .parttitle {
    font-size: 12px;
	font-weight: bold;
    color: #666666;
	text-align: right;
	padding-right: 20px;
}
#cv .line {
    border-bottom: 1px solid #cbcbcb;
}
#cv .label {
    padding-right:20px;
}



#cv ul li, .parts ul li {
    list-style-type: square;
    list-style-position: outside;
}

#cv ul, #cv li, .parts ul, .parts li {
    border-spacing:     0;
    margin:             0;
    padding:            0;
}

#cv li, .parts li {    
    margin-left:        30px;
    line-height:        1.6em; 
}

.groupedtopic {
    font-size: 12px;
    font-weight: bold;
    color: #666666;
    text-align: right;
    padding-right: 20px;
}
.subtabs {
    font-size: 12px;
    font-weight: bold;
    color: #666666;
    text-align: right;
	float:right;
	padding: 20px 0 0 0;
}
.subtabs a {
    font-size: 12px;
    font-weight: bold;
    color: #666666;
    padding-right: 20px;
}
.subtabs a.active {
    font-size: 16px;
    font-weight: bold;
    color: #333333;
    padding-right: 20px;
	text-decoration: none;
}