@import url("https://fonts.googleapis.com/css2?family=Kumbh+Sans&display=swap");
.u-strikethrough {
  text-decoration: line-through;
  color: #333333; }

*,
*::after,
*::before {
  padding: 0;
  margin: 0; }

html {
  font-size: 62.5%;
  scroll-behavior: smooth; }

a {
  text-decoration: none;
  color: unset; }

li {
  list-style: none;
  display: inline-block; }

body {
  background-color: #f7f7f7;
  min-width: 280px; }

body,
input,
textarea,
button {
  font-family: "Kumbh Sans", sans-serif; }

h2 {
  font-size: 3.2rem;
  color: #00c666; }

h3 {
  font-size: 2.2rem;
  margin: 1rem 0; }

.home__text--bottom {
  color: #222222 !important; }

.footer {
  background-color: #00c666;
  height: 25rem;
  position: relative; }
  .footer__content {
    position: absolute;
    margin: 2.4rem;
    padding: 0 calc((100vw - 1200px) / 2);
    color: #222222;
    font-size: 2.4rem; }
  .footer__icon {
    margin-right: 2rem;
    transition: all 0.3s ease; }
    .footer__icon:hover {
      color: #555555; }
  .footer__email {
    margin-top: 2rem;
    position: relative; }
    .footer__email-text {
      font-size: 1.8rem;
      display: inline;
      position: absolute;
      margin-left: -1.5rem;
      top: 0.3rem; }
  .footer__phone {
    margin-top: 1.5rem;
    position: relative; }
    .footer__phone-text {
      font-size: 1.8rem;
      display: inline;
      position: absolute;
      margin-left: 0.55rem;
      top: 0.3rem; }

::-webkit-scrollbar {
  width: 1.25rem;
  background-color: #e3e2e9;
  border-radius: 0.8rem; }

::-webkit-scrollbar-thumb {
  background-color: #c8c6d2;
  border-radius: 0.8rem; }

::-webkit-scrollbar-thumb:hover {
  background-color: #a19fad; }

.nav {
  height: 8rem;
  padding: 0.5em calc((100vw - 1200px) / 2);
  font-size: 2.4rem;
  margin-left: 2.4rem;
  margin-right: 2.4rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: box-shadow linear 0.3s; }
  @media screen and (max-width: 768px) {
    .nav__box-shadow {
      box-shadow: 0 1rem 2rem #222222; } }
  .nav__icon {
    visibility: hidden;
    display: none; }
  .nav__logo {
    letter-spacing: 1rem;
    text-transform: uppercase;
    font-weight: 400;
    display: inline-block;
    display: flex;
    align-items: center;
    color: #222222;
    transition: all 0.3s ease; }
  .nav__link {
    padding: 0 1.6rem;
    font-size: 1.8rem;
    color: #222222;
    transition: all 0.3s ease; }
    @media screen and (max-width: 768px) {
      .nav__link {
        font-size: 2.4rem !important; } }
  .nav__link:hover, .nav__logo:hover {
    color: #00c666; }
  @media screen and (max-width: 768px) {
    .nav {
      position: fixed;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 4.8rem;
      padding: 0 2.4rem;
      margin: 0;
      background-color: #fff;
      z-index: 9999; }
    .nav__menu {
      position: absolute;
      top: 100%;
      left: 0;
      height: 100vh;
      width: 100vw;
      background-color: #00c666;
      transition: all 0.5s ease; }
      .nav__menu-active {
        top: calc(-100vh + 4.8rem); }
      .nav__menu ul {
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: space-evenly;
        flex-direction: column; }
        .nav__menu ul li:hover {
          color: #f7f7f7; }
    .nav__logo {
      font-size: 2rem; }
    .nav__logo-box {
      display: flex;
      align-items: center; }
    .nav__icon {
      visibility: visible;
      height: 40%;
      width: 5rem;
      display: flex;
      justify-content: space-between;
      flex-direction: column;
      margin-right: 1.2rem;
      position: relative;
      cursor: pointer; }
      .nav__icon--1, .nav__icon--2, .nav__icon--3 {
        height: 2px;
        width: 50%;
        background-color: #222222;
        border-radius: 100px;
        transition: all ease 0.3s; }
      .nav__icon-active {
        margin-top: 22.5px;
        transition: all ease 0.3s; }
        .nav__icon-active .nav__icon--1 {
          transform: rotate(45deg);
          position: absolute; }
        .nav__icon-active .nav__icon--2 {
          transform: rotate(135deg); }
        .nav__icon-active .nav__icon--3 {
          opacity: 0; } }

.home {
  margin: 0 auto;
  padding: 0.5em calc((100vw - 1200px) / 2);
  margin: 0 2.4rem;
  display: flex;
  flex-direction: row;
  align-items: center; }
  .home__left {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-direction: column;
    width: 100%; }
  .home__right {
    display: flex;
    justify-content: center;
    width: 100%; }
    .home__right img {
      max-width: 57.6rem;
      max-height: 40rem; }
  .home__text {
    font-size: 6.4rem; }
    .home__text--top {
      color: #00c666; }
  .home__btn {
    background-color: #00c666;
    display: inline-block;
    padding: 1.5rem 3rem;
    margin-left: 0.5rem;
    margin-top: 2rem;
    font-size: 1.8rem;
    color: #fff;
    border-radius: 0.5rem;
    transition: all ease 0.3s; }
    .home__btn:hover {
      transform: translateY(4px);
      background-color: #00bc61; }
  .home__icon {
    font-size: 2rem; }
  @media screen and (max-width: 768px) {
    .home {
      flex-direction: column-reverse;
      height: 100vh;
      max-height: 1024px;
      justify-content: center; }
      .home__right {
        margin-bottom: 5rem; }
      .home__text {
        font-size: 4rem; }
      .home__btn {
        padding: 1rem 2rem;
        font-size: 1.4rem; } }
  @media screen and (max-width: 1024px) {
    .home__text {
      font-size: 4rem; }
    .home__right img {
      max-width: 50rem;
      max-height: 30rem; } }
  @media screen and (max-width: 414px) {
    .home__right img {
      max-width: 40rem;
      max-height: 22.5rem; } }
  @media screen and (max-width: 1024px) and (min-height: 1024px) {
    .home__text {
      font-size: 5rem; }
    .home__right {
      display: flex;
      justify-content: center;
      width: 100%; }
      .home__right img {
        max-width: 50rem;
        max-height: 40rem; } }

.about {
  padding: 0 calc((100vw - 1200px) / 2);
  margin: 0 2.4rem;
  padding-bottom: 10rem; }
  @media screen and (min-width: 768px) {
    .about {
      margin-top: 100px; } }
  .about__main-boxes {
    display: flex;
    margin-top: 1.5rem; }
    .about__main-boxes p {
      font-size: 1.8rem;
      color: #777;
      line-height: 3.5rem; }
    @media screen and (max-width: 1024px) {
      .about__main-boxes {
        flex-direction: column; } }
  .about__main-box {
    width: 50%; }
    @media screen and (max-width: 1024px) {
      .about__main-box {
        width: 100%; } }
    .about__main-box img {
      height: 30rem;
      transition: all 0.3s ease;
      z-index: -1; }
      .about__main-box img:hover {
        transform: scale(1.05); }
      @media screen and (max-width: 1024px) {
        .about__main-box img {
          margin-top: 2rem; } }
      @media screen and (max-width: 768px) {
        .about__main-box img {
          height: auto;
          width: 100%;
          max-width: 500px; } }
    .about__main-box--img {
      display: flex;
      justify-content: flex-end;
      align-items: center; }
    @media screen and (max-width: 1024px) {
      .about__main-box {
        justify-content: center; } }
  .about__boxes {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    margin-top: 2rem;
    width: 100%; }
    @media screen and (max-width: 768px) {
      .about__boxes {
        flex-direction: column; } }
  .about__box {
    width: 500px;
    height: 250px;
    position: relative;
    display: flex;
    justify-content: center;
    flex-direction: column; }
    .about__box i {
      font-size: 3rem;
      color: #00c666; }
    @media screen and (max-width: 768px) {
      .about__box {
        width: 100%;
        height: 200px; } }
  .about__box-text h3 {
    color: #00c666; }
  .about__box-text p {
    font-size: 1.4rem;
    line-height: 2.5rem;
    width: 85%;
    color: #222222; }

.pricing {
  padding: 0 calc((100vw - 1200px) / 2);
  margin: 0 2.4rem;
  padding-bottom: 10rem;
  color: #222222; }
  .pricing__cards {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 15px; }
    @media screen and (max-width: 1024px) {
      .pricing__cards {
        flex-direction: column;
        align-items: center; } }
  .pricing__card {
    width: 27.5rem;
    background-color: #00c666;
    padding: 2rem 2rem 5rem 2rem;
    border-radius: 1rem;
    text-align: center; }
    .pricing__card ul {
      margin-top: 2rem; }
      .pricing__card ul li {
        display: block;
        font-size: 1.8rem;
        margin-bottom: 3rem; }
        .pricing__card ul li:last-child {
          margin-bottom: 4.5rem; }
    @media screen and (max-width: 1024px) {
      .pricing__card {
        width: 75%;
        max-width: 450px;
        margin-bottom: 1.5rem; } }
  .pricing__button {
    background-color: #f7f7f7;
    font-size: 2.2rem;
    padding: 2rem 4rem;
    border-radius: 10rem;
    transition: all ease 0.3s; }
    .pricing__button:hover {
      background-color: #dedede; }

.contact {
  padding: 0 calc((100vw - 1200px) / 2);
  margin: 0 2.4rem;
  padding-bottom: 10rem; }
  .contact__form {
    margin: 1.5rem auto 0 auto; }
    .contact__form-label {
      font-size: 2rem;
      color: #222222;
      margin-bottom: 100rem; }
    .contact__form-group {
      margin-bottom: 3rem; }
      .contact__form-group:not(:last-child) {
        margin-right: 3rem; }
      .contact__form-group textarea {
        height: 20rem;
        width: 40rem; }
        @media screen and (max-width: 768px) {
          .contact__form-group textarea {
            width: 75%;
            min-width: 20rem; } }
      .contact__form-group--top {
        display: flex; }
        @media screen and (max-width: 768px) {
          .contact__form-group--top {
            flex-direction: column;
            min-width: 25rem; } }
    .contact__form-input {
      padding: 1rem;
      outline: none;
      border: 3px solid transparent;
      transition: all ease 0.3s;
      background-color: #f0eefc;
      font-size: 1.8rem;
      width: 30rem;
      height: 3rem;
      border-radius: 0.5rem;
      margin-top: 0.5rem; }
      .contact__form-input:focus {
        border-bottom: 3px solid #00c666; }
      .contact__form-input::placeholder {
        font-size: 1.8rem; }
      @media screen and (max-width: 768px) {
        .contact__form-input {
          width: 75%; } }
  .contact__btn {
    background-color: #00c666;
    display: inline-block;
    padding: 1.5rem 3rem;
    font-size: 1.8rem;
    color: #fff;
    border-radius: 0.5rem;
    transition: all ease 0.3s;
    border: none;
    cursor: pointer; }
    .contact__btn:hover {
      transform: translateY(4px);
      background-color: #00bc61; }
