.hero {
  position: relative;
  display: flex;
  gap: 24px;
  margin-bottom: 100px;
  background: #fff;
  overflow: hidden;
  border-radius: 24px;
  background: #f7f8fa;
}

.hero:before {
  position: absolute;
  width: 268px;
  height: 268px;
  right: 30px;
  bottom: 74px;
  background: #ffe700;
  filter: blur(114px);
  border-radius: 100%;
  opacity: .33;
  content: "";
}

@media (max-width: 991px) {
  .hero:before {
    width: 248px;
    height: 248px;
    right: 58px;
    bottom: 6px;
  }
}

@media (max-width: 767px) {
  .hero:before {
    width: 148px;
    height: 148px;
    right: -20px;
    bottom: 3px;
  }
}

.hero:after {
  position: absolute;
  width: 154px;
  height: 154px;
  right: 376px;
  bottom: 300px;
  background: #ffe700;
  filter: blur(114px);
  border-radius: 100%;
  opacity: .5;
  content: "";
}

@media (max-width: 991px) {
  .hero:after {
    right: 378px;
    bottom: 204px;
  }
}

@media (max-width: 767px) {
  .hero:after {
    width: 108px;
    height: 108px;
    left: 48px;
    bottom: 144px;
  }
}

@media (max-width: 1199px) {
  .hero {
    margin-bottom: 80px;
  }
}

@media (max-width: 991px) {
  .hero {
    margin-bottom: 56px;
    padding: 44px;
    flex-wrap: wrap;
    gap: 0;
  }
}

@media (max-width: 767px) {
  .hero {
    margin-bottom: 40px;
    padding-top: 12px;
  }
}

@media (max-width: 574px) {
  .hero {
    margin-right: -16px;
    margin-left: -16px;
    padding: 28px 16px;
  }
}

.hero__content {
  position: relative;
  display: flex;
  flex-direction: column;
  width: calc(50% - 12px);
  padding: 110px 0 100px 68px;
  z-index: 2;
}

@media (max-width: 1199px) {
  .hero__content {
    padding-top: 64px;
    padding-bottom: 38px;
    padding-left: 48px;
  }
}

@media (max-width: 991px) {
  .hero__content {
    width: 100%;
    padding: 0;
    z-index: 3;
  }
}

.hero__title {
  margin-bottom: 10px;
  margin-top: -2px;
}

@media (max-width: 767px) {
  .hero__title {
    margin-bottom: 4px;
  }
}

.hero__desc {
  font-size: 20px;
  line-height: 1.4;
}

@media (max-width: 991px) {
  .hero__desc {
    font-size: 18px;
    line-height: 1.4444445;
  }
}

.hero__text {
  max-width: 490px;
  margin-top: 24px;
  margin-bottom: 24px;
  border-top: 1px solid #e8e8e9;
  padding-top: 24px;
}

@media (max-width: 991px) {
  .hero__text {
    max-width: none;
    margin-top: 12px;
    padding-top: 12px;
    margin-bottom: 36px;
  }
}

@media (max-width: 767px) {
  .hero__text {
    margin-top: 8px;
    margin-bottom: 24px;
  }
}

.hero__text ol {
  line-height: 1.75;
}

.hero__text ol li {
  margin-bottom: 0;
}

.hero__text ol li:before {
  font-weight: 600;
  font-size: 14px;
  line-height: 2;
}

.hero__btn {
  display: flex;
  margin-top: auto;
}

@media (max-width: 574px) {
  .hero__btn .btn {
    width: 100%;
  }
}

.hero__picture {
  position: relative;
  width: calc(50% - 12px);
  padding-top: 43px;
  padding-bottom: 110px;
  z-index: 2;
}

@media (max-width: 991px) {
  .hero__picture {
    width: auto;
    padding: 0;
    margin-top: -40px;
    margin-right: -3px;
    margin-left: -3px;
  }
}

@media (max-width: 767px) {
  .hero__picture {
    width: 100%;
    margin-top: 14px;
    margin-right: 0;
    margin-left: 0;
  }
}

.hero__picture-img {
  display: block;
  max-width: 100%;
}

@media (max-width: 574px) {
  .hero__picture-img {
    width: 100%;
    max-width: 340px;
  }
}

.h-adv {
  padding: 100px 0 100px;
  background: #2a2a2a;
  overflow: hidden;
}

@media (max-width: 1199px) {
  .h-adv {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

@media (max-width: 991px) {
  .h-adv {
    padding-top: 56px;
    padding-bottom: 56px;
  }
}

@media (max-width: 767px) {
  .h-adv {
    position: relative;
    padding-top: 40px;
    padding-bottom: 40px;
  }
}

@media (max-width: 767px) {
  .h-adv__container {
    position: relative;
    padding-bottom: 76px;
  }
}

.h-adv__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.h-adv__head-title {
  color: #fff;
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .h-adv__head-btn {
    position: absolute;
    right: 16px;
    bottom: 0;
    left: 16px;
  }
  .h-adv__head-btn .btn {
    width: 100%;
  }
}

.h-adv__slider {
  margin-top: 64px;
  overflow: hidden;
}

@media (max-width: 1199px) {
  .h-adv__slider {
    margin-top: 56px;
  }
}

@media (max-width: 991px) {
  .h-adv__slider {
    margin-top: 40px;
    overflow: visible;
  }
}

@media (max-width: 767px) {
  .h-adv__slider {
    margin-top: 32px;
  }
}

@media (max-width: 991px) {
  .h-adv__slider .swiper {
    overflow: visible;
  }
}

.h-adv__swiper {
  margin: 0 -8px;
}

.h-adv__wrap {
  padding: 0 12px;
}

.h-adv__wrap.swiper-slide {
  width: 33.3333334%;
  height: auto;
}

@media (max-width: 991px) {
  .h-adv__wrap.swiper-slide {
    width: 100%;
    padding-right: 6px;
    padding-left: 6px;
    max-width: 354px;
  }
}

@media (max-width: 767px) {
  .h-adv__wrap.swiper-slide {
    max-width: 332px;
  }
}

@media (max-width: 359px) {
  .h-adv__wrap.swiper-slide {
    max-width: calc(100vw - 64px);
    width: 100%;
  }
}

.h-adv__item {
  position: relative;
  height: 100%;
  padding: 32px;
  background: #4a4a4a;
}

@media (max-width: 1199px) {
  .h-adv__item {
    padding: 20px;
  }
}

.h-adv__item:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-position: right center;
  background-size: auto 100%;
  background-repeat: no-repeat;
  content: "";
}

.h-adv__item_1:before {
  background-image: url(/img/h-adv-1.svg);
}

.h-adv__item_2:before {
  background-image: url(/img/h-adv-2.svg);
}

.h-adv__item_3:before {
  background-image: url(/img/h-adv-3.svg);
}

.h-adv__item-legend {
  position: relative;
  margin-bottom: 4px;
  color: #fff;
  z-index: 2;
}

.h-adv__item-name {
  position: relative;
  margin-bottom: 24px;
  color: #ffe700;
  letter-spacing: -0.01em;
  z-index: 2;
}

@media (max-width: 991px) {
  .h-adv__item-name {
    margin-bottom: 16px;
  }
}

.h-adv__item-text {
  position: relative;
  color: #bcbcbc;
  z-index: 2;
}

.h-services {
  padding: 100px 0 64px;
}

@media (max-width: 1199px) {
  .h-services {
    padding-top: 80px;
  }
}

@media (max-width: 991px) {
  .h-services {
    padding-top: 56px;
    padding-bottom: 36px;
  }
}

@media (max-width: 767px) {
  .h-services {
    padding-top: 40px;
    padding-bottom: 24px;
  }
}

.h-services__head {
  display: flex;
  align-items: flex-end;
  gap: 24px;
}

@media (max-width: 991px) {
  .h-services__head {
    flex-wrap: wrap;
  }
}

.h-services__head-content {
  width: calc(50% - 12px);
}

@media (max-width: 991px) {
  .h-services__head-content {
    width: 100%;
  }
}

.h-services__head-btn {
  width: calc(50% - 12px);
  text-align: right;
}

@media (max-width: 991px) {
  .h-services__head-btn {
    width: auto;
  }
  .h-services__head-btn .btn-more {
    white-space: nowrap;
  }
}

@media (max-width: 767px) {
  .h-services__head-btn {
    width: 100%;
    text-align: left;
  }
}

.h-services__head-title {
  display: flex;
  margin-bottom: 32px;
}

@media (max-width: 991px) {
  .h-services__head-title {
    margin-bottom: 16px;
  }
}

.h-services__head-title-val {
  position: relative;
  padding-right: 34px;
}

.h-services__head-title-key {
  position: absolute;
  width: 28px;
  height: 28px;
  padding: 3px;
  top: 0;
  right: 0;
  border: 1px solid #bcbcbc;
  font-weight: 600;
  font-size: 14px;
  line-height: 20px;
  text-align: center;
  border-radius: 14px;
}

.h-services__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-gap: 24px;
  gap: 24px;
  grid-auto-flow: row;
  margin-top: 64px;
}

@media (max-width: 1199px) {
  .h-services__grid {
    margin-top: 56px;
    gap: 12px;
  }
}

@media (max-width: 991px) {
  .h-services__grid {
    margin-top: 40px;
  }
}

@media (max-width: 767px) {
  .h-services__grid {
    display: block;
    margin-top: 32px;
  }
}

.h-services__item {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 240px;
  padding: 32px;
  transition: transform .15s ease-out;
  background: #f4f4f4;
  overflow: hidden;
}

@media (max-width: 1199px) {
  .h-services__item {
    padding: 20px;
  }
}

@media (max-width: 767px) {
  .h-services__item {
    min-height: 212px;
    padding: 16px;
    margin-bottom: 12px;
  }
  .h-services__item:last-child {
    margin-bottom: 0;
  }
  .h-services__item:hover {
    transform: none !important;
    box-shadow: none !important;
  }
}

.h-services__item:hover {
  transform: translateY(-4px);
  box-shadow: 0 5px 15px rgba(42,42,42,.2);
}

.h-services__item:before,.h-services__item:after {
  position: absolute;
}

.h-services__item_1 {
  grid-column: 1/2;
  grid-row: 1/3;
}

.h-services__item_1:before,.h-services__item_1:after {
  width: 586px;
  height: 586px;
  background: #ffe700;
  border-radius: 32px;
  transform: rotate(149deg);
  content: "";
}

.h-services__item_1:before {
  top: -64px;
  left: 268px;
  z-index: 1;
}

.h-services__item_1:after {
  top: 0;
  left: 256px;
  opacity: .33;
  z-index: 0;
}

@media (max-width: 1199px) {
  .h-services__item_1 {
    grid-column: 1/3;
    grid-row: 1/2;
  }
  .h-services__item_1:before {
    width: 502px;
    height: 502px;
    top: -10px;
    left: 308px;
  }
  .h-services__item_1:after {
    width: 502px;
    height: 502px;
    top: 46px;
    left: 292px;
  }
}

@media (max-width: 767px) {
  .h-services__item_1:before {
    width: 462px;
    height: 462px;
    top: 8px;
    left: auto;
    right: -315px;
  }
  .h-services__item_1:after {
    width: 462px;
    height: 462px;
    top: 60px;
    left: auto;
    right: -306px;
  }
}

.h-services__item_2 {
  grid-column: 2/3;
  grid-row: 1/2;
}

@media (max-width: 1199px) {
  .h-services__item_2 {
    grid-column: 1/2;
    grid-row: 2/3;
  }
}

.h-services__item_3 {
  grid-column: 2/3;
  grid-row: 2/3;
}

.h-services__item_5:before {
  width: 394px;
  height: 394px;
  background: #fff;
  border-radius: 32px;
  transform: rotate(132deg);
  content: "";
  top: -154px;
  left: 250px;
  opacity: .33;
  z-index: 0;
}

@media (max-width: 1199px) {
  .h-services__item_5:before {
    top: -98px;
    right: -222px;
    left: auto;
  }
}

@media (max-width: 767px) {
  .h-services__item_5:before {
    top: -100px;
    right: -246px;
  }
}

.h-services__item_6 {
  border: 1px solid #f4f4f4;
  padding: 31px;
}

@media (max-width: 991px) {
  .h-services__item_6 {
    padding: 19px;
  }
}

.h-services__item_6:before,.h-services__item_6:after {
  width: 444px;
  height: 444px;
  background: #fff;
  border-radius: 32px;
  transform: rotate(70deg);
  content: "";
}

.h-services__item_6:before {
  top: 180px;
  left: 140px;
  z-index: 1;
}

.h-services__item_6:after {
  top: 132px;
  left: 164px;
  opacity: .33;
  z-index: 0;
}

@media (max-width: 1199px) {
  .h-services__item_6:before,.h-services__item_6:after {
    width: 348px;
    height: 348px;
  }
  .h-services__item_6:before {
    top: 160px;
    left: -52px;
  }
  .h-services__item_6:after {
    top: 122px;
    left: -32px;
  }
}

@media (max-width: 767px) {
  .h-services__item_6:before {
    top: 167px;
    left: -22px;
  }
  .h-services__item_6:after {
    top: 130px;
    left: -4px;
  }
}

.h-services__item-name {
  position: relative;
  margin-bottom: 40px;
  z-index: 3;
}

.h-services__item-name-link {
  position: relative;
  padding-right: 40px;
  display: flex;
  color: #0f1117;
  gap: 12px;
}

@media (max-width: 767px) {
  .h-services__item-name-link {
    gap: 8px;
  }
}

.h-services__item-name-link:hover:before {
  animation: services .8s ease-in-out infinite;
}

.h-services__item-name-link:after {
  position: absolute;
  width: 960px;
  height: 960px;
  top: 50%;
  left: 50%;
  margin-top: -480px;
  margin-left: -480px;
  content: "";
}

.h-services__item-name-link:before {
  position: absolute;
  width: 28px;
  height: 28px;
  top: 0;
  right: 0;
  background: url(/img/services-icon.svg);
  content: "";
}

.h-services__item-name-key {
  color: #8d8e9e;
  white-space: nowrap;
  flex-shrink: 0;
}

.h-services__item-name-text {
  display: block;
  margin-top: 8px;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
}

.h-services__item-list {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.h-services__item-list-item {
  border: 1px solid #bcbcbc;
  padding: 3px 11px;
  border-radius: 16px;
}

@media (max-width: 991px) {
  .h-services__item-list-item {
    font-size: 14px;
    line-height: 18px;
    border-radius: 13px;
  }
}

@keyframes services {
  0% {
    transform: translate(0, 0);
    opacity: .5;
  }
  60%,100% {
    transform: translate(3px, -3px);
    opacity: 1;
  }
}

.h-news {
  padding-top: 64px;
  overflow: hidden;
}

@media (max-width: 991px) {
  .h-news {
    padding-top: 36px;
  }
}

@media (max-width: 767px) {
  .h-news {
    padding-top: 24px;
  }
}

.h-news__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
  margin-bottom: 52px;
}

@media (max-width: 991px) {
  .h-news__head {
    margin-bottom: 40px;
  }
}

@media (max-width: 767px) {
  .h-news__head {
    margin-bottom: 32px;
  }
}

@media (max-width: 574px) {
  .h-news__head {
    flex-wrap: wrap;
    gap: 16px;
  }
}

.h-news__head-title {
  margin-bottom: 0;
}

@media (max-width: 574px) {
  .h-news__head-title {
    width: 100%;
  }
}

.h-news__slider {
  overflow: hidden;
}

@media (max-width: 991px) {
  .h-news__slider {
    overflow: visible;
  }
}

@media (max-width: 991px) {
  .h-news__slider .swiper {
    overflow: visible;
  }
}

.h-news__swiper {
  margin: 0 -8px;
}

.h-news__item {
  padding: 0 8px;
}

.h-news__item.swiper-slide {
  width: 25%;
  height: auto;
}

@media (max-width: 1199px) {
  .h-news__item.swiper-slide {
    width: 33.3333334%;
  }
}

@media (max-width: 991px) {
  .h-news__item.swiper-slide {
    width: 100%;
    padding-right: 6px;
    padding-left: 6px;
    max-width: 304px;
  }
}

@media (max-width: 359px) {
  .h-news__item.swiper-slide {
    max-width: calc(100vw - 82px);
    width: 100%;
  }
}

.h-news__item-wrap {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 12px;
  height: 100%;
  padding: 16px;
  background: #f7f8fa;
}

.h-news__item-name {
  margin-bottom: 32px;
  font-weight: 600;
  font-size: 20px;
  line-height: 1.4;
}

.h-news__item-link {
  border-bottom: 1px solid rgba(0,0,0,0);
  color: #0f1117;
  transition: border-color .15s ease-out;
}

.h-news__item-link:hover {
  border-color: #0f1117;
}

.h-news__item-picture {
  display: block;
  height: 177px;
}

.h-news__item-img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.h-news__item-bottom {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 24px;
  margin-top: auto;
}

.h-news__item-date {
  color: #8d8e9e;
}

.h-news__item-btn {
  position: relative;
  display: block;
  width: 36px;
  height: 36px;
  border: 1px solid #cecece;
  text-indent: -99999em;
  overflow: hidden;
}

.h-news__item-btn:before {
  position: absolute;
  width: 18px;
  height: 18px;
  margin-top: -9px;
  margin-left: -9px;
  top: 50%;
  left: 50%;
  transition: opacity .15s ease-out;
  content: "";
}

.h-news__item-btn:before {
  background: url(/img/arrow-dark.svg);
}

.h-news__item-btn:hover {
  color: #0f1117;
  border-color: #ffe700;
  background: #ffe700;
}

.h-news__item-btn:hover:before {
  opacity: 1;
  animation: btn .8s ease-in-out infinite;
}