/*
Theme Name: Blank Theme
Theme URI: 
Author: ecom Webservices
Author URI: 
Description: A blank Wordpress Theme
Tags: html5,css3,blank
Version: 1.3.4
*/

/*group basics*/
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  outline: none !important;
}

/*html{
    overflow: hidden;
    height: 100%;    
} */

body {
  font-family: "open_sansregular", sans-serif;
  font-size: 16px;
  line-height: 1.375em;
  color: #5a696f;
  overflow: auto;
  height: 100%;
}

.social-bar {
  text-align: right;
  margin: 20px 0;
  target: "_blank";
  text-decoration: none;
}

.social-bar-mobile {
  display: none;
  text-align: right;
}

@media (max-width: 1199.5px) {
  .social-bar-mobile {
    display: inline-block;
  }
}

.outer-wrapper {
  min-height: 100vh;
}

.wrapper {
  overflow: hidden;
  height: auto;
  max-width: 100%;
  background-color: #fff;
}

.mm-page {
  background-color: #fff !important;
}

.container {
  max-width: 1500px;
  margin-left: auto;
  margin-right: auto;
}

.button,
.filter-title,
h1,
h2,
h3,
h4 {
  text-transform: uppercase;
  font-weight: 400;
}

.text .inner h1,
.text .inner h2,
.text .inner h3,
.text .inner h4 {
  margin-bottom: 20px;
}

h1,
h2,
.filter-title,
.button {
  font-size: 1.75em;
  line-height: 1.071428571428571em;
}

.bottom-h1 {
  background-color: #4ca1d1;
  color: #fff;
  text-align: center;
  padding: 15px 15px 12px;
  margin-top: 50px;
  margin-bottom: -20px;
}

h3 {
  font-size: 1.25em;
  line-height: 1.375em;
}

h4 {
  font-size: 1.15em;
  line-height: 1.375em;
}

a {
  color: #5a696f;
  text-decoration: none;
  -webkit-transition: color 0.25s ease;
  -o-transition: color 0.25s ease;
  transition: color 0.25s ease;
}

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

.alignright {
  float: right;
  margin-bottom: 20px;
  margin-left: 20px;
}

.alignleft {
  float: left;
  margin-bottom: 20px;
  margin-right: 20px;
}

strong {
  font-family: "open_sansbold";
}

i {
  font-family: "open_sansitalic";
}
/*end basics*/

/*group header*/
#header-wrapper {
  /*padding: 20px 0;*/
  position: fixed;
  background-color: #fff;
  width: 100%;
  z-index: 999;
}

.sub-menu,
#main-navigation,
.logo {
  -webkit-transition: all 0.25s linear;
  -o-transition: all 0.25s linear;
  transition: all 0.25s linear;
}

.logo {
  display: inline-block;
  padding-top: 22px;
  padding-bottom: 17px;
}

.scroll .logo {
  padding-top: 10px;
  padding-bottom: 10px;
}

.logo-zusatz {
  margin-left: 10px;
  position: relative;
  top: 5px;
  -webkit-transition: opacity 0.25s ease;
  -o-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.scroll .logo-zusatz {
  display: none;
}

.searchbox {
  top: -100px;
  position: absolute;
  right: calc(50% - 807px);
  transition: all 200ms linear;
}

.searchbox.active {
  top: 4.5rem;
}

.scroll .searchbox.active {
  top: 5.7rem;
}

.gg-search {
  box-sizing: border-box;
  position: relative;
  display: block;
  transform: scale(var(--ggs, 1));
  width: 16px;
  height: 16px;
  border: 2px solid;
  border-radius: 100%;
  margin-left: -4px;
  margin-top: -4px;
  right: calc(50% - 800px);
  position: absolute;
  top: 50px;
  cursor: pointer;
  transition: all 200ms linear;
}

div#header-wrapper.scroll .gg-search {
  top: 40px;
}

.gg-search::after {
  content: "";
  display: block;
  box-sizing: border-box;
  position: absolute;
  border-radius: 3px;
  width: 2px;
  height: 8px;
  background: currentColor;
  transform: rotate(-45deg);
  top: 10px;
  left: 12px;
}

.gg-search:hover {
  color: #4ca1d1;
}

.gg-search:hover::after {
  background-color: #4ca1d1;
}

form#searchform {
  width: 100%;
  border: 1px solid #4ca1d1;
}

form#searchform > div {
  display: flex;
}

form#searchform input[type="text"] {
  width: calc(100% - 250px);
  padding: 1rem;
}

form#searchform input[type="submit"] {
  width: 250px;
  padding: 1rem;
  cursor: pointer;
  transition: all 200ms linear;
  background-color: #4ca1d1;
  color: #fff;
}

form#searchform input[type="submit"]:hover {
  background-color: #3498db; /* Adding a proper hover color */
}

section.searchresult.bggrey.dynamic-item {
  min-height: calc(100vh - 220px);
}

h2.search-title {
}

.result-row {
  width: 100%;
  margin: 1rem 0 0rem 0;
  align-items: center;
}

a.result-link {
  display: flex;
  align-items: center;
  width: 100%;
  background-color: #fff;
  transition: all 200ms linear;
}

a.result-link:hover {
  background-color: #dbdbdb;
}

.search-row {
  margin: 2rem 0;
}

.search-row .no-image {
  padding-bottom: 100%;
}

.search-row .no-image.idn_fachbereich {
  background-color: #81b764;
}

h2.search-title {
  text-transform: none;
}

.result-row .col-lg-2 {
  padding-left: 0;
}

.result-row img {
  display: block;
}

/*end header*/

/*group main-navigation*/
#main-navigation {
  display: inline-block;
  float: right;
  padding-top: 45px;
}

.scroll #main-navigation {
  padding-top: 35px;
}

#footer-wrapper a,
#main-navigation a {
  color: #5a696f;
  text-decoration: none;
  text-transform: uppercase;
}

#main-navigation a {
  padding-bottom: 42px;
  border: none;
  outline: none;
}

#main-navigation .current-menu-ancestor > a,
.single-idn_projekte #menu-item-169 > a,
.single-idn_fachbereich #menu-item-166 > a,
#main-navigation .current-menu-item > a,
#footer-wrapper li:hover > a,
#main-navigation li:hover > a {
  color: rgb(0, 121, 191);
}

.mm-menu {
  background-color: rgb(232, 236, 238);
}

.mm-menu:before {
  content: "";
  position: absolute;
  left: 0;
  box-shadow: 30px 0 11px -28px rgba(0, 0, 0, 0.4) inset;
  height: 100%;
  width: 20px;
  z-index: 999;
  pointer-events: none;
}
/*end main-navigation*/

/*group content*/
#main-wrapper {
  padding-top: 110px;
}

.dynamic-item {
  padding: 70px 0;
}

.bgblue {
  background-image: url(img/backgrounds/blue_bg.jpg);
  background-repeat: no-repeat;
  background-attachment: fixed;
  -webkit-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
  background-color: #4ca1d1;
}

.bgblue .title {
  color: #4ca1d1;
}

.bggrey {
  background: url(img/backgrounds/grey_bg.jpg) fixed no-repeat center center;
  -webkit-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
}

.bggreen {
  background: url(img/backgrounds/green_bg.jpg) fixed no-repeat center center;
  -webkit-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
}

.dynamic-item .title {
  text-align: center;
  padding: 15px 15px 12px;
  margin-bottom: 16px;
}

.title a {
  display: block;
}

.no-results {
  background-color: #fff;
}

.no-results .inner {
  padding: 40px 40px 20px;
}

.bgblue .title {
  background-color: #fff;
}
.bggrey .filter-title,
.bgblue .filter-title {
  color: #4ca1d1;
}
.bggrey .title {
  background-color: #4ca1d1;
  color: #fff;
}

.page-template-page_fachbereiche .bggrey .title,
.bggreen .filter-title,
.bggreen .title {
  color: #81b764;
  background-color: #fff;
}

.bgblue a {
  color: #4ca1d1;
}

.bggrey.dynamic-text a {
  color: #fff;
}

.bggreen .row > div .inner,
.bgblue .row > div .inner {
  background-color: #fff;
}

.dynamic-item.bggrey .row > div .inner {
  background-color: #4ca1d1;
  color: #fff;
}

.dynamic-video.dynamic-text.bggrey .row > div .inner {
  background-color: inherit;
  color: #fff;
}

.dynamic-item.bggrey .project-wrapper .project-filter .inner {
  background-color: transparent;
}

.dynamic-item.content-slider .row > div .inner {
  background-color: transparent;
}

.dynamic-item .row > div.img {
  line-height: 0;
}

.dynamic-item .row > div.img a {
  display: block;
}

.dynamic-item .row > div.img img {
  width: 100%;
  height: auto;
}

.bgblue .row > div.text.col-lg-8 .inner {
  padding: 40px 6%;
}

.bgblue .row > div.text.col-lg-12 .inner {
  padding: 40px;
}

.bgblue .row > div.text.col-lg-3 .inner,
.bgblue .row > div.text.col-lg-4 .inner {
  padding: 20px 20px;
}

.dynamic-item .row > div > .inner {
  /*height: 100%;*/
  width: 100%;
  position: relative;
}

.dynamic-item.team-images {
  padding-top: 0;
  padding-bottom: 0;
}

.dynamic-item.team-images .team-wrapper {
  padding-bottom: 0;
  background-color: #e1e2e5;
}

.dynamic-item.team-images .team-wrapper .row {
  margin-bottom: -20px;
  display: flex;
  flex-wrap: wrap;
  gap: 1px; /* 1px gap between all items */
  margin-left: -8px;
  margin-right: -8px;
  overflow: hidden;
}

.dynamic-item.team-images .item {
  width: calc((100% - (18 * 1px)) / 19); /* same width calc */
  aspect-ratio: 731 / 1024;
  overflow: hidden;
  margin-bottom: 20px;
}

.dynamic-item.team-images .item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 10%; /* center horizontally, 10% from top vertically */
}

.dynamic-item.team-images .placeholder {
  width: calc(((100% - (18 * 1px)) / 19) / 2); /* same width calc */
  aspect-ratio: 731 / 1024;
  background-color: #e1e2e5;
}

@media screen and (max-width: 600px) {
  .dynamic-item.team-images .item {
    width: calc((100% - (8 * 1px)) / 9);
    aspect-ratio: 731 / 1024;
  }
  .dynamic-item.team-images .placeholder {
    width: calc(((100% - (8 * 1px)) / 9) / 2);
    aspect-ratio: 731 / 1024;
    display: none;
  }
}

#main ul,
#main ol,
#main p,
.page-teaser p {
  margin-bottom: 20px;
}

.row {
  margin-bottom: -16px;
}

.col-lg-3,
.col-lg-4,
.col-lg-6,
.col-lg-8,
.col-lg-9,
.col-lg-12 {
  margin-bottom: 16px;
}

#main-content {
  padding: 70px 0;
}
#main-content.rb-padding {
  padding: 70px 0 38px;
}

#main-content article .inner {
  background-color: #fff;
  padding: 40px 5%;
  width: 100%;
  position: relative;
}

.link {
  margin-bottom: 0;
  padding-bottom: 16px;
  text-align: center;
}

.link a {
  min-height: 194px;
  /*min-height: 177px;*/
  display: block;
  padding: 20px 10px 0;
  text-transform: uppercase;
  text-decoration: none;
  width: 100%;

  background-repeat: no-repeat;

  background-position: center -webkit-calc(50% + 18px);
  background-position: center -moz-calc(50% + 18px);
  background-position: center -ms-calc(50% + 18px);
  background-position: center -o-calc(50% + 18px);
  background-position: center calc(50% + 18px);

  -webkit-background-size: 70px auto;
  background-size: 70px auto;
  -webkit-overflow-wrap: break-word;
  -moz-overflow-wrap: break-word;
  -ms-overflow-wrap: break-word;
  -o-overflow-wrap: break-word;
  overflow-wrap: break-word;

  -moz-hyphens: auto;
  -o-hyphens: auto;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;

  -webkit-transition: background-color 0.25s linear;
  -o-transition: background-color 0.25s linear;
  -moz-transition: background-color 0.25s linear;
  -ms-transition: background-color 0.25s linear;
  -o-transition: background-color 0.25s linear;
  transition: background-color 0.25s linear;
}

.bggrey .link a {
  color: #fff;
  background-color: #81b764;
}
.bggrey .link a:hover {
  background-color: #fff;
  color: #81b764;
}

.link-129 a {
  background-image: url(img/items/arbeiten_bei_idn_icon.svg);
}

.link-129 a:hover {
  background-image: url(img/items/arbeiten_bei_idn_icon_hover.svg);
}

.link-1217 a {
  background-image: url(img/items/historie_icon.svg);
}
.link-1217 a:hover {
  background-image: url(img/items/historie_icon_hover.svg);
}

.link-126 a {
  background-image: url(img/items/bewerbung_icon.svg);
}
.link-126 a:hover {
  background-image: url(img/items/bewerbung_icon_hover.svg);
}

.link-135 a {
  background-image: url(img/items/philosophie_icon.svg);
}
.link-135 a:hover {
  background-image: url(img/items/philosophie_icon_hover.svg);
}

.link-119 a {
  background-image: url(img/items/qualifikationen_icon.svg);
}

.link-119 a:hover {
  background-image: url(img/items/qualifikationen_icon_hover.svg);
}

.link-1889 a {
  background-image: url(img/items/stellenausschreibung_icon.svg);
}
.link-1889 a:hover {
  background-image: url(img/items/stellenausschreibung_icon_hover.svg);
}

/* TEAM */

.link-12217 a {
  background-image: url(img/items/team_icon.svg);
}

.link-12217 a:hover {
  background-image: url(img/items/team_icon_hover.svg);
}

.page-template-page_fachbereiche .link a,
#main-content .link a {
  background-repeat: no-repeat;

  background-position: center -webkit-calc(50% + 18px);
  background-position: center -moz-calc(50% + 18px);
  background-position: center -ms-calc(50% + 18px);
  background-position: center -o-calc(50% + 18px);
  background-position: center calc(50% + 18px);

  -ms-background-size: 85px auto;
  -moz-background-size: 85px auto;
  -o-background-size: 85px auto;
  -webkit-background-size: 85px auto;
  background-size: 85px auto;
}

/*.page-template-page_fachbereiche .link a {
	color: #fff;
	background-color: #0079bf;
}
.page-template-page_fachbereiche .link a:hover {
	background-color: #fff;
	color: #0079bf;	
}*/

.link-241 a {
  background-image: url(img/items/Icons_Fachbereiche-01.svg);
}
/*.page-template-page_fachbereiche .link-241 a:hover {
	background-image: url(img/items/Icons_Fachbereiche-01_blue.svg);
}*/
.link-241 a:hover {
  background-image: url(img/items/Icons_Fachbereiche-01_green.svg);
}

.link-148 a {
  background-image: url(img/items/Icons_Fachbereiche-02.svg);
}
/*.page-template-page_fachbereiche .link-148 a:hover {
	background-image: url(img/items/Icons_Fachbereiche-02_blue.svg);
}*/
.link-148 a:hover {
  background-image: url(img/items/Icons_Fachbereiche-02_green.svg);
}

.link-243 a {
  background-image: url(img/items/Icons_Fachbereiche-03.svg);
}

/*.page-template-page_fachbereiche .link-243 a:hover {
	background-image: url(img/items/Icons_Fachbereiche-03_blue.svg);
}*/

.link-243 a:hover {
  background-image: url(img/items/Icons_Fachbereiche-03_green.svg);
}

.link-245 a {
  background-image: url(img/items/Icons_Fachbereiche-04.svg);
}

/*.page-template-page_fachbereiche .link-245 a:hover {
	background-image: url(img/items/Icons_Fachbereiche-04_blue.svg);
}*/

.link-245 a:hover {
  background-image: url(img/items/Icons_Fachbereiche-04_green.svg);
}

.link-200 a {
  background-image: url(img/items/Icons_Fachbereiche-05.svg);
}

/*.page-template-page_fachbereiche .link-200 a:hover {
	background-image: url(img/items/Icons_Fachbereiche-05_blue.svg);
}*/

.link-200 a:hover {
  background-image: url(img/items/Icons_Fachbereiche-05_green.svg);
}

.link-155 a {
  background-image: url(img/items/Icons_Fachbereiche-07.svg);
}

.link-155 a:hover {
  background-image: url(img/items/Icons_Fachbereiche-07_green.svg);
}

.link-197 a {
  background-image: url(img/items/Icons_Fachbereiche-06.svg);
}

/*.page-template-page_fachbereiche .link-197 a:hover {
	background-image: url(img/items/Icons_Fachbereiche-06_blue.svg);
}
*/
.link-197 a:hover {
  background-image: url(img/items/Icons_Fachbereiche-06_green.svg);
}

.link-3238 a {
  background-image: url(img/items/Icons_Fachbereiche-07.svg);
  background-position: center calc(50% + 33px);
}

.page-template-page_fachbereiche .link-3238 a,
.page-template-page_projekte #main-content .link-3238 a {
  background-position: center calc(50% + 33px);
}

.link-3238 a:hover {
  background-image: url(img/items/Icons_Fachbereiche-07_green.svg);
}

/*.page-template-page_fachbereiche .link-155 a:hover {
	background-image: url(img/items/Icons_Fachbereiche-07_blue.svg);
}*/

.link-202 a {
  background-image: url(img/items/Icons_Fachbereiche-08.svg);
}

/*.page-template-page_fachbereiche .link-202 a:hover {
	background-image: url(img/items/Icons_Fachbereiche-08_blue.svg);
}*/

.link-202 a:hover {
  background-image: url(img/items/Icons_Fachbereiche-08_green.svg);
}

.link-734 a {
  background-image: url(img/items/Icon_Fachbereich_Energie.svg);
}

.link-734 a:hover {
  background-image: url(img/items/Icon_Fachbereich_Energie_green.svg);
}

#main-content .more-items a {
  background-image: url(img/items/more.svg);
  -moz-background-size: 60px auto;
  -ms-background-size: 60px auto;
  -o-background-size: 60px auto;
  -webkit-background-size: 60px auto;
  background-size: 60px auto;
}
#main-content .more-items a:hover {
  background-image: url(img/items/more_green.svg);
  -webkit-background-image: url(img/items/more_green.svg);
}

.bgblue .link a {
  background-color: #fff;
  color: #4ca1d1;
}
.bgblue .link a:hover {
  color: #fff;
  background-color: #4ca1d1;
}

.link span {
  display: block;
  min-height: 45px;
  margin-bottom: 15px;
}
.page-template-page_projekte #main-content article .content {
  max-width: 470px;
  padding-top: 300px;
  position: relative;
  z-index: 500;
}

#main-content article .content {
  max-width: 450px;
  padding-top: 140px;
  position: relative;
  z-index: 500;
}

#main-content.dynamic-header article .content {
  max-width: 450px;
  padding-top: 0;
  position: relative;
  z-index: 500;
}

#main-content.dynamic-header article.col-lg-8 div,
#main-content.dynamic-header article.col-lg-8 div img {
  display: block;
  width: 100%;
}

#main-content article .content h1 {
  max-width: 205px;
  margin-bottom: 25px;
}

.link img {
  width: 80px;
  height: auto;
}

/* ################## TITELBILD ÄNDERN: ##################### */
.image-wrapper {
  /*
	background: url(img/items/Grafik_normal.jpg) no-repeat;
	background: url(img/items/X-MasGrafik_normal.jpg) no-repeat,
				url(img/items/X-MasGrafik_siedlungswasserwirtschaft.jpg) no-repeat,
				url(img/items/X-MasGrafik_ingenieurbau.jpg) no-repeat,
				url(img/items/X-MasGrafik_landschaftsbau.jpg) no-repeat,
				url(img/items/X-MasGrafik_strassenbau.jpg) no-repeat,
				url(img/items/X-MasGrafik_wasserbau.jpg) no-repeat;*/

  background: url(img/items/Grafik_normal.jpg) no-repeat;
  background: url(img/items/Grafik_normal.jpg) no-repeat, url(img/items/Grafik_siedlungswasserwirtschaft.jpg) no-repeat,
    url(img/items/Grafik_ingenieurbau.jpg) no-repeat, url(img/items/Grafik_landschaftsbau.jpg) no-repeat,
    url(img/items/Grafik_strassenbau.jpg) no-repeat, url(img/items/Grafik_wasserbau.jpg) no-repeat;
  -moz-background-size: contain;
  -ms-background-size: contain;
  -o-background-size: contain;
  -webkit-background-size: contain;
  background-size: contain;
  width: 763px;
  height: 510px;
  position: absolute;
  top: 10px;
  right: 0px;
}

.dynamic-header .image-wrapper {

	background: url(img/items/X-MasGrafik_normal.jpg) no-repeat;
	background: url(img/items/X-MasGrafik_normal.jpg) no-repeat,
				url(img/items/X-MasGrafik_siedlungswasserwirtschaft.jpg) no-repeat,
				url(img/items/X-MasGrafik_ingenieurbau.jpg) no-repeat,
				url(img/items/X-MasGrafik_landschaftsbau.jpg) no-repeat,
				url(img/items/X-MasGrafik_strassenbau.jpg) no-repeat,
				url(img/items/X-MasGrafik_wasserbau.jpg) no-repeat;
/*
  background: url(img/items/Grafik_normal.jpg) no-repeat;
  background: url(img/items/Grafik_normal.jpg) no-repeat, url(img/items/Grafik_siedlungswasserwirtschaft.jpg) no-repeat,
    url(img/items/Grafik_ingenieurbau.jpg) no-repeat, url(img/items/Grafik_landschaftsbau.jpg) no-repeat,
    url(img/items/Grafik_strassenbau.jpg) no-repeat, url(img/items/Grafik_wasserbau.jpg) no-repeat;
  */
  -moz-background-size: contain;
  -ms-background-size: contain;
  -o-background-size: contain;
  -webkit-background-size: contain;
  background-size: contain;
  width: 230px;
  height: 160px;
  position: absolute;
  top: inherit;
  right: 5%;
  bottom: 20px;
}

@media screen and (min-width: 1248px) {
  .dynamic-header .image-wrapper.big {
    width: 310px;
    height: 220px;
  }
}

@media screen and (min-width: 1500px) {
  .dynamic-header .image-wrapper.big {
    width: 440px;
    height: 306px;
  }
}

.dynamic-header .image-wrapper.left {
  background: none;
  left: 5%;
  width: 25%;
  height: 150px;
}

.dynamic-header .image-wrapper.left img {
  display: block;
}

.dynamic-header video {
  width: 100%;
  object-fit: fill;
  height: 100%;
}
/* ################## X-Mas Wrapper: ##################### */

.image-wrapper.item-197 {
	background-image: url(img/items/X-MasGrafik_siedlungswasserwirtschaft.jpg);
}
.image-wrapper.item-200 {
	background-image: url(img/items/X-MasGrafik_ingenieurbau.jpg);
}
.image-wrapper.item-155 {
	background-image: url(img/items/X-MasGrafik_landschaftsbau.jpg);
}
.image-wrapper.item-148 {
	background-image: url(img/items/X-MasGrafik_strassenbau.jpg);
}
.image-wrapper.item-202 {
	background-image: url(img/items/X-MasGrafik_wasserbau.jpg);
}
.image-wrapper.item-245 {
	background-image: url(img/items/X-MasGrafik_strassenbau.jpg);
}

/*######################X-Mas Wrapper END################*/
/* #################### normal Wrapper ################# */
/*
.image-wrapper.item-197 {
  background-image: url(img/items/Grafik_siedlungswasserwirtschaft.jpg);
}
.image-wrapper.item-200 {
  background-image: url(img/items/Grafik_ingenieurbau.jpg);
}
.image-wrapper.item-155 {
  background-image: url(img/items/Grafik_landschaftsbau.jpg);
}
.image-wrapper.item-148 {
  background-image: url(img/items/Grafik_strassenbau.jpg);
}
.image-wrapper.item-202 {
  background-image: url(img/items/Grafik_wasserbau.jpg);
}
.image-wrapper.item-245 {
  background-image: url(img/items/Grafik_strassenbau.jpg);
}
  */
.page-id-167 .image-wrapper {
  top: 10px;
  background-position: right top;
  right: 0;
  background-size: 79%;
}
/* ##################### normal Wrapper END ################### */

.image-wrapper img {
  display: none;
}

.home #main-content .content a:hover {
  color: #81b764;
}

.dynamic-text .img,
.content-slider .img1 {
  position: relative;
}

.description {
  font-size: 2.5em;
  line-height: 1.125em;
  position: absolute;
  bottom: 12%;
  padding: 0 40px;
  text-align: center;
  width: 100%;
}

.description.blue {
  color: #4ca1d1;
}

.description.white {
  color: #fff;
  text-shadow: 0 0 10px rgb(16, 51, 87);
}

.description.gray_white {
  color: #717479;
  text-shadow: none;
  background-color: rgba(255, 255, 255, 0.7);
  bottom: 0;
  padding: 15px 5px;
  font-size: 18px;
}

.content-slider .text .inner {
  padding: 40px;
}

.bggrey.content-slider .text {
  background-color: #4ca1d1;
  color: #fff;
}

.content-slider .text h3 {
  font-size: 1.75em;
  line-height: 1.07143em;
  margin-bottom: 15px;
}

.video-wrapper {
  background-color: rgba(180, 180, 180, 0.5);
}

.video-wrapper .col-lg-12 {
  margin-bottom: 0;
}

#main .content-slider .text p {
  margin-bottom: 15px;
}

.content-slider .txt-img .inner .item {
  margin-bottom: 16px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o- flex;
  display: flex;
}

.content-slider .img1 {
  line-height: 0;
}

.content-slider .img1 {
  margin-bottom: -16px;
}

.content-slider .txt-img {
  margin-bottom: -38px;
}

.page-template-page_fachbereiche .col-lg-7 > .inner,
.content-slider .img1 .inner {
  background-repeat: no-repeat;
  background-position: center top;
  -webkit-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
}

.wp-image-117 {
  bottom: 0;
  position: absolute;
  right: 10px;
  max-width: 43%;
  margin-bottom: 0;
}

.address .inner {
  padding: 20px 20px 0 20px;
  overflow: hidden;
}

.bggrey .address .inner {
  background-color: #4ca1d1;
  color: #fff;
}

.bggrey .address .inner a {
  color: #fff;
}

.client-list .owl-carousel .owl-item img {
  width: auto;
}

.client-list .title {
  margin-bottom: 70px;
}

.project-wrapper {
  position: relative;
}

.owl-carousel {
  z-index: 300;
}

.projects .project-filter {
  z-index: 400;
  padding-bottom: 16px;
}

.projects .project-filter form {
  margin-bottom: 0;
}

.open .project-filter {
  z-index: 200;
}

.project-filter .inner {
  background-color: #fff;
  margin-bottom: 0;
  width: 100%;
  height: 100%;
}

.page-id-167 .bggrey .title {
  color: #81b764;
  background-color: #fff;
}

.filter-title {
  margin-bottom: 30px;
}

.project-filter select {
  -webkit-appearance: none;
  -moz-appearance: none;
  -o-appearance: none;
  -ms-appearance: none;
  appearance: none;
  padding: 10px 15px;
  height: 52px;
  outline: none;
  font-size: 1em;
  border: none;
  margin-bottom: 10px;
  width: 100%;
}

select::-ms-expand {
  display: none;
}

.bggreen .project-filter select {
  background-color: #81b764;
  color: #fff;
}

.filter-id-wrapper {
  position: relative;
}

.filter-id-wrapper .arrow {
  background: rgba(0, 0, 0, 0) url("img/items/icon_down.svg") no-repeat scroll 0 0;
  display: block;
  height: 20px;
  position: absolute;
  width: 20px;
  right: 25px;
  top: 22px;
  pointer-events: none;
}

.bggrey .project-filter select,
.bgblue .project-filter select {
  background-color: #4ca1d1;
  color: #fff;
}

.project-filter option {
  padding: 5px 15px;
  display: block;
}

.bggreen .submit input {
  background-color: #81b764;
  color: #fff;
}

#main-wrapper .project-filter .submit input {
  padding: 15px;
}

.project-filter .submit-wrapper {
  padding: 0;
}

.dynamic-item .text .inner {
  padding: 40px 55px;
}

.dynamic-item.dynamic-video .text .inner {
  padding: 0;
}

.dynamic-item.dynamic-video .text .inner video {
  width: 100%;
  height: 100%;
  object-fit: fill;
}

.page-teaser .text .inner {
  color: #5a696f;
  padding: 45px 44% 45px 40px;
  line-height: 1.25em;
  overflow: hidden;
  position: relative;
}

.text ul li {
  list-style: none;
  position: relative;
  padding-left: 15px;
  margin-bottom: 2px;
}

.text ul li:before {
  content: "–";
  position: absolute;
  left: 0;
}

.text ul li ul {
  margin-bottom: 0 !important;
}

.text ol {
  padding-left: 18px;
}

.button-wrapper,
.button {
  -webkit-transition: all 0.25s linear;
  -moz-transition: all 0.25s linear;
  -ms-transition: all 0.25s linear;
  -o-transition: all 0.25s linear;
  transition: all 0.25s linear;
}

.button {
  text-align: center;
  display: block;
  padding: 15px 15px 13px;
  width: 100%;
}

.bggrey .button {
  color: #fff;
}

.bggrey a.button:hover {
  color: #4ca1d1;
}

.dynamic-item.bggrey .row > div .inner.button-link:hover {
  background-color: #fff;
}

.img .inner {
  background-repeat: no-repeat;
  background-position: center center;
  -webkit-background-size: cover;
  -ms-background-size: cover;
  -o-background-size: cover;
  -moz-background-size: cover;
  background-size: cover;
}

.post-slider .owl-carousel,
.post-slider > .container {
  overflow: hidden;
}

.post-nav {
  position: absolute;
  margin-top: -65px;
  width: 100%;
  z-index: 500;
}

.post-nav li {
  list-style: none;
}

.post-nav a {
  color: #fff;
}

.post-nav .prev {
  float: left;
}

.post-nav .next {
  float: right;
}
/*end content*/

/*group timeline*/
.timeline .timeline-items .timeline-item::after {
  left: calc(100% + 10.6%);
}

.timeline .timeline-items .timeline-item.inverted::after {
  left: calc(-8.78% - 14px);
}

.timeline .timeline-items .timeline-item.inverted::after,
.timeline .timeline-items .timeline-item::after,
.timeline::before,
.timeline h2 {
  background-color: #5a696f;
}

.timeline .timeline-items .timeline-item.centered:nth-of-type(2n + 1),
.timeline .timeline-items .timeline-item.inverted:nth-of-type(2n + 1),
.timeline .timeline-items .timeline-item:nth-of-type(2n + 1) {
  background-color: #ffffff;
}

.bgblue .timeline .timeline-items .timeline-item.centered:nth-of-type(2n + 1),
.bgblue .timeline .timeline-items .timeline-item.inverted:nth-of-type(2n + 1),
.bgblue .timeline .timeline-items .timeline-item:nth-of-type(2n + 1) {
  color: #4ca1d1;
}

.bggreen .timeline .timeline-items .timeline-item.centered:nth-of-type(2n + 1),
.bggreen .timeline .timeline-items .timeline-item.inverted:nth-of-type(2n + 1),
.bggreen .timeline .timeline-items .timeline-item:nth-of-type(2n + 1) {
  color: #81b764;
}

.timeline .timeline-items .timeline-item.inverted:nth-of-type(2n + 1)::before,
.timeline .timeline-items .timeline-item:nth-of-type(2n + 1)::before {
  border-top-color: #ffffff;
}

.timeline .timeline-items .timeline-item.centered:nth-of-type(2n + 1)::before {
  border-bottom-color: #ffffff;
}

.bggrey .timeline .timeline-items .timeline-item.centered:nth-of-type(2n + 1),
.bggrey .timeline .timeline-items .timeline-item.inverted:nth-of-type(2n + 1),
.bggrey .timeline .timeline-items .timeline-item:nth-of-type(2n + 1) {
  background-color: #4ca1d1;
}

.bggrey .timeline .timeline-items .timeline-item.inverted:nth-of-type(2n + 1)::before,
.bggrey .timeline .timeline-items .timeline-item:nth-of-type(2n + 1)::before {
  border-top-color: #4ca1d1;
}

.bggrey .timeline .timeline-items .timeline-item.centered:nth-of-type(2n + 1)::before {
  border-bottom-color: #4ca1d1;
}

.timeline .timeline-items .timeline-item.centered {
  text-align: left;
}
/*end timeline*/

/*group form*/
form {
  margin-bottom: 60px;
}

.wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

textarea,
input {
  border: none;
  width: 100%;
  padding: 15px 20px 35px;
  font-size: 1em;
  font-family: "open_sansregular", sans-serif;
  outline: none;
  -webkit-transition: all 0.15s linear;
  -ms-transition: all 0.15s linear;
  -moz-transition: all 0.15s linear;
  -o-transition: all 0.15s linear;
  transition: all 0.15s linear;
}

textarea {
  height: 166px;
  max-width: 100%;
  min-width: 100%;
}

input:focus {
  padding: 25px 20px 25px;
}

.bgblue textarea,
.bgblue input,
.bggrey textarea,
.bggrey input {
  color: #4ca1d1;
}

textarea::-webkit-input-placeholder,
input::-webkit-input-placeholder {
  color: #4ca1d1;
}
textarea::-moz-placeholder,
input::-moz-placeholder {
  color: #4ca1d1;
}
textarea:-ms-input-placeholder,
input:-ms-input-placeholder {
  color: #4ca1d1;
}
textarea:-moz-placeholder,
input:-moz-placeholder {
  color: #4ca1d1;
}

.submit-wrapper {
  overflow: hidden;
  padding-top: 20px;
}

.submit {
  float: left;
}

.bggrey .submit input {
  background-color: #4ca1d1;
  color: #fff;
  padding: 25px 20px 25px;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}

.submit:hover input {
  opacity: 0.6;
  cursor: pointer;
}

div.wpcf7-validation-errors {
  background-color: red;
}

span.wpcf7-not-valid-tip {
  color: #f00;
  font-size: 0.95em;
  font-style: italic;
  padding-top: 10px;
}

div.wpcf7-response-output {
  margin: 0;
  color: #fff;
  padding: 10px 20px;
  border: none;
}

div.wpcf7-mail-sent-ok {
  background-color: #81b764;
}

form .notice {
  padding-top: 10px;
  display: block;
  margin-bottom: -20px;
  color: #888;
}
/*end form*/

/*group post-slider*/
.post-slider .item > div:hover {
  cursor: pointer;
}
.post-slider.open .item > div:hover {
  cursor: default;
}
.post-slider .item > div {
  position: relative;
}

.post-slider .item-1 {
  margin-bottom: 16px;
}

.post-slider .post-slider-title {
  position: absolute;
  bottom: 0;
  width: 100%;
  background-color: rgba(255, 255, 255, 0.9);
  padding: 15px 25px;
  text-transform: uppercase;
  opacity: 0;
  -webkit-transition: opacity 0.25s ease;
  -o-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
  pointer-events: none;
}

.bggreen .text h2,
.bggreen .text h3,
.bggreen .text h4,
.bggreen .post-slider-title {
  color: #81b764;
  padding-right: 15px;
}

.bggreen .post-slider-title {
  padding-right: 30px;
}

.bgblue .text h2,
.bgblue .text h3,
.bgblue .text h4,
.bgblue .post-slider-title {
  color: #4ca1d1;
}

.post-slider-content {
  position: absolute;
  overflow: hidden;
  background-color: #fff;
  top: 0;
  width: -ms-calc(200% + 16px);
  width: -webkit-calc(200% + 16px);
  width: -o-calc(200% + 16px);
  width: -moz-calc(200% + 16px);
  width: calc(200% + 16px);
  height: 100%;
  display: none;
  right: 100%;
  color: #5a696f;
}

#main-wrapper .post-slider-content .inner {
  padding: 40px;
}

.post-slider-content h3 {
  font-size: 1.75em;
  line-height: 1.071428571428571em;
  padding-right: 30px;
}

.read-more {
  float: right;
}

.bgblue .read-more,
.bggrey .read-more {
  color: #4ca1d1;
}

.bggreen .read-more {
  color: #81b764;
}

.subitem {
  background-color: #fff;
}

.post-slider .subitem img {
  -webkit-transition: opacity 0.25s ease;
  -o-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.post-slider.open .subitem img {
  opacity: 0.25;
}

.post-slider.open .selected {
  z-index: 900;
}

.post-slider.open .selected-item img {
  opacity: 1;
}

.owl-stage-outer {
  margin-bottom: 25px;
}

.owl-nav {
  color: #fff;
  overflow: hidden;
}

.bggrey .owl-nav {
  color: rgb(0, 121, 191);
}

.owl-prev {
  float: left;
}

.owl-next {
  float: right;
}

.client-list .owl-prev,
.client-list .owl-next {
  color: #4ca1d1;
}

.owl-nav .disabled {
  display: none;
}

/* Hide nav buttons and show dots for #main-content carousel */
#main-content .owl-carousel .owl-nav {
  display: none !important;
}

#main-content .owl-carousel .owl-dots {
  display: block !important;
  text-align: center;
  margin-top: 20px;
}

#main-content .owl-carousel .owl-dots .owl-dot {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin: 0 5px;
  border-radius: 50%;
  background-color: #ccc;
  cursor: pointer;
}

#main-content .owl-carousel .owl-dots .owl-dot.active {
  background-color: #81b764;
}

/* Slider image styling with consistent aspect ratio */
#main-content .owl-carousel .slider-image {
  width: 100%;
  height: 430px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  object-fit: cover;
}

/* Ensure owl-carousel items have proper height */
#main-content .owl-carousel .item {
  height: auto;
}

/* Position dots correctly for attimage wrapper */
.attimage .owl-carousel .owl-dots {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  margin-top: 0;
}

/* For attimage wrapper on front page */
.attwrapper.slider-wrapper .attimage {
  position: relative;
  min-height: 400px; /* Adjust as needed to match your design */
}

.attimage .owl-carousel {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.attimage .owl-carousel .slider-image {
  width: 100%;
  height: 100%;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.attimage .owl-carousel .item {
  height: 100%;
  width: 100%;
}

.attimage .owl-carousel .owl-stage-outer,
.attimage .owl-carousel .owl-stage,
.attimage .owl-carousel .owl-item {
  height: 100%;
}

.attwrapper.slider-wrapper {
  position: relative;
}

.attwrapper.slider-wrapper .attimage-head {
  display: none !important;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
}

.attwrapper.slider-wrapper .attouter-circle-link {
  position: absolute;
  top: 97px;
  right: 0px;
  z-index: 11;
}
@media screen and (max-width: 568px) {
  .attwrapper.slider-wrapper .attouter-circle-link {
    top: 175px;
    right: 0px;
  }
}

.circle-image-wrapper {
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
}
@media screen and (max-width: 1500px) {
  .circle-image-wrapper {
    position: relative;
    display: flex;
    flex-direction: row;
  }
}

@media screen and (max-width: 1500px) {
  .circle-image-wrapper .image-wrapper {
    position: relative !important;
    display: flex !important;
    align-self: flex-end !important;
    top: inherit !important;
    right: inherit !important;
  }
}

.attouter-circle-link-left {
  position: absolute;
  width: 160px;
  height: 160px;
  left: 10px;
  bottom: 20px;
}
@media screen and (max-width: 1500px) {
  .attouter-circle-link-left {
    position: relative;
    display: flex;
    align-self: flex-start;
    width: 160px;
    height: 160px;
    left: inherit;
    bottom: inherit;
  }
}

.attouter-circle-link-left .attouter-circle-left {
  height: 160px;
  width: 160px;
  display: flex;
  justify-content: center;
  align-items: center;
  transform: rotate(-35deg);
  background: #95c11f;
  border-radius: 50%;
  position: relative;
  top: inherit;
  left: inherit;
  right: inherit;
}

.attouter-circle-link-left .attinner-circle {
  height: 130px !important;
  width: 130px !important;
  font-size: 20px !important;
  line-height: 31px !important;
}

.attwrapper.slider-wrapper .attimage {
  background: none !important;
  background-size: cover !important;
  background-position: inherit !important;
  position: relative;
  z-index: 1;
}

.close-post-slider {
  background: url(img/items/close_icon.png) no-repeat;
  position: absolute;
  width: 21px;
  height: 21px;
  top: 40px;
  right: 40px;
}
/*end post-slider*/

/*group footer*/
#footer-wrapper {
  color: #5a696f;
  background-color: rgb(232, 236, 238);
}

.footer {
  padding: 15px 0;
}
/*end footer*/

@media screen and (max-width: 1650px) {
  .gg-search {
    right: 2rem;
  }

  #main-navigation {
    padding-right: 2rem;
  }
}

@media screen and (max-width: 1500px) {
  .container {
    width: 90%;
  }

  #main-content article .inner {
    display: flex;
    flex-direction: column;
  }

  .image-wrapper {
    width: 70%;
  }

  .dynamic-header .image-wrapper {
    position: initial;
    display: flex;
    align-self: center;
  }

  .dynamic-header video {
    width: 100%;
    object-fit: cover;
    height: 100%;
  }

  .dynamic-header .image-wrapper.left {
    margin-bottom: 24px;
    width: 30%;
    display: flex;
    align-self: center;
  }

  .col-lg-2.link {
    height: inherit;
  }

  #main-wrapper .post-slider-content .inner {
    padding: 25px;
  }

  .close-post-slider {
    top: 18px;
    right: 25px;
  }

  .post-slider-content h3 {
    font-size: 1.5em;
    line-height: 1.071428571428571em;
    padding-right: 28px;
    letter-spacing: 0;
  }

  .post-slider-content h3,
  #main .post-slider-content p {
    margin-bottom: 15px;
  }
}

@media screen and (max-width: 1500px) {
  #main-navigation li {
    padding-left: 35px;
    padding-right: 0px;
  }
}

@media screen and (min-width: 1500px) {
  #menu-footer-navigation li,
  #main-navigation li {
    padding-left: 45px;
    padding-right: 45px;
  }
}

@media screen and (max-width: 1320px) {
  .page-teaser .text .inner {
    padding-right: 40px;
  }

  .wp-image-117 {
    position: relative;
    right: 0;
  }
}

@media screen and (min-width: 1200px) {
  .row {
    margin-left: -8px;
    margin-right: -8px;
    overflow: hidden;
  }

  .col-lg-2,
  .col-lg-3,
  .col-lg-4,
  .col-lg-5,
  .col-lg-6,
  .col-lg-7,
  .col-lg-8,
  .col-lg-9,
  .col-lg-12 {
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }

  .col-lg-2 {
    width: 16.66666667%;
  }

  .col-lg-3 {
    width: 25%;
  }

  .col-lg-4 {
    width: 33.33333%;
  }

  .col-lg-5 {
    width: 41.66667%;
  }

  .col-lg-6 {
    width: 50%;
  }

  .col-lg-7 {
    width: 58.33333%;
  }

  .col-lg-8 {
    width: 66.66667%;
  }

  .col-lg-9 {
    width: 75%;
  }
  .col-lg-9 .text {
    width: 100%;
  }

  .col-lg-12 {
    width: 100%;
  }

  #toggle-menu {
    display: none;
  }

  .wrapper {
    padding-bottom: 112px;
  }

  #footer-wrapper {
    position: absolute;
    bottom: 0;
    width: 100%;
  }

  .links,
  #main-content article,
  #main-content .container > .row {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o- flex;
    display: flex;
  }

  .links > .row {
    display: -webkit-flex;
    -webkit-flex-wrap: wrap;
    display: -moz-flex;
    -moz-flex-wrap: wrap;
    display: -ms-flex;
    -ms-flex-wrap: wrap;
    display: -o- flex;
    -o-flex-wrap: wrap;
    display: flex;
    flex-wrap: wrap;
  }

  .col-lg-2.link {
    height: 176px;
  }

  #main-navigation .sub-menu {
    margin-left: 31px;
    position: absolute;
    top: 110px;
    display: none;
  }

  .scroll #main-navigation .sub-menu {
    top: 90px;
  }

  #main-navigation .sub-menu li {
    display: block;
    padding: 0;
  }

  #main-navigation .sub-menu a {
    background-color: #fff;
    padding: 10px 15px;
    display: block;
    text-transform: none;
  }

  .post-slider .item > div:hover .post-slider-title {
    opacity: 1;
  }

  .post-slider.open .item > div:hover .post-slider-title {
    opacity: 0;
  }

  .link {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-align-items: stretch;
    -moz-align-items: stretch;
    -ms-align-items: stretch;
    -o-align-items: stretch;
    align-items: stretch;
  }

  .button-wrapper {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
    width: 100%;
  }
}

@media screen and (max-width: 1200px) {
  #toggle-menu {
    position: absolute;
    right: 5%;
    top: 50%;
    margin-top: -12px;
  }

  #main-navigation {
    display: none;
  }

  .footer .row {
    margin-bottom: -15px;
  }

  .footer .row > div {
    margin-bottom: 15px;
  }

  .content-slider .img1 {
    margin-bottom: 16px;
  }

  .content-slider .txt-img img,
  .content-slider .img1 .inner img {
    width: 100%;
    height: auto;
  }

  .content-slider .txt-img .inner .item {
    display: block;
  }

  .col-lg-7 {
    margin-bottom: 16px;
  }

  .page-template-page_projekte #main-content .col-lg-3 {
    width: 100%;
  }

  .page-template-page_projekte .project-filter form {
    margin-bottom: 0;
  }

  .post-slider .post-slider-title,
  .post-slider .item > div .post-slider-title {
    opacity: 1;
    letter-spacing: 0;
    padding: 15px;
  }
}

@media screen and (max-width: 1500px) and (min-width: 1200px) {
  .page-template-page_fachbereiche .col-lg-7,
  .page-template-page_fachbereiche .col-lg-5 {
    width: 50%;
    min-height: 600px;
  }

  #menu-footer-navigation li,
  #main-navigation li {
    padding-left: 35px;
    padding-right: 0;
  }

  .page-teaser .col-lg-9,
  #main-content .col-lg-9 {
    width: 66.66667%;
  }

  .page-teaser .col-lg-3,
  #main-content .col-lg-3 {
    width: 33.333%;
  }

  .logo-zusatz {
    display: block;
    margin-left: 0;
  }
}

@media screen and (min-width: 600px) and (max-width: 1412px) {
  .post-slider-content {
    width: -webkit-calc(300% + 32px);
    width: -moz-calc(300% + 32px);
    width: -ms-calc(300% + 32px);
    width: -o-calc(300% + 32px);
    width: calc(300% + 32px);
    z-index: 600;
  }

  .item-2 .post-slider-content {
    bottom: 100%;
    top: auto;
    margin-bottom: 16px;
  }

  .item-1 .post-slider-content {
    top: 100%;
    bottom: auto;
    margin-top: 16px;
  }

  .post-slider-content .inner {
    padding: 25px;
  }

  #main .post-slider-content .inner p {
    margin-bottom: 15px;
  }
}

@media screen and (min-width: 600px) and (max-width: 1200px) {
  .row {
    margin-left: -8px;
    margin-right: -8px;
    overflow: hidden;
  }

  .col-lg-3,
  .col-lg-4,
  .col-lg-5,
  .col-lg-6,
  .col-lg-7,
  .col-lg-8,
  .col-lg-9,
  .col-lg-12 {
    float: left;
    width: 100%;
    padding-left: 8px;
    padding-right: 8px;
  }

  .col-lg-3,
  .col-lg-4 {
    width: 50%;
  }

  .links {
    width: 100%;
    display: block !important;
  }

  .link {
    width: 33.333%;
  }
}

@media screen and (max-width: 945px) {
  .post-slider-content {
    width: -webkit-calc(200% + 16px);
    width: -ms-calc(200% + 16px);
    width: -o-calc(200% + 16px);
    width: -moz-calc(200% + 16px);
    width: calc(200% + 16px);
  }

  .projects .project-filter {
    position: relative;
    width: 100%;
    height: auto !important;
    padding-left: 0;
  }

  .project-filter form {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 765px) {
  /*	.link {
		 height: 33.333%;
	}*/

  .home .filter-id-wrapper {
    float: left;
    margin-right: 8px;
    padding-right: 8px;
    width: 50%;
  }
}

@media screen and (max-width: 765px) {
  .post-slider-content {
    position: relative;
    margin-left: -16px;
    width: 100%;
    right: 0;
    left: 0;
  }

  .wp-image-117 {
    position: relative;
    right: 0;
    margin-left: 10px;
    margin-bottom: 10px;
  }

  .page-teaser .text .inner {
    padding-right: 40px;
  }

  .link a {
    padding: 10px 10px 0;
  }

  .col-lg-3,
  .col-lg-4 {
    width: 100%;
  }

  .col-lg-4.link {
    width: 50%;
  }

  .dynamic-item .text .inner {
    padding: 30px;
  }
}

@media screen and (max-width: 655px) {
  .logo-zusatz {
    display: none;
  }

  .timeline .timeline-items {
    padding-top: 60px;
  }

  .timeline .timeline-items .timeline-item {
    margin-bottom: 40px;
  }
}

@media screen and (min-width: 600px) {
  #main-navigation {
    margin-left: -45px;
    margin-right: -45px;
  }

  #menu-footer-navigation li,
  #main-navigation li {
    display: inline;
  }

  #menu-footer-navigation {
    display: table;
    width: 100%;
  }

  #menu-footer-navigation li {
    display: table-cell;
  }

  .footer {
    padding: 45px 0;
  }

  #top-link {
    text-align: right;
    display: block;
  }

  .dynamic-item .row > div,
  .dynamic-item .row {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o- flex;
    display: flex;
  }

  .dynamic-item .row {
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .page-template-page_fachbereiche .img img,
  .dynamic-text .img img,
  .img1 .img {
    visibility: hidden;
  }
}

@media screen and (max-width: 600px) {
  body {
    font-size: 14px;
  }

  #menu-footer-navigation li {
    margin-bottom: 8px;
    list-style: none;
  }

  .dynamic-item .text .inner {
    padding: 30px 25px;
  }

  .page-teaser .text .inner {
    line-height: 1.375em;
  }

  #main-content,
  .dynamic-item {
    padding: 40px 0;
  }

  .post-slider .post-slider-title {
    opacity: 1;
  }

  .description {
    font-size: 1.5em;
    padding: 0 20px;
    letter-spacing: 0;
  }

  h1,
  h2,
  .filter-title,
  .button {
    font-size: 1.3em;
    letter-spacing: 0;
  }

  h3 {
    font-size: 1.25em;
    letter-spacing: 0;
  }

  #main-content article .content h1 {
    max-width: 100%;
  }

  .post-nav {
    margin-top: -50px;
  }
}

@media screen and (max-width: 600px) and (min-width: 375px) {
  .links .row {
    margin-left: -8px;
    margin-right: -8px;
    overflow: hidden;
  }

  .link {
    width: 50%;
    float: left;
    padding-left: 8px;
    padding-right: 8px;
  }
}

@media screen and (max-width: 375px) {
  .col-lg-4.link {
    width: 100%;
  }

  .wp-image-117 {
    max-width: 100%;
  }

  .image-wrapper {
    position: relative;
    width: 100%;
    right: 0;
    height: 200px;
    top: 0;
    margin-bottom: 10px;
  }

  #main-content article .content {
    max-width: 100%;
    padding-top: 0;
  }

  #main-content article .inner {
    padding: 10px 25px;
    width: 100%;
  }

  .logo img {
    max-width: 120px;
  }

  .logo {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  #main-wrapper {
    padding-top: 76px;
  }

  .bgblue .row > div.text.col-lg-12 .inner {
    padding: 25px;
  }
}

.col-lg-5_2 {
  float: left;
  margin-bottom: 16px;
  padding-left: 8px;
  padding-right: 8px;
}

@media screen and (min-width: 1200px) {
  .col-lg-5_2 {
    width: 20%;
  }
}

@media screen and (min-width: 600px) {
  .col-lg-5_2 {
  }
}

@media screen and (max-width: 1200px) {
  .col-lg-5_2 {
    width: 50%;
  }
}

@media screen and (max-width: 600px) {
  .page-id-2188 .dynamic-item.bggreen .row,
  .page-id-2188 .dynamic-item.bggreen .row > div {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o- flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .page-id-2188 .dynamic-item.bggreen .row {
    margin-left: -8px;
    margin-right: -8px;
    overflow: hidden;
  }
}
