:root {
    --main-color: #4142F5;
    --hover-color: #3435E8;
}
@media (min-width: 1400px) {
    .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {
        max-width: 1140px!important;
    }
}
body header > div{
    border-bottom: 1px solid #d9d9d9!important;
}
body header .ct-container{
    margin-top: 0;
}
#header > div > div, header > div{
    background-color: #fff;
}
#header [data-row]{
    box-shadow: none!important;
}
.ct-breadcrumbs span:not(.first-item) a{
    pointer-events: none;
}
body.home .hero-section{
    padding-top: 120px!important;
}
.menu>li>.ct-menu-link{
    color: #29293e!important;
}
#header [data-row]>div{
    min-height: 72px!important;
}
#header [data-column-set="3"]>div, #header [data-column-set="2"]>div{
    background: #fff!important;
}
/*@media (min-width: 769px) {*/
/*    #header [data-column-set="3"]>div, #header [data-column-set="2"]>div{*/
/*        padding-left: 42px;*/
/*        padding-right: 42px;*/
/*    }*/
/*}*/

@media (max-width: 689px) {
    .order-2-mobile{
        order: 2!important;
    }
    .order-1-mobile{
        order: 1!important;
    }
}
#header .ct-cart-item .ct-icon-container svg{
    width: 20px;
    height: 20px;
}

.ct-cart-item .ct-icon-container svg, .ct-header-trigger svg{
    fill: #29293e!important;
}
.hero-block{
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
}
header .menu-item-has-children .sub-menu{
    top: 55px!important;
    left: 20px!important;
    background-color: #fff;
    border-radius: 15px;
}
header .menu-item-has-children svg{
    fill: #000!important;
}
header .menu-item-has-children .sub-menu a{
    color: #000!important;
    padding: 8px 19px;
    transition: .3s;
}
header .menu-item-has-children .sub-menu a:hover{
    color: #3435E8 !important;
}
header .menu-item-has-children a svg{
    fill: #fff;
    width: 12px;
    height: 12px;
}
header .ct-dynamic-count-cart{
    background-color: #3F8A83 !important;
}
body #main h1.stk-block-heading__text{
    font-size: 64px!important;
    line-height: 64px!important;
}
body #main h2.stk-block-heading__text{
    font-size: 40px!important;
    font-weight: 700!important;
    line-height: 40px!important;
}
@media (max-width: 768px) {
    body #main h1.stk-block-heading__text{
        font-size: 40px!important;
        line-height: 40px!important;
    }
    body #main h2.stk-block-heading__text{
        font-size: 32px!important;
        line-height: 34px!important;
    }
}
.hero-block .white-text p{
    color: rgba(255, 255, 255, 0.8);
}
.hero-block .hero-first-block{
    max-width: 500px;
}
.hero-block .hero-second-block{
    display: flex;
    position: relative;
    align-items: center;
    justify-content: center;
    /*height: 100%;*/
    width: calc(100% - 560px);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}
@media (max-width: 991px) {
    .hero-block .hero-second-block{
        width: 100%;
        min-height: 300px;
    }
}
@media (max-width: 689px) {
    .hero-block .hero-second-block{
        order: 1;
    }
    .hero-block .hero-first-block{
        order: 2;
    }
}
.hero-block .background-image{
    position: absolute;
    top: 0;
    z-index: 99;
}
.hero-block .background-image img{
    width: 85%;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    .hero-block .background-image img{
        width: 100%;
    }
}
.hero-block .hero-second-block .animated-image img{
    max-width: 225px;
    animation: bounce-1 3s infinite ease-in-out;
}
@media only screen and (max-width: 991px) {
    .hero-block .background-image img{
        height: 100%;
        width: 100%;
        object-fit: contain;
    }
    .hero-block .background-image, .hero-block .background-image figure{
        height: 100%;
    }
    .hero-block .hero-second-block .animated-image img{
        max-width: 120px;
    }
}
.hero-block .animated-image{
    z-index: 99;
}
.hero-block .wp-block-button .wp-block-button__link:hover, .hero-block .wp-block-button .wp-block-button__link:focus{
    color: #fff !important;
}
@media only screen and (max-width: 689px) {
    .hero-buttons{
        justify-content: center!important;
    }
}
@media only screen and (min-width: 1400px) {
    .hero-logos-wrap{
        position: relative;
    }
}
.hero-logos-wrap{
    position: relative;
}
.hero-logos{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9;
    padding: 40px;
}
body .wp-block-gallery.has-nested-images figure.wp-block-image{
    flex-grow: initial;
}
body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image img{
    border-radius: 20px;
    max-width: 110px!important;
}
body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:first-child{
    width: 100% !important;
    max-width: 100% !important;
}
body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(2),
body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(3),
body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(4){
    width: 25% !important;
}
body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:first-child img{
    width: 210px !important;
    height: 270px!important;
    max-width: unset !important;
}
body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(5){
    position: absolute;
    top: 130px;
    right: 10px;
}
body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(6){
    position: absolute;
    bottom: -90px;
    right: 145px;
}
body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(7){
    position: absolute;
    bottom: -90px;
    right: 10px;
}

@media only screen and (min-width: 1200px) and (max-width: 1400px){
    body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:first-child img{
        width: 200px !important;
        height: 250px!important;
    }
    body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image img{
        max-width: 112px !important;
    }
}
@media only screen and (min-width: 1000px) and (max-width: 1199px){
    body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:first-child img{
        width: 130px !important;
    }
    body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(5){
        top: 50px;
    }
    body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image img{
        max-width: 110px !important;
    }
}
@media only screen and (max-width: 768px){
    body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:first-child img{
        width: 100px !important;
    }
    body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(5){
        top: 60px;
        right: -45px;
    }
    body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image img{
        max-width: 82px !important;
    }
    body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(6){
        position: absolute;
        bottom: -60px;
        right: 60px;
    }
    body .hero-logos .wp-block-gallery.has-nested-images figure.wp-block-image:nth-child(7){
        position: absolute;
        bottom: -60px;
        right: -45px;
    }
}


.content-back{
    background-image: radial-gradient(at 0% 0%, hsla(184, 38%, 92%, 1) 0px, transparent 50%), radial-gradient(at 29% 42%, hsla(178, 39%, 83%, 1) 0px, transparent 50%), radial-gradient(at 55% 0%, hsl(173deg 53.44% 81.17%) 0px, transparent 50%), radial-gradient(at 96% 42%, hsl(184.62deg 100% 98.61%) 0px, transparent 50%), radial-gradient(at 80% 79%, hsl(54deg 100% 91.54%) 0px, transparent 50%), radial-gradient(at 98% 6%, hsla(80, 19%, 97%, 1) 0px, transparent 50%), radial-gradient(at 8% 86%, hsla(195, 24%, 96%, 1) 0px, transparent 50%);
}

#how-to-buy{
    padding-top: 120px;
}
.group-max-width-900{
    max-width: 900px!important;
}
.group-max-width-800{
    max-width: 800px!important;
}
.group-max-width-700{
    max-width: 700px!important;
}
.group-max-width-500{
    max-width: 500px!important;
}
.centered-group{
    margin: 0 auto;
}

/* animation */
@keyframes bounce-1 {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }

    50% {
        transform: translateY(-55px);
        -webkit-transform: translateY(-55px);
        -moz-transform: translateY(-55px);
        -ms-transform: translateY(-55px);
        -o-transform: translateY(-55px)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

.checkmarks-list{
    list-style: none;
    padding: 0;
}
.checkmarks-list li{
    padding-left: 30px;
    position: relative;
    margin-bottom: 10px;
}
@media only screen and (max-width: 689px) {
    .checkmarks-list{
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .checkmarks-list li{
        width: fit-content;
    }
}
.checkmarks-list li:before{
    content: "";
    position: absolute;
    left: 0;
    top: calc(50% - 10px);
    background-image: url("../../images/checkmark.svg");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
}

.colored-text{
    width: max-content;
}
@media only screen and (max-width: 1000px) {
    .stk-block-hero .colored-text{
        margin-left: auto;
        margin-right: auto;
    }
}



/* faq */
.updated-faq summary .stk-column-wrapper{
    margin: 0;
    background-color: transparent;
    box-shadow: none;
    padding-left: 0;
}
.updated-faq .stk-block-accordion__content{
    background-color: transparent !important;
}
.updated-faq .stk-block-accordion__content .stk-column-wrapper{
    margin-top: 0!important;
    box-shadow: none;
    padding: 0;
}
.updated-faq details{
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.updated-faq .wp-block-stackable-icon svg path{
    stroke: var(--main-color)!important;
}


/* footer */
[data-footer*="type-1"] .ct-footer{
    background-color: #2f2f4b!important;
}
footer p{
    font-size: 14px;
}
footer img{
    max-width: 70%;
}
footer a{
    color: #fff!important;
    transition: .3s;
}
footer a:hover{
    color: #3F8A83 !important
}
[data-footer*="type-1"] .ct-footer [data-row*="bottom"] > div{
    border-top: 1px solid;
}
[data-footer*="type-1"] .ct-footer [data-row*="bottom"] a{
    font-weight: 400;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.5) !important;
}

/* product */
.single-product .ct-container-full{
    padding-top: 30px;
}
.single-product .ct-product-divider {
    border-top-color:  #E2E8F2;
}

@media only screen and (max-width: 1000px) {
    .single-product .ct-default-gallery .woocommerce-product-gallery{
        width: 70%;
        margin: 0 auto 40px;
    }
}
@media only screen and (max-width: 576px) {
    .single-product .ct-default-gallery .woocommerce-product-gallery{
        width: 100%;
    }
}
.single-product div.quantity[data-type] input[type=number], .woocommerce-page .ct-woocommerce-cart-form .cart_totals,
.woocommerce-page .woocommerce-cart-form__contents .coupon input, .woocommerce-page .ct-order-review,
.woocommerce-page table.shop_table thead th, .woocommerce-tabs[data-type*=type-1] .tabs{
    /*border-color: rgba(0, 0, 0, 0.25) !important;*/
    border-color: #E2E8F2!important;
}
.woocommerce-page select, .woocommerce-page textarea, .woocommerce-page input:is([type=url],
[type=tel],[type=text],[type=time],[type=date],[type=datetime],[type=datetime-local],[type=email],[type=number],[type=search],[type=password]),
.woocommerce-page fieldset .wc-stripe-elements-field,
.woocommerce-page .ff-inherit-theme-style .ff-el-form-control:not([size]):not([multiple]), th, td{
    /*border-color: rgba(0, 0, 0, 0.25);*/
    border-color: #E2E8F2!important;
}
.woocommerce-page .ct-woocommerce-cart-form .cart_totals, .woocommerce-page .ct-order-review{
    border-radius: 6px;
}
.ct-woocommerce-cart-form .cart_totals .checkout-button,
.woocommerce-checkout-payment .place-order button[type=submit]{
    background-color: #3F8A83;
    color: #fff;
}
.ct-woocommerce-cart-form .cart_totals .checkout-button:hover, .woocommerce-checkout-payment .place-order button[type=submit]:hover{
    filter: brightness(.9) contrast(1.2);
}


body.woocommerce-page .woocommerce-invalid *{
    color: red;
    border-color: red!important;
}
.ct-customer-details .col2-set .col-1, .ct-customer-details .col2-set .col-2{
    width: 100%;
}
.single-product .entry-summary.entry-summary-items{
    display: flex;
    flex-direction: column;
}


/* custom about block */
.about-block ul li img{
    max-width: 24px;
    width: 100%;
}
.about-block ul li .about-icon{
    border-radius: 50%;
    background-color: #eee;
    display: flex;
    align-items: center;
    margin-right: 12px;
    padding: 11px 9px 11px 11px;
}
.about-block ul li .elementor-icon-box-icon{
    max-width: 24px;
    margin-right: 12px;
    display: flex;
    align-items: center;
}
.about-block ul li .elementor-icon-box-icon i{
    font-size: 24px;
    color: #4D5DDB;
    font-weight: bold;
}
.about-block{
    -webkit-box-ordinal-group: 1000;
    -ms-flex-order: 999;
    order: 999;
    margin-top: 24px;
    border: 1px solid #E2E8F2;
    /*border-color: rgba(0, 0, 0, 0.25);*/
    padding: 32px 32px 22px;
    border-radius: 24px;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
@media only screen and (max-width: 575px) {
    .about-block{
        padding: 30px;
    }
}
.about-block ul{
    margin: 0;
    list-style: none;
    display: flex;
    padding: 0;
    flex-wrap: wrap;
    /*flex-direction: column;*/
    width: 100%;
    gap: 12px;
}
.about-block ul li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    margin-bottom: 16px;
    width: calc(50% - 6px);
}
@media only screen and (max-width: 575px) {
    .about-block ul li{
        width: 100%;
    }
}
.about-block .about-block-top{
    color: #141623;
    margin-bottom: 20px;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
    font-weight: bold;
}
.about-block .about-contact a{
    font-size: 16px;
    color: #3E58FF;
}
body .contact-section{
    box-shadow: 0 20px 80px 0 #3f8a8363 !important;
}
.about-block .about-block-top .about-shipping{
    margin-right: 30px;
}
.about-block .about-block-top{
    font-size: 20px;
}
.about-block ul li .about-content-title{
    font-size: 14px;
}
.about-block ul li .about-content-text{
    font-size: 14px;
    color: #000;
    font-weight: 500;
}
@media only screen and (max-width: 575px) {
    .about-block ul li .about-content-text br{
        display: none;
    }
}
.about-block ul li h3{
    font-size: 14px;
    margin: 0;
}

/* RANK MATH ACCORDION */
.rank-math-list{
    display: flex;
    flex-wrap: wrap;
    gap: 10px 20px;
}
.rank-math-answer {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.4s ease, opacity 0.4s ease!important;
}
.rank-math-answer p{
    margin-bottom: 0;
    color: #3F464D;
}

.rank-math-answer.open {
    opacity: 1;
}

.rank-math-question {
    position: relative;
    padding-right: 20px;
    font-size: 18px;
}
h3.rank-math-question{
    color: #1C2228!important;
    margin-bottom: 6px;
}

.rank-math-question::after {
    content: "+";
    position: absolute;
    right: 0;
    transition: transform 0.3s;
}

.rank-math-list-item.open .rank-math-question::after {
    content: "–";
}
.rank-math-list-item{
    cursor: pointer;
    padding: 12px 20px 12px;
    width: calc(50% - 10px);
    height: max-content;
    border-bottom: 1px solid #eee;
}
@media only screen and (max-width: 768px) {
    .rank-math-list-item{
        width: 100%;
    }
}
/*.rank-math-list-item:last-child{*/
/*    margin-bottom: 0;*/
/*}*/


/* new product block */
.product-top-block{
    display: flex;
    align-items: center;
    gap: 48px;
}
@media only screen and (max-width: 768px) {
    .product-top-block{
        flex-wrap: wrap;
    }
}
@media only screen and (max-width: 500px) {
    .product-top-block{
        gap: 25px;
    }
}
.product-thumb img{
    border: 1px solid #eee;
    border-radius: 12px;
    min-width: 165px;
}
.product-info-title{
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 10px;
}
.product-buttons a{
    border-radius: 8px;
    padding: 13px 40px 13px 18px;
    background-color: #3F8A83;
    color: #fff;
    transition: .3s;
    position: relative;
}
.product-buttons a:before{
    content: "";
    position: absolute;
    right: 13px;
    top: calc(50% - 10px);
    width: 20px;
    height: 20px;
    background-image: url("../../images/move-right.svg");
    background-size: contain;
    background-repeat: no-repeat;
    transition: .1s;
}
.product-buttons a:hover{
    color: #fff;
    background-color: #306862;
}
.product-buttons a:hover:before{
    right: 11px;
}
.custom-product-item{
    background-color: #fff;
    margin-bottom: 24px;
    padding: 48px;
    border-radius: 20px;
    transition: .3s;
    box-shadow: 0 5px 25px -2px rgba(0, 0, 0, 0.07);
}
@media only screen and (max-width: 500px) {
    .custom-product-item{
        padding: 35px 20px;
    }
}
.custom-product-item:hover{
    box-shadow: 0 5px 25px -2px rgba(0, 0, 0, 0.27);
}

.hero-logos .wp-block-image img{
    transform: scale(1);
    animation: pulse 2s ease-in-out infinite;
}

.hero-logos .wp-block-image:nth-child(1) img { animation-delay: 0s; }
.hero-logos .wp-block-image:nth-child(2) img { animation-delay: 0.7s; }
.hero-logos .wp-block-image:nth-child(3) img { animation-delay: 1.4s; }
.hero-logos .wp-block-image:nth-child(4) img { animation-delay: 2.1s; }
.hero-logos .wp-block-image:nth-child(5) img{ animation-delay: 2.8s; }
.hero-logos .wp-block-image:nth-child(6) img{ animation-delay: 3.5s; }
.hero-logos .wp-block-image:nth-child(7) img{ animation-delay: 4.2s; }


/* Общая анимация */
@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
        opacity: 1;
    }
}

.woocommerce div.product div.woocommerce-tabs ul.tabs li.active a, .woocommerce div.product div.woocommerce-tabs ul.tabs li a:hover{
    color: #000!important;
}