@charset "UTF-8";
@font-face {
  font-family: "Neue Haas Grotesk";
  src: url("../font/NeueHaasDisplay-Bold.woff2") format("woff2"), url("../font/NeueHaasDisplay-Bold.ttf") format("truetype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Haas Grotesk";
  src: url("../font/NeueHaasDisplay-Roman.woff2") format("woff2"), url("../font/NeueHaasDisplay-Roman.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Haas Grotesk";
  src: url("../font/NeueHaasDisplay-Mediu.woff2") format("woff2"), url("../font/NeueHaasDisplay-Mediu.ttf") format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Neue Haas Grotesk";
  src: url("../font/NeueHaasDisplay-Light.woff2") format("woff2"), url("../font/NeueHaasDisplay-Light.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Neue Haas Grotesk", Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  background: #ffffff;
}

img, picture, video, canvas, svg {
  max-width: 100%;
}

.container {
  max-width: 1320px;
  min-width: 360px;
  margin: 0 auto;
  position: relative;
  width: 100%;
}

.wrapper {
  min-width: 360px;
}

svg, img {
  transition: 0.2s;
  max-width: 100%;
}

._fixed {
  overflow: hidden;
}

@media (max-width: 1439px) {
  .container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  height: 50px;
  font-weight: 600;
  font-size: 16px;
  line-height: 140%;
  letter-spacing: 0%;
  padding: 0 15px;
  width: 100%;
}

.btn-group {
  display: flex;
  gap: 6px;
  height: 50px;
  text-decoration: none;
}
.btn-group:hover svg {
  transform: rotate(45deg);
}

.btn-white {
  color: rgb(213, 99, 39);
  background: #fff;
}

.btn-orange {
  color: #fff;
  background: rgb(213, 99, 39);
}

.btn-arr.btn-orange {
  color: #fff;
  background: rgb(213, 99, 39);
}

.btn-arr {
  background: #fff;
  border-radius: 6px;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.dot-before {
  margin-left: 12px;
  position: relative;
}

.dot-before::before {
  position: absolute;
  left: -12px;
  top: 50%;
  transform: translateY(-50%);
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgb(213, 99, 39);
}

.orange-t {
  color: #d56327;
}

.bold-t {
  font-weight: 600;
}

.grey-t {
  color: #767676;
}

video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.box-shadow {
  box-shadow: 0px 12px 32px 0px rgba(65, 0, 0, 0.03);
}

.bl-border {
  position: relative;
  border-left: 1px solid rgb(239, 241, 245);
  border-bottom: 1px solid rgb(239, 241, 245);
}
.bl-border::before {
  position: absolute;
  bottom: -5px;
  left: -5px;
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: rgb(239, 241, 245);
}

.l-border {
  position: relative;
  border-left: 1px solid rgb(239, 241, 245);
}
.l-border::before {
  position: absolute;
  bottom: -5px;
  left: -5px;
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: rgb(239, 241, 245);
}

.b-border {
  position: relative;
  border-bottom: 1px solid rgb(239, 241, 245);
}
.b-border::before {
  position: absolute;
  bottom: -5px;
  left: -5px;
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: rgb(239, 241, 245);
}

@media (max-width: 992px) {
  .btn {
    font-size: 14px;
  }
}
.feedback__img-big-img.feedback__img {
  left: 0;
}

.feedback__img-big-img.feedback__img img {
  max-width: 700px;
}

.feedback__img.feedback__img-detail {
  bottom: 0;
  left: 0;
  top: 0;
  overflow: hidden;
  z-index: 0;
  border-radius: 24rem;
  position: absolute;
}
.feedback__img.feedback__img-detail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: none;
}

.feedback__window {
  position: relative;
  z-index: 5;
}

.modal:not(.doc-modal) {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 1000;
  justify-content: center;
  align-items: center;
}

.modal.show {
  display: flex;
}

.modal-content {
  background: white;
  border-radius: 24px;
  position: relative;
  max-width: 560px;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
  animation: modalFadeIn 0.3s ease;
  padding: 32px;
}

@keyframes modalFadeIn {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.modal-header h3 {
  font-weight: 500;
  font-size: 32px;
  line-height: 120%;
  text-align: center;
  padding-bottom: 8px;
  color: rgb(26, 26, 26);
}

.modal-header .modal-header-title {
  font-weight: 500;
  font-size: 32px;
  line-height: 120%;
  text-align: left;
  padding-bottom: 8px;
  color: rgb(26, 26, 26);
}

.modal-header p {
  font-weight: 400;
  font-size: 16px;
  line-height: 140%;
  text-align: left;
  color: rgb(63, 63, 63);
}

.close-modal {
  background: #fff;
  border: none;
  font-size: 32px;
  cursor: pointer;
  color: rgb(63, 63, 63);
  line-height: 1;
  padding: 8px;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color 0.2s;
  position: absolute;
  right: -30px;
  top: -30px;
  border-radius: 6px;
}

.close-modal:hover {
  color: #e60000;
}

.modal-body {
  padding-top: 20px;
}

.form-group {
  margin-bottom: 8px;
}

.form-group input,
.form-group textarea,
.form-group select {
  width: 100%;
  padding: 10px 16px;
  height: 56px;
  border: 1px solid rgb(239, 241, 245);
  border-radius: 12px;
  font-size: 14px;
  box-sizing: border-box;
  transition: border-color 0.2s;
  background: rgb(239, 241, 245);
  font-weight: 400;
  font-size: 16px;
  line-height: 140%;
}

.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus {
  outline: none;
  border-color: #e6a500;
}

.form-group textarea {
  resize: vertical;
  min-height: 80px;
}

.modal-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  padding-top: 8px;
}

.modal__form-bottom {
  padding-top: 0;
}

.modal__policy {
  font-weight: 400;
  font-size: 12px;
  line-height: 140%;
  color: rgb(118, 118, 118);
}
.modal__policy a {
  color: rgb(213, 99, 39);
}

.btn {
  padding: 10px 20px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  border: none;
  transition: all 0.2s;
}

.btn-cancel {
  background: #f5f5f5;
  color: #666;
}

.btn-cancel:hover {
  background: #e8e8e8;
}

.btn-submit {
  background: #e6a500;
  color: white;
}

.btn-submit:hover {
  background: #cc9400;
}

/* Кнопка для открытия модалки */
.open-modal-btn {
  background: #e6a500;
  color: white;
  border: none;
  padding: 12px 24px;
  border-radius: 8px;
  font-size: 16px;
  cursor: pointer;
  margin: 50px;
}

.open-modal-btn:hover {
  background: #cc9400;
}

.main__screen-wrapper {
  background: #eff1f7;
  margin-bottom: 22px;
}

.main__screen {
  padding-bottom: 56px;
}

.main__title {
  padding-top: 110px;
  max-width: 100%;
  width: 100%;
  max-width: 850px;
  padding-bottom: 40px;
}
.main__title h1 {
  font-weight: 500;
  font-size: 56px;
  line-height: 120%;
}

.main__bg-img {
  position: absolute;
  right: 0;
  top: 0;
  max-width: 700px;
  opacity: 0.3;
  top: -50px;
}

.main__bottom {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  border-top: 1px solid #dddee2;
}

.main__form {
  background: rgb(213, 99, 39);
  border-radius: 16px;
  padding: 24px;
  color: #fff;
  width: 100%;
  max-width: 432px;
  margin-top: 40px;
  position: relative;
}

.main__form-bg {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}

.main__form-title {
  font-weight: 500;
  font-size: 20px;
  line-height: 120%;
  letter-spacing: 0%;
  position: relative;
  z-index: 55;
}

.main__form-text {
  padding-top: 8px;
}

.main__form-bottom {
  margin-top: 16px;
  position: relative;
  z-index: 5;
}

.main__tiles {
  display: flex;
  max-width: 753px;
}

.main__tile {
  padding: 40px 12px 0;
  border-left: 1px solid #dddee2;
  flex: 1;
}

.main__tile-img {
  margin-bottom: 20px;
}

.main__tile-text {
  font-weight: 400;
  font-size: 16px;
  line-height: 140%;
  letter-spacing: 0%;
  color: rgb(63, 63, 63);
}

.main__item {
  display: flex;
  border-bottom: 1px solid #eff1f5;
}

.main__item-name {
  width: 200px;
  flex-shrink: 0;
  padding-top: 78px;
  font-weight: 400;
  font-size: 20px;
  line-height: 140%;
  letter-spacing: 0%;
  color: rgb(141, 141, 141);
}

.main__item-content {
  display: flex;
  gap: 12px;
  padding-left: 22px;
  border-left: 1px solid #eff1f5;
  padding-top: 78px;
  padding-bottom: 50px;
  position: relative;
}

.main__item-decor {
  position: relative;
}

.main__item-decor::before {
  background: #eff1f5;
  width: 1px;
  height: 220px;
  transform: rotate(-135deg);
  content: "";
  position: absolute;
  left: -79px;
  bottom: -32px;
  z-index: 5;
}

.main__item-main {
  background: rgb(213, 99, 39);
  position: relative;
  padding: 16px 24px;
  border-radius: 16px;
  max-width: 320px;
  height: 512px;
  overflow: hidden;
}

.main__item-main-title {
  font-weight: 500;
  font-size: 24px;
  line-height: 120%;
  letter-spacing: 0%;
  text-align: center;
  color: #fff;
}

.main__item-main-content {
  position: relative;
  z-index: 5;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 100%;
}

.light-bg {
  position: absolute;
  width: 300px;
  height: 400px;
  background: radial-gradient(circle, #ff8c37 0%, #ff8c37 60%, #ff8c37 100%);
  filter: blur(35px);
  top: 70%;
  left: 30%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  z-index: 3;
}

.main__item-main-img {
  width: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-40%);
  z-index: 4;
}

.main__item-main-bg {
  position: absolute;
  top: 86px;
  left: 0;
  z-index: 4;
}

.main__item-tiles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}

.main__item-tile {
  padding: 16px;
  background: rgb(245, 247, 251);
  border-radius: 16px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 250px;
  text-decoration: none;
}

.main__item-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.main__item-tile-text {
  font-weight: 500;
  font-size: 14px;
  line-height: 124%;
  letter-spacing: 0%;
  position: relative;
  z-index: 5;
  text-decoration: none;
  padding-bottom: 8px;
  border-bottom: 1px solid #dddee2;
}

.main__item-tile-more {
  display: flex;
  gap: 12px;
  align-items: center;
  margin-top: 8px;
  font-weight: 500;
  font-size: 14px;
  line-height: 124%;
  text-decoration: none;
  color: rgb(63, 63, 63);
  transition: 0.2s;
}
.main__item-tile-more:hover {
  color: rgb(213, 99, 39);
}
.main__item-tile-more:hover .main__item-tile-more-arr {
  background: rgb(213, 99, 39);
}
.main__item-tile-more:hover .main__item-tile-more-arr svg {
  transform: rotate(45deg);
}

.main__item-tile-more-arr {
  width: 16px;
  height: 16px;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(26, 26, 26);
  transition: 0.2s;
}

.main__item-tile-num {
  color: rgba(63, 63, 63, 0.5);
  padding-bottom: 6px;
}

.main__item-tile-name {
  color: rgb(63, 63, 63);
}

.projects .main__item-name {
  padding-top: 50px;
}

.projects .main__item-content {
  padding-top: 50px;
}

.projects .main__item-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
  padding-bottom: 100px;
}

.projects .projects__header {
  max-width: 100%;
  margin: 0;
}
.projects .projects__header h3, .projects .projects__header h2 {
  font-weight: 500;
  font-size: 32px;
  line-height: 120%;
  color: rgb(63, 63, 63);
  padding-bottom: 8px;
}
.projects .projects__header p {
  font-weight: 400;
  font-size: 16px;
  line-height: 140%;
  color: rgb(63, 63, 63);
}

.projects__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-column-gap: 12px;
  grid-row-gap: 24px;
}

.projects__item {
  background: rgb(245, 247, 251);
  border-radius: 16px;
  padding: 8px 8px 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
}

.project__img {
  border-radius: 12px;
  overflow: hidden;
  position: relative;
  height: 260px;
}

.project__img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.tag {
  position: absolute;
  top: 12px;
  left: 12px;
  border-radius: 8px;
  padding: 8px 12px;
  display: flex;
  align-items: center;
  color: #fff;
  background: rgba(0, 0, 0, 0.32);
  backdrop-filter: blur(12px);
  font-weight: 400;
  font-size: 14px;
  line-height: 140%;
  letter-spacing: 0%;
}

.project__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1;
}

.project__name {
  font-weight: 600;
  font-size: 18px;
  line-height: 124%;
  color: rgb(63, 63, 63);
  padding-bottom: 8px;
}

.project__text {
  font-weight: 500;
  font-size: 16px;
  line-height: 124%;
  color: rgba(63, 63, 63, 0.68);
}

.project__link {
  font-weight: 600;
  font-size: 16px;
  line-height: 140%;
  text-decoration: underline;
  color: rgb(213, 99, 39);
  display: block;
  padding-top: 12px;
}

.pos {
  background: linear-gradient(101.2deg, #F7F9F9 0%, #EDEFF6 100%);
  padding: 72px 0;
}

.pos__top {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  max-width: 777px;
  padding-bottom: 24px;
}

.pos__top-name {
  font-weight: 400;
  font-size: 20px;
  line-height: 140%;
  color: rgb(141, 141, 141);
}

.pos__top-title {
  max-width: 555px;
  font-weight: 500;
  font-size: 32px;
  line-height: 120%;
  color: rgb(26, 26, 26);
}

.pos__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
}

.pos__item {
  background: rgb(255, 255, 255);
  border-radius: 16px;
  padding: 8px 8px 24px;
}

.pos__img-wrap {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  height: 243px;
  margin-bottom: 16px;
}

.pos__tag {
  position: absolute;
  top: 16px;
  left: 16px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgb(255, 255, 255);
}
.pos__tag img {
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.pos__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.pos__content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 200px;
}

.pos__text {
  text-align: center;
}

.pos__name {
  font-weight: 600;
  font-size: 18px;
  line-height: 124%;
  padding-bottom: 8px;
  color: rgb(63, 63, 63);
}

.pos__descr {
  font-weight: 500;
  font-size: 14px;
  line-height: 124%;
  color: rgba(63, 63, 63, 0.8);
}

.about__wrapper {
  display: flex;
  align-items: flex-start;
  overflow: hidden;
}

.about__name {
  width: 150px;
  flex-shrink: 0;
  padding: 100px 0;
  color: #8d8d8d;
  font-size: 20px;
}

.about__content-wrap {
  border-left: 1px solid #eff1f5;
  position: relative;
}

.about__content {
  padding: 100px 0 32px;
  display: flex;
  gap: 24px;
  align-items: center;
  padding-left: 24px;
}

.about__video-wrap {
  width: 530px;
  height: 265px;
  flex-shrink: 0;
  position: relative;
  border-radius: 16px;
  overflow: hidden;
}

.about__partners {
  margin-bottom: 32px;
  padding-left: 24px;
  border-top: 1px solid #eff1f5;
}

.about__partners-title {
  font-weight: 500;
  font-size: 32px;
  line-height: 120%;
  padding-bottom: 24px;
  padding-top: 32px;
}

.about__partners-list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
}

.about__partners-item {
  background: rgb(245, 247, 251);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  border-radius: 16px;
  height: 93px;
}
.about__partners-item img {
  max-width: 150px;
}

.about__text {
  font-weight: 500;
  font-size: 24px;
  line-height: 128%;
  color: rgb(26, 26, 26);
}

.video__poster {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 5;
}
.video__poster img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.video__play {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
  cursor: pointer;
  transition: 0.5s;
}
.video__play:hover {
  transform: translate(-50%, -50%) scale(1.1);
}

.about__video.playing ~ .video__poster,
.about__video.playing ~ .video__play,
.about__video:playing ~ .video__poster,
.about__video:playing ~ .video__play {
  display: none;
}

.about__decor-1 {
  content: "";
  position: absolute;
  width: 1px;
  background: rgb(239, 241, 245);
  height: 220px;
  transform: rotate(-135deg);
  transform-origin: bottom left;
  bottom: 150px;
  left: 0;
}

.about__decor-2 {
  content: "";
  position: absolute;
  width: 1px;
  background: rgb(239, 241, 245);
  height: 220px;
  transform: rotate(135deg);
  transform-origin: top left;
  top: 150px;
  left: 0;
}

.service__main {
  position: relative;
  height: 630px;
  z-index: 3;
}
.service__main::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(0deg, rgba(0, 0, 0, 0.24), rgba(0, 0, 0, 0.24)), linear-gradient(359.94deg, rgba(0, 0, 0, 0) 66.21%, rgba(0, 0, 0, 0.16) 93.2%), linear-gradient(240.63deg, rgba(0, 0, 0, 0) 40.19%, rgba(0, 0, 0, 0.16) 70.89%);
  z-index: 5;
}

.service__main-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.service__main-container {
  height: 100%;
  position: relative;
}

.breadcrumbs {
  position: relative;
  top: 115px;
  z-index: 5;
}

.breadcrumbs-item {
  font-weight: 500;
  font-size: 14px;
  line-height: 124%;
  color: #fff;
}

.breadcrumbs-item:first-child a {
  color: #9598a2;
}

.breadcrumbs-item:last-child {
  color: #ffffff;
}

.breadcrumbs-separator {
  font-weight: 500;
  font-size: 14px;
  line-height: 124%;
  color: #9698a2;
}

.service__main-content {
  position: absolute;
  bottom: 40px;
  max-width: 765px;
  z-index: 5;
}

.service__main-header {
  font-weight: 500;
  font-size: 56px;
  line-height: 120%;
  color: #fff;
}

.service__main-text {
  font-weight: 400;
  font-size: 16px;
  line-height: 140%;
  color: #fff;
}

.service__main-form {
  height: 250px;
  position: absolute;
  right: 0;
  bottom: -100px;
  margin-top: 0;
  z-index: 5;
}
.service__main-form .main__form-title {
  font-size: 24px;
}
.service__main-form .main__form-text {
  font-size: 16px;
}

.service__bottom-text {
  padding-top: 56px;
  padding-bottom: 32px;
}

.service__block-title.service__bottom-text {
  max-width: 100%;
}

.service__block {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}

.service__block-name {
  margin-top: 80px;
  width: 120px;
  flex-shrink: 0;
  color: rgb(141, 141, 141);
  position: sticky;
  top: 10px;
  font-size: 18px;
}
.service__block-name::before {
  position: absolute;
  left: -12px;
  top: 10px;
  transform: translateY(-50%);
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgb(213, 99, 39);
}

.service__block-name.empty::before {
  display: none;
}

.service__block-content {
  padding-top: 80px;
  padding-left: 20px;
  border-left: 1px solid rgb(239, 241, 245);
  border-bottom: 1px solid rgb(239, 241, 245);
  width: 100%;
  position: relative;
}
.service__block-content::before {
  position: absolute;
  bottom: -5px;
  left: -5px;
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: rgb(239, 241, 245);
}
.service__block-content:has(.service__block-nums) {
  padding-left: 0;
}
.service__block-content:has(.service__block-nums) .service__block-title {
  padding-left: 20px;
}

.service__block-title {
  font-weight: 500;
  font-size: 32px;
  line-height: 120%;
  max-width: 800px;
}

.service__block-subtitle {
  padding: 16px 0 0 0;
  font-weight: 500;
  font-size: 16px;
  line-height: 140%;
  color: rgba(63, 63, 63, 0.8);
}

.service__block-grid-1 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 32px;
  position: relative;
}

.service__block-item-1 {
  padding: 0 10px 50px;
  height: 190px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-left: 1px solid rgb(239, 241, 245);
  position: relative;
}
.service__block-item-1::before {
  position: absolute;
  bottom: -5px;
  left: -5px;
  content: "";
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: rgb(239, 241, 245);
}
.service__block-item-1 .service__block-item-top {
  display: flex;
  justify-content: space-between;
}
.service__block-item-1 .service__block-item-img {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgb(245, 247, 251);
  border-radius: 50%;
}
.service__block-item-1 .service__block-item-img img {
  width: 32px;
  height: 32px;
}
.service__block-item-1 .service__block-item-num {
  font-weight: 500;
  font-size: 14px;
  line-height: 124%;
  color: rgba(63, 63, 63, 0.5);
}
.service__block-item-1 .service__block-item-bottom {
  font-weight: 500;
  font-size: 16px;
  line-height: 124%;
  color: rgb(63, 63, 63);
}

.service__block-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-top: 24px;
  margin-bottom: 56px;
}

.service__block-item-2 {
  border: 1px solid rgb(239, 241, 245);
  border-radius: 24px;
  overflow: hidden;
  position: relative;
}
.service__block-item-2 .sb2-img-wrap {
  margin-bottom: 24px;
  height: 325px;
}
.service__block-item-2 .sb2-img-wrap .sb2-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 24px;
}
.service__block-item-2 .sb2-tag {
  position: absolute;
  top: 16px;
  left: 16px;
  display: flex;
  align-items: center;
  gap: 6px;
  border-radius: 40px;
  font-weight: 500;
  font-size: 14px;
  line-height: 140%;
  padding: 0 12px;
  height: 34px;
  color: #fff;
}
.service__block-item-2 .sb2-text {
  padding: 0 24px 46px;
  font-weight: 500;
  font-size: 16px;
  line-height: 140%;
  color: rgba(63, 63, 63, 0.8);
}
.service__block-item-2 .sb2-text li::marker {
  color: rgb(213, 99, 39);
}
.service__block-item-2 .bg-red {
  background: rgb(235, 66, 66);
}
.service__block-item-2 .bg-green {
  background: rgb(32, 197, 86);
}
.service__block-item-2.border-green {
  border: 1.5px solid rgb(32, 197, 86);
}

.service__block-title-sm {
  font-weight: 500;
  font-size: 24px;
  line-height: 132%;
  padding-bottom: 24px;
}

.service__block-grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
  padding-bottom: 56px;
  margin-top: 20px;
}
.service__block-grid-3 .service__block-item-3 {
  min-height: 237px;
  padding: 24px 24px 48px;
  border: 1px solid rgb(213, 99, 39);
  border-radius: 16px;
}
.service__block-grid-3 .sb3-num {
  font-weight: 500;
  font-size: 40px;
  line-height: 100%;
  color: rgb(213, 99, 39);
  padding-bottom: 64px;
}
.service__block-grid-3 .sb3-text {
  font-weight: 400;
  font-size: 18px;
  line-height: 132%;
  color: rgb(26, 26, 26);
}

.service__block-num {
  display: flex;
  align-items: flex-start;
  padding-top: 27px;
}

.service__block-num-num {
  width: 150px;
  flex-shrink: 0;
  font-weight: 500;
  font-size: 32px;
  line-height: 120%;
  color: rgb(213, 99, 39);
  padding-left: 35px;
  position: sticky;
  top: 10px;
}
.service__block-num-num::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 1px;
  background: rgb(213, 99, 39);
}

.service__block-num-img {
  border-radius: 16px 16px 0 0;
  overflow: hidden;
  width: 440px;
  flex-shrink: 0;
  margin-right: 72px;
  border: 2px solid rgb(239, 241, 245);
  border-bottom: none;
}
.service__block-num-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.service__block-num-title {
  font-weight: 500;
  font-size: 20px;
  line-height: 132%;
  color: rgb(26, 26, 26);
  padding-bottom: 12px;
  max-width: 370px;
}

.service__block-num-text {
  font-weight: 500;
  font-size: 14px;
  line-height: 124%;
  color: rgb(63, 63, 63);
  padding-bottom: 15px;
}

.service__block-stats {
  display: flex;
  padding-left: 20px;
}

.service__block-stat {
  min-height: 165px;
  padding-left: 15px;
  padding-right: 20px;
}

.service__block-stat-num {
  font-weight: 500;
  font-size: 32px;
  line-height: 120%;
  text-transform: uppercase;
  color: rgb(213, 99, 39);
  padding-bottom: 12px;
}

.service__block-stat-text {
  font-weight: 500;
  font-size: 14px;
  line-height: 124%;
  color: rgb(63, 63, 63);
}

.service__block-space-l {
  width: 120px;
}

.service__block-faqs {
  display: flex;
  margin-top: 24px;
  gap: 24px;
}

.service__block-faq-col {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
}

.service__block-faq {
  padding: 24px;
  border-radius: 20px;
  border: 1px solid rgb(239, 241, 245);
  min-height: 125px;
  cursor: pointer;
}
.service__block-faq:hover .service__block-faq-num {
  color: rgb(213, 99, 39);
}
.service__block-faq:hover .service__block-faq-qu {
  color: rgb(213, 99, 39);
}
.service__block-faq:hover .service__block-faq-arr {
  border: 1px solid rgb(213, 99, 39);
  background: #fff;
}
.service__block-faq:hover svg {
  color: rgb(213, 99, 39);
}
.service__block-faq .plus {
  display: block;
}
.service__block-faq .minus {
  display: none;
}
.service__block-faq.opened .service__block-faq-arr {
  background: rgb(213, 99, 39);
}
.service__block-faq.opened .service__block-faq-arr svg {
  color: #fff;
}
.service__block-faq.opened .service__block-faq-arr .plus {
  display: none;
}
.service__block-faq.opened .service__block-faq-arr .minus {
  display: block;
}
.service__block-faq.opened .service__block-faq-bottom {
  grid-template-rows: 1fr;
}

.service__block-faq-text {
  display: flex;
  gap: 8px;
}

.service__block-faq-top {
  display: flex;
  justify-content: space-between;
  gap: 20px;
}

.service__block-faq-num {
  color: rgb(106, 106, 106);
  font-weight: 400;
  font-size: 20px;
  line-height: 120%;
  text-align: center;
  transition: 0.2s;
}

.service__block-faq-qu {
  font-weight: 400;
  font-size: 20px;
  line-height: 120%;
  color: rgb(36, 36, 36);
  transition: 0.2s;
}

.service__block-faq-arr {
  width: 44px;
  height: 44px;
  border-radius: 50px;
  background: rgb(245, 247, 251);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  cursor: pointer;
  transition: 0.3s;
}

.service__block-faq-bottom {
  display: grid;
  grid-template-rows: 0fr;
  transition: 0.3s;
}

.service__block-faq-answer {
  overflow: hidden;
  padding-top: 15px;
  font-weight: 400;
  font-size: 18px;
  line-height: 120%;
  color: rgb(36, 36, 36);
}
.service__block-faq-answer ul {
  padding: 12px 0;
}
.service__block-faq-answer ul li {
  margin-bottom: 12px;
  margin-left: 15px;
  color: rgb(78, 78, 78);
}
.service__block-faq-answer ul li::marker {
  color: rgb(213, 99, 39);
}

.service__block-table-wrap {
  margin-bottom: 50px;
}

.service__block-table {
  margin-top: 24px;
  margin-bottom: 16px;
  border-radius: 24px;
  overflow: hidden;
}

.sb__table-top .sb__table-cell {
  font-weight: 600;
  font-size: 20px;
  line-height: 132%;
  color: rgb(26, 26, 26);
}

.sb__table-line {
  display: flex;
}
.sb__table-line:nth-child(odd) {
  background: rgb(245, 247, 251);
}

.sb__table-cell {
  font-weight: 500;
  font-size: 16px;
  line-height: 124%;
  color: rgb(63, 63, 63);
  padding: 24px;
  width: 100%;
}
.sb__table-cell:first-child {
  max-width: 630px;
  flex-shrink: 0;
}
.sb__table-cell:nth-child(2) {
  width: 100%;
  text-align: center;
}
.sb__table-cell:nth-child(3) {
  width: 100%;
  text-align: center;
}

.sb__table-note {
  font-weight: 500;
  font-size: 14px;
  line-height: 124%;
  color: rgb(63, 63, 63);
  margin-left: 24px;
  padding-bottom: 50px;
}

.service__table-wrapper {
  border-radius: 24px;
  overflow-y: hidden;
  margin-top: 24px;
  margin-bottom: 80px;
}

.service__table-wrapper.isNote {
  margin-bottom: 15px;
}

table.service__table {
  border-collapse: collapse;
  width: 100%;
}
table.service__table tr:nth-child(even) {
  background: #eff1f5;
}
table.service__table tr th {
  padding: 24px;
  text-align: left;
  background: #eff1f5;
}
table.service__table tr td {
  padding: 24px;
}

.menu__dropdown-wrap {
  padding-top: 10px;
  position: absolute;
  top: calc(100% - 5px);
  left: -50px;
}

.menu__dropdown {
  display: flex;
  gap: 12px;
  max-width: 870px;
  border: 1px solid rgb(239, 241, 245);
  border-radius: 24px;
  padding: 24px;
  background: #fff;
}
.menu__dropdown.hidden {
  opacity: 0;
  visibility: hidden;
  display: none;
}
.menu__dropdown .main__item-main {
  height: 250px;
  max-width: 200px;
  flex-shrink: 0;
}
.menu__dropdown .main__item-main-title {
  font-weight: 500;
  font-size: 14px;
  line-height: 120%;
  text-align: center;
}
.menu__dropdown .main__item-main-bg {
  top: 86px;
}
.menu__dropdown .main__item-main-img {
  top: 70%;
}
.menu__dropdown .btn-group {
  height: 33px;
}
.menu__dropdown .btn-group .btn {
  font-weight: 600;
  font-size: 12px;
  line-height: 140%;
  padding: 0 5px;
  height: auto;
}

.menu__dropdown-line {
  display: flex;
  justify-content: space-between;
  margin-bottom: 16px;
  margin-top: 16px;
  border-bottom: 1px solid rgb(239, 241, 245);
}
.menu__dropdown-line:first-child {
  margin-top: 0;
}
.menu__dropdown-line:last-child {
  margin-bottom: 0;
}

.menu__dropdown-item {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  text-decoration: none;
  color: rgb(63, 63, 63);
  transition: 0.2s;
}
.menu__dropdown-item:hover {
  color: rgb(213, 99, 39);
}
.menu__dropdown-item:nth-child(odd) {
  padding-right: 24px;
  border-right: 1px solid rgb(239, 241, 245);
}
.menu__dropdown-item:nth-child(even) {
  padding-left: 24px;
}

.menu__dropdown-img {
  width: 56px;
  height: 56px;
  border-radius: 12px;
  border: 1px solid rgb(239, 241, 245);
  background: rgb(245, 247, 251);
  flex-shrink: 0;
}

.menu__dropdown-text {
  font-weight: 500;
  font-size: 14px;
  line-height: 124%;
  text-decoration: none;
}

@media (max-width: 1200px) {
  .service__main {
    height: 700px;
  }
  .service__main-content {
    max-width: 500px;
  }
  .service__main-header {
    font-size: 42px;
  }
  .service__main-form {
    right: 20px;
  }
  .service__block-num-img {
    margin-right: 24px;
  }
  .service__block-num-num {
    width: 100px;
  }
  .feedback__img-big-img.feedback__img img {
    max-width: 500px;
  }
  .sb__table-cell {
    font-size: 16px;
  }
  .sb__table-cell:first-child {
    max-width: 400px;
  }
  .about__partners-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 992px) {
  .main__bottom {
    flex-direction: column;
  }
  .main__form {
    max-width: 600px;
  }
  .main__title h1 {
    font-size: 36px;
  }
  .main__tiles {
    flex-direction: column;
  }
  .main__tile {
    padding: 10px 12px;
  }
  .main__item-name {
    width: 100px;
  }
  .main__item-tiles {
    grid-template-columns: repeat(2, 1fr);
  }
  .main__item-img {
    width: 150px;
    margin: 0 auto;
  }
  .main__item-tile {
    min-height: 200px;
  }
  .projects__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .pos__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .about__wrapper {
    flex-direction: column;
  }
  .about__name {
    width: 100px;
    padding: 0;
    margin-top: 20px;
  }
  .about__content {
    border-left: none;
    padding: 20px 20px 20px;
    flex-direction: column;
  }
  .about__video-wrap {
    width: 100%;
  }
  .projects__header h3,
  .projects__header h2 {
    font-size: 24px;
    line-height: 110%;
  }
  .pos__top-title {
    font-size: 24px;
    line-height: 110%;
  }
  .about__text {
    font-size: 22px;
    line-height: 110%;
  }
  .service__main-form.main__form {
    max-width: 432px;
  }
  .service__main-wrapper {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin-top: 100px;
  }
  .service__main-header {
    padding-bottom: 20px;
  }
  .breadcrumbs {
    top: 60px;
  }
  .service__main-content {
    position: relative;
    max-width: 100%;
    bottom: auto;
  }
  .service__main-form {
    position: relative;
    bottom: auto;
    right: auto;
  }
  .service__block-grid-1 {
    grid-template-columns: repeat(2, 1fr);
  }
  .service__block-item-1 {
    border-bottom: 1px solid rgb(239, 241, 245);
    margin-bottom: -1px;
    padding-top: 5px;
  }
  .service__block-name {
    width: 100px;
    font-size: 14px;
  }
  .service__block-content {
    padding-top: 30px;
  }
  .service__block-name {
    margin-top: 30px;
  }
  .service__block-grid-3 {
    grid-template-columns: 1fr;
  }
  .service__block-item-2 .sb2-text {
    padding: 0 12px 24px;
  }
  .service__block-grid-3 .service__block-item-3 {
    min-height: 150px;
    padding: 12px 12px 24px;
  }
  .service__block-grid-3 .sb3-num {
    padding-bottom: 24px;
    font-size: 24px;
  }
  .service__block-num {
    flex-direction: column;
    gap: 20px;
    padding: 20px;
  }
  .service__block-num-img {
    width: 100%;
    max-width: 450px;
    margin: 0 auto;
  }
  .service__block-num-title {
    max-width: 100%;
  }
  .service__block-space-l {
    width: 100px;
  }
  .service__block-num-img {
    border-bottom: 2px solid rgb(239, 241, 245);
  }
  .service__block-faq {
    min-height: auto;
    padding: 15px;
  }
  .service__block-faqs {
    flex-direction: column;
  }
  .service__block-faq-qu {
    font-size: 18px;
  }
  .sb__table-cell {
    font-size: 14px;
    padding: 12px;
  }
  .sb__table-cell:first-child {
    max-width: 200px;
  }
  .sb__table-top .sb__table-cell {
    font-size: 16px;
  }
}
@media (max-width: 768px) {
  .main__item-content {
    flex-direction: column;
  }
  .main__item-main {
    max-width: 100%;
    height: 300px;
  }
  .main__title h1 {
    font-size: 28px;
  }
  .pos {
    padding: 30px 0;
  }
  .pos__top {
    flex-direction: column;
    gap: 10px;
  }
  .service__main {
    height: auto;
    padding-bottom: 20px;
  }
  .service__main-header {
    font-size: 32px;
  }
  .service__block-grid-2 {
    grid-template-columns: 1fr;
  }
  .service__block-title {
    font-size: 24px;
  }
  .service__block-item-2 .sb2-img-wrap {
    height: 250px;
  }
  .service__block-stats {
    flex-direction: column;
  }
  .service__block-num-num {
    font-size: 24px;
  }
  .service__block-stat {
    min-height: 120px;
    border-bottom: 1px solid rgb(239, 241, 245);
    margin-bottom: -1px;
  }
  .service__block-stat-num {
    font-size: 24px;
    padding-top: 5px;
  }
  .service__bottom-text {
    padding-top: 24px;
    padding-bottom: 12px;
    font-size: 18px;
  }
  .service__block-faq-qu {
    font-size: 16px;
  }
  .modal-content {
    padding: 20px;
  }
  .modal-header h3 {
    font-size: 22px;
  }
  .modal-header .modal-header-title {
    font-size: 22px;
  }
  .modal-header p {
    font-size: 14px;
  }
  .modal {
    padding: 20px;
  }
  .close-modal {
    right: 0;
    top: -40px;
  }
  .sb__table-top .sb__table-cell {
    font-size: 14px;
  }
  .sb__table-note {
    font-size: 12px;
  }
  .main__item-tile-more {
    justify-content: center;
  }
  .about__partners-list {
    grid-template-columns: repeat(2, 1fr);
  }
  .about__text {
    font-size: 18px;
  }
  .about__partners-title {
    font-size: 24px;
  }
}
@media (max-width: 550px) {
  .main__item {
    flex-direction: column;
  }
  .main__item-name {
    padding-top: 0;
    padding-left: 0;
  }
  .main__item-content {
    padding-top: 10px;
    border-left: none;
    padding-left: 0;
    padding-bottom: 20px;
  }
  .main__item-tiles {
    grid-template-columns: 1fr;
  }
  .projects .main__item-content {
    padding-top: 10px;
    padding-bottom: 50px;
  }
  .projects__grid {
    grid-template-columns: 1fr;
  }
  .pos__grid {
    grid-template-columns: 1fr;
  }
  .service__block-grid-1 {
    grid-template-columns: 1fr;
  }
  .service__block {
    flex-direction: column;
  }
  .service__block-name {
    margin-left: 10px;
    width: 100%;
    position: relative;
  }
  .service__block-num-num {
    position: relative;
  }
  .sb__table-cell {
    font-size: 12px;
    padding: 12px;
  }
  .sb__table-cell:first-child {
    max-width: 120px;
  }
  .about__partners-list {
    grid-template-columns: repeat(1, 1fr);
  }
  table.service__table tr th {
    padding: 12px;
    font-size: 12px;
  }
  table.service__table tr td {
    padding: 12px;
    font-size: 12px;
  }
}