.contacts-block {
  padding: 28px 30px;
  border: 1px solid #E4E4E4;
  margin-bottom: 20px; }
  @media (max-width: 767px) {
    .contacts-block {
      padding: 12px; } }
  .contacts-block:last-child {
    margin-bottom: 0px; }
  .contacts-block__title {
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 15px; }
    @media (max-width: 767px) {
      .contacts-block__title {
        font-size: 14px; } }
  .contacts-block__item {
    display: flex;
    align-items: center;
    margin-bottom: 17px; }
    .contacts-block__item:last-child {
      margin-bottom: 0px; }
    .contacts-block__item .icon {
      fill: #3B6C37; }
      @media (max-width: 767px) {
        .contacts-block__item .icon {
          max-width: 14px;
          max-height: 14px; } }
  .contacts-block a.contacts-block__item {
    font-weight: 600; }
    @media (min-width: 1024px) {
      .contacts-block a.contacts-block__item:hover {
        cursor: pointer;
        color: #ef4023; } }
  .contacts-block__descr {
    margin-left: 14px; }
    @media (max-width: 767px) {
      .contacts-block__descr {
        font-size: 12px; } }

.contacts-form .form-control--textarea {
  height: 220px; }
  @media (max-width: 1099px) {
    .contacts-form .form-control--textarea {
      height: 80px; } }

.contacts-form__submit {
  margin-top: 32px; }
  @media (max-width: 1099px) {
    .contacts-form__submit {
      margin-top: 12px; }
      .contacts-form__submit .btn {
        width: 100%; } }

@media (max-width: 1099px) {
  .contacts-form .form-group--margin:last-child {
    margin-bottom: 19px; } }

.col-flex {
  display: flex; }

.map {
  width: 100%; }
  @media (max-width: 1099px) {
    .map {
      margin-top: 40px;
      height: 244px; } }

.contacts-social {
  position: relative;
  padding: 80px 70px;
  color: #ffffff;
  margin-top: 120px;
  margin-bottom: 70px; }
  @media (max-width: 1699px) {
    .contacts-social {
      padding: 70px 60px; } }
  @media (max-width: 1339px) {
    .contacts-social {
      padding: 60px 40px; } }
  @media (max-width: 767px) {
    .contacts-social {
      margin-top: 40px;
      margin-bottom: 40px;
      padding: 32px; } }
  @media (max-width: 575px) {
    .contacts-social {
      padding: 32px 16px; } }
  .contacts-social__img picture {
    position: absolute;
    inset: 0; }
    .contacts-social__img picture img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: right center; }
  .contacts-social__title {
    text-align: center;
    font-size: 48px;
    margin-bottom: 48px;
    position: relative;
    z-index: 1;
    font-weight: 600; }
    @media (max-width: 1699px) {
      .contacts-social__title {
        font-size: 40px; } }
    @media (max-width: 1099px) {
      .contacts-social__title {
        font-size: 32px;
        margin-bottom: 32px; } }
    @media (max-width: 575px) {
      .contacts-social__title {
        font-size: 20px;
        margin-bottom: 20px; } }
  .contacts-social__grid {
    display: grid;
    grid-template-columns: repeat(4, 14vw);
    grid-template-rows: 1fr 1fr;
    gap: 40px;
    position: relative;
    z-index: 2; }
    @media (max-width: 1699px) {
      .contacts-social__grid {
        gap: 32px;
        grid-template-columns: repeat(4, 1fr); } }
    @media (max-width: 1099px) {
      .contacts-social__grid {
        grid-template-columns: repeat(3, 1fr);
        grid-template-rows: auto; } }
    @media (max-width: 767px) {
      .contacts-social__grid {
        grid-template-columns: 1fr 1fr;
        gap: 24px; } }
    @media (max-width: 575px) {
      .contacts-social__grid {
        gap: 16px 12px; } }
  .contacts-social__qr {
    grid-row: span 2;
    position: relative;
    padding-bottom: 100%; }
    @media (max-width: 1099px) {
      .contacts-social__qr {
        display: none; } }
    .contacts-social__qr .lazy-img-wrap {
      position: absolute;
      inset: 0; }
      .contacts-social__qr .lazy-img-wrap img {
        width: 100%;
        height: 100%;
        object-fit: contain; }
  .contacts-social__link {
    display: flex;
    align-items: center;
    gap: 12px;
    fill: #ffffff;
    color: #ffffff;
    font-weight: 600;
    transition: all ease .3s;
    position: relative;
    font-size: 24px;
    padding: 22px 30px;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px); }
    @media (max-width: 1699px) {
      .contacts-social__link {
        font-size: 22px; } }
    @media (max-width: 1339px) {
      .contacts-social__link {
        font-size: 18px;
        padding: 16px 24px; } }
    @media (max-width: 1099px) {
      .contacts-social__link {
        font-size: 16px; } }
    @media (max-width: 575px) {
      .contacts-social__link {
        font-size: 14px;
        padding: 8px 16px; } }
    .contacts-social__link span {
      white-space: nowrap;
      display: inline-block;
      margin-left: 4px; }
    @media (min-width: 1100px) {
      .contacts-social__link:hover {
        fill: #EF4023; } }
    @media (max-width: 575px) {
      .contacts-social__link {
        gap: 4px; }
        .contacts-social__link .icon {
          max-width: 36px;
          max-height: 36px; } }
    @media (max-width: 359px) {
      .contacts-social__link .icon {
        max-width: 30px;
        max-height: 30px; } }
