.offices-section {
  margin-bottom: 190px;
}

.offices-section.contact-us .offices-section__holder {
  border-radius: 0px 60px 60px 60px;
  background: #002f6a;
  gap: 200px;
}

.offices-section.contact-us .offices-section__holder p,
.offices-section.contact-us .offices-section__holder .h4,
.offices-section.contact-us .offices-section__holder h4 {
  color: #ffffff;
}

.offices-section.contact-us .offices-section__holder .map-holder {
  margin-bottom: 0;
  border-radius: 30px 30px 30px 0px;
}

.offices-section .small-text {
  font-size: 14px;
  font-weight: 300;
  letter-spacing: 0.7px;
  text-transform: uppercase;
  margin-bottom: 8px;
}

.offices-section__holder {
  position: relative;
  border-radius: 60px 60px 60px 0px;
  border: 1px solid rgba(0, 48, 104, 0.15);
  padding: 70px 60px;
  padding-right: 0;
  margin-right: 110px;
}

.offices-section__holder .map-holder {
  width: 590px;
  height: 350px;
  border-radius: 0px 30px 30px 30px;
  overflow: hidden;
  flex-shrink: 0;
}

.offices-section__info {
  display: grid;
  grid-template-columns: 170px auto;
  gap: 40px 50px;
}

.offices-section__info .column {
  width: 100%;
}

.offices-section__info .column .h4 a,
.offices-section__info .column h4 a {
  display: block;
  transition: color 0.3s ease-in-out;
}

.offices-section__info .column .h4 a:hover,
.offices-section__info .column h4 a:hover {
  color: #009aa9;
}

.offices-section .categories-block.dir-row {
  margin-bottom: 40px;
}

.offices-section .categories-block.dir-row .categories-block__holder {
  gap: 8px;
  flex-wrap: nowrap;
}

@media (min-width: 1200px) {
  .offices-section.contact-us .offices-section__holder .map-holder {
    margin-top: -180px;
  }

  .offices-section .title-row {
    margin-left: 80px;
  }

  .offices-section__holder {
    display: flex;
    gap: 155px;
  }

  .offices-section__holder .map-holder {
    margin-right: -110px;
    margin-bottom: -140px;
  }

  .offices-section__info .column:first-child {
    grid-column: span 2;
  }
}

@media (max-width: 1799px) {
  .offices-section {
    margin-bottom: 90px;
  }

  .offices-section.contact-us .offices-section__holder {
    gap: 150px;
  }

  .offices-section__holder .map-holder {
    width: 450px;
    height: 320px;
    margin-right: 0;
  }
}

@media (max-width: 1199px) {
  .offices-section {
    margin-bottom: 120px;
  }

  .offices-section.contact-us .title-row {
    max-width: 600px;
  }

  .offices-section.contact-us .title-row .title {
    flex-shrink: 1;
    max-width: none;
  }

  .offices-section.contact-us .offices-section__holder .map-holder {
    right: -90px;
    bottom: auto;
    top: -120px;
  }

  .offices-section__holder {
    margin-right: 90px;
    border-radius: 40px 40px 40px 0px;
    padding: 50px;
    gap: 0;
  }

  .offices-section__info {
    grid-template-columns: 100%;
    gap: 30px;
  }
}

@media (max-width: 1023px) {
  .offices-section.contact-us .title-row {
    max-width: 305px;
  }
}

@media (max-width: 767px) {
  .offices-section {
    margin-bottom: 80px;
  }

  .offices-section.contact-us .offices-section__holder {
    border-radius: 0 30px 30px 30px;
  }

  .offices-section.contact-us .offices-section__holder .map-holder {
    border-radius: 0px 0px 30px 30px;
  }

  .offices-section__holder {
    margin-right: 0;
    border-radius: 30px;
    padding: 30px;
    padding-bottom: 0;
    gap: 0;
  }

  .offices-section__holder .map-holder {
    width: calc(100% + 60px);
    margin-left: -30px;
    height: 265px;
    border-radius: 0px 0px 30px 30px;
  }

  .offices-section__info {
    margin-bottom: 30px;
  }

  .offices-section .categories-block.dir-row {
    margin-bottom: 30px;
  }
}

@media (min-width: 1200px) and (max-width: 1799px) {
  .offices-section.contact-us .offices-section__holder .map-holder {
    margin-right: -150px;
  }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .offices-section.contact-us .offices-section__info {
    grid-template-columns: 230px auto;
  }

  .offices-section.contact-us .offices-section__info .column:first-child {
    grid-column: 1/3;
    max-width: 230px;
  }

  .offices-section__holder .map-holder {
    width: 330px;
    height: 260px;
    position: absolute;
    right: -90px;
    bottom: -30px;
  }
}