/*
* Headlines
* 20px, 28px, 54px, 72px
*/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

html {
  overflow-x: hidden;
  transition: opacity 0.2s; }
  html.overflow-hidden {
    overflow: hidden; }
    html.overflow-hidden body {
      overflow: hidden;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }
  html body {
    max-width: 2560px;
    margin: 0 auto;
    overflow-x: hidden;
    font-family: "ClvText-Light", Gotham, sans-serif;
    font-size: 15px; }
    html body .vc_column-inner .zp_element {
      padding-left: 0;
      padding-right: 0; }
    html body .zp-fix-mail-container {
      position: fixed;
      bottom: 0;
      height: 93px;
      z-index: 3;
      pointer-events: none; }
      html body .zp-fix-mail-container.absolute {
        position: absolute; }
      html body .zp-fix-mail-container.fixed {
        position: fixed; }
      html body .zp-fix-mail-container.top-project {
        top: 587px; }
      html body .zp-fix-mail-container.top-normal {
        top: 107px; }
      @media only screen and (max-width: 1024px) {
        html body .zp-fix-mail-container {
          display: none; } }
      @media only screen and (max-height: 380px) {
        html body .zp-fix-mail-container {
          display: none; } }
      html body .zp-fix-mail-container .zp-fix-mail {
        cursor: pointer;
        font-family: "ZWEIPRO";
        display: inline-block;
        bottom: 0;
        color: #000;
        font-size: 30px;
        height: 93px;
        pointer-events: auto;
        position: relative;
        transition: color .1s;
        left: 9px; }
        html body .zp-fix-mail-container .zp-fix-mail:hover:not(.is-white) .zp-fix-mail-img-close {
          opacity: 0; }
        html body .zp-fix-mail-container .zp-fix-mail:hover:not(.is-white) .zp-fix-mail-img-open {
          opacity: 1; }
        html body .zp-fix-mail-container .zp-fix-mail:hover.is-white .zp-fix-mail-img-close-invert {
          opacity: 0; }
        html body .zp-fix-mail-container .zp-fix-mail:hover.is-white .zp-fix-mail-img-open-invert {
          opacity: 1; }
        html body .zp-fix-mail-container .zp-fix-mail .zp-fix-mail-img-close {
          width: 38px;
          min-width: 38px;
          height: 38px;
          opacity: 1;
          position: absolute;
          left: 23px;
          -webkit-transform: translateY(0);
                  transform: translateY(0);
          -webkit-backface-visibility: hidden;
                  backface-visibility: hidden;
          top: 7px; }
        html body .zp-fix-mail-container .zp-fix-mail .zp-fix-mail-img-close-invert {
          width: 38px;
          min-width: 38px;
          height: 38px;
          opacity: 0;
          position: absolute;
          left: 23px;
          -webkit-transform: translateY(0);
                  transform: translateY(0);
          -webkit-backface-visibility: hidden;
                  backface-visibility: hidden;
          top: 7px; }
        html body .zp-fix-mail-container .zp-fix-mail .zp-fix-mail-img-open {
          width: 38px;
          min-width: 38px;
          height: 38px;
          opacity: 0;
          position: absolute;
          left: 23px;
          -webkit-transform: translateY(0);
                  transform: translateY(0);
          -webkit-backface-visibility: hidden;
                  backface-visibility: hidden;
          top: 7px; }
        html body .zp-fix-mail-container .zp-fix-mail .zp-fix-mail-img-open-invert {
          width: 38px;
          min-width: 38px;
          height: 38px;
          opacity: 0;
          position: absolute;
          left: 23px;
          -webkit-transform: translateY(0);
                  transform: translateY(0);
          -webkit-backface-visibility: hidden;
                  backface-visibility: hidden;
          top: 7px; }
        html body .zp-fix-mail-container .zp-fix-mail.is-white {
          color: #fff !important; }
          html body .zp-fix-mail-container .zp-fix-mail.is-white::before {
            background-color: #fff !important; }
          html body .zp-fix-mail-container .zp-fix-mail.is-white .zp-fix-mail-img-close {
            opacity: 0; }
          html body .zp-fix-mail-container .zp-fix-mail.is-white .zp-fix-mail-img-close-invert {
            opacity: 1; }
          html body .zp-fix-mail-container .zp-fix-mail.is-white .zp-fix-mail-img-open {
            opacity: 0; }
          html body .zp-fix-mail-container .zp-fix-mail.is-white .zp-fix-mail-img-open-invert {
            opacity: 0; }
        html body .zp-fix-mail-container .zp-fix-mail::before {
          content: "";
          position: absolute;
          width: 1px;
          height: 50px;
          background-color: #000;
          left: 42px;
          -webkit-transform: translateX(0);
                  transform: translateX(0);
          bottom: 0;
          transition: background-color .1s, -webkit-transform .25s ease-out 0.08s;
          transition: background-color .1s, transform .25s ease-out 0.08s;
          transition: background-color .1s, transform .25s ease-out 0.08s, -webkit-transform .25s ease-out 0.08s;
          -webkit-backface-visibility: hidden;
                  backface-visibility: hidden;
          -webkit-transform-origin: 50% 51%;
                  transform-origin: 50% 51%; }
  html .zp-page {
    opacity: 1;
    transition: opacity 0.5s; }
  html.zp-ready .zp-page {
    opacity: 1; }
