* {
  border-color: #141414 !important;
  border-width: 1px;
  background: #FFFFFF !important;
  color: #141414 !important;
  line-height: 1.4;
  font-family: Georgia, 'Times New Roman', Times, serif;
  font-size: 9pt !important;
}

body {
  padding: 0 1pt;
  /* @ Firefox, prevent cutted off borders on left and right edge, for example of a table */
  orphans: 3;
  widows: 3;
}

.c-more,
.gsb hr,
.gsb object,
.gsb .aural,
.navSkip,
.navPrimary,
.navSecondary,
#navServiceMeta,
#clear,
#navStart,
.navFunctions,
#navContent,
.siteInfo h2,
#identityPicture,
.search,
.navIndex,
.servicebox,
.navToTop,
a.lupe,
#socialBookmarks,
.sectionRating,
.service-border,
.servicebox,
.navFunctionsWrapper,
.solrSortLinks,
input[type='submit'],
input[type='reset'],
.newsletterPlainLink,
.newsletterHtmlLink,
.shoppingCartLink,
.siteInfo,
.teaser-switcher .navigation,
.teaser-switcher .slick-dots,
.navBreadcrumbs,
.copyright a,
.gallerybox .copyright span,
.galleryBox .navigation,
.mejs__mediaelement,
.navBreadcrumbsVertical,
.picture a.loupe,
.box.live-calendar,
.aural,
.c-meta__tooltip,
.tooltip,
.all,
.video-icon,
.stage .pagination,
.stage .navigation,
.stage .slick-dots,
.stage .slick-slide,
.mfp-wrap,
.wrapperUserDialog,
.c-sibling-site,
.c-breadcrumb,
.c-footer__list,
.c-theme-switcher,
.c-page-functions,
.c-publications__nav,
form,
.c-short-list__more,
.c-page-nav__container,
.toc,
.cookiebanner {
  display: none !important;
}

.row {
  display: table;
  width: 100%;
}

.mejs__inner,
.mejs__wrapper {
  visibility: hidden;
}

.mejs__wrapper .mejs__poster img {
  visibility: visible !important;
}

.c-download-link,
.c-to-top > a {
  padding: 0;
}

.c-download-link::before,
.c-to-top > a::before {
  content: none;
}

.c-short-list__heading--calendar::before {
  content: none;
}

.c-to-top > a {
  height: 0;
}

.c-video {
  padding: 0;
}

.galleryBox .slick-slide,
.videoBox,
.teaser,
.banner,
.boxWrapper.videoBox,
.pageBottom .wrapper-teaser-switcher,
.footer {
  page-break-inside: avoid;
}

.gsb code,
.gsb input,
.gsb kbd,
.gsb option,
.gsb samp,
.gsb textarea,
.gsb var {
  font-family: 'Courier New', Courier, monospace;
}

.gsb h1,
.gsb h1 * {
  font-size: 20pt !important;
}

.gsb h1.firstInSlot {
  margin-top: 20pt;
}

.gsb h2,
.gsb h2 * {
  font-size: 14pt !important;
}

.gsb h3,
.gsb h3 * {
  font-size: 11pt !important;
}

.gsb h4,
.gsb h4 * {
  font-size: 10pt !important;
}

.gsb h5,
.gsb h6 {
  font-weight: normal;
}

.gsb h6 {
  font-style: italic;
}

.gsb h1,
.gsb h2,
.gsb h3,
.gsb h4,
.gsb h5,
.gsb h6 {
  page-break-after: avoid;
  page-break-inside: avoid;
}

.gsb p, .gsb li, .gsb td, .gsb th, .gsb blockquote, .gsb dl, .gsb caption, .gsb .formError, .gsb address, .gsb .address {
  font-size: 9pt;
}

.gsb caption,
.gsb legend {
  font-weight: bold;
}

.gsb code,
.gsb kbd,
.gsb samp,
.gsb var {
  font-weight: bold;
  letter-spacing: 1px;
}

.gsb dd,
.gsb dt,
.gsb li,
.gsb td,
.gsb th,
.gsb tr,
.gsb thead {
  page-break-inside: avoid;
}

.gsb blockquote,
.gsb q {
  quotes: '' '';
}

.gsb blockquote::after, .gsb blockquote::before,
.gsb q::after,
.gsb q::before {
  content: '';
}

abbr[title]:after {
  display: none;
}

.content.content.content abbr {
  border-bottom: 0;
}

.content.content.content abbr::after {
  display: inline-block;
  margin-left: .5ex;
}

address {
  font-style: normal;
}

.wrapperBreadcrumbs,
.main,
.headerTopLine,
.content h1,
.row:before,
.row:after {
  clear: both;
}

p,
address {
  margin: 0 0 20pt;
}

ul,
ol {
  margin: 0;
  padding-left: 0;
  list-style-type: none;
}

img {
  height: auto;
  max-width: 100%;
}

h1.firstInSlot {
  margin-top: 0;
}

.aural,
p.navSkip,
.navSkip a {
  left: -2000px;
  line-height: 0;
  overflow: hidden;
  position: absolute;
  width: 0;
}

.navSkip a:focus, .navSkip a:active {
  font-size: 20px;
  height: auto;
  left: 15px;
  padding: 8px 0 20px;
  top: 15px;
  width: 100%;
  z-index: 1000;
}

.clear,
.content h1,
.content h2,
.content h3,
.content h4,
.content h5,
.content h6,
.content table {
  clear: both;
}

q {
  quotes: '' '' '' '';
}

blockquote {
  margin: 10pt 10pt 20pt;
  background: #F2F5F7;
}

blockquote p {
  padding: 10pt;
  margin-bottom: 0;
}

button {
  border: none;
  background-color: transparent;
  padding: 0;
}

.stage {
  margin-bottom: 20pt;
}

.stage .slick-track,
.stage .slick-slide {
  width: auto !important;
}

.stage .slick-track {
  -webkit-transform: inherit !important;
      -ms-transform: inherit !important;
          transform: inherit !important;
}

.stage .slick-slide .slick-active {
  display: block !important;
}

.content ol,
.addContent ol {
  list-style: decimal outside none;
  padding-left: 20px;
}

.content ol ol,
.addContent ol ol {
  list-style: lower-alpha outside none;
}

.content ol ol ol,
.addContent ol ol ol {
  list-style: lower-roman outside none;
}

.content ol#searchResult,
.addContent ol#searchResult {
  list-style-type: none;
  padding-left: 0;
}

.content ul,
.content ol,
.addContent ul,
.addContent ol {
  list-style-type: inherit;
  margin-bottom: 20pt;
}

.content ul *,
.content ol *,
.addContent ul *,
.addContent ol * {
  margin-bottom: 0;
}

.content ul h2,
.content ol h2,
.addContent ul h2,
.addContent ol h2 {
  display: block;
  border-bottom: 2px solid #141414;
}

.content table ul,
.content table ol,
.addContent table ul,
.addContent table ol {
  margin-bottom: 0;
}

.content > ul:not([class]) li::before,
.s-richtext > ul:not([class]) li::before {
  content: '';
  display: inline-block;
  position: absolute;
  border: 1px solid #0055AF;
}

.content {
  width: 100%;
  padding-top: 0;
}

.content .withHeader em {
  font-style: normal;
  display: block;
}

.content ul {
  list-style-type: none;
  padding-left: 0;
}

.content ul.links, .content ul.navFunctions, .content ul.downloadlinks, .content ul.navIndex, .content ul#searchResultIndex.navIndex, .content ul.glossaryIndex {
  list-style-type: none;
  padding-left: 0;
}

.content .wrapper-teaser .toggleEntry {
  border-bottom: 1px dotted;
}

.content .wrapper-teaser .toggleEntry:last-child {
  border-bottom: none;
}

ul.downloadlinks li {
  margin-top: 10pt;
}

ul.downloadlinks li:first-child {
  margin-top: 0;
}

ul.links a,
ul.links strong {
  display: block;
}

.sitemap ul {
  list-style-type: disc;
}

.sitemap li {
  margin-left: 20px;
}

.StndGallery .wrapper {
  height: auto;
}

.pageBottom {
  display: block;
  outline: none;
}

.pageBottom .wrapper-teaser-switcher h2 {
  clear: both;
  border-top: 3pt double;
  padding-top: 10pt;
}

.pageBottom .wrapper-teaser-switcher .karussell {
  margin: 0 !important;
}

.pageBottom .wrapper-teaser-switcher .slick-track {
  width: 100% !important;
  -webkit-transform: inherit !important;
      -ms-transform: inherit !important;
          transform: inherit !important;
  height: inherit !important;
  overflow: auto;
  padding: 5pt 5pt 5pt 15pt;
}

.pageBottom .wrapper-teaser-switcher .slick-track .teaser {
  width: calc(100% / 3) !important;
}

.pageBottom .wrapper-teaser-switcher .slick-track .teaser .slick-slide {
  float: left;
  border-bottom: none;
}

.js-on .pageBottom .slick-dots {
  display: none !important;
}

dl {
  line-height: 1.43em;
  margin: 0 0 20px;
  overflow: hidden;
}

table dl {
  margin-bottom: 0;
}

dt {
  font-weight: bold;
  display: block;
  float: left;
  padding-right: 15px;
}

dd {
  display: block;
}

p.left,
td.left,
th.left {
  text-align: left;
}

p.right,
td.right,
th.right {
  text-align: right;
}

p.center,
td.center,
th.center {
  text-align: center;
}

p.justify,
td.justify,
th.justify {
  text-align: justify;
}

table {
  border-collapse: collapse;
  margin: 0 0 20pt;
  padding: 0 0 10pt;
  table-layout: fixed;
  width: 100%;
}

table .sortUp {
  text-decoration: underline;
}

table .sortDown {
  text-decoration: underline;
}

table .width15 {
  width: 15%;
}

table .width20 {
  width: 20%;
}

table .width25 {
  width: 25%;
}

table .width30 {
  width: 30%;
}

table .width35 {
  width: 35%;
}

table .width40 {
  width: 15%;
}

table .width45 {
  width: 45%;
}

table .width50 {
  width: 50%;
}

table .width70 {
  width: 70%;
}

table .width80 {
  width: 80%;
}

table .width85 {
  width: 85%;
}

caption {
  font-weight: bold;
  color: #141414;
  padding-bottom: 10pt;
  text-transform: uppercase;
  text-align: left;
}

tbody {
  padding: 0 0 10px;
}

th {
  border-bottom: 1px solid #141414;
  background: #F2F5F7;
  color: #141414;
  padding: 10pt;
  text-align: left;
}

th a {
  color: #141414;
}

td {
  border-bottom: 1px solid #141414;
  padding: 8px;
  text-align: left;
  vertical-align: top;
}

.picture {
  background: #F2F5F7;
  overflow: hidden;
  max-width: 100%;
}

.picture.linksOhne .wrapper-text {
  float: none;
}

.picture.rechts {
  margin: 6px auto 18px;
}

.picture.rechtsOhne {
  margin-left: auto;
}

.picture.mitte {
  margin-left: auto;
  margin-right: auto;
}

.picture a,
.picture a span {
  display: block;
}

.picture .wrapper-text {
  display: block;
  margin: 5pt 0;
}

.galleryBox {
  width: 100% !important;
}

.galleryBox span.wrapper {
  width: 50%;
  float: left;
  margin-right: 20pt;
}

.galleryBox .slick-list,
.galleryBox .slick-track {
  width: 100% !important;
  -webkit-transform: inherit !important;
      -ms-transform: inherit !important;
          transform: inherit !important;
  height: inherit !important;
}

.galleryBox .slick-slide {
  border-bottom: 1px dotted;
  width: 100% !important;
  height: 100% !important;
}

.galleryBox .slick-slide:last-child {
  border-bottom: none;
}

.StndGallery .galleryBox .slick-slide {
  height: 100% !important;
}

.galleryBox .mejs__wrapper {
  height: 200px;
  width: 50%;
  float: left;
  margin-right: 20pt;
}

.galleryBox .mejs__wrapper img {
  width: 50%;
}

form .formLabel label {
  float: left;
  display: block;
  width: 120px;
}

form .formField textarea {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 360px;
}

form .formField .formError {
  float: right;
}

form .formField span {
  display: block;
}

form .row div {
  margin: 10px 0;
}

.c-toggle {
  margin: 0;
}

.gsb-toggle .heading {
  -webkit-column-break-inside: avoid;
          break-inside: avoid;
  -webkit-column-break-before: auto;
          break-before: auto;
}

.gsb-toggle .heading + div {
  display: block !important;
}

.gsb-toggle .heading,
.gsb-toggle .heading + div {
  padding: 0;
}

.gsb-toggle .heading {
  font-size: 13pt !important;
}

.address,
.contactData {
  line-height: 1.5;
  margin: 0 0 20pt;
}

.docData {
  margin-bottom: 20pt;
  overflow: hidden;
}

.docData .label {
  display: block;
  font-weight: bold;
  clear: left;
  width: 6em;
  float: left;
  padding-right: 20px;
  padding-top: 0;
  border-width: 0;
}

.docData .value {
  display: block;
  float: left;
  border-width: 0;
  padding-top: 0;
}

.docData a {
  display: block;
}

.docData.callForBids .label, .docData.joboffer .label, .docData.event .label, .docData.interview .label {
  width: 10em;
}

.docData.orgunit .label, .docData.services1 .label, .docData.callForBids .label {
  width: 12em;
}

.docData.services .label, .docData.pressrelease .label {
  width: 8em;
}

.docData.services .value, .docData.pressrelease .value {
  width: 8em;
}

.docData.services3 .label, .docData.services2 .label, .docData.services1 .label, .docData.event .label {
  width: 13em;
}

.docData.services3 .value, .docData.services2 .value, .docData.services1 .value, .docData.event .value {
  width: 27em;
}

.docData.orgunit .label {
  width: 15em;
}

.docData.orgunit .value {
  width: 25em;
}

a {
  font-size: 100%;
  text-decoration: underline;
  padding: 0 !important;
}

a::after {
  content: none !important;
}

.toc a {
  text-decoration: none;
}

.picture a:link:after {
  position: absolute;
}

.picture.withLoupe:link:after {
  position: inherit;
}

.picture[class*='links'] .wrapper img,
.picture[class*='rechts'] .wrapper img {
  width: auto;
}

.header {
  margin-bottom: 20pt;
  border-bottom: 3pt double;
}

.header .row {
  overflow: hidden;
}

.wrapperBranding,
#brandingnobg {
  padding: 8pt 0 0;
}

.logo,
.addlogo {
  width: 25%;
}

.logo {
  float: left;
}

.addlogo {
  float: right;
}

.responsiveTable {
  margin: 0;
  overflow-x: visible;
}

.responsiveTable table {
  width: 100%;
  table-layout: fixed;
  text-overflow: ellipsis;
  overflow: visible;
}

.responsiveTable table td {
  word-wrap: break-word;
  overflow-wrap: break-word;
}

.c-meta--bg-color-primary-5 {
  margin-left: 0;
  margin-right: 0;
  padding: 0;
}

.c-meta__label {
  font-weight: bold;
  clear: left;
  width: 8em;
  float: left;
  padding-right: 20px;
  padding-top: 0;
}

.c-meta__value {
  display: block;
  float: left;
}

.c-meta--narrow .c-meta__item {
  overflow: hidden;
}

.l-content-wrapper {
  padding: 0;
}

.c-box {
  padding: 0;
  margin: 0;
}

.c-box:not(:first-child) {
  margin-top: 0;
}

.c-section-heading {
  margin-bottom: 9pt;
}

.c-publications__stage {
  width: 50%;
}

.c-publications__stage .slick-track {
  left: 0 !important;
}

.c-publications__stage.slick-initialized .c-teaser-publication.slick-slide {
  display: none;
  float: none;
}

.c-publications__stage.slick-initialized .c-teaser-publication.slick-slide.slick-slide.slick-active {
  display: block;
}

.c-teaser-publication__heading {
  border-top: 1pt solid;
  padding-top: 9pt;
  margin-top: 9pt;
}

.s-construction-project-process .richtext-accordion .heading {
  padding-left: 0 !important;
}

.c-short-list__heading--has-icon {
  padding-left: 0;
}

.c-project-areas__count {
  font-size: 9pt;
  display: inline;
}

.c-project-areas__area {
  position: static;
  display: inline;
}

.c-project-areas__item {
  margin-bottom: 9pt !important;
}

.c-project-areas__link {
  text-decoration: none;
}

.c-project-areas__link::before {
  content: none;
}

.c-teaser__media img {
  width: auto;
}

.c-teaser__source {
  text-align: left;
}

.c-stage__source {
  text-align: left;
}

.c-stage__slide {
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}

.c-stage__slide,
.c-stage .slick-track {
  max-width: 100% !important;
}

.c-stage:not(.c-stage--full-width) .c-stage__image {
  margin-right: 20px;
  margin-left: 0;
}

.c-stage:not(.c-stage--full-width) .c-stage__source {
  padding-left: 0;
}

.fixed .wrapperDivisions, .fixed
#wrapperFooter {
  padding-top: 0;
}

.subheadline {
  margin-top: -8pt;
}

.section,
.teaser {
  width: 100%;
  /* @ IE-Win, trigger hasLayout and provide auto clear */
  margin: 0 0 20pt;
  border-bottom: 1px dotted;
  padding: 0 0 8pt;
}

.sectionRelated {
  margin: 16pt 0 0;
  border-top: 1px solid;
  padding: 8pt 0 0;
}

.sectionRelated h2 {
  margin-top: 0;
}

.gsb fieldset,
.gsb input,
.gsb select,
.gsb textarea {
  border: 1px solid;
}

.gsb fieldset {
  padding: 8pt;
}

.clear,
.section:after {
  display: block;
  clear: both;
  content: '';
}

.supplement {
  width: 100%;
  float: none;
}

.supplement .banner {
  width: 44%;
  margin: 0 3% 10pt;
  float: left;
}

.supplement .boxWrapper.videoBox {
  min-height: 200px;
}

.supplement .mejs__container {
  float: left;
  margin-right: 20px;
}

.footer {
  clear: both;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-top: 5px;
  padding-top: 5px;
  border-top: 3pt double;
}

.footer p {
  margin-bottom: 0;
}

.teaser {
  overflow: hidden;
}

.teaser p {
  display: block;
}

.teaser.type-1 {
  border-bottom: 1px dotted #CCD6E0;
}

.teaser .medium-8 {
  float: left;
  width: 64%;
  padding-left: 5pt;
  padding-right: 5pt;
  position: relative;
  left: 33.33%;
  right: auto;
}

.teaser .medium-4 {
  float: right;
  width: 31%;
  padding-left: 5pt;
  padding-right: 5pt;
  position: relative;
  left: auto;
  right: 66.66%;
}

.teaser h1,
.teaser h2,
.teaser h3 {
  font-size: 180%;
  margin-bottom: 10pt;
}

.teaser h1.withHeader,
.teaser h2.withHeader,
.teaser h3.withHeader {
  margin-top: 16pt;
  position: relative;
  line-height: 1;
  padding-top: 0;
}

.teaser h1.withHeader .category,
.teaser h2.withHeader .category,
.teaser h3.withHeader .category {
  font-family: "Open Sans", Calibri, "Droid Sans", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 66.67%;
  font-weight: bold;
  font-style: normal;
  line-height: 1;
  text-transform: uppercase;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  top: -17px;
}

.teaser h1 a,
.teaser h2 a,
.teaser h3 a {
  text-decoration: none;
}

.teaser h1 a:hover, .teaser h1 a:active, .teaser h1 a:focus,
.teaser h2 a:hover,
.teaser h2 a:active,
.teaser h2 a:focus,
.teaser h3 a:hover,
.teaser h3 a:active,
.teaser h3 a:focus {
  text-decoration: underline;
}

.teaser .picture-element {
  float: left;
  margin: 1.07em 1.07em 0 0;
  width: 35%;
}

.teaser h2,
.teaser img {
  margin-bottom: 5px;
}

.wrapperTeaser {
  margin-bottom: 20px;
}

.teaser .small-10 {
  float: left;
  width: 81%;
  padding-left: 5pt;
  padding-right: 5pt;
  position: relative;
  left: 16.66%;
  right: auto;
}

.teaser .small-2 {
  float: right;
  width: 14%;
  padding-left: 5pt;
  padding-right: 5pt;
  position: relative;
  left: auto;
  right: 83.33%;
}

.teaser h3 {
  margin-top: 2pt;
}

.teaser .dateblock {
  width: 100%;
  font-weight: bold;
  float: left;
  text-align: center;
  padding-bottom: 10px;
  margin-bottom: 10px;
  border: 1px solid #CCD6E0;
}

.teaser .dateblock .day {
  font-size: 14pt;
  line-height: 1.2;
}

.teaser .dateblock .month {
  font-size: 14pt;
  line-height: 1.2;
  background-color: transparent;
  color: #141414;
}

.teaser .dateblock .month abbr {
  color: #141414;
  text-transform: uppercase;
}

.teaser .dateblock abbr:after {
  content: none;
}

/*****************************
10.0 special sites
*****************************/
#glossaryHits {
  list-style: none;
  padding: 0;
}

.navIndex {
  list-style: none;
  padding: 0;
}

.navIndex li {
  display: inline;
}

.searchresult .aural {
  display: inline;
}

.searchresult .teaser h3 {
  font-size: 180%;
}

#faq {
  margin: 0;
  padding: 16pt 0 0;
  border-top: .5pt solid;
}

#faq dd {
  border-bottom: .5pt solid;
  margin: 0 0 16pt;
  padding: 0 0 8pt;
}

#faq dt {
  float: none;
  margin: 0 0 4pt;
  padding: 0;
}

#faq dt a {
  font-weight: bold;
}

/*****************************
12.0 footer (siteInfo)
*****************************/
.siteInfo {
  margin: 16pt 0 0;
  padding: 4pt 0 0;
  border-top: 3pt double;
}

.c-footer {
  padding: 0;
}

.c-footer > .row {
  min-height: 0;
}
