/* ==========================================================================
 Media Queries
 ========================================================================== */
@media only screen and (max-width: 1200px) {
  header#page-header .wrap {
    padding: 0 3em; }

  .news-item-wrap .news-item-link {
    width: 100%;
    max-width: calc(100% - 60px); }

  .news-wrap {
    width: 87%;
    margin: auto; } }

@media only screen and (max-width: 1100px) {
  #hauptnavigation {
    width: auto; }
    #hauptnavigation ul li {
      margin: 0 15px 0 0; }

  header#page-header #nav-right {
    position: absolute;
    right: 0;
    top: -32px; } }

@media only screen and (max-width: 1000px) {
  /* Header-Bereich linearisieren */
  /* Layout */
  /* Hauptnavigation */
  /* Subnavigation */
    body.home #corporate-header h1, body.uebersicht #corporate-header h1 {
      min-height: 4.839em; }
    #logo, #page-header #logo-text, #hauptnavigation, #hauptnavigation ul {
      float: left;
      display: block;
      width: 100%; }
    #logo {
      margin-bottom: 4em; }
    #content {
      width: 62%;
      margin: 0 7% 0 0; }
    #teaser {
      width: 31%;
      margin: 0; }
    .no-teaser #content {
      width: 100%;
      margin: 0; }
    #page-body {
      margin-top: 120px; }
    #subnavigation {
      float: none;
      width: 100%;
      margin: 0 0 4em 0; }
    #content-middle {
      padding: 0; }
    .home #page-body {
      margin-top: calc(4.2em + 120px); }
    #hauptnavigation {
      width: auto; }
    #hauptnavigation ul {
      text-align: left;
      float: none;
      margin: 0;
      padding: 0 0 0.4em; }
    #hauptnavigation ul li {
      margin: 0;
      font-size: 1.2em; }
    #hauptnavigation ul li:after {
      content: ""; }
    #subnavigation {
      min-height: 0;
      border-left: 3em solid #ebebeb;
      border-right: 3em solid #ebebeb;
      position: relative;
      left: -3em; }
    #subnavigation ul {
      overflow: hidden;
      background-color: #ebebeb;
      padding: 1em 0; }
    #subnavigation ul li, #subnavigation ul li:last-child {
      float: left;
      border: none;
      text-align: left;
      border: none; }
    #subnavigation ul li a {
      font-size: 1.2em;
      line-height: 1.6em;
      padding: 0 2.27em 0 0;
      margin: 0.55em 0;
      border-left: none; }
    #hauptnavigation ul li a:hover, #hauptnavigation ul li.cur a, #hauptnavigation ul li.act a, #subnavigation ul li a:hover, #subnavigation ul li.cur a, #subnavigation ul li.act a {
      color: #952742;
      text-decoration: none; }
    #hauptnavigation ul li.cur a, #hauptnavigation ul li.act a, #subnavigation ul li.cur a, #subnavigation ul li.act a {
      font-family: NeuzeitSLTStd-BookHeavy; }
    body.ueberund.team #content p {
      max-width: 40em; } }

@media only screen and (max-width: 900px) {
  /* Typographie */
  /* Zeige nicht alle Logos auf Home */
  /* Provisorischer Patch mq.es [begin] */
  /* Provisorischer Patch mq.es [end] */
    h1.csc-firstHeader {
      top: 0; }
    h1 {
      font-size: 3.2em; }
    h2 {
      font-size: 2.2em;
      line-height: 1.45em; }
    h3 {
      font-size: 1.5em; }
    p, li, td, input {
      font-size: 1.5em; }
    .news-wrap .news .news-item-wrap .news-item .news-item-content p {
      line-height: 1.6em; }
    #teaser li, #teaser p {
      font-size: 1.5em; }
    .home #content-top .col .uebersicht-textblock p {
      font-size: 1.5em; }
    .uebersicht-textblock p {
      font-size: 1.5em; }
    .box h3, .box h2 {
      font-size: 2.2em; }
    .box > .testimonial {
      padding: 0em; }
    .teaser-unternehmen-logos h3 {
      font-size: 1.2em; }
    .corporate-header .col-left p {
      margin-top: 2em;
      font-size: 1.4em; }
    .corporate-header .col-left h1 {
      font-size: 3.2em; }
    .home .uebersicht-textblock .header, .uebersicht-textblock .header {
      font-size: 3.2em; }
    body.home .corporate-header .col-left .header {
      font-size: 3.2em; }
    .unternehmen-logos .unternehmen-logo:nth-child(5), .unternehmen-logos .unternehmen-logo:nth-child(6) {
      display: none; }
    body.home .corporate-header .col-right {
      overflow: hidden; }
    body.home .corporate-header .col-right img {
      position: relative;
      left: -100px; } }

@media only screen and (max-width: 1000px) {
  /* Searchbox */
  /* Footer muss nicht mehr Sticky sein (Annahme: Genung Inhalt vorhanden um den Viewport auszufüllen) */
    .home #page-body {
      margin-top: 5em; }
    .indexedsearchbox input.searchbox-sword {
      font-size: 1.4em;
      line-height: 1.5em;
      -moz-border-radius: 3px;
      -webkit-border-radius: 3px;
      border-radius: 3px;
      padding: 0 2.5em 0 0.2em;
      width: 10em; }
    #footer .indexedsearchbox input.searchbox-button {
      right: -2.5em; }
    header#page-header #hauptnavigation {
      display: none; }
    #mobile-toggle, #mobile-navi {
      display: none; }
    #footer, #footer-bottom-wrapper {
      clear: both;
      width: 100%;
      height: auto;
      position: relative;
      bottom: auto; }
    #page-body {
      padding: 0;
      /* Da kein Sticky Footer mehr, braucht es keinen padding-bottom mehr. */ }
    #footer #footer-top #kontakt, #footer #footer-top #sitemap {
      float: none;
      clear: both;
      width: 100%;
      margin: 0; }
    #footer #footer-top #kontakt {
      margin-bottom: 4em; }
    #footer #footer-top #kontakt table {
      width: 52%; }
    #footer #footer-top #sitemap .sitemap-block {
      margin-bottom: 2em; }
    #kontakt h2, #kontakt h3, #sitemap h2, #sitemap h3 {
      font-size: 1.2em; }
    #kontakt p, #sitemap ul li {
      font-size: 1.2em; }
    #footer-bottom #copyright {
      width: auto;
      text-align: left; }
    #footer-bottom #fusszeilennavigation {
      width: auto;
      text-align: left;
      float: left; } }

@media only screen and (max-width: 1000px) {
  /* Unnötige Elemente ausblenden */
  /* Nur-Mobile-Elemente einblenden */
  /* Search einblenden */
  /* Topline schmaler */
  /* Mobile Navigation Toggle */
  /* Mobile Navigation Pane */
  /* Reset für die 2. Ebene: Link der gerade ausgewählten Seite */
  /* Topline und Logo */
  /* Ausnahme: Search */
  /* Reset */
  /* Layout */
  /*
   * Übersichtsseiten können im Bereich #corporate-header ein anderes Element als ein .corporate-header aufweisen. Zwei Fälle:
   *
   * Im Fall eines .corporate-header Element (FCE) soll der Abstand nach oben (margin-top) null betragen (direkt nach der Subnavigation)
   * Im Fall eines anderen Elementes soll der Standard-Abstand zwischen Navigation und Inhalt vorhanden sein.
   *
   */
  /* Ausnahmen */
  /* Home */
  /* Corporate Header */
  /* Teaser Unternehmen Logos auf Home: Nur die ersten drei anzeigen */
  /* Textblock auf Übersichtsseiten */
  /* Footer */
  /* Columns auflösen */
  /* Linearisierung von Tabellen im Content-Bereich */
  /* Ausnahme: Suchtabelle von indexed_search */
  /* FCE ausgezeichnete Organisationen */
  /* FCE Veranstaltungen */
    .box {
      padding: 1.8em 1.5em; }
    #kontakt p, #sitemap ul li {
      font-size: 1.5em; }
    #kontakt h2, #kontakt h3, #sitemap h2, #sitemap h3 {
      font-size: 1.4em; }
    #topline .indexedsearchbox, header#page-header #hauptnavigation, #subnavigation, .home .corporate-header .sticker, .ueberund .corporate-header .sticker, .unternehmen .corporate-header .sticker, .privatpersonen .corporate-header .sticker, .corporate-header .sticker, .home .corporate-header .col-right, .corporate-header .col-right {
      display: none; }
    #mobile-toggle {
      display: block; }
    #hauptnavigation ul li#page-44 {
      display: block; }
    #topline {
      height: 4.5em; }
    #topline #home-button a {
      line-height: 2.75em; }
    #sprachnavigation ul li {
      font-size: 1.2em; }
    #mobile-toggle {
      cursor: pointer;
      float: right;
      width: 4em;
      height: 4.5em;
      position: relative;
      right: 0;
      top: 16px;
      background-image: url(../../fileadmin/_css/img/icons/Navi-Icon-black.png);
      background-position: center center;
      background-repeat: no-repeat;
      background-size: 1.4em 1.2em;
      box-sizing: border-box;
      margin-left: 25px; }
    #mobile-toggle.open {
      background-image: url(../../fileadmin/_css/img/icons/Close-Icon-black.png);
      background-size: 1.4em 1.4em; }
    #mobile-navi {
      background-color: #e4eaea;
      border-bottom: 1px solid #000;
      position: absolute;
      left: 0;
      margin-top: 9px;
      width: 100%; }
    #mobile-navi ul {
      list-style: none;
      margin: 0;
      padding: 0; }
    #mobile-navi > ul {
      padding: 0;
      margin: 0; }
    #mobile-navi ul ul {
      display: none;
      /* Toggle */ }
    #mobile-navi li {
      line-height: 3em;
      color: #000;
      padding: 0;
      font-size: 1.5em;
      text-align: left; }
    #mobile-navi li .link-wrap {
      margin: 0 1.3em; }
    #mobile-navi li:hover, #mobile-navi li.open {
      cursor: pointer; }
    #mobile-navi li .link-wrap:before {
      content: "+\0000a0";
      width: 1em;
      display: inline-block; }
    #mobile-navi li.open .link-wrap:before {
      content: "-\0000a0"; }
    #mobile-navi li.open li.cur .link-wrap {
      line-height: 3em;
      text-decoration: underline; }
    #mobile-navi li.open li.cur .link-wrap:before {
      content: ">\0000a0\0000a0";
      display: inline-block;
      width: auto; }
    #mobile-navi li.open ul li {
      background-color: #fff; }
    #page-header {
      margin-top: 2.5em; }
    .topline-wrapper-inner {
      overflow: hidden;
      padding: 0 1.5em 0 0; }
    header#page-header {
      height: 90px;
      padding: 0; }
    header#page-header #nav-right {
      position: relative;
      top: 4px; }
    header#page-header #nav-right .indexedsearchbox form.indexedsearch input.searchbox-button {
      top: 0.7em; }
    header#page-header.search-active #nav-right form.indexedsearch input.searchbox-sword {
      width: 10em; }
    #logo {
      margin-bottom: 5em;
      position: relative;
      left: 0;
      width: 60px !important; }
    #page-header #logo-img {
      width: 6em;
      height: 6em; }
    #page-header #logo-text {
      left: 9.75em;
      bottom: 0.7em;
      font-size: 1.2em;
      line-height: 1.3em;
      width: auto; }
    body.uebersicht #corporate-header h1, #corporate-header h1 {
      font-size: 2.4em;
      padding-bottom: 2em; }
    body.home #corporate-header h1 {
      padding: 0.65em 0.65em;
      font-size: 2.4em; }
    #corporate-header p.leadin {
      margin: 0 0.65em;
      font-size: 1.8em; }
    .home .uebersicht-textblock .header, .uebersicht-textblock .header {
      font-size: 2.4em;
      padding-bottom: 0.2em; }
    #teaser > .box {
      margin-bottom: 0; }
    body.uebersicht #content-middle {
      margin-top: 5em; }
    #mobile-navi li#page-44 .link-wrap {
      display: block; }
    #mobile-navi li#page-44 .link-wrap:before {
      content: ">\0000a0"; }
    #mobile-navi li#page-44 a {
      display: inline-block;
      width: 90%; }
    #mobile-navi li#page-44 a:before {
      content: ""; }
    #mobile-navi li li {
      font-size: 1em;
      line-height: 2em;
      border-bottom: 1px solid #d3d3d3; }
    #mobile-navi li li .link-wrap:before {
      content: '';
      display: block;
      width: 100%; }
    #mobile-navi a {
      padding: 0;
      color: #000;
      text-decoration: none;
      display: block;
      line-height: 2em; }
    #mobile-navi a:before {
      content: ">\0000a0\0000a0";
      line-height: 3em; }
    #mobile-navi li li a {
      padding: 0 1.3em; }
    #page-header {
      padding: 0; }
    #content, .no-teaser #content, #teaser {
      clear: both;
      width: 100%;
      float: none;
      padding: 0;
      margin: 0;
      display: block; }
    #content {
      margin-top: 0;
      margin-bottom: 3em; }
    body.ueberund.team #content #corporate-header > * {
      margin-left: 1.5em;
      margin-right: 1.5em; }
    .no-teaser #content > .csc-default > * {
      margin-top: 2em; }
    .no-teaser #content #corporate-header > .csc-default > .corporate-header {
      margin-top: 0em; }
    #content-middle {
      margin-top: 2.5em; }
    #page-wrapper {
      padding: 0 3em; }
    .home #content-top {
      margin-bottom: 2em; }
    .home #content-middle {
      margin-bottom: 2.5em; }
    .home #content-top, .home #content-bottom {
      padding: 0 1.5em; }
    #content > *, .no-teaser #content > * {
      /* Alles einrücken */
      margin-left: 1.5em;
      margin-right: 1.5em; }
    #content #corporate-header {
      margin-left: -1.5em;
      margin-right: -1.5em; }
    body.home #corporate-header {
      margin-left: 0.5em;
      margin-right: 0.5em; }
    #content #corporate-header .csc-default .corporate-header {
      margin-left: 0;
      margin-right: 0; }
    .home .corporate-header .col-left, .home #content-top .col-left, .home #content-top .col-middle, .home #content-top .col-right, .home #content-middle .col-left, .home #content-middle .col-right {
      float: none;
      clear: both;
      display: block;
      margin: 0;
      width: 100%; }
    .home #content-middle .col-left, .home #content-middle .col-right {
      margin-bottom: 3px; }
    #corporate-header {
      margin-top: 0 !important;
      margin-bottom: 0 !important; }
    .corporate-header {
      padding: 0.5em 0 0; }
    body.home .corporate-header {
      padding: 0.5em 0 3em; }
    body.uebersicht #corporate-header h1, #corporate-header h1 {
      min-height: 0;
      padding-bottom: 0.85em;
      padding-top: 0.85em; }
    .home .corporate-header .col-left p, .corporate-header .col-left p {
      margin: 0 2.5em 1.5em 1.25em;
      font-size: 1.2em; }
    body.home .corporate-header .col-left .header, .corporate-header .col-left h1 {
      font-size: 3.2em;
      margin: 0 1em 0 0.47em; }
    .unternehmen-logos .unternehmen-logo {
      display: block;
      margin: 0 0 2.5em; }
    .unternehmen-logos .unternehmen-logo:nth-child(4), .unternehmen-logos .unternehmen-logo:nth-child(5), .unternehmen-logos .unternehmen-logo:nth-child(6) {
      display: none; }
    .uebersicht-textblock {
      margin-bottom: 5em; }
    h1 {
      font-size: 2.4em; }
    .box h2.csc-firstHeader, .box h2:first-child, .box h3.csc-firstHeader, .box h3:first-child {
      margin-top: 0.8em; }
    #footer-top {
      margin-top: 0;
      padding: 0 1.5em; }
    #kontakt #logo-footer {
      margin-top: 4em; }
    #footer #footer-top #kontakt table {
      width: 100%; }
    #footer #footer-top #kontakt {
      float: none;
      clear: both;
      display: block;
      margin: 0;
      width: 100%; }
    .topline-wrapper-inner, #footer-top, #footer-bottom {
      padding: 0 1.5em; }
    #footer-top {
      padding-top: 1em;
      padding-bottom: 1em; }
    #footer #sitemap {
      display: none; }
    .team #content-middle .col-left, .team #content-middle .col-right, .cols-2 .col-left, .cols-2 .col-left, .cols-2 .col-right, .cols-3 .col-left, .cols-3 .col-middle, .cols-3 .col-right {
      margin: 0%;
      width: 100%;
      float: none; }
    #content table thead {
      display: none; }
    #content table tr td, #content table tr:first-child td, #content table tr:last-child td {
      display: block;
      width: 100%;
      border: none;
      text-align: left !important;
      padding-left: 0;
      padding-right: 0; }
    #content table td > * {
      margin-left: 1em;
      margin-right: 1em; }
    #content table tr td:nth-child(odd) {
      background-color: #f6f6f6; }
    #content table tr td:nth-child(even) {
      background-color: #fff; }
    #content table tr td:last-child {
      border-bottom: 2px solid #bfbfbf; }
    .linear-case-label {
      display: block;
      font-weight: normal;
      font-family: NeuzeitSLTStd-BookHeavy; }
    #content .tx-indexedsearch table tr td {
      background-color: transparent;
      border: none; }
    #content .tx-indexedsearch table tr td > * {
      margin-left: 0; }
    .fce-organisationen-mit-praedikat td {
      padding: 1.5em 0; }
    .fce-organisationen-mit-praedikat td > * {
      margin-left: 1em;
      margin-right: 1em; }
    .fce-organisationen-mit-praedikat .logo {
      padding-top: 1.5em;
      vertical-align: middle; }
    .fce-organisationen-mit-praedikat .erstverleihung .linear-case-label, .fce-organisationen-mit-praedikat .zuletzt .linear-case-label {
      display: inline-block;
      width: 8em; }
    .fce-veranstaltungen td {
      padding: 1.5em 0; }
    .frame-160 .ce-gallery, .frame-160 .ce-bodytext {
      float: none;
      width: 100%;
      margin-right: 0; }
    .frame-160 .ce-bodytext {
      margin-top: 20px; }
    #footer-top .footermenu {
      display: none; }
    #teaser {
      margin-bottom: 30px; }
    .frame-160 .ce-bodytext p {
      font-size: 1.5em; }
    .slick-prev, .slick-next {
      display: none !important; }
    .news-item-isaward {
      display: none; }
    .news-wrap {
      width: 100%; }
    .news-wrap .news .news-item-wrap .news-item .news-item-link {
      max-width: calc(90% - 30px); }
    .news-wrap .news .news-item-wrap .news-item .news-item-content p {
      font-size: 1.5em; }
    #content > *, .no-teaser #content > * {
      margin-left: 0 !important;
      margin-right: 0 !important; }
    header#page-header #logo, header#page-header #logo div {
      margin-top: 2px;
      vertical-align: inherit; }
    #sprachnavigation ul li.no-translation span, #sprachnavigation ul li.act span, #sprachnavigation ul li a {
      top: auto; }
    #content-middle {
      margin-bottom: 30px; } }

@media print, (-o-min-device-pixel-ratio: 1.25), (-webkit-min-device-pixel-ratio: 1.25), (min-resolution: 120dpi) {
  /* Style adjustments for high resolution devices */ }
/* ==========================================================================
 Print styles.
 Inlined to avoid required HTTP connection: h5bp.com/r
 ========================================================================== */
@media print {
  /*
   * Don't show links for images, or javascript/internal links
   */
    * {
      background: transparent !important;
      color: #000 !important;
      /* Black prints faster: h5bp.com/s */
      box-shadow: none !important;
      text-shadow: none !important; }
    a, a:visited {
      text-decoration: underline; }
    a[href]:after {
      /*content: " (" attr(href) ")";*/ }
    abbr[title]:after {
      /*content: " (" attr(title) ")";*/ }
    .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
      content: ""; }
    pre, blockquote {
      border: 1px solid #999;
      page-break-inside: avoid; }
    thead {
      display: table-header-group;
      /* h5bp.com/t */ }
    tr, img {
      page-break-inside: avoid; }
    img {
      max-width: 100% !important; }
    @page {
      margin: 0.5cm; }
    p, h2, h3 {
      orphans: 3;
      widows: 3; }
    h2, h3 {
      page-break-after: avoid; }
    body {
      font-size: 50%; }
    #topline, #hauptnavigation, #subnavigation, #fusszeilennavigation, #sitemap {
      display: none; }
    #logo {
      float: none;
      width: 100%; }
    #page-header #logo-img {
      left: 0; }
    #page-header #logo-img {
      max-width: 264px;
      max-width: 264px; }
    #page-header #logo-img img {
      max-width: 100%; }
    #page-header #logo-text {
      display: block;
      width: 100%; }
    #page-body {
      margin-top: 3.5em;
      margin-left: 0;
      margin-bottom: 0;
      padding-bottom: 0; }
    #content {
      width: 60%;
      margin-left: 0; }
    #teaser {
      width: 37%;
      margin-left: 3%; }
    #footer {
      height: auto;
      position: relative;
      top: 0; }
    #footer-top {
      margin-top: 0; }
    #kontakt {
      float: none;
      width: 50%;
      margin: 0; }
    #footer-bottom-wrapper {
      width: 100%;
      height: auto;
      position: relative;
      top: 0;
      border-top: none; }
    #footer-bottom #copyright {
      float: none;
      width: 100%;
      text-align: left; }
    #footer-bottom #copyright p:after {
      content: ""; }
    .corporate-header .col-left {
      float: none;
      width: 100%; }
    .corporate-header .col-right {
      display: none; }
    .corporate-header .col-left p {
      margin: 2em 0 1em 0; }
    .corporate-header .col-left h1 {
      margin: 0 0 0.5em 0; }
    #content-middle {
      padding: 0;
      margin-top: 2em; }
    .no-teaser #content {
      width: 100%;
      margin: 0; }
    .home .corporate-header .col-left p {
      margin-left: 0; }
    body.home .corporate-header .col-left .header {
      margin: 0;
      line-height: 1.3em; }
    .home .uebersicht-textblock .header {
      font-size: 3.8em; } }
/* _migrated_ responsive end */
