.contact {
  display: flex;
  flex-direction: row;
}
.contact .map__section {
  width: 50%;
}
.contact .map__section .map__image {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.contact .map__section .map__image img {
  position: absolute;
  width: 100%;
  height: 100%;
  max-width: unset;
  object-fit: cover;
}
.contact .form__section {
  width: 50%;
  padding: 180px 50px;
  background-color: #efefef;
}
.contact .form__section .headline {
  margin-bottom: 16px;
}
.contact .form__section .cf7_item p {
  margin-bottom: 0.5em;
}
.contact .form__section .content {
  margin-bottom: 40px;
}
.contact .form__section form .cf7_row:last-of-type {
  width: 100%;
  display: flex;
}
.contact .form__section form .cf7_row:nth-child(3) .cf7_item textarea {
  height: 70px;
}
.contact .form__section form .cf7_row:nth-child(3) .cf7_item .cf7-label {
  top: 50px;
}
@media (max-width:1560px) {
  .contact .form__section {
    width: 50%;
    padding: 170px 30px;
  }
}
@media (max-width:1560px) and (max-width:1023px) {
  .contact {
    flex-direction: column;
  }
  .contact .map__section {
    width: 100%;
    height: 400px;
    padding-top: 0;
    order: 2;
  }
  .contact .form__section {
    width: 100%;
    padding: 70px 30px;
  }
  .contact .form__section form {
    max-width: unset;
  }
}
@media (max-width:767px) {
  .contact .map__section {
    height: 300px;
  }
  .contact .form__section {
    padding: 40px 16px 70px;
  }
  .contact .form__section .content {
    margin-bottom: 20px;
  }
  .contact .form__section .cf7_item p {
    margin-bottom: 0;
  }
  .contact .form__section .cf7_row.cf7_row_2items {
    display: flex;
    flex-direction: column;
  }
  .contact .form__section .cf7_row.cf7_row_2items .cf7_item {
    flex-basis: 100%;
  }
}
