﻿@import url("https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,500,500i,700,700i,900,900i");
/*Clouds*/
#factory {
  position: absolute;
  top: 295px;
  left: 65px; }

#cloud1 {
  animation: clouds 4s 1s infinite; }

#cloud2 {
  animation: clouds 4s 2s infinite; }

#cloud3 {
  animation: clouds 4s 3s infinite; }

.clouds {
  position: absolute;
  top: 340px;
  opacity: 0; }

/*School*/
#school {
  position: absolute;
  top: 404px;
  left: 220px; }

#school-window1 {
  animation: lights 70s linear 5s infinite; }

#school-window2 {
  animation: lights 90s linear 95s infinite; }

#school-window3 {
  animation: lights 70s linear 47s infinite; }

#school-window5 {
  animation: lights 70s linear 73s infinite; }

#schoolWindow10 {
  animation: lights 70s linear 20s infinite; }

#school-window14 {
  animation: lights 70s linear 25s infinite; }

#school-window15 {
  animation: lights 70s linear 80s infinite; }

#school-window21 {
  animation: lights 70s linear 65s infinite; }

#school-window22 {
  animation: lights 70s linear 42s infinite; }

#school-window23 {
  animation: lights 70s linear 10s infinite; }

#school-window24 {
  animation: lights 70s linear 35s infinite; }

#school-window25 {
  animation: lights 70s linear 100s infinite; }

#school-window26 {
  animation: lights 90s linear 90s infinite; }

/*Animation for school window lightshow*/
#louderLight {
  animation: louderLights 0.5s linear 0.4s infinite; }

/*Elevator*/
#tower {
  position: absolute;
  top: 277px;
  left: 628px; }

#elevator1 {
  animation: elevator1 28s 2s infinite; }

#elevator2 {
  animation: elevator2 28s 0s infinite; }

/*Truck*/
#truck {
  position: absolute;
  top: 442px;
  left: 790px;
  animation: truck 15s linear infinite; }

#crane {
  position: absolute;
  top: 208px;
  left: 749px;
  width: 300px;
  fill: #e1a761; }

#container {
  position: absolute;
  left: 832px;
  top: 443px; }

.plan {
  fill: #212121;
  fill-rule: evenodd;
  position: absolute;
  animation: plan 10s infinite;
  opacity: 0;
  animation-delay: 4s;
  left: 918px;
  top: 440px;
  width: 15px;
  background-color: #C5C0C1; }

#watertank-fluid {
  fill: rgba(0, 38, 108, 0.8);
  animation: watertank-fluid 25s infinite;
  overflow: hidden; }

.watertank-pipe1 {
  fill: #bb3131;
  animation: watertank-pipe 8s infinite; }

.watertank-pipe2 {
  fill: #3c84ae;
  animation: watertank-pipe 5s infinite; }

#watertank {
  position: absolute;
  width: 105px;
  top: 369px;
  left: 390px; }

#car {
  position: absolute;
  left: 767px;
  top: 432px;
  animation: delivery-truck 10s linear infinite;
  fill: #C5C0C1; }

/*svg styles*/
/*replaced "dark" class in _farm.razor with this one so it doesn't get dark by hovering or clicking*/
.brown {
  fill: #6E5F5F; }

.dark {
  fill: #6E5F5F; }

.light {
  fill: #C5C0C1; }

.blue {
  fill: #B4C7E3; }

.orange {
  fill: #F29400; }

.dark-grey {
  fill: #b8b8b8; }

g:hover .blue {
  fill: #809fd8; }

g:hover .dark {
  fill: #534848; }

.selected g .blue {
  fill: #809fd8; }

.selected g .dark {
  fill: #534848; }

.clickable {
  cursor: pointer; }

@keyframes delivery-truck {
  10% {
    left: 762px; }
  40% {
    left: 920px; }
  60% {
    left: 920px;
    opacity: 1; }
  97% {
    left: 1100px;
    opacity: 0; }
  100% {
    opacity: 0; } }

@keyframes plan {
  0% {
    opacity: 0;
    left: 918px;
    top: 440px; }
  5% {
    opacity: 1; }
  30% {
    left: 862px;
    top: 340px;
    width: 35px; }
  34% {
    width: 10px;
    left: 862px;
    top: 455px; }
  40% {
    left: 862px;
    width: 10px;
    top: 455px;
    opacity: 1; }
  70% {
    opacity: 0;
    width: 10px;
    left: 862px;
    top: 455px; }
  80% {
    opacity: 0; }
  100% {
    opacity: 0; } }

@keyframes watertank-fluid {
  10% {
    y: 270px; }
  30% {
    y: 440px; }
  50% {
    y: 612px; }
  70% {
    y: 420px; }
  100% {
    y: 270px; } }

@keyframes watertank-pipe {
  from {
    fill-opacity: 1; }
  to {
    fill-opacity: 0; } }

@keyframes clouds {
  from {
    left: 130px;
    top: 340px;
    opacity: 1; }
  to {
    left: 146px;
    top: 290px;
    opacity: 0; } }

@keyframes louderLights {
  0.1% {
    fill: #FFE8A9; }
  50% {
    fill: #FFE8A9; }
  50.1% {
    fill: #C5C0C1; }
  100% {
    fill: #C5C0C1; } }

@keyframes lights {
  0.1% {
    fill: #FFE8A9; }
  50% {
    fill: #FFE8A9; }
  50.1% {
    fill: #6E5F5F; }
  100% {
    fill: #6E5F5F; } }

@keyframes elevator1 {
  10% {
    y: 182px; }
  20% {
    y: 132px; }
  28% {
    y: 132px; }
  32% {
    y: 148px; }
  42% {
    y: 148px; }
  59% {
    y: 50px; }
  65% {
    y: 50px; }
  82% {
    y: 140px; }
  93% {
    y: 140px; }
  100% {
    y: 182px; } }

@keyframes elevator2 {
  8% {
    y: 182px; }
  27% {
    y: 68px; }
  38% {
    y: 68px; }
  55% {
    y: 168px; }
  64% {
    y: 168px; }
  76% {
    y: 112px; }
  80% {
    y: 112px; }
  85% {
    y: 132px; }
  90% {
    y: 132px; }
  100% {
    y: 182px; } }

@keyframes truck {
  30% {
    left: 790px; }
  80% {
    opacity: 1; }
  100% {
    left: 1090px;
    opacity: 0; } }

#ai-page * {
  font-family: "Helvetica Neue", Arial, sans-serif;
  margin: 0;
  padding: 0; }

#ai-page header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  background: white;
  height: 2.5vmax; }
  #ai-page header .header-content {
    height: 100%;
    display: flex;
    justify-content: start;
    align-items: center;
    padding-left: 2.5vmax; }
    #ai-page header .header-content img {
      height: 100%; }

#ai-page section {
  padding: 1.2vmax 2.4vmax; }
  #ai-page section:last-child .block {
    padding: 3.3vmax 0 3.3vmax 0; }
  #ai-page section .block {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 6.6vmax 0 6.6vmax 0; }
    #ai-page section .block.animated-gradient {
      background-size: 600% 600%;
      -webkit-animation: AnimatedGradient 30s ease infinite;
      -moz-animation: AnimatedGradient 30s ease infinite;
      animation: AnimatedGradient 30s ease infinite; }

@-webkit-keyframes AnimatedGradient {
  0% {
    background-position: 0 50%; }
  50% {
    background-position: 100% 51%; }
  100% {
    background-position: 0 50%; } }

@-moz-keyframes AnimatedGradient {
  0% {
    background-position: 0 50%; }
  50% {
    background-position: 100% 51%; }
  100% {
    background-position: 0 50%; } }

@keyframes AnimatedGradient {
  0% {
    background-position: 0 50%; }
  50% {
    background-position: 100% 51%; }
  100% {
    background-position: 0 50%; } }
    #ai-page section .block .content {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: start;
      max-width: 40%; }
      #ai-page section .block .content h1 {
        font-size: 38px;
        font-style: normal;
        font-weight: 700;
        margin-bottom: 3.5em; }
        #ai-page section .block .content h1:last-child {
          margin-bottom: 0; }
      #ai-page section .block .content h2 {
        font-size: 34px;
        font-style: normal;
        font-weight: 400;
        margin-bottom: 3em; }
        #ai-page section .block .content h2:last-child {
          margin-bottom: 0; }
      #ai-page section .block .content h3 {
        font-size: 20px;
        font-style: normal;
        font-weight: 400;
        margin-bottom: 2.5em; }
      #ai-page section .block .content .img-box {
        display: flex;
        justify-content: center; }
        #ai-page section .block .content .img-box img {
          width: 100%;
          height: auto;
          margin-bottom: 4em; }
      #ai-page section .block .content .overview-grid {
        display: grid;
        color: white;
        grid-template-columns: 50% 50%;
        grid-template-rows: 50% 50%;
        gap: 48px;
        align-self: center; }
        #ai-page section .block .content .overview-grid .panel {
          display: flex;
          flex-direction: column;
          justify-content: start;
          align-items: center;
          height: fit-content;
          gap: 16px; }
          #ai-page section .block .content .overview-grid .panel .title-block {
            display: flex;
            flex-direction: row;
            justify-content: start;
            align-items: start;
            min-height: 50%;
            gap: 16px; }
            #ai-page section .block .content .overview-grid .panel .title-block .icon {
              padding: 8px; }
              #ai-page section .block .content .overview-grid .panel .title-block .icon img {
                height: auto;
                width: auto;
                max-width: 120px;
                max-height: 120px; }
            #ai-page section .block .content .overview-grid .panel .title-block .title-description {
              display: flex;
              flex-direction: column;
              justify-content: space-between;
              align-items: start;
              height: 50%;
              gap: 20px; }
              #ai-page section .block .content .overview-grid .panel .title-block .title-description strong {
                text-transform: uppercase;
                font-size: 28px;
                font-weight: 700;
                white-space: nowrap; }
              #ai-page section .block .content .overview-grid .panel .title-block .title-description p {
                font-size: 20px;
                font-weight: 400; }
          #ai-page section .block .content .overview-grid .panel .small-blocks {
            width: 100%;
            height: fit-content;
            color: #403F41;
            display: flex;
            flex-direction: row;
            justify-content: space-between;
            align-items: start;
            gap: 16px; }
            #ai-page section .block .content .overview-grid .panel .small-blocks .small-block {
              padding: 6% 3%;
              border-radius: 10px; }
              #ai-page section .block .content .overview-grid .panel .small-blocks .small-block strong {
                text-transform: uppercase;
                font-size: 18px;
                font-weight: 700; }
              #ai-page section .block .content .overview-grid .panel .small-blocks .small-block ul {
                margin-top: 1.5em;
                list-style: none;
                font-size: 18px;
                font-weight: 400; }
                #ai-page section .block .content .overview-grid .panel .small-blocks .small-block ul li {
                  margin-bottom: 8px;
                  white-space: nowrap; }
                  #ai-page section .block .content .overview-grid .panel .small-blocks .small-block ul li:last-child {
                    margin-bottom: 0; }
                #ai-page section .block .content .overview-grid .panel .small-blocks .small-block ul li:before {
                  content: "-"; }
              #ai-page section .block .content .overview-grid .panel .small-blocks .small-block.yellow {
                background-color: #FACF46;
                width: 55%;
                height: 100%; }
              #ai-page section .block .content .overview-grid .panel .small-blocks .small-block.blue {
                background-color: #90EAFE;
                width: 45%;
                height: 100%; }
      #ai-page section .block .content .three-step-block {
        width: 100%;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start; }
        #ai-page section .block .content .three-step-block .three-blocks ol {
          display: flex;
          flex-direction: row;
          width: 100%;
          align-items: flex-start;
          justify-content: space-between;
          /*    li:first-of-type {
                                width: 45%;
                            }

                            li:last-of-type {
                                width: 25%;
                            }*/ }
          #ai-page section .block .content .three-step-block .three-blocks ol li {
            width: 25%; }
      #ai-page section .block .content .contact-block {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        gap: 32px; }
        #ai-page section .block .content .contact-block a {
          font-size: 20px;
          font-weight: 400;
          color: #FACF46;
          text-decoration-color: #FACF46;
          text-decoration-line: underline;
          text-decoration-skip-ink: auto;
          text-decoration-style: solid;
          text-decoration-thickness: 1px;
          text-underline-offset: 0.2em; }
        #ai-page section .block .content .contact-block .offer {
          display: flex;
          flex-direction: column;
          justify-content: start;
          align-items: start; }
          #ai-page section .block .content .contact-block .offer h2 {
            margin-bottom: 2em; }
          #ai-page section .block .content .contact-block .offer ul {
            list-style: none;
            font-size: 20px;
            font-weight: 400; }
            #ai-page section .block .content .contact-block .offer ul li {
              margin-bottom: 16px;
              list-style-type: "- "; }
              #ai-page section .block .content .contact-block .offer ul li:last-child {
                margin-bottom: 0; }
          #ai-page section .block .content .contact-block .offer .button {
            display: inline-block;
            padding: 10px 20px;
            background-color: #FFD700;
            color: #000000;
            text-align: center;
            border-radius: 10px;
            cursor: pointer; }
            #ai-page section .block .content .contact-block .offer .button:hover {
              background-color: #f1c40f; }
        #ai-page section .block .content .contact-block .links {
          display: grid;
          grid-template-columns: 32px auto;
          align-items: end;
          gap: 1em; }
          #ai-page section .block .content .contact-block .links img {
            width: 100%;
            margin: 0; }
        #ai-page section .block .content .contact-block .contacts {
          display: flex;
          flex-direction: column;
          justify-content: center;
          align-items: start; }
          #ai-page section .block .content .contact-block .contacts h2 {
            margin-bottom: 1.5em; }
      #ai-page section .block .content .footer {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        gap: 64px; }
        #ai-page section .block .content .footer .company-block {
          display: flex;
          flex-direction: row;
          justify-content: center;
          align-items: center;
          gap: 32px; }
          #ai-page section .block .content .footer .company-block .logo {
            padding: 8px; }
            #ai-page section .block .content .footer .company-block .logo img {
              height: auto;
              width: auto;
              max-height: 64px; }
          #ai-page section .block .content .footer .company-block .address-lines {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: start;
            white-space: nowrap; }
            #ai-page section .block .content .footer .company-block .address-lines span {
              font-size: 20px;
              font-weight: 400; }
        #ai-page section .block .content .footer .copyright {
          font-size: 18px;
          font-weight: 400; }

#ai-page .reveal {
  position: relative;
  opacity: 0;
  transition: 4s all ease; }

#ai-page .reveal.active {
  opacity: 1; }

@media only screen and (max-width: 1400px) {
  #ai-page section .block .content {
    max-width: 60%;
    align-items: center; }
    #ai-page section .block .content .overview-grid {
      justify-content: center; } }

@media only screen and (max-width: 1023px) {
  #ai-page section .block .content .three-step-block {
    grid-column-gap: 5%; }
    #ai-page section .block .content .three-step-block .start-block {
      width: 30%; }
    #ai-page section .block .content .three-step-block .end-block {
      width: 65%;
      grid-column-gap: 7.7%;
      align-items: flex-start; }
  #ai-page section .block .content .img-box img {
    width: 100%; }
  #ai-page section .block .content .overview-grid {
    grid-template-columns: 100%;
    grid-template-rows: auto; }
    #ai-page section .block .content .overview-grid .panel {
      height: fit-content;
      min-height: 100%; }
  #ai-page section .block .content .contact-block {
    flex-direction: column; }
    #ai-page section .block .content .contact-block .offer {
      align-items: center; }
      #ai-page section .block .content .contact-block .offer .button {
        margin-top: 60px !important; }
    #ai-page section .block .content .contact-block .links {
      margin-top: 60px !important; }
    #ai-page section .block .content .contact-block .contacts h2 {
      margin-bottom: 0px; } }

@media only screen and (max-width: 768px) {
  #ai-page section .block .content {
    max-width: 80%; }
    #ai-page section .block .content .footer .company-block {
      flex-direction: column; } }

@media only screen and (max-width: 600px) {
  #ai-page section .block .content h1 {
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    margin-bottom: 2em; }
    #ai-page section .block .content h1:last-child {
      margin-bottom: 0; }
  #ai-page section .block .content h2 {
    font-size: 26px;
    font-style: normal;
    font-weight: 400;
    margin-bottom: 1.5em; }
    #ai-page section .block .content h2:last-child {
      margin-bottom: 0; }
  #ai-page section .block .content h3 {
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    margin-bottom: 1em; }
  #ai-page section .block .content .overview-grid .panel .small-blocks .small-block ul li {
    white-space: normal; }
  #ai-page section .block .content .three-step-block .three-blocks {
    width: 110%; }
  #ai-page section .block .content .contact-block .offer ul {
    padding-left: 7px; } }

@media only screen and (max-width: 475px) {
  #ai-page section {
    padding: 1.7vmax 1.4vmax; }
    #ai-page section .block .content {
      width: 90%; }
      #ai-page section .block .content .overview-grid .panel {
        width: 100%; }
        #ai-page section .block .content .overview-grid .panel .title-block .icon {
          display: none; }
        #ai-page section .block .content .overview-grid .panel .title-block .title-description {
          align-items: center; }
          #ai-page section .block .content .overview-grid .panel .title-block .title-description p {
            text-align: center; }
        #ai-page section .block .content .overview-grid .panel .small-blocks {
          flex-direction: column;
          align-items: center; }
          #ai-page section .block .content .overview-grid .panel .small-blocks .small-block.yellow {
            width: 80%; }
          #ai-page section .block .content .overview-grid .panel .small-blocks .small-block.blue {
            width: 80%; }
      #ai-page section .block .content .three-step-block .three-blocks ol {
        flex-direction: column; }
        #ai-page section .block .content .three-step-block .three-blocks ol li:first-of-type {
          width: 100%; }
        #ai-page section .block .content .three-step-block .three-blocks ol li:last-of-type {
          width: 100%; }
        #ai-page section .block .content .three-step-block .three-blocks ol li {
          width: 100%; } }

html {
  scroll-behavior: smooth; }

body {
  background-color: #867f7f;
  flex: 1;
  margin: 0 auto;
  font-family: "Roboto", Roboto-Regular;
  color: white; }

.main {
  width: 1200px;
  margin: 0 auto; }
  .main:has(#ai-page) {
    max-width: 100vw;
    width: 100%; }

h2 {
  font-size: 20pt;
  margin: 20px 0px 20px 40px; }

.logo {
  margin-left: 42px;
  max-width: 300px; }

.icon-color {
  fill: #FEFEFE;
  fill-rule: nonzero; }

.lightbulb-color {
  fill: #222124;
  fill-rule: nonzero; }

.exclamationmark-color {
  fill: #FEFEFE;
  fill-rule: nonzero; }

.about-section-container {
  padding: 20px 40px 20px 40px;
  background-color: #e1a761; }

.slider {
  position: relative;
  top: 40px; }

.slide {
  width: 400%;
  display: flex;
  transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1); }
  .slide article {
    display: flex;
    width: 25%; }

.slides {
  overflow: hidden; }

.img-text {
  padding-left: 15px; }

.img-title {
  font-weight: bold;
  margin-top: 0px; }

article p {
  font-size: 12pt;
  text-align: start; }

label, a {
  cursor: pointer; }

.about-section-container input {
  display: none; }

#switch1:checked ~ .slides .slide {
  margin-left: 0; }

#switch2:checked ~ .slides .slide {
  margin-left: -100%; }

#switch3:checked ~ .slides .slide {
  margin-left: -200%; }

.swipe-buttons label {
  display: inline-block;
  padding: 7px 12px;
  background: #c78a3e;
  width: 99px;
  border-radius: 10px; }

.swipe-buttons {
  margin: 5% 0 0;
  text-align: center; }

.swipe-buttons label:hover, .swipe-button-active {
  background: #ba7828 !important; }

.button-icon {
  font-size: 1.5em; }

#blazor-error-ui {
  background: lightyellow;
  bottom: 0;
  box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
  display: none !important;
  left: 0;
  padding: 0.6rem 1.25rem 0.7rem 1.25rem;
  position: fixed;
  width: 100%;
  z-index: 1000; }

.product {
  background-color: #2E86C1;
  border-radius: 0px 0px 10px 10px;
  margin: 0 auto;
  padding-top: 20px;
  padding-bottom: 20px;
  height: auto; }
  .product .product-container {
    display: block;
    align-items: center; }
    .product .product-container .product-image {
      margin: 20px 20px 20px 10px; }
    .product .product-container img {
      display: block;
      border-radius: 10px;
      max-width: 100%;
      width: 400px;
      height: auto;
      margin: 0 auto; }
    .product .product-container .product-info {
      font-family: "Roboto", Roboto-Regular;
      color: white;
      display: block;
      text-align: center; }
      .product .product-container .product-info .product-link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background-color: #246B9E;
        color: white;
        border-radius: 10px;
        cursor: pointer;
        width: 99px;
        height: 34.520px;
        padding: 7px 12px;
        margin: 5% 0% 0%; }

.projects {
  background-color: #867f7f;
  color: white;
  position: relative;
  margin: 0px;
  height: 500px;
  width: 1200px; }
  .projects #background {
    position: absolute;
    top: 170px;
    left: 175px; }
  .projects #farm {
    position: absolute;
    top: 396px;
    left: 970px; }
  .projects #houses {
    position: absolute;
    top: 424px;
    left: 692px; }
  .projects #younitec {
    position: absolute;
    top: 353px;
    left: 535px; }
  .projects .horizontal-line-world {
    width: 90%;
    position: absolute;
    top: 470px;
    left: 4%;
    border-bottom: 2px solid #6E5F5F;
    overflow: hidden; }

.project-references {
  background-color: #7596b9;
  overflow: hidden;
  position: relative;
  margin: 0 auto;
  color: white;
  text-align: center;
  border-radius: 10px 10px 0px 0px; }
  .project-references img {
    border-radius: 10px 10px 10px 10px; }
  .project-references label {
    width: 17px;
    height: 17px;
    border-radius: 15px;
    bottom: 6px;
    right: 14px;
    margin: -10px;
    position: relative;
    background-color: #7596b9;
    display: inline-block;
    visibility: visible;
    border: 2px solid #e1a761; }
  .project-references input[type='radio']:checked + label {
    background-color: #e1a761; }
  .project-references h2 {
    text-align: initial;
    margin-left: 0; }

#reference1:checked ~ .projectref-slides .projectrefs-slide {
  margin-left: 0; }

#reference2:checked ~ .projectref-slides .projectrefs-slide {
  margin-left: -100%; }

#reference3:checked ~ .projectref-slides .projectrefs-slide {
  margin-left: -200%; }

#reference4:checked ~ .projectref-slides .projectrefs-slide {
  margin-left: -300%; }

#reference5:checked ~ .projectref-slides .projectrefs-slide {
  margin-left: -400%; }

.projectrefs-article {
  position: relative;
  padding-top: 20px; }

.projectref-slides {
  overflow: hidden;
  margin: 20px 40px; }

.projectrefs-slide {
  width: 500%;
  display: flex;
  transition: all 800ms cubic-bezier(0.77, 0, 0.175, 1); }
  .projectrefs-slide article {
    display: flex;
    width: 20%; }

.reference-images {
  width: 45%; }

.reference-text {
  width: 55%;
  margin-top: 30px; }

.about-images {
  width: 40%;
  display: flex;
  justify-content: center;
  /* Horizontally centers the child element */
  align-items: center;
  /* Vertically centers the child element */ }

.about-text {
  width: 60%;
  display: flex;
  justify-content: center;
  /* Horizontally centers the child element */
  align-items: center;
  /* Vertically centers the child element */ }

.projref-text {
  padding-right: 15px; }

.team {
  background-color: #e1a761;
  position: relative;
  margin: 0px;
  width: 1200px; }
  .team .team-members-container {
    margin-left: 30px;
    width: 1160px;
    min-height: 260px;
    display: flex;
    flex-wrap: wrap; }
    .team .team-members-container .team-member {
      position: relative;
      margin: 20px;
      margin-top: -10px;
      width: 340px;
      height: 114px; }
      .team .team-members-container .team-member p {
        font-size: 12pt;
        position: relative;
        margin-top: -128px;
        margin-left: 112px; }
        .team .team-members-container .team-member p a, .team .team-members-container .team-member p a:hover {
          text-decoration: none;
          color: white; }
        .team .team-members-container .team-member p ul {
          padding: 0px;
          list-style-type: none; }
          .team .team-members-container .team-member p ul li {
            margin-top: 3px; }
      .team .team-members-container .team-member .team-member-portrait {
        position: absolute;
        left: 15px;
        top: 8px;
        width: 76px;
        height: 91px; }
      .team .team-members-container .team-member .team-member-frame {
        margin: 6px; }
  .team .btn-bg {
    padding: 3px 5px 5px;
    background-color: #c78a3e; }
  .team .btn-bg-selected {
    background-color: #ba7828; }
  .team .desk {
    margin-left: 40px; }
  .team .job-offer {
    margin-left: 250px;
    margin-top: 20px; }
    .team .job-offer h3 {
      margin-top: 0px; }
    .team .job-offer img {
      width: 310px;
      height: 162px; }
  .team .horizontal-line-team {
    width: 95%;
    margin: auto;
    padding-bottom: 20px;
    border-top: 2px solid #6E5F5F; }

.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.col {
  position: relative;
  width: 100%;
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -ms-flex-positive: 1;
  flex-grow: 1;
  max-width: 100%; }

.btn {
  display: inline-block;
  outline: none;
  font-weight: 400;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  font-size: 1rem;
  line-height: 1.5;
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out; }

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none; }

.partners-section-container {
  background-color: white;
  margin: 0 auto;
  height: auto;
  display: grid;
  border-radius: 0 0 10px 10px; }
  .partners-section-container h2 {
    color: #867f7f; }
  .partners-section-container .partners {
    position: relative;
    margin: 0 auto; }
    .partners-section-container .partners img {
      max-height: 80px;
      margin-bottom: 20px; }
    .partners-section-container .partners li {
      margin-right: 45px; }
    .partners-section-container .partners li:last-child {
      margin-right: 0; }
  .partners-section-container .four-items-per-row {
    width: 80%; }
    .partners-section-container .four-items-per-row li:nth-child(4n) {
      margin-right: 0; }
  .partners-section-container .three-items-per-row {
    width: 60%; }
    .partners-section-container .three-items-per-row li:nth-child(3n) {
      margin-right: 0; }

.footer p {
  text-align: center; }

.footer span {
  font-weight: 600; }

.city-mobile-container {
  display: none; }

.mobile {
  display: none;
  width: 100%; }

.desktop {
  width: 100%; }

.flex-container {
  padding: 0;
  display: -webkit-box;
  display: flex;
  flex-wrap: wrap; }

.center {
  -webkit-box-pack: center;
  justify-content: center; }

.ie {
  display: none; }

.not-ie {
  display: block; }

.louder-container {
  text-align: center; }

.louder-container p {
  font-size: 18px; }

.vertical-center {
  min-height: 100%;
  min-height: 100vh;
  /* Make it a flex container */
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  /* Align the bootstrap's container vertically */
  -webkit-box-align: center;
  -webkit-align-items: center;
  -moz-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  /* In legacy web browsers such as Firefox 9
we need to specify the width of the flex container */
  width: 100%;
  /* Also 'margin: 0 auto' doesn't have any effect on flex items in such web browsers
Therefore, we should use the following declarations to get it centered again */
  -webkit-box-pack: center;
  -moz-box-pack: center;
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center; }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .ie {
    display: block; }
  .not-ie {
    display: none; } }

@media only screen and (max-width: 768px) {
  .main {
    width: 100%; }
  h2 {
    font-size: 17pt;
    width: auto !important;
    text-align: center !important;
    margin-left: 0; }
  .about-section-container {
    padding: 20px 0 0 0; }
  article img {
    width: 100%; }
  .img-text {
    padding: 20px; }
  .img-title {
    text-align: left; }
  .slide article {
    flex-wrap: wrap;
    display: block; }
  .slider, .slides {
    margin: 0 auto; }
  .projectref-slides {
    margin: 20px; }
  .project-refs-slider {
    margin: 20px; }
  .logo {
    margin: 0 4%; }
  .mini-logo {
    width: 30%;
    vertical-align: unset; }
  .button-icon {
    font-size: 1em; }
  .swipe-buttons {
    margin-top: 50px;
    padding-bottom: 20px; }
    .swipe-buttons label {
      width: 60px;
      padding: 5px 12px; }
  .about-images {
    width: 100%; }
  .about-text {
    width: 100%; }
  .reference-images {
    width: 100%; }
  .reference-text {
    width: 100%;
    margin-top: 0px; }
  .projectrefs-slide article {
    flex-wrap: wrap; }
  .partners img {
    margin: 0 auto 10px auto !important; }
  .partners-section-container .partners {
    width: 100%; }
  .partners-section-container li {
    margin-right: 0px !important; }
  .flex-container {
    display: block;
    text-align: center; }
  .projref-text {
    padding-right: 0; }
  .team .row .col {
    margin-bottom: 30px; }
  .team .row:first-of-type {
    display: grid; }
  .team .flags {
    margin: 10px 0px 60px 0px;
    text-align: center; }
  .team-member-portrait {
    position: relative !important;
    left: 78px !important;
    top: -22px !important; }
  .team-member {
    width: 100% !important;
    margin: 5px 0px !important;
    display: flex;
    justify-content: center; }
  .team-members-container, .team {
    width: 100% !important;
    height: 100% !important;
    margin: 0px !important; }
  .person-img {
    width: 130px; }
    .person-img img {
      position: relative;
      top: -120px;
      left: 68px;
      margin: 0px !important; }
  .person-info {
    position: relative;
    top: 95px;
    left: -66px;
    word-break: break-all; }
  .team-member p {
    width: 210px;
    margin-top: -120px !important;
    font-size: 10pt !important; }
  .order-1 {
    order: 1;
    display: flex;
    justify-content: center; }
  .order-2 {
    order: 2;
    display: flex;
    justify-content: center; }
  .job-offer {
    margin: 0px !important;
    text-align: center; }
    .job-offer h3 {
      margin-bottom: 5px; }
    .job-offer p {
      margin-top: 5px; }
  .desk {
    margin: 0px 50px !important; }
    .desk img {
      width: 310px; }
  .footer {
    font-size: 13px;
    padding: 0px 12px 0 12px; }
  .footer :first-child {
    margin-top: 20px; }
  .footer :last-child {
    margin-bottom: 20px; }
  .city-mobile-container {
    display: block;
    background-color: #867f7f; }
    .city-mobile-container input {
      display: none; }
  #building1:checked ~ .project-slides .projectrefs-slide {
    margin-left: 0; }
  #building2:checked ~ .project-slides .projectrefs-slide {
    margin-left: -100%; }
  #building3:checked ~ .project-slides .projectrefs-slide {
    margin-left: -200%; }
  #building4:checked ~ .project-slides .projectrefs-slide {
    margin-left: -300%; }
  #building5:checked ~ .project-slides .projectrefs-slide {
    margin-left: -400%; }
  .projects {
    display: none; }
  .desktop {
    display: none; }
  .mobile {
    display: block; } }
