#location {
  position: relative;
}

#location .grid-wrapper {
  display: grid;
  grid-template-columns: 4fr 8fr;
  gap: 20px 40px;
}

#location .title-block {
  text-align: right;
}

#location .text-block {
  text-align: left;
  align-content: flex-end;
}

#location .text-block .text-wrapper>p {
  margin-bottom: 0;
}

#location .text-block .btns-wrapper {
  display: none;
}

#location .map-block {
  display: grid;
  grid-template-columns: auto 170px;
  margin-top: 120px;
}

#location .map-block .swiper-wrapper img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

#location .locations-icons-wrapper {
  display: flex;
  flex-direction: column;
}

#location .locations-icons-wrapper>img {
  width: 100%;
  object-fit: cover;
}

@media(max-width: 1400px) {
  #location .map-block {
    display: block;
  }

  #location .locations-icons-wrapper {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    background-color: #fff;
  }
}

@media(max-width: 998px) {
  #location .grid-wrapper {
    display: block
  }

  #location .title-block {
    text-align: left;
  }

  #location .title-block>button {
    display: none;
  }

  #location .text-block {
    margin-top: 30px;
    text-align: left;
  }

  #location .map-block {
    margin-top: 60px;
  }

  #location .text-block .btns-wrapper {
    display: block;
    align-self: flex-start;
    margin-top: 20px;
  }

  #location .locations-icons-wrapper {
    grid-template-columns: repeat(3, 1fr);
    padding: 10px;
  }

  #location .locations-icons-wrapper>img {
    width: 150px;
  }
}

@media(max-width: 768px) {
  #location .map-block {
    margin-top: 40px;
  }

  #location .locations-icons-wrapper {
    grid-template-columns: repeat(2, 1fr);
  }
    #location .map-block .swiper-wrapper img {
      height: 280px;
    }
}