/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
/* general */
/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
body {
  animation: fadeInAnimation ease 2s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}

.homebody {
  max-width: var(--body--width);
  overflow: hidden;
  position: fixed;
}

figure {
  display: flex;
}

@keyframes fadeInAnimation {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.bodyfixed {
  position: fixed;
}

.hidden,
.fade-in {
  opacity: 0;
  -webkit-transition: opacity 350ms ease-out;
  -moz-transition: opacity 350ms ease-out;
  -o-transition: opacity 350ms ease-out;
  transition: opacity 350ms ease-out;
}

.appear {
  opacity: 1;
  -webkit-transition: opacity 350ms ease-in;
  -moz-transition: opacity 350ms ease-in;
  -o-transition: opacity 350ms ease-in;
  transition: opacity 350ms ease-in;
}

picture img {
  width: 100%;
  max-height: 70vh;
  max-width: 65vw;

}


.hide_desktop {
  display: none !important;
}

.title__mobile {
  display: none;
}

/* 
  Menu animation 
*/

.hide_presence {
  display: none !important;
}

.animation-container {
  display: flex;
  position: absolute;
  padding: 12px 20px 12px 20px;
  width: 100%;
}
.menu-container_mb{
padding: 12px 20px 12px 20px;
position: absolute;
}
.slider__wrap_exp {
margin-top: 8rem;
}

.word_2 {
  position: absolute;
  left: 0px;
  transform: translateX(117px);
  animation: moveWord_2 1.5s 2.2s forwards;
  transition: transform  0.5s ease-out;
}

.word_3 {
  position: absolute;
  left: 0px;
  transform: translateX(223px);
  animation: moveWord_3 1.5s 2.2s forwards;
  transition: transform  0.5s ease-out;
}

.word_4 {
  position: absolute;
  left: 0px;
  transform: translateX(309px);
  animation: moveWord_4 1.5s 2.2s forwards;
  transition: transform  0.5s ease-out;
}

.architekten {
  position: absolute;
  left: 0px;
  transform: translateX(387px);
  text-transform: uppercase;
  transition: transform 0.5s ease;
  animation: moveArchitekten 1.5s 2.2s forwards;
}

.first-letter {
  opacity: 1;
}

.other-letters {
  opacity: 1;
  transition: opacity 1s ease-out;
}

.other-letters {
  animation: fadeOut 1s 2s forwards;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes moveWord_2 {
  0% {
    transform: translateX(117px);
  }
  100% {
    transform: translateX(43px);
  }
}
@keyframes moveWord_3 {
  0% {
    transform: translateX(223px);
  }
  100% {
    transform: translateX(65.5px);
  }
}
@keyframes moveWord_4 {
  0% {
    transform: translateX(309px);
  }
  100% {
    transform: translateX(88px);
  }
}
@keyframes moveArchitekten {
  0% {
    transform: translateX(387px);
  }
  100% {
    transform: translateX(187px);
  }
}


.architekten__c {
  position: absolute;
  left: 187px;
  top: 12px;
  text-transform: uppercase;
}
.gmbh {
  position: absolute;
  left: 433px;
  top: 12px;
}

.block {
  max-width: 100vw;
  margin: 110px 0 130px 0;
  position: relative;
  padding: 20px 0;
  /* border: 1px solid red; */
}

.block-type-slider {
  /* height: 90vh; */
  width: 100vw;
  overflow: hidden;
  height: 90vh;
}

.main--section {
  position: relative;
  padding-top: 10px;
  /* padding-right: var(--main--margin); */
  /* top: 80px; */
  background-color: white;
  min-height: var(--full-height);
}

.main--margin {
  padding-left: var(--main--margin);
}

.caption__margin {
  margin-top: 8px;
}

.caption__margin span {
  display: none;
}

.framing-full {
  width: 100vw
}

.framing-big {
  width: var(--body--width)
}

.framing-medium {
  width: 70vw;
  object-fit: contain;
}

.framing-small {
  width: calc(((100vw / 2)) - (var(--main--gap) / 2));
}

.framing-tiny {
  width: 30vw;
}

.image__portrait {
  width: auto;
  max-height: 65vh;
}

.align-left {
  display: flex;
  justify-content: flex-start;
  margin-left: var(--main--margin);
}

.align-right {
  display: flex;
  justify-content: flex-end;
  margin-right: var(--main--margin);
}

.align-justify {
  display: flex;
  justify-content: center;
  width: 100%;
  flex-wrap: wrap;
  padding: 0 20px;
  gap: 20px
}

.align-center {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  width: var(--body--width);
  padding: 0 20px;
  align-items: center;
}

.align-center.gap {
  gap: 20px;
}

.align-tiny {
  display: flex;
  justify-content: center;
  padding: 0 20px;
  gap: 20px
}

.gallery--picture {
  width: calc(((var(--body--width) / 2)) - (var(--main--gap) / 2));
}

.video__width {
  width: 100%;
  max-height: 65vh;
  max-width: 65vw;
}



/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
/* header */
/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */

.header {
  display: flex;
  position: fixed;
  top: 0px;
  width: 100%;
  height: var(--nav--height);
  padding: 0px var(--main--margin);
  padding-right: 30px;
  align-items: center;
  justify-content: flex-end;
  color: white;
  mix-blend-mode: difference;
  z-index: 4;
}



/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
/* CONTACTS */
/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */
/* ––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––– */


.contacts--align {
  padding-left: var(--main--margin);
  width: 45%;
  margin-top: 94px;
}

.projects__section {
  width: 55%;
  position: fixed;
  right: 0;
  overflow: scroll;
  height: var(--full-height);
  overflow-x: hidden
}

.address__padding {
  padding-left: 167px;
  margin-bottom: 11rem;
}

.team__margin {
  margin-right: 109px;
}

.projects__margin {
  position: sticky;
  height: fit-content;
  margin-right: 109px;
  top: 12px;
}
.projects__margin_top {
  margin-top: 357px;
  margin-bottom: 7.5rem;
}

.jobs__margin {
  margin-right: 147px;
  position: sticky;
  height: fit-content;
  top: 12px;
}

.projects__text__width {
  max-width: 65%;
}

h4 {
  margin-bottom: 1.5rem;
}

h5 {
  margin-bottom: 3.5rem;
}

.jobsz.kt p:last-child,
.jobsz.kt p:last-child a {
  margin-top: 2rem !important;
  font-size: var(--captions-font-size) !important;
  line-height: var(--captions-line-height) !important;
  max-width: 42ch;
  /* calcula a altura da window para garantir o alinhamento de Team e Jobs */
  /* margin-bottom: calc(var(--vh, 1vh) * 100 - 590px); */
}