#main:has(.form-block) ~ #footer {
  margin-top: 0;
}
.form-block .content-wrapper {
  background: var(--bg-primary-second);
}
.form-block .content-wrapper > .container {
  z-index: 1;
}
.form-block .content {
  display: flex;
  flex-direction: column;
  position: relative;
  gap: 30px;
}
.form-block .text-side {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 15px;
}
.form-block .text-side .title {
  margin-bottom: 0;
}
.form-block .text-side .subtitle {
  max-width: 550px;
}

.form-block .form-side {
  display: flex;
  width: 100%;
  padding: 10px;
  gap: 10px;
  border-radius: 20px;
  border: 1px solid var(--bg-primary-stroke);
  background: var(--bg-primary-main);
  z-index: 1;
}
.form-block .form-side .form {
  height: fit-content;
  margin: auto 0;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
  padding: 20px;
  gap: 10px;
}
.form-block .form-side .form-item {
  width: calc((100% - 20px) / 3);
  flex: 1 1 auto;
}
.form-block .form-side__info {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 40%;
  max-width: 300px;
  height: auto;
  padding: 20px;
  border-radius: 15px;
  gap: 15px;
  background: var(--bg-alt-main);
}
.form-block .form-side__text {
  color: var(--text-alt-main);
}
.form-block .form-side__contacts * {
  color: var(--bg-primary-main);
}
.form-block .form-side__contacts {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.form-block .info-item {
  display: flex;
  align-items: center;
  gap: 10px;
}
.form-block .info-item svg {
  width: 16px;
  height: 16px;
  flex-shrink: 0;
}
.form-block .info-item svg path {
  fill: var(--colors-main);
}

@media (max-width: 1480px) {
  .form-block .form-side .form {
    padding: 10px;
  }
}
@media (max-width: 1220px) {
  .form-block .content {
    gap: 20px;
  }
  .form-block .form-side__info {
    max-width: 270px;
    padding: 15px;
  }
}
@media (max-width: 1100px) {
  .form-block .form-side .form-item {
    width: calc((100% - 10px) / 2);
  }
  .form-block .form-side .form {
    padding: 0;
  }
}
@media (max-width: 860px) {
  .form-block .form-side {
    flex-direction: column;
    padding: 15px;
    gap: 20px;
  }
  .form-block .form-side__info {
    width: 100%;
    max-width: none;
  }
}
@media (max-width: 860px) {
  .form-block .form-side .form-item {
    width: 100%;
  }
}

@media screen and (max-width: 500px) {
  .form-block .text-side {
    padding: 0 15px;
  }
}
