/* header */

.nav-cps {
  display: none;
}

.header-cps {
  position: fixed;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 9;
  width: 100%;

  background-color: var(--black);
}

.header-container-cps {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 8px 16px;
  height: 56px;
  width: 100%;
}

.header-logo-cps {
  width: 40px;
  height: 38px;
}

.nav-list-cps {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 36px;
}

.nav-item-cps {
  padding: 4px 10px;
  position: relative;
}

.nav-link-cps {
  font-weight: 600;
  font-size: 16px;
  line-height: 150%;
  color: var(--ffffff);
  text-transform: uppercase;

  position: relative;
  z-index: 10;

  transition: all 0.3s ease-in-out;
}

.nav-link-cps:hover {
  color: var(--orange);
}

.nav-link-cps:active {
  transform: scale(1.2);
}

.menu-btn-cps {
  display: flex;
  justify-content: center;
  align-items: center;

  width: 40px;
  height: 40px;

  svg {
    width: 30px;
    height: 20px;
    fill: var(--ffffff);
  }
}

@media screen and (min-width: 1440px) {
  .header-container-cps {
    justify-content: center;
    gap: 90px;
    padding: 14px 108px;
    height: 66px;
  }

  .nav-cps {
    display: block;
  }

  .menu-open-cps {
    display: none;
  }
}

/* modal  */

.modal-cps {
  position: fixed;
  top: 56px;
  z-index: 10;
  left: 50%;
  transform: translateX(-50%);

  padding: 60px 30px;
  width: 375px;
  height: 756px;

  display: flex;
  justify-content: start;
  background: #65b741;
}

.menu-nav-list-cps {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 22px;
}

/* popup */

.popup-cps {
  position: fixed;
  z-index: 11;
  bottom: 0;
  left: 0;
  width: 100%;
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  background: var(--bg-card);

  padding: 40px 16px;
}

.popup-text-cps {
  font-weight: 600;
  font-size: 14px;
  line-height: 157%;
  text-align: center;
}

.popup-btn-wrap-cps {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
  gap: 24px;
}

.popup-btn-cps {
  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 4px;
  padding: 16px 32px;
  width: 343px;
  height: 56px;

  text-align: center;
  font-weight: 600;
  line-height: 150%;
  font-family: var(--font3);
  text-transform: uppercase;
}

.popup-btn-accept-cps {
  background: #3ca400;
  color: var(--ffffff);

  transition: all 0.3s ease;
}

.popup-btn-decline-cps {
  border: 1px solid var(--black);
  background: transparent;
  color: var(--black);

  transition: all 0.3s ease;
}

.popup-btn-accept-cps:hover {
  background: #297100;
}

.popup-btn-decline-cps:hover {
  border: none;
  background: var(--black);
  color: var(--ffffff);
}

@media screen and (min-width: 1440px) {
  .popup-cps {
    padding: 40px 108px;
    width: 1440px;
    left: 50%;
    transform: translateX(-50%);

    flex-direction: row;
    gap: 128px;
  }

  .popup-text-cps {
    font-size: 16px;
    line-height: 150%;
    text-align: left;
    width: 704px;
    flex-shrink: 0;
  }

  .popup-btn-wrap-cps {
    gap: 16px;
    flex-direction: row;
  }

  .popup-btn-cps {
    width: 184px;
  }
}

/* hero  */

#home {
  height: 812px;
  border-radius: 0 0 100px 0;
  background: #65b741;
}

.hero-bg-cps {
  background: url(/images/hero-bg-mob.png);
  background-position: left;
  background-repeat: no-repeat;
  background-size: cover;

  height: 100%;
  width: 375px;

  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);

  opacity: 0.2;
}

.hero-container-cps {
  height: 100%;
  padding-top: 113px;
}

.hero-title-cps {
  font-weight: 700;
  font-size: 32px;
  text-transform: uppercase;
  color: var(--ffffff);
  margin-bottom: 16px;

  span {
    display: inline-block;
    color: #fcdc2a;
  }
}

.hero-text-cps {
  line-height: 150%;
  color: var(--ffffff);
  margin-bottom: 4px;
}

.hero-last-text-cps {
  margin-bottom: 124px;
}

.hero-pic-cps {
  background: url(/images/hero-pic-mob.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  width: 343px;
  height: 198px;

  position: relative;
  z-index: 1;
}

.hero-disc-cps {
  background: #bfbfbf;
  width: 154px;
  height: 18px;

  position: absolute;
  right: 65px;
  bottom: 51px;
  border-radius: 100%;
}

@media screen and (min-width: 1440px) {
  #home {
    height: 692px;
    border-radius: 0 0 260px 0;
  }

  .hero-bg-cps {
    background: url(/images/hero-bg-desk.png);

    width: 1440px;
    opacity: 1;
  }

  .hero-container-cps {
    height: 100%;
    padding-top: 188.5px;
    align-items: start;
    padding-bottom: 221.5px;
  }

  .hero-wrap-cps {
    width: 724px;
  }

  .hero-title-cps {
    font-size: 42px;
    margin-bottom: 24px;
  }

  .hero-text-cps {
    font-size: 20px;
    margin-bottom: 8px;
  }

  .hero-last-text-cps {
    margin-bottom: 0;
  }

  .hero-pic-cps {
    background: url(/images/hero-pic-desk.png);

    width: 554px;
    height: 484px;

    position: absolute;
    right: 42px;
    bottom: 70px;
  }

  .hero-disc-cps {
    width: 294px;
    height: 31px;

    right: 211px;
    bottom: 63px;
  }

  .hero-plane-cps {
    background: url(/images/hero-plane.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

    width: 153px;
    height: 114px;

    position: absolute;
    right: 434px;
    bottom: 289px;
  }
}

/* description */

.description-pic-cps {
  border-radius: 16px;
  width: 343px;
  height: 228px;
  box-shadow: 12px 12px 20px 0 rgba(136, 136, 136, 0.12);

  background: url(/images/descr-pic.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.description-text-wrap-cps {
  margin-top: 24px;

  .description-subtitle-cps {
    margin-bottom: 24px;
  }

  .description-text-cps {
    font-size: 14px;
    line-height: 157%;
    margin-bottom: 8px;
  }

  .descr-last-text-cps {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1440px) {
  .description-container-cps {
    flex-direction: row;
    gap: 140px;
  }

  .description-pic-cps {
    width: 508px;
    height: 339px;
    flex-shrink: 0;
  }

  .description-text-wrap-cps {
    margin-top: 0;

    .description-subtitle-cps {
      margin-bottom: 32px;
    }

    .description-text-cps {
      font-size: 16px;
      line-height: 150%;
    }
  }
}

/* how */

.how-container-cps {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.how-subtitle-cps {
  margin-bottom: 40px;
  text-align: center;
}

.how-list-cps {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.how-item-cps {
  border: 1px dashed var(--blue);
  border-radius: 16px;
  padding: 40px 32px 60px 32px;
  width: 343px;
  box-shadow: 12px 12px 20px 0 rgba(136, 136, 136, 0.12);

  display: flex;
  flex-direction: column;
  gap: 32px;

  img {
    width: 60px;
    height: 60px;
  }

  p {
    font-size: 14px;
    line-height: 157%;
  }
}

.how-item-cps:nth-child(2),
.how-item-cps:nth-child(5) {
  border: 1px dashed #da00a0;
}

.how-item-cps:nth-child(3),
.how-item-cps:nth-child(6) {
  border: 1px dashed #91da00;
}

.how-text-cps {
  font-size: 14px;
  line-height: 157%;
  text-align: center;
  margin-top: 32px;
}

@media screen and (min-width: 1440px) {
  .how-subtitle-cps {
    margin-bottom: 60px;
  }

  .how-list-cps {
    flex-direction: row;
    flex-wrap: wrap;
    width: 1264px;
  }

  .how-item-cps {
    width: 400px;

    p {
      font-size: 16px;
      line-height: 150%;
    }
  }

  .how-text-cps {
    font-size: 16px;
    line-height: 150%;
  }
}

/* growth */

#growth {
  border-radius: 100px 0 0 0;
  background: var(--orange);
}

.growth-bg-cps {
  background: url(/images/growth-bg-mob.png);
  background-position: left;
  background-repeat: no-repeat;
  background-size: cover;

  height: 100%;
  width: 375px;

  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}

.growth-container-cps {
  color: var(--ffffff);
  padding-top: 55px;
  padding-bottom: 60px;
}

.growth-pic-cps {
  background: url(/images/growth-pic-mob.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  width: 306px;
  height: 320px;

  margin-bottom: 54px;
}

.growth-title-cps {
  border: 0.5px solid #fff4b5;
  color: #fff4b5;
}

.growth-title-cps::before {
  background: #fff4b5;
}

.growth-subtitle-cps {
  margin-bottom: 24px;
}

.growth-text-cps {
  font-size: 14px;
  line-height: 157%;
}

@media screen and (min-width: 1440px) {
  #growth {
    border-radius: 260px 0 0 0;
  }

  .growth-bg-cps {
    background: url(/images/hero-bg-desk.png);
    background-position: top;

    width: 1440px;
  }

  .growth-container-cps {
    padding-top: 90px;
    padding-bottom: 90px;
    align-items: end;
  }

  .growth-wrap-cps {
    width: 616px;
  }

  .growth-pic-cps {
    background: url(/images/growth-pic-desk.png);

    width: 508px;
    height: 532px;

    margin-bottom: 0;
    position: absolute;
    top: -72px;
    left: 88px;
  }

  .growth-text-cps {
    font-size: 16px;
    line-height: 150%;
  }
}

/* skills */

#skills {
  background: #ecf9ff;
}

.skills-container-cps {
  padding-bottom: 20px;
}

.skills-subtitle-cps {
  margin-bottom: 30px;
}

.skills-list-cps {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.skills-item-cps {
  border: 1px dashed var(--blue);
  border-radius: 4px;
  padding: 16px;
  width: 343px;
  box-shadow: 12px 12px 20px 0 rgba(136, 136, 136, 0.12);

  display: flex;
  align-items: center;
  gap: 16px;

  svg {
    width: 24px;
    height: 24px;
    fill: var(--blue);
  }

  p {
    line-height: 150%;
  }
}

.skills-item-cps:nth-child(2),
.skills-item-cps:nth-child(5) {
  border: 1px dashed #da00a0;

  svg {
    fill: #da00a0;
  }
}

.skills-item-cps:nth-child(3),
.skills-item-cps:nth-child(6) {
  border: 1px dashed #91da00;

  svg {
    fill: #91da00;
  }
}

.skills-pic-cps {
  width: 343px;
  height: 366px;

  background: url(/images/skills-pic.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;

  margin-top: 32px;
}

@media screen and (min-width: 1440px) {
  .skills-container-cps {
    padding-bottom: 144px;
    align-items: start;
  }

  .skills-subtitle-cps {
    margin-bottom: 32px;
  }

  .skills-item-cps {
    width: 508px;
  }

  .skills-pic-cps {
    width: 704px;
    height: 752px;

    margin-top: 0;
    position: absolute;
    right: 0;
    bottom: 0;
  }
}

/* reviews */

.reviews-subtitle-cps {
  margin-bottom: 46px;
}

.reviews-item-cps {
  width: 343px;
  height: 579px;
  padding-top: 67px;
  position: relative;

  img {
    width: 120px;
    height: 120px;

    position: absolute;
    right: 24px;
    top: 0;
  }

  div {
    border-radius: 26px;
    padding: 32px 24px;
    height: 100%;
    box-shadow: 12px 12px 20px 0 rgba(136, 136, 136, 0.12);
    background: var(--blue);
    color: var(--ffffff);

    h3 {
      font-weight: 600;
      line-height: 150%;
    }

    span {
      font-size: 14px;
      line-height: 157%;
    }

    p {
      font-size: 14px;
      line-height: 157%;
      margin-top: 18px;
    }
  }
}

.reviews-item-cps:nth-child(even) {
  div {
    background: #da00a0;
  }
}

@media screen and (min-width: 1440px) {
  .reviews-container-cps {
    display: block;
  }

  .reviews-subtitle-cps {
    margin-bottom: 60px;
  }

  .reviews-item-cps {
    width: 616px;
    height: 405px;

    img {
      right: 50px;
    }

    div {
      padding: 40px 32px;

      h3 {
        font-size: 20px;
        line-height: 120%;
      }

      span {
        font-size: 16px;
        line-height: 150%;
      }

      p {
        font-size: 16px;
        line-height: 150%;
      }
    }
  }
}

/* faq */

.faq-subtitle-cps {
  margin-bottom: 46px;
}

.faq-list-cps {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.faq-item-cps {
  display: flex;
  flex-direction: column;

  box-shadow: 12px 12px 20px 0 rgba(136, 136, 136, 0.12);
  background: var(--bg-card);
}

.faq-question-wrap-cps {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 68px;
  padding: 16px;

  p {
    line-height: 150%;
  }

  .faq-btn-cps {
    width: 32px;
    height: 32px;
    flex-shrink: 0;

    svg {
      width: 100%;
      height: 100%;
    }
  }
}

.faq-answer-wrap-cps {
  margin-top: -8px;
  padding: 16px;

  p {
    line-height: 150%;
  }
}

@media screen and (min-width: 1440px) {
  .faq-container-cps {
    align-items: start;
  }

  .faq-subtitle-cps {
    margin-bottom: 60px;
  }

  .faq-list-cps {
    flex-wrap: wrap;
    flex-direction: row;
    gap: 16px 32px;
    width: 1264px;
  }

  .faq-item-cps {
    width: 616px;
  }

  .faq-question-wrap-cps {
    height: 58px;
  }
}

/* contact */

.contact-container-cps {
  padding-bottom: 438px;
}

.contact-subtitle-cps {
  margin-bottom: 24px;
}

.contact-part-email-cps {
  border: 1px dashed var(--blue);
  border-radius: 16px;
  padding: 24px;
  width: 343px;

  box-shadow: 12px 12px 20px 0 rgba(136, 136, 136, 0.12);
  background: var(--bg-card);

  display: flex;
  flex-direction: column;
  gap: 24px;

  p {
    font-size: 14px;
    line-height: 157%;
  }
}

.contact-email-wrap {
  display: flex;
  align-items: center;
  gap: 24px;

  svg {
    width: 40px;
    height: 40px;
    fill: var(--blue);
  }

  div {
    h3 {
      font-family: var(--second-family);
      font-weight: 600;
      font-size: 16px;
      line-height: 150%;
      margin-bottom: 8px;
    }

    p {
      font-size: 14px;
      line-height: 157%;
    }
  }
}

.contact-part-media-cps {
  border: 1px dashed var(--blue);
  border-radius: 16px;
  padding: 24px;
  width: 343px;

  box-shadow: 12px 12px 20px 0 rgba(136, 136, 136, 0.12);
  background: var(--bg-card);

  display: flex;
  flex-direction: column;
  gap: 24px;
  margin-top: 32px;

  p {
    font-size: 14px;
    line-height: 157%;
  }

  ul {
    display: flex;
    align-items: center;
    gap: 62px;

    li {
      svg {
        width: 32px;
        height: 32px;
        fill: var(--blue);
      }
    }

    li:nth-child(1) {
      svg {
        width: 26px;
        height: 26px;
      }
    }

    li:nth-child(2) {
      svg {
        stroke: var(--blue);
      }
    }
  }
}

.contact-line-cps {
  display: none;

  background: url(/images/contact-line.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}

.contact-pic-cps {
  width: 375px;
  height: 366px;

  background: url(/images/contact-pic.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;

  position: absolute;
  bottom: 40px;
  right: 0;
}

@media screen and (min-width: 1440px) {
  .contact-container-cps {
    align-items: start;
    padding-top: 164px;
    padding-bottom: 163px;
  }

  .contact-subtitle-cps {
    margin-bottom: 32px;
  }

  .contact-part-email-cps {
    width: 400px;

    p {
      font-size: 16px;
      line-height: 150%;
    }
  }

  .contact-email-wrap {
    div {
      p {
        font-size: 16px;
        line-height: 150%;
      }
    }
  }

  .contact-part-media-cps {
    width: 400px;

    p {
      font-size: 16px;
      line-height: 150%;
    }
  }

  .contact-line-cps {
    display: block;
    width: 1440px;
    height: 223px;

    position: absolute;
    left: -253px;
    top: 320px;
    z-index: -1;
  }

  .contact-pic-cps {
    width: 626px;
    height: 651px;
    background: url(/images/contact-pic-desk.png);

    bottom: 90px;
    right: 30px;
  }
}

/* footer */

#footer {
  background: var(--black);
  color: var(--ffffff);
}

.footer-container-cps {
  padding: 30px 16px;
}

.footer-links-list-cps {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.footer-link-cps {
  font-weight: 600;
  font-size: 14px;
  line-height: 157%;
  text-align: center;
}

.footer-text-cps {
  font-size: 14px;
  line-height: 157%;
  text-align: center;
  margin-top: 30px;
}

@media screen and (min-width: 1440px) {
  .footer-container-cps {
    padding: 60px 108px;
  }

  .footer-links-list-cps {
    flex-direction: row;
    justify-content: end;
    gap: 32px;
    width: 100%;
  }

  .footer-link-cps {
    font-size: 16px;
    line-height: 150%;
  }

  .footer-text-cps {
    font-size: 16px;
    line-height: 150%;
    margin-top: 50px;
  }
}

/* ********************* */

.hidden-cps {
  display: none;
}

.click-cps {
  transform: rotate(180deg);
}
