@keyframes shape1 {
    0% {
        transform: rotate(0deg);
    }
    50% {
        transform: rotate(20deg);
    }
    100% {
        transform: rotate(0deg);
    }
}
@keyframes step_transform {
    0% {
        transform: rotate(0deg);
    }
    30% {
        transform: rotate(1deg);
    }
    60% {
        transform: rotate(-1deg);
    }
    100% {
        transform: rotate(0deg);
    }
}
body::-webkit-scrollbar, .content::-webkit-scrollbar{
    display: none;
}
.px-container-370{
    padding-left: 75px;
    padding-right: 75px;
}
.btn{cursor:pointer !important;}
.scroll_to_top {
    position: fixed;
    right: 30px;
    bottom: 30px;
    display: block;
    width: 30px;
    height: 30px;
    border: 1px solid #e3e3e3;
    border-radius: 3px;
    opacity: 0;
    visibility: hidden;
    background: #F8F8F8 url(../img/to_top.svg) no-repeat center;
    background-size: 70%;
    transition: all 0.15s ease-in-out;
    z-index: 10;
}

.scroll_to_top.active {
    opacity: 0.6;
    visibility: visible;
}

.scroll_to_top.active:hover {
    opacity: 1;
}
.pb-90{padding-bottom:90px;}
.color-white{color:var(--white);}
.bg-white{background-color:var(--white);}
.bg-color1{background-color: #2C2C2C;}
.mt-40{margin-top:40px;}
.mw-440{max-width:440px;}
.mw-420{max-width:420px;}
.mw-250{max-width:250px;}
.mw-330{max-width:330px;}
.mw-content{max-width:max-content;}
.btn--lg{padding: 18px 42px;}
.btn--lg2{padding: 18px 18px;}
.container-px--lg{
    padding-left: 100px;
    padding-right: 100px;
}
.y-center{
    top: 50%;
    transform: translateY(-50%);
}
.bg-grey--300{background-color: var(--grey-300);}
.ico{
    display:flex;
    align-items: center;
    justify-content: center;
}
.ico-15{
    min-width: 15px;
    width: 15px;
    height: 15px;
}
.ico-20{
    min-width: 20px;
    width: 20px;
    height: 20px;
}
.ico-25{
    min-width: 25px;
    width: 25px;
    height: 25px;
}
.ico-28{
    min-width: 28px;
    width: 28px;
    height: 28px;
}
.ico-30{
    min-width: 30px;
    width: 30px;
    height: 30px;
}
.ico-35{
    min-width: 35px;
    width: 35px;
    height: 35px;
}
.ico-40{
    min-width: 40px;
    width: 40px;
    height: 40px;
}
.heading-block{
    display: flex;
    flex-direction: column;
}
.heading{
    font-style: normal;
    font-family: var(--fotnFamily);
}
.heading-3{
    font-size: var(--h3Size);
    line-height: 60px;
}
.heading-2{
    font-size: var(--h2Size);
    line-height: 40px;
}
.heading-1{
    font-size: 40px;
    line-height: 60px;
}

.heading-6{
    font-size: var(--h6Size);
    line-height: 24px;
}
.accordeon{
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-radius: var(--defaultRadius2);
    padding-top: 30px;
    padding-bottom: 30px;
}
.accordeon .accordeon-btn{
    margin-top: -30px;
    padding-top: 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 30px;
    margin-bottom: -30px;
}
.accordeon .accordeon-btn .accordeon-arrow{
    transition: all, 0.3s;
}
.show-accordeon .accordeon-btn .accordeon-arrow{
    transform: rotate(-180deg);
    transition: all, 0.3s;
}
.accordeon > *{
    padding-left: 30px;
    padding-right: 30px;
}
.def-text--1{
    font-size: var(--defaultFontSize);
    line-height: 20px;
}
.def-text--2{
    font-size: var(--defaultFontSize);
    line-height: 18px;
}
.def-text--3{
    font-size: 12px;
    line-height: 16px;
}
.def-text--4{
    font-size: 13px;
    line-height: 18px;
}
.def-text--5{
    font-size: 12px;
    line-height: 16px;
}
.def-text--6{
    font-size: 13px;
    line-height: 24px;
}
.accordeons .accordeon, .accordeons .review-2{
    margin-bottom: 25px;
}

.review{
    display: flex;
    flex-direction: column;
    background-color: var(--black);
    border-radius: 30px;
    color: var(--white);
    font-family: var(--fotnFamily);
    position: relative;
}
.review .review--body{
    display: flex;
    padding-top: 30px;
    padding-bottom: 30px;
    padding-left: 18px;
    padding-right: 27px;
}
.review .review--head{
    display: flex;
    position: absolute;
    width: 100%;
    top: -17.5px;
    padding-left: 28px;
    padding-right: 28px;
}
.review .review-image{
    min-width: 110px;
    z-index: 1;
}
.review .review-image--container{
    display: flex;
    padding-left: 30px;
    margin-left: 10px;
    padding-top: 10px;
    padding-bottom: 10px;
}
.review .after-shape{
    position: relative;
}
.review .after-shape::after{
    pointer-events: none;
    left: 5px;
    top: -3px;
    content: "";
    position: absolute;
    width: 107px;
    height: 99px;
    display: block;
    background: url("../img/icons/shape-review.svg") no-repeat center center / cover;
    transform: rotate(-8deg);
}
.style-pagination{
    position: relative;
    bottom: 0;
}
.swiper-reviews .style-pagination{
    opacity: 0;
}
.style-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active{
    width: 20px;
    background-color: var(--primary-500);
}
.style-pagination .swiper-pagination-bullet{
    width: 10px;
    height: 5px;
    border-radius: 2.5px;
    background-color: #AFAFAF;
    transition: all, 0.3s;
}
.review .review--body--item{
    display: flex;
    padding-bottom: 20px;
    margin-bottom: -20px;
}
.review .review-text{
    font-size: 17px;
    line-height: 24px;
}
.wrapper-image{
    overflow: hidden;
    display: flex;
}
.wrapper-image > img{
    width: 100%;
    height: 100%;
}
.rating{
    display: flex;
    max-width: max-content;
    margin-left: -1px;
    margin-right: -1px;
}
.rating .rating-star{
    display: flex;
    align-items: center;
}
.rating > *{
    padding-left: 1px;
    padding-right: 1px;
}
.rating .rating-input{
    display: none;
}
.form-group .input{
    resize:none;
    transition: all 0.5s ease;
}
.form-group .input::-webkit-scrollbar{display:none;}
.grade-block{
    font-family: var(--fotnFamilyMontserrat);
    min-width: 72px;
    height: 72px;
    width: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.08);
    border-radius: 50%;
    padding: 4px;
    background-color: var(--white);
}
.grade-block .grade-block-container{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    border: 4px solid var(--primary-500);
    border-radius: 50%;
    flex-direction: column;
}
.grade-block .grades-coll{
    font-size: 10px;
    line-height: 12px;
    color: var(--secondary-350);
    font-weight: 600;
}
.grade-block .grade-number{
    font-size: 18px;
    line-height: 22px;
    font-weight: 600;
    color: var(--primary-500);
}

.grade-row{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.grade-row .grade-row--option:not(:last-child){
    margin-right: 15px;
}
.dbl-btns{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}
.dbl-btns-10 .btn:not(:last-child){
    margin-right: 10px;
}

.user-icon{
    width: 45px;
    min-width: 45px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;

    font-weight: 700;
    font-size: 18px;
    line-height: 24px;
    letter-spacing: 0.18px;
    font-family: var(--fotnFamilyMontserrat);
    background-color: var(--primary-500);
    color: var(--white);
    padding: 5px;
    position: relative;
}
.user-icon.user-icon-58{
    width: 58px;
    min-width: 58px;
    height: 58px;
}
.user-icon img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
}
.profile-card{
    display: flex;
    align-items: center;
}
.profile-card .profile-content--item{
    display: flex;
    flex-wrap: wrap;
}
.profile-card .profile-title{
    font-weight: 700;
    font-size: 20px;
    line-height: 24px;
    letter-spacing: 0.2px;
}
.review-2:hover{
    border-color: var(--primary-500);
}
.review-2{
    padding: 30px 40px 20px 40px;
    border: 1px solid transparent;
    transition: all, 0.3s;
}
.review-2 .review-2--body{
    padding-top: 28px;
}
.review-2 .review-2--footer{
    padding-top: 20px;
}

.social-card{
    justify-content: space-between;
}
.social-card > .social-card--item:not(:last-child){
    margin-right: 10px;
}

.flex-block{
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.flex-block *{
    display: flex;
}
.flex-block--56{
    min-width: 56px;
    height: 56px;
    width: 56px;
}
.flex-block--53{
    min-width: 53px;
    height: 53px;
    width: 53px;
}

.image-bunner{
    display: flex;
    justify-content: center;
    overflow: hidden;
    position: relative;
    /*background: url("../img/shapes.svg") no-repeat center center / cover;*/
    max-height: 300px;
}

.image-bunner .bunner{
    position: relative;
    z-index: 1;

}
.image-bunner .dekor{
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
.image-bunner .dekor div{
    display: flex;
    position: absolute;
}


.step-flex{
    display: flex;
    flex-wrap: wrap;
    margin-left: -70px;
    margin-right: -70px;
}
.step-flex .step-flex--item{
    padding-left: 70px;
    padding-right: 70px;
    display: flex;
    flex-direction: column;
}
.step-flex .step-products{
    flex: 0 0 42%;
    max-width: 42%;
}
.step-flex .step-content{
    flex: 0 0 58%;
    max-width: 58%;
}
.promo-section{
    display: flex;
    align-items: center;
}

.global-rating{
    display: flex;
    align-items: center;
    background-color: var(--primary-100);
}
.choice-label .choices-comment__item{
    position: relative;
    transition: all, 0.3s;
}
.choice-label .choices-comment__item::before{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 2;
    background: #FAFCFF;
    margin: 0;
    border-radius: 10px;
    transition: all 0.2s ease;
    display: none;
}
.choice-label .choices-comment__item::after{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    margin: -1px;
    border-radius: inherit;
    background: linear-gradient(45deg, rgb(0, 242, 234), rgb(254, 44, 85));
    display: none;
}
.choice-label .choice-input:checked + .choices-comment__item::after,
.choice-label .choice-input:checked + .choices-comment__item::before{
    opacity: 1;
    display: block;
}

.footer{
    display: flex;
    flex-direction: column;
}
.footer .footer-item{
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}
.footer .footer-item > *:not(:last-child){
    margin-right: 15px;
}
.list-row--columns{
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
    align-items: center;
}
.row--columns-item{
    padding-left: 10px;
    padding-right: 10px;
}
.select-lang{
    font-family: var(--fotnFamily);
}
.select-lang .choices__inner{
    min-height: 48px;
    height: 48px;
    border-radius: 300px;
    font-size: 15px;
    border-color: transparent;
    background-color: #2C2C2C;
    color: var(--white);
    width: 104px;
    min-width: 104px;
    max-width: 104px;

    align-items: center;
    padding: 9px 11px !important;
}
.select-lang .fi-text{
    font-weight: 600;
    letter-spacing: 0.00134253px;
    margin-left: 8px;
}
.select-lang .ico-flag{
    min-width: 30px;
    min-height: 30px;
    border-radius: 300px;
    background-size: cover;
}
.select-lang .choices__list--single{
    padding-right: 0;
    display: flex;
}
.select-lang.is-flipped .choices__inner{
    border-radius: 300px;
}
.select-lang .choices__list--dropdown{
    border-radius: 20px !important;
    background-color: transparent;
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}
.select-lang .choices__item{
    display: flex;
    align-items: center;
}
.select-lang .choices__list--dropdown .choices__list{
    background-color: #2C2C2C;
}
.select-lang .choices__list--dropdown .choices__item{
    padding: 10px !important;
    color: var(--white);
}
.select-lang .choices__list--dropdown .choices__item:hover, .select-lang .choices__list--dropdown .choices__item:focus, 
.select-lang .choices__list--dropdown .choices__item:visited, .select-lang .choices__list--dropdown .choices__item:active{
    color: #2C2C2C;
}
.select-lang .choices__list--dropdown .choices__item.is-highlighted{
    color: #2C2C2C;
}

.container-custom{
    max-width: 1180px;
    padding-left: 15px;
    padding-right: 15px;
}
.header-dash-list-2 li:not(:last-child){
    margin-right: 37px;
}
.header-dash-list-2 li:last-child{
    margin-right: 0;
}
.header-custom .header-dash-body{
    margin-left: -10px;
    margin-right: -10px;
}
.header-custom .header-dash-body > *{
    padding-left: 10px;
    padding-right: 10px;
}

.form{
    display: flex;
    flex-direction: column;
}

.custom-columns{
    display: flex;
    flex-wrap: wrap;
}
.custom-columns-8 > div{
    padding-left: 8px;
    padding-right: 8px;
}
.custom-columns > .custom-col-6{
    flex: 0 0 50%;
    max-width: 50%;
}
.custom-columns > .custom-col-4{
    flex: 0 0 33.3%;
    max-width: 33.3%;
}
.custom-columns > .custom-col-12{
    flex: 0 0 100%;
    max-width: 100%;
}
.custom-columns--50{
    margin-right: -50px;
    margin-left: -50px;
}
.custom-columns--50 > div{
    padding-left: 50px;
    padding-right: 50px;
}

.circle{
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 300px;
}
.circle-25{
    min-width: 25px;
    width: 25px;
    height: 25px;
}
.step-card{
    display: flex;
    flex-direction: column;
    max-width: 310px;
    width: 100%;
    position: relative;
    transition: all, 0.5s;
    z-index: 1;
    border: 1px solid transparent;
    cursor: pointer;
}
.step-card:hover{
    animation: step_transform 0.5s ease;
    border-color: var(--primary-500);
}
.step-card .step--count{
    position: absolute;
    max-width: 103px;
    min-width: 103px;
    display: flex;
    height: 47px;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    line-height: 18px;
    font-weight: 600;
    border-radius: var(--defaultRadius2);
    padding: 10px;
    text-align: center;
}
.step-card .step--count.top-right{
    top: -12px;
    right: -30px;
}
.custom-steps{
    padding-left: 20px;
    padding-right: 50px;
    margin-left: auto;
    margin-right: auto;
    max-width: 650px;
}
.custom-steps .custom-step{
    display: flex;
}
.custom-steps .custom-step .custom-step--path{
    position: relative;
}
.custom-steps .custom-step:not(:last-child) .custom-step--path{
    padding-bottom: 68px;
}
.custom-steps .custom-step:not(:last-child) .custom-step--path::after{
    content: "";
    position: absolute;
    display: flex;
    min-width: 91px;
    height: 75px;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 91px 75px;
}
.custom-steps--even .custom-step:nth-child(odd) .custom-step--path::after{
    right: 0;
    background-image: url("../img/icons/path-1.svg");
}
.custom-steps--even .custom-step:nth-child(even) .custom-step--path::after{
    left: -60px;
    background-image: url("../img/icons/path-2.svg");
}
.custom-steps--even .custom-step:nth-child(even){
    justify-content: flex-end;
}

.social-card--30{
    padding:30px;
}

.row-50-on-col{
    margin-left: -50px;
    margin-right: -50px;
}
.row-50-on-col > div{
    padding-left: 50px;
    padding-right: 50px;
}
.w-full--custom{
    width: 100% !important;
}
.align-items-start{
    align-items: flex-start !important;
}

.list-rows{
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
}
.list-rows .list-row--columns{
    padding-left: 10px;
    padding-right: 10px;
}

.user-name-30x30{
    overflow: hidden;
    position: relative;
}
.user-name-30x30 img{
    width: 100%;
    height: 100%;
}
.input-disable input{
    pointer-events: none;
}
.input-disable{
    background-color: transparent;
}

.btn-disabled{
    pointer-events: none !important;
    background-color: var(--bg-disable) !important;
    border-color: var(--bg-disable) !important; 
    color: var(--color-disable) !important;
}

.btn-disabled svg{
    color: var( --secondary-700);
}
.input[readonly]{
    color: rgba(0,0,0,0.3);
}
.profile-wrapper{
    border-radius: 26px;
    overflow: hidden;
    border: 1px solid transparent;
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;
    height: 177px;
    background-color: #FFE0E6;
    text-align: center;
    position: relative;

    padding: 15px;
}
.profile-wrapper > *:not(.wrapp-img){
    position: relative;
    z-index: 1;
}
.profile-wrapper .wrapp-img{
    width: 100%;
    height: 100%;
    opacity: 0.5;
    position: absolute;
    border-radius: inherit;
}
.profile-content{
    display: flex;
    flex-direction: column; 
}

.profile-photo{
    display: flex;
    overflow: hidden;
}
.profile-photo--90{
    min-width: 90px;
    max-width: 90px;
    height: 90px;
}
.profile-photo img{
    width: 100%;
    height: 100%;
}
.profile-block{
    display: flex;
    flex-direction:column;
}
.profile-list{
    display: flex;
    flex-wrap: wrap;
    margin-left: -15px;
    margin-right: -15px;
}
.profile-list--item{
    display: flex;
    flex-direction: column;
    min-width: 120px;
    padding-left: 15px;
    padding-right: 15px;
}
.profile-list--bordered .profile-list--item:not(:last-child){
    border-right: 1px solid #E9EFF1;
}
.tabs-custom-2{
    display: flex;
    flex-direction: column;
}
.tabs-custom-2 .tabs-head{
    display: block;
    align-items: center;

    margin-left: -15px;
    margin-right: -15px;
}
.tabs-custom-2 .tabs__list::-webkit-scrollbar{
    display: none;
}
.tabs-custom-2 .tabs__list{
    background-color: var(--white);
    margin-left: -4px;
    margin-right: -4px;
    margin: 0 auto;
    max-width: max-content;
    overflow: auto;
}
.tabs-custom-2 .tab-button{
    min-width: 160px;
    padding: 14px 10px;
    border-radius: 300px;
    font-size: 15px;
    line-height: 24px;
    font-weight: 400;
    border: 1px solid transparent;
    transition: background-color, 0.5s ease;
}
.tabs-custom-2 .tab-button:not(.active){
    border-color: var(--primary-500);
    background-color: var(--white);
    color: var(--primary-500);
}
.tabs-custom-2 .tabs__list > li{
    padding-right: 4px;
    padding-left: 4px;
}

.gallery{
    display: flex;
    flex-wrap: wrap;
    margin-left: -8px;
    margin-right: -8px;
}
.gallery .gallery-item{
    flex: 0 0 33.3%;
    max-width: 33.3%;
    padding-left: 8px;
    padding-right: 8px;
}
.gallery-link{
    overflow: hidden;
    cursor: pointer;
    position: relative;
    transition: all, 0.5s, ease;
    display: flex;
    border-radius: 15px;
}
.gallery{
    margin-top: -15px;
}
.gallery .gallery-item{
    margin-top: 15px;
}
.gallery-link:hover .overlay-gallery{
    display: flex;
}
.gallery-link .overlay-gallery{
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.304524), rgba(0, 0, 0, 0.304524));
    padding: 10px;
    display: none;
}
.gallery-link, .gallery-link img{
    width: 100%;
    aspect-ratio: 1/1;
}
.btn-download{
    height: max-content;
    width: max-content;
    border-radius: 300px;
    background-color: var(--primary-500);
    min-width: 50px;
    min-height: 50px;
    max-width: 50px;
    color: var(--white);
    padding: 5px;
}
.btn-download:hover{
    opacity: 1;
    background-color: var(--primary-600);
}


.downloader-block{
    display: flex;
    flex-direction: column;
    background-color: #FAFCFF;
    border-radius: 6px;
    border: 1px solid #EEEEEE;
    padding-top: 15px;
    padding-bottom: 15px;
    width: 100%;
    overflow: hidden;
}
.downloader-head{
    display: flex;
    flex-direction: column;
    padding-top: 15px;
    margin-top: -15px;
    padding-bottom: 15px;
    margin-bottom: -15px;
    padding-left: 12px;
    padding-right: 12px;
}
.download-body{
    display: flex;
    flex-direction: column;
    min-height: 185px;
    height: 245px;
    overflow: hidden;
    width: 100%;
    margin-top: 15px;
    margin-bottom: -15px;
}
.download-footer{
    margin-top: 15px;
    padding: 25px;
    margin-bottom: -15px;
}
.download-poster{
    width: 100%;
    height: 100%;
    max-height: 100%;
    min-height: 100%;
}
.user-wrappgradient{
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    border-radius: 300px;
}
.user-wrappgradient .user-icon{
    width: 100%;
    height: 100%;
    min-height: 100%;
    padding: 0;
    min-width: 100%;
    background-color: transparent;
}
.user-wrappgradient-30{
    min-width: 30px;
    min-height: 30px;
    height: 30px;
    width: 30px;
}

.content{
    position: relative;
    overflow-y: auto;
    overflow-x: hidden;
}
.block-downlod{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    max-width: 390px;
    padding-left: 30px;
    padding-right: 30px;
}

.custom-2.downloader-block{
    padding-top: 0;
    background-color: transparent;
    border: 1px solid transparent;
}
.custom-2.downloader-block .download-footer{
    margin-top: 0;
    padding-top: 0;
}

.custom-2 .download-body{
    margin-bottom: 25px;
    margin-top: 0;
    border-radius: 6px;
    height: auto;
    min-height: auto;
    max-height: 350px;
}


.fake-post {
    border: 1.385537px solid rgba(234,236,241, 1);
    background-color: rgba(255,255,255, 1);
}

.fake-post__image {
    max-height: 470px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.file--disaable{
    background-color: var(--grey-300);
    border-color: var(--grey-300);
    pointer-events: none;
    color: var(--primary-500);
}


.checker-btn-secondary .btn{
    background-color: var(--primary-100);
    color: var(--black);
}
.checker .btn:hover{
    opacity: 1;
}
.checker input:checked + .btn{
    background-color: var(--black);
    color: var(--white);
}
.switch_custom2{
    height: 32px;
    width: 52px;
    min-width: 52px;
}
.switch_custom2 .switch__slider{
    background-color: #8F9BB3;
    height: 100%;
    width: 100%;
}
.switch_custom2 .switch__slider::after{
    width: 28px;
    height: 28px;
    border-radius: 300px;
    top: 50%;
    left: 2px;
    transform: translateY(-50%);
}
.switch_custom2 input[type="checkbox"]:checked + .switch__slider::after{
    transform: translate(19px, -50%);
}

.color-link{
    color: #2b7bb9 !important;
}

.header-custom{
    position: relative;
}
.header-custom .logo{
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}