@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,600");
* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  outline: none;
  font-family: 'Open Sans', serif; }

body {
  direction: ltr;
  font-weight: 300;
  font-size: 16px;
  padding: 0;
  margin: 0; }
  body .title {
    font-family: 'Open Sans', sans-serif;
    font-weight: 600; }
    body .title.wrapper {
      font-size: 42px;
      margin-bottom: 50px; }
      @media (max-width: 800px) {
        body .title.wrapper {
          font-size: 30px;
          text-align: center; } }
      body .title.wrapper:before {
        width: 31px;
        height: 30px;
        display: inline-block;
        content: '';
        margin-right: 20px;
        background-image: url("../images/arrow-to-right.png");
        vertical-align: baseline; }
      body .title.wrapper:after {
        width: 31px;
        height: 30px;
        display: inline-block;
        content: '';
        margin-left: 20px;
        background-image: url("../images/arrow-to-left.png");
        vertical-align: baseline; }
  body .inner-content {
    width: 100%;
    max-width: 1780px;
    margin: auto;
    padding: 0 10px;
    position: relative; }
    @media (max-width: 800px) {
      body .inner-content {
        display: inline-block; } }
  body.home header {
    background-image: url("../images/website_01.jpg") !important; }
  body.home header, body.page-id-13 header {
    height: 100vh !important; }
  body header {
    width: 100%;
    height: 30vh;
    display: inline-block;
    background-size: cover;
    background-position: center;
    position: relative;
    background-image: url("../images/Detailseite_01.jpg"); }
    @media (max-width: 800px) {
      body header {
        background-position: calc(50% - 120px) 50%; } }
    body header .inner-content .logo {
      width: 25vw;
      max-width: 475px;
      min-width: 155px;
      padding: 1vw 2vw;
      background: #335e82;
      display: inline-block;
      float: left;
      position: relative;
      z-index: 10; }
      body header .inner-content .logo img {
        max-width: 100%; }
    body header .inner-content .hamburgers {
      width: 70px;
      height: 70px;
      background: #335e82;
      float: right;
      position: relative;
      z-index: 10;
      margin-top: 50px; }
      @media (max-width: 800px) {
        body header .inner-content .hamburgers {
          margin-top: 0;
          margin-right: -10px; } }
      body header .inner-content .hamburgers .bar1, body header .inner-content .hamburgers .bar2, body header .inner-content .hamburgers .bar3 {
        width: 54px;
        height: 7px;
        background-color: #fff;
        margin: 13px auto;
        transition: 0.4s; }
      body header .inner-content .hamburgers.close .bar1 {
        -webkit-transform: rotate(-45deg) translate(-13px, 15px);
        transform: rotate(-45deg) translate(-13px, 15px); }
      body header .inner-content .hamburgers.close .bar2 {
        opacity: 0; }
      body header .inner-content .hamburgers.close .bar3 {
        -webkit-transform: rotate(45deg) translate(-13px, -15px);
        transform: rotate(45deg) translate(-13px, -15px); }
    body header .inner-content .menu {
      width: 100%;
      max-width: 400px;
      height: auto;
      max-height: 0;
      position: absolute;
      top: 50px;
      right: 10px;
      z-index: 5;
      background: rgba(51, 94, 130, 0.8);
      display: inline-block;
      overflow: hidden;
      transition: max-height 0.50s; }
      @media (max-width: 800px) {
        body header .inner-content .menu {
          top: 0;
          right: 0; }
          body header .inner-content .menu ul {
            padding-top: 60px !important; } }
      body header .inner-content .menu ul {
        width: 100%;
        margin: 0;
        list-style: none;
        padding: 0; }
        body header .inner-content .menu ul li a {
          width: 100%;
          display: inline-block;
          padding: 20px 30px;
          color: #fff;
          font-size: 24px;
          text-decoration: none; }
        body header .inner-content .menu ul li:first-child {
          width: calc(100% - 70px); }
    body header .green-line {
      width: 100%;
      height: 51px;
      text-align: center;
      background: #bfd94f;
      position: absolute;
      left: 0;
      bottom: 0;
      padding-top: 10px;
      display: inline-block; }
      body header .green-line img {
        width: 15vmin;
        max-width: 95px; }
    body header .blue-line {
      width: 100%;
      text-align: center;
      background: #335e82;
      position: absolute;
      left: 0;
      bottom: 0;
      padding-top: 10px;
      display: inline-block;
      color: #fff;
      padding-bottom: 70px; }
  body section.cubes .inner-content ul {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, minmax(250px, 1fr));
    grid-gap: 7vw;
    list-style: none;
    padding: 0; }
    @media (max-width: 800px) {
      body section.cubes .inner-content ul {
        grid-template-columns: 1fr;
        grid-gap: 50px; } }
    body section.cubes .inner-content ul li {
      width: 100%;
      max-width: 762px;
      height: 399px;
      background: #f7f9fc;
      text-align: center;
      padding-top: 24px;
      position: relative; }
      body section.cubes .inner-content ul li img {
        width: 40vmin;
        max-width: 176px;
        margin: 0 auto 40px;
        display: block; }
      body section.cubes .inner-content ul li h3 {
        display: block;
        font-size: 22px; }
      body section.cubes .inner-content ul li small {
        display: block;
        font-size: 16px; }
      body section.cubes .inner-content ul li p {
        width: 100%;
        font-size: 20px;
        position: absolute;
        text-align: center;
        margin: 0;
        bottom: 20px; }
        body section.cubes .inner-content ul li p a {
          color: #bfd94f;
          text-decoration: none; }
  body section.about {
    margin-top: 130px;
    background: #f7f9fc; }
    body section.about .full-width {
      display: grid;
      grid-template-columns: 1fr 1fr; }
      @media (max-width: 800px) {
        body section.about .full-width {
          grid-template-columns: 1fr;
          grid-gap: 50px; }
          body section.about .full-width .picture,
          body section.about .full-width .info {
            max-width: 100% !important;
            padding: 0 10px !important; } }
      body section.about .full-width .picture {
        width: 100%;
        max-width: 50vw;
        float: left; }
        body section.about .full-width .picture img {
          width: 100%; }
      body section.about .full-width .info {
        width: 100%;
        max-width: 50vw;
        float: left;
        padding: 240px 0 0 135px; }
        body section.about .full-width .info .title {
          margin-bottom: 50px; }
        body section.about .full-width .info .text {
          line-height: 40px;
          padding-right: 30px; }
          @media (max-width: 800px) {
            body section.about .full-width .info .text {
              padding-right: 0;
              line-height: 22px; } }
  body section.services {
    margin-top: 130px; }
    body section.services .full-width {
      width: 100%; }
      body section.services .full-width ul {
        padding: 0; }
        body section.services .full-width ul li {
          width: 100%;
          display: inline-block;
          list-style: none; }
          @media (max-width: 1540px) {
            body section.services .full-width ul li .info .title,
            body section.services .full-width ul li .info .text {
              padding-left: 10px; } }
@media (max-width: 1540px) and (max-width: 800px) {
  body section.services .full-width ul li .picture,
  body section.services .full-width ul li .info {
    max-width: 100% !important;
    padding: 0 10px !important; }
    body section.services .full-width ul li .picture .title,
    body section.services .full-width ul li .picture .text,
    body section.services .full-width ul li .info .title,
    body section.services .full-width ul li .info .text {
      padding-left: 0; } }

          body section.services .full-width ul li .picture {
            width: 50%;
            max-width: 50vw;
            float: left; }
            body section.services .full-width ul li .picture img {
              width: 100%; }
          body section.services .full-width ul li .info {
            width: 50%;
            max-width: 760px;
            float: left;
            padding: 35px 0 0 3vw; }
            @media (min-width: 1500px) {
              body section.services .full-width ul li .info {
                padding: 35px 0 0 135px; } }
            body section.services .full-width ul li .info .title {
              font-size: 21px; }
            body section.services .full-width ul li .info .text {
              line-height: 30px;
              font-size: 16px; }
              @media (max-width: 800px) {
                body section.services .full-width ul li .info .text {
                  line-height: normal; } }
            body section.services .full-width ul li .info .box {
              width: 100%;
              max-width: 760px;
              background: #f7f9fc;
              padding: 32px 20px;
              margin-top: 30px;
              font-size: 16px; }
              body section.services .full-width ul li .info .box .title {
                margin-top: 0;
                margin-bottom: 20px; }
                body section.services .full-width ul li .info .box .title:before, body section.services .full-width ul li .info .box .title:after {
                  margin-bottom: -6px; }
          body section.services .full-width ul li:nth-child(even) .info,
          body section.services .full-width ul li:nth-child(even) .picture {
            float: right; }
          body section.services .full-width ul li:nth-child(even) .info {
            padding: 35px 3vw 0 0; }
            @media (min-width: 1500px) {
              body section.services .full-width ul li:nth-child(even) .info {
                padding: 35px 135px 0 0; } }
          @media (max-width: 900px) {
            body section.services .full-width ul li .info,
            body section.services .full-width ul li .picture {
              width: 100%;
              max-width: 100%;
              float: none;
              padding: 35px 10px;
              margin-bottom: 40px; } }
  body section.contact-us .inner-content .title {
    text-align: center;
    margin: 30px 0 100px; }
  body section.contact-us .inner-content .wpcf7-form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 0 10vw;
    margin-bottom: 50px; }
    @media (max-width: 800px) {
      body section.contact-us .inner-content .wpcf7-form {
        grid-template-columns: 1fr;
        grid-gap: 0; } }
    body section.contact-us .inner-content .wpcf7-form .right,
    body section.contact-us .inner-content .wpcf7-form .left {
      width: 100%;
      max-width: 750px; }
      body section.contact-us .inner-content .wpcf7-form .right label,
      body section.contact-us .inner-content .wpcf7-form .left label {
        width: 100%;
        display: inline-block;
        background: #f7f9fc;
        margin-bottom: 50px;
        padding: 5px; }
        body section.contact-us .inner-content .wpcf7-form .right label textarea,
        body section.contact-us .inner-content .wpcf7-form .right label input,
        body section.contact-us .inner-content .wpcf7-form .left label textarea,
        body section.contact-us .inner-content .wpcf7-form .left label input {
          width: 100%;
          height: 70px;
          border: 0;
          background: #f7f9fc;
          padding: 0 10px;
          font-size: 16px; }
        body section.contact-us .inner-content .wpcf7-form .right label textarea,
        body section.contact-us .inner-content .wpcf7-form .left label textarea {
          height: 370px;
          padding: 10px; }
      body section.contact-us .inner-content .wpcf7-form .right .wpcf7-submit,
      body section.contact-us .inner-content .wpcf7-form .left .wpcf7-submit {
        width: 200px;
        height: 50px;
        background: #345e82;
        color: #fff;
        border: 0;
        font-size: 18px;
        cursor: pointer; }
  body section.footer {
    width: 100%;
    min-height: 300px;
    background: #335e82;
    color: white; }
    body section.footer .inner-content .logo {
      width: 25vw;
      max-width: 475px;
      min-width: 155px;
      padding: 1vw 2vw;
      background: #335e82;
      display: inline-block;
      float: left;
      margin: 30px 0; }
      @media (max-width: 800px) {
        body section.footer .inner-content .logo {
          float: none;
          display: block;
          margin: 30px auto; } }
      body section.footer .inner-content .logo img {
        width: 100%;
        max-width: 399px; }
    body section.footer .inner-content .menu {
      float: right;
      margin: 30px 0; }
      @media (max-width: 800px) {
        body section.footer .inner-content .menu {
          float: none;
          margin: auto; } }
      body section.footer .inner-content .menu ul {
        list-style: none;
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        align-items: end;
        padding: 0; }
        @media (max-width: 800px) {
          body section.footer .inner-content .menu ul {
            grid-template-columns: 1fr; } }
        body section.footer .inner-content .menu ul li {
          float: left;
          text-align: center; }
          body section.footer .inner-content .menu ul li a {
            color: white;
            text-decoration: none;
            margin: 0 20px 20px;
            display: inline-block; }
            body section.footer .inner-content .menu ul li a img {
              width: 67px;
              height: 67px;
              display: block;
              margin: 0 auto 40px; }
      body section.footer .inner-content .menu .copyright {
        width: 100%;
        display: block;
        text-align: center;
        font-size: 12px;
        margin-top: 20px; }

/*# sourceMappingURL=style.css.map */
