/*
	Website "viz-p.ch"

	Author: Damian Heini, VIZUAL <dh@vizual.ch>

	Main Styles that brings them all together.
*/
@font-face {
  font-family: "DIN Regular";
  src: url("../Fonts/5591097/9b63158c-0e74-4751-966c-d749c5d31cce.eot?#iefix");
  src: url("../Fonts/5591097/9b63158c-0e74-4751-966c-d749c5d31cce.eot?#iefix") format("eot"), url("../Fonts/5591097/6ceed230-b2b3-4422-b048-4aa11687430a.woff2") format("woff2"), url("../Fonts/5591097/80b0143f-6f0d-4dce-aafd-f3c81b85d177.woff") format("woff"), url("../Fonts/5591097/247437df-66d2-4605-ac03-1be0e07c31a7.ttf") format("truetype");
}
@font-face {
  font-family: "DIN Regular Bold";
  src: url("../Fonts/5591154/9cab3d10-a1a9-4145-ab8a-cde6265a011d.eot?#iefix");
  src: url("../Fonts/5591154/9cab3d10-a1a9-4145-ab8a-cde6265a011d.eot?#iefix") format("eot"), url("../Fonts/5591154/55fa1cf8-baf8-4bf8-9718-b096b1dd231f.woff2") format("woff2"), url("../Fonts/5591154/4cadc2f9-fb32-4b99-b1f2-9ce6d68afbd5.woff") format("woff"), url("../Fonts/5591154/24018d68-3235-4323-9ec0-4a86537b0f30.ttf") format("truetype");
}
*,
*::before,
*::after {
  box-sizing: border-box;
}
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin-block-end: 0;
}
ul[role='list'],
ol[role='list'] {
  list-style: none;
}
body {
  margin: 0;
  min-height: 100vh;
  line-height: 1.5;
}
h1,
h2,
h3,
h4,
button,
input,
label {
  line-height: 1.1;
}
h1,
h2,
h3,
h4 {
  margin-top: 0;
  text-wrap: balance;
}
a:not([class]) {
  text-decoration-skip-ink: auto;
}
img,
picture {
  max-width: 100%;
  display: block;
  border-style: none;
}
input,
button,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
}
textarea:not([rows]) {
  min-height: 10em;
}
:target {
  scroll-margin-block: 5ex;
}
a {
  background-color: transparent;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
figure {
  margin: 0;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}
button,
input {
/* 1 */
  overflow: visible;
}
button,
select {
/* 1 */
  text-transform: none;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}
/*
  General layout settings
*/
html {
  font-family: 'DIN Regular', Verdana, Arial, Helvetica, sans-serif;
  height: 100%;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.25em;
  color: #000;
  background-color: #fff;
  scroll-behavior: smooth;
  overflow-x: hidden;
}
html body {
  height: 100%;
  background-color: transparent !important;
  font-size: 16px;
  line-height: 1.25em;
}
* {
  box-sizing: border-box;
}
a {
  color: #9d9d9c;
  text-decoration: none;
}
a:active,
a:focus,
a:visited {
  color: #9d9d9c;
  outline: none;
}
h1,
h2,
h3 {
  color: #3c3c3b;
  font-family: 'DIN Regular Bold';
  font-weight: normal;
  line-height: 1.25em;
  letter-spacing: 1px;
  text-overflow: ellipsis;
}
h1 {
  font-size: 2.375rem;
  margin: 0.75em 0;
}
h2 {
  font-size: 1.5rem;
  margin: 0 0 0.25em 0;
}
h3 {
  font-size: 1.125rem;
  margin: 0 0 0.25rem 0;
  text-transform: none;
}
h4 {
  margin: 0;
  font-size: 1em;
  letter-spacing: 1px;
}
p {
  text-align: left;
  margin-top: 0;
  margin-block-end: 1em;
  line-height: 1.25em;
  max-width: 48rem;
}
p:last-child {
  margin-bottom: 0;
}
hr {
  border: none;
  margin: 3em 0 2.75em 0;
  height: 1px;
}
hr:before {
  content: ' ';
  display: block;
  height: 1px;
  width: 70%;
  margin: 0 auto;
  background-color: #000;
}
img {
  max-width: 100%;
  width: 100%;
  height: auto;
}
img.lazyload {
  opacity: 0.3;
  -webkit-transition: opacity 0.3s ease-in 0s;
  transition: opacity 0.3s ease-in 0s;
  -webkit-transition: opacity 0.3s ease-in 0s;
}
ul {
  margin: 0 0 1em 1em;
  padding: 0 0 0 1em;
}
strong {
  font-family: 'DIN Regular Bold';
  font-weight: normal;
}
figure {
  margin: 0;
}
.clearfix:before,
.clearfix:after {
  content: " "; /* 1 */
  display: table; /* 2 */
}
.clearfix:after {
  clear: both;
}
table.contenttable {
  font-family: Helvetica, Arial, Verdana, Share, sans-serif;
}
td {
  vertical-align: top;
  padding: 0 0.3em;
  font-size: inherit;
  font-family: 'DIN Regular', Verdana, Arial, Helvetica, sans-serif;
}
td:first-child {
  padding-left: 0;
}
.viz-logo path {
  fill: #878787;
}
#viz-header-container {
  position: fixed;
  width: 100%;
  height: 10.5rem;
  background-color: #fff;
  z-index: 100;
  transition: height 0.4s ease-in-out;
  -webkit-transition: height 0.4s ease-in-out;
}
#viz-header-container.viz-small-header {
  height: 5.25rem;
  box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.4);
}
#viz-header-container #viz-header-inner-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 0 2.5rem;
  height: 100%;
}
#viz-header-container #viz-header-inner-content #viz-header-logo {
  flex: 1 1 80%;
  max-width: 21.875rem;
}
#viz-header-container #viz-header-inner-content #viz-header-logo a {
  display: block;
  max-width: inherit;
}
#viz-header-container #viz-header-inner-content #viz-header-logo a .viz-logo {
  width: 100%;
  height: auto;
  max-width: inherit;
  vertical-align: middle;
}
#viz-wrap-all {
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 100vw;
  min-height: 100vh;
}
#viz-main-content-container {
  flex-grow: 1;
  width: 100%;
  margin: 12.5rem auto 1rem auto;
  max-width: 75rem;
}
.viz-layout-landingpage #viz-main-content-container {
  margin-top: calc(100vh * 0.125 + 10.5rem);
  margin-bottom: 6rem;
}
#viz-main-content {
  padding: 0 2.5rem;
}
#viz-footer-content-wrapper {
  margin-top: 2.5rem;
  padding: 2.5rem;
  background-color: #3c3c3b;
  color: #fff;
}
#viz-footer-content-wrapper h2,
#viz-footer-content-wrapper h3 {
  color: #b2b2b2;
  font-size: 1.875rem;
  text-transform: uppercase;
}
#viz-footer-content-wrapper .viz-footer-content-columns {
  display: flex;
  column-gap: 4rem;
  row-gap: 2rem;
}
.video-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  margin-bottom: 7px;
}
.video-container iframe,
.video-container object,
.video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.spinner {
  margin: 100px auto 0;
  width: 70px;
  text-align: center;
}
.spinner > div {
  width: 18px;
  height: 18px;
  background-color: #333;
  border-radius: 100%;
  display: inline-block;
  -webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
  animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}
.spinner .bounce1 {
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.spinner .bounce2 {
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
@-webkit-keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
  }
}
@-moz-keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@-o-keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes sk-bouncedelay {
  0%, 80%, 100% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
#viz-main-navigation-container {
  position: absolute;
  top: -15.75rem;
  left: calc(100vw + 3rem);
  width: 100%;
  height: 100%;
  color: #fff;
  background-color: #3c3c3b;
  transition: left 250ms ease-out;
  -webkit-transition: left 250ms ease-out;
}
#viz-main-navigation-container #viz-main-navigation {
  height: 100%;
}
#viz-main-navigation-container a {
  color: inherit;
}
#viz-main-navigation-container ul.viz-main-navigation-structure {
  display: flex;
  align-items: center;
  height: 100%;
  margin: 0 auto;
  list-style: none;
  padding: 0 2.5rem 0 16.25rem;
  max-width: 75rem;
  font-size: 1.25rem;
}
#viz-main-navigation-container ul.viz-main-navigation-structure li {
  margin: 0;
  padding: 0;
  list-style: none;
}
#viz-main-navigation-container ul.viz-main-navigation-structure li:after {
  margin: 0 1rem;
  content: '|';
}
#viz-main-navigation-container ul.viz-main-navigation-structure li:last-child:after {
  display: none;
}
#viz-header-meta-navi-container {
  flex: 1 1 20%;
  height: 2.75rem;
}
#viz-header-meta-navi-container ul {
  margin: 0.25rem 0 0 0;
  padding: 0;
  list-style: none;
  display: flex;
  justify-content: flex-end;
}
#viz-header-meta-navi-container ul li {
  margin: 0 1rem 0 0;
  padding: 0;
}
#viz-header-meta-navi-container ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.375rem;
  height: 2.375rem;
  padding: 0.25rem;
  border: 1px solid #878787;
  background-color: #fff;
  transition: background-color 0.3s linear;
  -webkit-transition: background-color 0.3s linear;
}
#viz-header-meta-navi-container ul li a svg {
  fill: #878787;
}
#viz-header-meta-navi-container ul li a svg.viz-mobile-phone-icon {
  height: 100%;
  width: auto;
}
#viz-header-meta-navi-container ul li a svg.viz-mail-icon {
  height: 64%;
  width: 100%;
}
#viz-header-meta-navi-container ul li a svg path {
  fill: #878787;
  stroke-width: 2px;
}
#viz-header-meta-navi-container ul li a:hover {
  background-color: #878787;
}
#viz-header-meta-navi-container ul li a:hover svg path {
  fill: #fff;
}
#viz-header-meta-navi-container ul li:last-child {
  margin-right: 3rem;
}
#viz-mainnavi-button-container {
  height: 2.75rem;
  width: 2.75rem;
  transition: right 600ms ease;
  -webkit-transition: right 600ms ease;
  z-index: 1;
}
#viz-mainnavi-button-container:hover {
  cursor: pointer;
}
#viz-mainnavi-button-container .viz-mainnavi-button-innerwrap {
  display: table;
  height: 2.75rem;
  width: 2.75rem;
  text-align: center;
}
#viz-mainnavi-button-container .viz-mainnavi-button-innerwrap .navi-button-line-wrapper {
  display: table-cell;
  padding: 0;
  vertical-align: middle;
}
#viz-mainnavi-button-container .viz-mainnavi-button-innerwrap div.navi-button-line {
  width: 100%;
  height: 6px;
  margin: 0 0 7px 0;
  background-color: #000;
  transition-duration: 0.3s;
  transition-delay: 0s;
}
#viz-mainnavi-button-container .viz-mainnavi-button-innerwrap div.navi-button-line:last-child {
  margin-bottom: 0;
}
.viz-mainnavi-visible #viz-main-navigation-container {
  top: 0;
  left: 0;
}
.viz-mainnavi-visible #viz-mainnavi-button-container .viz-mainnavi-button-innerwrap div.navi-button-line {
  background-color: #fff;
}
.viz-mainnavi-visible #viz-mainnavi-button-container .viz-mainnavi-button-innerwrap div.navi-button-line:nth-child(1) {
  width: 50%;
  transform: translateX(100%) translateY(7px) rotate(45deg);
}
.viz-mainnavi-visible #viz-mainnavi-button-container .viz-mainnavi-button-innerwrap div.navi-button-line:nth-child(2) {
  width: calc(100% - 4px);
}
.viz-mainnavi-visible #viz-mainnavi-button-container .viz-mainnavi-button-innerwrap div.navi-button-line:nth-child(3) {
  width: 50%;
  transform: translateX(100%) translateY(-7px) rotate(-45deg);
}
.viz-cross-line-button {
  position: absolute;
  display: table;
  left: 0.5rem;
  bottom: 0.5rem;
  width: 4rem;
  height: 4rem;
  text-align: center;
  cursor: pointer;
}
.viz-cross-line-button .viz-cross-line-button-line-wrap {
  display: table-cell;
  padding: 0;
  vertical-align: middle;
}
.viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line {
  width: 100%;
  height: 2px;
  background-color: #fff;
  transition: background-color 0.3s linear;
  -webkit-transition: background-color 0.3s linear;
}
.viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line:nth-child(1) {
  animation: crossLine-ani-1-off 0.3s ease-in-out 1 both;
}
.viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line:nth-child(2) {
  transform: translateY(-2px) rotate(90deg);
  animation: crossLine-ani-2-off 0.3s ease-in-out 1 both;
}
.viz-cross-line-button:hover .viz-cross-line-button-line-wrap .viz-cross-line {
  background-color: #3c3c3b;
}
.viz-servicebox-container {
  display: flex;
  flex-wrap: wrap;
  margin-left: -2.5rem;
}
.viz-servicebox-container .viz-service-box {
  flex: 1 0 33%;
  max-width: 33.3%;
  margin-bottom: 2.5rem;
  padding-left: 2.5rem;
  overflow: hidden;
  color: #fff;
}
.viz-servicebox-container .viz-service-box .viz-service-box-content {
  position: relative;
  height: 100%;
  min-height: 18.75rem;
  background-color: #b2b2b2;
}
.viz-servicebox-container .viz-service-box .viz-service-box-content .viz-service-box-header {
  margin-top: 1.25rem;
  font-size: clamp(1.25rem, 2.25vw, 1.75rem);
  padding: 0 0.9rem;
  font-family: 'DIN Regular', Verdana, Arial, Helvetica, sans-serif;
  letter-spacing: 0;
  line-height: 1.25rem;
  text-transform: uppercase;
  color: #fff;
}
.viz-servicebox-container .viz-service-box .viz-service-box-content .viz-service-box-image {
  height: 9.375rem;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
}
.viz-servicebox-container .viz-service-box .viz-service-box-content .viz-service-box-description {
  margin-top: -13.125rem;
  padding: 0 0.9rem 6rem 0.9rem;
  height: 100%;
  min-height: 18.75rem;
  background-color: #878787;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  -webkit-transition: opacity 0.3s ease-in-out;
}
.viz-servicebox-container .viz-service-box .viz-service-box-content .viz-service-box-description .viz-service-box-header {
  padding: 1rem 0 0 0;
  margin-bottom: 1rem;
}
.viz-servicebox-container .viz-service-box .viz-service-box-content .viz-service-box-description .viz-service-box-link {
  display: none;
  position: absolute;
  padding-right: 1.75em;
  right: 0.5rem;
  bottom: 2.5rem;
  color: #fff;
  font-size: 1.125rem;
  font-family: 'DIN Regular Bold';
  font-weight: normal;
  background-repeat: no-repeat;
  background-position: right center;
  background-size: 1.25em;
  background-image: url("../Images/more_icon.svg");
}
.viz-servicebox-container .viz-service-box.active .viz-service-box-content .viz-service-box-header {
  visibility: hidden;
}
.viz-servicebox-container .viz-service-box.active .viz-service-box-content .viz-service-box-description {
  opacity: 1;
  animation: scale-up-hor-left 0.4s cubic-bezier(0.39, 0.575, 0.565, 1) both;
}
.viz-servicebox-container .viz-service-box.active .viz-service-box-content .viz-service-box-description .viz-service-box-header {
  visibility: visible;
}
.viz-servicebox-container .viz-service-box.active .viz-service-box-content .viz-service-box-description .viz-service-box-link {
  display: block;
}
.viz-servicebox-container .viz-service-box.active .viz-service-box-content .viz-cross-line-button {
  left: 0.9rem;
  bottom: 0.9rem;
}
.viz-servicebox-container .viz-service-box.active .viz-service-box-content .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line {
  background-color: #000;
}
.viz-servicebox-container .viz-service-box.active .viz-service-box-content .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line:nth-child(1) {
  animation: crossLine-ani-1-on 0.3s ease-in-out 1 both;
}
.viz-servicebox-container .viz-service-box.active .viz-service-box-content .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line:nth-child(2) {
  animation: crossLine-ani-2-on 0.3s ease-in-out 1 both;
}
.viz-project-filter.category-list,
#viz-contact-inline-navi.category-list,
.viz-project-filter.content-list,
#viz-contact-inline-navi.content-list {
  color: #878787;
}
.viz-project-filter.category-list ul,
#viz-contact-inline-navi.category-list ul,
.viz-project-filter.content-list ul,
#viz-contact-inline-navi.content-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.viz-project-filter.category-list ul li,
#viz-contact-inline-navi.category-list ul li,
.viz-project-filter.content-list ul li,
#viz-contact-inline-navi.content-list ul li {
  margin: 0;
  padding: 0.3em 0;
}
.viz-project-filter.category-list ul li a,
#viz-contact-inline-navi.category-list ul li a,
.viz-project-filter.content-list ul li a,
#viz-contact-inline-navi.content-list ul li a {
  display: block;
}
.viz-project-filter.category-list ul li a:before,
#viz-contact-inline-navi.category-list ul li a:before,
.viz-project-filter.content-list ul li a:before,
#viz-contact-inline-navi.content-list ul li a:before {
  display: inline-block;
  width: 0.75rem;
  content: '–';
  margin-right: 0.125em;
}
.viz-project-filter.category-list ul li a:hover:before,
#viz-contact-inline-navi.category-list ul li a:hover:before,
.viz-project-filter.content-list ul li a:hover:before,
#viz-contact-inline-navi.content-list ul li a:hover:before {
  content: '+';
}
.viz-project-filter.category-list ul li a.active,
#viz-contact-inline-navi.category-list ul li a.active,
.viz-project-filter.content-list ul li a.active,
#viz-contact-inline-navi.content-list ul li a.active {
  color: #000;
}
.viz-project-filter.category-list ul li a.active:before,
#viz-contact-inline-navi.category-list ul li a.active:before,
.viz-project-filter.content-list ul li a.active:before,
#viz-contact-inline-navi.content-list ul li a.active:before {
  content: '+';
}
.viz-project-filter.category-list .viz-project-filter-title,
#viz-contact-inline-navi.category-list .viz-project-filter-title,
.viz-project-filter.content-list .viz-project-filter-title,
#viz-contact-inline-navi.content-list .viz-project-filter-title {
  margin-bottom: 0.5em;
  color: #3c3c3b;
  text-transform: uppercase;
  font-size: 1.125rem;
}
.viz-project-filter.category-list .viz-project-filter-more-bu-container,
#viz-contact-inline-navi.category-list .viz-project-filter-more-bu-container,
.viz-project-filter.content-list .viz-project-filter-more-bu-container,
#viz-contact-inline-navi.content-list .viz-project-filter-more-bu-container {
  display: none;
  width: 1em;
  height: 1em;
}
.viz-project-filter.category-list .viz-project-filter-more-bu-container .viz-cross-line-button,
#viz-contact-inline-navi.category-list .viz-project-filter-more-bu-container .viz-cross-line-button,
.viz-project-filter.content-list .viz-project-filter-more-bu-container .viz-cross-line-button,
#viz-contact-inline-navi.content-list .viz-project-filter-more-bu-container .viz-cross-line-button {
  position: relative;
  left: 0.25hrem;
  top: 0.2rem;
  width: inherit;
  height: inherit;
}
.viz-project-filter.category-list .viz-project-filter-more-bu-container .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line,
#viz-contact-inline-navi.category-list .viz-project-filter-more-bu-container .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line,
.viz-project-filter.content-list .viz-project-filter-more-bu-container .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line,
#viz-contact-inline-navi.content-list .viz-project-filter-more-bu-container .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line {
  background-color: #3c3c3b;
}
.viz-project-list-container {
  display: flex;
}
.viz-project-list-container .viz-project-filter {
  flex: 0 0 12.75rem;
  margin-right: 1rem;
}
.viz-project-list-container .viz-project-list-preview {
  flex: 0 1 100%;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list {
  list-style: none;
  margin: 0;
  padding: 0;
  color: #000;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list .grid-sizer {
  width: 50%;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container {
  position: relative;
  display: block;
  margin-bottom: 4rem;
  padding-bottom: 4.625rem;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content {
  overflow: visible;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content .viz-project-lead-image img {
  height: auto;
  transition: transform 0.3s ease-in-out;
  -webkit-transition: transform 0.3s ease-in-out;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-1 {
  width: 405px;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-2 {
  width: 315px;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-3 {
  width: 270px;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content .viz-project-name {
  font-size: 2rem;
  font-family: 'DIN Regular Bold';
  font-weight: normal;
  color: #3c3c3b;
  line-height: 1.125em;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content .viz-cross-line-button {
  left: 0;
  width: 3.125rem;
  height: 3.125rem;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line {
  background-color: #3c3c3b;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container:hover,
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container:active,
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container:focus {
  cursor: pointer;
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container:hover .viz-project-lead-image img,
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container:active .viz-project-lead-image img,
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container:focus .viz-project-lead-image img {
  transform: scale(1.02);
}
.viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container:hover {
  cursor: pointer;
}
.viz-project-details-container {
  position: relative;
}
.viz-project-details-container .viz-project-details-navi-container {
  position: absolute;
  top: 0.25rem;
  right: 0;
  margin-right: -0.5rem;
  display: flex;
  align-items: center;
}
.viz-project-details-container .viz-project-details-navi-container a {
  display: inline-block;
}
.viz-project-details-container .viz-project-details-navi-container a:nth-child(2) {
  margin: 0 1rem;
}
.viz-project-details-container .viz-project-details-navi-container .viz-project-navi-prev-next {
  width: 2rem;
  height: 2rem;
}
.viz-project-details-container .viz-project-details-navi-container .viz-project-navi-prev-next path {
  stroke-width: 3px;
  stroke: #878787;
}
.viz-project-details-container .viz-project-details-navi-container .viz-cross-line-button {
  position: relative;
  left: auto;
  top: 0;
  width: 2.626rem;
  height: 2.626rem;
}
.viz-project-details-container .viz-project-details-navi-container .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line {
  background-color: #3c3c3b;
}
.viz-project-details-container .viz-project-details-navi-container .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
  animation: none;
}
.viz-project-details-container .viz-project-details-navi-container .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line:nth-child(2) {
  transform: translateY(5px) rotate(135deg);
  animation: none;
}
.viz-project-details-container .viz-project-details-content {
  position: relative;
}
.viz-project-details-container .viz-project-details-content h1,
.viz-project-details-container .viz-project-details-content h2,
.viz-project-details-container .viz-project-details-content h3 {
  color: #000;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-project-name {
  margin-top: 0;
  max-width: calc(100% - 10.504rem);
}
.viz-project-details-container .viz-project-details-content .viz-project-details-section.order-change {
  display: flex;
  flex-wrap: wrap;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-section.order-change .viz-project-details-main-image,
.viz-project-details-container .viz-project-details-content .viz-project-details-section.order-change .viz-project-details-info {
  flex: 0 0 100%;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-main-image {
  margin-bottom: 2rem;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-main-image img {
  display: block;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info {
  display: flex;
  margin-bottom: 2rem;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-image {
  flex: 0 0 50%;
  margin-top: 3.125rem;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container {
  flex: 0 0 50%;
  padding: 3rem 1rem 3rem 6rem;
  background-color: #878787;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-expand-header {
  position: relative;
  display: none;
  text-transform: uppercase;
  font-family: 'DIN Regular Bold';
  font-weight: normal;
  color: #fff;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-expand-header .viz-cross-line-button {
  left: auto;
  bottom: 0;
  right: 0;
  top: -0.3rem;
  width: 2rem;
  height: 2rem;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr {
  font-size: 1.125rem;
  line-height: 1.5em;
  color: #fff;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr a {
  color: #000;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr ul li {
  margin: 0;
  padding: 0.75em 0;
  border-bottom: 2px solid #fff;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr ul li:last-child {
  border-bottom: none;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr h2 {
  font-size: inherit;
  margin-bottom: 0;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #000;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr .info-descr-text-format {
  display: block;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr .info-descr-text-format p {
  line-height: inherit;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr .info-descr-text-format p:first-child {
  margin-top: 0;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr .info-descr-text-format p:last-child {
  margin-bottom: 0;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-images {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-left: -0.75rem;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-images .viz-project-details-image {
  padding: 0 0 0.75rem 0.75rem;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-images .viz-project-details-image img {
  display: block;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-images .viz-project-details-image.image-layout-col-50 {
  flex: 1 1 50%;
}
.viz-project-details-container .viz-project-details-content .viz-project-details-images .viz-project-details-image.image-layout-col-75 {
  flex: 1 1 100%;
  max-width: 75%;
}
.viz-project-list-header {
  margin-left: 13.75rem;
}
.viz-project-list-container .viz-project-filter {
  flex: 0 0 12.75rem;
  margin-right: 1rem;
}
.viz-project-list-container .viz-project-list-overtime {
  flex: 0 1 100%;
}
.viz-project-list-container .viz-project-list-overtime .viz-project-list-category-name {
  margin-bottom: 1.5rem;
  font-size: 1.125rem;
  font-family: 'DIN Regular Bold';
  font-weight: normal;
  text-transform: uppercase;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container {
  display: flex;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  padding: 0.75rem 0 0.6rem 0;
  border-bottom: 2px solid #3c3c3b;
  color: #3c3c3b;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container:first-child {
  padding-top: 0;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container a {
  color: inherit;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container .viz-project-realisation-date {
  flex: 0 0 7rem;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container .viz-project-name {
  flex: 0 1 90%;
  padding-right: 1.5em;
  font-family: 'DIN Regular', Verdana, Arial, Helvetica, sans-serif;
  font-weight: normal;
  font-size: inherit;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container .viz-project-more-icon {
  flex: 1 1 auto;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container .viz-project-more-icon a {
  display: block;
  width: 1.25rem;
  height: 1.25rem;
  overflow: hidden;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container .viz-project-more-icon a svg {
  width: 100%;
  height: auto;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container .viz-project-more-icon a svg path {
  stroke: #878787;
  stroke-width: 4px;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container .viz-project-more-icon a svg .horizontal-line {
  visibility: hidden;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container:hover {
  cursor: pointer;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container:hover .viz-project-realisation-date,
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container:hover .viz-project-name {
  color: #000;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container.active {
  border-bottom: none;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container.active .viz-project-realisation-date,
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container.active .viz-project-name {
  font-family: 'DIN Regular Bold';
  font-weight: normal;
  color: #000;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container.active .viz-project-more-icon a svg .arrow-down {
  visibility: hidden;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list li.viz-project-list-project-container.active .viz-project-more-icon a svg .horizontal-line {
  visibility: visible;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list .viz-project-list-overtime-details-container {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s ease-in-out;
  -webkit-transition: max-height 0.5s ease-in-out;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list .viz-project-list-overtime-details-container .viz-project-list-overtime-details-content .viz-project-details-info-descr {
  padding: 1rem 0 2rem 7rem;
  border-bottom: 2px solid #3c3c3b;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list .viz-project-list-overtime-details-container .viz-project-list-overtime-details-content .viz-project-details-info-descr ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list .viz-project-list-overtime-details-container .viz-project-list-overtime-details-content .viz-project-details-info-descr ul li {
  padding: 0;
  margin: 0 0 1.5em 0;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list .viz-project-list-overtime-details-container .viz-project-list-overtime-details-content .viz-project-details-info-descr ul li:last-child {
  margin-bottom: 0;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list .viz-project-list-overtime-details-container .viz-project-list-overtime-details-content .viz-project-details-info-descr .info-title {
  font-family: 'DIN Regular Bold';
  font-weight: normal;
}
.viz-project-list-container .viz-project-list-overtime ul.viz-project-list .viz-project-list-overtime-details-container.active {
  max-height: 40rem;
}
#viz-contact-content #viz-contact-team {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem;
  margin-bottom: 3rem;
/**
      Contact box
    */
}
#viz-contact-content #viz-contact-team .viz-contact-box {
  flex: 0 0 calc(33.333% - 1.666666666666667rem);
  max-width: 33.333%;
  overflow: hidden;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper {
  position: relative;
  height: 100%;
  min-height: 28rem;
  background-color: #b2b2b2;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-essentials {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  padding: 0.9rem 0.9rem 0.75rem 0.9rem;
  background-color: #b2b2b2;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-essentials .viz-contact-section-header {
  text-transform: uppercase;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-essentials .viz-contact-box-job-title,
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-essentials .viz-contact-box-name {
  margin-top: 0.5rem;
  font-size: clamp(1.25rem, 2.25vw, 1.5rem);
  font-family: 'DIN Regular', Verdana, Arial, Helvetica, sans-serif;
  letter-spacing: 0;
  line-height: 1;
  color: #fff;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-essentials .viz-contact-box-job-title {
  margin: 0.25rem 0;
  font-size: clamp(1rem, 2.25vw, 1.25rem);
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-essentials .viz-contact-box-email {
  margin-top: 0.75rem;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-essentials .viz-contact-box-email a {
  color: #fff;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-details-link {
  position: absolute;
  bottom: 0.5rem;
  right: 0.5rem;
  display: block;
  width: 2rem;
  height: 2rem;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-details-link .viz-cross-line-button {
  position: relative;
  left: auto;
  bottom: 0;
  right: 0;
  width: 2rem;
  height: 2rem;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-description-container {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease-in-out;
  -webkit-transition: max-height 0.4s ease-in-out;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description {
  padding: 1rem 0 2rem 9.75rem;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description ul li {
  display: flex;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description ul li strong {
  flex: 1 1 6rem;
}
#viz-contact-content #viz-contact-team .viz-contact-box .viz-contact-box-wrapper .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description ul li ul {
  flex: 1 1 calc(100% - 6rem);
}
#viz-contact-content #viz-contact-team .viz-contact-box.active .viz-contact-box-description-container {
  max-height: 20rem;
}
#viz-contact-content #viz-contact-team .viz-contact-box.active .viz-contact-details-link .viz-cross-line-button .viz-cross-line:nth-child(1) {
  animation: crossLine-ani-1-on 0.3s ease-in-out 1 both;
}
#viz-contact-content #viz-contact-team .viz-contact-box.active .viz-contact-details-link .viz-cross-line-button .viz-cross-line:nth-child(2) {
  animation: crossLine-ani-2-on 0.3s ease-in-out 1 both;
}
.viz-contact-lightbox-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0,0,0,0.8);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
  -webkit-transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out;
}
.viz-contact-lightbox-overlay.active {
  opacity: 1;
  visibility: visible;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content {
  position: relative;
  background-color: #fff;
  max-width: 90%;
  max-height: 90%;
  overflow-y: auto;
  padding: 2rem 2rem 2rem 2rem;
  box-shadow: 0 4px 20px rgba(0,0,0,0.5);
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-lightbox-close {
  position: absolute;
  top: 0.5rem;
  right: 0.75rem;
  cursor: pointer;
  z-index: 10000;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-lightbox-close .viz-cross-line-button {
  position: relative;
  left: auto;
  bottom: auto;
  width: 2rem;
  height: 2rem;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-lightbox-close .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line {
  background-color: #3c3c3b;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-lightbox-close .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
  animation: none;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-lightbox-close .viz-cross-line-button .viz-cross-line-button-line-wrap .viz-cross-line:nth-child(2) {
  transform: translateY(5px) rotate(135deg);
  animation: none;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-lightbox-close .viz-cross-line-button:hover .viz-cross-line-button-line-wrap .viz-cross-line {
  background-color: #878787;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-box-description-container {
  max-height: none !important;
  overflow: visible;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description {
  padding: 1rem 0;
  color: #3c3c3b;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description h3 {
  margin-bottom: 2rem;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description ul li {
  display: flex;
  column-gap: 1.5rem;
  margin-bottom: 1em;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description ul li strong {
  flex: 0 0 6rem;
}
.viz-contact-lightbox-overlay .viz-contact-lightbox-content .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description ul li ul {
  flex: 1 1 auto;
}
.viz-image-and-text-container-wrapper {
  margin-bottom: 3rem;
}
.viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container {
  display: flex;
  min-height: 4rem;
}
.viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-image {
  flex: 0 1 50%;
  padding-top: 2.5rem;
}
.viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-text {
  flex: 1 0 50%;
  padding: 3rem 1rem 3rem 6rem;
  font-size: 1.125rem;
  line-height: 1.5em;
  color: #fff;
  background-color: #878787;
  margin-right: calc((50vw) * (-1));
}
.viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-text .viz-image-and-text-text-wrapper {
  width: 100%;
  max-width: 25.25rem;
}
.viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-text header h1,
.viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-text header h2 {
  margin-top: 0;
  color: #fff;
}
.viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-text a {
  color: #000;
}
.viz-google-maps-container {
  margin-top: 3rem;
}
.viz-google-maps {
  width: 100%;
  height: 400px;
}
form a {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-wrap: break-word;
  word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}
legend {
  margin: 0 0 1em 0;
}
fieldset {
  margin: 0;
  padding: 0;
  border: none;
}
input,
input:focus,
select {
  padding: 0.6em;
  margin-top: 0.25em;
  border: none;
  color: inherit;
  background-color: $themeMainButtonBgColor;
  border-radius: $defaultBoxesBorderRadius;
  width: 100%;
}
input[type="submit"],
input[type="reset"] {
  width: auto;
  padding: 0.6em 3em 0.6em 3em;
  margin-top: 0.75em;
  border: none;
  color: #fff;
  text-align: center;
  background-color: $themeColor_1Blue;
  border-radius: $defaultBoxesBorderRadius;
}
input[type="submit"]:hover,
input[type="reset"]:hover {
  background-color: $themeColor_1Green;
}
.powermail_select_wrap {
  padding: 0;
  margin: 0;
  width: 100%;
  overflow: hidden;
  background: url("../Images/Arrow-down-blue.svg");
  background-size: 1.5rem;
  background-repeat: no-repeat;
  background-position: 97% 0.5rem;
  background-color: $themeMainButtonBgColor;
  border-radius: $defaultBoxesBorderRadius;
  cursor: pointer;
}
.powermail_select_wrap select {
  margin: 0;
}
select {
  -webkit-appearance: none;
  width: calc(100% + 3rem);
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
  background: transparent;
}
textarea {
  padding: 0.6em;
  margin-top: 0.25em;
  border: none;
  color: inherit;
  background-color: $themeMainButtonBgColor;
  border-radius: $defaultBoxesBorderRadius;
  width: 100%;
}
label,
.powermail_label {
  display: block;
  margin: 0;
  padding-top: 0.25em;
}
:focus {
  outline: none;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type=checkbox],
input[type=radio] {
  position: relative;
  display: inline-block;
  line-height: 2rem;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  float: left;
  border: 0;
  clip: rect(0 0 0 0);
  height: 26px;
  width: 26px;
  margin: 0 -2rem -2rem 0;
  overflow: hidden;
  padding: 0;
  opacity: 0.001;
  margin-top: -6px;
  z-index: 11;
}
.checkbox-checkmark {
  display: inline-block;
  position: relative;
  vertical-align: top;
  margin-top: -1px;
  margin-right: 0.5em;
  width: 19px;
  height: 19px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  z-index: 10;
}
.checkbox-checkmark:before {
  content: '';
  position: absolute;
  width: 19px;
  height: 19px;
  background: transparent;
  border-radius: 0;
  border: 2px solid #b2b2b2;
  cursor: pointer;
}
.checkbox-checkmark:after {
  opacity: 0;
  content: '';
  position: absolute;
  width: 11px;
  height: 11px;
  margin: 4px 0 0 4px;
  background: #b2b2b2;
  border-radius: 0;
}
.powermail_fieldwrap_type_radio .checkbox-checkmark:before {
  border-radius: 50%;
}
.powermail_fieldwrap_type_radio .checkbox-checkmark:after {
  border-radius: 50%;
}
:checked + .checkbox-checkmark:after {
  opacity: 1;
}
input[type=range] {
  padding: 0;
  width: 100%;
  height: 3.5rem;
  background: none;
  outline: none;
  -webkit-appearance: none;
  appearance: none;
}
input[type=range]:focus {
  outline: none;
}
.powermail_fieldwrap_type_check label,
.powermail_fieldwrap_type_radio label {
  display: inline-block;
  position: relative;
  clear: none;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
.powermail_fieldwrap_type_check .powermail_field,
.powermail_fieldwrap_type_radio .powermail_field {
  margin-left: 12em;
}
.powermail_fieldwrap_type_check .powermail_field p,
.powermail_fieldwrap_type_radio .powermail_field p {
  width: 100%;
}
.powermail_fieldwrap_type_check .checkbox {
  height: 2em;
}
.powermail_fieldwrap_type_check .checkbox label {
  width: auto;
  max-width: 19em;
  margin-right: 1em;
}
.powermail_fieldwrap_type_check.layout1 .checkbox {
  flex: 0 0 100% !important;
  height: auto;
  min-height: 2em;
}
.powermail_fieldwrap_type_check.layout1 .checkbox label {
  width: auto;
  max-width: 100%;
  margin-right: 1em;
  white-space: normal;
}
.powermail_fieldwrap_type_radio .radio {
  height: 2em;
}
.powermail_fieldwrap_type_radio .radio label {
  width: auto;
  max-width: 16em;
  margin-right: 1em;
}
.powermail_fieldwrap_type_radio.layout1 .radio {
  flex: 0 0 100% !important;
  height: auto;
  min-height: 2em;
  margin-bottom: 0.5em;
}
.powermail_fieldwrap_type_radio.layout1 .radio label {
  width: auto;
  max-width: 100%;
  margin-right: 1em;
  white-space: normal;
}
.powermail_fieldwrap_type_check .powermail_field,
.powermail_fieldwrap_type_radio .powermail_field {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.powermail_fieldwrap_type_check .powermail_field .checkbox,
.powermail_fieldwrap_type_radio .powermail_field .checkbox,
.powermail_fieldwrap_type_check .powermail_field .radio,
.powermail_fieldwrap_type_radio .powermail_field .radio {
  flex: 0 0 20em;
}
.powermail_fieldwrap_submit,
.powermail_fieldwrap_reset {
  display: inline-block;
}
.powermail_fieldwrap_reset input[type="reset"] {
  margin-left: 2em;
}
.tx-powermail h3,
.powermail_legend {
  display: none;
}
.powermail_fieldwrap_text {
  margin-top: 0.75em;
}
.parsley-errors-list {
  padding: 0;
  margin: 0 0 0 12em;
  list-style: none;
}
.parsley-errors-list .parsley-required {
  font-size: 0.9em;
  color: #f00;
}
.mandatory {
  color: #f00;
}
.powermail_fieldwrap {
  padding: 0 0 0.75em;
}
.powermail_fieldwrap.nolabel {
  margin-top: -0.75em;
}
.powermail_fieldwrap.nolabel label,
.powermail_fieldwrap.nolabel .powermail_label {
  visibility: hidden;
  width: 8.2em;
  padding-top: 0;
}
.powermail_fieldwrap.nolabel .powermail_select_wrap {
  width: 80%;
  background-position: 99% 0.7em;
}
.powermail_fieldwrap.nolabel .powermail_select {
  font-family: Helvetica, Arial, Verdana, Share, sans-serif;
  padding-left: 0;
  width: 110%;
  color: #f00;
}
.powermail_fieldwrap.nolabel .radio label,
.powermail_fieldwrap.nolabel .checkbox label {
  visibility: visible;
}
.powermail_fieldwrap.complete-label-hide label,
.powermail_fieldwrap.complete-label-hide .powermail_label {
  display: none;
}
.powermail_fieldwrap.complete-label-hide .powermail_field {
  margin-left: 0;
}
.powermail_fieldwrap.complete-label-hide .radio label,
.powermail_fieldwrap.complete-label-hide .checkbox label {
  display: inline-block;
}
.powermail_fieldwrap.powermail_fieldwrap_type_check.complete-label-hide-no-flex label,
.powermail_fieldwrap.powermail_fieldwrap_type_radio.complete-label-hide-no-flex label,
.powermail_fieldwrap.powermail_fieldwrap_type_check.complete-label-hide-no-flex .powermail_label,
.powermail_fieldwrap.powermail_fieldwrap_type_radio.complete-label-hide-no-flex .powermail_label {
  display: none;
}
.powermail_fieldwrap.powermail_fieldwrap_type_check.complete-label-hide-no-flex .powermail_field,
.powermail_fieldwrap.powermail_fieldwrap_type_radio.complete-label-hide-no-flex .powermail_field {
  margin-left: 0;
}
.powermail_fieldwrap.powermail_fieldwrap_type_check.complete-label-hide-no-flex .powermail_field,
.powermail_fieldwrap.powermail_fieldwrap_type_radio.complete-label-hide-no-flex .powermail_field {
  display: block;
}
.powermail_fieldwrap.powermail_fieldwrap_type_check.complete-label-hide-no-flex .powermail_field .radio label,
.powermail_fieldwrap.powermail_fieldwrap_type_radio.complete-label-hide-no-flex .powermail_field .radio label,
.powermail_fieldwrap.powermail_fieldwrap_type_check.complete-label-hide-no-flex .powermail_field .checkbox label,
.powermail_fieldwrap.powermail_fieldwrap_type_radio.complete-label-hide-no-flex .powermail_field .checkbox label {
  display: inline-block;
  max-width: 100%;
  margin-right: 0;
}
.powermail_fieldwrap.break-line-after-label label,
.powermail_fieldwrap.break-line-after-label .powermail_label {
  display: block;
  float: none;
  margin-bottom: 0.5em;
  width: auto;
}
.powermail_fieldwrap.break-line-after-label .powermail_field {
  margin-left: 0;
}
.powermail_fieldwrap_type_text.layout1 {
  font-family: 'DIN Regular Bold';
  font-weight: normal;
}
.powermail_fieldset.layout1 {
  font-family: Helvetica, Arial, Verdana, Share, sans-serif;
}
@-moz-keyframes crossLine-ani-1-on {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}
@-webkit-keyframes crossLine-ani-1-on {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}
@-o-keyframes crossLine-ani-1-on {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}
@keyframes crossLine-ani-1-on {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
}
@-moz-keyframes crossLine-ani-1-off {
  0% {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
@-webkit-keyframes crossLine-ani-1-off {
  0% {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
@-o-keyframes crossLine-ani-1-off {
  0% {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
@keyframes crossLine-ani-1-off {
  0% {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  100% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
}
@-moz-keyframes crossLine-ani-2-on {
  0% {
    -webkit-transform: translateY(-2px) rotate(90deg);
    transform: translateY(-2px) rotate(90deg);
  }
  100% {
    -webkit-transform: translateY(-2px) rotate(135deg);
    transform: translateY(-2px) rotate(135deg);
  }
}
@-webkit-keyframes crossLine-ani-2-on {
  0% {
    -webkit-transform: translateY(-2px) rotate(90deg);
    transform: translateY(-2px) rotate(90deg);
  }
  100% {
    -webkit-transform: translateY(-2px) rotate(135deg);
    transform: translateY(-2px) rotate(135deg);
  }
}
@-o-keyframes crossLine-ani-2-on {
  0% {
    -webkit-transform: translateY(-2px) rotate(90deg);
    transform: translateY(-2px) rotate(90deg);
  }
  100% {
    -webkit-transform: translateY(-2px) rotate(135deg);
    transform: translateY(-2px) rotate(135deg);
  }
}
@keyframes crossLine-ani-2-on {
  0% {
    -webkit-transform: translateY(-2px) rotate(90deg);
    transform: translateY(-2px) rotate(90deg);
  }
  100% {
    -webkit-transform: translateY(-2px) rotate(135deg);
    transform: translateY(-2px) rotate(135deg);
  }
}
@-moz-keyframes crossLine-ani-2-off {
  0% {
    -webkit-transform: translateY(-2px) rotate(135deg);
    transform: translateY(-2px) rotate(135deg);
  }
  100% {
    -webkit-transform: translateY(-2px) rotate(90deg);
    transform: translateY(-2px) rotate(90deg);
  }
}
@-webkit-keyframes crossLine-ani-2-off {
  0% {
    -webkit-transform: translateY(-2px) rotate(135deg);
    transform: translateY(-2px) rotate(135deg);
  }
  100% {
    -webkit-transform: translateY(-2px) rotate(90deg);
    transform: translateY(-2px) rotate(90deg);
  }
}
@-o-keyframes crossLine-ani-2-off {
  0% {
    -webkit-transform: translateY(-2px) rotate(135deg);
    transform: translateY(-2px) rotate(135deg);
  }
  100% {
    -webkit-transform: translateY(-2px) rotate(90deg);
    transform: translateY(-2px) rotate(90deg);
  }
}
@keyframes crossLine-ani-2-off {
  0% {
    -webkit-transform: translateY(-2px) rotate(135deg);
    transform: translateY(-2px) rotate(135deg);
  }
  100% {
    -webkit-transform: translateY(-2px) rotate(90deg);
    transform: translateY(-2px) rotate(90deg);
  }
}
@-moz-keyframes scale-up-hover {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}
@-webkit-keyframes scale-up-hover {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}
@-o-keyframes scale-up-hover {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}
@keyframes scale-up-hover {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
  100% {
    -webkit-transform: scale(1.2);
    transform: scale(1.2);
  }
}
@-moz-keyframes scale-up-hor-left {
  0% {
    -webkit-transform: scaleX(0.2);
    transform: scaleX(0.2);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
  }
  100% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
  }
}
@-webkit-keyframes scale-up-hor-left {
  0% {
    -webkit-transform: scaleX(0.2);
    transform: scaleX(0.2);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
  }
  100% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
  }
}
@-o-keyframes scale-up-hor-left {
  0% {
    -webkit-transform: scaleX(0.2);
    transform: scaleX(0.2);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
  }
  100% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
  }
}
@keyframes scale-up-hor-left {
  0% {
    -webkit-transform: scaleX(0.2);
    transform: scaleX(0.2);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
  }
  100% {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: 0% 0%;
    transform-origin: 0% 0%;
  }
}
p.highlight-big {
  font-size: 1.625rem;
  color: $themeColor_1Blue;
  font-family: 'DIN Regular Bold';
  font-weight: normal;
  line-height: 1em;
}
.land-link-readmore {
  text-align: right;
}
.land-link-readmore a {
  display: inline-block;
  padding: 0.5rem;
  background-color: $themeColor_1Blue;
  border-radius: $defaultBoxesBorderRadius;
  color: #fff;
  text-decoration: none;
}
.land-link-readmore a.download {
  padding-right: 0.5rem;
  line-height: inherit;
  background-image: none;
}
@media (max-width: 1200px) {
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-1 {
    width: calc(100vw * 0.0009 * 405);
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-2 {
    width: calc(100vw * 0.0009 * 315);
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-3 {
    width: calc(100vw * 0.0009 * 270);
  }
}
@media (max-width: 1100px) {
  #viz-main-navi-container ul.viz-main-navi-content {
    padding-left: 2.5rem;
  }
  .viz-servicebox-container .viz-service-box {
    flex: 1 0 33%;
    max-width: 33.3%;
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-1 {
    width: calc(100vw * 0.0008 * 405);
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-2 {
    width: calc(100vw * 0.0008 * 315);
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-3 {
    width: calc(100vw * 0.0008 * 270);
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content .viz-project-name {
    font-size: calc(100vw * 0.001 * 32);
  }
}
@media (max-width: 900px) {
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-1 {
    width: calc(100vw * 0.00075 * 405);
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-2 {
    width: calc(100vw * 0.00075 * 315);
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-3 {
    width: calc(100vw * 0.00075 * 270);
  }
}
@media (max-width: 800px) {
  html,
  body {
    font-size: 15px;
  }
  #viz-main-content {
    padding: 0 1rem;
  }
  #viz-header-container #viz-header-inner-content {
    padding: 0 1rem;
  }
  #viz-main-navigation-container {
    height: 100vh;
  }
  #viz-main-navigation-container ul.viz-main-navigation-structure {
    margin-top: 8rem;
    padding: 0 1rem;
    flex-wrap: wrap;
    align-items: self-start;
    align-content: flex-start;
    font-size: 2rem;
    line-height: 3em;
  }
  #viz-main-navigation-container ul.viz-main-navigation-structure li {
    flex: 1 0 100%;
    min-width: 100%;
  }
  #viz-main-navigation-container ul.viz-main-navigation-structure li:after {
    display: none;
  }
  #viz-main-navigation-container ul.viz-main-navigation-structure li a {
    display: block;
    text-align: center;
  }
  .viz-servicebox-container .viz-service-box {
    flex: 1 0 50%;
    max-width: 50%;
  }
  .viz-servicebox-container .viz-service-box .viz-service-box-content .viz-service-box-header {
    font-size: clamp(1.33rem, 4vw, 1.75rem);
    padding: 0 0.9rem;
  }
  .viz-servicebox-container .viz-service-box .viz-service-box-content .viz-service-box-description {
    padding: 0 0.9rem 6rem 0.9rem;
  }
  .viz-servicebox-container .viz-service-box .viz-service-box-content .viz-cross-line-button {
    left: 0.9rem;
    bottom: 0.9rem;
  }
  #viz-contact-content #viz-contact-team .viz-contact-box {
    flex: 0 0 calc(50% - 2.5rem);
    max-width: 50%;
  }
  .viz-project-list-container {
    flex-wrap: wrap;
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-1 {
    width: calc(100vw * 0.001 * 405);
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-2 {
    width: calc(100vw * 0.001 * 315);
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content.viz-lead-image-size-3 {
    width: calc(100vw * 0.001 * 270);
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content .viz-project-name {
    font-size: calc(100vw * 0.00125 * 32);
  }
  .viz-project-list-header {
    margin-left: 0;
  }
  .viz-project-list-container .viz-project-filter {
    display: block;
    margin: 0 auto 2rem auto;
  }
  .viz-project-list-container .viz-project-filter .viz-project-filter-more-bu-container {
    display: inline-block;
  }
  .viz-project-list-container .viz-project-filter .viz-project-filter-categories-container {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-in-out;
    -webkit-transition: max-height 0.4s ease-in-out;
  }
  .viz-project-list-container .viz-project-filter.active .viz-project-filter-categories-container {
    max-height: 40rem;
  }
  .viz-project-list-container .viz-project-filter.active .viz-project-filter-more-bu-container .viz-cross-line-button .viz-cross-line:nth-child(1) {
    animation: crossLine-ani-1-on 0.3s ease-in-out 1 both;
  }
  .viz-project-list-container .viz-project-filter.active .viz-project-filter-more-bu-container .viz-cross-line-button .viz-cross-line:nth-child(2) {
    animation: crossLine-ani-2-on 0.3s ease-in-out 1 both;
  }
  .viz-project-details-container .viz-project-details-navi-container {
    position: relative;
    display: flex;
    justify-content: flex-end;
    margin-bottom: 1rem;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-project-name {
    max-width: 100%;
    font-size: 2rem;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-section.order-change {
    flex-direction: column-reverse;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-info {
    flex-wrap: wrap;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-image {
    flex: 0 0 100%;
    margin-top: 2rem;
    order: 2;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container {
    flex: 0 0 100%;
    padding: 0.75rem 1rem;
    order: 1;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-expand-header {
    display: block;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr {
    width: auto;
    max-width: 100%;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s ease-in-out;
    -webkit-transition: max-height 0.5s ease-in-out;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container .viz-project-details-info-descr ul {
    padding: 1rem 0;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container.active .viz-project-details-info-expand-header .viz-cross-line-button .viz-cross-line:nth-child(1) {
    animation: crossLine-ani-1-on 0.3s ease-in-out 1 both;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container.active .viz-project-details-info-expand-header .viz-cross-line-button .viz-cross-line:nth-child(2) {
    animation: crossLine-ani-2-on 0.3s ease-in-out 1 both;
  }
  .viz-project-details-container .viz-project-details-content .viz-project-details-info .viz-project-details-info-descr-container.active .viz-project-details-info-descr {
    max-height: 40rem;
  }
  #viz-contact-details-container #viz-contact-inline-navi {
    display: none;
  }
  .viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container {
    flex-wrap: wrap;
  }
  .viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-image,
  .viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-text {
    flex: 0 0 100%;
  }
  .viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-image {
    order: 1;
  }
  .viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-text {
    margin: 0;
    padding: 3rem 1rem 3rem 3rem;
  }
}
@media (max-width: 600px) {
  #viz-header-container.viz-small-header {
    height: 7.25rem;
  }
  #viz-header-container #viz-header-inner-content {
    flex-wrap: wrap;
  }
  #viz-header-container #viz-header-inner-content #viz-header-logo {
    flex: 1 0 100%;
    padding-top: 0.25rem;
    min-width: 100%;
    text-align: center;
  }
  #viz-contact-content #viz-contact-team .viz-contact-box {
    flex: 1 0 100%;
    max-width: 20rem;
  }
}
@media (max-width: 480px) {
  .viz-layout-landingpage #viz-main-content-container {
    margin-top: 14.5rem;
  }
  .viz-servicebox-container .viz-service-box {
    flex: 1 0 100%;
    max-width: 100%;
  }
  .viz-project-list-container .viz-project-list-preview ul.viz-project-list li.viz-project-list-project-container .viz-project-list-project-content .viz-project-name {
    font-size: calc(100vw * 0.0014 * 32);
  }
  .viz-project-list-container .viz-project-list-overtime ul.viz-project-list .viz-project-list-overtime-details-container .viz-project-list-overtime-details-content .viz-project-details-info-descr {
    padding-left: 0;
  }
  .viz-image-and-text-container-wrapper .viz-image-and-text-content .viz-image-and-text-container .viz-image-and-text-text {
    padding: 1rem 1.5rem;
  }
  .viz-contact-box .viz-contact-box-essentials {
    flex-wrap: wrap;
  }
  .viz-contact-box .viz-contact-box-essentials .viz-contact-box-name {
    flex: 1 1 50%;
  }
  .viz-contact-box .viz-contact-box-essentials .viz-contact-box-email {
    flex: 0 0 90%;
    padding: 0.5rem 0;
  }
  .viz-contact-box .viz-contact-box-essentials .viz-contact-details-link {
    padding: 0.5rem 0;
  }
  .viz-contact-box .viz-contact-box-description-container .viz-contact-box-description-content .viz-contact-box-description {
    padding: 1rem 0;
  }
  .viz-contact-lightbox-overlay .viz-contact-lightbox-content {
    padding: 2.5rem 1rem 1rem 1rem;
  }
}
@media (max-width: 420px) {
  #viz-contact-content #viz-contact-team .viz-contact-box {
    max-width: 100%;
  }
}
@media (max-width: 320px) {
  .viz-servicebox-container .viz-service-box {
    flex: 1 0 100%;
    max-width: 100%;
  }
}
