:root {
  --color-main:#4F46E5;
  --color-white: #ffffff;
  --main-white: #ffffff;
  --color-black: #000000;
  --color-dark-blue: #0F172A;
  --color-grey: #0F172A;
  --color-main-grey: #6A6F8B;
  --color-grey-bg: rgba(235, 238, 246, 1);
  --color-wh-grey: #9CA0B4;
  --color-red: #FF4D4D;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

span {
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 400;
}

h1 {
  font-family: "Montserrat", sans-serif;
  font-size: 48px;
  font-weight: 400;
}

h2 {
  font-family: "Montserrat", sans-serif;
  font-size: 36px;
  font-weight: 500;
}

h3 {
  font-family: "Montserrat", sans-serif;
  font-size: 32px;
  font-weight: 500;
}

h4 {
  font-family: "Montserrat", sans-serif;
  font-size: 22px;
  font-weight: 500;
}

h5 {
  font-family: "Montserrat", sans-serif;
  font-size: 20px;
  font-weight: 500;
  color: var(--color-dark-blue);
}

p {
  font-family: "Montserrat", sans-serif;
  font-size: 16px;
  font-weight: 400;
}

input {
  color: rgba(255, 255, 255, 1);
  padding: 12px 18px;
  border-radius: 40px;
  font-size: 15px;

  border: 1px solid rgba(255, 255, 255, 1);
  background-color: rgba(248, 248, 248, 0.3);
  outline: none;
}

input::placeholder {
  color: var(--main-white);
  opacity: 1;
}

input::-webkit-input-placeholder {
  color: var(--main-white);
}

input::-moz-placeholder {
  color: var(--main-white);
  opacity: 1;
}

input:-ms-input-placeholder {
  color: var(--main-white);
}

input::-ms-input-placeholder {
  color: var(--main-white);
}

.container {
  width: 1320px;
  margin: 0 auto;
  height: 100%;
}

@keyframes stats-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

body {
  background-color: rgba(248, 250, 252, 1);
  cursor: none;
}

.mini_banner {
  padding: 8px 10px;
  border-radius: 100px;
  background-color: var(--color-grey-bg);

  font-family: "Montserrat", sans-serif;
  font-size: 13px;
}

.custom-cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 70px;
  height: 70px;
  border-radius: 50%;
  background: rgba(47, 56, 68, 0.66);
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 9999;
  mix-blend-mode: normal;
}

.btn_primary {
  background-color: var(--color-main);
  color: var(--color-white);
  border-radius: 8px;
  padding: 11.5px 11.5px;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 400;
  border: none;
  cursor: none;
  border: 1px solid transparent;
}

.btn_primary.arrow {
  padding-right: 6px;
}

.btn_primary:hover {
  background-color: var(--color-white);
  color: var(--color-main);
  border: 1px solid var(--color-main);
}

.btn_primary:active {
  background-color: var(--color-main);
  color: var(--color-white);
}

.btn_primary.borderless {
  background-color: transparent;
  border: none;
  cursor: none;
  color: var(--color-dark-blue);
}

.btn_primary.borderless:hover {
  color: var(--color-main-grey);
}


.btn_primary.borderless:active {
  color: var(--color-main);
}

.btn_secondary {
  background-color: var(--color-white);
  color: var(--color-main);
  border-radius: 8px;
  padding: 9px 10px;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 400;
  border: none;
  cursor: none;
}

.btn_secondary.arrow {
  padding-right: 6px;
}

.btn_primary_rounded {
  background-color: var(--color-main);
  color: var(--color-white);
  border-radius: 100px;
  padding: 11.5px 11.5px;
  font-family: "Montserrat", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 100%;
  border: none;
  cursor: none;

	&:hover {
		background-color: var(--color-white);
  		color: var(--color-main);
	}
}

.slider_button {
  width: 40px;
  height: 40px;
  border-radius: 100%;
  background-color: var(--color-white);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: none;
  border: none;

  &:hover {
    background-color: var(--color-black);
    img {
      filter: invert(0);
    }
  }

  img {
    filter: invert(1);
    width: 24px;
    height: 24px;
  }
}

.slider_button.prev {
  transform: rotate(180deg);
}

.section_one {
  padding: 40px 0;
  position: relative;

  &::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 2px;
        height: 100%;
        background-color: var(--color-grey-bg);
        pointer-events: none;
  }

  .section_one_inner {
    .bg_element {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: -1;
    }

    .header {
      display: flex;
      justify-content: space-between;
      align-items: center;

      .logo {
        width: 120px;
        height: 37px;
      }

      .header_contacts {
        display: flex;
        align-items: center;
        column-gap: 40px;
      }
    }

    .section_one_content {
      margin-top: 50px;
      display: flex;
      justify-content: space-between;
      align-items: flex-start;

      .section_one_carousel {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        position: relative;
        height: 686px;
        width: 50%;

        .carousel_item {
          position: absolute;
          top: 0;
          left: 0;
          width: 790px;
          height: 590px;
          z-index: 1;
          opacity: 0;
          visibility: hidden;
          transition: opacity 0.3s ease, visibility 0.3s ease;

          &.active {
            opacity: 1;
            visibility: visible;
            z-index: 10;
          }

          img {
            width: 100%;
            height: 100%;
            object-fit: cover;
          }
        }
        .carousel_item.two {
            width: 660px;
            height: 490px;
          }
        .carousel_item.three {
          width: 660px;
          height: 480px;
          left: 20px;
        }

        .carousel_button {
          
        }

        .carousel_actions {
          display: flex;
          align-items: flex-start;
          justify-content: space-between;
          column-gap: 12px;
          margin-top: 20px;
          
          .dots {
            position: relative;
            z-index: 20;
            display: flex;
            column-gap: 8px;
          }

          .dot {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background-color: rgba(79, 70, 229, 0.3);
            cursor: none;
            transition: background-color 0.2s ease;
          }

          .dot.active {
            background-color: var(--color-main);
          }
          
          .carousel_text {
            color: var(--color-main-grey);
            width: 222px;
            margin-right: 20px;
            font-size: 13px;
          }
        }
      }
      
      .section_one_title {
        width: 45%;
        display: flex;
        flex-direction: column;
        row-gap: 20px;

        h1 {
          line-height: 120%;
          letter-spacing: 0%;
          color: var(--color-dark-blue);
        }
        
        p {
          width: 382px;
          line-height: 100%;
          color: var(--color-dark-blue);
        }

        .section_one_actions {
          margin-top: 10px;
          display: flex;
          column-gap: 30px;
          align-items: center;

          .btn_primary.styled {
            display: flex;
            align-items: center;
            column-gap: 8px;

            span {
              width: 24px;
              height: 24px;
              border-radius: 6px;
              background-color: var(--color-white);

              img {
                width: 100%;
                height: 100%;
              }
            }
          }
        }

        .section_one_stats {
          margin-top: 138px;
          display: flex;
          flex-direction: column;
          row-gap: 35px;

          .stats_items {
            overflow: hidden;
            width: 100%;
            mask-image: linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);
            -webkit-mask-image: linear-gradient(to right, transparent, #000 8%, #000 92%, transparent);

            .stats_track {
              display: flex;
              align-items: center;
              column-gap: 24px;
              width: max-content;
              animation: stats-marquee 18s linear infinite;
            }

            &:hover .stats_track {
              animation-play-state: paused;
            }

            .stat_item {
              flex-shrink: 0;

              img {
                display: block;
                height: 28px;
                width: auto;
                object-fit: contain;
              }
            }
          }
        }
      }
    }
  }
}

.section_two {
  padding: 40px 0;
  position: relative;

  &::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: 2px;
        height: 100%;
        background-color: var(--color-grey-bg);
        pointer-events: none;
  }

  .section_two_inner {
    margin-top: 60px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;

    .result_cards {
      display: flex;
      column-gap: 15px;

      .cards_one {
        display: flex;
        flex-direction: column;
        row-gap: 15px;

        .cards__one {
          display: flex;
          column-gap: 15px;
        }
      }

      .card {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        height: 100%;
        width: 170px;
        row-gap: 33px;

        padding: 16px 12px;
        border-radius: 20px;
        background-color: var(--color-grey-bg);

        .card_icon {
          display: flex;
          align-items: center;
          justify-content: center;
          align-self: flex-end;

          width: 30px;
          height: 30px;
          border-radius: 100%;
          background-color: var(--color-black);
        }

        span {
          margin-top: 4px;
          color: var(--color-main-grey);
        }
      }

      .card.purple {
        width: 355px;
        background-color: var(--color-main);
        
        h5 {
          color: var(--color-white);
        }

        span {
          color: var(--color-white);
        }

        .card_icon_alt {
          align-self: flex-end;
        }
      }
    }
  }
  .result_title {
    margin-top: 30px;

    span {
      margin-top: 10px;
      display: inline-block;
      width: 540px;
      font-size: 16px;
    }
  }

  .result_text {
    width: 604px;

    .result_text_subtitle {
      color: var(--color-main-grey);
    }

    p {
      margin-top: 35px;
      font-size: 20px;
      color: var(--color-dark-blue);
    }
  }
}

.section_three {
  padding: 40px 0;

  .section_three_inner {
    margin-top: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    .for_universities {
      display: flex;
      flex-direction: column;
      align-items: center;
      row-gap: 20px;
      width: 490px;
      text-align: center;

      h2 {
        color: var(--color-dark-blue);
      }
    }

    .university_slider_buttons {
      margin-top: 30px;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      width: 100%;
      column-gap: 12px;
    }

    .university_slider {
      margin-top: 40px;
      display: flex;
      gap: 30px;
      overflow-x: auto;
      overflow-y: hidden;
      scroll-behavior: smooth;
      padding-bottom: 10px;
      width: 100%;
      -webkit-overflow-scrolling: touch;
      touch-action: pan-x;
      scrollbar-width: none;

      &::-webkit-scrollbar {
        display: none;
      }

      .slider_item {
        background-color: var(--color-grey-bg);
        border-radius: 30px;
        flex-shrink: 0;
        width: 404px;

        display: flex;
        flex-direction: column;
        align-items: flex-start;
        row-gap: 30px;

        .item_head {
          width: 100%;
          display: flex;
          justify-content: space-between;
          align-items: center;

          padding: 24px 20px 0;

          .item_name {
            padding: 6px 10px;

            font-family: "Montserrat", sans-serif;
            font-size: 12px;
            font-weight: 400;

            background-color: var(--color-white);
            border-radius: 100px;
          }

          .item_icon {
            width: 40px;
            height: 40px;
            display: flex;
            align-items: center;
            justify-content: center;
            background-color: var(--color-dark-blue);
            border-radius: 100px;
          }
        }

        .item_title {
          display: flex;
          flex-direction: column;
          row-gap: 15px;
          align-items: flex-start;
          padding: 0 20px;
          
          h3 {
            width: 232px;
          }
          p {
            width: 270px;
            height: 76px;
          }

          .title_icon {
            
            img {
              filter: invert(1);
            }
          }
        }

        .item_video {
          width: 404px;
          height: 281px;
          border-radius: 30px;
          object-fit: contain;
		  display: flex;
          align-items: center;
          justify-content: center;

		  img {
			width: 100%;
			height: 100%;
			object-fit: contain;
		  }
        }

        &:hover {
          background-color: var(--color-main);

          color: var(--color-white);

          .item_name {
            color: var(--color-main);
          }

          .item_icon {
            background-color: var(--color-white);
            img {
              filter: invert(1);
            }
          }

          .item_title {
            .title_icon {
              img {
                filter: invert(0);
              }
            }
          }
        }
      }
    }
  }
}

.section_four {
  padding: 40px 0;

  .section_four_inner {
    margin-top: 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    .for_organizations {
      display: flex;
      flex-direction: column;
      align-items: center;
      row-gap: 20px;
      width: 690px;
      text-align: center;

      h2 {
        color: var(--color-dark-blue);
      }
    }

    .organizations_slider_buttons {
      margin-top: 30px;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      width: 100%;
      column-gap: 12px;
    }

    .organizations_slider {
      margin-top: 40px;
      display: flex;
      gap: 30px;
      overflow-x: auto;
      overflow-y: hidden;
      scroll-behavior: smooth;
      padding-bottom: 10px;
      width: 100%;
      -webkit-overflow-scrolling: touch;
      touch-action: pan-x;
      scrollbar-width: none;

      &::-webkit-scrollbar {
        display: none;
      }

      .slider_item {
        background-color: var(--color-grey-bg);
        border-radius: 30px;
        width: 297px;
        height: 209px;
        flex-shrink: 0;

        display: flex;
        align-items: flex-end;
        justify-content: flex-start;

        padding: 26px 20px;
      }
    }

    .section_four_info {
      width: 647px;
      margin-top: 50px;
      padding-bottom: 40px;
      display: flex;
      justify-content: center;
      text-align: center;

      h5 {
        width: 551px;
        font-weight: 400;
      }

      border-bottom: 1px solid var(--color-grey-bg);
    }
  }
}

.section_five {
  padding: 40px 0;

  .section_five_inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 60px;
    position: relative;

    h2 {
      position: relative;
      z-index: 5;
      color: var(--color-dark-blue);
    }

    .rounded_slider_buttons {
      display: flex;
      align-items: center;
      gap: 12px;
      z-index: 10;
      position: absolute;
      top: 45%;
      width: 100%;
      padding: 0px 20px;
      justify-content: space-between;
    }

    .rounded_carousel {
      display: flex;
      align-items: center;
      justify-content: center;
      flex-direction: column;
      padding: 30px;
      margin-top: 40px;
      row-gap: 205px;
      height: 433px;
      position: relative;
      width: 100%;
      background-color: rgba(79, 70, 229, 0.08);
      border-radius: 20px;

      &::after {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        background: radial-gradient(
          circle at center,
          rgba(202, 213, 239, 0.95) 0%,
          rgba(202, 213, 239, 0.7) 28%,
          rgba(202, 213, 239, 0) 62%
        );
        pointer-events: none;
        z-index: 0;
      }

      .carousel_content {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        min-width: 200px;
        text-align: center;
        z-index: 10;

        .dynamic_text {
          margin-top: 20px;
          color: var(--color-black);
          transition: all 0.3s ease;
        }
      }

      .carousel_subtitle {
        position: relative;
        z-index: 5;

        .dynamic_subtitle {
          width: 295px;
          height: 80px;
          text-align: center;
        }
      }

      .arc_slider_container {
        position: absolute;
        left: 50%;
        top: 90%;
        transform: translate(-50%, -50%);
        width: 1320px;
        height: 433px;
        z-index: 5;

        .arc-ribbon {
          position: absolute;
          width: 1320px;
          height: 350px;
          
          background-color: rgba(255, 255, 255, 0.22); 
          
          background-image: 
            linear-gradient(to bottom, #333 10px, transparent 10px),
            linear-gradient(to top, #333 10px, transparent 10px);
          
          clip-path: path("M 0,180 Q 660,0 1320,180 L 1320,315 Q 660,100 0,315 Z");
          top: -22.8%;
        }

        .arc_slider {
          position: relative;
          width: 100%;
          height: 102%;
          overflow: hidden;

          .slider_card {
            position: absolute;
            width: 104px;
            height: 104px;
            border-radius: 50%;
            background-color: rgba(105, 133, 161, 0.2);
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: none;
            transition: all 0.4s ease;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            z-index: 2;

            span {
              font-size: 24px;
              font-weight: 600;
              color: var(--color-white);
              transition: all 0.3s ease;
            }

            &.active {
              background-color: var(--color-main);
              width: 100px;
              height: 100px;
              z-index: 10;
              box-shadow: 0 8px 24px rgba(79, 70, 229, 0.3);

              span {
                font-size: 32px;
                color: var(--color-white);
                font-weight: 500;
              }
            }

            &:hover:not(.active) {
              background-color: var(--color-main-grey);
              span {
                color: var(--color-white);
              }
            }
          }
        }
      }
    }
  }
}

.section_six {
  padding: 40px 0;

  .section_six_inner {
    margin-top: 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    .our_cases {
      display: flex;
      flex-direction: column;
      align-items: center;
      row-gap: 20px;
      width: 690px;
      text-align: center;

      h2 {
        color: var(--color-dark-blue);
      }
    }

    .our_cases_slider_buttons {
      margin-top: 30px;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      width: 100%;
      column-gap: 12px;
    }

    .our_cases_slider {
      margin-top: 40px;
      display: flex;
      gap: 24px;
      overflow-x: auto;
      overflow-y: hidden;
      scroll-behavior: smooth;
      padding-bottom: 10px;
      width: 100%;
      -webkit-overflow-scrolling: touch;
      touch-action: pan-x;
      scrollbar-width: none;

      &::-webkit-scrollbar {
        display: none;
      }

      .slider_item {
        padding: 25px;
        width: 404px;
        background-color: var(--color-grey-bg);
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: flex-start;
        row-gap: 20px;
        border-radius: 30px;
        flex-shrink: 0;

        .item_head {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          justify-content: space-between;
          row-gap: 10px;
          width: 354px;

		  h2 {
			width: 300px;
			min-height: 220px;
			word-break: break-word;
          }

          .item_icon {
            align-self: flex-end;

            img {
              filter: invert(1);
            }
          }
        }

        .item_points {
          display: flex;
          align-items: center;
          column-gap: 13px;

          .point {
            border-radius: 100px;
            color: var(--color-main);
            padding: 6px 10px;
            font-size: 12px;
            background-color: rgba(79, 70, 229, 0.2);
            cursor: pointer;
            transition: background-color 0.25s ease, color 0.25s ease;
          }

          .point.active {
            color: var(--color-white);
            background-color: var(--color-main);
          }
        }

        .item_text {
          display: flex;
          flex-direction: column;
          align-items: flex-start;
          width: 100%;
          row-gap: 10px;

          p {
            font-weight: 500;
          }

          .item_info {
            font-weight: 300 !important;
            max-width: 226px;
			min-height: 171px;
          }

          .item_nav {
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            margin-top: 4px;
          }

          .item_nav_btn {
            display: inline-flex;
            align-items: center;
            column-gap: 4px;
            padding: 0;
            border: none;
            background: transparent;
            color: inherit;
            font-family: "Montserrat", sans-serif;
            font-size: 16px;
            font-weight: 400;
            cursor: pointer;

            &[hidden] {
              display: none !important;
            }

            img {
              width: 24px;
              height: 24px;
              filter: invert(1);
            }

            &.next img {
              transform: none;
            }

            &.prev img {
              transform: rotate(180deg);              
            }
          }
        }

        &[data-nav-step="0"] .item_nav {
          justify-content: flex-end;
        }

        &[data-nav-step="2"] .item_nav {
          justify-content: flex-start;
        }

        &:hover {
          background-color: var(--color-main);

          color: var(--color-white);

          .item_name {
            color: var(--color-main);
          }

          .item_points {
            .point {
              color: var(--color-white);
              background-color: rgba(255, 255, 255, 0.2);
            }
            .point.active {
              background-color: var(--color-white);
              color: var(--color-main);
            }
          }

          .item_head {
            .item_icon {
              img {
                filter: invert(0);
              }
            }
          }

          .item_text {
            .item_nav_btn img {
              filter: invert(0);
            }
          }
          
        }
      }
    }
  }
}

.section_seven {
  padding: 40px 0;

  background-repeat: no-repeat;
  background-color: rgba(79, 70, 229, 1);

  .project_form {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    row-gap: 15px;

    width: 395px;

    .form_input {
      position: relative;
      width: 100%;

      input {
        width: 100%;
        padding-right: 50px;
      }

      .form_input_icon {
        position: absolute;
        top: 50%;
        right: 18px;
        transform: translateY(-50%);
        width: 20px;
        height: 20px;
        pointer-events: none;
        filter: brightness(0) invert(1);
      }
    }

    .form_checkbox {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      column-gap: 8px;
      width: 100%;

      p {
        width: 359px;
        font-size: 12px;

        color: var(--color-grey-bg);

        a {
          color: var(--color-white);
        }
      }
    }

    input[type="text"],
    input[type="number"],
    input[type="tel"],
    input[type="email"] {
      width: 100%;
    }

    input[type="checkbox"] {
      display: none;
    }

    .form_checkbox label {
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 20px;
      height: 20px;
      min-width: 20px;
      min-height: 20px;
      border: 2px solid var(--color-white);
      border-radius: 4px;
      background-color: transparent;
      cursor: none;
      transition: all 0.3s ease;
    }

    .form_checkbox label::after {
      content: "";
      color: var(--color-black);
      position: absolute;
      width: 5px;
      height: 10px;
      border: solid var(--color-white);
      border-width: 0 2px 2px 0;
      transform: rotate(45deg) scale(0);
      transition: transform 0.3s ease;
      top: 0;
      left: 5px;
    }

    input[type="checkbox"]:checked + label {
      background-color: transparent;
      border-color: var(--color-white);
    }

    input[type="checkbox"]:checked + label::after {
      transform: rotate(45deg) scale(1);
    }

    .form_checkbox label:hover {
      background-color: rgba(79, 70, 229, 0.1);
    }

    .btn_secondary.styled {
      margin-top: 10px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      column-gap: 8px;

      span {
        width: 24px;
        height: 24px;
        border-radius: 6px;
        background-color: var(--color-main);

        img {
          width: 100%;
          height: 100%;
        }
      }
    }
  }
}

.section_seven {
  .section_seven_inner {
    margin-top: 20px;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    column-gap: 90px;

    .form_title {
      width: 522px;

      h2 {
        color: var(--color-white);
        font-weight: 500;
      }
    }
  }
}

.section_eight {
  padding: 40px 0;

  .section_eight_inner {
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;


    .transform {
      display: flex;
      flex-direction: column;
      align-items: center;
      row-gap: 20px;
      width: 690px;
      text-align: center;

      h2 {
        color: var(--color-dark-blue);
      }
    }

    .cases {
      margin-top: 70px;
      display: flex;
      align-items: flex-end;
      column-gap: 24px;

      .case_item {
        position: relative;
        flex-shrink: 0;
        width: 255px;
        height: 532px;
        padding: 30px;
        border-radius: 30px;
        overflow: hidden;
        cursor: none;

        display: flex;
        flex-direction: column;
        align-items: flex-start;
        row-gap: 15px;
        background-color: var(--color-grey-bg);

        transition: width 0.45s cubic-bezier(0.4, 0, 0.2, 1);

        .item_title {
          position: relative;
          z-index: 2;
          flex-shrink: 0;
        }

        .active_item_title {
          position: absolute;
          top: 0;
          left: 0;
          display: flex;
          align-items: center;
          justify-content: space-between;
          width: 582px;
          opacity: 0;
          visibility: hidden;
          pointer-events: none;
          white-space: nowrap;

          .item_icon {
            display: flex;
            justify-content: center;
            align-items: center;
            flex-shrink: 0;

            width: 38px;
            height: 38px;
            background-color: var(--color-black);
            border-radius: 100%;

            img {
              width: 24px;
              height: 24px;
            }
          }
        }

        .active_item_desc {
          position: relative;
          z-index: 2;
          width: 456px;
          opacity: 0;
          visibility: hidden;
          transition: opacity 0.3s ease 0.15s, visibility 0.3s ease 0.15s;

          p {
            font-size: 20px;
			min-height: 72px;
          }
        }

        .active_item_image {
          position: absolute;
          bottom: 50px;
          right: -170px;
          z-index: 1;

          width: 532px;
          height: 342px;
          transform: translateX(35%);
          filter: blur(12px);

          transition:
            transform 0.45s cubic-bezier(0.4, 0, 0.2, 1),
            filter 0.45s cubic-bezier(0.4, 0, 0.2, 1),
            bottom 0.45s cubic-bezier(0.4, 0, 0.2, 1),
            right 0.45s cubic-bezier(0.4, 0, 0.2, 1);

          img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
          }

		  video {
			width: 535px;
  			margin-top: 20px;
		  }
        }

        &:hover {
          width: 642px;

          .inactive_item_title {
            display: none;
            opacity: 0;
            visibility: hidden;
          }

          .active_item_title {
            position: static;
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
          }

          .active_item_desc {
            opacity: 1;
            visibility: visible;
          }

          .active_item_image {
            position: relative;
            bottom: 50px;
            right: -25px;
            margin-top: 30px;
            transform: translateX(0);
            filter: blur(0);
          }
        }
      }
    }
  }
}

.section_nine {
  padding: 40px 0;

  .section_nine_inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-top: 30px;

    .security {
      display: flex;
      flex-direction: column;
      align-items: center;
      row-gap: 20px;
      width: 690px;
      text-align: center;

      h2 {
        color: var(--color-dark-blue);
      }
    }

    .logos {
      margin-top: 60px;

      display: flex;
      align-items: center;
      justify-content: space-between;
	  width: 100%;
    }

    .security_title {
      margin-top: 70px;
    }

    .security_slider_buttons {
      margin-top: 30px;
      display: flex;
      justify-content: flex-end;
      align-items: center;
      width: 100%;
      column-gap: 12px;
    }

    .security_slider {
      margin-top: 40px;
      display: flex;
      gap: 20px;
      overflow-x: auto;
      overflow-y: hidden;
      scroll-behavior: smooth;
      padding-bottom: 10px;
      width: 100%;
      -webkit-overflow-scrolling: touch;
      touch-action: pan-x;
      scrollbar-width: none;

      &::-webkit-scrollbar {
        display: none;
      }

      .security_item {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: flex-start;
        flex-shrink: 0;
        width: 297px;
        background-color: var(--color-grey-bg);
        border-radius: 30px;
        height: 209px;

        padding: 26px 20px;

        .item_logo {
          display: flex;
          justify-content: center;
          align-items: center;
          align-self: flex-end;
          width: 40px;
          height: 40px;
          background-color: var(--color-white);
          border-radius: 100%;

          img {
            width: 20px;
            height: 20px;
          }
        }

        .item_text {
          width: 256px;
        }
      }
    }
  }
}

.section_ten {
  padding: 40px 0;

  .section_ten_inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 30px;

    h2 {
      color: var(--color-dark-blue);
      text-align: center;
      position: relative;
      padding-bottom: 16px;
    }

    .why_cards {
      position: relative;
      margin-top: 70px;
      display: grid;
      grid-template-columns: 640px 297px 297px;
      grid-template-rows: repeat(2, 319px);
      gap: 15px;
      width: 100%;
    }

    .why_item {
      overflow: hidden;
      border-radius: 30px;
      padding: 26px 20px;
      background-color: var(--color-grey-bg);
      cursor: none;
      position: relative;

      display: flex;
      flex-direction: column;
      justify-content: flex-end;

      transition: background-color 0.4s ease;

      &:first-child {
        grid-row: 1 / -1;
        grid-column: 1;
      }

      .why_item_wave {
        display: none;
        position: absolute;
        z-index: 1;
        pointer-events: none;
      }

      .why_item_text {
        position: relative;
        z-index: 2;
        width: 100%;
        font-weight: 400;
        color: var(--color-dark-blue);
        transition: color 0.4s ease;
      }

      &.is-active {
        background-color: var(--color-main);
        position: static;

        .why_item_wave {
          display: block;
          width: 1440px;
          top: -10%;
          left: -5%;
          right: auto;
          filter: blur(0);
        }

        .why_item_text {
          color: var(--color-white);
          max-width: 379px;
        }
      }

      &.inactive {
        position: relative;
        z-index: 10;
      }
    }
  }
}

.section_eleven {
  padding: 40px 0;

  .section_eleven_inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 30px;

    h2 {
      color: var(--color-dark-blue);
      text-align: center;
    }

    .faq_list {
      margin-top: 70px;
      width: 618px;
      display: flex;
      flex-direction: column;
    }

    .faq_item {
      display: flex;
      flex-direction: column;
      border-bottom: 1px solid var(--color-grey-bg);

      &:first-child {
        border-top: 1px solid var(--color-grey-bg);
      }

      .faq_header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        column-gap: 24px;
        padding: 20px 0;
        cursor: none;
      }

      .faq_question {
        font-weight: 500;
        font-size: 20px;
        color: var(--color-dark-blue);
      }

      .faq_toggle {
        position: relative;
        flex-shrink: 0;
        width: 30px;
        height: 30px;
        border: none;
        border-radius: 100%;
        background-color: var(--color-main);
        cursor: none;
        transition: background-color 0.3s ease;

        &::before,
        &::after {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          background-color: var(--color-white);
          border-radius: 2px;
          transform: translate(-50%, -50%);
          transition: background-color 0.3s ease, transform 0.3s ease;
        }

        &::before {
          width: 14px;
          height: 2px;
        }

        &::after {
          width: 2px;
          height: 14px;
        }
      }

      .faq_answer {
        display: grid;
        grid-template-rows: 0fr;
        transition: grid-template-rows 0.35s ease;

        p {
          overflow: hidden;
          min-height: 0;
          max-width: 900px;
          padding-bottom: 0;
          color: var(--color-main-grey);
          font-size: 16px;
          line-height: 1.5;
          opacity: 0;
          transition: opacity 0.25s ease, padding-bottom 0.35s ease;
        }
      }

      &.is-open {
        .faq_toggle {
          background-color: var(--color-grey-bg);

          &::before,
          &::after {
            background-color: var(--color-main);
          }

          &::after {
            transform: translate(-50%, -50%) scaleY(0);
          }
        }

        .faq_answer {
          grid-template-rows: 1fr;

          p {
            opacity: 1;
            padding-bottom: 15px;
          }
        }
      }
    }
  }
}

.section_twelve {
  padding: 45px 0;
  background-color: var(--color-main);
  background-repeat: no-repeat;

  .section_twelve_inner {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    column-gap: 140px;

    .form_title {
      width: 522px;
      display: flex;
      flex-direction: column;
      row-gap: 24px;

      h2 {
        color: var(--color-white);
        font-weight: 500;
      }

      p {
        color: var(--color-white);
        font-size: 16px;
        line-height: 1.5;
        opacity: 0.9;
      }

      .form_back_link {
        display: inline-flex;
        align-items: center;
        column-gap: 8px;
        width: fit-content;
        color: var(--color-white);
        font-size: 14px;
        text-decoration: none;
        margin-top: 10px;

        img {
          width: 24px;
          height: 24px;
          transform: rotate(-90deg);
          filter: brightness(0) invert(1);
        }
      }
    }

    .project_form {
      width: 395px;
      display: flex;
      flex-direction: column;
      align-items: center;
      row-gap: 15px;

      .btn_secondary.styled {
        margin-top: 10px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        column-gap: 8px;
  
        span {
          width: 24px;
          height: 24px;
          border-radius: 6px;
          background-color: var(--color-main);
  
          img {
            width: 100%;
            height: 100%;
          }
        }
      }

      .form_input {
        position: relative;
        width: 100%;

        input {
          width: 100%;
          padding-right: 50px;
        }

        .form_input_icon {
          position: absolute;
          top: 50%;
          right: 18px;
          transform: translateY(-50%);
          width: 20px;
          height: 20px;
          pointer-events: none;
          filter: brightness(0) invert(1);
        }
      }

      .form_checkbox {
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        column-gap: 8px;
        width: 100%;
        margin-top: 10px;
  
        p {
          width: 359px;
          font-size: 12px;
  
          color: var(--color-grey-bg);
  
          a {
            color: var(--color-white);
          }
        }
      }

      input[type="checkbox"] {
        display: none;
      }

      .form_checkbox label {
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 20px;
        height: 20px;
        min-width: 20px;
        min-height: 20px;
        border: 2px solid var(--color-white);
        border-radius: 4px;
        background-color: transparent;
        cursor: none;
        transition: all 0.3s ease;
      }
  
      .form_checkbox label::after {
        content: "";
        color: var(--color-black);
        position: absolute;
        width: 5px;
        height: 10px;
        border: solid var(--color-white);
        border-width: 0 2px 2px 0;
        transform: rotate(45deg) scale(0);
        transition: transform 0.3s ease;
        top: 0;
        left: 5px;
      }
  
      input[type="checkbox"]:checked + label {
        background-color: transparent;
        border-color: var(--color-white);
      }
  
      input[type="checkbox"]:checked + label::after {
        transform: rotate(45deg) scale(1);
      }
  
      .form_checkbox label:hover {
        background-color: rgba(79, 70, 229, 0.1);
      }
    }
  }
}

.footer {
  border-top: 1px solid var(--color-dark-blue);
  padding: 32px 0;
  background-color: var(--color-white);

  .footer_inner {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    column-gap: 24px;
  }

  .footer_col {
    display: flex;
    flex-direction: column;
    row-gap: 16px;
  }

  .footer_logo {
    width: 112px;
    height: 35px;

    img {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }
  }

  a {
    color: var(--color-dark-blue);
    text-decoration: none;
    font-size: 14px;
  }

  .footer_contacts span,
  .footer_email span {
    font-weight: 500;
  }

  .footer_demo_link {
    display: inline-flex;
    align-items: center;
    column-gap: 6px;
    color: var(--color-main);
    font-size: 14px;
  }

  .footer_socials {
    display: flex;
    flex-direction: row;
    align-items: center;
    column-gap: 8px;
  }

  .footer_social {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 100%;
    background-color: var(--color-white);
    color: var(--color-white);
  }

  .footer_links {
    max-width: 162px;
  }

  .footer_disclaimer {
    max-width: 217px;
  }
}

@media (max-width: 440px) {
  span {
    font-size: 12px;
  }

  h1 {
    font-size: 30px;
  }

  h2 {
    font-size: 24px;
  }

  h3 {
    font-size: 32px;
  }

  h4 {
    font-size: 16px;
  }

  h5 {
    font-size: 16px;
  }

  p {
    font-size: 13px;
  }

  .custom-cursor {
    display: none;
  }

  .container {
    width: 350px;
  }

  .btn_primary {
    padding: 7.5px 10px;
    font-size: 12px;
  }

  .btn_primary_rounded {
    padding: 8px 12px;
    font-size: 12px;
  }

  .btn_secondary {
    padding: 10px 12px;
    font-size: 13px;
  }

  .slider_button {
    width: 26px;
    height: 26px;

    img {
      width: 20px;
      height: 20px;
    }
  }

  .section_one {
    padding: 20px 0;
    overflow: hidden;

    &::before {
      content: none;
    }
  & .section_one_inner {
    .bg_element {
      top: 25px;
    }

    & .header {
      & .logo {
        width: 62px;
        height: 19px;

        img {
          width: 100%;
          height: 100%;
        }
      }
      & .header_contacts {
        column-gap: 20px;
      }
    }

    .section_one_content {
      flex-direction: column;

      .section_one_carousel {
        width: 100%;
        height: 352px;

        .carousel_item {
          width: 407px;
          height: 415px;
        }
        .carousel_item.two {
          width: 372px;
          height: 279px;
          left: -7px;
        }
        .carousel_item.three {
          width: 372px;
          height: 270px;
          left: 10px;
        }
        .carousel_actions {
          .carousel_text {
            display: none;
          }
        }
      }

      .section_one_title {
        width: 100%;
        margin-top: 60px;
        row-gap: 15px;

        p {
          width: 292px;
        }

        .section_one_stats {
          margin-top: 40px;
        }
      }
    }
  }
}

  .section_two {
    padding: 30px 0;

    &::before {
      content: none;
    }

    .section_two_inner {
      margin-top: 20px;
      flex-direction: column-reverse;
      row-gap: 28px;

      .result_cards {
        flex-direction: column;
        row-gap: 12px;
        width: 100%;

        .cards_one {
          width: 100%;
          row-gap: 12px;

          .cards__one {
            width: 100%;
            column-gap: 12px;

            .card {
              flex: 1;
              width: auto;
              min-width: 0;
              row-gap: 24px;
              padding: 14px 12px;
            }
          }

          .card.purple {
            width: 100%;
            min-height: 110px;
          }
        }

        .cards_two {
          .card {
            width: 100%;
            row-gap: 24px;
            padding: 14px 12px;
          }
        }
      }

      .result {
        width: 100%;
      }

      .result_title {
        margin-top: 24px;

        span {
          width: 100%;
          font-size: 13px;
          line-height: 140%;
        }
      }

      .result_text {
        width: 100%;

        h2 {
          font-size: 24px;
          line-height: 125%;
        }

        p {
          margin-top: 18px;
          font-size: 14px;
          line-height: 140%;
        }
      }
    }
  }

  .section_three {
    padding: 30px 0;

    .section_three_inner {
      margin-top: 20px;

      .for_universities {
        width: 100%;
        row-gap: 12px;

        h2 {
          font-size: 24px;
          line-height: 125%;
        }
      }

      .university_slider_buttons {
        display: none;
      }

      .university_slider {
        margin-top: 24px;
        gap: 12px;

        .slider_item {
          width: 300px;
          row-gap: 20px;
          border-radius: 28px;

          .item_head {
            padding: 20px 16px 0;
          }

          .item_title {
            padding: 0 16px;
            row-gap: 14px;
            width: 260px;

            h3 {
              width: 100%;
			  word-break: break-word;
            }

            p {
              width: 100%;
            }
          }

          .item_video {
            width: 100%;
            height: 200px;
            border-radius: 28px;
          }
        }
      }
    }
  }

  .section_four {
    padding: 30px 0;

    .section_four_inner {
      margin-top: 20px;

      .for_organizations {
        width: 100%;
        row-gap: 12px;

        h2 {
          font-size: 24px;
          line-height: 125%;
        }
      }

      .organizations_slider_buttons {
        display: none;
      }

      .organizations_slider {
        margin-top: 24px;
        gap: 12px;

        .slider_item {
          width: 250px;
          height: 209px;
          padding: 18px 14px;
          border-radius: 24px;

          h4 {
            font-size: 22px;
          }
        }
      }

      .section_four_info {
        width: 100%;
        margin-top: 28px;
        padding-bottom: 28px;

        h5 {
          width: 100%;
          font-size: 14px;
          line-height: 140%;
        }
      }
    }
  }

  .section_five {
    padding: 30px 0;
    overflow: hidden;

    .section_five_inner {
      margin-top: 20px;

      h2 {
        font-size: 24px;
        text-align: center;
        line-height: 125%;
      }

      .rounded_slider_buttons {
        top: 38%;
        bottom: auto;
        padding: 0 8px;
        pointer-events: none;

        .slider_button {
          pointer-events: auto;
          box-shadow: 0 2px 8px rgba(15, 23, 42, 0.08);
        }
      }

      .rounded_carousel {
        margin-top: 24px;
        padding: 28px 0 24px;
        row-gap: 18px;
        height: auto;
        min-height: 280px;
        display: flex;
        flex-direction: column;
        align-items: center;

        &::after {
          background-color: rgba(202, 213, 239, 1);
        }

        .carousel_content {
          min-width: 0;
          width: 100%;
          flex-wrap: wrap;
          justify-content: center;
          row-gap: 6px;
          order: 1;

          h2 {
            font-size: 18px;
            font-weight: 500;
          }

          .dynamic_text {
            margin-top: 0;
            font-size: 18px;
          }
        }

        .arc_slider_container {
          position: relative;
          left: auto;
          top: 25px;
          transform: none;
          width: 100%;
          height: 130px;
          margin-top: 0;
          order: 2;
          overflow: visible;

          .arc-ribbon {
            display: block;
            position: absolute;
            left: 50%;
            top: -28%;
            transform: translateX(-50%);
            width: 980px;
            height: 190px;
            background-color: rgba(255, 255, 255, 0.35);
            background-image:
              linear-gradient(to bottom, rgba(51, 51, 51, 0.55) 6px, transparent 6px),
              linear-gradient(to top, rgba(51, 51, 51, 0.55) 6px, transparent 6px);
            clip-path: path("M 0,88 Q 490,0 980,88 L 980,158 Q 490,58 0,158 Z");
            pointer-events: none;
          }

          .arc_slider {
            height: 100%;

            .slider_card {
              width: 56px;
              height: 56px;

              span {
                font-size: 15px;
              }

              &.active {
                width: 56px;
                height: 56px;

                span {
                  font-size: 18px;
                }
              }
            }
          }
        }

        .carousel_subtitle {
          order: 3;

          .dynamic_subtitle {
            width: 100%;
            max-width: 280px;
            height: 55px;
            min-height: 0;
            font-size: 13px;
            line-height: 140%;
          }
        }
      }
    }
  }

  .section_six {
    padding: 30px 0;

    .section_six_inner {
      margin-top: 20px;

      .our_cases {
        width: 100%;
        row-gap: 12px;

        h2 {
          font-size: 24px;
          line-height: 125%;
        }
      }

      .our_cases_slider_buttons {
        display: none;
      }

      .our_cases_slider {
        margin-top: 24px;
        gap: 12px;

        .slider_item {
          width: 310px;
          padding: 25px;
          border-radius: 28px;
          row-gap: 19px;

          .item_head {
            width: 100%;

            h2 {
              font-size: 32px;
              line-height: 125%;
			  width: 260px;
            }
          }

          .item_points {
            flex-wrap: wrap;
            gap: 8px;
            column-gap: 8px;
          }

          .item_text {

            p {
              font-size: 16px;
            }

            .item_info {
              max-width: 226px;
              font-size: 16px;
            }

            .item_nav_btn {
              font-size: 13px;
            }
          }
        }
      }
    }
  }

  .section_seven {
    padding: 60px 0;
    background-size: cover;
    background-position: center;

    .section_seven_inner {
      margin-top: 0;
      flex-direction: column;
      row-gap: 28px;
      column-gap: 0;
      align-items: stretch;

      .form_title {
        width: 100%;
        text-align: center;

        h2 {
          font-size: 24px;
          line-height: 125%;
        }
      }

      .project_form {
        width: 100%;

        .form_checkbox {
          margin-top: 15px;
        }

        .form_checkbox p {
          width: auto;
          flex: 1;
          font-size: 11px;
          line-height: 140%;
        }

      }
    }
  }

  .section_eight {
    padding: 30px 0;

    .section_eight_inner {
      margin-top: 20px;

      .transform {
        width: 100%;
        row-gap: 12px;

        h2 {
          font-size: 24px;
          line-height: 125%;
        }
      }


      .cases {
        margin-top: 20px;
        flex-direction: row;
        align-items: stretch;
        column-gap: 12px;
        row-gap: 0;
        width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        scroll-behavior: smooth;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
        padding-bottom: 4px;

        &::-webkit-scrollbar {
          display: none;
        }

        scrollbar-width: none;
        -ms-overflow-style: none;

        .case_item {
          width: 326px;
          height: auto;
          min-height: 0;
          padding: 30px;
          border-radius: 28px;
          row-gap: 12px;

          .item_title {
            width: 100%;
          }

          .inactive_item_title {
            display: none !important;
          }

          .active_item_title {
            position: static;
            width: 100%;
            opacity: 1;
            visibility: visible;
            pointer-events: auto;
            white-space: normal;

            display: flex;
            flex-direction: column-reverse;
            align-items: flex-start;
            row-gap: 6px;

            .item_icon {
              align-self: flex-end;
            }

            h2 {
              font-size: 36px;
              line-height: 125%;
            }
          }

          .active_item_desc {
            width: 100%;
            opacity: 1;
            visibility: visible;

            p {
              font-size: 20px;
              line-height: 120%;
			  min-height: 144px;
            }
          }

          .active_item_image {
            position: relative;
            bottom: auto;
            right: auto;
            width: 100%;
            height: 180px;
            margin-top: 8px;
            transform: none;
            filter: none;
            opacity: 1;
            visibility: visible;

			& video {
				width: 270px;
				margin-top: 0;
			}

          }

          &:hover {
            width: 336px;

            .inactive_item_title {
              display: none !important;
            }

            .active_item_title {
              position: static;
              opacity: 1;
              visibility: visible;
              pointer-events: auto;
            }

            .active_item_desc {
              opacity: 1;
              visibility: visible;
            }

            .active_item_image {
              position: relative;
              bottom: auto;
              right: auto;
              margin-top: 8px;
              transform: none;
              filter: none;
              opacity: 1;
              visibility: visible;
            }
          }
        }
      }
    }
  }

  .section_nine {
    padding: 30px 0;

    .section_nine_inner {
      margin-top: 20px;

      .security {
        width: 100%;
        row-gap: 12px;

        h2 {
          font-size: 24px;
          line-height: 125%;
        }
      }

      .logos {
        margin-top: 28px;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        column-gap: 28px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        touch-action: pan-x;
        scrollbar-width: none;
        -ms-overflow-style: none;

        &::-webkit-scrollbar {
          display: none;
        }

        width: 100%;
        padding-bottom: 4px;

        .logo {
          flex-shrink: 0;

          img {
            height: 36px;
            width: auto;
            object-fit: contain;
          }
        }
      }

      .security_title {
        margin-top: 40px;
        font-size: 24px;
        text-align: center;
        line-height: 125%;
      }

      .security_slider_buttons {
        margin-top: 20px;
      }

      .security_slider {
        margin-top: 20px;
        gap: 12px;

        .security_item {
          width: 297px;
          height: 209px;
          padding: 20px 16px;
          border-radius: 24px;

          .item_text {
            width: 100%;
            font-size: 24px;
            line-height: 130%;
          }
        }
      }
    }
  }

  .section_ten {
    padding: 30px 0;

    .section_ten_inner {
      margin-top: 20px;

      h2 {
        font-size: 24px;
        line-height: 125%;
        padding-bottom: 0;
      }

      .why_cards {
        margin-top: 36px;
        display: flex;
        flex-direction: column;
        gap: 12px;
        grid-template-columns: none;
        grid-template-rows: none;
        width: 100%;
        overflow: visible;

        .why_item {
          width: 100%;
          min-height: 110px;
          height: 192px;
          padding: 22px 18px;
          border-radius: 28px;
          position: relative;
          justify-content: center;
          overflow: hidden;
          flex-shrink: 0;
          grid-row: auto;
          grid-column: auto;

          &:first-child {
            grid-row: auto;
            grid-column: auto;
            min-height: 110px;
            justify-content: center;
          }

          .why_item_text {
            font-size: 24px;
            line-height: 125%;
            max-width: 100%;
          }

          &.is-active {
            min-height: 266px;
            justify-content: flex-end;
            overflow: visible;

            .why_item_wave {
              display: block;
              width: 160%;
              max-width: none;
              height: auto;
              top: -32%;
              left: 50%;
              transform: translateX(-66%);
              object-fit: contain;
            }

            .why_item_text {
              max-width: 100%;
              color: var(--color-white);
            }
          }

          &.inactive {
            min-height: 110px;
            justify-content: flex-end;
          }
        }
      }
    }
  }

  .section_eleven {
    padding: 30px 0;

    .section_eleven_inner {
      margin-top: 20px;

      h2 {
        font-size: 24px;
      }

      .faq_list {
        margin-top: 28px;
        width: 100%;
      }

      .faq_item {
        .faq_header {
          column-gap: 12px;
          padding: 16px 0;
        }

        .faq_question {
          font-size: 20px;
          line-height: 130%;
          width: 260px;
        }

        .faq_toggle {
          width: 28px;
          height: 28px;

          &::before {
            width: 12px;
          }

          &::after {
            height: 12px;
          }
        }

        .faq_answer p {
          font-size: 13px;
          line-height: 140%;
        }
      }
    }
  }

  .section_twelve {
    padding: 40px 0;
    background-size: cover;
    background-position: center;

    .section_twelve_inner {
      flex-direction: column;
      row-gap: 28px;
      column-gap: 0;
      align-items: stretch;

      .form_title {
        width: 100%;
        row-gap: 14px;
        text-align: center;
        align-items: center;

        h2 {
          order: 2;
          font-size: 24px;
          line-height: 125%;
        }

        p {
          order: 1;
          font-size: 14px;
          line-height: 140%;
        }

        .form_back_link {
          order: 3;
          margin-top: 4px;
        }
      }

      .project_form {
        width: 100%;

        .form_checkbox {
          p {
            width: auto;
            flex: 1;
            font-size: 11px;
            line-height: 140%;
          }
        }
      }
    }
  }

  .footer {
    padding: 28px 0;

    .footer_inner {
      display: grid;
      grid-template-columns: 1.2fr 1fr;
      grid-template-areas:
        "logo socials"
        "contacts socials"
        "email links"
        "disclaimer copy";
      column-gap: 16px;
      row-gap: 12px;
      align-items: start;
    }

    .footer_logo {
      grid-area: logo;
      width: 92px;
      height: 28px;
    }

    .footer_contacts {
      grid-area: contacts;
    }

    .footer_socials {
      grid-area: socials;
      justify-self: end;
      align-self: start;
    }

    .footer_email {
      grid-area: email;
      row-gap: 10px;
    }

    .footer_links {
      grid-area: links;
      justify-self: end;
      max-width: 100%;
      row-gap: 10px;
      margin-top: -17px;

      span {
        font-size: 12px;
      }
    }

    .footer_disclaimer {
      grid-area: disclaimer;
      max-width: 100%;

      p {
        font-size: 12px;
        line-height: 130%;
      }
    }

    .footer_copy {
      grid-area: copy;
      justify-self: end;
      width: 100%;
      text-align: left;

      p {
        font-size: 12px;
      }
    }
  }
}