:root {
    --header-h: 109px;
    --vh: 1vh;
}

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.login-error-message,
.register-error-message {
    color: #ff3366;
}

body {
    margin: 0;
    padding: 0;
    /* opacity: 0; */
    transition: opacity 0.2s ease;
}


/* hero slider */
.hero-slider {
    position: relative;
    width: 100%;
    height: calc(100vh - var(--total-top-height, 0px));
    overflow: hidden;
}

@supports (height: 100svh) {
    .hero-slider {
        /*height: calc(95svh - var(--total-top-height, 0px));*/
        /*height: calc(100vh - var(--total-top-height, 0px));*/
        height: 100vh;
    }
}

@media (max-width: 550px) {
    .hero-slider {
        height: calc(87vh - var(--header-h));
    }
}

.slide-img-mobile {
    display: none;
}

@media (max-width: 767px) {
    .slide-img-desktop {
        display: none;
    }

    .slide-img-mobile {
        display: block;
    }
}

.hero-slider .slide {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    opacity: 0;
    transition: opacity 1s ease;
}

.hero-slider .slide.active {
    opacity: 1;
}

.hero-slider .navigation {
    position: absolute;
    top: 50%;
    width: 100%;
    padding: 0 2rem;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
    z-index: 10;
}

.hero-slider .nav-button {
    background: none;
    border: none;
    cursor: pointer;
}

.hero-slider .pagination {
    position: absolute;
    bottom: 20px;
    width: 100%;
    display: flex;
    justify-content: center;
    z-index: 10;
}

.hero-slider .pagination .dot {
    width: 10px;
    height: 10px;
    background: rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    cursor: pointer;
}

.hero-slider .pagination .dot.active {
    background: white;
}

.hero-slider .content {
    z-index: 1;
}

@media (max-width: 639px) {
    .hero-slider .navigation {
        display: none;
    }
}

/* end */

* {
    font-family: Montserrat, sans-serif;
}

button,
.button-class {
    font-weight: bold;
}

.load-more-button {
    display: block;
    margin: 0 auto;
    width: 200px;
    height: 50px;
    font-size: 16;
    background: #6d62a424;
    border-radius: 50px;
    color: black;
    margin-top: 20px;
}


body {}

a {
    text-decoration-line: none;
    color: #000000;

}

.block {
    width: 100vw;

}


.header {
    height: 80px;
    display: flex;
    align-items: center;
}

.menu {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 200;
    background: #fff;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .08)
}

.block_padding {
    padding-left: 40px;
    padding-right: 40px;
}

.block_padding_product {
    padding-left: 10%;
    padding-right: 10%;
}

.block_menu {
    display: flex;
    align-items: center;
    width: 100%;
    justify-content: space-between;
}

.menu_list {
    list-style: none;
    margin: 0;
    padding-left: 0;
    display: flex;
    align-items: center;
    gap: 40px;
}

.menu_list a::before {
    transform-origin: 100% 50%;
    transform: scale3d(0, 1, 1);
    transition: transform 0.3s;
    position: absolute;
    width: 100%;
    height: 1px;
    background: currentColor;
    top: 100%;
    left: 0;
    pointer-events: none;
    content: '';
}

.menu_list a:not(.menu_list) {
    position: relative;
    transition: color 200ms ease, font-weight 200ms ease !important;
    display: inline-block;
    width: fit-content;
    text-transform: none;
    font-size: 20px;
}

.menu_list a:hover::before {
    transform-origin: 0 50%;
    transform: scale3d(1, 1, 1);
}

.logo_img {
    width: 200px;
    height: 100%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
    bottom: 0;
    margin: auto;
}

.block_header_menu {
    width: 30%;
}

.heroes {
    height: calc(100vh - 80px);
    position: relative;
}

.button_white {
    color: #000000;
    font-size: 17px;
    line-height: 1.55;
    font-weight: 300;
    letter-spacing: 2.5px;
    background-color: rgb(255 255 255 / 28%);
    backdrop-filter: blur(5px);
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out, border-color 0.2s ease-in-out;
    text-align: center;
    padding: 12px 25px;
    font-family: 'Cormorant SC', serif;
}


.button_white:hover {
    background-color: #000000;
    border: 1px solid #ffffff;
    color: #ffffff;
}

.button_position {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .18s ease, transform .18s ease;

    z-index: 11;
    position: absolute;
    top: auto;
    /* 84%; */
    bottom: 15px;
    left: 50%;
    transform: translateX(-50%) translateY(6px);
    border-radius: 5px;
    white-space: nowrap;
}

@media (min-width: 768px) {
    .button_position {
        top: 50%;
        bottom: auto;
    }
}

.hero-slider .button_position.is-ready {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: translateX(-50%) translateY(0);
}

.product_info_sale_complect {
    font-size: 0.9rem;
    padding: 0.5rem 1rem;
    border-radius: 5px;
    line-height: 1.4;
    color: #787878;
    border: 1px solid #cacaa4;
    background-color: #fffde3;
    margin-bottom: 0.5rem;
    padding-left: 40px;
    position: relative;
}

.product_info_sale_complect:before {
    content: '!';
    position: absolute;
    left: 10px;
    top: 10px;
    width: 20px;
    height: 20px;
    border: 2px solid #f4cd1d;
    color: #f4cd1d;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1rem;

}

.block_products {
    margin-top: 50px;
    position: relative;
}

.block_products_top {
    display: flex;
    justify-content: space-between;
    padding-bottom: 20px;
    align-items: baseline;
}

.block_products_title {
    color: #000000;
    font-size: 16px;
    line-height: 1.55;
    font-weight: 700;
    margin-top: 40px;
}

.block_products_all {
    position: relative;
}

.block_products_all a {
    padding-right: 15px;
}

.block_products_all::after {
    content: "";
    background: url("/wp-content/uploads/2023/08/arrow.svg");
    width: 5px;
    height: 10px;
    right: 0;
    top: 4px;
    position: absolute;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.slider_products {
    overflow: hidden;
}

.slides_products {
    display: flex;
    transition: all 0.3s ease;
    gap: 10px;
}

.slide_inner_products {
    position: relative;
}

.slide_inner_products {
    width: calc((100vw - 90px - 45px) / 4);
    height: calc((1vw + 1vh)* 25);
    position: relative;
}


.slide_inner_products_product {
    width: calc((80vw - 90px) / 4);
    height: calc((1vw + 1vh) * 16);
    position: relative;
}

.prev_products,
.next_products {
    position: absolute;
    bottom: 55%;

    font-size: 2rem;
    background: transparent;
    border: none;
    cursor: pointer;
    border: 2px solid #bdb1b1;
    box-shadow: 2px 2px 10px rgba(2, 0, 0, 0.5);
    border-radius: 50%;
}

.prev_products {
    left: 20px;
}

.next_products {
    right: 30px;
}

.slider_button_img_prev {
    width: 50px;
    rotate: 180deg;
}

.slider_button_img_next {
    width: 50px;
}

.link {
    font-size: 14px;
}

.sub_menu,
.sub_menu1 {
    position: absolute;
    top: 100%;
    z-index: 10;
    width: 100%;
    height: 60px;
    background: #000000;
    display: none;
}

.sub_menu_list,
.sub_menu1_list {
    display: flex;
    list-style: none;
    justify-content: flex-start;
    gap: 30px;
    line-height: 60px;
    font-size: 20px;
}

.sub_menu_list a {
    color: #fff;
}

.sub_menu1_list a {
    color: #fff;
}

.red_text {
    color: #ff4a4a !important;
}

.span_sale {
    color: #ffffff;
    background-color: #ff4a4a;
    padding: 10px;
    border-radius: 20px;
}

.span_sale {
    position: absolute;
    left: 10px;
    top: 10px;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.products_info {
    margin-top: 5px;
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 40px;
}

.products_title {
    font-size: 16px;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 1px;
}

.products_price {
    font-size: 18px;
    font-weight: bold;
    margin-top: -5px;

}

.products_price span {
    color: #bdbdbd;
    text-decoration: line-through;
}

.span_whishlist {
    position: absolute;
    top: 5px;
    right: 5px;
    z-index: 1;
    cursor: pointer;
}

.span_whishlist img {
    width: 42px;

}

.slide_products {
    position: relative;
    width: 100%;
}

.order_sliders {
    display: flex;
    flex-direction: column;
}

.block_photo_main {
    display: none !important;
    height: 500px;
    background-color: #f4f4f4;
    display: flex;
}

.block_photo_main_left {
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    padding-top: 40px;
    padding-bottom: 49px;
}

.block_photo_main_right {
    width: 50%;
    height: 100%;
    display: flex;
    gap: 10px;
}

.block_photo_main_title_text {
    color: #000000;
    font-size: 100px;
    line-height: 80px;
    font-weight: 700;
    background-position: center center;
    border-color: transparent;
    border-style: solid;
}

.block_photo_main_title_slogan {
    color: #000000;
    font-size: 16px;
    line-height: 50px;
    font-weight: 400;
    background-position: center center;
    border-color: transparent;
    border-style: solid;
}

.block_photo_main_title {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.block_photo_main_right img {
    width: 100%;
    object-fit: cover;
}

.block_photo_main_right img:nth-child(0) {
    object-position: center 20%;
}

.block_photo_main_right img:nth-child(1) {
    object-position: center 40%;
}

.block_photo_main_right img:nth-child(2) {
    object-position: center 60%;
}

.menu_list_footer {
    list-style: none;
    margin: 0;
    padding-left: 0;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 10px;
}

.block_header_menu_footer {
    width: calc(25% - (20px - (20px / 4)));
    display: flex;
    flex-direction: column;
    column-gap: 20px;
    align-items: center;
}

.footer_block {
    display: flex;
    align-items: flex-start;
    background: #2B2730;
    color: #fff;
    margin-top: 60px;
    padding: 40px 0;
    flex-wrap: wrap;
    gap: 20px;
}

.footer_block_second {
    display: flex;
    height: 60px;
    align-items: flex-end;
    box-shadow: 0 2px 5px #00000050;
    justify-content: space-between;
    padding-bottom: 15px;
}

.block_header_menu_title {
    color: #fff;
    font-size: 16px;
    line-height: 1.55;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 10px;
}

.menu_list_footer a,
.menu_list_footer li {
    line-height: 1.5;
    color: #ccc;
    text-decoration: none;
}

.menu_list_footer a:hover {
    color: #fff;
    text-decoration: underline;
}

.block_header_menu_second_title {
    color: #000000;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 400;
    opacity: 0.5;
    width: 100%;
}

.block_header_menu_second {
    width: 25%;
    text-align: center;
    margin-left: -10px;
}

.main_content_post {
    width: 560px;
}

.main_content_title {
    color: #000000;
    font-size: 22px;
    line-height: 4;
    font-weight: 500;
    text-transform: none;
    text-align: left;
    padding-top: 40px;

}

.chat_fixed {
    position: fixed;
    bottom: 70px;
    right: 10px;
    width: 60px;
    border: 2px solid;
    height: 60px;
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #fff;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    z-index: 10;

}

.chat_fixed:hover {
    box-shadow: 0 0 20px 0 rgba(0, 0, 0, .5);

}

.chat_fixed_ico {
    position: fixed;
    bottom: 140px;
    right: 10px;
    width: 60px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    transition: all 0.2s ease-in-out;
    z-index: 9;

}

.chat_fixed_ico:hover {
    filter: drop-shadow(0 0 10px rgba(0, 0, 0, .5));
}

.chat_fixed_ico img {
    width: 60px;
}

.chat_fixed_second_ico {
    position: absolute;
}

.chat_fixed_first_ico {
    position: absolute;
}

@keyframes zoomIn {
    from {
        transform: scale(0.5);
        opacity: 0;
    }

    to {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes zoomOut {
    from {
        transform: scale(1);
        opacity: 1;
    }

    to {
        transform: scale(0.5);
        opacity: 0;
    }
}

.zoom-in {
    animation: zoomIn 0.5s forwards;
}

.zoom-out {
    animation: zoomOut 0.5s forwards;
}



.chat_fixed_ico {
    transition: transform 0.5s;
    transform: translateY(0);
}

.moveDown {
    transform: translateY(120%);
}

.shop_header_title {
    margin-top: 60px;
}

.shop_header_title {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.woocommerce-breadcrumb {
    color: #000000;
    font-size: 14px;
    line-height: 1.55;
    font-weight: 400;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.shop_header_page_title {
    color: #000000;
    font-size: 50px;
    line-height: 0.7;
    font-weight: 700;
    text-transform: none;
    margin-top: 20px;
}

.shop_header_title.term-description {
    color: #000000;
    font-size: 16px;
    line-height: 1.55;
    font-weight: 400;
}

.term-description {
    margin-top: 50px;
    /* Отступ сверху */
    margin-bottom: 20px;
    /* Отступ снизу */
    padding-top: 30px;
    margin-bottom: 20px;
    font-size: 12px;
    /* Размер шрифта */
    line-height: 1.6;
    /* Межстрочный интервал */
    margin-left: 20px;
    border-top: 1px solid #ddd;
    /* Полоска сверху */

}

.products-container {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: 20px;
}

@media (min-width: 1600px) {
    .products-container {
        grid-template-columns: repeat(auto-fill, minmax(17vw, 1fr));
    }
}

.product-item {}



.product-item li {
    list-style: none;
    position: relative;
}

.product-item img {
    max-width: 100%;
    width: 100%;
    height: calc((1vw + 1vh) * 22);
    object-fit: cover;
    border-radius: 3px;
}

.onsale {
    color: #ffffff;
    background-color: #ff4a4a;
    padding: 2px;
    border-radius: 10px;
    margin-left: 1px;
    width: 50px;
}

.sale_block {
    position: absolute;
    left: 2px;
    top: 5px;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.pershij_znachok {
    padding: 5px 6px;
    border-radius: 20px;
    font-size: 10px;
    font-weight: bold;
    width: fit-content;
}

.drugiy_znachok {
    padding: 5px 6px;
    border-radius: 20px;
    font-size: 10px;
    font-weight: bold;
    width: fit-content;
}

.product-item .woocommerce-loop-product__title {
    padding-top: 15px;
}

.product-item .price {
    padding-top: 15px;
}

.second_image {
    display: none;
}

.slide_products .second_image_wait_text {
    display: none;
}

@media (min-width: 640px) {
    .slide_products:hover .first_image {
        display: none;
    }

    /* .slide_products:hover .product_no_stock {
        display: none;
    } */

    .slide_products:hover .second_image {
        display: block;
    }

    .slide_products:hover .second_image_wait_text {
        display: flex;
    }
}

.table_size {
    width: 400px;
    border-collapse: collapse;
    border-spacing: 0;
}

.table_size td {
    border: 1px solid #eee;
    padding: 10px;
}

.table_size td:not(:first-child) {
    text-align: center;
}

.custom-login {
    padding-top: 60px;
    text-align: center;
    white-space: nowrap;
    font-size: 22px;
}



.faq-heading {
    font-size: 24px;
    color: #333;
    text-align: center;
    margin-top: 20px;
}

.custom-accordion {
    margin-bottom: 20px;
    border: 1px solid #ddd;
    border-radius: 5px;
    overflow: hidden;
    width: 90%;
    margin: 30px auto;
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.1);
}

.accordion-title {
    background-color: #f4f4f4;
    padding: 10px;
    cursor: pointer;
    user-select: none;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
}

.accordion-title-text {
    max-width: calc(100% - 35px);
    width: 100%;
    font-weight: 400;
}

.accordion-title-icon {
    max-width: 30px;
    width: 100%;
    display: flex;
    align-items: center;
    margin-right: -10px;
}

.accordion-title-icon img {
    transform: rotate(0deg);
    transition: transform 0.3s ease-in-out;
}

.open-icon img {
    transform: rotate(180deg);
}

.closed-icon img {
    transform: rotate(0deg);
    /* Добавлен стиль для начальной позиции */
    width: 30px;
}

.arrow-icon1 {
    width: 40px;
    height: 40px;

}

.open-icon,
.closed-icon {
    margin-right: -10px;
}

.custom-container {
    padding: 10px;
    background-color: #fff;
}

.boxed-container {
    max-width: 600px;

}

.custom-container-inner {
    padding: 15px;
}

.tiktok_icon {
    display: flex;
    flex-direction: column;
    /* Отображаем дочерние элементы в столбце */
    align-items: center;
    background-color: #2B2730;
    height: 200px;
    margin-left: 10px;
    margin-right: 10px;
    border-radius: 5px;
    justify-content: center;
    margin-bottom: 40px;
}

.tiktok_icon img {
    width: 50px;
}

.tiktok_text {
    color: #ffffff;
    text-align: center;

    font-size: 40px;
}

.tiktok_text1 {
    color: #a4a4a4;
    text-align: center;
    font-size: 12px;
}

.tiktok_link {
    text-decoration: none;
    /* Убираем стандартное оформление ссылки */
    color: inherit;
    /* Наследуем цвет текста от родителя */

    margin-bottom: 40px;

}

.nashi_kontakty_grav {
    color: #ffffff;
    margin-bottom: -20px;
    text-align: center;
    font-size: 20px;
}

.kotnakti {
    background-color: #2B2730;
    margin-left: 10px;
    margin-right: 10px;
    border-radius: 5px;
    height: 200px;
    line-height: 2.5;
}

.nashi_kontakty {
    color: #fff;
    margin-left: 10px;
    font-size: 13px;
}

.klikabelno {
    color: #fff;
    text-align: center;
    font-size: 10px;
}

.nashi_kontakty_text {
    margin-top: 30px;
    line-height: 1.3;
    font-size: 13px;
    margin-left: 20px;
    margin-top: 50px;
    text-decoration: underline;
    color: #fff;
}

.custom-message {
    margin-top: 30px;
    margin-bottom: 30px;
    text-align: center;
    font-size: 16px;
    color: #333;
    border: 2px solid #e74c3c;
    padding: 10px;
    border-radius: 5px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}

.referal_table {
    width: 120%;
    border-spacing: 0;
    border-collapse: collapse;
    margin-bottom: 20px;
    margin-right: -10px;
    margin-left: -10px;
}

.referal_table th,
.referal_table td {
    border: 1px solid #ddd;
    padding: 8px;
}

.referal_table th {
    background-color: #f2f2f2;
}

.referal_table tbody tr:nth-child(even) {
    background-color: #f9f9f9;
}

.referal_table tbody tr:hover {
    background-color: #e6f7ff;
}

.product_description_content .colirbilizni {
    font-size: 14px;
}

.product_description_content.visible p {
    margin-bottom: 10px;
    /* Або 15px – як тобі більше подобається */

}

.product_info_line .colirbilizni {
    font-size: 14px;
}


.product_block_left {
    width: 60%;
}

.product_block_right {
    width: 40%;
}

.product-images-slider {
    display: flex;
    gap: 10px;
    position: relative;
}

.main-image_block {
    width: 100%;
    max-height: 1120px;
    overflow: hidden;
    position: relative;
}

.main-image_block .slide-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

@media (max-width: 768px) {
    .main-image_block {
        height: 70vh;
    }

    @supports (height: 1svh) {
        .main-image_block {
            height: 70svh;
        }
    }

    @supports not (height: 1svh) {
        .main-image_block {
            height: calc(var(--vh) * 70);
        }
    }
}

.swiper-button-next,
.swiper-button-prev {
    width: 40px !important;
    min-width: 40px !important;
    height: 40px !important;
}

.swiper-button-next:after,
.swiper-button-prev:after {
    display: none !important;
}

.main-image img {
    display: none;
}

.main-image img:first-child {
    display: block;
}

.slider-arrow.slider-prev {
    width: 60px;
    height: 60px;
    background-color: rgb(255, 255, 255);
    border: none;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    rotate: 180deg;
    text-align: -webkit-center;
    display: flex;
    justify-content: center;
    align-items: center;
    left: 10px;
    z-index: 1;
    border: 2px solid #bdb1b1;
    box-shadow: 2px 2px 10px rgba(2, 0, 0, 0.5);
}

.slider-arrow.slider-next {
    /* width: 60px;
    height: 60px; */
    background-color: rgb(255, 255, 255);
    border: none;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    text-align: -webkit-center;
    display: flex;
    justify-content: center;
    align-items: center;
    right: 10px;
    z-index: 1;
    border: 2px solid #bdb1b1;
    box-shadow: 2px 2px 10px rgba(2, 0, 0, 0.5);
}

.slide-image {
    width: 100%;
    object-fit: cover;
    object-position: top;
}

.thumbnails {
    width: 60px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.thumbnail {
    width: 60px;
    height: 60px;
    object-fit: cover;
    object-position: top;
}

.product_block {
    margin-top: 20px;
    display: flex;
    gap: 20px;
}

.product_title_h1 {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 22px;
    line-height: 1.35;
    margin-bottom: 0;
}

.average-rating.average-rating-after-title {
    margin-top: 0;
}



.product-price {
    font-weight: 400;
    font-size: 20px;
    line-height: 1.35;
    margin-bottom: 10px;
}

.product-price_old {
    color: #bdbdbd;
    text-decoration: line-through;
    font-size: 16px;
}

.product_variations_block {
    position: relative;
    min-width: 150px;
    margin-bottom: 18px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.product-variations {
    width: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 14px;
    border: 1px #000000 solid;
    background: #ffffff;
    border-radius: 0px;
    padding: 2px 30px 2px 10px;
    cursor: pointer;
    line-height: 1.55;
    position: relative;
    height: 30px;
}

.table_size_block {
    margin: 20px 0;

}



.button_block {
    margin-bottom: 18px;
    display: flex;
    gap: 50px;
    width: 100%;
}

button.custom_add_to_cart_button {
    color: #ffffff;
    background-color: #000000;
    height: 50px;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 700;
    cursor: pointer;
    width: 100%;
    border-radius: 5px;
}



.product-benefits {}

.product-benefit {
    margin-bottom: -20px;
    margin-top: 30px;
    border-radius: 5px;
    overflow: hidden;
    border: 1px solid #ddd;
    box-shadow: 0px 5px 10px rgba(0, 0, 0, 0.1);
}

.product-benefit-head {
    display: flex;
    align-items: center;
    padding: 10px;
    background-color: #f4f4f4;
    cursor: pointer;
}

.product-benefit-head-icon {}

.product-benefit-head-title {
    flex-grow: 1;

    text-align: center;
    font-size: 19px;
}

.product-benefit-content {
    padding: 10px;
    display: none;
    font-size: 14;
    line-height: 1.5;
}

.arrow_icon {
    width: 16px;
    /* Регулируйте размер стрелочек по вашему желанию */

}

.rotate-icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 20px;
    cursor: pointer;
    transition: background-color 0.3s ease, transform 0.3s ease;
    margin-top: 14px;
    transform: rotate(-45deg);
}

.rotate-icon-clicked {
    transform: rotate(0deg);
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 20px;
}

.product_description_content.visible {
    max-height: 20000px;
    transition: max-height 0.3s ease, margin-top 0.3s ease;
    margin-bottom: 20px;
    padding-top: 20px;
    font-size: 14px;
}

hr {
    margin: 15px 0;
    border: none;
    border-top: 1px solid #ccc;
}

.product_description:hover .rotate-icon-clicked {
    background-color: #eee;
}

.product_description:hover .rotate-icon {
    background-color: #eee;
}

.product_description {
    cursor: pointer;
    font-weight: 600;
    /*white-space: nowrap;*/
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    letter-spacing: 0.5px;
    line-height: 1.5;
    font-size: 16px;
    /*text-transform: uppercase;*/
    border-top: 1px solid #eee;


}

.product_description_title {
    font-size: 14px;
    cursor: pointer;
    margin-bottom: 40px;
    top: 20px;


}

.product_description_content {
    overflow: hidden;
    margin-top: 20px;
    font-weight: 500;
    text-transform: none;
    max-height: 0;
    /* начальная высота 0 */
    transition: max-height 0.3s ease, margin-top 0.3s ease;

}

.thumbnail.active {
    border: 2px solid rgba(0, 0, 0, .15);
    transition: ease-in-out .3s;
}

.popup-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 9999;
    display: flex;
    justify-content: center;
    align-items: center;
}

.popup-content {
    position: relative;
    display: flex;
    justify-content: center;
    height: 100%;
}

.popup-close {
    position: absolute;
    right: 30px;
    top: 30px;
    cursor: pointer;
    color: #fff;
}

.popup-slider-prev,
.popup-slider-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    font-size: 24px;
    cursor: pointer;
    z-index: 1000;
    color: #fff;
    padding: 10px 15px;
    border-radius: 50%;
}

.popup-slider-prev {
    left: 10px;
}

.popup-slider-next {
    right: 10px;
}

.related_products_slider {
    display: flex;
    overflow: hidden;
    position: relative;
}

.related_slide {
    flex: 0 0 calc(100% / 4);
    transition: transform 0.5s;
}

.related_button_prev,
.related_button_next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #FFF;
    padding: 10px 15px;
    border: none;
    cursor: pointer;
}

.related_button_prev {
    left: 0;
    z-index: 1;
}

.related_button_next {
    right: 0;
    z-index: 1;
}




.product_info_line {
    position: relative;
    padding: 20px;
    border-top: 1px solid #eee;
    cursor: pointer;

}

.product_info_line:last-child {
    border-bottom: 1px solid #eee;
}

.product_info_title {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.product_info_text {
    max-height: 0;
    overflow: hidden;
    transition: opacity 0.3s ease, max-height 0.3s ease;
}

.product_info_text_visible {
    opacity: 1;
    max-height: 2000px;
}

.product_info_kr {
    rotate: 45deg;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 0;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.product_info_title p {
    font-weight: 600;
    white-space: nowrap;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    letter-spacing: 1px;
    line-height: 1.35;
    font-size: 16px;

}

.product_info_kr_rotate {
    transform: rotate(45deg);
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 0;
}



.product_info_line:hover .product_info_kr_rotate {
    background-color: #eee;

}

.product_info_line:hover .product_info_kr {
    background-color: #eee;
}

.block_slider_related {
    margin-top: 70px;
    position: relative;
}

.block_slider_title {
    margin-bottom: 40px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
}

.popup-slide-image {
    height: 99vh;
}

.popup-main-image {
    display: flex;
    align-items: center;
    justify-content: center;
}

.mini_cart_block {
    display: flex;
    gap: 10px;
    align-items: center;
    cursor: pointer;
}

.mini_cart_title {
    color: #000000;
    font-size: 20px;
    line-height: 1.55;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: none;
}

.mini_cart_buble {
    width: 21px;
    height: 21px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #000;
    color: #fff;
    border-radius: 50%;
    font-size: 12px;
}

#mini_cart_buble {
    transition: transform 0.3s ease-in-out;
    transform: scale(1);
}

#mini_cart_buble.animate-bubble {
    transform: scale(1.3);
}

#favorite_buble {
    transition: transform 0.3s ease-in-out;
    transform: scale(1);
}

#favorite_buble.animate-bubble {
    transform: scale(1.3);
}

.modal_add_to_cart {
    display: none;
    position: fixed;
    z-index: 999;
    left: 0;
    top: 0;
    /*    width: 100%;*/
    /*    height: 100%;*/
    overflow: auto;
}

.modal-content {
    background-color: #000;
    padding: 20px;
    width: 400px;
    color: #fff;
    border-radius: 5px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 10px;
    position: fixed;
    bottom: 150px;
    right: -450px;
    transition: transform 0.3s;
    flex-direction: column;
    gap: 20px;
}

.modal_add_to_cart.open .modal-content {
    transform: translateX(-500px);
}

.close-modal {
    color: #aaaaaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
    margin-top: -50px;
    margin-right: -5px;
}

.close-modal img {
    width: 20px;
    height: 20px;
}

.close-modal:hover,
.close-modal:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}

.add_to_cart_text_block {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.add_to_cart_button_block {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
}

.add_to_cart_button_block a {
    color: #fff;
}

.add_to_cart_button_block a {
    color: #fff;
    padding: 10px;
    border: 1px solid #fff;
    border-radius: 3px;
}

.custom_add_to_cart_button[disabled] {
    opacity: 0.5;
    cursor: not-allowed;
}

.cart_popup_cart {
    display: none;
    position: fixed;
    top: 0;
    right: -400px;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 1000;
    transition: right 0.3s ease-in-out;
    overflow-y: auto;
    background-color: rgb(0, 0, 0, 0.2);
}

.favorite_popup_favorite {
    display: none;
    position: fixed;
    top: 0;
    right: -400px;
    width: 100%;
    height: 100%;
    background-color: #fff;
    z-index: 1000;
    transition: right 0.3s ease-in-out;
    overflow-y: auto;
    background-color: rgb(0, 0, 0, 0.2);
}

.cart_popup_cart.open {
    right: 0;
}

.favorite_popup_favorite.open {
    right: 0;
}

.close-cart-popup {
    color: #aaaaaa;
    font-size: 28px;
    font-weight: bold;
    position: absolute;
    top: 40px;
    right: 40px;
    cursor: pointer;
}

.close-cart-popup img {
    width: 30px;
}

.close-favorite-popup {
    color: #aaaaaa;
    font-size: 28px;
    font-weight: bold;
    position: absolute;
    top: 40px;
    right: 40px;
    cursor: pointer;
}

.close-favorite-popup img {
    width: 30px;
}

.cart_popup_block {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 10px 0px;
    width: 600px;
    height: 100%;
    position: fixed;
    right: 0;
    background: #fff;
    padding: 40px;
    min-height: 100vh;
    overflow: auto;
    padding-bottom: 110px;
}

.favorite_popup_block {
    box-shadow: rgba(0, 0, 0, 0.2) 0px 0px 10px 0px;
    width: 600px;
    height: 100%;
    position: fixed;
    right: 0;
    background: #fff;
    padding: 40px;
    min-height: 100vh;
    overflow: auto;
}

.favorite_block {
    display: flex;
    gap: 10px;
    align-items: center;
    cursor: pointer;
}

.favorite_title {
    color: #000000;
    font-size: 20px;
    line-height: 1.55;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: none;
}

.favorite_buble {
    width: 21px;
    height: 21px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #000;
    color: #fff;
    border-radius: 50%;
    font-size: 12px;
}

.block_header_icon {
    display: flex;
    gap: 40px;
}

.add-to-favorites {
    border: none;
    background: none;
}

.add_to_favorites_big_button {
    height: 50px;
    cursor: pointer;
    width: 50px;

}

.add_to_favorites_big_button img {
    width: 48px;
    transition: transform 0.3s;
}

.add-to-favorites img {
    transition: transform 0.3s;
    margin-right: -5;
    margin-top: -3;
}

.add-to-favorites img:hover {
    transform: scale(1.15);
}

.favorite-product img {
    width: 10%;
}

#billing_country_field {
    display: none;
}

.favorite_popup_title {
    padding-top: 40px;
    padding-bottom: 20px;
    font-size: 26px;
    line-height: 1.35;
    border-bottom: 1px solid rgba(0, 0, 0, .2);
    font-weight: 700;
}

.favorites-content {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.favorite_product {
    display: flex;
    gap: 20px;
}

.favorite_product_img {
    width: 70px;
    height: 70px;
}

.favorite_product_img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 1px solid rgba(0, 0, 0, .1);
    border-radius: 7px;
}

.del_favorite {
    width: 20px;
    height: 20px;
    background: none;
    border: 1px solid;
    border-radius: 50%;
    opacity: 0.3;
    cursor: pointer;
    margin-top: 20px;
}

.del_favorite:hover {
    opacity: 1;
}

.del_favorite img {
    width: 10px;
    height: 10px;
}

.favorite_product_buy a {
    background-color: #000000;
    padding-right: 15px;
    border-radius: 0px;
    color: #ffffff;
    cursor: pointer;
    padding: 10px 20px 10px 20px;
    font-size: 18px;
    line-height: 1.55;
}

.favorite_product_price {
    width: 60%;
    display: flex;
    flex-direction: column;
    gap: 7px;
    flex: 1;
}

.favorite_product_price span {
    opacity: .7;
    font-size: 14px;
    font-weight: 400;
}

.cart_products_list {
    margin-top: 40px;
    margin-bottom: 40px;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.cart_content {
    display: flex;
    align-items: center;
    gap: 20px;
}

.cart_product_image {
    width: 70px;
    height: 70px;
}

.cart_product_image img {
    width: 70px;
    height: 70px;
    object-fit: cover;
    border: 1px solid rgba(0, 0, 0, .1);
    border-radius: 7px;
}

.cart_product_details {
    width: 60%;
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.remove_from_cart {
    width: 20px;
    height: 20px;
    background: none;
    border: 1px solid;
    border-radius: 50%;
    opacity: 0.3;
    cursor: pointer;
    margin-left: -15px;

}

.remove_from_cart:hover {
    opacity: 1;
}

.remove_from_cart img {
    width: 10px;
    height: 10px;
}

.cart_product_qty {
    display: flex;
    align-items: center;
}

.decrease_qty {
    width: 20px;
    height: 20px;
    background: none;
    border: none;
    border-radius: 50%;
    opacity: 0.3;
    cursor: pointer;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.decrease_qty:hover {
    opacity: 1;
}

.decrease_qty img {
    width: 20px;
    height: 20px;
}

.increase_qty {
    width: 20px;
    height: 20px;
    background: none;
    border: 1px solid;
    border-radius: 50%;
    opacity: 0.3;
    cursor: pointer;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.increase_qty img {
    width: 20px;
    height: 20px;
}

.increase_qty:hover {
    opacity: 1;
}

.qty_input {
    font-size: 16px;
    line-height: 16px;
    margin: 0 5px;
    color: #000;
    border: 1px solid transparent;
    width: 30px;
    text-align: center;
    pointer-events: none;
}

.product_price {
    display: none;
}

.cart_product_details span {
    opacity: 1;
    font-size: 12px;
    font-weight: 400;
}

.cart_total {
    padding-top: 12px;
    padding-bottom: 30px;
    font-size: 20px;
    text-align: right;
    font-weight: 500;
    color: #000;
    border-top: 1px solid rgba(0, 0, 0, .2);

}

.cart_checkout {
    width: 100%;
    display: flex;
}

.cart_checkout_button {
    font-weight: 500;
    text-transform: none;
    width: 100%;
    background: #000;
    color: #fff;
    padding: 20px;
    text-align: center;
    font-size: 18px;
    border-radius: 5px;
}

.cart_product_sum {
    width: 100px;
    font-size: 17px;
    text-align: center;
    white-space: nowrap;
    /* margin-left: auto; */
    text-align: right;
    flex: 1;
}

.post_block {
    margin-left: 150px;
    margin-right: 150px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.main_content_post {
    width: 100%;
    margin-top: 50px;
    line-height: 1.8;
}

.main_content_post img {
    max-width: 100%;
    height: auto;
}

.shop_table_new thead {
    display: none;
}

.shop_table_new tbody {
    display: none;
}

.shop_table_new tr.order-total {
    display: none;
}

.woocommerce table.shop_table {
    border: none;
}

.shop_shipping_city_list,
.shop_shipping_department_list {
    display: none;
    position: absolute;
    max-height: 330px;
    overflow-y: auto;
    z-index: 1111;
    background: #fff;
    box-shadow: 0 4px 7px 0 gray;
    width: 100%;
}

.city_item,
.department_item {
    padding: 5px;
    cursor: pointer;
}

.city_item:hover,
.department_item:hover {
    background-color: #f0f0f0;
}

.form-row label {
    color: #000000;
    font-weight: 500;
    font-size: 12px;
}

.woocommerce-shipping-totals th {
    color: #000000;
    font-weight: 600;
    font-size: 18px;
}

.input-text {

    height: 56px;
    padding: 0 20px;
    font-size: 16px;
    line-height: 1.33;
    width: 100%;
}

#novaposhta_citySearch {
    border: 2px solid #000000;
    height: 56px;
    padding: 0 20px;
    font-size: 16px;
    line-height: 1.33;
    width: 100%;
}

#novaposhta_departmentSearch {
    border: 2px solid #000000;
    height: 56px;
    padding: 0 20px;
    font-size: 16px;
    line-height: 1.33;
    width: 100%;
}

.shop_shipping {
    position: relative;
}

.nova_poshta_block {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 3px;
    margin: 15px 0 6px;
}

.nova_poshta_block_title {
    color: #000000;
    font-weight: 600;
    font-size: 18px;
}

.ukr_poshta_block_title {
    color: #000000;
    font-weight: 600;
    font-size: 18px;
}

.ukr_poshta_block {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 3px;
    margin: 15px 0 6px;
}

#ukrposhta_postcode {
    border: 2px solid #000000;
    height: 56px;
    padding: 0 20px;
    font-size: 16px;
    line-height: 1.33;
    width: 100%;
}

#ukrposhta_city {
    border: 2px solid #000000;
    height: 56px;
    padding: 0 20px;
    font-size: 16px;
    line-height: 1.33;
    width: 100%;
}

#ukrposhta_adress {
    border: 2px solid #000000;
    height: 56px;
    padding: 0 20px;
    font-size: 16px;
    line-height: 1.33;
    width: 100%;
}

.contact_preference_field {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 3px;
    margin: 15px 0 6px;
}

.contact_preference_field_title {
    color: #000000;
    font-weight: 600;
    font-size: 18px;
}

input[type="radio"] {
    display: none;
}

input[type="radio"]+label {
    position: relative;
    padding-left: 30px;
    cursor: pointer;
    display: inline-block;
    margin: 10px 10px 10px 0px;
    line-height: 1.5;
}

input[type="radio"]+label::before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid #000;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

input[type="radio"]:checked+label::after {
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    background-color: #000;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translate(-50%, -50%);
}

.woocommerce-shipping-totals {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    margin-top: 30px;
}

.woocommerce-checkout-review-order {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 3px;
    margin: 50px 0 6px;

}

.woocommerce-checkout-payment {
    background: none !important;
}

.payment_methods {
    padding: 0 !important;
}

.form-row {
    padding: 0 !important;

}

button#place_order {
    font-weight: 500;
    text-transform: none;
    width: 100%;
    background: #000;
    color: #fff;
    padding: 20px;
    text-align: center;
    font-size: 20px;
    margin-top: 30px;
}

textarea#order_comments {
    padding-top: 10px;
}

.block_header_menu_mobile {
    display: none;
}

.block_header_icon_mobile {
    display: none;
}

.product-filters_mobile {
    display: none;
}

.product-filters_mobile_right_block {
    display: none;
}

.product-filters_mobile_left_block {
    display: none;
}

.all_products_whishlist {
    position: relative;
}

.whishlist_svg {
    height: 40px !important;
    width: 40px !important;
}

.wrap_slides_products_product {
    overflow: hidden;
}

.slides_products_product {
    display: flex;
    transition: transform 0.5s ease;
    gap: 10px;
}

.slide_products_single {
    display: block;
    flex: 0 0 calc(25% - 9px);
    position: relative;
    width: 100%;
}

.slider_button_img_prev,
.slider_button_img_next {
    cursor: pointer;
}

.favorite_product_buy_mobile {
    display: none;
}

.cart_coast_block_desc {
    display: flex;
}

.cart_coast_block_mobile {
    display: none;
}

.archive_products_menu {
    display: flex;
    gap: 20px;
    list-style: none;
}

.archive_products_menu_block {
    display: flex;
    justify-content: center;
    padding: 20px 40px;
}

/* мои правки 
    .attr_block {
    display: flex;
    align-items: center;
}
*/
.attr_block p {
    /*width: 60px;*/
    font-size: 16px;
    margin-bottom: 10px
}

.attr_select {
    box-shadow: 0 2px 10px #00000050;
    background: #ffffff;
    border-radius: 5px;
    font-size: 14px;
    padding: 5px 30px 5px 10px;
    -webkit-appearance: none;
    position: relative;
    min-width: 150px;
    color: #000;
}

.attr_select_block {
    position: relative;
}

.attr_select_block::after {
    content: ' ';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 5px 0 5px;
    border-color: #000 transparent transparent transparent;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
}

.login-register-popup {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    z-index: 1000;
}

.popup_content_login {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #fff;
    padding: 10px;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    border-radius: 5px;
}

.close-popup {
    position: absolute;
    top: 0;
    right: 10px;
    cursor: pointer;
    font-size: 30px;
}

.tabs {
    display: flex;
    margin-bottom: 30px;

}

.tab-link {
    cursor: pointer;
    background-color: #fff;
    margin-right: 10px;
    border: 1px solid #000;
    font-weight: 500;
    text-transform: none;
    padding: 8px;
    font-size: 16px;
    min-width: 160px;
    color: #000;
    margin-top: 30px;
    border-radius: 5px;

}

.tab-link.active {
    background-color: #000;
    color: #fff;
    border: none;
    border-radius: 5px;
}

.tab-content {
    display: none;
}

.tab-content.active {
    display: block;
}

.login-link {
    color: #000000;
    font-size: 15px;
    line-height: 1.55;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: none;
    /* top: 20px; */
    /* position: absolute; */
    font-weight: bold;
    width: 200px;
    white-space: nowrap;
    margin-bottom: 40px;
}

.login-links {
    color: #000000;
    font-size: 20px;
    line-height: 1.55;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: none;
    top: 20px;


}

#loginform {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
}

.login-username {
    display: flex;
    flex-direction: column;
    gap: 5px;
    align-items: left;
    width: 100%;
    font-weight: 500;
    text-transform: none;
    font-size: 18px;
}

.login-username input {
    height: 40px;
    padding: 10px;
    width: 100%;
    font-weight: 500;
    font-size: 16px;
    border-radius: 5px;
}

.login-password {
    display: flex;
    flex-direction: column;
    gap: 5px;
    align-items: left;
    width: 100%;
    font-weight: 500;
    text-transform: none;
    font-size: 18px;
}

.login-password input {
    height: 40px;
    padding: 10px;
    width: 100%;
    font-weight: 500;
    font-size: 16px;
    border-radius: 5px;
}

.login-remember {
    text-transform: none;
    font-size: 16px;
}

.login-remember label {
    display: flex;
    align-items: center;
    gap: 5px;
    margin-left: -170px;
    margin-top: -15px;
}

input#wp-submit {
    font-weight: 500;
    text-transform: none;
    padding: 10px;
    font-size: 16px;
    background-color: #000;
    color: #fff;
    border: none;
    min-width: 160px;
    border-radius: 5px;
}

.custom-register-form {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    width: 100%;
}

.custom-register-form-label {
    display: flex;
    flex-direction: column;
    align-items: left;
    gap: 5px;
    text-transform: none;
    font-size: 18px;
    width: 100%;
}

.custom-register-form-input {
    height: 40px;
    padding: 10px;
    width: 100%;
    font-weight: 500;
    font-size: 16px;
    border-radius: 5px;
}

.custom-register-form-submit {
    font-weight: 500;
    text-transform: none;
    padding: 10px;
    font-size: 16px;
    background-color: #000;
    color: #fff;
    border: none;
    min-width: 160px;
    border-radius: 5px;
}

fieldset {
    border: none;
    margin-top: 40px;
}

.woocommerce-MyAccount-navigation ul {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0;
    padding-top: 50px;
}

.woocommerce-MyAccount-navigation ul li {
    flex-grow: 1;
    font-weight: 500;
    text-transform: none;
    font-size: 17px;
    line-height: 2;
    border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}

.woocommerce-MyAccount-navigation ul li a {
    text-decoration: none;
    color: #333;
    /* Цвет ссылок */
    padding: 10px 15px;
    display: block;
    text-align: center;
}

.woocommerce-MyAccount-navigation ul li a:hover {
    background-color: #f4f4f4;
    /* Цвет фона при наведении на ссылку */
}

/* Опционально: стили для главной ссылки */
.woocommerce-MyAccount-navigation ul li:first-child {
    flex-grow: 0;
}

.woocommerce-MyAccount-navigation ul li:first-child a {
    padding-left: 0;
}


.woocommerce-MyAccount-content {
    margin-top: 0px;
}

.woocommerce table.my_account_orders {
    font-size: 1.1em;
}

.referal_info_block {
    margin: 40px 0;
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.referal_link span {
    font-weight: 600;
    text-transform: none;
    font-size: 20px;
}

.referal_link {
    font-weight: 500;
    text-transform: none;
    font-size: 16px;
}

.referal_link_desc {
    font-weight: 500;
    text-transform: none;
    font-size: 14px;
}

.referal_link_desc1 {
    font-weight: bold;
    text-transform: none;
    font-size: 20px;
    text-align: center;
}

.referal_link_desc2 {
    font-weight: 500;
    text-transform: none;
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 30px;

}

.referal_table_block {
    display: flex;
    justify-content: center;
}

.referal_table {
    border-spacing: 0;
    border-collapse: collapse;
}



.woocommerce-coupon-form label {
    color: #000000;
    font-weight: 600;
    font-size: 14px;
}

.woocommerce-coupon-form {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 30px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
    padding: 24px;
}

.woocommerce-coupon-form button.button {
    padding: 12px 20px !important;
}

.login-link-used {
    color: #000000;
    font-size: 20px;
    line-height: 1.55;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: none;
}

.login-error-message {
    padding: 5px 0;
    text-align: center;
    margin: 5px 0;
}

.login-error-message strong {
    color: red;
}

.cart_shipping {
    max-width: 100%;
    width: 100%;
    height: auto;
    padding: 0;
    margin: 0 0 10px;
    background: transparent;
    border: 0;
    border-radius: 0;
}

.cart_shipping p {
    text-align: center;
    line-height: 25px;
    font-weight: 500;
    text-transform: none;
    font-size: 16px;
    display: flex;
    flex-direction: column;


}

/* Стили для нового дизайна доставки с прогресс-баром */
.shipping-progress-container {
    width: 100%;
}

.shipping-text {
    text-align: center;
    line-height: 20px;
    font-weight: 500;
    font-size: 14px;
    margin-bottom: 10px;
    color: #333;
}

.shipping-progress-bar {
    width: 100%;
    height: 8px;
    background-color: #e0e0e0;
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 10px;
}

.shipping-progress-fill {
    height: 100%;
    background: linear-gradient(90deg, #000000 0%, #4f352af0 30%, #624d39db 60%, #e0e0e0 100%);
    border-radius: 4px;
    transition: width 0.3s ease;
}

.shipping-cta {
    text-align: center;
    font-size: 12px;
    /* font-weight: 600; */
    margin: 0;
    line-height: 16px;
}

.free-shipping-message {
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    /* color: #4caf50; */
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}

/* Адаптивные стили для мобильных устройств */
@media (max-width: 768px) {
    .cart_shipping {
        height: auto;
        padding: 15px 10px;
    }

    .shipping-text {
        font-size: 13px;
        line-height: 18px;
    }

    .shipping-cta {
        font-size: 11px;
        line-height: 14px;
    }

    .free-shipping-message {
        font-size: 14px;
    }
}

/* Специальные стили для popup корзины */
.cart_popup_cart .shipping-progress-container {
    padding: 10px 0;
}

.cart_popup_cart .shipping-text {
    margin-bottom: 8px;
    font-family: 'Work Sans', sans-serif;
    font-weight: 400;
    font-size: 14;
    font-style: oblique;
}

.cart_popup_cart .shipping-progress-bar {
    height: 7px;
    margin-bottom: 8px;
}

.cart_popup_cart .shipping-cta {
    font-size: 11px;
}

.reset_pass_block {
    position: absolute;
    right: 16px;
    top: 285px;
}

mark {
    background: none;
}

.color-swatch {
    width: 35px;
    display: block;
    height: 35px;
    border-radius: 50%;
    border: 3px solid #d2d2d2;
    position: relative;
}

.round_class:before {
    content: "";
    position: absolute;
    --porto-sw-offset: -4px;
    left: var(--porto-sw-offset);
    top: var(--porto-sw-offset);
    right: var(--porto-sw-offset);
    bottom: var(--porto-sw-offset);
    border: 2px solid #222529;
    border-radius: 50%;
    box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.4);
}

.size-swatch {
    /* мои правки
    padding: 0 15px; */
    display: flex;
    height: 30px;
    position: relative;
    align-items: center;
    white-space: nowrap;
    border-radius: 3px;
    width: 45px;
    justify-content: center;
    width: auto;
    min-width: 45px;
    padding-left: 7px;
    padding-right: 7px;
}

.qube_class:before {
    content: "";
    position: absolute;
    --porto-sw-offset: -2px;
    left: var(--porto-sw-offset);
    top: var(--porto-sw-offset);
    right: var(--porto-sw-offset);
    bottom: var(--porto-sw-offset);
    border: 2px solid #00000087;
    border-radius: 12px;
    box-shadow: 1px 1px 2px rgb(0 0 0 / 34%);
}

.new_attr_select_block {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.cart_product_qty_single {
    display: flex;
    align-items: center;
}

.decrease_qty_single {
    width: 20px;
    height: 20px;
    background: none;
    border: 1px;
    border-radius: 50%;
    opacity: 1;
    cursor: pointer;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.decrease_qty_single img {
    width: 20px;
    height: 20px;
}

.increase_qty_single {
    width: 20px;
    height: 20px;
    background: none;
    border: 1px;
    border-radius: 50%;
    opacity: 1;
    cursor: pointer;
    font-size: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.increase_qty_single img {
    width: 20px;
    height: 20px;
}

.qty_input_single {
    font-size: 16px;
    line-height: 16px;
    margin: 0 5px;
    color: #000;
    border: 1px solid transparent;
    width: 30px;
    text-align: center;
    pointer-events: none;
}

.have_nal_block {
    margin: 20px 0;
}

.have_nal_block_plus {
    width: 200px;
    display: flex;
}

.have_nal_block_minus {
    display: flex;
    width: 200px;
}

.have_nal_block_minus_color {
    width: 30px;
    background-color: #e12d2d;
    border-radius: 15px 0px 0px 15px;
}

.have_nal_block_minus_text {
    padding: 4px 15px;
    border-radius: 0px 15px 15px 0px;
    background-color: #f3f3f3;
    width: 100%;
    text-align: center;
    white-space: nowrap;
}

.have_nal_block_plus_color {
    width: 30px;
    background-color: #2fc589;
    border-radius: 15px 0px 0px 15px;
}

.have_nal_block_plus_text {
    padding: 4px 15px;
    border-radius: 0px 15px 15px 0px;
    background-color: #f3f3f3;
    width: 100%;
    text-align: center;
    white-space: nowrap;
}

.payment-title {}

.size-swatch_disable {
    opacity: 0.5;
    cursor: no-drop;
    position: relative;
}

/* .size-swatch_disable::after {
    content: '';
    position: absolute;
    top: 45%;
    left: 0;
    width: 100%;
    border-top: 4px solid red;
    transform: rotate(45deg);
} */

.size-swatch_disable::after {
    --width: 25px;
    --height: 25px;
    content: '';
    position: absolute;
    /* background-image: url("data:image/svg+xml,%3Csvg width='64px' height='64px' viewBox='0 0 32.00 32.00' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:sketch='http://www.bohemiancoding.com/sketch/ns' fill='%23000000' stroke='%23000000'%3E%3Cg id='SVGRepo_bgCarrier' stroke-width='0'%3E%3C/g%3E%3Cg id='SVGRepo_tracerCarrier' stroke-linecap='round' stroke-linejoin='round' stroke='%23CCCCCC' stroke-width='0.32'%3E%3C/g%3E%3Cg id='SVGRepo_iconCarrier'%3E%3Ctitle%3Email%3C/title%3E%3Cdesc%3ECreated with Sketch Beta.%3C/desc%3E%3Cdefs%3E%3C/defs%3E%3Cg id='Page-1' stroke-width='1.088' fill='none' fill-rule='evenodd' sketch:type='MSPage'%3E%3Cg id='Icon-Set-Filled' sketch:type='MSLayerGroup' transform='translate(-414.000000, -261.000000)' fill='%23ffffff'%3E%3Cpath d='M430,275.916 L426.684,273.167 L415.115,285.01 L444.591,285.01 L433.235,273.147 L430,275.916 L430,275.916 Z M434.89,271.89 L445.892,283.329 C445.955,283.107 446,282.877 446,282.634 L446,262.862 L434.89,271.89 L434.89,271.89 Z M414,262.816 L414,282.634 C414,282.877 414.045,283.107 414.108,283.329 L425.147,271.927 L414,262.816 L414,262.816 Z M445,261 L415,261 L430,273.019 L445,261 L445,261 Z' id='mail' sketch:type='MSShapeGroup'%3E%3C/path%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); */
    /* background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg' stroke='%23000000' stroke-width='0.528' transform='rotate(0)matrix(1, 0, 0, 1, 0, 0)'%3E%3Cg id='SVGRepo_bgCarrier' stroke-width='0'%3E%3C/g%3E%3Cg id='SVGRepo_tracerCarrier' stroke-linecap='round' stroke-linejoin='round'%3E%3C/g%3E%3Cg id='SVGRepo_iconCarrier'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.8 4C1.86451 4 1.0468 4.46923 0.544325 5.16792C0.20074 5.64567 0 6.23499 0 6.86667V17.1333C0 18.682 1.21964 20 2.8 20H10.2C10.7523 20 11.2 19.5523 11.2 19C11.2 18.4477 10.7523 18 10.2 18H2.8C2.39214 18 2 17.6466 2 17.1333V7.94766L7.77948 14.3096C8.96986 15.6199 11.0301 15.6199 12.2205 14.3096L18 7.94766V12.1333C18 12.6856 18.4477 13.1333 19 13.1333C19.5523 13.1333 20 12.6856 20 12.1333V6.86667C20 6.235 19.7993 5.64567 19.4557 5.16792C18.9532 4.46923 18.1355 4 17.2 4H2.8ZM9.25983 12.9647L2.9327 6H17.0673L10.7402 12.9647C10.3434 13.4015 9.65662 13.4015 9.25983 12.9647ZM18.2929 21.2929C17.9024 21.6834 17.9024 22.3166 18.2929 22.7071C18.6834 23.0976 19.3166 23.0976 19.7071 22.7071L22.7071 19.7071C23.0976 19.3166 23.0976 18.6834 22.7071 18.2929L19.7071 15.2929C19.3166 14.9024 18.6834 14.9024 18.2929 15.2929C17.9024 15.6834 17.9024 16.3166 18.2929 16.7071L19.5858 18H15C14.4477 18 14 18.4477 14 19C14 19.5523 14.4477 20 15 20H19.5858L18.2929 21.2929Z' fill='%23ffffff'%3E%3C/path%3E%3C/g%3E%3C/svg%3E"); */
    /* background-image: url("data:image/svg+xml,%3Csvg viewBox='-2.88 -2.88 29.76 29.76' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='SVGRepo_bgCarrier' stroke-width='0'%3E%3C/g%3E%3Cg id='SVGRepo_tracerCarrier' stroke-linecap='round' stroke-linejoin='round' stroke='%23000000' stroke-width='2.832'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.8 4C1.86451 4 1.0468 4.46923 0.544325 5.16792C0.20074 5.64567 0 6.23499 0 6.86667V17.1333C0 18.682 1.21964 20 2.8 20H10.2C10.7523 20 11.2 19.5523 11.2 19C11.2 18.4477 10.7523 18 10.2 18H2.8C2.39214 18 2 17.6466 2 17.1333V7.94766L7.77948 14.3096C8.96986 15.6199 11.0301 15.6199 12.2205 14.3096L18 7.94766V12.1333C18 12.6856 18.4477 13.1333 19 13.1333C19.5523 13.1333 20 12.6856 20 12.1333V6.86667C20 6.235 19.7993 5.64567 19.4557 5.16792C18.9532 4.46923 18.1355 4 17.2 4H2.8ZM9.25983 12.9647L2.9327 6H17.0673L10.7402 12.9647C10.3434 13.4015 9.65662 13.4015 9.25983 12.9647ZM18.2929 21.2929C17.9024 21.6834 17.9024 22.3166 18.2929 22.7071C18.6834 23.0976 19.3166 23.0976 19.7071 22.7071L22.7071 19.7071C23.0976 19.3166 23.0976 18.6834 22.7071 18.2929L19.7071 15.2929C19.3166 14.9024 18.6834 14.9024 18.2929 15.2929C17.9024 15.6834 17.9024 16.3166 18.2929 16.7071L19.5858 18H15C14.4477 18 14 18.4477 14 19C14 19.5523 14.4477 20 15 20H19.5858L18.2929 21.2929Z' fill='%23ffffff'%3E%3C/path%3E%3C/g%3E%3Cg id='SVGRepo_iconCarrier'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.8 4C1.86451 4 1.0468 4.46923 0.544325 5.16792C0.20074 5.64567 0 6.23499 0 6.86667V17.1333C0 18.682 1.21964 20 2.8 20H10.2C10.7523 20 11.2 19.5523 11.2 19C11.2 18.4477 10.7523 18 10.2 18H2.8C2.39214 18 2 17.6466 2 17.1333V7.94766L7.77948 14.3096C8.96986 15.6199 11.0301 15.6199 12.2205 14.3096L18 7.94766V12.1333C18 12.6856 18.4477 13.1333 19 13.1333C19.5523 13.1333 20 12.6856 20 12.1333V6.86667C20 6.235 19.7993 5.64567 19.4557 5.16792C18.9532 4.46923 18.1355 4 17.2 4H2.8ZM9.25983 12.9647L2.9327 6H17.0673L10.7402 12.9647C10.3434 13.4015 9.65662 13.4015 9.25983 12.9647ZM18.2929 21.2929C17.9024 21.6834 17.9024 22.3166 18.2929 22.7071C18.6834 23.0976 19.3166 23.0976 19.7071 22.7071L22.7071 19.7071C23.0976 19.3166 23.0976 18.6834 22.7071 18.2929L19.7071 15.2929C19.3166 14.9024 18.6834 14.9024 18.2929 15.2929C17.9024 15.6834 17.9024 16.3166 18.2929 16.7071L19.5858 18H15C14.4477 18 14 18.4477 14 19C14 19.5523 14.4477 20 15 20H19.5858L18.2929 21.2929Z' fill='%23ffffff'%3E%3C/path%3E%3C/g%3E%3C/svg%3E"); */
    background-image: url("data:image/svg+xml,%3Csvg viewBox='-2.64 -2.64 29.28 29.28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='SVGRepo_bgCarrier' stroke-width='0'%3E%3C/g%3E%3Cg id='SVGRepo_tracerCarrier' stroke-linecap='round' stroke-linejoin='round' stroke='%23000000' stroke-width='1.392'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.8 4C1.86451 4 1.0468 4.46923 0.544325 5.16792C0.20074 5.64567 0 6.23499 0 6.86667V17.1333C0 18.682 1.21964 20 2.8 20H10.2C10.7523 20 11.2 19.5523 11.2 19C11.2 18.4477 10.7523 18 10.2 18H2.8C2.39214 18 2 17.6466 2 17.1333V7.94766L7.77948 14.3096C8.96986 15.6199 11.0301 15.6199 12.2205 14.3096L18 7.94766V12.1333C18 12.6856 18.4477 13.1333 19 13.1333C19.5523 13.1333 20 12.6856 20 12.1333V6.86667C20 6.235 19.7993 5.64567 19.4557 5.16792C18.9532 4.46923 18.1355 4 17.2 4H2.8ZM9.25983 12.9647L2.9327 6H17.0673L10.7402 12.9647C10.3434 13.4015 9.65662 13.4015 9.25983 12.9647ZM15 17.8667C15 17.4519 15.3816 17 16 17C16.6184 17 17 17.4519 17 17.8667C17 18.419 17.4477 18.8667 18 18.8667C18.5523 18.8667 19 18.419 19 17.8667C19 17.4519 19.3816 17 20 17C20.6184 17 21 17.4519 21 17.8667C21 18.4983 20.6012 19.2601 19.839 20.0984C19.285 20.7078 18.6199 21.27 18 21.7492C17.3801 21.27 16.715 20.7078 16.161 20.0984C15.3988 19.2601 15 18.4983 15 17.8667ZM16 15C16.7499 15 17.4594 15.271 18 15.73C18.5406 15.271 19.2501 15 20 15C21.5908 15 23 16.2196 23 17.8667C23 19.2681 22.1707 20.5068 21.3189 21.4438C20.4411 22.4092 19.3734 23.2328 18.5915 23.8063C18.2394 24.0646 17.7606 24.0646 17.4085 23.8063C16.6266 23.2328 15.5589 22.4092 14.6811 21.4438C13.8293 20.5068 13 19.2681 13 17.8667C13 16.2196 14.4092 15 16 15Z' fill='%23ffffff'%3E%3C/path%3E%3C/g%3E%3Cg id='SVGRepo_iconCarrier'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M2.8 4C1.86451 4 1.0468 4.46923 0.544325 5.16792C0.20074 5.64567 0 6.23499 0 6.86667V17.1333C0 18.682 1.21964 20 2.8 20H10.2C10.7523 20 11.2 19.5523 11.2 19C11.2 18.4477 10.7523 18 10.2 18H2.8C2.39214 18 2 17.6466 2 17.1333V7.94766L7.77948 14.3096C8.96986 15.6199 11.0301 15.6199 12.2205 14.3096L18 7.94766V12.1333C18 12.6856 18.4477 13.1333 19 13.1333C19.5523 13.1333 20 12.6856 20 12.1333V6.86667C20 6.235 19.7993 5.64567 19.4557 5.16792C18.9532 4.46923 18.1355 4 17.2 4H2.8ZM9.25983 12.9647L2.9327 6H17.0673L10.7402 12.9647C10.3434 13.4015 9.65662 13.4015 9.25983 12.9647ZM15 17.8667C15 17.4519 15.3816 17 16 17C16.6184 17 17 17.4519 17 17.8667C17 18.419 17.4477 18.8667 18 18.8667C18.5523 18.8667 19 18.419 19 17.8667C19 17.4519 19.3816 17 20 17C20.6184 17 21 17.4519 21 17.8667C21 18.4983 20.6012 19.2601 19.839 20.0984C19.285 20.7078 18.6199 21.27 18 21.7492C17.3801 21.27 16.715 20.7078 16.161 20.0984C15.3988 19.2601 15 18.4983 15 17.8667ZM16 15C16.7499 15 17.4594 15.271 18 15.73C18.5406 15.271 19.2501 15 20 15C21.5908 15 23 16.2196 23 17.8667C23 19.2681 22.1707 20.5068 21.3189 21.4438C20.4411 22.4092 19.3734 23.2328 18.5915 23.8063C18.2394 24.0646 17.7606 24.0646 17.4085 23.8063C16.6266 23.2328 15.5589 22.4092 14.6811 21.4438C13.8293 20.5068 13 19.2681 13 17.8667C13 16.2196 14.4092 15 16 15Z' fill='%23ffffff'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
    width: var(--width);
    height: var(--height);
    top: calc(50% - var(--height) / 2);
    left: calc(55% - var(--width) / 2);
    background-size: var(--width) var(--height);
    background-repeat: no-repeat;
    z-index: 1;
}

.icon-container {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: -15px;
    margin-top: -10px;
}

.icon-container img {
    margin-right: -5px;
}

.centered_image2 {
    display: block;
    margin: 10px auto 0;
    width: 150px;
}

.centered_image3,
.centered_image4,
.centered_image5 {
    margin: 0 10px;

}


.active-link {
    margin-top: 30px;
    line-height: 1.3;
    font-size: 16px;
    margin-left: 20px;
    margin-top: 50px;

}

.active-link a {
    text-decoration: underline;
}

.block_header_menu_title11 {
    font-size: 20px;
    margin: 30px;
    margin-left: 20px;
    text-align: center;
    display: block;



}

.woocommerce-checkout {
    padding: 1em;
    margin-top: 30px;
    font-size: 12px;
}

.woocommerce-message {
    border-top-color: #8fae1b;
    margin-top: 30px
}

/*.woocommerce a.button*/
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
    font-size: 100%;
    margin: 0;
    line-height: 1;
    cursor: pointer;
    position: relative;
    text-decoration: none;
    overflow: visible;
    padding: .618em 1em;
    font-weight: 500;
    border-radius: 5px;
    left: auto;
    color: #fff;
    background-color: #000;
    border: 0;
    display: inline-block;
    background-image: none;
    box-shadow: none;
    text-shadow: none;

}

.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {
    display: inline-block;
    margin-left: -176px;
    font-weight: normal;
    font-size: 14;
    margin-top: -5px;
}

.woocommerce-form-login__submit {
    float: left;
    margin-right: 1em;
    margin-top: 40px;
    border-radius: 5px;
    min-width: 160px;
    color: #fff;
    background-color: #000;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
    border: 1px solid #cfc8d8;
    padding: 10px;

    text-align: left;
    border-radius: 5px;
    width: 100%;

}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    outline: 0;
    line-height: normal;
    border-radius: 5px;
}

.woocommerce table.my_account_orders .button {
    white-space: nowrap;
    margin-top: 0;
    margin-bottom: 40px;
    font-size: 75%;
    margin-right: 7px;
    position: relative;
    left: 10;
}

.woocommerce-checkout #payment div.payment_box p:last-child {
    margin-bottom: 0;
    font-size: 13;
}

.woocommerce-checkout #payment div.payment_box {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 1em;
    margin: 1em 0;
    font-size: .92em;
    border-radius: 2px;
    line-height: 1.5;
    background-color: #f2f2f2;
    color: #515151;
    border-radius: 5px;
}

.woocommerce-checkout #payment ul.payment_methods {
    text-align: left;
    padding: 1em;
    margin: 0;
    list-style: none outside;
}

#add_payment_method #payment ul.payment_methods::after,
.woocommerce-cart #payment ul.payment_methods::after,
.woocommerce-checkout #payment ul.payment_methods::after {
    clear: both;
    margin-bottom: 40px;
}

.menu_list_mobile>li:not(:first-child) {
    transform: translateY(15px);
}

/*#menu-header_mobile>li[id^="menu-item-304"]>a,*/
/*#menu-header_mobile>li[id^="menu-item-304"]~li>a {*/
/*    font-size: 16px !important;*/
/* Замените 16px на нужный вам размер */
/*line-height: 0.7 !important;*/
/* Замените 1.2 на нужное значение */
/*    transform: translateY(45px);*/
/*}*/

@media screen and (max-width: 639px) {
    #menu-item-304 {
        margin-top: 20px;
        /* только на мобильных, выше 639px это не работает */
    }
}

.footer_block1 {
    margin-top: 10px;
    background-color: #f5f6f9;
}

.komplekt_znachok {
    padding: 5px 6px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: bold;
    width: fit-content;
}

.product_image_custom {
    position: relative;
}

.product_no_stock {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    background: rgb(255 255 255 / 50%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.product_wait_text {
    font-size: 24px;
}

.half-print-container {
    width: 100%;
    height: 100%;
    border-radius: 50%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
}

.half-print .half-print-image {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 50%;
    height: 100%;
    background-size: cover;
    background-position: center;
    border-top-right-radius: 50%;
    border-bottom-right-radius: 50%;
}

.full-print {
    background-size: cover;
}



/* search block */

.mobile_menu_search {
    width: 20px;
    margin-left: 0.5rem;
    filter: brightness(0);
}

.search-overlay {
    display: none;
    /* Приховуємо спочатку */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.8);
    z-index: 9999;
}

.search-container {
    position: relative;
    width: 90%;
    max-width: 600px;
    margin: 20px auto;
    padding: 10px;
    background: white;
    border-radius: 4px;
    max-height: calc(100% - 40px);
    display: flex;
    flex-direction: column;
}

#close-search {
    position: absolute;
    top: -11px;
    right: -11px;
    background: none;
    border: none;
    font-size: 0;
    cursor: pointer;
    background: #fff;
    padding: 5px;
    border-radius: 50%;
    box-shadow: 0 0 3px 0 rgba(0, 0, 0, 0.3);
}

#close-search img {
    width: 12px;
}

#search-form {
    display: flex;
    gap: 10px;
    align-items: center;
}

#search-input {
    flex: 1;
    padding: 10px;
    font-size: 16px;
}

#search-form button {
    background: none;
    border: none;
    padding: 10px;
    cursor: pointer;
}

#search-results.active {
    margin-top: 10px;
}

.search-result-item {
    margin-bottom: 10px;
}

.search-result-item a {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: black;
}

.search-result-item strong {
    font-weight: 700;
    background: #eaeaea;
}

.search-result-item img {
    width: 50px;
    height: 50px;
    margin-right: 10px;
    object-fit: cover;
    flex: 0 0 auto;
}

.search-result-item {
    font-size: 80%;
}


.product_info_block table {
    width: 100%;
}

.product_info_block table,
.product_info_block table>* {
    border: 0;
    border-collapse: collapse;
    border-color: transparent;
}

.product_info_block table td[colspan] {
    background: #ededed;
}

.product_info_block table td,
.product_info_block table th {
    border-bottom: 1px solid #ededed;
    padding: 0.5rem 0.2rem;
}


.list-review-link {
    font-size: 14px;
    padding: 0 0 0 20px;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 -0.5 25 25' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='SVGRepo_bgCarrier' stroke-width='0'%3E%3C/g%3E%3Cg id='SVGRepo_tracerCarrier' stroke-linecap='round' stroke-linejoin='round'%3E%3C/g%3E%3Cg id='SVGRepo_iconCarrier'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M9.1631 5H15.8381C17.8757 5.01541 19.5151 6.67943 19.5001 8.717V13.23C19.5073 14.2087 19.1254 15.1501 18.4384 15.8472C17.7515 16.5442 16.8158 16.9399 15.8371 16.947H9.1631L5.5001 19V8.717C5.49291 7.73834 5.8748 6.79692 6.56175 6.09984C7.24871 5.40276 8.18444 5.00713 9.1631 5Z' stroke='%233c3f44' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: 0 50%;
    background-size: 15px;
}

.list-review-link:hover {
    text-decoration: underline;
}

.product-list-rating-stars {
    display: flex;
    align-items: flex-end;
    gap: 2px;
    margin-top: 5px;
}

.product-list-rating-stars__count {
    margin-left: 8px;
    font-size: 12px;
}

.product-list-rating-stars .star {
    font-size: 14px;
    color: #ccc;
}

.product-list-rating-stars .filled {
    color: #f1c40f;
}



.stars-container {
    --size-star: 18px;
    position: relative;
    display: inline-block;
}

.stars-container.stars-container--big {
    --size-star: 24px;
}

.stars-container.stars-container--very-big {
    --size-star: 30px;
}

.stars-container.stars-container--small {
    --size-star: 12px;
}

.stars-outer {
    color: #ccc;
    position: relative;
    display: flex;
}

.stars-inner {
    color: #f39c12;
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    white-space: nowrap;
    width: 0;
    display: flex;
}

.stars-outer .star-item,
.stars-inner .star-item {
    display: inline-block;
    width: var(--size-star, 16px);
    text-align: center;
}

.stars-outer .star-item svg,
.stars-inner .star-item svg {
    width: var(--size-star, 16px);
    height: var(--size-star, 16px);
}

h3.product_name {
    margin-bottom: 10px;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 400;
}

/* MEDIA mobile */

@media screen and (max-width: 639px) {

    .average-rating.average-rating-after-title .star {
        font-size: 16px;
    }

    .average-rating.average-rating-after-title {
        font-size: 16px;
        margin-top: 5px;
    }

    .average-rating.average-rating-after-title .rating-count {
        font-size: 14px;
    }

    .slides_products_product {
        padding: 0 20px;
        margin: 0 -20px;
        overflow: auto;
        transform: translateX(0) !important;
    }

    .block_products {
        margin-top: 10px;
    }

    .slider_products {
        margin: 0 -20px;
        padding: 0 20px;
        overflow: auto;
    }

    .block_slider_related {
        margin: 0;
        padding: 0;
        margin-top: 70px;
    }

    .wrap_slides_products_product {
        padding: 0 20px;
    }

    .woocommerce-MyAccount-navigation ul {
        flex-direction: column;
        margin-top: -10px;
    }

    .cart_shipping {
        width: 100%;
        margin-left: 0;
    }

    .cart_shipping p {
        font-size: 14px;
    }

    .cart_shipping p span {
        font-size: 16px;
    }

    .shop_header_lines_block {
        display: none;
    }

    .block_padding {
        padding-left: 16px;
        padding-right: 16px;
        padding-top: 16px;

    }
    .menu_list_footer a, .menu_list_footer li {
        font-size: 14px;
    }
    .block_padding.block_products.block_photo_main {
        padding: 0;
        position: relative;
    }
    .footer_block_second {
        height: auto;
        flex-wrap: wrap;
        row-gap: 8px;
    }
    .block_header_menu_second {
        width: 50%;
        text-align: center;
        margin-left: 0;
    }
    .block_photo_main_left {
        z-index: 1;
        position: absolute;
        padding: 30px 20px;
    }

    .block_photo_main_right {
        width: 100%;
        justify-content: center;
        overflow: hidden;
    }

    .block_photo_main_right::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background-color: rgba(0, 0, 0, 0.5);
    }

    .block_photo_main_title_text {
        color: #ffffff;
        font-size: 40px;
        line-height: 30px;
    }

    .block_photo_main_left {
        width: 100%;
    }

    .block_photo_main_title_slogan {
        color: #ffffff;
        font-size: 16px;
        line-height: 15px;
        font-weight: 500;
    }

    .block_photo_main {
        display: none !important;
        height: 360px;
    }

    .block_photo_main_button {
        padding-bottom: 20px;
    }



    .block_header_menu_footer {
        width: calc(50% - (20px - (20px / 2)));
        align-items: flex-start;
    }

    .menu_list_footer {
        align-items: start;
        gap: 8px;
    }

    .block_header_menu_title {
        font-size: 12px;
    }

    .menu-footer-container {
        font-size: 12px;
    }

    .footer_block {
        padding: 30px 16px;
    }

    .sub_menu,
    .sub_menu1 {
        display: none;
    }

    .block_header_menu {
        display: none;
    }

    .block_header_icon {
        display: none;
    }

    .block_header_menu_mobile {
        display: flex;
        align-items: center;

    }

    .mobile_menu_button {
        height: 40px;
        width: 40px;
    }

    .block_header_icon_mobile {
        display: flex;
        gap: 20px;
        width: 20%;
        justify-content: flex-end;
    }

   
    .favorite_block {
        position: relative;
    }

    .favorite_buble {
        position: absolute;
        width: 13px;
        height: 13px;
        font-size: 9px;
        top: 0;
        right: -6px;
    }

    .mini_cart_block {
        position: relative;
    }

    .mini_cart_buble {
        position: absolute;
        width: 13px;
        height: 13px;
        font-size: 9px;
        top: 0;
        right: -6px;
    }

    .header {
        height: 60px;
    }

    .heroes {
        height: calc(100vh - 60px);
        margin-top: 0px;
        margin-bottom: 40px;
    }

    .mobile_menu_block {
        position: absolute;
        top: 100%;
        left: -100vw;
        width: 83%;
        border-top-right-radius: 30px;
        height: calc(100dvh - 60px);
        background-color: #fff;
        transition: left 0.25s ease-in-out;

    }

    .mobile_menu_block.active {
        left: 0;
        bottom: 0;
        width: 83%;
        z-index: 9999;
        /*border-top-right-radius: 0;*/
        border-top: 1px solid #efefef;
    }

    .mobile_menu_block .mobile_menu_button_close {
        position: absolute;
        top: 15px;
        z-index: 10000;
    }

    .menu-header_mobile-container {
        display: flex;
        justify-content: center;
        /* padding-top: 20px;
        padding-left: 30px;
        padding-bottom: 15px; */
    }


    .login-link {
        /* padding-left: 30px; */
    }

    .login-link-used {
        padding-left: 50px;
    }

    .mobile_menu_block_top_sextion {
        display: flex;
        justify-content: space-between;
    }

    .mobile_menu_block_center_sextion {
        padding-top: 20px;
        padding-left: 25px;
        padding-bottom: 15px;
        overflow: auto;
        height: 100%;
        display: flex;
        flex-direction: column;
        border-top-right-radius: 30px;


    }

    .menu_list_mobile {
        list-style-type: none;
        margin: 0;
        padding: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 20px;
        /* margin: 65px 0 0 0; */
        margin-top: 10px;
        
    }

    .menu_list_mobile>li {
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;

    }

    .menu_list_mobile>li>a {
        text-decoration: none;
        color: #000000;
        font-size: 20px;
        font-weight: 500;
    }

    .menu_list_mobile .sub-menu {
        list-style-type: none;
        margin: 0;
    }

    .menu_list_mobile .sub-menu>li {
        margin: 15px;
    }

    .menu_list_mobile .sub-menu>li>a {
        text-decoration: none;
        font-size: 14px;
    }

    .menu_list_mobile .sub-menu {
        display: none;
    }

    .menu_list_mobile .menu-item-has-children.active>.sub-menu {
        display: block;
        border-bottom: 1px solid rgba(0, 0, 0, .15);
        width: 80%;
    }

    .menu-item-has-children a {
        position: relative;
    }

    img.mobile_menu_button_close {
        position: absolute;
        right: 20px;
        top: 28px;
    }

    .menu_list_mobile .menu-item-has-children>a::after {
        content: '';
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 4px 3px 0;
        position: absolute;
        top: 50%;
        right: -10px;
        -ms-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        border-color: transparent;
        border-top-color: inherit;
        transition: transform 0.3s;
    }

    .menu_list_mobile .menu-item-has-children.active>a::after {
        transform: rotate(180deg);
    }

    .mobile_menu_block_social_sextion {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 15px;
        padding-top: 30px;
    }

    .mobile_menu_instagram img,
    .mobile_menu_telegram img {
        width: 30px;
        margin-top: 60px;
    }

    .mobile_menu_cop {
        display: flex;
        margin-bottom: 80px;
    }

    .block_header_menu_second_title {
        font-size: 10px;

    }

    .slides_products {
        display: flex;
        transition: all 0.3s ease;
        gap: 10px;
        padding: 0 20px;
        overflow: auto;
        margin: 0 -20px;
    }

    .prev_products,
    .next_products {
        display: none;
    }

    /*.prev_products {
        left: 10px;
        padding-top: 40px;
    }*/

    /*.next_products {
        right: 10px;
        padding-top: 40px;
    }*/

    .slide_products {
        position: relative;
        width: 100%;
    }

    .shop_header_page_title {
        font-size: 20px;
        margin-top: 0;
    }

    .products-container {
        justify-content: space-between;
    }

    .products-container {
        justify-content: space-between;
    }

    .filter_ico {
        width: 10px;
    }

    .product-filters_mobile_left p {
        font-size: 14px;
    }

    .block_padding_product {
        padding-left: 0;
        padding-right: 0;
    }

    .product_block {
        flex-direction: column;
    }

    .product_block_left {
        width: 100%;
    }

    .product-images-slider {
        flex-direction: column-reverse;
        overflow: hidden;
    }

    .thumbnails {
        flex-direction: row;
        margin: 0 -10px;
        padding: 0 20px;
        width: auto;
        overflow: auto;
    }

    .color-swatch {
        width: 40px;
        height: 40px;
    }

    .product_block {
        margin-top: 0;
    }

    .product_block_right {
        width: 100%;
        padding: 0 20px;
    }

    .product_title_h1 {
        font-size: 14px;
    }

    .product-price {
        font-size: 24px;

        padding-top: 5px;

    }

    .table_size {
        width: 100%;
    }

    .table_size {
        font-size: 12px;
    }

    .button_block {
        gap: 15px;
        margin-bottom: 40px;
    }




    .product_info_title p {
        font-size: 17px;
    }

    .product_info_line {
        padding: 20px 20px
    }

    .product_info_text_visible {
        padding-top: 20px;
        line-height: 1.4;
    }

    .slide_inner_products {
        width: calc((100vw - 60px) / 1.5);
        height: calc((1vw + 1vh) * 30);
        position: relative;
    }

    .slide_inner_products_product {
        width: calc((100vw - 60px) / 1.5);
        height: calc((1vw + 1vh) * 30);
        position: relative;
    }

    .block_slider_title {
        margin-bottom: 20px;
        padding: 0 20px;
    }

    .favorite_popup_block {
        width: 100%;
    }

    .favorite_popup_title {
        padding-top: 0;
        padding-bottom: 20px;
        font-size: 20px;
        line-height: 1;
    }



    .cart_products_list {
        padding-top: 0;
        padding-bottom: 20px;
        margin: 0;
        gap: 0;
    }

    .cart_products_list>div {
        padding: 0 10px;
        margin-bottom: 10px;
        padding-bottom: 10px;
        border-bottom: 1px solid #f6f5f5;
    }

    .cart_popup_cart .cart_total {
        padding-bottom: 12px;
        padding-right: 10px;
        padding-left: 10px;
    }

    .cart_popup_cart .cart_shipping {
        max-width: 100%;
        width: 100%;
        height: auto;
        padding: 10px 16px;
        margin: 0 0 10px;
        background: #ffffff;
        border: 1px solid #e0e0e0;
        border-radius: 8px;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 6px;
        /* 👈 равномерное расстояние между сообщениями */
    }

    .cart_popup_cart .cart_shipping>.free-shipping-message {
        display: inline-block;
    }

    .cart_popup_cart .cart_checkout {
        padding: 0 10px;
    }

    .cart_products_list>div:last-child {
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: 0;
    }

    .cart_product_details {
        width: auto;
        flex: 1;
        gap: 0;
    }

    .favorite_product_del {
        align-self: baseline;
    }

    .remove_from_cart {
        margin-left: 0;
    }

    .cart_popup_cart {
        /* height: 100dvh;
        max-height: 100dvh; */
        overflow: initial;
    }

    .cart_popup_cart .block_products_ref {
        flex: 1;
        padding: 10px 0;
        overflow: auto;
    }

    .cart_popup_cart .cart_popup_block {
        display: flex;
        flex-direction: column;
        position: initial;
        height: 100%;
        max-height: 100%;
        min-height: auto;
        padding: 20px;
    }


    @supports (height: 100dvh) {
        .cart_popup_cart {
            height: 100dvh;
            max-height: 100dvh;
        }
    }


    .close-favorite-popup img {
        width: 20px;
    }

    .slide_products_single {
        flex: 1;
        margin: 0;
    }

    .favorite_product_buy_desc {
        display: none;
    }

    .favorite_product_buy_mobile {
        display: block;
        padding-top: 15px;

    }

    .favorite_product_price {
        font-size: 12px;
    }

    .favorite_product_buy a {
        padding: 7px 15px 7px 15px;
        font-size: 16px;
        border-radius: 5px;
    }

    .modal-content {
        width: 300px;
    }

    .add_to_cart_button_block a {
        font-size: 12px;
    }

    .close-cart-popup {
        top: 20px;
        right: 20px;
    }

    .cart_popup_block {
        width: 100vw;
        padding: 20px 0;
    }

    .cart_popup_block .favorite_popup_title {
        padding-left: 0;
        padding-right: 20px;
        font-size: 18px;
    }

    .close-cart-popup img {
        width: 20px;
    }

    .cart_coast_block_mobile {
        display: flex;
        margin: 10px 0 0;
    }

    .cart_coast_block_desc {
        display: none;
    }

    .cart_checkout_button {
        padding: 15px;
        font-size: 16px;
    }

    .post_block {
        margin-left: 20px;
        margin-right: 20px;
        margin-top: -50px;
    }

    .col2-set {
        display: flex;
        flex-direction: column;
        margin-left: -10px;
    }

    .col-2 {
        order: 1;
    }

    .col-1 {
        order: 2;
        padding-bottom: 50px;
    }

    textarea#order_comments {
        padding-top: 0;
    }

    .main_content_title {
        padding-bottom: 0;
        text-align: center;
    }

    .sort_order {
        border: 0px #000000 solid;
        color: #000;
        background: none;
        padding-top: 10px;
    }

    .sort_order_mobile_block {
        border: 0px #000000 solid;
        color: #000;
        background: none;
        padding-top: 10px;
        white-space: nowrap;
    }

    .product-variations {
        color: #000;
    }

    .archive_products_menu_block {
        padding: 20px 20px;
    }

    .form-row label {
        font-size: 11px;
    }

    .input-text {
        height: 40px;
        padding: 0 10px;
        font-size: 14px;
        border-radius: 5px;
        width: 100%;
        margin-top: -20px;
    }

    .woocommerce-shipping-totals th {
        font-size: 20px;
    }

    input[type="radio"]+label {
        font-size: 14px;
    }

    button#place_order {
        font-size: 16px;
    }

    .contact_preference_field_title {
        font-size: 14px;
    }

    .cart_content {
        gap: 10px;
    }

    h3.product_name {
        font-weight: 400;
        font-size: 12px;
        line-height: 1.2;
        margin-bottom: 10px;
    }

    p.woocommerce-notice.woocommerce-notice--success.woocommerce-thankyou-order-received {
        padding: 20px 0;
        text-align: center;
    }

    .woocommerce ul.order_details li {
        float: none;
        border-right: none;
        padding-bottom: 10px;
    }

    .woocommerce-customer-details address {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .block_footer_contact_title {
        font-size: 12px;
    }

    .slides_products {
        transform: translateX(0) !important;
    }

    .favorite_popup_block {
        padding: 0;
        padding: 20px 0;
    }

    .favorite_popup_block .favorite_popup_title {
        padding-top: 0;
        padding-bottom: 20px;
        font-size: 20px;
        line-height: 1;
        padding-left: 10px;
        padding-right: 10px;
    }

    .favorite_popup_block .close-favorite-popup {
        top: 20px;
        right: 20px;
    }

    .favorite_popup_block .favorite_product {
        padding: 0 20px;
    }
}


/* filter style */


.shop-wrap-top {
    margin-top: 80px;
    padding: 0 20px;
    padding-bottom: 20px;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}


.shop-wrap {
    display: grid;
    grid-template-columns: 250px 1fr;
    gap: 20px;
    padding: 0 20px;
    margin: 0 auto;
}

.shop-wrap-top__filter-btn {
    display: none;
    width: 100%;
    align-items: center;
    gap: 5px;
    border: 1px solid #d2d2d2;
    cursor: pointer;
    padding: 5px;
    border-radius: 4px;
    justify-content: center;
}

.shop-wrap-top__filter-btn svg {
    width: 14px;
    height: 14px;
}

.shop-wrap-top__filter-btn span {
    line-height: 1;
    font-size: 12px;
}

.shop-wrap-top__order {
    margin-left: auto;
}

.shop-wrap-top__order select {
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 5px;
    border-radius: 4px;
    border: 1px solid #d2d2d2;
    font-size: 12px;
    background: url('data:image/svg+xml;charset=US-ASCII,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 10 6"><polyline points="1 1 5 5 9 1" stroke="%23333" stroke-width="1" fill="none" /></svg>') no-repeat right 10px center;
    background-size: 12px 12px;
    background-color: #fff;
    cursor: pointer;
}

/* Додаткові стилі для iOS */
@supports (-webkit-appearance:none) {
    .shop-wrap-top__order select {
        background-position: right 10px center;
        padding-right: 30px;
    }
}

.filter-form {
    padding: 20px 15px;
    border: 1px solid #ededed;
}

.filter-item {
    border-bottom: 1px solid #ededed;
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.filter-item:nth-child(3) {
    border-bottom: none;
    margin-bottom: 0;
}

.filter-item>label {
    margin-bottom: 20px;
    display: block;
    font-weight: 700;
    font-size: 1.25rem;
}

.checkbox-item {
    display: flex;
    gap: 10px;
}


.filter-badges {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.filter-badges.mobile {
    padding: 0 10px;
    margin-bottom: 10px;
    gap: 5px;
}

@media (max-width: 639px) {
    .filter-badges:not(.mobile) {
        display: none !important;
    }
}

@media (min-width: 640px) {
    .filter-badges.mobile {
        display: none !important;
    }
}

.filter-badges.mobile .filter-badges__item {
    font-size: 11px;
}

.filter-badges.mobile .filter-badges__item span {
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    max-width: 110px;
}

.filter-badges.mobile .filter-badges__item i {
    font-size: 12px;
    width: 12px;
    height: 12px;
}

.filter-badges__item {
    background: #e74c3c;
    color: #fff;
    padding: 5px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 12px;
    cursor: pointer;
}

.filter-badges__item:hover {
    background: #e8685d;
}

.filter-badges__item:active {
    background: #c0392b;
    transform: scale(0.98);
}

.filter-badges__item i {
    font-size: 16px;
    width: 16px;
    height: 16px;
}


.c-filters {
    max-height: 300px;
    overflow-y: scroll;
    padding-right: 10px;
    /* border-radius: 5px; */
    /* border-left: 1px solid #d2d2d2; */

}

.c-filters::-webkit-scrollbar {
    width: 4px;
}

.c-filters::-webkit-scrollbar-thumb {
    background: #333;
}

.c-filters::-webkit-scrollbar-thumb:hover {
    background: #333;
}

.c-filters::-webkit-scrollbar-track {
    background: #f1f1f1;
}

.c-filters::-webkit-scrollbar-track-piece {
    background: #f1f1f1;
}

.c-filters::-webkit-scrollbar-track-piece:hover {
    background: #f1f1f1;
}



.checkbox-item:not(:last-child) {
    margin-bottom: 10px;
}

.checkbox-item input {
    display: none;
    opacity: 0;
}

.checkbox-item label {
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 0.85rem;
    position: relative;
}

.checkbox-item label:before {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    border: 1px solid #d2d2d2;
    border-radius: 4px;
    margin-right: 10px;
    flex: 0 0 auto;
}

.checkbox-item input:checked+label::before {
    border-color: #333;
    background: #333;
}

.checkbox-item input:checked+label:after {
    content: '';
    display: block;
    width: 10px;
    height: 10px;
    background: #fff;
    border-radius: 2px;
    position: absolute;
    top: calc(50% - 5px);
    left: 5px;
}

.price-filters {
    display: flex;
    gap: 10px;
    align-items: center;
}

.price-filters input::-webkit-outer-spin-button,
.price-filters input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.price-filters input[type=number] {
    -moz-appearance: textfield;
}

.price-filters input {
    width: 35%;
    border: 1px solid #d2d2d2;
    padding: 5px;
    height: 30px;

}

.price-filters button {
    color: #000;
    padding: 5px 10px;
    border-radius: 4px;
    border: 1px solid #d2d2d2;
    background: #fff;
    cursor: pointer;
    flex: 1;
    height: 30px;
}

.price-filters button:hover {
    background: #333;
    color: #fff;
    border-color: #333;
}

.filter-actions {
    position: sticky;
    bottom: 0;
    width: 100%;
    background-color: #fff;
    padding: 10px 0;
    display: none;
}

.filter-actions.active {
    display: block;
}

.filter-actions .reset-filters-btn {
    padding: 15px 20px;
    background-color: rgb(222, 51, 51);
    color: #fff;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    width: 100%;
}


.filter-close,
.apply-filters-btn {
    display: none;
}

.pagination {
    text-align: center;
    margin: 20px 0;
    display: flex;
    gap: 10px;
    justify-content: center;
}

.pagination a,
.pagination span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border: 1px solid #000;
    border-radius: 4px;
    text-decoration: none;
    color: #000;
    background-color: #fff;
}

@media (max-width: 639px) {

    .pagination a,
    .pagination span {
        width: 30px;
        height: 30px;
        font-size: 14px;
    }
}

.pagination a:hover {
    background-color: #000;
    color: #fff;
}

.pagination .current {
    background-color: #000;
    color: #fff;
}

.pagination .disabled {
    pointer-events: none;
    opacity: 0.5;
}

.pagination a.prev:hover svg,
.pagination a.next:hover svg {
    fill: #fff;
}

.banner-top {
    padding: 0.5rem 1rem;
    width: 100%;
    display: block;
    text-align: center;
}


@media (max-width: 639px) {

    .banner-top {
        font-size: 13px;
        font-weight: bold;
    }

    .filter-count {
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        font-size: 10px;
        width: 16px;
        height: 16px;
        background: rgb(222, 51, 51);
    }

    .shop-wrap-top__order select {
        width: 100%;
    }

    .shop-wrap-top>* {
        flex: 1 1 50%;
    }

    .shop_header_title {
        margin-top: 50px;
    }

    .shop-wrap-top {
        position: sticky;
        background: #fff;
        top: 60px;
        z-index: 199;
        padding: 10px 10px;
        margin-top: 40px;
    }

    .shop-wrap-top__filter-btn {
        display: flex;
    }


    .shop-wrap {
        grid-template-columns: 1fr;
        padding: 0 10px;
    }

    .filter-wrap {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background: #fff;
        z-index: 9999;
    }

    .filter-actions {
        display: flex !important;
        gap: 10px;
    }

    .filter-actions button {
        flex: 1;
    }

    .apply-filters-btn {
        display: block;
        padding: 15px 20px;
        background-color: #333;
        color: #fff;
        border: none;
        border-radius: 4px;
        cursor: pointer;
        width: 100%;
    }

    .filter-close {
        display: block;
        position: absolute;
        top: 10px;
        right: 10px;
        cursor: pointer;
        border: 0;
        background: transparent;
    }

    .filter-items {
        overflow: auto;
        margin: 0 -15px;
        padding: 0 15px;
        height: 100%;
        margin-top: 5px;
        padding-bottom: 50px;
    }

    @supports (height: 100dvh) {
        .filter-wrap {
            height: 100dvh;
        }
    }

    .filter-wrap.active {
        display: block;
    }

    .products-container {
        gap: 10px;
        grid-template-columns: 1fr 1fr;
    }

    .filter-form {
        padding-top: 0;
        padding-bottom: 0;
    }


}


#telegram-out-of-stock-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 1000;
}

.tg-modal-content {
    background: #fff;
    padding: 20px;
    border-radius: 8px;
    text-align: center;
    position: relative;
    max-width: 400px;
    width: calc(100% - 20px);
}

.tg-modal-content h3 {
    font-size: 22px;
    /* margin-top: 10px; */
}

.tg-modal-content p {
    font-size: 12px;
    text-align: left;
    margin: 10px 0;
    display: flex;
    align-items: baseline;
    gap: 20px;
    justify-content: space-between;
    color: #999;
}

.tg-modal-content p span {
    display: block;
    color: #333;
    text-align: right;
    font-weight: 700;
    flex: 1;
}

.tg-modal-content svg {
    width: 150px;
    height: 150px;
    display: block;
    margin: 0 auto;
    margin-bottom: 20px;
}

.tg-close-modal {
    position: absolute;
    top: 10px;
    right: 10px;
    background: none;
    border: none;
    font-size: 30px;
    line-height: 0.5;
}

#tg-notify-me-button {
    background-color: #1d93d2;
    color: #fff;
    border: none;
    padding: 10px 20px;
    border-radius: 5px;
    cursor: pointer;
    margin-top: 10px;
    width: 100%;
}

#tg-notify-me-button:hover {
    background-color: #38b0e3;
}


.video-container {
    position: relative;
    width: 100%;
    height: 100%;
}

.video-wrapper {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.video-main {
    width: 100%;
    height: auto;
    display: block;
    aspect-ratio: 3/4;
    background: #000;
    margin-bottom: auto;
}

.play-icon-wrapper {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    width: 90px;
    height: 90px;
    background: rgba(255, 255, 255, 0.3);
    border: 2px solid #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.play-icon-wrapper:hover {
    background: rgba(0, 0, 0, 0.3);
}

.play-icon {
    width: 0;
    height: 0;
    border-left: 25px solid #fff;
    border-top: 15px solid transparent;
    border-bottom: 15px solid transparent;
    left: 2px;
    position: relative;
}

.video-main.is-playing+.play-icon-wrapper {
    display: none;
}

/* Прогрес-бар */
.progress-bar {
    position: absolute;
    bottom: 2px;
    left: 2px;
    right: 2px;
    height: 12px;
    background: rgba(255, 255, 255, 0.3);
    overflow: hidden;
    z-index: 3;
}

.progress {
    width: 0%;
    height: 100%;
    background: rgba(255, 255, 255, 0.9);
    transition: width linear;
}


.video-thumbnail {
    position: relative;
}

.video-thumbnail:after {
    /* triangle start */
    content: '';
    position: absolute;
    top: 50%;
    left: 54%;
    transform: translate(-50%, -50%);
    z-index: 2;
    width: 0;
    height: 0;
    border-left: 15px solid #fff;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    pointer-events: none;
}

.video-thumbnail:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    background: rgba(255, 255, 255, 0.3);
    border: 2px solid #fff;
    pointer-events: none;
}


@media (min-width: 640px) {
    .thumbnails {
        position: absolute;
        height: 100%;
        overflow-y: auto;
    }

    .main-image_block {
        margin-left: 70px;
    }
}

.woocommerce #shipping_method li label {
    display: block !important;
}



.mobile_menu_button_myaccount {
    display: none;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: #000;
    font-weight: 600;
    cursor: pointer;
    width: 100%;
    justify-content: center;
    padding: 15px 0;
    border-bottom: 1px solid #ddd;

}

@media (max-width: 639px) {
    .woocommerce-MyAccount-navigation {
        margin: 0 -20px;
    }

    .mobile_menu_button_myaccount {
        display: flex;
    }

    .woocommerce-MyAccount-navigation ul {
        padding-top: 0;
        margin-top: 0;
    }

    .woocommerce-MyAccount-navigation ul:not(.open) {
        display: none;
    }

    .woocommerce-MyAccount-navigation ul li {
        font-size: 14px;
    }

    .woocommerce-MyAccount-navigation ul li:first-child a {
        padding-left: 15px;
    }

    .myaccount_title {
        margin: 40px 0 20px 0;
        line-height: 1.5;
        position: relative;
        padding: 0;
    }

    /* Стили для блока ошибки */
    .woocommerce-error1 {
        background: #ffe6e64a;
        /* Светло-красный фон */
        padding: 15px;
        border-left: 5px solid #ff4d4d;
        /* Красная полоска слева */
        color: #333;
        font-size: 12px;
        border-radius: 5px;
        margin-bottom: 20px;
    }

    /* Стили для кнопки "Повернутись на головну" */
    .wc-backward1 {
        background: #ff4d4d;
        /* Красный фон */
        color: #fff;
        /* Белый текст */
        padding: 12px 20px;
        text-decoration: none;
        display: inline-block;
        font-size: 16px;
        font-weight: bold;
        border-radius: 5px;
        transition: background 0.3s ease;
    }

    .wc-backward1:hover {
        background: #cc0000;
        /* Темно-красный при наведении */
    }


    .category-details {
        margin-top: 50px;
        border: none;
        border-radius: 10px;
        background: linear-gradient(135deg, #f8f8f8, #ffffff);
        padding: 15px 20px;
        font-family: 'Inter', sans-serif;
        font-size: 13px;
        box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
        transition: all 0.3s ease-in-out;
    }

    /* Заголовок-кнопка */
    .category-details summary {
        display: flex;
        align-items: center;
        justify-content: center;
        font-weight: 600;
        cursor: pointer;
        color: #222;
        padding: 12px 0;
        position: relative;
        background: rgba(0, 0, 0, 0.03);
        border-radius: 8px;
        transition: all 0.3s ease-in-out;
    }

    /* Анимация наведения */
    .category-details summary:hover {
        background: rgba(0, 0, 0, 0.05);
    }

    /* Иконка стрелки */
    .category-details summary::before {
        content: '\f078';
        /* FontAwesome стрелка вниз */
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        margin-right: 10px;
        font-size: 14px;
        transition: transform 0.3s ease-in-out;
    }

    /* Поворот стрелки при раскрытии */
    .category-details[open] summary::before {
        transform: rotate(180deg);
    }

    /* Описание категории */
    .category-description {
        margin-top: 12px;
        padding: 12px;
        border-radius: 8px;
        background: rgba(0, 0, 0, 0.02);
        color: #555;
        font-size: 12px;
        line-height: 1.6;
        text-align: justify;
        box-shadow: inset 0 2px 6px rgba(0, 0, 0, 0.04);
        animation: fadeIn 0.3s ease-in-out;
    }

    /* Анимация плавного появления */
    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(-5px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
}

body:not(.admin-bar) img,
body:not(.admin-bar) .no-save {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-user-drag: none;
    pointer-events: auto;
}

/* Checkout */
body.woocommerce-checkout .checkout.woocommerce-checkout {
    padding: 12px 0;
}

body.woocommerce-checkout .checkout.woocommerce-checkout .cart_content {
    align-items: flex-start;
}


/* popup mini cart */
.cart_popup_cart .cart_content {
    align-items: flex-start;
}

.cart_popup_cart .cart_total {
    padding: 10px 0 5px;
    font-size: 16px;
}

.cart_popup_cart .cart_total_cashback {
    display: block;
    margin-bottom: 5px;
    padding: 0 0 5;
    text-align: right;
    font-weight: 400;
}

.cart_total_cashback>span {
    display: block;
    font-size: 9px;
}

.cart_popup_cart .cart_total_cashback>span,
.cart_popup_cart .cart_total_cashback>strong {
    font-weight: 400;
}

.cart_popup_cart .cart_checkout {
    padding: 0;
}

.cart_popup_cart .cart_checkout .cart_checkout_button {
    padding: 12px;
    font-size: 16px;
    line-height: 1;
}

/* ===== RUBI • Premium mobile menu ===== */
@media screen and (max-width: 639px) {
    .menu_list_mobile {
        /* базовая сетка */
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        /* вместо center — выглядит премиальнее */
        gap: 0;
        /* контролируем отступы строк сами */
        /*padding: 6px 8px 12px;*/
        background: #fff;
        padding-bottom: 120px;
        
    }

    /* строка меню */
    .menu_list_mobile>li {
        list-style: none;
        position: relative;
        border-radius: 14px;
        /* hairline separator через инсет-тень: дорого и тонко */
        box-shadow: inset 0 -1px 0 rgba(17, 24, 39, .06);
    }

    /* ссылки */
    .menu_list_mobile>li>a {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 12px 14px;
        font-size: 15px;
        line-height: 1.25;
        color: #111827;
        text-decoration: none;
        transition: background .25s ease, color .25s ease, transform .18s ease;
        border-radius: 14px;
        /* для ховера */
    }

    /* «жемчужный» маркер слева (без HTML-иконок) */
    /*.menu_list_mobile > li > a::before{*/
    /*  content: "";*/
    /*  width: 8px; height: 8px; border-radius: 999px; flex: 0 0 auto;*/
    /*  background: radial-gradient(circle at 30% 30%, #fff, #e4d8ee 60%, #b996ca 100%);*/
    /*  box-shadow: 0 0 0 1px rgba(185,150,202,.35);*/
    /*}*/

    /* hover / active — мягкая благородная подсветка */
    .menu_list_mobile>li>a:hover {
        background: #99423b0a;
    }

    .menu_list_mobile>li.is-active>a,
    .menu_list_mobile>li>a[aria-current="page"] {
        background: #99423b0a;
        box-shadow: inset 0 0 0 1px rgb(73 1 1 / 8%);
    }

    /* правый «чеврон» для пунктов с подкатегориями (если у li есть класс has-children — можно добавить в PHP) */
    .menu_list_mobile>li.has-children>a::after {
        content: "";
        margin-left: auto;
        width: 14px;
        height: 14px;
        opacity: .35;
        mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M9 18l6-6-6-6"/></svg>') center/contain no-repeat;
        background: currentColor;
        transition: transform .2s ease, opacity .2s ease;
    }

    .menu_list_mobile>li.has-children>a:hover::after {
        opacity: .6;
        transform: translateX(2px);
    }

    /* тонкие группы: перед «SALE», «Сертифікат» и т.п. можно поставить класс .is-group-start у li */
    .menu_list_mobile>li.is-group-start {
        margin-top: 8px;
    }

    .menu_list_mobile>li.is-group-start::before {
        content: "";
        position: absolute;
        left: 14px;
        right: 14px;
        top: -8px;
        height: 1px;
        border-radius: 999px;
        background: linear-gradient(90deg, transparent, #ececec, transparent);
    }

    /* бейдж-капсула справа (если внутри <span class="badge-pill">…</span>) */
    .menu_list_mobile .badge-pill {
        margin-left: auto;
        font-size: 11px;
        letter-spacing: .08em;
        text-transform: uppercase;
        padding: 6px 10px;
        border-radius: 999px;
        background: #111827;
        color: #fff;
    }

    .menu_list_mobile .pill-sale {
        background: linear-gradient(90deg, #111827, #744c83 55%, #b085c6);
    }



    /* второстепенные пункты (носки/аксесуари) — просто добавь класс .is-subtle на li */
    .menu_list_mobile>li.is-subtle>a {
        color: #6b7280;
    }
}

/* тактильность на тач-упорах */
@media (hover:hover) {
    .menu_list_mobile>li>a:active {
        transform: translateY(1px);
    }
}

/* ===== RUBI • Premium mobile menu ===== */
@media screen and (max-width: 639px) {
    .menu_list_mobile {
        /* базовая сетка */
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: stretch;
        /* вместо center — выглядит премиальнее */
        gap: 0;
        /* контролируем отступы строк сами */
        /*padding: 6px 8px 12px;*/
        background: #fff;
        border-top-right-radius: 30px;
    }

    /* строка меню */
    .menu_list_mobile>li {
        list-style: none;
        position: relative;
        border-radius: 14px;
        /* hairline separator через инсет-тень: дорого и тонко */
        box-shadow: inset 0 -1px 0 rgba(17, 24, 39, .06);
    }

    /* ссылки */
    .menu_list_mobile>li>a {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 12px 14px;
        font-size: 15px;
        line-height: 1.25;
        color: #111827;
        text-decoration: none;
        transition: background .25s ease, color .25s ease, transform .18s ease;
        border-radius: 14px;
        /* для ховера */
    }

    /* «жемчужный» маркер слева (без HTML-иконок) */
    /*.menu_list_mobile > li > a::before{*/
    /*  content: "";*/
    /*  width: 8px; height: 8px; border-radius: 999px; flex: 0 0 auto;*/
    /*  background: radial-gradient(circle at 30% 30%, #fff, #e4d8ee 60%, #b996ca 100%);*/
    /*  box-shadow: 0 0 0 1px rgba(185,150,202,.35);*/
    /*}*/

    /* hover / active — мягкая благородная подсветка */
    .menu_list_mobile>li>a:hover {
        background: #99423b0a;
    }

    .menu_list_mobile>li.is-active>a,
    .menu_list_mobile>li>a[aria-current="page"] {
        background: #99423b0a;
        box-shadow: inset 0 0 0 1px rgb(73 1 1 / 8%);
    }

    /* правый «чеврон» для пунктов с подкатегориями (если у li есть класс has-children — можно добавить в PHP) */
    .menu_list_mobile>li.has-children>a::after {
        content: "";
        margin-left: auto;
        width: 14px;
        height: 14px;
        opacity: .35;
        mask: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path fill="%23000" d="M9 18l6-6-6-6"/></svg>') center/contain no-repeat;
        background: currentColor;
        transition: transform .2s ease, opacity .2s ease;
    }

    .menu_list_mobile>li.has-children>a:hover::after {
        opacity: .6;
        transform: translateX(2px);
    }

    /* тонкие группы: перед «SALE», «Сертифікат» и т.п. можно поставить класс .is-group-start у li */
    .menu_list_mobile>li.is-group-start {
        margin-top: 8px;
    }

    .menu_list_mobile>li.is-group-start::before {
        content: "";
        position: absolute;
        left: 14px;
        right: 14px;
        top: -8px;
        height: 1px;
        border-radius: 999px;
        background: linear-gradient(90deg, transparent, #ececec, transparent);
    }

    /* бейдж-капсула справа (если внутри <span class="badge-pill">…</span>) */
    .menu_list_mobile .badge-pill {
        margin-left: auto;
        font-size: 11px;
        letter-spacing: .08em;
        text-transform: uppercase;
        padding: 6px 10px;
        border-radius: 999px;
        background: #111827;
        color: #fff;
    }

    .menu_list_mobile .pill-sale {
        background: linear-gradient(90deg, #111827, #744c83 55%, #b085c6);
    }



    /* второстепенные пункты (носки/аксесуари) — просто добавь класс .is-subtle на li */
    .menu_list_mobile>li.is-subtle>a {
        color: #6b7280;
    }
}

/* тактильность на тач-упорах */
@media (hover:hover) {
    .menu_list_mobile>li>a:active {
        transform: translateY(1px);
    }
}

/* Размеры */

/* Стили для существующих .size-swatch */
.rubi-sizes,
.variations_form .size-swatch-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.size-swatch {
    --r: 12px;
    --border: rgba(17, 24, 39, .14);
    --text: #111827;
    position: relative;
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 64px;
    height: 38px;
    padding: 4px 14px;
    border-radius: var(--r);
    border: 1px solid var(--border);
    background: linear-gradient(180deg, #ffffff 0%, #f7f7f7 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .65), 0 .5px 0 rgba(17, 24, 39, .08), 0 6px 16px rgba(17, 24, 39, .06);
    color: var(--text);
    letter-spacing: .02em;
    line-height: 1.05;
    cursor: pointer;
    user-select: none;
    transition: transform .12s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
    font-size: 14px;
}

.size-swatch b {
    font-weight: 600;
    font-size: 14px;
    line-height: 1;
}

.size-swatch small {
    margin-top: 2px;
    font-size: 11px;
    opacity: .7;
}

.size-swatch:hover {
    transform: translateY(-1px);
    border-color: rgba(17, 24, 39, .22);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .75), 0 1px 2px rgba(17, 24, 39, .10), 0 10px 22px rgba(17, 24, 39, .10);
}

/* Выбранная */
.size-swatch.is-active {
    background: linear-gradient(180deg, #151515 0%, #1f1f1f 100%);
    color: #fff;
    border-color: #0f0f0f;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .06), 0 8px 22px rgba(0, 0, 0, .28);
}

.size-swatch.is-active::after {
    content: "";
    position: absolute;
    inset: -3px;
    border-radius: calc(var(--r) + 4px);
    box-shadow: 0 0 0 1px rgba(17, 24, 39, .06), 0 0 0 6px rgba(17, 24, 39, .07);
}

/* Нет в наличии */
.size-swatch.is-disabled {
    color: #9aa3af;
    background: #f4f5f7;
    border-color: rgba(17, 24, 39, .12);
    box-shadow: none;
    cursor: not-allowed;
    opacity: .85;
}

@media (max-width:480px) {
    .size-swatch {
        min-width: 56px;
        height: 36px;
        padding: 3px 12px;
        border-radius: 10px;
    }
}

/* 24.08.25 */
/* Общий стиль таблицы */
.product_info_block table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 12px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0,0,0,0.05);
    font-family: 'Montserrat', sans-serif;
    font-size: 14px;
    color: #333;
}

/* Заголовки размеров */
.product_info_block table td[colspan] {
    background: linear-gradient(135deg, #f8f8f8, #e9e1d047);
    font-weight: 600;
    text-align: center;
    font-size: 15px;
    letter-spacing: 0.5px;
    color: #111;
    padding: 10px;
}

/* Ячейки */
.product_info_block table td,
.product_info_block table th {
    padding: 12px 14px;
    border-bottom: 1px solid #eee;
    text-align: center;
}

/* Последняя строка без границы */
.product_info_block table tr:last-child td {
    border-bottom: none;
}

/* Подсветка строк */
.product_info_block table tr:hover td {
    background: #fafafa;
}

/* Стили для заголовков колонок */
.product_info_block table th {
    font-weight: 600;
    background: #f9f9f9;
    color: #444;
    letter-spacing: 0.4px;
}

/* Адаптив */
@media(max-width: 768px){
    .product_info_block table {
        font-size: 13px;
    }
    .product_info_block table td,
    .product_info_block table th {
        padding: 8px;
    }
}

/* page cart */
body.woocommerce-cart .main_content_post .cart-subtotal,
body.woocommerce-cart .main_content_post .woocommerce-shipping-totals.shipping,
body.woocommerce-cart .main_content_post .ceit-cashback-total-row,
body.woocommerce-cart .main_content_post .ceit-cashback-cart-info {
    display: none!important;
}

body.woocommerce-cart .main_content_post .block-cart-products-list {
    padding: 20px 0;
}

body.woocommerce-cart .main_content_post .cart_products_list>div {
    align-items: flex-start;
    padding: 0 0 10px;
}

body.woocommerce-cart .main_content_post .cart_coast_block_desc {
    max-width: calc(100% - 60% - 70px - 20px - 60px);
    width: 100%;
}

body.woocommerce-cart .main_content_post .favorite_product_del {
    max-width: 20px;
    width: 100%;
}

body.woocommerce-cart .main_content_post .favorite_product_del .remove_from_cart {
    margin: 0;
}

body.woocommerce-cart .main_content_post .order-total th,
body.woocommerce-cart .main_content_post .order-total td {
    padding: 10px 0;
}

body.woocommerce-cart .main_content_post .button {
    margin: 0;
    font-weight: 500;
    text-transform: none;
    width: 100%;
    background: #000;
    color: #fff;
    padding: 20px;
    text-align: center;
    font-size: 20px;
}

body.woocommerce-cart .main_content_post .cart_totals h2 {
    font-size: 18px;
    font-weight: 400;
}

body.woocommerce-cart .main_content_post .cart_totals .shop_table,
body.woocommerce-cart .main_content_post .cart_totals td::before,
body.woocommerce-cart .main_content_post .cart_totals .woocommerce-Price-amount,
body.woocommerce-cart .main_content_post .cart_totals .cart_total_cashback,
body.woocommerce-cart .main_content_post .cart_totals .cart_total_cashback strong {
    font-weight: 400!important;
}

@media (max-width: 639px) {
    body.woocommerce-cart .main_content_post .button {
        font-size: 16px;
    }
}

/* --- */
@media (max-width: 639px) {
    body.wp-singular.page #main-content {
        margin-top: 70px;
    }
}

body.wp-singular.page .wp-block-list,
body.wp-singular.page #main-content ol,
body.wp-singular.page #main-content ul,
body.wp-singular.single .wp-block-list,
body.wp-singular.single #main-content ol,
body.wp-singular.single #main-content ul {
    padding-left: 30px;
}

body.wp-singular.page #main-content ul.woocommerce-order-overview,
body.wp-singular.page #main-content ul.woocommerce-shipping-methods,
.woocommerce-MyAccount-navigation > ul {
    padding-left: 0;
}

.cart_popup_block .cart_total_cashback > span {
    display: none!important;
}

body.wp-singular.page h1 {
    font-size: 28px;
    line-height: 1.2;
}

.slide_products {
    flex: 0 0 calc((100vw - 90px - 45px) / 4);
    width: 100%;
    overflow: hidden;
}

.slide_products .products_info {
    margin-bottom: 0;
}

.slide_inner_products,
.slide_inner_products_product,
.product-item img {
    height: 545px;
}

body.woocommerce-order-received .order-actions--buttons {
    display: none!important;
}

.order-actions--buttons {
    display: flex;
    flex-flow: row wrap;
    gap: 10px;
}

.woocommerce .order-actions--buttons > a.order-actions-button {
    margin-right: 0;
}

@media (max-width: 1024px) {
    .slide_products {
        flex: 0 0 calc((100vw - 90px - 45px) / 3);
    }

    .slide_inner_products,
    .slide_inner_products_product,
    .product-item img {
        height: 445px;
    }
}

@media (max-width: 768px) {
    .slide_products {
        flex: 0 0 calc((100vw - 90px - 45px) / 2.5);
    }

    .slide_inner_products,
    .slide_inner_products_product,
    .product-item img{
        height: 345px;
    }
}

@media (max-width: 639px) {
    .slide_products,
    .slide_products_single {
        flex: 0 0 calc((100vw - 90px - 45px) / 1);
    }

    .slide_inner_products,
    .slide_inner_products_product {
        height: 325px;
    }

    .product-item img {
        height: 255px;
    }
}

/* Video badge in loop cards: first badge at top-left */
.product-item .sale_block,
.slide_inner_products .sale_block,
.slide_inner_products_product .sale_block {
  left: 8px;
  right: 8px;
}

.product-item .sale_block .video_znachok,
.slide_inner_products .sale_block .video_znachok,
.slide_inner_products_product .sale_block .video_znachok {
  position: static;
  pointer-events: auto;
}

.product-item .sale_block .shop3-video-badge-trigger,
.slide_inner_products .sale_block .shop3-video-badge-trigger,
.slide_inner_products_product .sale_block .shop3-video-badge-trigger {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  order: -1;
  align-self: flex-start;
}
/* --- */

.category-details {
    margin: 20px auto;
    padding: 0 20px;
    max-width: 90%;
}

.category-details summary {
    cursor: pointer;
    list-style: none;
    font-size: 16px;
    font-weight: 500;
    color: #222;
    padding: 14px 18px;
    border-radius: 10px;
    background: #f5f5f5;
    transition: all 0.2s ease;
    margin-bottom: 14px;
}

.category-details summary:hover {
    background: rgb(182 182 182 / 3%);
}

.category-details summary::-webkit-details-marker {
    display: none;
}

.category-details summary::before {
    content: "▸";
    display: inline-block;
    margin-right: 10px;
    transition: transform 0.2s ease;
}

.category-details[open] summary::before {
    transform: rotate(90deg);
}

.category-description {
    padding: 24px 30px;
    border-radius: 12px;
    background: rgb(216 216 216 / 3%);
    color: #333;
    font-size: 14px;
    line-height: 1.75;
    text-align: left;
    box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.05);
}

.category-description h2 {
    margin: 0 0 14px;
    font-size: 20px;
    line-height: 1.3;
    font-weight: 600;
    color: #222;
}

.category-description p {
    margin: 0 0 16px;
}

.category-description ul,
.category-description ol {
    margin: 0 0 16px 22px;
    padding: 0;
}

.category-description li {
    margin-bottom: 8px;
}

.category-description hr {
    margin: 24px 0;
    border: 0;
    border-top: 1px solid rgba(0,0,0,0.08);
}


.faq-container {
    max-width: 1100px;
    margin: 40px auto;
    padding: 0 20px;
}

.custom-accordion {
    width: 100%;
    margin: 0 0 14px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.04);
    transition: all 0.2s ease;
}

.custom-accordion:hover {
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
    border-color: rgba(0, 0, 0, 0.12);
}

.accordion-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 12px 22px;
    cursor: pointer;
    background: #fff;
    transition: background 0.2s ease;
}

.accordion-title:hover {
    background: #fafafa;
}

.accordion-title-text {
    font-size: 16px;
    line-height: 1.4;
    font-weight: 500;
    color: #222;
}

.accordion-icon {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    position: relative;
}

.accordion-icon::before,
.accordion-icon::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    background: #222;
    border-radius: 2px;
    transform: translate(-50%, -50%);
    transition: all 0.2s ease;
}

.accordion-icon::before {
    width: 12px;
    height: 2px;
}

.accordion-icon::after {
    width: 2px;
    height: 12px;
}

.custom-accordion.active .accordion-icon::after {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(90deg);
}

.custom-container {
    display: none;
    padding: 0 22px 20px;
    background: #fff;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.custom-accordion.active .custom-container {
    display: block;
}

.custom-container p,
.custom-container div,
.custom-container li {
    font-size: 15px;
    line-height: 1.7;
    color: #444;
}

.custom-container p:last-child {
    margin-bottom: 0;
}

.faq-divider {
    display: none;
}

.product_description {
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid rgba(0,0,0,0.08);
}


/* ТОЛЬКО КОНТЕНТ */
.product_description_content {
    font-size: 15px;
    line-height: 1.8;
    color: #444;
}


/* когда открыто */
.product_description_content.visible {
    margin-top: 12px;
    padding: 22px 24px;
    border-radius: 14px;
    background: rgb(216 216 216 / 3%);
    border: 1px solid rgba(0,0,0,0.06);
}


/* абзацы */
.product_description_content p {
    margin: 0 0 16px;
}

.product_description_content p:last-child {
    margin-bottom: 0;
}


/* заголовки внутри описания */
.product_description_content h2,
.product_description_content h3,
.product_description_content h4 {
    margin: 26px 0 12px;
    font-size: 20px;
    line-height: 1.35;
    font-weight: 600;
    color: #222;
}

.product_description_content h2:first-child,
.product_description_content h3:first-child,
.product_description_content h4:first-child {
    margin-top: 0;
}


/* списки */
.product_description_content ul,
.product_description_content ol {
    margin: 0 0 18px 22px;
    padding: 0;
}

.product_description_content li {
    margin-bottom: 8px;
}


/* линии */
.product_description_content hr {
    margin: 24px 0;
    border: 0;
    border-top: 1px solid rgba(0,0,0,0.08);
}


/* жирный текст */
.product_description_content strong {
    color: #222;
    font-weight: 600;
}


/* курсив */
.product_description_content em {
    color: #666;
}


/* мобильная версия */
@media (max-width: 768px) {

    .product_description_content.visible {
        padding: 18px 16px;
        border-radius: 12px;
    }

    .product_description_content {
        font-size: 14px;
        line-height: 1.75;
    }

    .product_description_content h2,
    .product_description_content h3,
    .product_description_content h4 {
        font-size: 18px;
        margin: 22px 0 10px;
    }

}

.menu_list_footer-icon {
    width: 32px;
    height: 32px;
}
.menu_list_footer-icon img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.menu_list_footer-link {
    display: flex;
    gap: 10px;
    align-items: center;
}

.menu_list_footer--start {
    align-items: flex-start;
}
body, html {
    overflow-x: hidden;
}
@media (max-width: 1200px) {
    .menu_list_footer {
        align-items: flex-start;
    }
    .footer_block {
        padding: 30px 16px;
    }
    .block_header_menu_footer {
        width: calc(50% - (20px - (20px / 2)));
        align-items: flex-start;
    }
}