.home #header:not(.header-sticky) #header-search-form {
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
}

#main {
    padding-top: 0;
}

.homepage .page-title-big {
    font-size: 45px;
    font-weight: 600;
}

.homepage .main-title {
    line-height: 54px;
}

@media (min-width: 1450px) {
    .home .container {
        max-width: 1430px;
    }
}

.homepage .page-title-big .circle,
.homepage .page-title .circle,
.homepage .main-title .circle {
    margin-left: 0;
    margin-top: -5px;
}
/*top-element*/
.top-element {
    background: radial-gradient(240.72% 70.12% at 50% 50%, #F7F8FF 0%, #F4F5FE 100%);
    position: relative;
    overflow: hidden;
    padding: 50px 0;
    margin-bottom: 50px;
}
@media (min-width: 1200px) {
    .top-element {
        padding: 0;
    }
}
.top-element .innerWrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.top-element > .container > .row {
    min-height: 520px;
}

.top-element .title-wrapper {
    margin-bottom: 10px;
}
.top-element .title-wrapper .main-title {
    font-weight: 600;
    color: #242942;
    text-align: center;
}
@media (min-width: 1200px) {
    .top-element .title-wrapper .main-title {
        font-size: 56px;
        line-height: 70px;
        text-align: right;
    }
}
#homepage_search {
    position: relative;
    max-width: 472px;
    width: 100%;
}
.search_wrapper {
    display: flex;
    width: 100%;
    justify-content: center;
    margin-bottom: 26px;
}
@media (min-width: 1200px) {
    .search_wrapper {
        justify-content: start;
    }
}
.search-form {
    height: 60px;
    max-width: 100%;
    position: relative;
    border-radius: 12px;
    border: 1px solid #EBEDF8;
    background: #FFF;
    box-shadow: 0 4px 28px 0 rgba(189, 197, 252, 0.30);
}

.search-form #search {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    border: none;
    line-height: 56px;
    font-size: 16px;
    color: #000;
    text-indent: 12px;
    border-radius: 12px;
}

#search::placeholder {
    /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #7e7e7e;
    opacity: 1; /* Firefox */
}

#search:-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #7e7e7e;
}

#search::-ms-input-placeholder {
    /* Microsoft Edge */
    color: #7e7e7e;
}

.search-form button {
    height: calc(100% - 8px);
    border-radius: 10px;
    background-color: #0decd6;
    border: none;
    color: #000;
    font-size: 20px;
    line-height: 24px;
    width: 110px;
    position: absolute;
    top: 4px;
    left: 4px;
    outline: none;
}
.search-form button:hover .mobile-icon svg * {
    stroke: #fff;
}

.search-form button:hover,
.search-form button:focus {
    background: #443ee1;
    outline: none;
}

.search_terms p {
    font-size: 16px;
    line-height: 24px;
    display: inline-block;
    color: #242942;
}

.search_terms .heading {
    margin-left: 6px;
    font-size: 20px;
    line-height: 32px;
    display: inline-block;
    color: #242942;
    margin-bottom: 20px;
}

.search_terms .search-terms_list {
    display: inline-block;
    padding: 0;
    list-style: none;
}

.search_terms .search-terms_list li {
    display: inline-block;
    border-radius: 10px;
    border: 1px solid #B4B8D4;
    transition: 0.25s ease all;
    margin-left: 8px;
    margin-bottom: 10px;
}

.search_terms .search-terms_list li a {
    padding: 6px 14px;
}

.search_terms .search-terms_list li:hover {
    border-color: #4543ff;
}
.top-element .block-content {
    display: flex;
    width: 100%;
    justify-content: center;
}
.top-element .block-content .contentWrapper {
    display: flex;
    flex-flow: column;
    padding: 0 30px;
    max-width: 802px;
}
@media (min-width: 1200px) {
    .top-element .block-content {
        display: inline-flex;
        width: 45%;
        justify-content: start;
    }
}
.top-element .block-image {
    display: none;
    max-width: 752px;
    width: 55%;
}
@media (min-width: 1200px) {
    .top-element .block-image {
        display: inline-flex;
    }
}
@media (min-width: 1500px) {
    .top-element .block-content {
        width: 40%;
    }
    .top-element .block-image {
        max-width: 852px;
        width: 60%;
    }
}
.top-element .block-image:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: -14px;
    width: 100%;
    height: 100%;
    max-width: 752px;
    max-height: 557px;
    background: url(../img/heroBg.svg) no-repeat left top;
    z-index: 1;
}
.top-element .block-image .side-carousel {
    width: 100%;
}
.side-carousel .carousel_item {
    display: flex;
    align-items: start;
    position: relative;
    overflow: hidden;
}

.top-element .block-image .image-wrapper {
    display: flex;
    height: 639px;
    align-items: start;
    justify-content: end;
}
@media (max-width: 1500px) {
    .top-element .block-image .image-wrapper {
        max-width: 520px;
    }
}
.top-element .block-image .image-wrapper img {
    height: 100%;
    width: auto;
    max-width: 1000%;
}
#main .side-carousel.owl-carousel .owl-nav {
    display: none;
}

.top-element .side-carousel .content-wrapper {
    display: inline-flex;
    flex-flow: column;
    max-width: 285px;
    z-index: 999;
    border-right: solid 1px #707070;
    padding-right: 10px;
    padding-left: 20px;
    position: absolute;
    top: 100px;
    left: 0;
}
.top-element .side-carousel .stars span svg * {
    fill: #D9E03D;
}

.top-element .side-carousel .content-wrapper .title {
    color: #fff;
    font-size: 22px;
    line-height: 24px;
    font-family: Heebo, "Rubik", "sans-serif";
    margin-bottom: 4px;
}

.top-element .side-carousel .content-wrapper .sub_title {
    font-size: 14px;
    line-height: 14.5px;
    color: rgba(255, 255, 255, 0.5);
    margin-bottom: 7px;
}

.top-element .side-carousel .content-wrapper .stars span svg {
    width: 12px;
    height: 12px;
}


@media (max-width: 921px) {
    .top-carousel-img {
        display: none;
    }
    .top-element .block-image,
    .top-element .search_terms,
    .search-form:after,
    .header-sticky .additional-menu li.add_testimony {
        display: none;
    }

    .top-element {
        padding-top: 58px;
        background: rgba(69, 67, 255, 1);
        margin-bottom: 45px;
    }

    .top-element .block-content {
        justify-content: center;
        width: 100%;
        margin-bottom: 10px;
    }
    .top-element .title-wrapper {
        padding: 0;
        text-align: center;
    }

    .top-element .title-wrapper .main-title {
        color: #fff;
        line-height: 36px;
        font-size: 26px;
    }

    .search_wrapper {
        margin-bottom: 0;
        position: static;
        width: 100%;
        padding: 0 15px;
    }

    .search-form {
        border: none;
        height: 40px;
        border-radius: 20px;
        -webkit-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
        -moz-box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
        box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.16);
    }

    .search-form #search {
        background: none;
        text-indent: 17px;
        line-height: 40px;
    }

    .search-form button {
        width: 30px;
        height: 30px;
        border-radius: 100%;
        font-size: 0;
        padding: 0;
        top: 5px;
    }
}

/*end of top-element*/

/*leading-reviews*/

.leading-reviews .owl-carousel .owl-stage-outer {
    padding-top: 50px;
}

.leading-reviews .review_item {
    height: 300px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top right;
    padding: 28px 19px 0 16px;
    border-radius: 5px;
    transition: all 0.5s ease;
    cursor: pointer;
}

.leading-reviews .review_item:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-image: linear-gradient(to bottom, #000000, #000000 24%, rgba(0, 0, 0, 0));
    opacity: 0.59;
    border-radius: 5px;
    transition: all 0.5s ease;
}

.leading-reviews .review_item:hover,
.leading-reviews .review_item:hover:after {
    margin-top: -20px;
}

.leading-reviews .review_item a {
    color: #fff;
    display: block;
    position: relative;
    z-index: 99;
    height: 100%;
}

.leading-reviews .review_item .title-wrapper {
    margin-bottom: 5px;
}

.leading-reviews .review_item .title-wrapper .title {
    font-size: 26px;
    line-height: 28px;
    font-weight: bold;
    margin: 0;
}

.leading-reviews .review_item .desc-wrapper p {
    font-size: 14px;
    line-height: 18px;
}

@media (max-width: 992px) {
    .leading-reviews {
        margin-bottom: 14px;
        max-width: 100%;
        overflow: hidden;
    }
    .leading-reviews .owl-carousel {
        height: 224px;
    }
    .leading-reviews .title-wrapper {
        padding: 0 15px;
    }

    .homepage .page-title-big {
        font-size: 26px;
    }

    .leading-reviews > .container {
        padding: 0;
    }

    .leading-reviews .review_item {
        height: 200px;
    }

    .leading-reviews .review_item .title-wrapper {
        padding-right: 0;
    }

    .leading-reviews .review_item .title-wrapper .title {
        font-size: 18px;
        line-height: 20px;
    }

    .leading-reviews .review_item .desc-wrapper {
        max-height: 46px;
        overflow: hidden;
    }

    .leading-reviews .review_item .desc-wrapper p {
        font-size: 12px;
        line-height: 15px;
    }

    .leading-reviews .owl-carousel.owl-rtl .owl-item {
        margin-left: 15px !important;
    }
}

/*end of leading-reviews*/

/*main_categories*/
.main_categories {
    margin-bottom: 84px;
}

.category-box {
    display: inline-block;
    float: right;
    width: 175px;
    height: 176px;
    border: solid 1px #dedede;
    vertical-align: top;
    padding: 10px 0;
}

.category-box a {
    width: 100%;
}

.category-box:hover {
    border-color: #4543ff;
    background-color: #f5f5ff;
    box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
}

.category-box .icon-wrapper {
    width: 80px;
    margin: 0 auto 27px;
    height: 98px;
    overflow: hidden;
}

.category-box .icon-wrapper img {
    max-height: 80px;
}

.category-box .icon-wrapper .icon {
    width: 50px;
    margin: 0 auto;
}

.category-box.last-category,
.category-box.more_categories.show_more,
.category-box.first-category.hide {
    display: none !important;
}

.category-box.last-category.show {
    display: flex !important;
}

.category-box .category_title .title {
    font-size: 16px;
    line-height: 10px;
    font-weight: 500;
    text-align: center;
    color: #000;
}

.category-box:hover .category_title .title,
.category-box.more_categories.show_more .title {
    color: #4543ff;
}

.more-categories-wrapper {
    display: none;
    width: 100%;
    overflow: hidden;
}

.category-box.more_categories {
    cursor: pointer;
}

.category-box.more_categories svg {
    width: 44px;
}

.category-box .reviews_list {
    display: none;
    padding: 0;
    list-style: none;
    width: 100%;
    height: auto;
    max-height: 170px;
    overflow: hidden;
}

.category-box:hover .reviews_list {
    display: block;
}

.category-box.category-menu:hover > a {
    display: none;
}

.category-box .reviews_list li:after {
    display: none;
}

.category-box .review_item {
    display: block;
    width: 100%;
}

.category-box .review_item a {
    display: block;
    width: 100%;
    padding: 5px 10px;
    font-size: 14px;
    font-weight: 500;
}

.category-box .review_item:hover a {
    background: rgba(69, 67, 255, 0.68);
    color: #fff;
}

@media (max-width: 992px) {
    .category-box {
        width: 50%;
    }

    .category-box .category_title .title {
        font-size: 14px;
        line-height: 16px;
    }
}

/*end of main_categories*/

/*promotion-section*/
.promotion-section {
    padding: 100px 0 84px;
}

.promotion-section .main-title-wrapper {
    margin-bottom: 50px;
}

.circle-wrapper {
    width: 3%;
    display: inline-block;
    vertical-align: top;
}

.circle-wrapper .circle {
    display: inline-block;
    vertical-align: middle;
    width: 15px;
    height: 15px;
    border-radius: 100%;
    border: solid 3px #000;
    background-color: #ffffff;
    margin-left: 14px;
    margin-top: 19px;
}

.promotion-section .main-title {
    display: inline-block;
    vertical-align: top;
    width: 96%;
    margin-bottom: 8px;
}

.promotion-section .sub_title p {
    font-size: 40px;
    line-height: 48px;
    color: #4543e4;
    font-weight: 600;
    font-family: "Heebo", "Rubik", "sans-serif";
    padding-right: 25px;
}

.promotion-section .list-items {
    padding: 0;
    list-style: none;
}

.promotion-section .list-items li {
    display: block;
    width: 100%;
    margin-bottom: 40px;
}

.promotion-section .list-items li p.main-title {
    display: block;
    width: 100%;
    font-size: 20px;
    line-height: 25px;
    font-weight: 600;
    font-family: "Heebo", "Rubik", "sans-serif";
}

.promotion-section .list-items .sub-title {
    font-size: 18px;
    line-height: 19px;
    color: #323232;
}

.promotion-section .list-items li .main-title .icon {
    margin-left: 10px;
}

.promotion-section .image-wrapper {
    margin-top: 54px;
}

.promotion-section .image-wrapper img {
    display: block;
    margin: 0 auto;
}

.search-form {
    transition: 0.5s;
}
#homepage_search .form-alert {
    bottom: -30px;
}

@media (max-width: 992px) {
    .promotion-section {
        padding: 0;
    }

    .promotion-section .main-title {
        width: 93%;
    }

    .circle-wrapper {
        width: 5%;
    }
    .circle-wrapper .circle {
        margin-top: 9px;
        width: 11px;
        height: 11px;
    }

    .homepage .main-title {
        line-height: 34px;
    }

    .promotion-section .sub_title p {
        font-size: 26px;
        line-height: 34px;
    }

    .promotion-section .main-title-wrapper {
        margin-bottom: 47px;
    }

    .promotion-section .list-items li p.main-title {
        font-size: 15px;
        line-height: 17px;
    }

    .promotion-section .list-items .sub-title {
        font-size: 15px;
        line-height: 17px;
    }

    .promotion-section .mobile-image-wrapper {
        margin-bottom: 38px;
    }

    .promotion-section .list-items li .main-title .icon {
        margin-left: 1px;
    }

    .promotion-section .list-items li .main-title .icon svg {
        width: 22px;
    }
}

/*end of promotion-section*/

/*reviews_comparisons_links*/
.reviews_comparisons_links > div:nth-child(1) .article-title-only,
.reviews_comparisons_links > div:nth-child(2) .article-title-only,
.reviews_comparisons_links > div:nth-child(3) .article-title-only {
    border-top: solid 1px #d2d2d2;
}

.reviews_comparisons_links .title-wrapper {
    margin-bottom: 43px;
}

.reviews_comparisons_links {
    margin-bottom: 88px;
}

/*end of reviews_comparisons_links*/

/*blog_item*/
.blog-section {
    margin-bottom: 60px;
    overflow: hidden;
}

.blog-logo {
    display: block;
    width: 100%;
    text-align: center;
    margin-bottom: 26px;
}
.blog-logo:before {
    content: "";
    display: block;
    width: 100%;
    max-width: 1400px;
    height: 1px;
    position: absolute;
    top: 18px;
    right: 0;
    left: 0;
    bottom: auto;
    margin: auto;
    background: #dddde2;
    z-index: 0;
}
.blog-logo .image_wrapper {
    max-width: 152px;
    margin: 0 auto;
    background: #fff;
    padding: 0 55px;
    position: relative;
    z-index: 1;
    box-sizing: content-box;
}
.blog-section > .container > .row.grid > div {
    padding: 0 2px;
}

.blog-section .small-boxes > div:first-child {
    padding-right: 15px;
    padding-left: 2px;
}

.blog-section .small-boxes > div:last-child {
    padding-left: 15px;
    padding-right: 2px;
}

.blog-section .grid {
    padding: 0 15px;
}

.blog-section .title-wrapper {
    margin-bottom: 41px;
    text-align: center;
}
.blog-section .title-wrapper .main-title {
    margin-bottom: 3px;
}
.blog-section .title-wrapper .desc {
    max-width: 660px;
    margin: 0 auto;
}
.blog-section .title-wrapper .desc p {
    font-size: 18px;
    line-height: 24px;
}
.blog-section .go_to_blog {
    display: block;
    font-size: 18px;
    line-height: 22px;
    font-weight: 500;
    color: #4543ff;
    text-decoration: underline;
    margin-top: 10px;
}
.blog-section .go_to_blog:hover {
    font-weight: 700;
}
.blog_item {
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right top;
    height: 310px;
    margin-bottom: 3px;
    background-size: auto 100%;
    background-position: 50%;
    transition: 0.45s ease all;
}

.blog_item:hover {
    background-size: auto 110%;
}

.blog_item:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.44);
}

.blog_item.pos_0 {
    height: 626px;
}

.blog_item.pos_1 {
    height: 313px;
}

.blog_item .content-wrapper {
    position: relative;
    z-index: 99;
    padding: 0 33px 38px;
}

.blog_item.pos_0 .content-wrapper {
    padding: 0 33px 92px;
}

.blog_item .content-wrapper .tag_item {
    width: 105px;
    height: 30px;
    border-radius: 4px;
    background-color: rgba(13, 236, 214, 0.9);
    margin-bottom: 11px;
}

.content-wrapper {
    position: relative;
    z-index: 99;
}

.blog_item.pos_2 .content-wrapper,
.blog_item.pos_3 .content-wrapper {
    padding-bottom: 44px;
}

.blog_item .content-wrapper .tag_item a {
    display: block;
    width: 100%;
    height: 100%;
    line-height: 30px;
    text-align: center;
    color: #fff;
    font-size: 14px;
}

.article_title p {
    color: #fff;
    font-size: 30px;
    line-height: 30px;
}

.blog_item.pos_2 .article_title p,
.blog_item.pos_3 .article_title p {
    font-size: 20px;
    line-height: 25px;
}

/*end of blog_item*/

/*homepage-post-element*/
.homepage-post-element {
    padding: 59px 0 48px;
    background: #232841;
}

.homepage-post-element .post_title {
    border-bottom: 1px solid #fff;
    margin-bottom: 24px;
}

.homepage-post-element .post_title .title {
    display: inline-block;
    font-size: 30px;
    line-height: 48px;
    margin: 0;
    color: #fff;
}

.homepage-post-element .post_content p {
    font-size: 18px;
    line-height: 24px;
    color: #fff;
}

@media (max-width: 992px) {
    .related-testimonials .circle {
        margin-left: 10px;
    }

    .homepage-post-element .post_title .title {
        font-size: 20px;
    }

    .blog_item.pos_0 {
        height: 300px;
    }
}

/*end of homepage-post-element*/
