.obsl_ip_osno .prm {
  position: relative;
  margin-bottom: 48px;
  background: linear-gradient(90deg, #71B3FF 0%, #A38CFF 100%);
  overflow: hidden;
}
.obsl_ip_osno .prm > *{
  position: relative;
}
.obsl_ip_osno .prm_info, .obsl_ip_osno .prm_title {
  margin-bottom: 24px;
}

.header__osno_1 {
	max-width: 784px;
	margin-left: auto;
	margin-right: auto;
}
.guide__card {
  width: 100%;
	max-width: 376px;
}
.prm_description > p + p {
	margin-bottom: 16px;
}

/* slider */
@media (max-width: 527px) {
  #uslugi .h4 {
    font-size: 20px;
  }
  /* #uslugi.slider {
    margin-right: var(--indent_xs);
    margin-left: var(--indent_xs);
  } */
  #uslugi.slider {
    margin-right: 0;
    margin-left: 0;
  }
}

#uslugi.slider {
  margin-top: 0;
  margin-bottom: 0;
}

.slider_services {
  display: grid;
  gap: 48px;
}

.txtbg {
  padding: 24px;
  padding-bottom: 190px;
  border-radius: 16px;
  background-color: var(--blue3);
  background-position: bottom center;
  background-repeat: no-repeat;
}
.txtbg_osno {
  background-image: url('i/ip-osno/txtbg_osno.png');
}
.txtbg__content {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.form__textpolit {
  font-size: 16px;
}

.cardcolrow .h4 {
  font-size: 20px;
}
.cardcolrow__icon {
  width: 52px;
  height: 52px;
}

ol.list > li {
  padding-left: 56px;
}

.txtimg__image {
  width: 100%;
}

@media (max-width: 991px) {
  .expert__image_wrap {
    width: 228px;
    object-position: center;
    object-fit: contain;
    border-radius: 8px;
  }
  .expert__image {
    aspect-ratio: 228 / 170;
  }
  .txtimg_auto {
    grid-template-columns: 1fr;
  }
  .txtimg_auto .txtimg__images {
    order: -1;
  }
}
@media (max-width: 767px) {
  .txtbg_osno {
    background-size: 330px;
  }
}
@media (max-width: 699px) {
  .expert__image_wrap {
    width: 100%;
  }
}


@media (min-width: 680px) {
  .obsl_ip_osno .prm {
    padding: 32px 24px;
  }
  .obsl_ip_osno .prm::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: var(--prm_image);
    background-repeat: no-repeat;
    background-position: bottom 397px right -54px;
    background-size: auto 361px;
    pointer-events: none;
  }
}

@media (min-width: 700px) {
  .obsl_ip_osno .prm {
    margin-bottom: 64px;
  }
 
  .slider_services {
    display: block;
  }

  .slider .slider_services .slick-dots {
    position: relative;
  }

  .slider_services .page__slideritem {
    margin: 0 32px;
  }
}

@media (min-width: 750px) {
  .obsl_ip_osno .prm::before {
    background-position: bottom 215px right -115px;
    background-size: auto 474px;
  }
  .obsl_ip_osno .prm_info {
    margin-bottom: 32px;
  }
  .slider_services {
    padding-left: 32px;
    padding-right: 32px;
  }
  .txtbg {
    padding: 32px;
    padding-right: 240px;
    background-position: right -190px center;
  }
}
@media (min-width: 850px) {
  .obsl_ip_osno .prm::before {
    background-position: top right -64px;
  }
}
@media (min-width: 992px) {
  .obsl_ip_osno .prm {
    padding: 32px;
  }
  .obsl_ip_osno .prm::before {
    background-size: auto 523px;
    background-position: bottom right -64px;
  }
  .obsl_ip_osno .prm_info {
    margin-bottom: 24px;
  }
  .obsl_ip_osno .prm.prm_prices_by_group  .prm_prices_wrap, .obsl_ip_osno .prm.prm_prices_by_group .prm_info {
    max-width: 652px;
  }
  .slider .slider_services .slick-dots {
    margin-top: 48px;
  }
  .expert .h2 {
    max-width: 559px;
  }
}
@media (min-width: 1200px) {
  .obsl_ip_osno .prm::before {
    background-size: auto;
    background-position: bottom right;
  }
  .expert .expert__image_wrap {
    max-width: 481px;
  }
  .txtbg {
    padding: 32px;
    padding-right: 546px;
    background-position: right bottom;
  }
  .grid_special_xl {
    max-width: 1077px;
    grid-template-columns: 373px 560px;
    gap: 144px;
  }
}

/* FORMA */
.nform_wrap {
  padding: 40px 16px;
  margin-right: var(--negindent_xs);
  margin-left: var(--negindent_xs);
  background: var(--blue1);
}

.nform_wrap form {
  background-color: var(--white);
  padding: 24px;
  border-radius: 16px;
}

@media (min-width: 576px) {
  .nform_wrap {
    padding: 40px 30px;
    margin-right: 0;
    margin-left: 0;
    border-radius: 16px;
  }
}

@media (min-width: 700px) {
  .nform_wrap {
    background-image: var(--form_image_md);
    background-color: var(--blue1);
    background-repeat: no-repeat;
    background-position: top right;
    background-size: 534px;
  }

  .nform_info {
    max-width: 69%;
  }
}

@media (min-width: 760px) {
  .nform_wrap {
    background-position: top right;
    background-size: auto;
  }

  .nform_info {
    max-width: 69%;
  }
}

@media (min-width: 992px) {
  .nform_wrap {
    background-image: var(--form_image);
    background-size: auto;
    background-position: top right -175px;
  }

  .nform_info {
    max-width: 552px;
  }
}

@media (min-width: 1200px) {
  .nform_wrap {
    background-size: auto;
    background-position: top right;
  }
}

/* persons */
.usn_person {
  display: grid;
  gap: 16px;
}

.usn_person_img {
  /*width:100%;*/
  max-height: 405px;
  display: flex;
  overflow: clip;
  border-radius: 16px;
}

.usn_person_img>img {
  width: 100%;
  flex-shrink: 0;
  object-fit: cover;
}

@media (min-width: 700px) {
  .usn_person {
    grid-template-columns: 1fr 1fr;
    grid-template-areas:
      "x y"
      "z z";
    gap: 48px 16px;
  }

  .usn_person_img {
    grid-area: x;
  }

  .usn_person_name {
    grid-area: y;
  }

  .usn_person_info {
    grid-area: z;
  }
}

@media (min-width: 1200px) {
  .usn_person {
    grid-template-columns: 552px 1fr;
    grid-template-areas:
      "x y"
      "x z";
    gap: 32px 48px;
  }

  .usn_person_img {
    height: 405px;
    width: 552px;
  }
}

/* instructions */
.date_card {
  position: relative;
}

.date_card__link {
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 2;
}

.date_card:hover {
  transform: translateY(-16px);
}

.date_card:hover .button_red2 {
  color: var(--white);
  background-color: var(--red1);
}
