/*
* dark: color:#272931;
grey: color:#e9e8e9;
red: color: #bd1220;
*/
:root {
  --green: #00A995;
}


@font-face {
  font-family: 'roboto_monoregular';
  src: url(fonts/robotomono-regular-webfont.woff2) format('woff2'), url(fonts/robotomono-regular-webfont.woff) format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'vuja';
  src: url(fonts/VujahdayScript-Regular.ttf) format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'roboto';
  src: url(fonts/roboto-regular-webfont.ttf) format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'robotoBold';
  src: url(fonts/roboto-bold-webfont.ttf) format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
* {
  box-sizing: border-box;
}
html, .pageWrapper {
  height:100%;
}
body {
  padding: 0;
  margin: 0;
  font-family: 'roboto', sans-serif;
  font-size: 1em;
  font-weight: 100;
  -webkit-animation: fadeIn 2s;
  background:#fff;
  color:#313131;
  height:100%;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}
@keyframes fadeIn {
  from {
  	opacity: 0;
  }
  to {
 	opacity: 1;
  }
}
.mobile, .tablet {
  display: none;
}
.desktop, .fullscreen {
  display:block;
}
.container {
  width: 1200px;
  margin: 0 auto;
  padding:30px 15px;

}
.row {
  width:100%;
}
.container-full {
  margin: 0 auto;
  padding: 0
}
.container-full > .flexbox, .sliderWrapper {
  padding:60px 100px;
}
.container > .container {
  padding:0;
}
.container-full > .flexbox.paddingBottom-100 {
  padding-bottom:100px;
}
.container-full > .flexbox.padding-150 {
  padding-bottom:150px;
  padding-top:150px;
}
.contentWrapper {
    margin-top:100px;
}

.flexbox {
  margin: 0 auto;
  display: flex;
  flex-wrap:wrap;
}
.flexbox.txtImg {
  flex-wrap: nowrap;
  align-items: center;
}
.flex-100 {
  width:100%;
  padding:15px 0;
}
.flex-75 {
  width:75%;
}
.flex-66 {
  width:66%;
}
.flex-50 {
  width:50%;
}
.flex-33 {
  width:33%;
}
.flex-25 {
  width:25%;
}
.flex-20 {
  width:20%;
}
.container .flexbox {
  margin:0 -15px;
}
.flexItem, .flex_item {
  padding:15px;
}
.imgList {
  padding:0;
}
.flexJustify-left {
  justify-content: flex-start;
}
.flexJustify-center {
  justify-content: center;
}
.flexJustify-right {
  justify-content: flex-end;
}
.flexJustify-sb {
  justify-content: space-between;
}
.flexJustify-sa {
  justify-content: space-around;
}
.flexJustify-se {
  justify-content: space-evenly;
}
.flexAlign-start {
  align-items: flex-start;
}
.flexAlign-center {
  align-items: center;
}
.flexAlign-baseline {
  align-items: baseline;
}
.flexAlign-end {
  align-items: flex-end;
}
.flexAlign-strech {
  align-items: stretch;
}
.spaceBetween .flexbox {
  justify-content: space-between;
  padding:15px;
}
.noFlex {
  width:100%;
  display:block;
  margin:30px 0;
}


h1, h2 {
  font-family: 'roboto', sans-serif;
  font-weight: 700;
  color:#2b2b31;
  font-size: 4.5em;
  margin-top:0;
  text-transform: uppercase;
}
h3 {
  font-size: 2em;
  font-family: 'roboto', sans-serif;
  font-weight: 700;
  color:#2b2b31;
}
h1+h2, h2+h3 {
  margin-top: 0
}
h2 .alignTop {
  position: relative;
  display: inline-block;
  top:-40px;
}
strong {
  font-family: 'robotoBold';
}
.red {
  color: #bd1220;
}
.green {
    color:var(--green);
}

.redHand {
  font-size:1.8em;
  font-family: 'vuja';
  color: var(--green);
  display: inline-block;
  position: relative;
}
.blackBox {
  font-family: 'robotoBold';
  color:#fff;
  display: inline-block;
  padding:10px 15px;
  font-size:2.6em;
  background:#272931;
  margin:0 30px;
  position:relative;

}
#myVideo {
  width:100%;
  height:auto;
}
.smallVid {
  display: none;
}
.smallCube .greyBg, .greyBg {
  background:#e9e8e9;
  color:#272931;
}
.greyBg h2, .greyBg h3, .greyBg p {
  color:#272931;
}
.bgWhite, .front.bgWhite {
  background:#fff;
  color:#272931;
}
.darkBg {
  background:#272931;
  color:#fff !important;
}
.darkBg h2 {
  color:#fff;
}
.bgRed, .redBg, .front.redBg {
  background:var(--green);
  color:#fff !important;
}
.bgLightgrey, .front.bgLightgrey {
  background:#e9e9e9;
  color:#272931;
}
blockquote {
  font-size:1.2em;
  font-weight: 400;
}
a {
  color:var(--green);
  transition:all 0.4s ease;
  text-decoration: none;
  transition:all 0.4s ease;
}

a:focus, a:hover {
  color:#999;
}
.divider {
  width:100%;
  padding:30px 15px;
}

.article_nav ul {
  padding:0;
  margin:0;
  list-style: none;
  display:flex;
  flex-wrap:wrap;
  justify-content: center;
}

a, li, p {
  font-size: 1.3em;
  font-weight: 100;
}
label a {
  font-size:1em;
}
.nav li li, li a, p a, span a {
  font-size: 1em
}
.article_nav ul li {
  margin:15px;
}
.mobile {
  display: none
}

img {
  /*width: 100%;*/
  height: auto
}

.text-center, .align-center {
  text-align: center
}

.text-right {
  text-align: right
}

.smallContent {
  max-width: 768px;
}
.text-justify {
  text-align: justify;
}
p.twoCols {
  column-count:2;
  column-gap:30px;
}
.mainNav {
  padding:0 30px;
}
.topLogo {
  width:12%;
  height:auto;
  transition:all 0.4s ease;
}

.topLogo img {
  width:60%;
  height:auto;
}
.header_top {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 200;
  padding: 15px 0;
  width:100%;
  transition:all 0.4s ease;
  color:#272931;
  background: #fff;
  border-bottom:1px solid #272931;
  /* box-shadow: 2px 2px 8px rgba(0,0,0,0.6); */
}
.header_top .container {
  padding:0 15px;
}
.header_top .flexbox {
  justify-content:space-between;
  align-items: center;
  width:100%;
}
.header_top .flex_item {
  padding:0 15px;
}
.nav-up {
  /* top: -250px */
}
.logoContainer {
  max-width:100%;
  overflow:hidden;
}
.logoContainer .flexbox {
  width:100%;
  height:100%;
  justify-content: center;
  align-items: center;
}
.info {
  text-align: right;
}

.menu_btn a {
  height: 30px;
  display: block;
  width: 30px;
  margin: 10px 0
}

.menu_btn a span, .menu_btn a:after, .menu_btn a:before {
  content: '';
  width: 100%;
  height: 3px;
  border-radius: 3px;
  background: var(--green);
  box-shadow: 2px 2px rgba(0,0,0,0.6);
  margin: 6px 0;
  display: block;
  transition: all .4s ease
}

.nav li ul, html.mm-opened .menu_btn a span {
  display: none
}
#mmenu:not( .mm-menu ) {
        display: none;
    }
html.mm-opened .menu_btn a:before {
  transform: rotate(45deg)
}

html.mm-opened .menu_btn a:after {
  transform: rotate(-45deg);
  margin-top: -7.5px
}

html.mm-opened .menu_btn a {
  margin-top: 20px
}

.mainNav ul {
  margin: 0;
  padding: 0;
  display:flex;
  justify-content: space-between;
  width:60%;
  text-transform: uppercase;
  align-items: center;
}

.mainNav li {
  position: relative;
  list-style: none;
}
.mainNav li a {
  padding:15px;
  display:inline-block;
  color: #272931;
  font-weight: 400;
  font-size: 1em;
}
.mainNav li:last-child a {
  padding-right:0;
}
.mainNav li a:hover, .mainNav li a:focus, .mainNav li.active a, .info a:hover, .info a:focus {
  color:var(--green);
}
.mainNav ul.subNav {
  opacity:0;
  transition:all 0.4s ease;
  visibility: hidden;
  width:100%;
  display:block;
}
.subNav li a {
  font-size:0.65em;
  background:rgba(49,49,49,1);
  width:100%;
  display:block;
}
.mainNav li:hover > ul.subNav, .mainNav li:focus > ul.subNav {
    visibility: visible;
    opacity:1;
}
.mainNav li ul {
  position: absolute;
  left: 0;
  z-index: 500
}


/*slider*/
.headSlider, .headSliderSub {
  position: relative;
  overflow:hidden;
}
.headSlider .slick-slider, .headSliderSub .slick-slider {
  margin:0;
}
.arrowDown {
  width:50px;
  height:50px;
  background:url(/custom/assets/arrow-down.png) center center no-repeat;
  background-size:contain;
  position: absolute;
  left:50%;
  margin-left:-25px;
  bottom:15%;
  z-index: 100;
  cursor:pointer;
  transform: scale(1);
	animation: pulse 2s infinite;
}

@keyframes pulse {
	0% {
		transform: scale(0.95);
	}

	70% {
		transform: scale(1);
	}

	100% {
		transform: scale(0.95);
	}
}
.sliderItem,  .parallaxTxt {
  position:relative;
}
.sliderItem {
  height:100vh;
  background-size:cover !important;
}
.headSliderSub .sliderItem {
  height:600px;
  background-size:100% auto !important;
}
.sliderItem .flexbox, .parallaxTxt .flexbox {
  position: absolute;
  top:0;
  left:0;
  bottom:0;
  right:0;
  justify-content: center;
  align-items: center;
}
.parallaxTxt .flexbox {
  align-items: center;
}
.sliderItem .linkWrapper {
  text-align: center;
  position: relative;
  z-index:100;
}

.sliderTxt {
  max-width: 50%;
  background:rgba(49,49,49,0.7);
  padding:60px;
  position: relative;
}
.slick-active .sliderTxt {
    -webkit-animation: fadeIn 2s;
    animation: fadeIn 2s;
}
.sliderTxtInner p, .parallaxTxt {
  color:#fff;
  font-family: 'roboto';
  font-size:2em;
  text-shadow: 1px 1px rgba(0,0,0,0.6);
  text-align: center;
  margin:5px;
  font-weigth:100;
}
 .button {
  padding:10px 20px;
  font-size:1.2em;
  color:#fff;
  border: 1px solid var(--green);
  background:var(--green);
  transition:all 0.4s ease;
  text-decoration: none;
  display:inline-block;
  margin-top:15px;
  /* box-shadow: 2px 2px 6px rgba(0,0,0,0.6); */
}

.headSlider .slick-dots, .headSliderSub .slick-dots {
  bottom:10px;
}
.headSlider .slick-dots li button::before, .headSliderSub .slick-dots li button::before {
  content:'';
  border:1px solid var(--green);

}
/*contentSlider*/
.sliderWrapper {
  position: relative;
  padding:0 100px;
}
.sliderHeadline h3 {
  font-family: 'robotoBold', sans-serif;
  transform-origin: top left;
  left:20px;
  top:50%;
  transform: rotate(-90deg) translateX(-50%);
  position: absolute;
  font-size: 0.7em;
  text-transform: uppercase;
  font-weight: 700;
  margin:0;
  padding:0;

}
.sliderHeadline {
  font-size: 3em;
  font-weight: 700;
  padding:10px 15px;
  width:100px;
  overflow: hidden;
  position: absolute;
  left:100px;
  top:0;
  bottom:0;
}
.sliderHeadline.black {
  background:#fff;
}
.sliderHeadline.white {
  background:#272931;
}
.white h3 {
  color:#fff !important;
}
.refSlider {
  margin-left: 100px;
  margin-bottom:0;
  position: relative;
}
.cSliderItem img {
  width:100%;
  height:auto;
}
.cSliderItem .flexbox {
  position: relative;
}
.cSliderItem .flexbox .fullLink {
  position: absolute;
  top:0;
  left:0;
  bottom:0;
  right:0;
}
.sliderWrapper .nextItem {
  height:30px;
  width:30px;
  border-right: solid 2px #272931;
  border-top: solid 2px #272931;
  transform: rotate(45deg);
  position: absolute;
  top:50%;
  margin-top:-30px;
  right:30px;
  z-index:100;
  cursor:pointer;
}
.sliderWrapper .slick-prev {
  display: none !important;
}
.logoSliderWrapper {
  padding:15px 60px;
  max-width:100%;
  width:100%;
}
.logoSlider {
  width:100%;
}
.logoSliderItem {
  height:150px;
}
.logoSliderItem .flexbox {
  height:100%;
  justify-content: center;
  align-items: center;
}
.logoSliderItem img {
  max-height:150px;
  width:auto;
}
/*content*/
.teaserItem .flexbox, .leistungItem .flexbox {
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
}
.teaserItem .flex_item, .leistungItem .flex_item {
  width:100%;
  text-align: center;
}
.teaserItem .fullLink {
  position: absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  z-index: 1;
}
.teaserImg img {
  transition:all 0.4s ease;
}
.teaserItem:hover img, .teaserItem:focus img {
  transform:scale(1.1);
}
.bgImg img {
  width:100%;
  height:auto;
  object-fit: cover;
  display: block;
}

.flexbox.bgRed {
  height:100%;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  color:#fff;
}

#rex-53 h2 {
  margin-bottom:0;
}
#rex-53 p {
  margin: 0 0 15px 0;
}
#rex-54 img {
  position: relative;
  top:30px;
}
#rex-55 {
  margin:0 -15px;
}
/*team*/
.oeDots {
  width:100%;
  padding:60px 0;
}
.oeDots .flexbox {
  justify-content: center;
}
.oeDot {
    background:#bd1220;
    width:200px;
    height:200px;
    border-radius: 200px;
    margin:30px;
}
.teamCube {
  width:1500px;
  margin:0 auto;
  padding:30px 0 60px 0;
}
.cubesWrapper .flexbox {
  flex-wrap: wrap;
}
.smallCubeWrapper {
  width: 500px;
  height: 500px;
}
.smallCube {
  width:500px;
  height:500px;
  transform-style: preserve-3d;
  position: relative;
  transition: 2s;
}

.turnRight:not(.clickCube) .smallCube:hover, .turnRight:not(.clickCube) .smallCube:focus {
  transform: rotateY(90deg);
}
.turnLeft:not(.clickCube) .smallCube:hover, .turnLeft:not(.clickCube) .smallCube:focus {
  transform: rotateY(-90deg);
}
.smallCube div {
  height: 500px;
  width: 500px;
  position: absolute;
}
.smallCube img {
  width: 100%;
  transform: translateZ(0);
}
.front {
  transform: translateZ(250px);
  background-color: #272931;
}
.right {
  transform: rotateY(-270deg) translateX(250px);
  transform-origin: 100% 0;
}
.back {
  transform: translateZ(-250px) rotateY(180deg);
}
.left {
  transform: rotateY(270deg) translateX(-250px);
  transform-origin: 0 50%;
}

.smallCube .cubeTxt {
  display:flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
.txtInner h3, .cubeTxt p {
  display:block;
  width:100%;
  text-align: center;
  color:#272931;
}
.teamWrapper {
  position: relative;
  background:#272931;
}
.teamWrapper::before {
  content:'teamw';
  position: absolute;
  bottom:100px;
  left:30px;
  color:#fff;
  font-size:2.5em;
  font-weight: 700;
  transform: rotate(-90deg);
  z-index: 1;
}
.teamWrapper::after {
  content:'rk';
  position: absolute;
  bottom:50px;
  right:80px;
  color:#fff;
  font-size:2.5em;
  font-weight: 700;
  z-index: 1;
}
.Lightgrey .cubeTxt p, .bgLightgrey .cubeTxt h3,  .bgLightgrey .cubeTxt h2, .bgLightgrey .cubeTxt li,
.darkBg .Lightgrey .cubeTxt p, .darkBg .bgLightgrey .cubeTxt h3, .darkBg .bgLightgrey .cubeTxt h2, .darkBg .bgLightgrey .cubeTxt li,
.greyBg .cubeTxt p, .greyBg .cubeTxt h3,  .greyBg .cubeTxt h3, .greyBg .cubeTxt li {
  color:#272931;
}
.darkBg .txt h2, .darkBg .txt h3, .darkBg .txt p, .darkBg .txt li, .bgRed p, .bgRed,.redBg .cubeTxt p, .redBg .cubeTxt h2, .redBg .cubeTxt h3, .redBg  li
 .darkBg .cubeTxt h3, .darkBg .cubeTxt h2, .darkBg .cubeTxt p, .darkBg .cubeTxt li{
  color:#fff;
}
.teamWrapper.darkBg p, .teamWrapper .bgWhite p, .teamWrapper .greyBg p {
    color:#272931;
}

.topLeft .front img {
  border-radius: 140px 0 0 0;
  overflow: hidden;
}
.topRight .front img {
  border-radius:0 140px 0 0;
  overflow: hidden;
}
.bottomLeft .front img {
  border-radius:0 0 0 140px;
  overflow: hidden;
}
.bottomRight .front img {
  border-radius:0 0  140px 0;
  overflow: hidden;
}
.shopWrapper .darkBg h3 {
  color:#fff;
}
.clickCube {
  cursor: pointer;
}
.cubeTxt {
  text-align: center;
  position: relative;
}
.cubeTxt ul {
  padding:0;
  width:auto;
  margin:0 auto;
  display: inline-block;
}
.cubeTxt li {
  list-style-type:none;
  padding:0 0 0 15px;
  position: relative;
}
.cubeTxt li::before {
  content:'+';
  position: absolute;
  top:0;
  left:0;
}
.bottomText {
  color:#fff;
  position: absolute;
  bottom:30px;
  right:30px;
}
.bottomText .redHand {
  color:#fff;
  font-size:3em;
}
/*referenzen*/
.headerRef img {
  max-width: 100%;
  height:auto;
}
.RefImages {
  position: relative;
}
.refImgSlider {
  padding:30px 100px;
  position: relative;
}
.slick-dots {
  position: relative;
  bottom:-30px;
  font-size:20px;
  padding:0;
}
.slick-dots li button::before {
  font-size:15px;
}
.nextArt, .prevArt {
  position: absolute;
  transform: rotate(-90deg);
  top:50%;
  z-index: 100;
}
.nextArt a, .prevArt a {
  color:#666;
}
.nextArt {
  right:-30px;
}
.prevArt {
  left:-30px;
}
#page-23 .prevArt {
  display:none;
}
.refTitle {
  text-align: right;
}
.headerRef {
  padding-top:100px;
}
.refTitle h2 {
  word-wrap: break-word;
}
.refSliderItem  img {
  width:100%;
  height:auto;
}
/*fadIn effect*/
.fade-in {
  opacity: 0;
  transform: translateY(20vh);
  visibility: hidden;
  transition: opacity 0.6s ease-out, transform 1.2s ease-out;
  will-change: opacity, visibility;
}
.fade-in.is-visible {
  opacity: 1;
  transform: none;
  visibility: visible;
}


/*formular*/
.yform {
  padding:15px;
  width:50%;
}
.form-group {
  margin-bottom:15px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
.control-label {
  padding:15px;
  width:100%;
  font-family: 'robotoBold', sans-serif;
  font-size:1.5em;
  color:#272931;
}

.form-control {
  padding:15px;
  border:none;
  border-radius: 0;
  width:100%;
  font-size:1.2em;
  color:#272931;
  background:#e9e8e9;
}
.mandatory {
  color:var(--green);
}
.form-control.datepicker {
  width:20%;
}
.qRequest {
  width:80%;
  margin:0 auto;
}
.qRequest label {
  display:none;
}


.yform .btn {
  color:#fff;
  padding:15px 30px;
  font-family: 'robotoBold', sans-serif;
  font-size:1.5em;
  border:1px solid #272931;
  background:#272931;
  cursor:pointer;
  transition:all 0.4s ease;
}

.button:hover, .button:focus, .yform .btn:hover, .yform .btn:focus, .yform .qRequest .btn:hover,  .yform .qRequest .btn:focus, .yform .btn:hover, .yform .btn:focus  {
  background:transparent;
  color:#272931;
}
.formcheckbox {
    margin-bottom:15px;
}
.reset {
  display: block;
  color:#8ab68a;
  font-weight: 400;
  cursor:pointer;
  padding:15px 0;
  transition:all 0.4s ease;
}
.reset:hover, .reset:focus {
  color:#999;
}
.contentImg {
  width:400px;
  height:auto;
}
.imgList {
  align-items: center;
}
.listImg img:not([width]) {
  width:100%;
  height:auto;
}
.gallery.flexbox {
  justify-content: center;
  align-items: center;
  padding:30px 0;
}
.gallery a {
  display: inline-block;
}
.gallery.bottomLeftImg {
  justify-content: flex-start;
}
/*footer*/
footer {
  padding-bottom:10px;
}
.footer {
  position: relative;
}
.footer.container {
  width:1500px;
}
.footer a {

}
.footer a:hover, .footer a:focus {

}
footer.darkBg p{
  color:#fff;
}

.footer .flexbox {
  justify-content: space-between;
  align-items: flex-start;
  margin:0 -15px;
}

.navFooter ul {
  margin:0;
  padding:15px 0;
  display:block;
  text-align: right;
}
.navFooter ul li {
  padding: 0 15px;
  display:block;
}
.rex-navi1 li {
  list-style: none;
}
.copyWrapper {
  background:#e9e8e9;
  padding:30px 15px;
}
.copyWrapper .flexbox {
  width:1500px;
  margin:0 auto;
  align-items: center;
}
.copyWrapper p {
  margin:0;
  color:#999!important;
}
.copyWrapper img {
  width:15px;
  height:auto;
}


/*mediaqueries*/
@media screen and (max-width:1600px) {
  #laden {
    padding:60px 15px;
  }
  #laden .cubeTxt {
    font-size: 0.9em;
  }
  #laden .cubeTxt h3 {
    margin:0;
  }
  .cubeTxt {
    overflow:hidden;
  }
  .copyWrapper .flexbox {
    width:100%;
  }
}
@media screen and (max-width:1500px) {
  .teamCube {
    width:1200px;
  }
  .smallCubeWrapper, .smallCube div {
    width: 400px;
    height: 400px;
  }
  .smallCube {
    width:400px;
    height:400px;
  }
  .front {
    transform: translateZ(200px);
  }
  .right {
    transform: rotateY(-270deg) translateX(200px);
  }
  .back {
    transform: translateZ(-200px) rotateY(180deg);
  }
  .left {
    transform: rotateY(270deg) translateX(-200px);
  }
}
@media screen and (max-width:1400px) {
  body {
    font-size:1em;
  }
  .container, .footer.container {
    width:100%;
  }
  .flex-33:not(.leistungItem) {
    width:50%;
  }
  .footer .flex-33 {
    width:33%;
  }
  .container-full > .flexbox, .sliderWrapper {
    padding-left:15px;
    padding-right: 15px;
  }
  .sliderHeadline {
    left:15px;
  }
  #rex-53 {
    width:60%;
  }
  #rex-54 .flexbox {
    justify-content: flex-start;
  }
  .logoSliderWrapper {
    max-width: 100%;
  }
  .logoSliderItem img {
    max-height:130px;
  }
  #team .flex-20 {
    width:25%;
  }
  .teamWrapper:before {
    left:-30px;
  }
  .teamWrapper:after {
    right:20px;
  }
}
@media screen and (max-width:1200px) {
  .mainNav ul {
    width:70%;
  }
  .leistungItem .teaserTxt {
    padding-bottom:0;
  }
  .logoSliderItem img {
    max-height:100px;
  }
  #rex-53 {
    width:75%;
  }
  h1, h2 {
    font-size:4em;
  }
  .redHand {
    font-size:1.6em;
  }
  .teamCube .cubeTxt h3 {
    margin:0;
  }
  .teamCube .cubeTxt p {
    width:100%;
  }
  .teamCube .cubeTxt {
    font-size:0.8em;
  }
  .teamCube .cubeTxt p {
    margin:5px;
  }
  .teamCube {
    width:900px;
  }
  .teamCube .smallCubeWrapper, .teamCube .smallCube div {
    width: 300px;
    height: 300px;
  }
  .teamCube .smallCube {
    width:300px;
    height:300px;
  }
  .teamCube .front {
    transform: translateZ(150px);
  }
  .teamCube .right {
    transform: rotateY(-270deg) translateX(150px);
  }
  .teamCube .back {
    transform: translateZ(-150px) rotateY(180deg);
  }
  .teamCube .left {
    transform: rotateY(270deg) translateX(-150px);
  }

}
@media screen and (max-width:1024px) {
  .fullscreen {
    display:none;
  }
  .tablet {
    display: block;
  }
  h1, h2 {
    font-size:3.6em;
  }
}
@media screen and (max-width:900px) {
  .teamCube {
    width:100%;
  }
  .teamCube .smallCubeWrapper, .teamCube .smallCube div, .smallCubeWrapper, .smallCube div {
    width: 500px;
    height: 500px;
  }
  .teamCube .smallCube, .smallCube {
    width:500px;
    height:500px;
  }
  .front {
    transform: translateZ(250px);
  }
  .right {
    transform: rotateY(-270deg) translateX(250px);
    transform-origin: 100% 0;
  }
  .back {
    transform: translateZ(-250px) rotateY(180deg);
  }
  .left {
    transform: rotateY(270deg) translateX(-250px);
    transform-origin: 0 50%;
  }
  .teamCube .front {
    transform: translateZ(250px);
  }
  .teamCube .right {
    transform: rotateY(-270deg) translateX(250px);
  }
  .teamCube .back {
    transform: translateZ(-250px) rotateY(180deg);
  }
  .teamCube .left {
    transform: rotateY(270deg) translateX(-250px);
  }
  .cubesWrapper .flexbox {
    justify-content: center;
  }
  .cubesWrapper .placeholder {
    display: none;
  }
  .topLeft .front img {
    border-radius: 80px 80px 0 0;
    overflow: hidden;
  }
  .topRight .front img {
    border-radius:0;
    overflow: hidden;
  }
  .bottomLeft .front img {
    border-radius:0 0 0 0px;
    overflow: hidden;
  }
  .bottomRight .front img {
    border-radius:0 0 80px 80px;
    overflow: hidden;
  }
  .footer .flexbox {
    flex-wrap:wrap;
  }
  .footer .flex-33 {
    width:50%;
  }
  .teamWrapper:before, .teamWrapper:after {
    content:'';
  }
}
@media screen and (max-width:768px) {
  .mobile {
    display:block;
  }
  .desktop {
    display:none;
  }
  .header_top {
    position: absolute;
  }
  .topLogo {
    width:50%;
    text-align:right;
  }
  p, li, a {
    /* font-size: 1em; */
  }
  .textImgContent p, .textImgContent h2 {
      text-align:left !important;
  }

  .mobile .email-show:after, .mobile .email-show::before {
    display:none;
  }
  .mobile .mail {
    background:url(/custom/assets/mail.png) center center no-repeat;
    background-size:contain;
    position: relative;
  }
  .mobile .mail a {
    display: block;
    position: absolute;
    top:0;
    left:0;
    bottom:0;
    right:0;
  }
  .rex-yform {
    padding:15px 0;
  }
  .control-label {
    width:30%;
  }
  .contentImg {
    width:100%;
  }
  .flex-33:not(.leistungItem), .flex-50 {
    width:100%;
  }
  .flex-20, .flex-25 {
    width:50%;
  }
  #rex-54 {
      width:15%;
  }
  #rex-54 img {
      width:100%;
  }

  #rex-53 {
      width:85%;
  }
   #rex-179, #rexNoFlex-179 {
       margin-top:-60px;
   }

  .textImgContent h2 {
    margin-bottom:0;
  }
  .leistungItem {
    width:70%;
  }
  .flexbox.bgRed {
    padding:45px 15px;
  }
  #team .flex-20 {
    width:50%;
  }
  .smallVid {
    display: block;
    width:100%;
    height:auto;
  }
  .bigVid {
    display: none;
  }
  #laden {
    padding-bottom:160px;
  }
  #kontakt .flex-50, #kontakt .yform {
    width:100%;
  }
  .navFooter ul.rex-navi1 {
    display:flex;
    justify-content: center;
  }
}
@media screen and (max-width:600px) {

  .form-group {
    flex-wrap:wrap;
  }
  .form-control, .control-label {
    width:100%;
  }
  .control-label {
    padding:5px 0;
        text-align: left;
  }
  .rex-yform .btn {
    margin-left:0;
  }
  h1, h2 {
    font-size: 2.5em;
  }
  .redHand {
    font-size:1.3em;
  }
  h2 .alignTop {
    top:-35px;
  }
  .sliderHeadline h3 {
    font-size:0.6em;
    left:25px;
  }
  .oeDot {
    width:100px;
    height:100px;
    border-radius:100px;
  }
}
@media screen and (max-width:500px) {
  .teamCube .smallCubeWrapper, .teamCube .smallCube div, .smallCubeWrapper, .smallCube div {
    width: 300px;
    height: 300px;
  }
  .teamCube .smallCube, .smallCube {
    width:300px;
    height:300px;
  }
  .teamCube .front, .front {
    transform: translateZ(150px);
  }
  .teamCube .right, .right {
    transform: rotateY(-270deg) translateX(150px);
  }
  .teamCube .back, .back {
    transform: translateZ(-150px) rotateY(180deg);
  }
  .teamCube .left, .left {
    transform: rotateY(270deg) translateX(-150px);
  }
  #team .flex-20 {
    width:100%;
  }
  .leistungItem {
    width:90%;
  }
  #laden .cubeTxt {
    font-size:0.75em;
  }
}
