/*
 * Clearfix:
 */
div.js-table-toggler:after,
div.js-table-toggler-inner:after,
div#header:after,
div#content:after,
div#footer:after {
	content: " ";
	visibility: hidden;
	clear: both;
	display: block;
	height: 0;
}



/*
 * Global:
 */
body {
	margin: 0;
	padding: 0;
	background: #0a0a0c url(../images/bg.jpg) no-repeat center top;
	color: #ccc4b9;
	font-size: 76%;
	font-family: Verdana;

	/* Center page: */
	text-align: center;
}

object {
	outline: none;
}

h2 {
	display: none;
}

img {
	border: 0;
}

p {
	margin: 0;
}


/*
 * Header:
 */
div#main {
	/* Center page: */
	margin: 0 auto 0 auto;
	text-align: left;

	width: 990px;
	padding-left: 10px;
}

div#header {
	float: left;
	width: 100%;
}

div#header a {
	text-decoration: none;
	color: #827d76;
}

div#header a:hover {
	color: #01bbaa;
}

div#header h1.logo {
	margin: 36px 0 0 -3px;
}

div#header div.navigation {
	float: left;
	width: 725px;
	height: 147px;
}

ul#navigation-1, ul#navigation-2, ul#navigation-3 {
	float: left;
	margin: 0;
	padding: 2px 0 0 0;
	list-style-type: none;
	border-top: 1px dotted #ccc4b9;
}
ul#navigation-1 {
	margin-top: 23px;
}
ul#navigation-2 {
	margin-top: 6px;
}
ul#navigation-3 {
	padding-top: 0;
	border-top: none;
	margin-bottom: 30px;
	width: 100%;
}

ul#navigation-1 li, ul#navigation-2 li {
	float: left;
	margin: 0 55px 7px 0;
	padding-top: 3px;
}
ul#navigation-3 li {
	float: left;
	margin-right: 22px;
	border-top: 1px solid #827d76;
	padding-top: 10px;
}
ul#navigation-1 li.last, ul#navigation-2 li.last {
	margin-right: 0;
}

ul#navigation-1 li a, ul#navigation-2 li a, ul#navigation-3 li a,
ul#navigation-1 li strong, ul#navigation-2 li strong, ul#navigation-3 li strong {
	display: block;
	position: relative;
}
ul#navigation-1 li a:hover, ul#navigation-2 li a:hover,
ul#navigation-1 li strong, ul#navigation-2 li strong {
	margin-top: -6px;
	padding-top: 4px;
	border-top: 2px solid #01bbaa;
}
ul#navigation-3 li a:hover,
ul#navigation-3 li strong {
	margin-top: -11px;
	padding-top: 10px;
	border-top: 1px solid #01bbaa;
}

div#header div.search {
	float: right;
	margin-top: 49px;
	width: 222px;
}

ul#language-selection {
	float: right;
	margin: 0;
	padding: 0;
	list-style-type: none;
	height: 30px;
}

ul#language-selection li {
	float: left;
	text-transform: uppercase;
	border-right: 1px solid #827d76;
	padding-right: 7px;
	margin-right: 7px;
}

ul#language-selection li.last {
	border-right: none;
	padding-right: 0;
	margin-right: 0;
}
ul#language-selection li.selected a {
	color: #01bbaa;
}

div#header div.search form {
	clear: both;
	float: right;
	width: 222px;
}

div#header div.search form input.searchquery,
div#header div.search form button {
	border: 0;
	float: left;
	background: #333231;
}

div#header div.search form input.searchquery {
	width: 200px;
	height: 15px;
	font-family: Verdana;
	font-size: 0.85em;
	padding: 1px 0 0 2px;
	color: #827d76;
}

div#header div.search form button {
	width: 20px;
	height: 16px;
	padding: 0;
	cursor: pointer;
}



/*
 * Header:
 */
div#footer {
	float: left;
	clear: both;
	width: 100%;
	margin: 10px 0 0 0;
	padding: 5px 0 30px 0;
	border-top: 1px solid #827d76;
}

ul#socialnetworks {
	float: left;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

ul#socialnetworks li {
	float: left;
	margin-right: 10px;
}

#footer div.permalinks {
	float: right;
	font-size: 0.8em;
}

#footer div.permalinks a {
	color: #827d76;
	text-decoration: none;
}
#footer div.permalinks a:hover {
	text-decoration: underline;
}

#footer div.permalinks ul.iconized {
	float: left;
	margin: 0;
	padding: 0;
	list-style-type: none;
	margin-right: 35px;
}

#footer div.permalinks ul.iconized li {
	float: left;
	margin-right: 15px;
}

#footer div.permalinks ul.iconized li a {
	padding-left: 13px;
	background: no-repeat left center;
}

#footer div.permalinks ul.default {
	float: left;
	margin: 0;
	padding: 0;
	list-style-type: none;
}

#footer div.permalinks ul.default li {
	float: left;
	border-right: 1px solid #827d76;
	padding-right: 5px;
	margin-right: 5px;
}
#footer div.permalinks ul.default li.last {
	border-right: none;
	padding-right: 0;
	margin-right: 0;
}



/*
 * Content area:
 */
#content {
	float: left;
	clear: both;
	width: 100%;
	margin-top: 14px;
}


#content a.more {
	padding-left: 15px;
	background: url(../images/icon_more.gif) no-repeat left bottom;
	font-size: 0.85em;
	font-weight: bold;
	color: #FFFFFE;
	text-decoration: none;
}
#content a.more:hover {
	text-decoration: underline;
}


#content .hidden {
	/* DON'T USE display: none; (Because the element dimensions in this case aren't calculatable) */
	position: absolute;
	overflow: hidden;
	clip: rect(0 0 0 0);
}


#content .two-cols {
	width: 495px;
	margin-top: 32px;
}

#content .left {
	float: left;
}

#content .right {
	float: right;
}


#content .marginal {
	float: left;
	width: 222px;
}

#content .marginal .box {
	margin-bottom: 30px;
	border-top: 1px solid #01bbaa;
}

#content .marginal .box h3 {
	margin: 5px 0 0 0;
	font-size: 1.2em;
	font-weight: normal;
	color: #01bbaa;
}

#content .marginal .box p {
	margin: 8px 0 8px 0;
	color: #ccc4b9;
	font-size: 0.85em;
}

#content .marginal .box img {
	margin-top: 10px;
}


#content .wrapper {
	float: left;
	width: 990px;
	margin: 0 -10px;
	display: inline;
	padding: 1px 10px 0 10px;
	background: url(../images/line.png) no-repeat left top;
}


#content .wrapper-wo-line {
	float: left;
	width: 990px;
	margin: 0 0 0 -10px;
	display: inline;
	padding: 0 0 0 10px;
}


#content div.text a {
	color: white;
}

#content div.text img {
	margin: 13px 0 17px;
}
#content div.text img.small-margin {
	margin: 7px 0;
}

#content div.text address {
	font-style: normal;
}


#content a.up {
	float: left;
	margin-left: 5px;
	display: inline;
}

#content a.down {
	float: right;
}


#content div.flash-content {
	float: left;
	width: 777px;
	height: 607px;
	margin-left: -11px;
	display: inline;
}


#content div.flash-full-wrapper {
	float: left;
	width: 1010px;
	margin: 0 -10px 35px -10px;
	display: inline;
	padding-top: 1px;
	background: url(../images/line.png) no-repeat left top;
}
#content div.flash-full {
	background: url(../images/line.png) no-repeat left bottom;
	/* height: 346px; also set with javascript */
	padding: 0 0 1px 10px;
}

#content div.flash-full-wo-lines {
	float: left;
}


#content div.text ul {
	margin: 8px 0;
	padding: 0;
	list-style-type: none;
	clear: both;
}

	#content div.text ul li {
		background: url(../images/icon_marker.gif) no-repeat 0 .7em;
		padding-left: 12px;
	}


#content .text-150 {
	float: left;
	width: 156px;
	margin-right: 68px;
	padding-top: 5px;
	border-top: 1px solid #01bbaa;
	font-size: 0.8em;
	line-height: 18px;
}


#content .text-222 {
	margin-bottom: 30px;
	border-top: 1px solid #01bbaa;
	line-height: 18px;
	font-size: 0.9em;
}

	#content .text-222 img {
		margin: 0 8px!important;
	}


#content .text-250 {
	float: left;
	width: 252px;
	margin-right: 68px;
	padding-top: 5px;
	border-top: 1px solid #01bbaa;
	font-size: 0.8em;
	line-height: 18px;
}


#content .text-300 {
	width: 650px;
	float: left;
}
	#content .text-300 div.column {
		float: left;
		width: 294px;
		margin: 30px 30px 0 0;
	}


#content .text-300-2 {
	width: 990px;
	float: left;
}

	#content .text-300-2 h3 {
		margin: 0 0 17px 0;
		padding-top: 5px;
		border-top: 1px solid #01bbaa;
		font-size: 1.2em;
		font-weight: normal;
		text-transform: uppercase;
		color: #01bbaa;
	}

	#content .text-300-2 h4 {
		color: #827d76;
		margin: 16px 0;
		font-size: 1.1em;
	}

	#content .text-300-2 div.column {
		float: left;
		width: 294px;
		margin: 0 30px 0 0;
		line-height: 18px;
		font-size: 0.9em;
	}


#content .text-400 {
	float: left;
	width: 393px;
	padding-top: 5px;
	border-top: 1px solid #01bbaa;
	font-size: 0.8em;
	line-height: 18px;
}
#content .two-cols .text-400 {
	margin-bottom: 20px;
}

#content .two-cols.right {
	width: 480px;
}

	#content .two-cols .text-400 span {
		color: #01bbaa;
	}

	#content .two-cols .text-400 .formfield {
		margin: 0 0 10px 0;
	}
	#content .two-cols .text-400.halfwidth .formfield {
		float: left;
		width: 165px;
		margin: 0 55px 10px 0;
	}
	#content .two-cols .text-400.halfwidth .formfield.nomargin {
		margin-right: 0;
	}

	#content .two-cols .text-400 input,
	#content .two-cols .text-400 textarea,
	#content .two-cols .text-400 select {
		width: 393px;
		margin: 0;
		padding: 0;
		border: 0;
		color: #000;
	}
	#content .two-cols .text-400 input,
	#content .two-cols .text-400 textarea {
		background: url(../images/bg_transparent.png);
		color: #fff;
	}
	#content .two-cols .text-400.halfwidth input,
	#content .two-cols .text-400.halfwidth textarea,
	#content .two-cols .text-400.halfwidth select {
		width: 165px;
	}
	#content .two-cols .text-400 button {
		border: 0;
		padding: 0;
		background: none;
		font-size: 1em;
	}
	#content .two-cols .text-400 select {
		font-family: Verdana;
		font-size: 1em;
	}

#content form .error label,
#content form .error input,
#content form .error select,
#content form .error textarea {
	color: red;
}

	#content .two-cols .text-400 .description {
		padding-top: 10px;
	}

		#content .two-cols .text-400 .usr-block {
			margin: 0;
		}


#content div.text-600 {
	float: left;
	width: 604px;
	margin-right: 77px;
	font-size: 0.9em;
	line-height: 18px;
}

	#content div.text-600 h3 {
		margin: 0 0 30px 0;
		padding-top: 5px;
		border-top: 1px solid #01bbaa;
		font-size: 1.2em;
		font-weight: normal;
		text-transform: uppercase;
		color: #01bbaa;
	}


#content div.text-730 {
	float: left;
	width: 730px;
	margin-right: 38px;
	font-size: 0.9em;
	line-height: 18px;
}

	#content div.text-730 h3 {
		margin: 0 0 13px 0;
		padding-top: 10px;
		border-top: 1px solid #01bbaa;
		font-size: 1.5em;
		font-weight: normal;
		color: #01bbaa;
	}

	#content div.text-730 p {
		border-top: 1px dotted #ccc4b9;
		padding-top: 1px;
	}


#content div.text-730-2 {
	width: 730px;
}

	#content div.text-730-2 p {
		margin: 0 0 16px 0!important;
		width: 730px!important;
	}


#content div.text-960 {
	float: left;
	font-size: 0.9em;
	line-height: 18px;
}

	#content div.text-960 h3 {
		margin: 0;
		padding: 0;
		font-size: 1em;
		color: #827d76;
	}

	#content div.text-960 div.column {
		float: left;
		width: 252px;
		margin-right: 66px;
	}


#content .teaserlist {
	width: 100%;
	float: left;
	margin-bottom: -68px;
}

#content .teaserlist .teaserrow {
	width: 100%;
	float: left;
	margin-bottom: 68px;
}

#content .teaserlist .teaser {
	width: 252px;
	float: left;
	margin-right: 68px;
	padding-top: 10px;
	border-top: 1px solid #01bbaa;
}

#content .teaserlist .teaser .number {
	float: left;
	width: 67px;
}

#content .teaserlist .teaser .content {
	width: 185px;
	float: left;
	margin-bottom: 15px;
}

#content .teaserlist .teaser .content h3 {
	margin: 0;
}

#content .teaserlist .teaser .content div.subheader {
	margin: 4px 0 0 0;
	font-size: 0.85em;
	color: #01bbaa;
}

#content .teaserlist .teaser .content div.teasertext {
	margin: 5px 0 7px;
	font-size: 0.9em;
	line-height: 18px;
}

#content .teaserlist .teaser .content address {
	margin: 5px 0 30px;
	padding: 0;
	font-style: normal;
	font-size: 0.8em;
	line-height: 18px;
}


#content .tablewrapper {
	float: left;
	width: 100%;
	border-top: 1px solid #01bbaa;
	padding-top: 1px;
}

	#content .tablewrapper.marginal table {
		float: left;
		margin-right: 30px;
	}

	#content .tablewrapper.marginal .marginal {
		margin-top: 40px;
	}

	#content .tablewrapper table {
		border-collapse: collapse;
	}
	#content .tablewrapper table.borderbottom {
		border-bottom: 1px dotted #ccc4b9;
	}

	#content .tablewrapper table tr.open {
		cursor: pointer;
	}

	#content .tablewrapper th,
	#content .tablewrapper td {
		padding: 0;
	}
	#content .tablewrapper th {
		padding: 10px 0 12px;
		text-align: left;
		font-size: 1.3em;
		font-weight: normal;
		color: #01bbaa;
	}
	#content .tablewrapper td {
		padding: 10px 0;
		vertical-align: top;
	}
	#content .tablewrapper td.news,
	#content .tablewrapper td.date,
	#content .tablewrapper td.toggle,
	#content .tablewrapper td.details,
	#content .tablewrapper td.cases,
	#content .tablewrapper td.client,
	#content .tablewrapper td.branche,
	#content .tablewrapper td.category,
	#content .tablewrapper td.award,
	#content .tablewrapper td.project,
	#content .tablewrapper td.discipline,
	#content .tablewrapper td.level,
	#content .tablewrapper td.location,
	#content .tablewrapper td.department {
		border: 1px dotted #ccc4b9;
		border-left: none;
		border-right: none;
		border-bottom: none;
		font-size: 0.9em;
	}
	#content .tablewrapper tr.nobordertop td {
		border-top: none;
	}
	#content .tablewrapper tr.noborderbottom td {
		border-bottom: none;
	}
	#content .tablewrapper td.toggle {
		vertical-align: bottom;
		padding-bottom: 35px;
	}

	#content .tablewrapper .news {
		width: 635px;
	}
	#content .tablewrapper td.news,
	#content .tablewrapper td.award {
		font-weight: bold;
		color: #ccc4b9;
		font-size: 1em!important;
		padding-right: 10px;
	}

		#content .tablewrapper .news img,
		#content .tablewrapper .award img,
		#content .tablewrapper .cases img {
			float: left;
			margin-right: 12px;
		}

	#content .tablewrapper .date {
		width: 55px;
	}

	#content .tablewrapper .toggle {
		width: 32px;
	}

	#content .tablewrapper .blank {
		width: 36px;
	}

	#content .tablewrapper .details {
		padding-top: 0;
		padding-bottom: 35px;
	}

		#content .tablewrapper .details h3 {
			clear: both;
			margin: 26px 0 7px;
			font-size: 1.1em;
			color: #827d76;
		}

		#content .tablewrapper .details .date {
			display: block;
			margin-bottom: 5px;
			font-size: 1em;
			color: #444340;
		}

		#content .tablewrapper .details p {
			float: left;
			width: 224px;
			margin-right: 24px;
			line-height: 16px;
			font-size: 1em;
		}
		#content .tablewrapper .details p.last {
			margin-right: 0;
		}

	#content .tablewrapper .sidebar {
		width: 222px;
		padding-top: 0;
	}

		#content .tablewrapper .sidebar p {
			font-size: 0.9em;
		}

		#content .tablewrapper .sidebar h4 {
			margin: 0;
			padding: 4px 0 8px;
			font-size: 1.5em;
			font-weight: normal;
			color: #01bbaa;
		}

	#content .tablewrapper .cases {
		width: 310px;
		padding-right: 15px;
	}
	#content .tablewrapper td.cases {
		font-weight: bold;
		color: #ccc4b9;
	}

	#content .tablewrapper .client {
		width: 150px;
	}

	#content .tablewrapper .branche {
		width: 109px;
	}

	#content .tablewrapper .category {
		width: 106px;
	}

	#content .tablewrapper .award {
		width: 245px;
	}
	#content .tablewrapper td.award a {
		font-weight: bold;
		color: #ccc4b9;
		text-decoration: none;
	}
	#content .tablewrapper .client {
		width: 130px;
	}

	#content .tablewrapper .project {
		width: 180px;
	}

	#content .tablewrapper .discipline {
		width: 130px;
	}

	#content .tablewrapper .level {
		width: 255px;
		
	}
	#content .tablewrapper td.level {
		font-size: 1.1em;
		font-weight: bold;

	}
	#content .tablewrapper .location {
		width: 158px;
		padding-left: 5px;
	}

	#content .tablewrapper .department {
		width: 270px;
	}

	#content .tablewrapper .togglemessage img {
		float: right;
		clear: both;
		margin-top: 18px;
	}

	#content .tablewrapper .pager {
		width: 732px;
		padding-top: 10px;
		font-size: 0.9em;
	}
	#content .tablewrapper .later {
		float: left;
	}

	#content .tablewrapper .prior {
		float: right;
	}

		#content .tablewrapper .prior .usr-block {
			display: inline;
		}


	#content .searchresult {
		width: 730px;
		padding-top: 9px;
	}

		#content .searchresult h3 {
			margin: 0 0 13px;
			padding-top: 10px;
			font-size: 1.3em;
			font-weight: normal;
			color: #01bbaa;
			display: inline;
		}

			#content .searchresult h3 span {
				color: #ccc4b9;
				font-size: 0.8em;
			}

		#content .searchresult p.description {
			display: inline;
			margin-left: 10px;
			font-size: 0.9em;
		}

		#content .searchresult p.description span {
			color: #01bbaa;
		}

		#content .searchresult .order {
			float: right;
			width: 32px;
			margin-top: 9px;
		}

		#content .searchresult ul {
			float: left;
			width: 100%;
			list-style: none;
			margin: 14px 0 9px;
			padding: 0;
			border-top: 1px dotted #ccc4b9;
		}

			#content .searchresult ul li {
				float: left;
				width: 100%;
				padding: 7px 0 10px 0;
				border-bottom: 1px dotted #ccc4b9;
				border-right: none;
				border-left: none;
			}

		#content .searchresult ul h4 {
			float: left;
			margin: 0 25px 0 0;
			padding: 0;
			width: 220px;
			font-size: 1em;
			color: #827d76;
		}

		#content .searchresult ul p {
			float: left;
			width: 410px;
			font-size: 0.9em;
		}

		#content .searchresult ul a.more {
			clear: both;
			float: left;
			margin-top: 25px;
		}


.google-maps {
	width: 393px;
	height: 215px;
	margin: 13px 0 17px
}
	.google-maps img {
		margin: 0!important;
	}



/*
 * Classes defined in WYSIWYG editor:
 */
a.usr-arrow {
	display: inline-block;
	padding-left: 15px;
	background: url(../images/icon_more.gif) no-repeat left bottom;
	font-size: 0.85em;
	font-weight: bold;
	color: #FFFFFE;
	text-decoration: none;
}
a.usr-arrow:hover {
	text-decoration: underline;
}

.usr-block {
	display: block;
	margin: 5px 0;
	padding-left: 16px;
	background: url(../images/icon_more.gif) left center no-repeat;
	font-size: 0.9em;
	font-weight: bold;
	text-decoration: none;
	color: white!important;
}
.usr-block:hover {
	text-decoration: underline;
}

a.usr-pdf {
	display: inline-block;
	margin: 4px 18px 4px 0;
	padding-left: 20px;
	background: url(../images/icon_pdf.png) left center no-repeat;
	font-size: 0.9em;
	font-weight: bold;
	text-decoration: none;
	color: white!important;
}
a.usr-pdf:hover {
	text-decoration: underline;
}

a.usr-contact {
	display: inline-block;
	margin: 4px 18px 4px 0;
	padding-left: 20px;
	background: url(../images/icon_contact.png) left center no-repeat;
	font-size: 0.9em;
	font-weight: bold;
	text-decoration: none;
	color: white!important;
}
a.usr-contact:hover {
	text-decoration: underline;
}

a.usr-gallery {
	display: inline-block;
	padding: 4px 0 4px 20px;
	background: url(../images/icon_gallery.png) left center no-repeat;
	font-size: 0.9em;
	font-weight: bold;
	text-decoration: none;
	color: white!important;
}
a.usr-gallery:hover {
	text-decoration: underline;
}

a.usr-video {
	display: inline-block;
	padding: 4px 0 4px 20px;
	background: url(../images/icon_video.png) left center no-repeat;
	font-size: 0.9em;
	font-weight: bold;
	text-decoration: none;
	color: white!important;
}
a.usr-video:hover {
	text-decoration: underline;
}

a.usr-gallery,
a.usr-video {
	float: right;
	position: relative;
	top: -.4em;
	margin: -2em 0 0 18px;
}
