:root {
    --base-color-1: #FFFFFF; 
    --base-color-2: #EDEFF2; 
    --base-color-3: #D4D5D9; 
    --base-color-4: #919399; 
    --base-color-5: #6D6E73; 
    --base-color-6: #1E1E1F; 

    --accent-color-1: #D3D7E5;
    --accent-color-2: #ADB4CC;
    --accent-color-3: #1451CD;
    --accent-color-4: #0D3380;
    --accent-color-5: #242C47;
    --accent-color-6: #0C1533;

    --additional-color-1: #800D33;
    --additional-color-2: #CC1452;
    --additional-color-3: #E2B4C3;
    --additional-color-4: #0DBF2A;
    --additional-color-5: #CC8E14;


    /* --- Backgrounds --- */
    --site-bg: var(--base-color-2);

    --main-color: var(--accent-color-6);
    --main-color-light:  var(--accent-color-3);
    --main-color-lighter: #0c1533e8;
    --sub-color: var(--accent-color-3);
    --sub-color-light: var(--base-color-4);

    --footer-bg: var(--accent-color-5);

    /* --- Texts --- */
    --text: var(--base-color-6);
    --text-inverse: var(--base-color-1);
    --text-error: var(--additional-color-2);
    --text-light: var(--base-color-4);

    /* --- Buttons --- */
    --btn-bg: var(--accent-color-3);
    --btn-bg-hover: var(--base-color-3);

    /* --- Links --- */
    --link: var(--accent-color-3);
    --link-hover: var(--accent-color-4);

    /* --- Icons (SVG) --- */
    --icon-color: var(--base-color-1);
    --icon-color-gray: var(--base-color-4);
    --icon-color-hover: var(--accent-color-3);

    /* --- Borders --- */
    --border-color: var(--base-color-3);
    --border-radius: 5px;

    /* --- Common colors --- */
    --white: var(--base-color-1);
    --error: var(--additional-color-2);
    --error_light: #cc145135;
    --success: var(--additional-color-4);
    --gray: var(--base-color-4);
    --gray-light: var(--base-color-3);
    --orange: var(--additional-color-5);

    /* --- Socials & Messengers --- */
    --viber: #675da9;
    --telegram: #0088cc;
    --whatsapp: #26d266;
    --facebook: #1877F2;
    --twitter: #0f1419;
    --youtube: #f00;
    --pinterest: #e60023;
    --instagram: #f7085c;

    /* --- Slider for Prices & Filters --- */
    --slider-handle-width: 20px;
    --slider-handle-width-minus: -20px;

    /* --- Content width & Margin --- */
    --content-width: 1470px;
    --content-margin: calc((100% - var(--content-width)) / 2);

    /* --- 100vh working in Mobile phones --- */
    --100vh: calc(var(--vh, 1vh) * 100);

    /* Filter One Point Height */
    --adm-filter-height: 35.5px;

    --section-bottom: 60px;

    --shadow-active: 0px 10px 15px 0px #1E1E1F0D;
    --shadow-hover: 0px 15px 30px 0px #1E1E1F4D;
    --shadow-not-active: 0px 10px 15px 0px #1e1e1f00;

    /* Gap around the product & tiles */
    --gap-mobile: 8px;
    --gap-desktop: 16px;
    --gap-mobile-twice: calc(var(--gap-mobile) * 2);   /* NO need to change */
    --gap-desktop-twice: calc(var(--gap-desktop) * 2);   /* NO need to change */
    --gap-offset-mobile: calc(-1 * var(--gap-mobile));   /* NO need to change */
    --gap-offset-desktop: calc(-1 * var(--gap-desktop));   /* NO need to change */

    /* Page margin */
    --margin-lt-rt: 8px;
    --margin-lt-rt-minus: calc(-1 * var(--margin-lt-rt));   /* NO need to change */
    --margin-lt-rt-twice: calc(var(--margin-lt-rt) * 2);   /* NO need to change */
}

/* --- Body - fonts, colors, background --- */
HTML,
Body {
    scrollbar-color: var(--gray) var(--site-bg);
}

Body {
    font-family: 'Inter', sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "slnt" 0;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 400;
    color: var(--text);
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    min-width: 360px;
    background: var(--site-bg);
    overflow-y: auto;
    overflow-x: hidden;
}

Body.body_overflow {
    overflow: hidden;
}

::-webkit-scrollbar-thumb {
    background: var(--gray);
}

::-webkit-scrollbar {
    background: var(--site-bg);
}

.centre {
    margin: 0 auto;
    padding: 0 15px;
    width: 100%;
    max-width: var(--content-width);
}

/* --- Common other --- */
*,
*::before,
*::after {
    box-sizing: border-box;
}

Body,
H1,
H2,
H3,
H4,
P,
LI,
Figure,
Figcaption,
Blockquote,
DL,
DD {
    margin: 0;
}

Menu,
UL,
OL {
    list-style: none;
    margin: 0;
    padding: 0;
}

Img {
    display: block;
}

Input,
Button,
Textarea,
Select {
    font-family: 'Inter', sans-serif;
    font-size: 15px;
    line-height: 1.2;
    font-weight: 400;
}

Table {
    table-layout: fixed;
}

/* --- Common Link --- */
A.link {
    color: var(--link);
    text-decoration: underline;
    width: max-content;
    transition: .3s;
}

A.link.inverse {
    color: var(--link-hover);
}

A.edit {
    font-size: 16px;
    color: var(--text);
    text-decoration: none;
    display: flex;
    align-items: center;
    min-height: 22px;
    transition: .3s;
}

A.edit .icon {
    fill: var(--text);
}

/* --- Arrows --- */
.has_arrow::before,
.has_arrow::after, .product_tabs A.link::before {
    content: '';
    width: 8px;
    height: 1px;
    border-radius: 2px;
    background: var(--link);
    position: absolute;
    top: 11px;
    right: 0;
    transform: rotate(-45deg);
    transition: .3s;
}

.product_tabs A.link::before {
    opacity:1;
    left:auto;
}

.has_arrow::after {
    top: 6px;
    transform: rotate(45deg);
}

.has_arrow.left::before {
    transform: rotate(45deg);
}

.has_arrow.left::after {
    transform: rotate(-45deg);
}

.has_arrow.bottom::before {
    top: 18px;
    right: 11px;
}

.has_arrow.bottom::after {
    top: 18px;
    right: 16px;
}

.has_arrow.bottom.open::before {
    transform: rotate(45deg);
}

.has_arrow.bottom.open::after {
    transform: rotate(-45deg);
}

.has_arrow.top::before {
    top: 18px;
    right: 16px;
}

.has_arrow.top::after {
    top: 18px;
    right: 11px;
}

/* --- Dropdown --- */
.dropdown {
    position: relative;
    border-radius: var(--border-radius);
    display: flex;
    background: var(--white);
    border: 1px solid var(--base-color-4);
    height: 44px;
    transition: .3s;
}

.dropdown.dropdown-open {
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    border-color: var(--sub-color);
    transition: .3s;
}

.dropdown .overflow {
    width: 100%;
    height: 100%;
    padding: 0 40px 0 0;
    background: transparent;
    position: relative;
}

.dropdown.dropdown-open .overflow {
    z-index: 10;
}

.dropdown Span {
    color: var(--text);
    font-size: 14px;
    line-height: 1.2;
    cursor: pointer;
    height: 100%;
    padding: 0 0 0 10px;
    overflow: hidden;
    display: flex;
    align-items: center;
    white-space: nowrap;
    z-index: 2;
}

.dropdown .overflow Input {
    border: none;
    height: 100%;
    width: 100%;
    padding: 0 0 0 8px;
}

.drop_arrow {
    font-size: 0;
    position: absolute;
    right: 0;
    top: 0;
    background: transparent;
    border: none;
    width: 40px;
    height: 100%;
    transition: .3s;
    cursor: pointer;
}

.drop_arrow::before,
.drop_arrow::after {
    content: "";
    width: 1px;
    height: 8px;
    background-color: var(--base-color-4);
    position: absolute;
    top: 50%;
    left: 50%;
    transform-origin: bottom;
    transition: 0.3s;
}

.drop_arrow::before {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.drop_arrow::after {
    transform: translate(-50%, -50%) rotate(45deg);
}

.dropdown-open .drop_arrow::before {
    transform-origin: top;
    transform: translate(-50%, -50%) rotate(45deg);
}

.dropdown-open .drop_arrow::after {
    transform-origin: top;
    transform: translate(-50%, -50%) rotate(-45deg);
}

.dropdown UL,
.autocomplete-suggestions {
    position: absolute;
    top: 34px;
    right: -1px;
    left: -1px;
    background: var(--white);
    border: 1px solid var(--border-color);
    border-radius: 0 0 var(--border-radius) var(--border-radius);
    box-shadow: 0 10px 10px rgba(0, 0, 0, .3);
    z-index: 12;
    margin: 0;
    border-top: none;
    overflow: auto;
    overflow-x: hidden;
    max-height: 400px;
    display: none;
    transition: .3s;
}


.autocomplete-suggestions {
    margin: -4px 0 0 0;
    padding-top: 4px;
    border-color: var(--sub-color);
}

.dropdown.dropdown-open UL {
    border-color: var(--sub-color);
    transition: .3s;
}

.dropdown UL LI {
    position: relative;
    background: none;
    width: 100%;
    border-top: 1px solid var(--border-color);
}

.dropdown UL LI:first-child,
.autocomplete-suggestion+.autocomplete-suggestion:first-child {
    border: none;
}

.autocomplete-suggestion+.autocomplete-suggestion {
    border-top: 1px solid var(--border-color);
    display: inline-block;
}

.dropdown UL LI A,
.autocomplete-suggestion {
    width: 100%;
    font-size: 14px;
    line-height: 1.2;
    text-decoration: none;
    color: var(--text);
    position: relative;
    display: flex;
    padding: 8px;
    cursor: pointer;
    transition: .3s;
}

.autocomplete-selected {
    background-color: var(--accent-color-1);
    color: var(--accent-color-3);
}

.dropdown UL LI A.selected {
    display: none;
}

.autocomplete-suggestion Strong {
    margin: 0 0 0 6px;
}

/* --- Slider for Price or Filters --- */
.noUi-target * {
    cursor: default;
}

.slider_properties {
    width: calc(100% - (var(--slider-handle-width) * 2));
    display: flex;
    position: relative;
}

.slider_properties::before {
    content: '';
    position: absolute;
    width: calc(100% + (var(--slider-handle-width) * 2));
    height: 3px;
    background: var(--border-color);
    border-radius: var(--border-radius);
    left: 0;
    top: 0;
}

.noUi-base {
    height: 3px;
    width: 100%;
    position: relative;
    max-width: 100%;
    left: var(--slider-handle-width);
    background: var(--border-color);
    border-radius: var(--border-radius);
    z-index: 1;
}

.noUi-handle {
    height: 20px;
    width: 20px;
    background: var(--btn-bg);
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 50%;
    cursor: pointer;

}

.noUi-handle-lower {
    left: var(--slider-handle-width-minus);
}

.noUi-origin {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 0;
    background: var(--btn-bg);
    height: 3px;
}

.noUi-origin+.noUi-origin {
    background: var(--border-color);
    z-index: 3;
}

/* --- Radiobutton --- */
.radio_wrap,
.check_wrap {
    padding: 8px 8px 8px 30px;
    margin: 0 0 8px 0;
    position: relative;
}

Input[type="radio"]:checked,
Input[type="radio"]:not(:checked),
Input[type="checkbox"],
Input[type="checkbox"]:not(:checked) {
    position: absolute;
    left: -9999px;
}

Input[type="radio"]:checked+Label,
Input[type="radio"]:not(:checked)+Label,
Input[type="checkbox"]:checked+Label,
Input[type="checkbox"]:not(:checked)+Label {
    position: relative;
    line-height: 1.2;
    cursor: pointer;
}

Input[type="radio"]:checked+Label::before,
Input[type="radio"]:not(:checked)+Label::before,
Input[type="checkbox"]:checked+Label::before,
Input[type="checkbox"]:not(:checked)+Label::before,
.check_item::before,
.radio_item::before {
    content: '';
    position: absolute;
    left: -30px;
    top: 0;
    width: 16px;
    height: 16px;
    border: 1px solid var(--base-color-4);
    background: var(--white);
    border-radius: 50%;
    transition: .3s;
}

Input[type="radio"]:checked+Label::before,
Input[type="checkbox"]:checked+Label::before,
.check_item.active::before,
.radio_item.active::before {
    background-color: var(--success);
    border-color: var(--success);
}

Input[type="radio"]:checked+Label::after,
Input[type="radio"]:not(:checked)+Label::after,
Input[type="checkbox"]:checked+Label::after,
Input[type="checkbox"]:not(:checked)+Label::after,
.check_item.active::after,
.radio_item.active::after {
    content: '';
    position: absolute;
    left: -26px;
    top: 4px;
    width: 8px;
    height: 4px;
    border-radius: 50%;
    background: transparent;
    border-bottom: 2px solid var(--base-color-1);
    border-left: 2px solid var(--base-color-1);
    transform: rotate(-45deg);
    border-radius: 0;
    opacity: 1;
    transition: .3s;
}

Input[type="radio"]:not(:checked)+Label::after,
Input[type="checkbox"]:not(:checked)+Label::after,
.check_item::after,
.radio_item::after {
    opacity: 0;
}

Input[type="radio"]:checked + Label::before {
    background-color: transparent;
}


Input[type="radio"]:not(:checked) + Label::after,
Input[type="radio"]:checked + Label::after {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    border: none;
    background-color: var(--success);
    left: -27px;
    top: 3px;
}

Input[type="radio"]:not(:checked) + Label::after {
    opacity: 0;
}

/* --- Radiobutton If <a href="#"></a> --- */
.radio_item,
.check_item {
    font-size: 14px;
    text-decoration: none;
    color: var(--text);
    display: inline-flex;
    padding: 0 0 0 32px;
    position: relative;
    transition: .3s;
}

.radio_item::before,
.check_item::before {
    left: 0;
    top: 6px;
}

.radio_item.active::after {
    left: 4px;
    top: 12px;
}

/* --- Checkbox --- */
Input[type="checkbox"]:checked+Label::before,
Input[type="checkbox"]:not(:checked)+Label::before,
.check_item::before {
    border-radius: 0;
}

Input[type="checkbox"]:checked+Label::after,
Input[type="checkbox"]:not(:checked)+Label::after,
.check_item.active::after {
    left: -26px;
    top: 5px;
}

/* --- Checkbox If <a href="#"></a> --- */
.check_item.active::after {
    left: 4px;
    top: 11px;
}

/* --- Slick Slider - Main styles --- */
.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
    width: 100%;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;
    min-height: 1px;
    outline: none;
}

[dir='rtl'] .slick-slide {
    float: right;
}

.slick-slide Img {
    display: block;
}

.slick-slide.slick-loading Img {
    display: none;
}

.slick-slide.dragging Img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

/* --- Main template styles --- */
/* --- If One Col --- */
.main_col {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}

/* --- Article Preview --- */
Article {
    font-size: 15px;
    line-height: 1.5;
    margin: 0 0 16px 0;
}

.article_close {
    display: none;
}

Article .article_text H1 {
    font-size: 24px;
    margin: 0 0 16px 0;
    font-weight: 600;
    line-height: 1.4;
}

Article .article_text H1:nth-child(1) {
    margin-top: 0;
}
 
Article .article_text H2 {
    font-size: 22px;
    margin: 14px 0 14px 0;
    font-weight: 600;
    line-height: 1.4;
}

Article .article_text H3 {
    font-size: 18px;
    margin: 12px 0 12px 0;
    font-weight: 400;
    line-height: 1.4;
}

Article .article_text H4 {
    font-size: 16px;
    margin: 8px 0 8px 0;
    font-weight: 400;
    line-height: 1.2;
}

Article P {
    margin: 0 0 16px 0;
}

Article P:last-child {
    margin: 0;
}

Article A {
    color: var(--link);
    transition: .3s;
}

Article UL {
    list-style: disc;
    margin: 0 0 16px 0;
    padding: 0 0 0 32px;
    display: flex;
    flex-direction: column;
}

Article OL {
    list-style: decimal;
    margin: 0 0 16px 0;
    padding: 0 0 0 32px;
    display: flex;
    flex-direction: column;
}

Article UL LI::marker,
Article OL LI::marker {
    color: var(--sub-color);
    font-size: 12px;
    font-weight: 700;
}

Article HR {
    background: var(--border-color);
    border: 0;
    height: 1px;
    margin: 0 0 16px 0;
}

Article Sub,
Article Sup {
    font-size: 10px;
}

Article Blockquote {
    font-style: italic;
    margin: 0 0 16px 20%;
    padding: 8px 0 8px 16px;
    border-left: 8px solid var(--sub-color);
    max-width: 60%;
}

Article Blockquote P {
    font-weight: 700;
    font-size: 16px;
    line-height: 28px;
}

Article Blockquote P:last-child {
    margin: 0;
}

Article Figure.table {
    min-width: 100%;
    margin: 0 0 16px 0;
}

Article .table Table {
    border-collapse: collapse;
    border-color: var(--site-bg);
    border-style: solid;
    width: 100%;
    overflow: hidden;
    table-layout: fixed;
}

Article .table Table TR:nth-child(odd) {
    background: var(--site-bg);
}

Article .table Table TR:nth-child(even) {
    background: var(--text-inverse);
}

Article .table Table TH {
    background: var(--main-color);
    color: var(--text-inverse);
    padding: 8px;
    text-align: left;
    border: none;
    word-wrap: break-word;
}

Article .table Table TD {
    border-right: 1px solid var(--site-bg);
    padding: 8px;
    text-align: left;
    word-wrap: break-word;
}

Article .table Table TR:nth-child(odd) TD {
    border-color: var(--text-inverse);
}

Article .image-inline {
    max-width: 100%;
    height: auto !important;
    opacity: 1 !important;
    min-width: 100%;
}

@media (max-width:760px) {
    Article Img {
        max-width: 100% !important;
        height: auto !important;
    }
}

Article Img:not([width], [height]) {
    width: auto;
    max-width: 100%;
    height: auto;
    object-fit: contain;
}

Article .image Img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
    min-width: 100%;
}

Article .image {
    display: table;
    clear: both;
    text-align: center;
    max-width: 100%;
    margin: 0 0 16px 0;
}

Article .image>figcaption {
    background-color: var(--text-inverse);
    caption-side: bottom;
    color: var(--main-color);
    display: table-caption;
    font-size: 12px;
    outline-offset: -1px;
    padding: 6px 12px;
    word-break: break-word;
}

Article .long_div.article_btn {
    margin: 16px 0;
}

Article A.has_arrow {
    position: relative;
    padding: 0 20px 0 0;
}

Article A.has_arrow.bottom::before,
Article A.has_arrow.bottom::after {
    top: 11px;
    right: 0;
}

Article A.has_arrow.top::before,
Article A.has_arrow.top::after {
    top: 10px;
    right: 5px;
}

Article A.has_arrow.bottom::after {
    right: 5px;
}

Article A.has_arrow.top::after {
    right: 0;
}

Article A.inverse.has_arrow::before,
Article A.inverse.has_arrow::after {
    background: var(--link-hover);
}

.article_place.seo {
    order: 33;
}

/* --- Input & Textarea - Common styles --- */
Input,
Select {
    height: 44px;
    border: none;
    border-radius: var(--border-radius);
    padding: 0 14px;
    outline: none;
}

Input[type=text],
Input[type=password],
Input[type=email],
Input[type=tel],
Input[type=number],
Textarea,
Select {
    border: 1px solid var(--base-color-4);
    transition: border 0.3s;
}

Input[type=text].error,
Input[type=password].error,
Input[type=email].error,
Input[type=tel].error,
Input[type=number].error,
Textarea.error {
    border: 1px solid var(--error) !important;
    background-image: url("../images/danger.png");
    background-size: 22px;
    background-repeat: no-repeat;
    background-position: calc(100% - 10px) 50%;
}

.password_box Input[type=password].error,
.password_box Input[type="text"].error {
    background: none;
}

Input[type=text]:focus,
Input[type=password]:focus,
Input[type=email]:focus,
Input[type=tel]:focus,
Input[type=number]:focus,
Textarea:focus,
Select:focus {
    border-color: var(--sub-color) !important;
    outline: 0;
    outline-offset: 0;
}

Textarea {
    padding: 6px 8px;
    resize: vertical;
    outline: none;
    border-radius: var(--border-radius);
    min-height: 120px;
}

Select {
    background-color: var(--white);
    cursor: pointer;
    padding-right: 32px;
    appearance: none;
    background-position: right 9px center;
    background-repeat: no-repeat, repeat;
    background-size: 14px 8px;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%238a8a8a' viewBox='0 0 13 7' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M6.5 7a.956.956 0 0 1-.657-.256l-5.57-5.25a.839.839 0 0 1 0-1.237.968.968 0 0 1 1.312 0L6.5 4.888 11.415.257a.968.968 0 0 1 1.313 0 .839.839 0 0 1 0 1.237l-5.572 5.25A.956.956 0 0 1 6.5 7Z'/%3E%3C/svg%3E");
}

/* --- Popup --- */
.popup {
    position: fixed;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    width: 100%;
    max-width: 480px;
    background: var(--white);
    padding: 16px;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    z-index: 13;
    box-shadow: 0 8px 30px rgba(0, 0, 0, .3);
    overflow: auto;
    max-height: calc(100% - 64px);
}

/* --- Preloader --- */
.popup.popup_ring {
    display: flex;
    justify-content: center;
    background: none;
    box-shadow: none;
}

/* --- To Wishlist or Compare - Popup --- */
.for_wish_product {
    display: flex;
    margin: 0 0 24px 0;
}

.wl_text {
    width: 100%;
    display: flex;
    flex-direction: column;
}

.wlt_tit {
    display: flex;
    margin: 0 0 8px 0;
}

.wlt_price {
    font-size: 18px;
    color: var(--orange);
}

.wlt_price Small {
    font-size: 15px;
}

.wishes_popup .row {
    display: flex;
    justify-content: center;
}

/* --- Rows & Hidden & Black - Common styles --- */
.hidden {
    display: none !important;
}

.black {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    background: var(--main-color-lighter);
    transition: 0.3s;
    z-index: 12;
}

.black.less {
    z-index: 10;
}

.black::before {
    content: '';
    width: 100%;
    height: 100%;
    background: transparent;
    position: absolute;
    top: 0;
    left: 0;
    transition: .3s;
    z-index: -1;
    backdrop-filter: blur(5px);
}

.long_div {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0 0 20px 0;
}

.long_div.error {
    font-size: 12px;
    line-height: 1.2;
    border-radius: var(--border-radius);
    padding: 14px 16px 14px 64px;
    color: var(--error);
    background: #f7e7ed url("../images/danger.png") no-repeat 20px 50%;
    background-size: 24px;
}

.long_div.center {
    text-align: center;
    justify-content: center;
}

.long_div.row {
    flex-direction: row;
}

.long_div Label {
    font-size: 14px;
    margin: 0 0 6px 0;
}

/* --- Title - Common styles --- */
.title_wrap {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 30px 0;
}

.main_title {
    font-weight: 700;
    font-size: 20px;
    line-height: 1.3;
    color: var(--text);
    display: flex;
    flex-wrap: wrap;
}

svg.icon {
    width: 20px;
    height: 20px;
    transition: .3s;
}

svg.icon.margin {
    margin: 0 6px 0 0;
}

svg.icon.margin.big {
    margin: 0 12px 0 0;
}

.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    width: max-content;
    background: var(--btn-bg);
    padding: 0 16px;
    border-radius: var(--border-radius);
    text-transform: uppercase;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.2;
    font-weight: 600;
    color: var(--text-inverse);
    text-align: center;
    cursor: pointer;
    position: relative;
    border: none;
    transition: .3s;
}

.btn.active,
.lor_col .together A.active,
.enter_form .together A.btn.active {
    background: var(--btn-bg-hover);
    color: var(--accent-color-3);
}

.btn.mini {
    font-size: 14px;
    padding: 0 8px;
    min-height: 28px;
}

.btn.big {
    font-size: 14px;
    min-height: 44px;
}

.btn.light {
    background: var(--sub-color-light);
    color: var(--text-light);
    border: 2px solid transparent;
}

.btn.inverse {
    background: var(--accent-color-1);
    color: var(--accent-color-3);
    border: 2px solid transparent;
}

.btn.light.inverse {
    background: var(--main-color-lighter);
    color: var(--site-bg);
    border: 2px solid transparent;
}

.btn .icon {
    width: 20px;
    height: 20px;
    fill: var(--white);
    transition: .3s;
}

.btn.inverse .icon {
    fill: var(--accent-color-3);
}

.btn.left {
    justify-content: flex-start;
}

.btn.disabled {
    opacity: .4;
    pointer-events: none;
}

.upper_info {
    display: block;
    width: 100%;
    height: auto;
}

.upper_info a {
    display: block;
    width: 100%;
    height: auto;
}

.upper_info picture {
    display: block;
    width: 100%;
    height: auto;
}

.upper_info img {
    display: block;
    width: 100%;
    height: auto;
}

/* --- Main HEADER --- */
.main_header {
    background: var(--main-color);
    padding: 10px 0;
    margin: 0 0 8px 0;
    z-index: 11;
    position: sticky;
    top: 0;
    box-shadow: 0 6px 16px rgba(0, 0, 0, .3);
}

.main_header .icon,
.main_header .svg_icon {
    width: 20px;
    height: 20px;
    fill: var(--white);
    transition: .3s;
    flex-shrink: 0;
}

.main_header .centre {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
}

/* --- main row --- */
.nav_panel {
    display: flex;
    align-items: center;
}

.logo_wrap {
    display: block;
    min-width: 116px;
    max-width: 116px;
    margin: 0 0 0 12px;
}

.logo_wrap Img {
    display: block;
    width: 100%;
    height: auto;
}

.catalog_btn {
    display: none;
    font-weight: 700;
}

.desktop .select_city {
    display: none;
}

/* --- main search panel --- */
.search_wrap {
    position: relative;
    width: 100%;
    margin: 12px 0 0 0;
    order: 1;
}

.search_wrap Input {
    background-color: var(--accent-color-5);
    font-size: 14px;
    width: 100%;
    padding: 0 75px 0 20px;
    height: 34px;
    border-color: var(--base-color-4);
    color: var(--base-color-1);
}

.search_wrap Input::placeholder {
    color: var(--base-color-4);
}

.search_wrap .icon.if_desktop {
    display: none;
}

.search_wrap A.clear {
    position: absolute;
    top: 0;
    right: 38px;
    width: 38px;
    height: 34px;
    border-left: 1px solid var(--base-color-4);
    opacity: 1;
    visibility: visible;
    transition: .3s;
}

.search_wrap A.clear.no_active {
    opacity: 0;
    visibility: hidden;
}

.search_wrap A.clear::before,
.search_wrap A.clear::after,
.search_popup A.cleare_this::before,
.search_popup A.cleare_this::after {
    content: '';
    width: 10px;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
    background: var(--text-light);
    transition: .3s;
}

.search_wrap A.clear::after,
.search_popup A.cleare_this::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.search_wrap .search_btn {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    transform: translateY(-50%);
    transition: .3s;
}

.main_header .search_btn .icon {
    fill: var(--accent-color-3);
    width: 20px;
    height: 20px;
}

.main_header .search_btn Span {
    display: none;
}

/* --- search popup --- */
.search_popup {
    position: absolute;
    top: calc(100% + 10px);
    left: 0;
    width: 100%;
    max-height: 500px;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    background: var(--white);
    opacity: 0;
    visibility: hidden;
    transition: .3s;
    border-radius: var(--border-radius);
    border-top: 1px solid var(--border-color);
}

.search_popup.active {
    opacity: 1;
    visibility: visible;
}

.search_popup UL {
    display: flex;
    flex-direction: column;
    padding: 8px 0;
}

.search_popup LI {
    display: flex;
    align-items: center;
    transition: .3s;
}

.search_popup LI.title {
    padding: 8px;
    font-size: 13px;
    color: var(--text-light);
    justify-content: space-between;
}

A.clear_history {
    text-decoration: none;
    color: var(--main-color-light);
    transition: .3s;
}

.search_popup A.one_result {
    padding: 8px;
    text-decoration: none;
    color: var(--gray-light);
    display: flex;
    align-items: center;
    width: 100%;
    transition: 0.3s;
}

.search_popup A.one_result.history {
    width: calc(100% - 34px);
}

.search_popup A.one_result Img {
    height: 42px;
    width: 42px;
    display: block;
    object-fit: contain;
    margin: -4px 8px -4px 0;
}

.search_popup .res_txt {
    overflow: hidden;
    text-overflow: ellipsis;
    width: 100%;
    text-wrap: nowrap;
    color: var(--text);
}

.search_popup .res_txt Span {
    font-weight: bold;
    color: var(--main-color-light);
}

.search_popup A.one_result.category {
    margin: 0;
}

.search_popup A.one_result.category .icon {
    width: 18px;
    height: 18px;
    fill: var(--icon-color-gray);
    margin: 0 8px 0 0;
}

.search_popup A.cleare_this {
    width: 34px;
    height: 34px;
    position: relative;
    opacity: 0;
    visibility: hidden;
    transition: .3s;
}

.search_popup A.cleare_this::before,
.search_popup A.cleare_this::after {
    top: 17px;
    left: 12px;
}

.popup.video_popup {
    max-width: 740px;
}

.popup.video_popup iframe {
    width: 100%;
    height: auto;
    aspect-ratio: 3 / 2;
}

.user_panel {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
}

.header_phones {
    display: none;
}

.btn_header {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 0 16px;
    width: 24px;
    height: 24px;
    border-radius: var(--border-radius);
    transition: .3s;
    position: relative;
    text-decoration: none;
}

.btn_header.scale,
.btn_header.heart {
    display: none;
}

.btn_menu.btn_header .icon {
    fill: var(--accent-color-3);
}

.btn_header.user {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 10px;
    color: var(--base-color-1);
    width: auto;
    height: 22px;
    padding: 0 12px;
    border-radius: 5px;
    border-radius: var(--border-radius);
    background-color: var(--accent-color-5);
}

.btn_header.user .icon {
    flex: 0 0 12px;
    display: block;
    margin-right: 10px;
    width: 12px;
    height: 12px;
}

.compare_counter,
.wish_counter,
.cart_counter,
.profile_counter {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--white);
    position: absolute;
    top: -7px;
    left: 15px;
    min-width: 18px;
    height: 18px;
    border-radius: 9px;
    font-size: 12px;
    background: var(--sub-color);
    padding: 2px;
}

.profile_counter {
    line-height: 1;
    min-width: 20px;
    height: 20px;
    border-radius: 10px;
    border: 1px solid var(--site-bg);
    margin-left: auto;
    position: relative;
    top: auto;
    left: auto;
}

.shopping_sum {
    display: none;
}

/* --- left user menu --- */
.menu_header {
    color: var(--base-color-2);
    position: fixed;
    bottom: 0;
    left: -100%;
    display: flex;
    flex-direction: column;
    height: var(--100vh);
    overflow: auto;
    width: 100%;
    background: var(--accent-color-6);
    z-index: 12;
    transition: .3s;
}

.menu_header.active {
    left: 0;
    transition: .3s;
}

.menu_header-top {
    display: flex;
    align-items: center;
    padding: 10px 15px 18px 15px;
    border-bottom: 1px solid var(--accent-color-5);
    position: sticky;
    top: 0;
    background-color: var(--accent-color-6);
    z-index: 1;
}

.close_menu {
    display: block;
    width: 24px;
    height: 24px;
    position: relative;
}

.close_menu::after,
.close_menu::before {
    content: '';
    width: 24px;
    height: 2px;
    border-radius: 2px;
    background: var(--accent-color-3);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(45deg);
    transition: .3s;
}

.close_menu::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.menu_header-top .logo_wrap {
    margin-right: auto;
}

.menu_header-top .menu_open-cart {
    font-size: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    position: relative;
}

.menu_header-top .menu_open-cart .shopping_sum {
    font-size: 0;
}

.menu_header-top .menu_open-cart .icon {
    fill: var(--base-color-1);
}

.menu_login-btn {
    text-decoration: none;
    text-transform: uppercase;
    font-size: 10px;
    color: var(--base-color-1);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 16px;
    height: 22px;
    padding: 0 12px;
    border-radius: var(--border-radius);
    background-color: var(--accent-color-5);
}

.menu_login-btn .icon {
    flex: 0 0 12px;
    display: block;
    margin-right: 10px;
    width: 12px;
    height: 12px;
}

.menu_cart-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    transition: .3s;
    position: relative;
    text-decoration: none;
}

.menu_cart-btn .icon {
    width: 20px;
    height: 20px;
    fill: var(--white);
    transition: .3s;
    flex-shrink: 0;
}

.contacts_menu-wrap {
    padding: 15px 16px 10px 16px;
    border-bottom: 1px solid var(--accent-color-5);
}

.contacts_menu-wrap .footer_phones {
    margin-bottom: 10px;
}

.contacts_menu-wrap .title {
    font-weight: 700;
    font-size: 16px;
    color: var(--accent-color-1);
    display: block;
    margin-bottom: 15px;
}

.contacts_menu-wrap .foo_mini_tit {
    font-size: 16px;
    margin-bottom: 15px;
    color: var(--accent-color-1);
}

.contacts_menu-wrap .footer_phones A {
    color: var(--base-color-4);
    margin-bottom: 15px;
}

.messenger_wrap A {
    text-decoration: none;
    color: var(--base-color-4);
    display: flex;
    align-items: center;
    margin-right: 0;
    margin-bottom: 10px;
    position: relative;
}

.messenger_wrap A I {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 15px;
    width: 45px;
    height: 45px;
    border-radius: 50%;
}

.messenger_wrap A.viber I {
    background-color: var(--viber);
}

.messenger_wrap A.viber {
    color: var(--base-color-4);
}

.messenger_wrap A.telegram I {
    background-color: var(--telegram);
}

.messenger_wrap A.telegram {
    color: var(--base-color-4);
}

.messenger_wrap A.whatsapp I {
    background-color: var(--whatsapp);
}

.messenger_wrap A.whatsapp {
    color: var(--base-color-4);
}

.messenger_wrap A.messenger I {
    background-color: var(--facebook);
}

.messenger_wrap A.messenger {
    color: var(--base-color-4);
}

.messenger_wrap A I .icon {
    fill: var(--base-color-1);
    width: 20px;
    height: 20px;
}

.messenger_wrap.desk {
    display: none;
}

.messenger_wrap.mob {
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 20px;
    order: 1;
}

.messenger_wrap.mob .foo_mini_tit {
    margin: 0 30px 0 0;
    width: auto;
}

.messenger_wrap.mob .col {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.messenger_wrap.mob A {
    font-size: 0;
    margin: 10px 20px 10px 0;
}

.messenger_wrap.mob A I {
    margin: 0;
    transition: 0.3s;
}

.footer_social-box {
    display: flex;
    flex-direction: column;
    order: 2;
}

.social_title {
    font-size: 16px;
    color: var(--base-color-1);
    margin-bottom: 15px;
}

.social_list {
    display: flex;
    flex-wrap: wrap;
}

.social_list a {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 20px 10px 0;
    width: 44px;
    height: 44px;
    border: 1px solid var(--accent-color-2);
    border-radius: 50%;
}

.social_list a .icon {
    fill: var(--base-color-2);
    width: 18px;
    height: 18px;
}

.contacts_menu-wrap .hw_text {
    color: var(--base-color-4)
}

.menu_header .icon,
.profile_menu UL .icon {
    width: 20px;
    height: 20px;
}

.profile_menu UL A {
    padding: 0 8px;
}

.top-menu_header {
    display: flex;
    flex-direction: column;
    padding: 23px 8px 8px 8px;
    background: var(--main-color);
    color: var(--text-inverse);
}

.catalog_menu-wrap {
    padding: 10px 16px;
    border-bottom: 1px solid var(--accent-color-5);
}


.menu_header .catalog_btn {
    text-decoration: none;
    font-size: 16px;
    line-height: 1.2;
    color: var(--accent-color-1);
    font-weight: 400;
    display: flex;
    align-items: center;
    padding: 10px 0;
    width: 100%;
}

.menu_header .catalog_btn .icon {
    margin-right: 15px;
    width: 24px;
    height: 24px;
    fill: var(--accent-color-1);
}

.profile_menu-wrap {
    padding: 10px 16px;
    border-bottom: 1px solid var(--accent-color-5);
}

.menu_logo {
    display: flex;
    margin: 0 0 16px 8px;
}

.menu_logo Img {
    width: 140px;
    height: auto;
}

.login_btn,
.user_menu a {
    text-decoration: none;
    font-size: 16px;
    line-height: 1.2;
    color: var(--accent-color-1);
    font-weight: 400;
    display: flex;
    align-items: center;
    padding: 10px 0;
    width: 100%;
}

.login_btn .icon,
.user_menu a .icon {
    fill: var(--accent-color-1);
    width: 24px;
    height: 24px;
    margin-right: 15px;
}

.user_menu a .col {
    display: flex;
    flex-direction: column;
}

.bottom_menu-wrap {
    padding: 10px 16px;
    border-bottom: 1px solid var(--accent-color-5);
}

.bottom_menu-wrap .menu_element {
    margin-bottom: 0;
    background-color: transparent;
    padding: 10px 0;
}

.bottom_menu-wrap .menu_element + .menu_element {
    margin-top: 5px;
}

.bottom_menu-wrap .footer_menu-titile {
    font-size: 16px;
    font-weight: 700;
    color: var(--accent-color-1);
    height: auto;
    padding: 0;
}

.bottom_menu-wrap .footer_menu-titile::before,
.bottom_menu-wrap .footer_menu-titile::after {
    
    display: none;
}

.bottom_menu-wrap ul {
    padding-top: 15px;
}

.bottom_menu-wrap ul li + li {
    margin-top: 15px;
}

.bottom_menu-wrap ul a {
    text-decoration: none;
    font-size: 16px;
    line-height: 1.2;
    color: var(--base-color-4);
    display: block;
}

.mob_menu-top {
    padding: 20px 16px;
    border-bottom: 1px solid var(--accent-color-5);
}

.mob_menu-top li + li {
    margin-top: 15px;
}

.mob_menu-top a {
    text-decoration: none;
    font-size: 16px;
    line-height: 1.2;
    color: var(--accent-color-1);
    display: block;
}


.user_info,
.profile_menu UL A.user_info {
    color: var(--text-inverse);
    text-decoration: none;
    font-size: 16px;
    line-height: 1.2;
    display: flex;
    flex-direction: column;
    padding: 10px 10px 10px 50px;
    position: relative;
    border-radius: var(--border-radius);
    align-items: flex-start;
    transition: .3s;
}

.profile_menu UL A.user_info {
    color: var(--main-color);
}

.user_info .icon {
    width: 24px;
    height: 24px;
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    fill: var(--accent-color-3);
}

.user_info .name {
    font-size: 14px;
    line-height: 1.2;
    font-weight: 700;
    margin-bottom: 5px;
}

.user_info .user_email {
    font-size: 14px;
    line-height: 1.2;
    color: var(--text);
    transition: .3s;
}

.profile_menu UL A.user_info.active .user_email {
    color: var(--main-color-light);
}

.bottom-menu_header {
    display: flex;
    flex-direction: column;
    padding: 8px 8px 16px 8px;
}

.bottom-menu_header .catalog_menu {
    border-bottom: 1px solid var(--border-color);
    padding: 0 0 8px 0;
    margin: 0 0 8px 0;
}

.bottom-menu_header LI,
.profile_menu UL A {
    margin: 0 0 1px 0;
}

.bottom-menu_header A,
.pm_items A {
    color: var(--link);
    background: none;
    width: 100%;
}

.profile_menu UL A.active {
    background: var(--main-color-lighter);
    color: var(--text-inverse);
}

.bottom-menu_header A .icon,
.profile_menu A .icon {
    fill: var(--link);
}

.profile_menu A.active .icon {
    fill: var(--white);
}

.for_select_city {
    border-bottom: 1px solid var(--border-color);
    padding: 0 0 8px 0;
    margin: 0 0 8px 0;
}

.bottom-menu_header .for_select_city LI {
    margin: 0;
}

.select_language {
    padding: 10px 16px;
    border-bottom: 1px solid var(--accent-color-5);
    display: flex;
    align-items: center;
    position: sticky;
    bottom: 0;
    background-color: var(--accent-color-6);
    border-top: 1px solid var(--accent-color-5);
    margin-top: -1px;
}

.select_language A {
    width: auto;
    margin: 0 0 0 8px;
}

.select_language A.active {
    color: var(--accent-color-1);
    background-color: transparent;
}


/* --- Main Slider --- */
.main_slider_container {
    margin: 0 auto var(--section-bottom) auto;
    padding: 0;
}

 .main_slider {width:calc(100% + var(--gap-mobile-twice)); margin:0 0 0 var(--gap-offset-mobile);}
    .main_slider_container .slick-list {padding-right:var(--gap-mobile); border-radius:var(--border-radius);}
        .main_slider_container.with_menu > UL {display:none;}
        .main_slider_item, .main_slider_item A, .main_slider_item Img {display:block; width:100%; height:auto; border-radius:var(--border-radius);}
        .main_slider_item {margin:0 0 0 var(--gap-mobile);}
        .main_slider:not(.slick-initialized) {display:flex; overflow:hidden; border-radius:var(--border-radius); width:calc(100% + var(--gap-mobile));}
            .main_slider:not(.slick-initialized) .main_slider_item {flex:0 0 calc((100% / var(--items-mob, 1)) - var(--gap-mobile)); max-width:calc((100% / var(--items-mob, 1)) - var(--gap-mobile));}
            .main_slider:not(.slick-initialized) .main_slider_item:nth-child(n+3) {display:none;}

.main_slider_container .slick-dots {
    position: absolute;
    bottom: 0;
    left: 0;
    justify-content: center;
    width: 100%;
    padding: 8px;
}

.slick-dots {
    display: flex;
    flex-wrap: wrap;
}

.slick-dots LI {
    display: flex;
    margin: 0 5px;
}

.slick-dots Button {
    font-size: 0;
    padding: 0;
    background: transparent;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    position: relative;
    cursor: pointer;
    border: none;
}

.slick-dots button::before {
    content: "";
    width: 10px;
    height: 10px;
    background: var(--base-color-1);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.slick-dots LI.slick-active Button::before {
    background: var(--accent-color-6);
}

/* --- Slider in Catalog --- */
.list_wrap .main_slider_container {
    margin: 0 0 16px 0;
}

/* --- LogIn & Registration --- */
.login_or_reg {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 0 var(--section-bottom) 0;
}

.login_or_reg .title_wrap {
    justify-content: center;
}

.login_or_reg .title_wrap .main_title {
    justify-content: center;
    margin: 0 0 12px 0;
    width: 100%;
}

.popup .login_or_reg .title_wrap {
    margin-bottom: 18px;
}

.popup .login_or_reg .title_wrap .main_title {
    text-align: center;
}

.popup .lor_col .title_wrap .together {
    margin: 12px auto 0 auto;
}

.lor_col {
    width: 100%;
    max-width: 520px;
    padding: 0 0 30px 0;
    position: relative;
}

.lor_col.signup {
    padding: 32px 0 0 0;
}

.lor_col.signup:nth-child(1) {
    padding: 0;
}

.lor_col.signup::before {
    width: 100%;
    height: 2px;
    background: var(--main-color);
    content: '';
    position: absolute;
    top: 0;
    left: 0;
}

.lor_col.signup:nth-child(1):before {
    display: none;
}

.lor_line {
    display: none;
    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);
    padding: 8px 16px;
    background: var(--site-bg);
    color: var(--main-color-light);
}

.lor_col .together {
    display: flex;
    margin: 0 0 0 16px;
}

.lor_col .together A:last-child {
    margin: 0 0 0 8px;
}

.lor_col .together A {
    background: var(--accent-color-3);
}

.lor_box {
    background: var(--white);
    padding: 16px;
    border-radius: var(--border-radius);
}

.login_or_reg .btn {
    width: 100%;
}

/* --- Email confirm --- */
.email_confirm {
    display: flex;
    flex-direction: column;
    margin: 32px auto;
    max-width: 740px;
}

.email_confirm .icon {
    display: flex;
    justify-content: center;
    margin: 0 0 32px 0;
}

.email_confirm .icon Span {
    width: 64px;
    height: 64px;
    border: 3px solid var(--error);
    border-radius: 50%;
    position: relative;
}

.email_confirm .icon.success Span {
    border-color: var(--btn-bg);
    display: flex;
    justify-content: center;
    align-items: center;
}

.email_confirm .icon.faild Span::before,
.email_confirm .icon.faild Span::after {
    content: '';
    background: var(--error);
    position: absolute;
    top: 14px;
    left: 29px;
    width: 3px;
    height: 32px;
    transform: rotate(45deg);
}

.email_confirm .icon.faild Span::after {
    transform: rotate(-45deg);
    left: 28px;
}

.email_confirm .icon.success Span::before {
    border: 3px solid var(--btn-bg);
    border-top: none;
    border-left: none;
    content: '';
    position: absolute;
    top: 9px;
    left: 22px;
    transform: rotate(45deg);
    width: 18px;
    height: 32px;
}

.ec_tit {
    margin: 0 0 24px 0;
    text-align: center;
    font-size: 24px;
    line-height: 32px;
}

.ec_description {
    margin: 0 0 32px 0;
    text-align: center;
    color: var(--text-light);
    line-height: 1.4;
}

.email_confirm .long_div {
    align-items: center;
}

/* --- PopUp for LogIn OR Registration --- */
.callback_popup.login_popup {
    padding: 16px 0 16px 16px;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.login_logo {
    background: var(--main-color);
    width: calc(100% + 16px);
    margin: -16px 0 0 -16px;
    padding: 16px;
    display: flex;
    flex-direction: column;
}

.login_popup .popup_close {
    top: 8px;
    right: 8px;
}

.login_popup .popup_close::before,
.login_popup .popup_close::after {
    background: var(--white);
}

.login_popup .reg_sms_popup .popup_close::before,
.login_popup .reg_sms_popup .popup_close::after {
    background: var(--main-color);
}

.login_logo Span {
    color: var(--text-inverse);
    margin: 16px 0 0 0;
    font-size: 24px;
}

.login_logo Span Span {
    display: none;
    margin: 0;
}

.login_logo Span Span.active {
    display: flex;
}

.login_popup .login_or_reg {
    overflow-y: auto;
    padding: 0 16px 0 0;
}

.login_popup .lor_col,
.login_popup .lor_col.signup {
    padding: 16px 0 0 0;
}

.login_popup .lor_col.signup::before,
.login_popup .lor_line {
    display: none;
}

.login_popup .lor_col.no_active {
    display: none;
}

.login_popup .lor_col .title_wrap {
    justify-content: flex-start;
}

.login_popup .lor_col .main_title {
    font-size: 18px;
    font-weight: 700;
    margin: 0;
}

.login_popup .lor_col.registration_tab .title_wrap {
    display: none;
}

.login_popup .lor_box {
    padding: 0;
    background: none;
}

.login_popup .reg_sms_popup {
    width: 100%;
    height: 100%;
    transform: none;
    top: 0;
    left: 0;
    position: absolute;
    max-height: unset;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* --- PopUp for SMS in LogIn OR Registration --- */
.callback_popup {
    width: calc(100% - 20px);
    max-width: 400px;
    padding: 32px;
}

.popup_close {
    width: 38px;
    height: 38px;
    background: transparent;
    border: none;
    cursor: pointer;
    position: absolute;
    top: 0;
    right: 0;
}

.popup_close::before,
.popup_close::after {
    content: "";
    width: 18px;
    height: 1px;
    background: var(--base-color-6);
    transition: .3s;
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 2px;
}

.popup_close::before {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.popup_close::after {
    transform: translate(-50%, -50%) rotate(45deg);
}

.email_popup .popup_close::before,
.email_popup .popup_close::after {
    background: var(--error);
}

.popup_title {
    font-size: 22px;
    line-height: 1.4;
    margin: 0 0 16px 0;
}

.popup_subtitle {
    font-size: 18px;
    line-height: 1.4;
    margin: 0 0 16px 0;
    text-align: center;
}

.popup_subtitle Span {
    font-weight: 700;
    color: var(--main-color-lighter);
}

.long_div.sms_field {
    align-items: center;
    margin: 32px 0;
}

.sms_field Input {
    font-size: 36px;
    text-align: center;
    margin: 4px 0 0 0;
    width: 100px;
    color: var(--main-color);
    height: 50px;
}

.sms_field Input[type="text"].error {
    background: none;
}

.popup .close_sms_form {
    color: var(--link);
    margin: 0 0 20px 0;
    transition: .3s;
}

.repeat_sms A {
    color: var(--orange);
    transition: .3s;
}

.repeat_sms A.disabled {
    text-decoration: none;
    pointer-events: none;
    color: var(--main-color-lighter);
}

.repeat_sms A.disabled Span {
    color: var(--orange);
}

.callback_popup .long_div.row {
    margin: 0 0 8px 0;
}

/* --- Cart --- */
.header_cart {
    position: fixed;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    background: var(--white);
    z-index: 13;
    width: 100%;
    max-width: 900px;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    display: none;
    flex-direction: column;
    padding: 36px 16px 16px 16px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, .3);
    max-height: calc(100% - 10%);
    overflow: hidden;
}

.header_cart.active {
    display: flex;
}

.scroll_shadow {
    display: block;
    width: 100%;
    height: 20px;
    flex: 0 0 20px;
    background: linear-gradient(0deg, rgba(255,255,255,0) 0%, rgba(0,0,0,0.2) 100%);
    z-index: 2;
    transition: 0.3s;
    pointer-events: none;
    opacity: 0;
}

.scroll_shadow.active {
    opacity: 1;
}

.scroll_shadow.top {
    margin-bottom: -20px;
}

.scroll_shadow.bottom {
    margin-top: -20px;
    transform: rotate(180deg);
}

.scroll_box {
    display: flex;
    flex-direction: column;
    overflow-x: hidden;
    overflow-y: auto;
    width: 100%;
    height: 100%;
}
.cart_box {
    display:flex;
    flex-direction:column;
    overflow:auto;
    width: calc(100% + 32px);
    margin: 0 0 0 -16px;
    padding: 0 16px;
    position:relative;
}

.info_cart-top p {
    font-size: 14px;
    line-height: 1.2;
    display: inline-block;
    margin-bottom: 6px;
    padding: 4px 8px;
    width: 100%;
    border: 1px solid var(--accent-color-3);
    border-radius: var(--border-radius);
}

.info_cart-top.error p {
    border-color: var(--additional-color-2);
}

.info_cart-top.inform p {
    border-color: var(--additional-color-4);
}


.comment_popup .scroll_shadow {
    width: calc(100% + 32px);
    margin-left: -16px;
}

.cart_window .scroll_shadow {

}

.comment_popup .scroll_box {
    width: calc(100% + 32px);
    margin-left: -16px;
    padding: 0 16px;
}

.cart_window .scroll_box {
    overflow:unset;
    width:100%;
}

.cart_window .title_wrap {
    margin-bottom: 10px;
}

.added_goods {
    display: flex;
    padding: 16px 8px 0 0;
    border-top: 1px solid var(--border-color);
    margin: 0 0 16px 0;
    position: relative;
}

.cart_kit .added_goods {
    border: none;
    padding: 16px 0 0 0;
}

.added_goods:first-child {
    border: none;
}

.product_body {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.added_goods_ignore .product_body {
    flex-direction: column;
    justify-content: space-between;
}

A.delete_product {
    position: absolute;
    top: 14px;
    right: 0;
    width: 24px;
    height: 24px;
}

A.delete_product .icon {
    top: 2px;
    left: 3px;
    width: 18px;
    height: 18px;
    fill: var(--icon-color-gray);
    position: relative;
    transition: .3s;
}

.ag_photo {
    display: flex;
    margin: 0 15px 50px 0;
    flex-shrink: 0;
    width: 100px;
    height: auto;
    position: relative;
    align-items: flex-start;
}

.ag_photo Img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    aspect-ratio: 12 / 10;
    border: 1px solid var(--base-color-3);
    border-radius: var(--border-radius);
}

.ag_photo Span {
    position: absolute;
    top: -8px;
    left: -4px;
    margin: 0;
    background: var(--error);
    display: flex;
    width: max-content;
    padding: 2px 6px;
    font-size: 10px;
    line-height: 1.2;
    text-transform: uppercase;
    color: var(--text-inverse);
    border-radius: 3px;
}

.ag_photo .if_gift {
    padding: 4px;
}

.ag_photo .if_gift .icon {
    fill: var(--white);
}

.item_text {
    display: flex;
    flex-direction: column;
    margin: 0 0 14px 0;
}

.it_title {
    display: flex;
    margin: 0 32px 8px 0;
}

A.item_link {
    font-size: 12px;
    line-height: 1.4;
    color: var(--text);
    text-decoration: none;
    transition: .3s;
}

.item_code {
    font-size: 13px;
    line-height: 1.2;
    color: var(--gray);
    width: 100%;
    margin: 0 0 2px 0;
    display: flex;
    align-items: center;
}

.item_code.orange {
    color: var(--orange);
}

.added_goods .item_code {
    font-size: 12px;
    margin-bottom: 5px;
}

.bottom_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: auto;
}

.product_body .bottom_wrap .price_box {
    margin-left: auto;
}

.product_body .bottom_wrap .price_box.one_item {
    margin-left: -115px;
}

.product_body .bottom_wrap .price_box .total_sum {
    font-size: 26px;
}

.counter_panel {
    display: flex;
    width: max-content;
    margin: 0 16px 0 0;
    height: 34px;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
    position: absolute;
    bottom: 0;
    left: 0;
}

.added_goods_ignore .counter_panel {
    border: none;
}

.counter_panel A {
    font-size: 0;
    width: 28px;
    height: 100%;
    position: relative;
    transition: .3s;
}

.counter_panel A::before,
.counter_panel A.plus::after {
    content: '';
    width: 8px;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--base-color-4);
}

.counter_panel A.plus::after {
    transform: translate(-50%, -50%) rotate(-90deg);
}

.counter_panel Input {
    font-size: 16px;
    width: 42px;
    height: 100%;
    padding: 0;
    text-align: center;
    background: transparent;
    border-color: transparent;
}

.price_box {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.price_box.one_item {
    flex-direction: row;
    align-items: baseline;
}

.price_box.one_item .more {
    font-size: 13px;
    color: var(--gray);
    margin: 0 0 0 6px;
}

.added_goods_ignore .price_box {
    flex-direction: row;
    width: 100%;
    justify-content: flex-end;
}

.total_sum {
    font-size: 18px;
}

.total_sum Small,
.mw_total .discount Small {
    font-size: 15px;
}

.total_sum_old {
    color: var(--base-color-5);
    position: relative;
    width: max-content;
    font-size: 14px;
}

.total_sum_old Small {
    font-size: 12px;
}

.total_sum_old::before {
    content: '';
    width: 100%;
    height: 1px;
    background: var(--base-color-5);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.cart_kit {
    border: 1px solid var(--orange);
    border-radius: var(--border-radius);
    padding: 8px;
    margin: 0 0 16px 0;
}

.cart_kit .tit {
    color: var(--orange);
    font-size: 16px;
}

.agi_together {
    display: flex;
    flex-direction: column;
}

.cart_kit .added_goods_ignore {
    padding: 38px 0 8px 8px;
    margin: 0;
}

.cart_kit .added_goods_ignore::before,
.cart_kit .added_goods_ignore::after {
    content: '';
    position: absolute;
    top: 16px;
    left: 50%;
    transform: translateX(-50%) rotate(0deg);
    width: 16px;
    height: 4px;
    border-radius: 4px;
    background: var(--orange);
}

.cart_kit .added_goods_ignore::after {
    transform: translateX(-50%) rotate(90deg);
}

.cart_kit .added_goods_ignore .total_sum {
    margin: 0 0 0 16px;
}

.kit_sum {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: last baseline;
    border-top: 1px solid var(--border-color);
    padding: 8px 0 0 0;
}

.kit_sum .total_sum {
    margin: 0 0 0 16px;
}

.empty_cart {
    font-size: 28px;
    line-height: 1.2;
    display: flex;
    color: var(--main-color-light);
}

.empty_cart .icon {
    margin: 0 16px 0 0;
    width: 28px;
    height: 28px;
    fill: var(--main-color-light);
}

.all_sums {
    display: flex;
    flex-direction: column;
    position: sticky;
    background:var(--white);
    bottom:0;
}

.all_sum,
.mw_total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    margin: 15px 0 8px;
}

.all_sum Span,
.all_sum Small {
    font-size: 20px;
    line-height: 1.4;
}

.all_sum Small {
    font-size: 20px;
    margin: 0 0 0 4px;
}

.mw_total {
    font-weight: 400;
    margin: 0 0 8px 0;
}

.mw_total .title {
    color: var(--base-color-4);
}

.mw_total .discount {
    font-weight: 700;
    color: var(--success);
    font-size: 16px;
}

.mw_total .discount small {
    font-size: inherit;
}

.cart_btn-wrap {
    display: flex;
    flex-direction: column-reverse;
}

.cart_btn-wrap {
    padding-top: 12px;
}

.cart_btn-wrap A.btn {
    width: 100%;
    margin: 10px 0 0 0;
}

/* --- Catalog Button --- */
.btn_catalog {
    font-size: 16px;
    line-height: 24px;
    font-weight: 700;
    text-decoration: none;
    text-transform: uppercase;
    color: var(--text-inverse);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 38px;
    background-color: var(--main-color);
    border-radius: 4px;
}

.btn_catalog svg {
    margin-right: 18px;
}

/* --- Catalog Menu - base styles --- */
.menu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    margin: 0;
    width: 100%;
    height: 100%;
    z-index: 12;
    background: var(--site-bg);
    overflow: auto;
}

.menu.active {
    display: flex;
    flex-direction: column;
    height: var(--100vh);
    overflow: hidden;
}

.menu_head {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    width: 100%;
    padding: 2px 8px;
    background: var(--main-color);
}

.menu_close {
    position: relative;
    z-index: 2;
}

.menu_close.popup_close::before,
.menu_close.popup_close::after {
    background: var(--white);
    width: 24px;
}

/* --- Main Level - Catalog Menu --- */
.main_aside .left_menu {
    display: none;
}

.main_aside .profile_menu {
    display: none;
}

.menu UL {
    width: 100%;
    height: 100%;
    overflow-y: auto;
    padding: 8px;
}

.menu UL LI {
    width: 100%;
    margin: 1px 0 0 0;
}

.menu UL LI:first-child {
    margin: 0;
}

.menu LI A,
.main_slider_container.with_menu LI A,
.main_aside .left_menu A {
    color: var(--text);
    font-size: 15px;
    line-height: 1.2;
    text-decoration: none;
    display: flex;
    align-items: center;
    min-height: 42px;
    padding: 6px 30px 6px 16px;
    position: relative;
    transition: .3s;
    border-radius: var(--border-radius);
}

.menu LI A.active,
.main_slider_container.with_menu LI A.active {
    background: var(--main-color-light);
    color: var(--text-inverse);
    transition: .3s;
}

.menu LI UL LI A.active {
    background-color: var(--accent-color-3);
}

.menu LI A.active img {
    filter: brightness(2);
}

.menu A.has_arrow::before,
.menu A.has_arrow::after {
    right: 16px;
    top: 22px;
    background: var(--main-color);
}

.menu A.has_arrow::after {
    top: 17px;
}

.menu A.has_arrow.active::before,
.menu A.has_arrow.active::after {
    background: var(--text-inverse);
}

.main_aside .left_menu A img {
    flex: 0 0 24px;
    display: block;
    margin-right: 16px;
    width: 24px;
    height: 24px;
}

.menu LI A Img,
.main_slider_container.with_menu LI A Img {
    display: block;
    margin: 0 12px 0 0;
    width: 18px;
    opacity: .7;
    transition: .3s;
}

.main_header .menu A svg {
    fill: var(--main-color);
    width: 18px;
    height: 18px;
    margin: 0 12px 0 0;
    transition: .3s;
}

.main_header .menu A.active svg {
    fill: var(--text-inverse);
}

/* --- Deep Levels - Catalog Menu --- */
.menu .next_level {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: calc(-100% - 20px);
    background: var(--white);
    z-index: 1;
    box-shadow: 0 8px 10px rgba(0, 0, 0, .3);
    transition: .3s;
}

.menu .next_level.active {
    left: 0;
}

.menu A.btn_back {
    color: var(--text-inverse);
    background: var(--main-color);
    padding: 12px 30px 12px 32px;
    border-radius: unset;
}

.menu A.btn_back.has_arrow::before,
.menu A.btn_back.has_arrow::after {
    right: auto;
    left: 16px;
    top: 17px;
    background: var(--text-inverse);
}

.menu A.btn_back.has_arrow::after {
    top: 22px;
}

/* --- Categories --- */
.category {
    margin-bottom: var(--section-bottom);
}

.category .title_wrap {
    margin-bottom: 20px;
}

.category .main_title {
    font-size: 20px;
}

/* --- Tiles - Category --- */
.category_list {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: -16px;
}

.one_cat {
    display: flex;
    align-items: center;
    background: var(--white);
    padding: 10px 8px;
    flex: 0 0 calc((100% / 2) - (10px / 2));
    max-width: calc((100% / 2) - (10px / 2));
    margin: 0 0 10px 0;
    text-decoration: none;
    border-radius: var(--border-radius);
    box-shadow: var(--shadow-active);
    transition: .3s;
}

.one_cat:nth-child(2n + 1) {
    margin-right: 10px;
}

.category_image {
    flex: 0 0 20px;
    display: flex;
    align-items: center;
    width: 20px;
    height: 20px;
    margin: 0 10px 0 0;
}

.category_image Img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
    aspect-ratio: 1 / 1
}

.cat_title {
    text-transform: uppercase;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    color: var(--text);
    text-decoration: none;
    transition: .3s;
    flex: 1 1 auto;
}

/* --- Rows - Category --- */
.row_list .category_list {
    margin: 0;
}

.row_list .one_cat {
    margin: 0 0 8px 0;
    width: 100%;
    flex-direction: row;
}

.row_list .category_image {
    margin: 0 16px 0 0;
    width: 40%;
}

.row_list .cat_title {
    width: 100%;
    justify-content: flex-start;
}

/* --- List - Category --- */
.list_info .category_list {
    margin: 0;
}

.list_info .one_cat {
    margin: 0 0 8px 0;
    width: 100%;
}

.list_info .category_image {
    margin: 0 0 12px 0;
}

.list_info .cat_title {
    width: 100%;
    justify-content: flex-start;
    font-size: 18px;
}

.list_info UL {
    width: 100%;
    margin: 12px 0 0 0;
}

.category_list UL A {
    display: flex;
    padding: 6px 32px 6px 8px;
    color: var(--text);
    text-decoration: none;
    margin: 0 0 4px 0;
    background: var(--site-bg);
    position: relative;
    transition: .3s;
}

.category_list UL A::before,
.category_list UL A::after {
    right: 12px;
}

/* --- Category catalog --- */

body:not(.is_main-page) .category_list {
    margin-bottom: 40px;
}

body:not(.is_main-page) .cat_title {
    text-align: center;
}

body:not(.is_main-page) .category_image {
    display: none;
}


/* --- Store window Slider --- */
.product_slider {
    margin-bottom: var(--section-bottom);
}

.details_product .product_slider {
    width: calc(100% + 16px);
    margin-left: -8px;
}

.product_slider .title_wrap {
    justify-content: flex-start;
    position: relative;
    z-index: 1;
    align-items: baseline;
}

.title_wrap .main_title {
    margin: 0 0 0 0;
}

.title_wrap .main_title.no_margin {
    margin: 0;
}

.title_wrap .link, .product_tabs A.link {
    position: relative;
    margin-left: 35px;
    padding: 0 16px 0 0;
    font-size:14px;
}

.product_tabs A.link {
    margin: 0;
    text-decoration: underline;
    color: var(--link);
    height: max-content;
}

.product_tabs A.link:hover {
    color: var(--link-hover);
}

.product_slider .product_tabs {
    position: relative;
    top: 0;
    z-index: unset;
    align-items:baseline;
}

.product_slider .product_tabs A {
    z-index: 2;
}

.product_slider .product_inner {
    display: flex;
    width: calc(100% + 16px);
    margin-right: -16px;
    overflow: hidden;
}

.product_slider .product_inner .slick-track {
    display: flex;
}

.product_slider .product_inner:not(.slick-initialized) {
    display: flex;
    overflow: hidden;
}

.product_slider .product_inner.slick-initialized {
    padding-bottom: 50px;
}

.product_slider .product_inner:not(.slick-initialized) .one_good {
    flex: 0 0 165px;
}

.product_slider .one_good {
    flex: 0 0 165px;
}

.product_slider .product_grid .one_good {
    flex: 0 1 auto;
}

.slick-arrow {
    z-index: 1;
    font-size: 0;
    background: var(--accent-color-1);
    border-radius: var(--border-radius);
    padding: 0;
    width: 34px;
    height: 34px;
    position: absolute;
    cursor: pointer;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    border: none;
    transition: .3s;
}

.slick-arrow.slick-next {
    left: auto !important;
    right: 0;
}

.slick-arrow.slick-prev {
    transform: translateY(-50%) rotate(180deg);
}

.slick-arrow::before,
.slick-arrow::after {
    content: "";
    width: 8px;
    height: 1px;
    background-color: var(--accent-color-3);
    position: absolute;
    top: 50%;
    left: 50%;
    transform-origin: right;
}

.slick-arrow::before {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.slick-arrow::after {
    transform: translate(-50%, -50%) rotate(45deg);
}


.product_inner .slick-arrow {
    bottom: 0;
    top: auto;
    transform: none;
}

.product_inner .slick-arrow.slick-prev {
    transform: rotate(180deg);
}


.product_inner .slick-arrow.slick-arrow.slick-next {
    right: 16px;
}


.see_all_if_many {
    display: flex;
    margin: 20px 0 0 0;
}

.see_all_if_many A.btn {
    width: 100%;
}

.see_all_if_many A.btn .icon {
    width: 16px;
    height: 16px;
    margin-left: 10px;
}

/* --- Last viewed on Main page - if Grid --- */
.product_grid {
    display: flex;
    flex-direction: column;
}

.product_grid UL {
    display: flex;
    flex-wrap: wrap;
}

.product_grid LI:nth-child(3),
.product_grid LI:nth-child(4),
.product_grid LI:nth-child(5),
.product_grid LI:nth-child(6) {
    display: none;
}

.product_grid .all LI:nth-child(3),
.product_grid .all LI:nth-child(4),
.product_grid .all LI:nth-child(5),
.product_grid .all LI:nth-child(6) {
    display: block;
}

/* --- Product - One Item --- */
.product_wrap {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

.products_not_found {
    font-size: 18px;
    padding: 64px;
}

.one_good {
    display: flex;
    flex-direction: column;
    padding: 10px;
    background: var(--white);
    width: 50%;
    border: 1px solid var(--base-color-3);
    box-shadow: var(--shadow-not-active);
    transition: 0.3s;
}

.og_inner {
    display: flex;
    flex-direction: column;
    position: relative;
    justify-content: space-between;
    height: 100%;
}

/* --- Status - Product --- */
.one_good .status_list,
.big_slider .status_list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
}

.big_slider .status_list {
    top: 0;
    left: 60px;
}

.one_good .status_images-list {
    right: auto;
    top: auto;
    bottom: 0;
    left: 0;
    z-index: 1;
}

.one_good .status_images-list .status_image {
    max-width: 62px;
    margin: 6px 0 0 0;
}

.one_good .status_images-list .status_image img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: unset;
    position: relative;
    transform: none;
    top: auto;
    left: auto;
}

.one_good .status_list Span,
.big_slider .status_list Span {
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
    text-transform: uppercase;
    display: flex;
    padding: 3px 6px;
    border-radius: 9px;
    margin: 0 0 5px 0;
}
.list.one_good .status_list Span {margin-right:6px;}

.one_good .status_list Span.sale_percent,
.big_slider .status_list Span.sale_percent {
    background: var(--error);
    color: var(--white);
}

/* .one_good .status_images-list .status_image, */
.unavailability.one_good .status_list Span,
.unavailability .big_slider .status_list Span {
    opacity: .4;
}

/* --- Wish & Compare - Product --- */
.add_in-list {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1;
}

.add_in-list A,
.add_in-list .check_wrap {
    display: flex;
    width: 32px;
    height: 32px;
    border-radius: var(--border-radius);
    background: #FFFFFFB2;
    align-items: center;
    justify-content: center;
    margin: 0 0 5px 0;
    position: relative;
    transition: .3s;
}

.add_in-list A .icon {
    width: 18px;
    height: 18px;
    fill: var(--base-color-5);
    transition: .3s;
}

.add_in-list A.active .icon {
    fill: var(--btn-bg);
}

.add_in-list A.wishes .icon.active,
.add_in-list A.wishes.active .icon {
    display: none;
}

.add_in-list A.wishes.active .icon.active {
    display: flex;
    fill: var(--error);
}

.photo_and_name {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
}

/* --- Photo - Product --- */
.one_good .photo_wrap {
    position: relative;
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    margin: 0 0 6px 0;
    overflow: hidden;
}

.one_good .photo_wrap Img {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.unavailability.one_good .photo_wrap Img {
    opacity: .4;
}

/* --- Name - Product --- */
.one_good .product_name {
    display: flex;
    text-decoration: none;
    margin: 0 0 6px 0;
}

.one_good .product_name Span {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.4;
    height: 58px;
    color: var(--text);
    width: 100%;
    overflow: hidden;
    transition: .3s;
}

.unavailability.one_good .product_name Span {
    opacity: .4;
}

.one_good .product_name.long Span {
    height: unset;
    overflow: visible;
}

/* --- Rating - Product --- */
.product_raiting {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 0 12px 0;
}

.product_raiting .stars {
    display: flex;
    margin: 0 6px 0 0;
}

.product_raiting .icon {
    width: 14px;
    height: 14px;
    fill: var(--accent-color-1);
    margin: 0 1px 0 0;
}

.product_raiting .icon.active {
    fill: var(--orange);
}

.product_raiting A {
    font-size: 10px;
    color: var(--main-color-light);
    text-decoration: none;
    align-items: center;
    display: flex;
    transition: .3s;
    margin-top: 2px;
}

.product_raiting A .icon {
    fill: var(--main-color-light);
    transition: .3s;
}


/* --- Prices - Product --- */
.price_product {
    display: flex;
    align-items: flex-end;
}

.one_good .price_wrap {
    display: flex;
    flex-direction: column;
    z-index: 2;
    position: relative;
    flex: 1 1 auto;
}

.unavailability.one_good .price_wrap {
    opacity: .4;
}

.one_good .old_price {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    color: var(--base-color-5);
    font-size: 12px;
    margin-bottom: 2px;
}

.one_good .op_main {
    margin: 0 8px 0 0;
}

.one_good .op_main Span {
    position: relative;
}

.one_good .op_main Span::before {
    content: '';
    width: 100%;
    height: 1px;
    background: var(--base-color-5);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.one_good .op_main small {
    display: none;
}

.one_good .op_benefit {
    font-weight: 700;
    font-size: 10px;
    line-height: 1;
    background: var(--error);
    color: var(--text-inverse);
    padding: 3px 6px;
    border-radius: 4px 8px 8px 4px;
}

.one_good .can_buy {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap:wrap;
}

.one_good .main_price {
    font-size: 20px;
    line-height: 26px;
}

.catalog_grid .one_good .main_price, .product_slider .one_good .main_price {
    width:100%;
    margin:0;
}

.one_good .main_price.active {
    color: var(--error);
}

.one_good .main_price Small {
    font-size: 18px;
}

.one_good .to_details {
    display: none;
    font-size: 10px;
    text-decoration: none;
    transition: 0.3s;
}

.can_buy .btn {
    display: flex;
}

.can_buy .btn.to_cart,
.can_buy .btn.in_cart,
.can_buy .btn.to_details {
    min-height: unset;
    height: 32px;
    min-width: 32px;
    padding: 0;
}

.can_buy .btn.to_details {
    min-height: unset;
    height: 32px;
    width: auto;
    padding: 0 8px;
}

.price_product .btn {
    padding: 0;
    width: 34px;
    height: 34px;
}

.price_product .btn .icon {
    width: 16px;
    height: 16px;
}

.btn.in_cart::before {
    content: '';
    width: 22px;
    height: 22px;
    background: var(--btn-bg);
    border: 2px solid var(--white);
    position: absolute;
    top: -6px;
    right: -6px;
    border-radius: 50%;
    transition: .3s;
}

.btn.in_cart::after {
    content: '';
    width: 10px;
    height: 6px;
    border-bottom: 2px solid var(--white);
    border-left: 2px solid var(--white);
    position: absolute;
    top: 0px;
    right: -1px;
    border-radius: 1px;
    transform: rotate(-45deg);
    transition: 0.3s;
}

.product_wrap.catalog_grid .product_counter {
    height:34px;
    margin-top: 8px;
}

.one_good .not_available {
    display: flex;
    font-size: 12px;
    height: 14px;
    color: var(--gray);
    margin-top: 6px;
}

/* --- If MINI Product --- */
.products_mini .one_good .status_list,
.products_mini .add_in-list A.compare,
.products_mini .product_raiting,
.products_mini .can_buy .btn,
.products_mini .one_good .op_benefit {
    display: none;
}

.products_mini .product_grid LI:nth-child(7),
.products_mini .product_grid LI:nth-child(8) {
    display: none;
}

.products_mini .product_grid .all LI:nth-child(7),
.products_mini .product_grid .all LI:nth-child(8) {
    display: block;
}

/* --- CATALOG list --- */
.catalog_list {
    margin-bottom: 32px;
}

.catalog_list .title_wrap {
    margin: 0 0 8px 0;
}

.catalog_list .title_wrap .main_title {
    margin: 0;
    flex-direction: column;
}

.author_article {
    display: flex;
    flex-direction: column;
    padding: 15px;
    margin: 0 -15px 30px -15px;
    background-color: var(--base-color-1);
}

.author_article > .col:nth-child(1) {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}

.author_article .author_photo {
    flex: 0 0 100px;
    display: block;
    margin-right: 15px;
    width: 100px;
    height: auto;
}

.author_article .author_photo img {
    display: block;
    width: 100%;
    height: auto;
}

.author_article .author_name {
    flex: 1 1 auto;
    font-size: 20px;
    font-weight: 600;
}

.author_text {
    max-height: 330px;
    margin-bottom: 0;
    overflow: hidden;
    position: relative;
}

.author_text.full {
    max-height: unset;
}

.author_text.shadow::before {
    content: "";
    width: 100%;
    height: 20px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--base-color-1) 100%);
}

.author_text.shadow.full::before {
    opacity: 0;
    visibility: hidden;
}

.author_article > .col:nth-child(2) h1.name {
    display: none;
}

.read_more-btn {
    color: var(--accent-color-3);
    font-size: 14px;
    display: block;
    margin-top: 20px;
    width: max-content;
    padding: 0 16px 0 0;
    background-color: transparent;
    border: none;
    position: relative;
    cursor: pointer;
    transition: 0.3s;
}

.read_more-btn::before,
.read_more-btn::after {
    content: "";
    width: 8px;
    height: 1px;
    background-color: var(--accent-color-3);
    position: absolute;
    top: 50%;
    right: 0;
    transform-origin: right;
    transition: 0.3s;
}

.read_more-btn::after {
    transform: translateY(-50%) rotate(45deg);
}

.read_more-btn::before {
    transform: translateY(-50%) rotate(-45deg);
}

.catalog_list .search_title {
    margin: 0 16px 0 0;
}

.catalog_list .search_title Span {
    color: var(--orange);
}

.search_title_results {
    font-size: 14px;
    color: var(--text-light);
    margin: 8px 0;
}

.control_products {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    flex-wrap: wrap;
    margin: 0 0 8px -8px;
    z-index: 5;
    background: var(--site-bg);
    padding: 8px;
    width: calc(100% + 16px);
}

.filters_title-desk {
    display: none;
}

.control_products .selected_filters {
    display: none;
}

.btn.open_menu-filter {
    width: calc(50% - 5px);
    margin-right: auto;
}

.open_menu-filter b {
    font-size: 8px;
    font-weight: 400;
    line-height: 1.2;
    color: var(--base-color-1);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 6px;
    padding: 1px 4px 0 4px;
    min-width: 14px;
    height: 14px;
    border-radius: 7px;
    background: var(--accent-color-6);
}

.chatalog_tempates {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 10px 0;
    order: -1;
}

.control_products .dropdown.catalog_per_page {
    flex: 0 0 86px;
    margin: 0 0 10px calc(100% - 166px);
    order: -2;
}

.control_products .dropdown.catalog_per_page .overflow span {
    text-align: center;
    justify-content: center;
}

.btn.btn_template {
    padding: 0;
    width: 34px;
    height: 34px;
    margin-left: 6px;
}

.btn.btn_template.active {
    opacity: 0.75;
    pointer-events: none;
}

.control_products .dropdown {
    flex: 0 0 calc(50% - 5px);
    max-width: calc(50% - 5px);
    height: 34px;
    margin: 0 0 0 10px;
    /* max-width: 190px; */
}

.control_products .dropdown.dropdown-open {
    border-radius: var(--border-radius);
}


.control_products .dropdown UL {
    position: fixed;
    bottom: auto;
    left: 0;
    right: 0;
    top: 100%;
    transform: translateY(-100%);
    width: 100%;
    height: auto;
    max-height: unset!important;
    border: none;
    padding: 8px 16px 25px 16px;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    box-shadow: var(--shadow-hover);
    transition: 0s;
}

.control_products .dropdown UL li.tit {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    padding: 16px 16px 14px 16px;
    margin: -8px -16px 16px -16px;
    width: calc(100% + 32px);
    border-bottom: 1px solid var(--border-color);
}

.control_products .dropdown UL li.tit span {
    font-size: 20px;
    font-weight: 700;
    line-height: 1.2;
}

.control_products .dropdown UL li {
    border-top: none;
}

.control_products .dropdown UL li.selected {
    display: block !important;
}

.control_products .dropdown UL li a {
    font-size: 14px;
    padding: 6px 12px 6px 26px;
    position: relative;
}

.control_products .dropdown UL li a::before {
    content: "";
    width: 16px;
    height: 16px;
    position: absolute;
    top: 6px;
    left: 0;
    border: 1px solid var(--base-color-4);
    background-color: var(--base-color-1);
    border-radius: 50%;
}

.control_products .dropdown UL li.selected a::before {
    border-color: var(--additional-color-4);
}

.control_products .dropdown UL li a::after {
    content: "";
    width: 10px;
    height: 10px;
    background-color: var(--additional-color-4);
    border-radius: 50%;
    position: absolute;
    top: 9px;
    left: 3px;
    opacity: 0;
    transition: 0.3s;
}

.control_products .dropdown UL li.selected a::after {
    opacity: 1;
}

.control_products .close_sort {
    font-size: 0;
    padding: 0;
    width: 20px;
    height: 20px;
    display: block;
    background-color: transparent;
    border: none;
    position: relative;
}

.control_products .close_sort::before,
.control_products .close_sort::after {
    content: "";
    width: 20px;
    height: 1px;
    background-color: var(--base-color-6);
    position: absolute;
    top: 50%;
    left: 50%;
}

.control_products .close_sort::before {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.control_products .close_sort::after {
    transform: translate(-50%, -50%) rotate(45deg);
}

/* --- Search results --- */
.catalog_list.search .title_wrap.nothing_found .main_title {
    margin: 0 auto;
    width: 100%;
    max-width: 940px;
}

.search_pic_no_found {
    display: flex;
    width: 100%;
}

.search_pic_no_found Img {
    width: 60%;
    height: auto;
    margin: 0 auto 32px;
}

.catalog_list.search .nothing_found .together {
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.catalog_list.search .search_title {
    margin: 0 0 16px 0;
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    justify-content: center;
}

.catalog_list.search .search_title Div {
    text-transform: lowercase;
}

.nothing_found .search_title_results {
    margin: 0 0 16px 0;
    font-size: 15px;
    line-height: 1.4;
}

.catalog_list.search .nothing_found .long_div {
    flex-direction: row;
    justify-content: center;
}

.catalog_list.search .nothing_found .long_div A.btn {
    margin: 0 8px;
}

.list_top-title {
    display: none;
}

.product_wrap.catalog_list {
    display: flex;
    flex-direction: column;
}

.product_wrap.catalog_list .one_good {
    width: 100%;
    margin-top: -1px;
}

.product_wrap.catalog_list .og_inner {
    display: grid;
    grid-template-columns: 80px 1fr 1fr 36px;
}

.product_wrap.catalog_list .product_code-desk {
    display: none;
}

.product_wrap.catalog_list .photo_wrap {
    grid-column: 1 / 2;
    grid-row: 1 / 4;
    margin-right: 16px;
    width: 64px;
    height: 64px;
    padding-bottom: 0;
}

.list .status_list {position:relative; flex-direction:row; flex-wrap:wrap;}

.product_wrap.catalog_list .status_list Span.sale_percent {
    padding: 1px 3px;
    margin: 0 0 2px 0;
}

.product_wrap.catalog_list .photo_and_name {
    grid-row: 1 / 2;
    grid-column: 2 / 4;
}

.product_code-mob {
    font-size: 12px;
    color: var(--base-color-4);
}

.product_wrap.catalog_list .product_name Span {
    font-weight: 400;
}

.product_wrap.catalog_list .add_in-list {
    margin-left: 8px;
    margin-bottom: 8px;
    grid-row: 1 / 3;
    grid-column: 4 / 5; 
    position: relative;
    top: auto;
    right: auto;
}

.product_wrap.catalog_list .price_product {
    grid-row: 2 / 3;
    grid-column: 2 / 4;
    margin-bottom: 8px;
}

.product_wrap.catalog_list .product_avaliable {
    text-align: end;
    grid-row: 3 / 4;
    grid-column: 3 / 4;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 8px;
    padding-left: 8px;
}

.product_wrap.catalog_list .not_available {
    height: auto;
}

.product_wrap.catalog_list .price_sum {
    display: none;
}

.product_wrap.catalog_list .buy_wrap {
    grid-row: 3 / 4;
    grid-column: 4 / 5;
}

.product_wrap.catalog_list .buy_wrap .can_buy .btn {
    display: flex;
    margin: auto 0 0 auto;
    min-width: 32px;
    min-width: 32px;
}

.product_wrap.catalog_list .price_wrap {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.product_wrap.catalog_list .main_price {
    font-size: 16px;
    font-weight: 700;
}

.product_wrap.catalog_list .main_price.active {
    color: var(--text);
}

.product_wrap.catalog_list .old_price {
    font-size: 14px;
    order: 1;
    margin-bottom: 0;
    margin-left: 12px;
    position: relative;
}

.product_wrap.catalog_list .old_price::before {
    content: "";
    width: 100%;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--base-color-5);
}

.og_inner .product_counter {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 30px;
    background-color: var(--base-color-1);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
}

.product_slider .product_counter {
    height:34px;
    display:none;
}

.og_inner .product_counter button {
    color: #333333;
    display: block;
    width: 30px;
    height: 100%;
    border: none;
    background-color: transparent;
    cursor: pointer;
}

.og_inner .product_counter input {
    width: 40px;
    height: 28px;
    padding: 0;
    text-align: center;
    border-color: transparent;
}

.product_wrap.catalog_list .unavailability.one_good .product_counter, .product_slider .unavailability .product_counter {
    opacity: 0.4;
    pointer-events: none;
}

.product_wrap.catalog_list .available {
    text-align: end;
    margin-top: 0;
    padding: 0;
    background-color: transparent;
    color: #17b260;
}

/* --- Click Path --- */
.clickpath_place {
    display: flex;
    width: 100%;
    margin: 5px 0 30px 0;
}

.clickpath {
    display: flex;
    flex-wrap: wrap;
}

.clickpath A {
    color: var(--main-color);
    text-decoration: none;
    font-size: 12px;
    position: relative;
    transition: .3s;
}

.clickpath .clickpath_item:not(.current) A,
.clickpath .clickpath_item:not(.current) A {
    padding: 0 12px 0 0;
    margin-right: 6px;
}

.clickpath .clickpath_item:not(.current) A::before,
.clickpath .clickpath_item:not(.current) A::after {
    content: "";
    width: 5px;
    height: 1px;
    background-color: var(--base-color-4);
    position: absolute;
    top: 50%;
    right: 0;
    transform-origin: right;
}

.clickpath .clickpath_item:not(.current) A::before {
    transform: translateY(-50%) rotate(-45deg);
}

.clickpath .clickpath_item:not(.current) A::after {
    transform: translateY(-50%) rotate(45deg);
}

.clickpath .clickpath_item.current A {
    color: var(--base-color-4);
}


/* --- Filters --- */
.catalog_filters {
    color: var(--text);
    position: fixed;
    top: 0;
    left: -100%;
    display: flex;
    flex-direction: column;
    height: var(--100vh);
    height: 100%;
    overflow: hidden;
    width: 100%;
    background: var(--base-color-1);
    z-index: 13;
    transition: .3s;
    overflow-x: hidden;
    justify-content: space-between;
}

.catalog_filters.active {
    left: 0;
}

.close_menu.dark::after,
.close_menu.dark::before {
    background: var(--gray);
}


/* --- Selected filters --- */
.selected_filters {
    display: flex;
    flex-direction: column;
    margin: 0 -16px;
    padding: 12px 16px 20px 16px;
    width: calc(100% + 32px);
    border-bottom: 1px solid var(--base-color-3);
}

.selected_filters_list {
    flex-direction: column;
    display: flex;
    flex-wrap: wrap;
}

.one_ch_fil {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.one_ch_fil + .one_ch_fil {
    margin-top: 12px;
}

.one_ch_fil.clear_all .ocf_title {
    margin-right: auto;
}

.ocf_title {
    font-size: 12px;
    margin: 0 10px 4px 0;
}

.one_ch_fil.clear_all .deactivate-filter {
    font-size: 10px;
    text-transform: uppercase;
    font-weight: 700;
    color: var(--additional-color-2);
    margin-right: 0;
    min-height: 22px;
    background-color: var(--additional-color-3);
}

.one_ch_fil.clear_all .deactivate-filter::before,
.one_ch_fil.clear_all .deactivate-filter::after {
    background-color: var(--additional-color-2);
}

.deactivate-filter {
    font-size: 12px;
    line-height: 1.2;
    display: flex;
    align-items: center;
    width: max-content;
    margin: 0 4px 4px 0;
    padding: 4px 26px 4px 6px;
    background-color: var(--base-color-3);
    position: relative;
    border-radius: 3px;
    border: none;
    cursor: pointer;
    transition: .3s;
}

.deactivate-filter::before,
.deactivate-filter::after {
    content: '';
    width: 14px;
    height: 1px;
    border-radius: 2px;
    background: var(--base-color-6);
    position: absolute;
    top: 50%;
    right: -1px;
    transition: .3s;
}

.deactivate-filter::before {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.deactivate-filter::after {
    transform: translate(-50%, -50%) rotate(45deg);
}

/* --- Filters for select --- */
.catalog_filters .menu_item {
    border-bottom: 1px solid var(--base-color-3);
    position: relative;
}

/* --- Categories in Search results --- */

.searched_cats {
    display: flex;
    flex-direction: column;
    padding: 6px 10px;
    background-color: var(--base-color-1);
    border-radius: 5px;
    margin-bottom: 6px;
}

.searched_cats .tit {
    font-size: 16px;
    font-weight: 700;
    margin: 0 0 10px 0;
}

.searched_cats .categories_list > li {
    display: flex;
    flex-direction: column;
    margin: 0 0 10px 0;
}

.searched_cats .categories_list > li > a {
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    color: var(--text);
    display: flex;
    flex-direction: row;
    align-items: center;
    min-height: 24px;
    position: relative;
}

.searched_cats .categories_list > li > a.has_arrow {
    padding-right: 26px;
}

.searched_cats .categories_list > li > a.has_arrow.bottom::after,
.searched_cats .categories_list > li > a.has_arrow.bottom::before {
    top: 12px;
}

.searched_cats .categories_list > li > a.has_arrow.active::after {
    transform: rotate(-45deg);
}

.searched_cats .categories_list > li > a.has_arrow.active::before {
    transform: rotate(45deg);
}

.searched_cats .categories_list > li > a > img {
    flex: 0 0 24px;
    display: block;
    width: 24px;
    height: 24px;
    margin: 0 10px 0 0;
}

.searched_cats .categories_list > li > ul {
    padding: 4px 0 0 30px;
}

.searched_cats .categories_list > li > ul > li + li {
    margin-top: 6px;
}

.searched_cats .categories_list > li > ul > li > a {
    text-decoration: none;
    font-size: 14px;
    color: var(--text);
    display: flex;
    flex-direction: row;
    align-items: center;
    min-height: 20px;
    position: relative;
}

.searched_cats .categories_list > li > ul > li > a img {
    flex: 0 0 16px;
    display: block;
    width: 16px;
    height: 16px;
    margin: 0 6px 0 0;
}

/* --- Price filter --- */

.filters_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 16px;
    margin: 0;
    position: relative;
    border-bottom: 1px solid var(--base-color-3);
    background-color: var(--base-color-1);
    top: 0;
    z-index: 2;
}

.filters_top-title {
    font-size: 20px;
    line-height: 1.2;
    font-weight: 700;
    display: flex;
    align-items: center;

}

.filters_top-title .icon {
    fill: var(--accent-color-3);
    width: 20px;
    height: 20px;
    margin-right: 15px;
}

.filters_top .close_menu::after,
.filters_top .close_menu::before {
    background-color: var(--base-color-5);
}

.filters_inner {
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 8px 16px;
}
.menu_item-title {
    font-size: 14px;
    line-height: 1.2;
    font-weight: 700;
    display: flex;
    align-items: center;
    text-decoration: none;
    color: var(--text);
    padding: 16px 32px 16px 0;
    position: relative;
    transition: .3s;
}

.menu_item-title.has_arrow.bottom::before,
.menu_item-title.has_arrow.bottom::after {
    top: 24px;
    height: 1px;
    background-color: var(--base-color-6);
}

.menu_item-title Img,
.menu_item-title svg {
    max-width: 24px;
    max-height: 24px;
    margin: 0 8px 0 0;
    border-radius: var(--border-radius);
}

.menu_item-title svg {
    fill: var(--link);
    transition: .3s;
}

.hidden_menu {
    margin: 8px 0;
}

.choose_price .hidden_menu,
.fil_slider .hidden_menu {
    margin: 0 0 16px 0;
}

.hidden_menu LI {
    position: relative;
}

.hidden_menu LI.nothing_found {
    padding: 8px 0 0 0;
    color: var(--gray-light);
}

.price_filter {
    display: flex;
    flex-direction: column;
    margin-bottom: 22px;
}

.price_filter .together {
    display: flex;
    align-items: center;
    margin: 0 0 24px 0;
}

.fil_slider .hidden_menu .price_filter Input[type="text"] {
    margin-bottom: 0;
}

.price_filter Input {
    width: calc(50% - 49px);
    height: 34px;
    margin-bottom: 0;
}

.price_filter Span {
    margin: 0 10px;
}

A.submit_filters {
    width: 80px;
    margin: 0 0 0 16px;
    text-transform: uppercase;
}

.fil_slider .hidden_menu Input[type="text"] {
    width: 100%;
    margin: 0 0 8px 0;
}

/* --- Common filters - Rows --- */
.menu_item .check_item {
    display: flex;
    align-items: flex-start;
    padding: 5px 5px 5px 28px;
    border-radius: var(--border-radius);
    font-size: 16px;
    cursor: pointer;
}

.menu_item .check_item.no_active {
    opacity: .4;
    pointer-events: none;
}

.menu_item .check_item::before {
    left: 0;
}

.menu_item .with_img .check_item::before {
    top: 9px;
}

.menu_item .with_img .check_item::after {
    top: 13px;
}

.menu_item .check_item .filter_counter {
    opacity: .5;
    margin: 0 0 0 6px;
    font-size: 12px;
}

.menu_item .check_item Img,
.menu_item .check_item svg {
    max-width: 20px;
    max-height: 20px;
    margin: -2px 8px 0 0;
    border-radius: var(--border-radius);
}

.menu_item .check_item svg {
    fill: var(--link);
}

/* --- Tile filters --- */
.fil_group_grid .filter_list {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 8px);
}

.menu_item.fil_group_grid .check_item {
    margin: 0 8px 8px 0;
    padding: 2px 8px;
    width: max-content;
    border: 1px solid var(--main-color);
    border-radius: var(--border-radius);
    transition: .3s;
}

.menu_item.fil_group_grid .check_item.active {
    border-color: var(--sub-color);
    background-color: var(--sub-color);
    color: var(--text-inverse);
}

.fil_group_grid .check_item::before,
.fil_group_grid .check_item::after {
    display: none;
}

.menu_item.fil_group_grid .check_item Span {
    min-width: 20px;
    text-align: center;
}

/* --- Submit Button for filters --- */
.apply_filters {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
}

.fil_group_grid .apply_filters {
    position: relative;
    top: auto;
    right: auto;
    transform: unset;
    margin: -16px 0 16px 0;
}

.one_but .apply_filters.for_one_but {
    top: auto;
    transform: translate(0, 0);
    right: auto;
    background: var(--base-color-1);
    padding: 8px 16px;
    width: 100%;
    position: sticky;
    margin: 0;
    display: flex;
    justify-content: center;
    border-top: 1px solid var(--border-color);
    box-shadow: 0px -8px 30px 0px #00000026;
    z-index: 1;
}

.one_but .apply_filters.for_one_but A.cancel_filters {
    width: calc(50% - 8px);
}

.one_but .apply_filters.for_one_but A.outer_submit_filters {
    width: 168px;
}

.one_but .apply_filters.for_one_but A.submit_filters {
    width: calc(50% - 8px);
    margin-left: 16px;
    box-shadow: none;
}

.catalog_filters .for_one_but {
    display: none;
}

.apply_filters A.submit_filters {
    margin: 0;
    box-shadow: 6px 0 12px rgba(0, 0, 0, .3);
}

.apply_filters A.submit_filters::after {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    bottom: auto;
    top: -2px;
    left: -11px;
    border-width: 19px 10px 19px 0;
    transition: .3s;
    border-color: transparent var(--main-color) transparent transparent;
}

.fil_group_grid .apply_filters A.submit_filters::after,
.one_but .apply_filters.for_one_but A.submit_filters::after,
.one_but .apply_filters,
.no_but .apply_filters {
    display: none;
}

/* --- Filters as Slider under Products --- */
.brands_slider {
    margin: 0 0 8px 0;
    display: flex;
    width: 100%;
}

.brands_slider-inner {
    display: flex;
    width: 100%;
    overflow: auto;
    padding: 0 0 8px 0;
}

.brands_slider-inner .outer_fv {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 4px;
    width: 110px;
    border-radius: var(--border-radius);
    background: var(--white);
    overflow: unset;
    padding: 24px 8px;
    cursor: pointer;
    text-align: center;
    border: 2px solid transparent;
    position: relative;
    flex-shrink: 0;
    transition: border-color .3s;
}

.brands_slider-inner .outer_fv.active {
    border-color: var(--sub-color);
}

.brands_slider-inner .outer_fv.has_button {
    padding: 12px 8px 38px 8px;
}

.brands_slider-inner .outer_fv.no_active {
    opacity: .4;
    pointer-events: none;
}

.brands_slider .apply_filters {
    bottom: 0;
    left: 0;
    top: auto;
    transform: unset;
    width: 100%;
}

.brands_slider .apply_filters A.submit_filters {
    box-shadow: none;
    min-height: 28px;
    width: 100%;
    font-size: 12px;
    border-radius: 0 0 2px 2px;
}

.brands_slider .apply_filters A.submit_filters::after {
    display: none;
}

.brands_slider-inner .outer_fv Img {
    max-width: 100%;
    max-height: 100%;
}

/* All reviews in Catalog */
.reviews_sect {
    margin-bottom: var(--section-bottom);
}

.reviews_sect .title_wrap {
    padding-right: 75px;
}

.reviews_sect .product_raiting {
    border-top: 1px solid var(--border-color);
    margin: -12px 0 16px 0;
    padding: 16px 0 0 0;
    align-items: baseline;
}

.reviews_sect .product_raiting.no_active {
    display: none;
}

.reviews_sect_rate {
    margin: 0 8px 0 0;
    color: var(--main-color-lighter);
    font-weight: 700;
    font-size: 18px;
}

.rsr_2 {
    font-size: 19px;
}

.rsr_3 {
    font-size: 20px;
}

.rsr_4 {
    font-size: 21px;
}

.rsr_5 {
    font-size: 22px;
}

.reviews_sect_users {
    color: var(--text-light);
}

.category_comments {
    display: flex;
    width: calc(100% + 16px);
    margin-right: -16px;
}

.category_comments:not(.slick-initialized) {
    display: flex;
    align-items: flex-start;
    overflow: hidden;
}

.category_comments:not(.slick-initialized) .comment_item {
    flex: 0 0 272px;
    margin: 0 16px 0 0;
}

.category_comments .slick-list {
    padding-top: 65px;
    margin-top: -65px;
    min-width: 100%;
}

.category_comments .slick-track {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: flex-start;
    min-width: 100%;
}

.category_comments .slick-arrow {
    top: -64px;
    transform: none;
}

.category_comments .slick-arrow.slick-next {
    right: 16px;
}

.category_comments .slick-arrow.slick-prev {
    right: 56px;
    left: auto;
    transform: rotate(180deg);
}

.category_comments .comment_item {
    display: flex;
    flex-direction: column;
    flex: 0 0 272px;
    width: 272px;
    height: auto;
    align-self: stretch;
    margin: 0 8px;
}

.comment_item {
    padding: 10px 10px 15px 10px;
    border-radius: var(--border-radius);
    background-color: var(--base-color-1);
}

.comment_heder {
    display: flex;
    align-items: center;
    padding-bottom: 10px;
    margin-bottom: 15px;
    border-bottom: 1px solid var(--base-color-3);
}

.comment-product_photo {
    flex: 0 0 45px;
    margin-right: 10px;
}

.comment-product_photo img {
    display: block;
    width: 45px;
    height: 45px;
    object-fit: contain;
}

.comment-product_name {
    text-decoration: none;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 600;
    color: var(--text);
    display: block;
    flex: 1 1 auto;
    transition: 0.3s;
}

.comment_user {
    display: flex;
    align-items: center;
    margin-bottom: 5px;
}

.comment_user-name {
    font-size: 14px;
    line-height: 1.2;
    font-weight: 700;
    margin-right: 8px;
}

.comment_use-time {
    font-size: 12px;
    line-height: 1.2;
    color: var(--base-color-3);
}

.reviews_sect .comment_item .product_raiting {
    margin: 0 0 0 auto;
    border: none;
    padding: 0;
}

.comment_item .comment_text {
    margin: 10px 0 0 0;
    font-size: 12px;
    line-height: 1.2;
    color: var(--text);
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 10px;
}

.show_all_comments {
    text-decoration: none;
    max-width: 100%;
    font-size: 14px;
    line-height: 1.2;
    color: var(--accent-color-3);
    display: block;
    margin-top: auto;
    padding-right: 26px;
    width: max-content;
    position: relative;
    transition: 0.3s;
}

.show_all_comments::before,
.show_all_comments::after {
    content: "";
    width: 8px;
    height: 1px;
    background-color: var(--accent-color-3);
    transform-origin: right;
    position: absolute;
    top: 50%;
    right: 5px;
}

.show_all_comments::before {
    transform: translateY(-50%) rotate(-45deg);
}

.show_all_comments::after {
    transform: translateY(-50%) rotate(45deg);
}

.reviews_sect .photo_and_name {
    flex-direction: row;
    margin: 0 0 8px 0;
}

.reviews_sect .ag_photo {
    height: 100px;
}

.reviews_sect .product_name {
    margin: 0;
    height: max-content;
    max-height: 97px;
    overflow: hidden;
}

.reviews_sect .product_name Span {
    height: auto;
}

.reviews_sect .review_col {
    z-index: 2;
    border-top: 1px solid var(--border-color);
}

.reviews_sect .together {
    max-width: calc(100% - 95px);
}

.reviews_sect .comment_top,
.reviews_sect .comment_body {
    width: 100%;
}

.reviews_sect .comment_top {
    margin: 0;
    padding: 8px 0;
}

.reviews_sect .comment_top .comment_name {
    height: 20px;
    overflow: hidden;
}

.reviews_sect .comment_top .product_raiting {
    padding: 0;
    border: none;
}

.reviews_sect .review_text {
    margin: 8px 0;
    line-height: 1.3;
    font-size: 12px;
    overflow: hidden;
    height: 112px;
    display: -webkit-box;
    -webkit-line-clamp: 7;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* --- Pagination --- */
.pagination {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 30px 0;
}

.for_load_more {
    display: flex;
    margin: 0 0 40px 0;
    border-bottom: 1px solid var(--site-bg);
    justify-content: center;
    width: 100%;
}

.for_load_more .btn {
    padding: 0 30px;
}

.for_pag_numbers {
    display: flex;
    width: 100%;
    justify-content: center;
}

.pages_wrap {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
}

.pages_list {
    display: flex;
    padding: 0 10px;
}

.pages_list A,
.pages_list Span,
.pages_btn {
    font-size: 14px;
    color: var(--text);
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 35px;
    height: 35px;
    border-radius: var(--border-radius);
    margin: 0 1px;
    background: none;
    transition: .3s;
    position: relative;
}

.pages_list Span {
    border-color: transparent;
}

.pages_list A.active {
    background: var(--accent-color-1);
    color: var(--accent-color-3);
}

.pages_btn.not_active {
    pointer-events: none;
    opacity: .5;
}

.pages_btn.has_arrow::before,
.pages_btn.has_arrow::after {
    top: 20px;
    right: calc(50% - 5px);
    width: 10px;
    height: 1px;
}

.pages_btn.has_arrow::after {
    top: 14px;
}

/* --- PRODUCT Page - Details --- */
.details_product .filters_top_title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 12px;
}

.details_product .filters_top_title a {
    font-size: 14px;
    color: var(--accent-color-4);
    text-decoration: none;
    display: flex;
    align-items: center;
    transition: 0.3s;
}

.details_product .filters_top_title a:hover {
    color: var(--main-color-light);
}

.details_product .filters_top_title a + a {
    margin-top: 4px;
}

.details_product .filters_top_title .icon {
    width: 18px;
    height: 18px;
    fill: var(--accent-color-4);
    margin: 0 12px 0 0;
    transition: 0.3s;
}

.details_product .filters_top_title a:hover .icon {
    fill: var(--main-color-light);
}

.details_product .title_wrap {
    margin-bottom: 20px;
}

.filters_bottom_title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin-bottom: 12px;
}

.filters_bottom_title a {
    font-size: 14px;
    color: var(--accent-color-4);
    text-decoration: none;
    display: flex;
    align-items: center;
    transition: 0.3s;
}

.filters_bottom_title a:hover {
    color: var(--main-color-light);
}

.filters_bottom_title a + a {
    margin-top: 4px;
}

.filters_bottom_title .icon {
    width: 18px;
    height: 18px;
    fill: var(--accent-color-4);
    margin: 0 12px 0 0;
    transition: 0.3s;
}

.filters_bottom_title a:hover .icon {
    fill: var(--main-color-light);
}

.details_product .main_title {
    line-height: 1.4;
    font-size: 20px;
    margin: 0;
}

.details_product .product_raiting .icon {
    width: 18px;
    height: 18px;
    margin: 0 3px 0 0;
}

.details_product .product_raiting A {
    font-size: 12px;
}

.details_product .title_wrap.has_logo .main_title {
    margin: 0 72px 0 0;
}

.details_product .open_all-option {
    text-decoration: none;
    font-size: 12px;
    position: relative;
    padding: 0 22px 0 0;
    color: var(--accent-color-3);
}

.details_product .open_all-option::before,
.details_product .open_all-option::after {
    content: "";
    width: 6px;
    height: 1px;
    background-color: var(--accent-color-3);
    position: absolute;
    top: 50%;
    right: 6px;
    transform-origin: right;
}

.details_product .open_all-option::before {
    transform: translateY(-50%) rotate(-45deg);
}

.details_product .open_all-option::after {
    transform: translateY(-50%) rotate(45deg);
}

/* --- Product Rate --- */
.raiting_wrap {
    display: flex;
    justify-content: space-between;
    margin: 0 0 20px 0;
    position: relative;
}

.raiting_wrap .product_raiting {
    margin: 0;
}

.raiting_wrap .product_raiting A {
    margin-top: 0;
}

.details_code {
    font-size: 12px;
}

.details_brand {
    display: flex;
    position: absolute;
    right: 0;
    bottom: calc(100% + 18px);
}

.details_brand Img {
    max-width: 64px;
    max-height: 64px;
    object-fit: contain;
}

.details_tabs {
    display: flex;
    padding: 0 16px;
    width: 100%;
    position: relative;
    overflow-x: auto;
    
}

.details_tabs-wrap {
    margin: 0 -16px 10px -16px;
    width: calc(100% + 32px);
    position: relative;
}

.details_tabs-wrap::before {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: var(--base-color-3);
}

.details_tabs a {
    text-decoration: none;
    font-size: 12px;
    line-height: 1.2;
    color: var(--text);
    white-space: nowrap;
    padding-bottom: 5px;
    position: relative;
}

.details_tabs a + a {
    margin-left: 20px;
}

.details_tabs a::before {
    content: "";
    width: calc(100% + 14px);
    height: 4px;
    border-radius: 2px;
    background-color: var(--accent-color-3);
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    transition: 0.3s;
}

.details_tabs a.active {
    font-weight: 700;
}

.details_tabs a.active::before {
    opacity: 1;
}

.details_tabs a span {
    margin-left: 3px;
}

.details_product .product_reviews .product_raiting .icon {
    width: 12px;
    height: 12px;
    margin: 0 0 0 3px;
}


/* --- Product Tabs --- */
.product_tabs {
    display: flex;
    margin: 0 -16px 16px -16px;
    width: calc(100% + 32px);
    overflow-x: auto;
    padding: 12px 16px 0 16px;
    background: var(--site-bg);
    position: relative;
}

.product_tabs::before {
    content: "";
    width: 100%;
    height: 2px;
    display: block;
    background-color: var(--base-color-3);
    position: absolute;
    bottom: 0;
    left: 0;
}

.product_tabs A,
.product_tabs Span {
    font-size: 16px;
    color: var(--text);
    text-decoration: none;
    display: inline-flex;
    min-width: max-content;
    margin: 0 20px 0 0;
    padding: 0 0 11px 0;
    position: relative;
    transition: .3s;
}

.product_tabs A:last-child {
    margin: 0;
}

.product_tabs A.active {
    color: var(--text);
    font-weight: 700;
    pointer-events: none;
}

.product_tabs A::before {
    content: "";
    display: block;
    width: calc(100% + 10px);
    height: 4px;
    background-color: var(--accent-color-3);
    border-radius: 2px;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    opacity: 0;
    transition: 0.3s;
}

.product_tabs A.active::before {
    opacity: 1;
}

.product_tabs A Span {
    margin: 0 0 0 6px;
}

/* --- ALL Tab --- */
.all_tabs {
    display: flex;
}

.product_tab {
    display: flex;
    width: 100%;
    flex-direction: column;
}

/* --- Main product info --- */
.detail_info {
    display: flex;
    flex-direction: column;
    margin: 0 0 60px 0;
}

/* --- Left side / Main product info --- */
.all_left_det {
    display: flex;
    flex-direction: column;
    margin: 0 0 10px 0;
    z-index: 1;
}

.ald_for_sticky {
    display: flex;
    flex-direction: column;
    margin: 0 -16px;
    width: calc(100% + 32px);
    border-radius: var(--border-radius);
    overflow: hidden;
}

/* --- Main Photo - Product Page --- */
.sliders_wrap {
    display: flex;
    justify-content: center;
    background: var(--white);
    position: relative;
    border-bottom: 1px solid var(--base-color-3);
    padding: 10px;
}

.sub_slider {
    display: flex;
    width: 50px;
    min-height: auto;
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 1;
}

.sub_slider:not(.slick-initialized) {
    display: flex;
    flex-direction: column;
}

.sub_slider .slick-list {
    padding: 0 !important;
}

.sub_slider .slick-track {
    display: flex;
    flex-direction: column;
}

.sub_slider .details_slide,
.zoom_subslider .zoom_slide {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border: 1px solid transparent;
    border-radius: var(--border-radius);
    background-color: var(--base-color-1);
    overflow: hidden;
    margin: 0 0 3px 0;
    cursor: pointer;
}

.sub_slider .details_slide:last-child,
.zoom_subslider .zoom_slide:last-child {
    margin: 0;
}

.sub_slider .details_slide.slick-current,
.zoom_subslider .zoom_slide.slick-current {
    border-color: var(--link-hover);
}

.sub_slider Img,
.slick-current Img {
    object-fit: contain;
    max-width: 100%;
    max-height: 100%;
}

.big_slider {
    width: 100%;
    display: flex;
}

.big_slider UL.slick-track {
    display: flex;
    height: 100%;
    transition-property: transform;
}

.big_slider .details_slide {
    flex-shrink: 0;
    display: flex;
}

.big_slider .details_slide.no_photo {
    min-height: 400px;
}

.big_slider .details_slide .together {
    position: relative;
    padding: 0 0 94% 0;
    width: 100%;
}

.big_photo_here {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.big_photo_here Img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    padding-left: 58px;
}

.big_slider .status_list Span {
    padding: 2px 6px;
    font-size: 10px;
    margin: 0 0 8px 0;
    font-weight: 700;
}

.big_slider .slick-arrow {
    left: 5px;
    top: auto;
    bottom: 0;
    transform: translate(0, 0) rotate(180deg);
}

.big_slider .slick-arrow.slick-next {
    right: 5px;
    transform: translate(0, 0);
}

.big_slider:not(.slick-initialized) .gallery-item:not(:first-child) {
    display: none;
}

.big_slider:not(.slick-initialized) .gallery-item {
    width: 100%;
}

.status_images-list {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: 0;
    right: 0;
}

.status_image {
    width: auto;
    max-width: 72px;
    height: auto;
    margin-bottom: 8px;
    padding: 0;
    background-color: transparent;
    border: none;
    cursor: pointer;
}

.status_image img,
.status_image svg {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
}

.popup.popup_status-image .popup_title {
    width: calc(100% + 32px);
    margin-left: -16px;
    margin-right: -16px;
    padding: 0 16px 16px 16px;
}

.popup.popup_status-image article {
    margin-bottom: 0;
}

/* --- Zoom Main Photo --- */
/* --- Variant: NO Slider, all photos vertical from top to bottom / Not full screen --- */
.zoom_slider {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--white);
    z-index: 13;
    width: calc(100% - 16px);
    max-width: 800px;
    border-radius: var(--border-radius);
    display: none;
    flex-direction: column;
    padding: 16px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, .3);
    max-height: calc(100% - 10%);
    overflow: hidden;
}

.zoom_slider.active {
    display: flex;
}

.zoom_slider .title_wrap {
    border-bottom: 1px solid var(--border-color);
    width: calc(100% + 32px);
    margin: 0 0 0 -16px;
    padding: 0 16px 16px 16px;
}

.zoom_big {
    width: 100%;
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: auto;
    padding: 16px 0 0 0;
}

.zoom_big .zoom_slide {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.zoom_big:not(.slick-initialized) .zoom_slide {
    margin: 0 0 32px 0;
}

.zoom_big:not(.slick-initialized) .zoom_slide:last-child {
    margin: 0;
}

.zoom_slide>Img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

/* --- Variant: Slider, horizontal / Popup --- */
.zoom_slider.full_screen {
    height: 100%;
    max-width: none;
}

.full_screen .zoom_big {
    padding: 0;
    margin: 16px 0 32px -16px;
    width: calc(100% + 32px);
}

.zoom_slider.full_screen .zoom_big .slick-list,
.zoom_slider.full_screen .zoom_big .slick-track {
    height: 100%;
}

.zoom_slider.full_screen .zoom_big .zoom_slide {
    height: 100%;
    position: relative;
}

.zoom_slider.full_screen .zoom_big .zoom_slide Img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.zoom_subslider .zoom_slide {
    margin: 0 8px 0 0;
}

/* --- Variant: No Slider, Zoom / Full Screen --- */
.zoom_slider.zoom-full_screen {
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    max-width: unset;
    max-height: unset;
    transform: none;
    overflow: unset;
    border-radius: 0;
}

.zoom_slider.zoom-full_screen .popup_close {
    background: var(--main-color-lighter);
    box-shadow: 0 0 8px #00000024;
    border-radius: var(--border-radius);
    top: 8px;
    right: 8px;
    z-index: 1;
}

.zoom_slider.zoom-full_screen .popup_close::before,
.zoom_slider.zoom-full_screen .popup_close::after {
    background: var(--white);
    height: 3px;
}

.zoom_slider.zoom-full_screen .zoom_big {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    overflow: unset;
}

.zoom_slider.zoom-full_screen .zoom_big:not(.slick-initialized) .zoom_slide {
    margin: 0;
    padding: 16px;
    display: block;
}

.zoom_slider.zoom-full_screen .zoom_big .zoom_slide>Img {
    height: 100%;
    width: 100%;
    max-width: unset;
    max-height: unset;
    object-fit: cover;
    cursor: grab;
}

.zoom_slider.zoom-full_screen .zoom_subslider {
    display: none;
}

/* --- Short list of Characteristics - Product Page --- */
.short_chars {
    display: flex;
    flex-direction: column;
    background: var(--white);
    padding: 16px 16px 20px 16px;
    margin-bottom: 8px;
}

.prew_info {
    margin: 0 0 6px 0;
    font-size: 12px;
    line-height: 1.8;
}

/* --- Right side / Main product info --- */
.product_info {
    display: flex;
    flex-direction: column;
}

/* --- Filters links --- */

.filters_list {
    margin-bottom: 12px;
    display: flex;
    flex-direction: column;
}

.filter_item {
    /* color: var(--link); */
    display: flex;
    align-items: center;
    width: fit-content;
    margin: 0 8px 8px 0;
    max-width: 100%;
}

.filter_item + .filter_item {
    margin-top: 6px;
}

.filter_item .icon {
    margin-right: 8px;
    /* fill: var(--link);
    width: 18px;
    height: 18px; */
}

/* --- Recomended Product --- */
.recomended_product {
    text-decoration: none;
    display: flex;
    align-items: center;
    margin: 0 0 16px 0;
    padding: 12px 16px;
    background-color: var(--base-color-1);
    border: 1px solid var(--base-color-3);
    border-radius: 8px;
    transition: 0.3s;
}

.recomended_product-photo {
    flex: 0 0 40px;
    margin-right: 12px;
    display: block;
    width: 40px;
    height: 40px;
}

.recomended_product-photo img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.recomended_product-info {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
}

.recomended_product-info .col:nth-child(1) {
    flex: 1 1 auto;
    margin-right: 12px;
    display: flex;
    flex-direction: column;
}

.recomended_product-title {
    color: var(--accent-color-3);
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 6px;
    transition: 0.3s;
}

.recomended_product-name {
    font-size: 15px;
    color: var(--text)
}

.recomended_product-info .col:nth-child(2) {
    display: flex;
    flex-direction: column;
}

.recomended_product-price {
    color: var(--text);
    font-size: 16px;
    font-weight: 700;
    text-wrap: nowrap;
}
/* --- Promo to this Product --- */
.discount_box {
    display: flex;
    background-color: var(--base-color-1);
    border-radius: var(--border-radius);
    margin: 0 0 16px 0;
    padding: 8px;
    text-decoration: none;
    position: relative;
    transition: .3s;
}

.discount_box.has_arrow::before,
.discount_box.has_arrow::after {
    right: 8px;
    top: calc(50% - -2px);
    background: var(--main-color-light);
}

.discount_box.has_arrow::after {
    top: calc(50% - 3px);
}

.db_status {
    padding: 8px;
    margin: 0 8px 0 0;
    border-radius: var(--border-radius);
    background: var(--orange);
    color: var(--white);
    font-size: 24px;
    font-weight: 700;
    display: flex;
    align-items: center;
}

.db_photo {
    width: 60px;
    margin: 0 8px 0 0;
    border-radius: var(--border-radius);
    display: flex;
    border: 1px solid var(--border-color);
    padding: 4px;
    flex-shrink: 0;
}

.db_photo Img {
    width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.db_text {
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 0 24px 0 0;
}

.dbt_title {
    font-weight: 700;
    color: var(--main-color-light);
    margin: 0 0 4px 0;
}

.dbt_title Span {
    color: var(--orange);
}

.dbt_date {
    color: var(--gray-light);
    font-size: 13px;
}

/* --- Select color OR Size --- */
.select_color {
    display: flex;
    flex-direction: column;
    margin: 0 0 8px 0;
}

.select_color .tit {
    display: flex;
    margin: 0 0 8px 0;
}

.select_color .color_list {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 8px);
    margin-right: -8px;
}

.select_color LI {
    flex: 0 0 calc((100% / 4) - 8px);
    display: flex;
    flex-direction: column;
    margin: 0 8px 8px 0 ;
}

.select_color LI.unavailability {
    pointer-events: none;
    opacity: .4;
}

.select_color A {
    display: flex;
    flex-direction:column;
    align-items: center;
    padding: 4px 12px;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 700;
    width: 100%;
    height: auto;
    /* width: 64px;
    height: 64px; */
    border-radius: 14px;
    text-decoration: none;
    background-color: transparent;
    border: 1px solid var(--accent-color-4);
    color: var(--accent-color-4);
    transition: .3s;
}

.select_color .has_names A {
    width: auto;
    min-width: 46px;
    border-radius: var(--border-radius) var(--border-radius) 0 0;
    border-bottom: none;
}

.select_color.select_size A {
    width: max-content;
    height: auto;
    padding: 4px 12px;
    border: 1px solid var(--border-color);
}

.select_color A.active {
    background-color: var(--accent-color-3);
    color: var(--base-color-1);
}

.select_color A:hover {
    background: var(--base-color-1);
    color: var(--link);
    border-color: var(--sub-color);
}

.select_color A.disabled {
    opacity: .4;
    background: none;
    border-color: var(--border-color);
    pointer-events: none;
}

.select_color A Img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: contain;
}

.select_color Span {margin:4px 0 0 0;}

.select_color .has_names Span {
    border-radius: 0 0 var(--border-radius) var(--border-radius);
    border: 1px solid transparent;
    font-size: 12px;
    padding: 2px 6px;
    border-top: none;
    text-align: center;
    transition: .3s;
}

.select_color .has_names Span.active {
    border-color: var(--sub-color);
    background: var(--sub-color-light);
    cursor: pointer;
}

.select_color.select_size A.sizes_table-link {
    padding: 12px;
}

/* --- Size chart Popup --- */
.size_table_popup {
    max-width: 1000px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding: 16px 8px 16px 16px;
}

.size_chart {
    width: 100%;
    overflow: auto;
    border: 1px solid var(--border-color);
}

.size_chart Table {
    border-collapse: collapse;
}

.size_chart Table Thead TH {
    background: var(--white);
    position: sticky;
    top: 0;
}

.size_chart Table Thead TH::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--border-color);
}

.size_chart Table Tbody TR TH {
    background: var(--white);
    position: sticky;
    left: 0;
}

.size_chart Table Thead TR TH:first-child {
    background: var(--white);
    position: sticky;
    left: 0;
    top: 0;
    z-index: 1;
}

.size_chart Table.no_col_title Thead TR TH:first-child {
    left: auto;
}

.size_chart Table Tbody TR TH::after,
.size_chart Table Thead TR TH:first-child::before {
    content: '';
    position: absolute;
    right: -1px;
    top: 0;
    width: 1px;
    height: 100%;
    background: var(--border-color);
}

.size_chart TD,
.size_chart TH {
    min-width: 150px;
    min-height: 42px;
    border: 1px solid var(--border-color);
    border-left: none;
    border-top: none;
    padding: 16px;
    transition: .3s;
}

.size_chart TR:nth-child(2n+1) TD,
.size_chart TR:nth-child(2n+1) TH {
    background: var(--site-bg);
}

.size_chart Thead TR:nth-child(2n+1) TH {
    background: var(--white);
}

/* --- Mini Product Photo --- */
.mini_product_photo {
    display: none;
}

/* --- Price box in Main product --- */
.product_price {
    display: flex;
    flex-wrap: wrap;
    background: var(--white);
    margin: 0 16px 40px -16px;
    padding: 16px;
    width: calc(100% + 32px);
    justify-content: space-between;
}

.product_price-inner {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.show_price {
    display: flex;
    flex-direction: column;
    margin: 0 8px 8px 0;
}

.product_price .old_price {
    display: flex;
    align-items: center;
    color: var(--gray);
    font-size: 16px;
    height: 22px;
}

.unavailability .product_price .old_price {
    opacity: .4;
}

.product_price .op_main {
    margin: 0 8px 0 0;
}

.product_price .op_main Span {
    position: relative;
}

.product_price .op_main Span::before {
    content: '';
    width: 110%;
    height: 1px;
    background: var(--gray);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.product_price .op_benefit {
    padding: 0 6px;
    height: 17px;
    font-size: 10px;
    line-height: 17px;
    background: var(--error);
    color: var(--text-inverse);
    border-radius: 10px 3px 3px 10px;
    position: relative;
}

.product_price .main_price {
    font-size: 26px;
    line-height: 38px;
    height: 38px;
}

.unavailability .product_price .main_price {
    opacity: .4;
}

.product_price .main_price.active {
    color: var(--error);
}

.product_price .main_price Small {
    font-size: 16px;
}

.show_price .stock_wrap {
    display: none;
}

.in_stock,
.not_available {
    display: flex;
    color: var(--btn-bg);
    font-size: 12px;
}

.in_stock {
    color: var(--success)
}

.not_available {
    color: var(--gray-light);
}

.available {
    font-size: 12px;
    color: var(--text);
    background: var(--site-bg);
    padding: 6px;
    border-radius: var(--border-radius);
    margin: 4px 0 0 0;
}

.show_price .on_request {
    display: flex;
    align-items: center;
    height: 100%;
    color: var(--orange);
}

.product_price .for_warnings {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.product_price .warning {
    margin: 0 0 16px 0;
    width: 100%;
    text-align: center;
    padding: 8px;
    border: 1px dashed var(--orange);
    color: var(--orange);
    border-radius: var(--border-radius);
}

.add_in-list-wrap {
    margin-bottom: 8px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.product_price .add_in-list {
    position: relative;
    flex-direction: row;
    align-items: center;
    margin: 0;
}

.product_price .add_in-list A {
    margin: 0 0 0 8px;
    width: 38px;
    height: 38px;
    position: relative;
}

.product_price .add_in-list A.wishes.has_count {
    margin: 0 32px 0 16px;
}

.product_price .add_in-list A.compare .icon {
    fill: var(--gray-light);
}

.product_price .add_in-list A.compare.active .icon {
    fill: var(--btn-bg);
}

.product_price .add_in-list A.wishes .icon {
    fill: var(--error);
}

.product_price .add_in-list A.wishes Span {
    position: absolute;
    right: -28px;
    width: 26px;
    color: var(--gray-light);
    display: none;
}

.product_price .add_in-list A.wishes.has_count Span {
    display: flex;
}

/* --- BUY Buttons in Main product --- */
.product_btns {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

.product_btns .btn {
    font-weight: 600;
    width: 100%;
    margin: 0 0 10px 0;
}

.product_btns .btn:last-child,
.no_credit .product_btns .btn {
    margin: 0;
}

.product_btns .btn .icon {
    flex: 0 0 16px;
    width: 16px;
    height: 16px;
    margin-right: 10px;
}

.product_btns .credit_form_open {
    background: var(--white);
    color: var(--btn-bg);
    border: 2px solid var(--btn-bg);
}

.ask_price_form_box {
    width: 100%;
}

/* --- Credit bank variants --- */
.credits_variants {
    display: flex;
    margin: -16px 0 16px -8px;
    width: calc(100% + 16px);
    border-top: 1px solid var(--site-bg);
    background: var(--white);
    padding: 16px 8px 4px 8px;
    flex-wrap: wrap;
}

.bank_parts {
    display: flex;
    flex-direction: column;
    width: 54px;
    height: 54px;
    border-radius: var(--border-radius);
    margin: 0 12px 12px 0;
    text-decoration: none;
    color: var(--text);
    background: var(--site-bg);
    transition: .3s;
}

.bp_photo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 30px;
    padding: 4px 0 0 0;
    position: relative;
}

.bp_photo Img {
    max-width: 100%;
    height: 100%;
}

.bp_photo Span {
    font-size: 16px;
    font-weight: 700;
    position: absolute;
    top: 2px;
    right: 3px;
    text-shadow: -1px 1px 0 var(--white);
}

.bp_title {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 24px;
    font-size: 8px;
    line-height: 1;
    text-transform: uppercase;
    font-weight: 700;
    text-align: center;
    flex-shrink: 0;
}

/* --- Credit bank variants - PopUp --- */
.credit_bank_info .long_div.title {
    flex-direction: row;
    align-items: center;
}

.credit_bank_info .bank_parts {
    margin: 0 16px 0 0;
    pointer-events: none;
    flex-shrink: 0;
}

.credit_bank_info .bp_photo {
    height: 100%;
    padding: 8px;
}

.credit_bank_info .bp_photo Span {
    font-size: 18px;
    text-shadow: -2px 2px 0 var(--white);
    right: 4px;
}

.credit_bank_info .title .bp_title,
.one_credit .bp_title {
    width: calc(100% - 70px);
    font-size: 18px;
    line-height: 1.4;
    text-transform: unset;
    font-weight: normal;
    text-align: left;
    justify-content: flex-start;
}

A.btn.issue {
    width: 100%;
}

.credit_bank_info .rules {
    margin: 0;
    line-height: 1.4;
}

.credit_bank_info .rules P {
    margin: 0 0 4px 0;
}

.credit_bank_info .rules OL {
    padding: 0 0 0 16px;
    list-style: decimal;
}

.credit_bank_info .rules OL LI {
    margin: 12px 0 0 0;
}

/* --- Credit bank variants - ALL in one place - PopUp --- */
.credit_popup {
    max-width: 1000px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding: 16px 8px 16px 16px;
}

.one_credit {
    display: flex;
    padding: 16px 0 0 0;
    border-top: 1px solid var(--border-color);
    margin: 0 0 16px 0;
    flex-wrap: wrap;
}

.one_credit:first-child {
    border: none;
}

.oc_bank_name {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 0 0 16px 0;
}

.oc_bank_name .bank_parts {
    margin: 0 12px 0 0;
    padding: 8px;
    pointer-events: none;
    flex-shrink: 0;
}

.one_credit .bp_title {
    flex-direction: column;
    height: auto;
    align-items: flex-start;
}

.bpt_info {
    color: var(--gray);
    font-size: 13px;
    margin: 4px 0 0 0;
}

.one_credit .together {
    display: flex;
    width: 100%;
    flex-direction: column;
}

.oc_bank_parts {
    display: flex;
    margin: 0 0 16px 0;
}

.oc_bank_parts Select {
    width: 100%;
}

.oc_bank_issue {
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
}

.sum_for_month {
    font-size: 24px;
    line-height: 38px;
}

.sum_for_month Span {
    font-size: 16px;
    color: var(--gray);
}

/* --- Additional Call Buttons --- */
.order_call_but {
    display: flex;
    flex-direction: column;
    margin: 0 0 16px 0;
    padding: 0 0 16px 0;
    border-bottom: 1px solid var(--border-color);
}

.order_call_but A.btn {
    width: 100%;
    margin: 0 0 8px 0;
}

.order_call_but A.btn:last-child {
    margin: 0;
}

/* --- Ask Price Popup --- */
.ask_price_form {
    width: calc(100% - 20px);
    max-width: 400px;
    padding: 32px;
}

.ask_price_form .long_div.row {
    margin: 0;
}

.ask_price_form .popup_subtitle {
    margin: 0;
}

.popup_subtitle Span.margin {
    display: flex;
    justify-content: center;
    padding: 8px 0 0 0;
}

.popup_subtitle Span.error {
    color: var(--orange);
}

.popup_ring {
    display: flex;
    justify-content: center;
}

.short_description {
    margin-bottom: 12px;
    display: flex;
    flex-direction: column;
}

.short_description-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 12px;
}

/* --- Waranty information in Main product --- */
.waranties {
    display: flex;
    flex-direction: column;
}

.waranty_item {
    display: flex;
    border-bottom: 1px solid var(--base-color-3);
    font-size: 13px;
    padding: 0 0 10px 0;
    margin: 0 0 10px 0;
}

.waranty_item:last-child {
    margin: 0;
    border: none;
}

.waranty_item .icon {
    width: 20px;
    height: 20px;
    fill: var(--base-color-5);
    flex-shrink: 0;
}

.waranty_box {
    width: 100%;
    padding: 0 0 0 16px;
    display: flex;
    flex-direction: column;
}

.waranty_title {
    font-size: 14px;
    font-weight: 700;
    margin: 2px 0 10px 0;
}

.waranty_box LI {
    padding: 0 0 5px 0;
    color: var(--base-color-5);
    line-height: 1.2;
}

.waranty_box LI:last-child {
    padding: 0;
}

/* --- Cheaper Together in Main product --- */
.cheaper {
    display: flex;
    flex-direction: column;
}

.cheaper_slider {
    margin: 0 -16px 60px -16px;
    width: calc(100% + 32px);
}

.cheaper_slider:not(.slick-initialized) {
    display: flex;
    overflow: hidden;
}

.cheaper_slider.slick-initialized {
    padding-bottom: 60px;
}

.slick-initialized .slick-slide.cheaper_item {
    display: flex;
}

.cheaper_item {
    display: flex;
    flex-direction: column;
    background: var(--white);
    padding: 16px;
    border-radius: var(--border-radius);
}

.cheaper_slider:not(.slick-initialized) .cheaper_item {
    display: none;
}

.cheaper_slider:not(.slick-initialized) .cheaper_item:first-child {
    display: flex;
    width: 100%;
}

.cheaper_item > .together {
    padding-bottom: 10px;
}

.cheaper .added_goods {
    position: relative;
    padding: 0;
    border: none;
    margin-bottom: 10px;
}

.cheaper .item_text {
    margin-bottom: 6px;
}

.cheaper .it_title {
    margin: 0 0 5px 0;
}

.cheaper .it_title .item_link {
    font-size: 12px;
    line-height: 1.2;
}

.cheaper .item_code {
    font-size: 12px;
    color: var(--base-color-5);
    margin-bottom: 0;
}

.cheaper .bottom_wrap {
    justify-content: flex-end;
}

.cheaper .price_box {
    flex-direction: row;
}

.cheaper .total_sum {
    font-size: 26px;
    line-height: 1.2;
    margin: 0 0 0 12px;
}

.cheaper .total_sum.active {
    color: var(--error);
}

.cheaper .total_sum Small {
    font-size: 16px;
}

.cheaper .price_box .total_sum_old {
    margin-bottom: 3px;
}

.cheaper_plus {
    display: flex;
    position: relative;
    height: 40px;
    margin: 0 0 10px 0;
}

.cheaper_plus::before,
.cheaper_plus::after {
    content: '';
    width: 40px;
    height: 2px;
    background: var(--accent-color-1);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.cheaper_plus::after {
    transform: translate(-50%, -50%) rotate(90deg);
}

.cheaper_prise {
    display: flex;
    flex-direction: column;
    border-top: 1px solid var(--accent-color-1);
    padding: 10px 0 0 0;
    width: 100%;
    margin: 0;
    align-items: center;
}

.cheaper_prise .together {
    display: flex;
    align-items: flex-end;
    margin-bottom: 12px;
}

.cheaper_prise .together .total_sum_old {
    margin-bottom: 3px;
}

.cheaper .cheaper_prise .total_sum {
    margin: 0 0 0 16px;
    font-size: 26px;
    height: auto;
}

.cheaper .cheaper_prise .total_sum Small {
    font-size: 18px;
}

.cheaper_prise .btn {
    width: 100%;
}

.cheaper_prise .btn .icon {
    width: 16px;
    height: 16px;
    margin-right: 10px;
}

.cheaper .slick-dots {
    display: flex;
    justify-content: center;
    position: absolute;
    bottom: 8px;
    width: calc(100% - 100px);
    left: 50%;
    transform: translateX(-50%);
}

.cheaper .slick-dots LI.slick-active Button {
    border-color: var(--main-color-lighter);
}

.cheaper .slick-dots LI.slick-active Button::before {
    background: var(--accent-color-3);
}

.cheaper .slick-dots Button::before {
    background: var(--gray-light);
}

.cheaper .slick-arrow {
    top: auto;
    bottom: 0;
}

.cheaper .slick-arrow.slick-prev {
    left: 16px;
    transform: rotate(180deg);
}

.cheaper .slick-arrow.slick-next {
    right: 16px;
    transform: none;
}

/* --- Main Info Box in Main product --- */
.main_info_box,
.sorts_info {
    display: flex;
    flex-direction: column;
}

/* --- Characteristics --- */
.char_short {
    display: flex;
    flex-direction: column;
    margin: 0 0 60px 0;
}

.char_short LI {
    border-radius: var(--border-radius);
    display: flex;
}

.char_short LI:nth-child(odd) {
    background: var(--white);
}

.char_short .tit,
.char_short .value {
    font-size: 14px;
    padding: 8px 10px 4px 10px;
    display: inline-flex;
    width: 50%;
    word-break: break-word;
}

.char_short .value {
    width: 50%;
    justify-content: flex-end;
}

.char_short A.see_more {
    margin: 8px;
    position: relative;
    padding-right: 16px;
}

/* --- Description --- */
.description {
    display: flex;
    flex-direction: column;
    margin: 0 0 60px 0;
}

.description Article {
    margin: 0;
}

.description.short_desc .article_text {
    max-height: 291px;
    overflow: hidden;
    position: relative;
}

.description.short_desc .article_text.full {
    max-height: unset;
}

.description.short_desc .article_text.shadow::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 20px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--site-bg) 100%);
}

.description.short_desc .article_text.shadow.full::before {
    opacity: 0;
    visibility: hidden;
}

.description .show_article-more {
    color: var(--accent-color-3);
    font-size: 14px;
    display: block;
    margin-top: 20px;
    width: max-content;
    padding: 0 16px 0 0;
    background-color: transparent;
    border: none;
    position: relative;
    cursor: pointer;
    transition: 0.3s;
}

.description .show_article-more::before,
.description .show_article-more::after {
    content: "";
    width: 8px;
    height: 1px;
    background-color: var(--accent-color-3);
    position: absolute;
    top: 50%;
    right: 0;
    transform-origin: right;
    transition: 0.3s;
}

.description .show_article-more::after {
    transform: translateY(-50%) rotate(45deg);
}

.description .show_article-more::before {
    transform: translateY(-50%) rotate(-45deg);
}


/* --- Reviews --- */
.product_reviews {
    display: flex;
    flex-direction: column;
    margin: 0 0 60px 0;
}

.product_reviews .main_title .num {
    font-weight: 400;
    margin: 0 0 0 6px;
    color: var(--base-color-5);
}

.comments_list {
    display: flex;
    flex-direction: column;
    margin: -5px 0 0 0;
}

/* --- Photos & Videos Tab --- */
.photo_section {
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
    margin: 0 0 32px 0;
}

.photo_section LI {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.photo_section LI:first-child {
    margin: 0;
}

.photo_section LI Img {
    max-width: 100%;
    aspect-ratio: 1 / 1;
    height: auto;
    object-fit: contain;
}

.photo_section LI .preloader {
    width: 64px;
    height: 64px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.photo_section LI .is_video {
    cursor: pointer;
}

.photo_section LI .is_video .icon {
    width: 64px;
    height: auto;
    fill: var(--youtube);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* --- Buy Together Tab --- */
.up_sale .product_wrap {
    margin: 0 0 var(--section-bottom) 0;
}

.cart_window .up_sale .product_wrap {
    margin:0 0 4px 0;
}

.cart_window .up_sale H3 {
    margin:16px 0;
}

/* --- Reviews Tab --- */
.main_reviews .main_title {
    font-size: 20px;
    margin: 0 8px 0 0;
}

.main_reviews .main_title Span {
    margin: 0 0 0 6px;
    display: none;
}

.main_reviews .comments_list {
    margin: 0;
}

.all_comment_parts {
    background: var(--white);
    margin: 0 0 5px 0;
    padding: 10px;
    border-radius: var(--border-radius);
}

.main_reviews .comment_one:last-child .all_comment_parts {
    margin: 0;
}

.comment_top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 5px;
}

.comment_top .together {
    display: flex;
    margin: 0 5px 0 0;
    align-items: baseline;
}

.comment_top .comment_name {
    font-size: 14px;
    font-weight: 700;
    margin: 0 5px 0 0;
}

.comment_top .date_comment {
    font-size: 12px;
    color: var(--base-color-5);
}

.comment_top .product_raiting,
.comment_top .product_raiting .stars {
    margin: 0;
}

.comment_body {
    font-size: 12px;
    line-height: 1.4;
    display: flex;
    flex-direction: column;
    margin: 0 0 5px 0;
    width: 100%;
    padding: 0;
}

.coment_text {
    display: flex;
}

.comment_body .all_photos_videos {
    margin: 4px 0 0 -8px;
}

.product_rate {
    display: flex;
    flex-direction: column;
    padding: 0 0 0 20px;
    margin: 5px 0 0 0;
}

.product_rate Span {
    margin: 0 0 12px 0;
}

.product_rate Span:last-child {
    margin: 0;
}

.product_rate dt {
    position: relative;
    font-weight: 700;
    margin: 0 0 4px 0;
}

.product_rate .advantages::after,
.product_rate .advantages::before,
.product_rate .disadvantages::before {
    content: '';
    height: 10px;
    width: 2px;
    position: absolute;
    top: 3px;
    left: -16px;
    background: var(--success);
}

.product_rate .advantages::before {
    transform: rotate(90deg);
}

.product_rate .disadvantages::before {
    background: var(--error);
    transform: rotate(90deg);
}

.comment_bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

A.comment_reply {
    display: flex;
    align-items: center;
    font-size: 12px;
    text-decoration: none;
    color: var(--main-color-light);
    transition: .3s;
}

A.comment_reply .icon {
    margin-top: -2px;
    margin-right: 6px;
    width: 16px;
    height: 16px;
    fill: var(--accent-color-3);
    transition: .3s;
}

.fingers {
    display: flex;
}

.dislike {
    margin: 0 0 0 16px;
    display: flex;
    align-items: center;
}

.fingers .dislike,
.fingers .like {
    cursor: pointer;
    display: flex;
    align-items: center;
    color: var(--base-color-5);
    font-size: 14px;
}

.fingers .icon {
    width: 16px;
    height: 16px;
    fill: var(--base-color-5);
}

.fingers .like.active .icon {
    fill: var(--success);
}

.fingers .dislike.active .icon {
    fill: var(--error);
}

.comment_one .answers {
    width: 100%;
    margin: 0 0 16px 0;
    padding: 0 0 0 16px;
    position: relative;
}

.main_reviews .comment_one:last-child .answers {
    margin: 16px 0 0 0;
}

.comment_one .answers:after {
    content: '';
    width: 2px;
    height: 100%;
    background: var(--main-color-lighter);
    position: absolute;
    top: 0;
    left: 0;
}

.comment_one .answers LI {
    background: var(--white);
}

.comment_one .answers .comment_top,
.comment_one .answers .comment_body {
    width: 100%;
    padding: 8px;
    margin: 0 0 8px 0;
}

.comment_one .answers .comment_body {
    padding: 0 8px 8px 8px;
}

/* --- Adding Review --- */
.comment_popup.popup {
    max-width: 700px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    padding: 16px 8px 16px 16px;
}

.comment_popup.popup {
    padding-bottom: 8px;
}

.comment_popup .title_wrap .for_answer,
.comment_popup .title_wrap.is_answer .for_comment,
.comment_popup .send_comment .for_answer,
.comment_popup .send_comment.is_answer .for_comment {
    display: none;
}

.comment_popup .title_wrap .for_comment,
.comment_popup .title_wrap.is_answer .for_answer,
.comment_popup .send_comment .for_comment,
.comment_popup .send_comment.is_answer .for_answer {
    display: flex;
}

.comment_popup .message .for_answer,
.comment_popup .message.is_answer .for_comment {
    display: none;
}

.comment_popup .message .for_comment,
.comment_popup .message.is_answer .for_answer {
    display: inline-flex;
}

.comment_popup .product_raiting {
    border: 1px solid var(--border-color);
    margin-bottom: 15px;
    padding: 10px 0;
    border-radius: var(--border-radius);
}

.comment_popup .long_div.send_btn {
    padding-top: 30px;
}

.stars_labels {
    display: flex;
    width: 100%;
}

.stars_labels Label {
    color: var(--base-color-5);
    width: 20%;
    display: flex;
    justify-content: center;
    text-align: center;
    font-size: 10px;
}

.reviews_raiting .star_wrap {
    display: flex;
    width: 100%;
    justify-content: space-around;
}

.reviews_raiting.product_raiting .icon {
    width: 26px;
    height: 26px;
}

.comment_photo {
    border: 1px solid var(--footer-bg);
    padding: 16px 16px 8px 16px;
    margin: 0 0 16px 0;
    border-radius: var(--border-radius);
}

.comment_photo .header {
    display: flex;
    flex-direction: column;
    margin: 0 0 16px 0;
}

.comment_photo .main_tit {
    display: flex;
    align-items: center;
    margin: 0 0 8px 0;
}

.comment_photo .main_tit .icon {
    margin: 0 16px 0 0;
    fill: var(--gray);
}

.comment_photo .sub_tit {
    font-size: 12px;
    line-height: 1.5;
    color: var(--gray-light);
}

.comment_photo .for_but {
    display: flex;
}

.comment_photo .for_but A.btn {
    width: 100%;
}

.comment_photo .add_video {
    margin: 0 0 8px 0;
}

.comment_photo .add_video .long_div {
    margin: 0;
}

.all_photos_videos {
    display: flex;
    margin: 8px 0 8px -8px;
    flex-wrap: wrap;
    width: calc(100% + 8px);
}

.video .all_photos_videos {
    margin: 0 0 8px -8px;
}

.all_photos_videos .cpv_box {
    display: flex;
    margin: 8px 0 0 8px;
    width: 86px;
    height: 60px;
    position: relative;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
    padding: 2px;
    transition: .3s;
}

.all_photos_videos .cpv_box Img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.all_photos_videos .del_photo {
    position: absolute;
    top: -4px;
    right: -4px;
    background: var(--white);
    border-radius: 3px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: .3s;
}

.all_photos_videos .cpv_box Span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
}

.all_photos_videos .cpv_box Span .svg_icon {
    fill: var(--error);
    width: 32px;
    height: 32px;
}

.all_photos_videos .del_photo .svg_icon {
    fill: var(--icon-color-gray);
    width: 18px;
    height: 18px;
    transition: .3s;
}

.comment_popup .long_div.check_wrap {
    margin: 0 0 20px 0;
}


/* --- Fixed product panel --- */
.sticky_header {
    position: fixed;
    bottom: 0;
    left: 0;
    padding: 8px;
    background: var(--white);
    z-index: 6;
    box-shadow: 0 6px 16px rgba(0, 0, 0, .3);
    width: 100%;
    flex-wrap: nowrap;
    margin: 0;
}

.sticky_header .desktop {
    display: none;
}

.sticky_header .together {
    display: flex;
    justify-content: space-between;
    width: 100%;
}

.sticky_header .show_price {
    margin: 0;
}

.sticky_header.product_price .main_price {
    font-size: 18px;
    line-height: 1.2;
}

.sticky_header .in_stock,
.sticky_header .not_available {
    height: auto;
}

.sticky_header.product_price .old_price {
    display: none;
}

.sticky_header .together .together {
    justify-content: flex-start;
    width: auto;
}

.sticky_header.product_price .add_in-list {
    margin: 0 0 0 16px;
}

.sticky_header .product_btns {
    order: 10;
    align-items: center;
    width: auto;
}

.sticky_header .product_btns .btn {
    margin: 0 0 0 16px;
    height: 38px;
    width: max-content;
    flex-shrink: 0;
}

/* --- Blog of Store --- */
/* --- Blog List --- */
.blog_list {
    display: flex;
    flex-direction: column;
    margin-bottom: var(--section-bottom);
    width: 100%;
}

.blog_list .title_wrap {
    padding-right: 75px;
}

.blog_list .link-more_news.desk {
    display: none;
}

.blog_list .link-more_news.mob {
    margin: 30px auto 0 auto;
}

.blog_grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.blog_grid .one_blog {
    width: 100%;
    margin: 0;
}

.blog_items {
    display: flex;
    flex-direction: column;
    flex-direction: row;
    flex-wrap: wrap;
}

.one_blog {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background: var(--white);
    margin: 0 0 16px 0;
    line-height: 1.6;
    width: 100%;
    border-radius: var(--border-radius);
    overflow: hidden;
    transition: .3s;
}

.one_blog:last-child {
    margin: 0;
}

.one_blog figcaption {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    padding: 16px;
}

.blog_image {
    display: flex;
    align-items: center;
    width: calc(100% + 32px);

    height: auto;
    margin: -16px -16px 15px -16px;
}

.blog_image Img {
    display: block;
    aspect-ratio: 3 / 2;
    width: 100%;
    height: auto;
    object-fit: cover;
}

.blog_name {
    display: flex;
    font-size: 14px;
    line-height: 1.3;
    color: var(--text);
    text-decoration: none;
    font-weight: 600;
    transition: .3s;
}

.blog_text {
    margin: 10px 0 8px 0;
    font-size: 12px;
    line-height: 1.5;
    color: var(--base-color-5);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}

.read_all-news {
    text-decoration: none;
    max-width: 100%;
    font-size: 14px;
    line-height: 1.2;
    color: var(--accent-color-3);
    display: block;
    margin-top: 10px;
    padding-right: 26px;
    width: max-content;
    position: relative;
    transition: 0.3s;
}

.read_all-news::before,
.read_all-news::after {
    content: "";
    width: 8px;
    height: 1px;
    background-color: var(--accent-color-3);
    transform-origin: right;
    position: absolute;
    top: 50%;
    right: 5px;
    transition: 0.3s;
}

.read_all-news::before {
    transform: translateY(-50%) rotate(-45deg);
}

.read_all-news::after {
    transform: translateY(-50%) rotate(45deg);
}

.read_all-btn {
    font-size: 10px;
    font-weight: 600;
    margin-top: auto;
    min-height: 22px;
    padding: 0 12px;
}

.read_all-btn .icon {
    width: 12px;
    height: 12px;
    margin-left: 10px;
    transition: 0.3s;
}

.blog_info {
    display: flex;
    justify-content: space-between;
    color: var(--base-color-5);
    font-size: 12px;
    padding-top: 15px;
}

.blog_info .icon {
    fill: var(--base-color-5);
    width: 14px;
    height: 14px;
}

.blog_info Div {
    display: flex;
    align-items: center;
}

.blog_info .together Div {
    margin: 0 0 0 16px;
}

/* --- Last news of Blog --- */
.last_blog_items:not(.slick-initialized) {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: hidden;
    max-width: calc(100% + 16px);
    width: calc(100% + 16px);
    margin: 0 0 0 -16px;
    padding: 0 8px;
}

.last_blog_items .slick-track {
    min-width: 100%;
    display: flex;
} 

.last_blog_items .slick-list {
    min-width: 100%;
    padding-top: 65px;
    margin-top: -65px;
}

.last_blog_items .slick-arrow {
    top: -64px;
    transform: none;
}

.last_blog_items .slick-arrow.slick-next {
    right: 16px;
}

.last_blog_items .slick-arrow.slick-prev {
    right: 56px;
    left: auto;
    transform: rotate(180deg);
}

.last_blog_items:not(.slick-initialized) .one_blog {
    margin: 0 8px;
    flex: 0 0 272px;
}

.last_blog_items {
    flex-direction: row;
    max-width: calc(100% + 16px);
    width: calc(100% + 16px);
    margin: 0 -16px 0 0;
}

.last_blog_items UL {
    display: flex !important;
    margin: 0 0 0 8px;
}

.last_blog_items .one_blog {
    flex: 0 0 272px;
    margin: 0 16px 0 0;
    justify-content: space-between;
    display: flex;
    padding: 16px;
}

/* --- Blog Details --- */
.blog_details {
    display: flex;
    flex-direction: column;
    margin-bottom: var(--section-bottom);
}

.blog_details.centre {
    max-width: 982px;
}

.blog_details .blog_info {
    padding: 0;
    width: 100%;
    margin-bottom: 20px;
}

.blog_det_img {
    margin: 0 0 16px 0;
}

.blog_details > article {
    margin-bottom: var(--section-bottom);
}

/* --- Product in Blog Details --- */
.raw-html-embed {
    position: relative;
    float: right;
}

.raw-html-embed Strong {
    font-weight: normal;
}

.raw-html-embed .one_good {
    width: 158px;
    margin: 8px 0 8px 16px;
}

.raw-html-embed .one_good .status_list {
    top: 16px;
    left: 24px;
}

.raw-html-embed .one_good .status_list Span {
    padding: 1px 6px;
    margin: 0 0 4px 0;
    font-size: 13px;
    line-height: 18px;
}

/* --- Blog Comments --- */
.news_comments {
    display: flex;
    flex-direction: column;
}

/* --- Reed Others Blogs --- */
.blog_details .read_also .blog_info {
    margin: 8px 0 0 -8px;
    padding: 8px 8px 0 8px;
    width: calc(100% + 16px);
}

/* --- Checkout Page --- */
.checkout_header {
    display: flex;
    margin: 0 0 16px 0;
    padding: 8px 0 16px 0;
    border-bottom: 1px solid var(--border-color);
}

.checkout_header .logo_wrap {
    display: flex;
}

.checkout {
    padding-top: 24px;
    margin-bottom: var(--section-bottom);
    width: 100%;
}

.checkout .title_wrap {
    margin-bottom: 20px;
}

.checkout .main_title {
    font-size: 36px;
}

.checkout_inner {
    display: flex;
    flex-direction: column;
}

.checkout_form {
    display: flex;
    flex-direction: column;
    background: var(--white);
    padding: 30px 16px 16px 16px;
    width: calc(100% + 32px);
    margin: 0 0 0 -16px;
}

.order-step_wrap {
    margin: 0 0 60px 0;
}

.all_items.cart_order_products .ag_photo {
    margin-bottom: 36px;
}

.order-step_wrap:last-child {
    margin: 0;
}

.order-step_wrap.disabled {
    opacity: .6;
    filter: grayscale(1);
    pointer-events: none;
}

.checkout .tit {
    font-size: 20px;
    font-weight: 700;
    display: flex;
    align-items: center;
    margin: 0 0 12px 0;
}

.checkout .products .tit {
    text-transform: capitalize;
    justify-content: space-between;
    margin-bottom: 6px;
}

.checkout .cart_kit .tit {
    margin: 0;
    font-weight: 400;
    font-size: 16px;
    text-transform: none;
}

.checkout .products .tit A.edit {
    color: var(--accent-color-3);
    font-weight: 400;
    font-size: 14px;
}

.checkout .products .tit A.edit .icon {
    fill: var(--accent-color-3);
    width: 16px;
    height: 16px;
    margin-right: 6px;
}

.checkout .all_items {
    height: auto;
    padding: 0;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

.checkout .all_items.cart_order_products {
    padding-left: 4px;
    width: calc(100% + 4px);
    margin-left: -4px;
}

.all_added {
    display: flex;
    flex-direction: column;
}

.checkout .added_goods {
    padding: 16px 0 0 0;
}

.checkout .added_goods.added_goods_ignore {
    padding: 38px 0 8px 8px;
}

.checkout .it_title {
    margin: 6px 0 8px 0;
}

.order-step_wrap textarea {
    width: 100%;
}

.all_added .added_goods_ignore .price_box {
    justify-content: flex-start;
    width: auto;
}

.order-step_wrap .all_sums {
    display: none;
}

.if_registred_read {
    display: none;
    background: #e8edf9;
    border-radius: var(--border-radius);
    justify-content: space-between;
    align-items: center;
    padding: 0 16px 0 0;
}

.if_registred_read .user_info,
.if_registred_read .user_info .user_email {
    color: var(--text);
}

.if_registred {
    display: none;
}

.if_registred.active,
.if_registred_read.active {
    display: flex;
}

.if_registred_read .edit {
    font-size: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: var(--border-radius);
    background-color: var(--accent-color-1);
}

.if_registred_read .edit .icon {
    width: 16px;
    height: 16px;
    fill: var(--accent-color-3);
}

.if_registred.active {
    flex-direction: column;
}

.order_select {
    display: flex;
    margin: 0 0 18px 0;
    max-width: 430px;
}

.order_select .btn {
    font-size: 12px;
    width: 50%;
    padding-left: 5px;
    padding-right: 5px;
}

.order_select .btn:nth-child(1) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.order_select .btn:nth-child(2) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.order_select .btn.active {
    background: var(--accent-color-1);
    color: var(--accent-color-3);
    border: 2px solid transparent;
}
.registration_form .btn {
    width: 100%;
}
.enter_form .long_div.tit {
    margin: 0 0 20px 0;
    font-size: 18px;
    flex-direction: row;
    align-items: center;
    max-width: 430px;
}

.enter_form .long_div.tit .together {
    margin: 0 0 0 auto;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}

.enter_form .long_div.login_phone {
    margin-bottom: 16px;
}

.enter_form .together A.btn {
    font-size: 10px;
    min-height: 20px;
    margin: 0;
    font-weight: 400;
}

.enter_form .together A.btn:nth-child(1) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.enter_form .together A.btn:nth-child(2) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}


A.remind_me {
    width: max-content;
}

.password_box {
    position: relative;
    width: 100%;
}

.password_box Input {
    width: 100%;
    padding: 0 40px 0 8px;
}

.show_password {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 42px;
    position: absolute;
    bottom: 2px;
    right: 2px;
}

.show_password .svg_icon {
    width: 16px;
    height: 16px;
    fill: var(--main-color-lighter);
    transition: .3s;
}

.show_password.not_visible .svg_icon {
    width: 16px;
    height: 16px;
    fill: var(--orange);
}

.show_password::before {
    content: '';
    width: 18px;
    height: 2px;
    background: var(--orange);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
    opacity: 0;
    transition: .3s;
}

.show_password.not_visible::before {
    opacity: 1;
}

.checkout .radio_wrap {
    display: flex;
    flex-direction: column;
    padding: 8px 8px 8px 40px;
    margin-bottom: 0;
    border-radius: var(--border-radius);
    transition: 0s;
}

.checkout .radio_wrap.select_wrap {
    background: #e8edf9;
    margin-bottom: 8px;
    margin-top: 8px;
}

.checkout .radio_wrap .info {
    margin: 6px 0 0 0;
    color: var(--gray-light);
    display: none;
}

.checkout .radio_wrap .info.alert {
    color: var(--main-color-light);
}

.checkout .radio_wrap.select_wrap .info {
    font-size: 12px;
    color: var(--text);
    display: flex;
}

.checkout .radio_wrap .order_form_field {
    margin: 10px 0 0 0;
    display: flex;
    flex-direction: column;
}

.checkout .radio_wrap .order_form_field.delivery_other {
    margin: 0;
}

.checkout .radio_wrap .order_form_field Input {
    width: 100%;
}

.dropdown_select-city {
    margin: 0 0 20px 0;
    border: none;
}

.dropdown_select-branch {
    border: none;
}

.order_form_field .req {
    color: var(--error);
}

.checkout .attention {
    display: flex;
    border: 1px solid var(--orange);
    color: var(--orange);
    border-radius: var(--border-radius);
    padding: 16px;
}

.checkout .radio_wrap .together {
    display: none;
    justify-content: space-between;
    margin: 6px 0 0 0;
    align-items: center;
}

.checkout .radio_wrap.select_wrap .together {
    display: flex;
}

.checkout .radio_wrap.select_wrap .credit_info {
    margin: 0 16px 0 0;
}

.checkout_total {
    display: flex;
    flex-direction: column;
    width: calc(100% + 32px);
    margin: 32px 0 0 -16px;
}

/* --- Promo code --- */
.promocode {
    margin: 0;
    border-bottom: 1px solid var(--base-color-3);
}

.promocode .top {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.promocode .top .title {
    font-weight: 700;
    font-size: 16px;
}

.promocode .top A.btn.small{
    font-size: 10px;
    min-height: 20px;
    padding-left: 12px;
    padding-right: 12px;
    border-radius: 5px;
    transition: .3s;
}

.promocode .top A .po_2,
.promocode.open .top A .po_1 {
    display: none;
}

.promocode .top A .po_1,
.promocode.open .top A .po_2 {
    display: flex;
}

.promocode .code_input {
    display: flex;
    margin: 0;
    height: 0;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    transition: .3s;
}

.promocode.open .code_input {
    margin: 16px 0 0 0;
    height: auto;
    opacity: 1;
    visibility: visible;
    overflow: auto;
}

.code_input Input {
    width: calc(100% - 16px);
    margin: 0 16px 0 0;
}

.promocodes_here {
    display: flex;
    flex-direction: column;
    margin: 16px 0 0 0;
}

.one_added_code {
    display: flex;
    margin: 12px 0 0 0;
    justify-content: space-between;
    align-items: center;
}

.one_added_code:first-child {
    margin: 0;
}

.one_added_code .together {
    display: flex;
    align-items: center;
}

.one_added_code Label {
    margin: 0 6px 0 12px;
    color: var(--btn-bg);
    font-size: 13px;
}

.one_added_code.wrong Label {
    color: var(--error);
}

.one_added_code Span,
.promo_applied {
    border: 2px dashed var(--btn-bg);
    border-radius: var(--border-radius);
    padding: 2px 6px;
    color: var(--btn-bg);
}

.promo_applied {
    padding: 1px 4px;
}

.one_added_code.wrong Span {
    border-color: var(--error);
    color: var(--error);
}

.one_added_code A.del {
    display: flex;
}

.one_added_code A.del .icon {
    fill: var(--gray-light);
}

/* --- Total price --- */
.ct_main,
.promocode {
    display: flex;
    flex-direction: column;
    padding: 20px 16px;
    background: var(--white);
}

.ct_main .title_wrap {
    margin-bottom: 14px;
}

.ct_main .main_title {
    font-size: 20px;
}

.ct_main .all_sums::after {
    display: none;
}

.ct_main .cc_box_price {
    padding-top: 0;
    border-top: none;
}

.checkout_total .all_added {
    display: none;
}

.finish {
    display: flex;
    flex-direction: column;
    margin: 14px 0 0 0;
}

.finish A.btn {
    width: 100%;
}

.finish .long_div {
    display: inline;
    margin: 16px 0 8px 0;
}

.finish .long_div.small {
    font-size: 12px;
    line-height: 1.2;
    color: var(--base-color-5);
}

.finish .long_div.small A.link {
    color: var(--base-color-5);
}

.finish .long_div.error {
    color: var(--error);
    text-align: center;
}

.checkout_footer {
    display: flex;
    margin: 16px 0 0 0;
    padding: 16px 0 8px 0;
    border-top: 1px solid var(--border-color);
}


/* --- Success Page --- */
.success_page {
    padding: 8px;
    width: 100%;
}

.main_title.success {
    font-size: 18px;
}

.success_box {
    display: flex;
    flex-direction: column;
}

.success_order {
    padding: 16px;
    background: var(--white);
    margin: 0 0 32px 0;
}

.success_order .all_items {
    height: auto;
}

.success_order .bottom_wrap {
    justify-content: flex-end;
}

.success_order .cart_kit .item_text {
    margin: 0;
}

.success_order .total_sum {
    font-weight: 400;
    font-size: 20px;
}

.success_order .total_sum Small {
    font-size: 14px;
}

.success_order .long_div {
    margin: 0;
}

.success_order .long_div A.btn {
    margin: 0 0 8px 0;
    width: 100%;
}

.success_order .long_div A.btn:last-child {
    margin: 0;
}

.checkout_contacts {
    margin: 0 0 32px 0;
    display: flex;
    flex-direction: column;
}

.cc_main {
    padding: 16px;
    background: var(--white);
    display: flex;
    flex-direction: column;
}

.cc_box {
    display: flex;
    flex-direction: column;
    margin: 0 0 12px 0;
}

.checkout_title {
    display: flex;
    margin: 0 0 6px 0;
    color: var(--main-color-light);
}

.checkout_row {
    font-size: 14px;
    margin: 0 0 4px 0;
}

.cc_box_price {
    display: flex;
    flex-direction: column;
    padding: 16px 0 0 0;
}

.cbp_row {
    font-size: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.cbp_row + .cbp_row {
    margin-top: 12px;
}

.cbp_row.total {
    border-top: 1px solid var(--border-color);
    padding: 20px 0 0 0;
    margin: 20px 0 0 0;
}

.order_details .cbp_row.total {
    padding-top: 0;
    border-top: none;
    margin-top: 10px;
}

.cbp_tit {
    color: var(--base-color-5);
    display: flex;
    width: 100%;
}

.cbp_sum {
    margin: 0 0 0 16px;
    display: flex;
    flex-shrink: 0;
    align-items: baseline;
}

.cbp_sum Small {
    font-size: 12px;
    margin: 0 0 0 4px;
}

.cbp_row.total .cbp_sum {
    font-weight: 700;
    font-size: 20px;
    line-height: 1.4;
}

.cbp_row.total .cbp_sum Small {
    font-size: 20px;
    margin: 0 0 0 4px;
}

.order_details .cbp_row.total .cbp_sum {
    font-size: 16px;
}

.order_details .cbp_row.total .cbp_sum Small {
    font-size: 16px;
}

.success_article {
    margin: 0 0 32px 0;
}

/* --- User Account --- */
.profile {
    
    width: 100%;
}

.profile_menu {
    display: none;
}

.pm_items {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.pm_items .btn {
    font-weight: 400;
}

.profile_content {
    display: flex;
    width: calc(100% + 32px);
    margin: -8px 0 0 -16px;
    flex-direction: column;
    background: var(--white);
    padding: 30px 16px var(--section-bottom) 16px;
}

.profile_search {
    margin-bottom: 20px;
    width: 100%;
    position: relative;
}

.profile_search input {
    background-color: var(--base-color-1);
    font-size: 14px;
    width: 100%;
    padding: 0 46px 0 20px;
    height: 34px;
    border: 1px solid var(--base-color-4);
    background-image: none;
}

.profile_search button {
    padding: 0;
    position: absolute;
    top: 50%;
    right: 10px;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    transform: translateY(-50%);
    border: none;
    transition: .3s;
    font-size: 0;
}

.profile_search button .icon {
    fill: var(--accent-color-3)
}

.empty_page {
    display: flex;
    flex-direction: column;
}

.empty_page .title {
    padding: 32px 0 24px 32px;
    font-size: 18px;
}

.empty_page .text {
    padding: 0 0 32px 32px;
}

/* --- Order History --- */
.all_orders_history {
    display: flex;
    flex-direction: column;
}

.all_orders_history + .pages_wrap {
    margin-top: 30px;
}

.order_row {
    border-radius: var(--border-radius);
    border: 1px solid var(--base-color-4);
    margin: 10px 0 0 0;
    padding: 10px;
}

.order_row:first-child {
    margin: 0;
}

.order_show {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    cursor: pointer;
    position: relative;
    padding-right: 30px;
}

.order_show::after {
    content: '';
    width: 8px;
    height: 8px;
    border-bottom: 2px solid var(--accent-color-3);
    border-right: 2px solid var(--accent-color-3);
    position: absolute;
    top: 10px;
    right: 0;
    margin: 0 0 0 12px;
    transform: rotate(45deg);
    transition: .3s;
}

.open.order_show::after {
    transform: rotate(-135deg);
}

.order_show > .together {
    padding-right: 30px;
    display: flex;
}

.order_status_color {
    width: 8px;
    height: 100%;
    border-radius: 4px;
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
}

.order_row-wrap {
    flex: 0 0 50%;
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0 5px 0 0;
}

.order_number,
.order_sum_title {
    font-size: 10px;
    line-height: 1.2;
    color: var(--text);
    margin: 0 0 4px 0;
}

.order_number b {
    font-size: 12px;
}

.order_status {
    font-size: 12px;
    font-weight: 700;
}

.order_sum-price {
    font-size: 14px;
    font-weight: 700; 
}

.order_sum {
    flex: 0 0 50%;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    padding: 0 0 0 5px;
    overflow: hidden;
}

.order_show.open .order_sum {
    display: none;
}

.order_pics {
    display: flex;
    flex-wrap: wrap;
    padding-top: 12px;
}

.one_order_pic {
    width: 48px;
    height: 40px;
    margin: 3px 3px 0 0;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.order_pics.hide {
    display: none;
}

.one_order_pic Img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.order_details {
    display: flex;
    flex-direction: column;
    margin: 12px 0 0 0;
}

.order_details.order_hidden {
    display: none;
}

.order_control-btns {
    display: flex;
    flex-direction: column;
    padding-bottom: 10px;
    margin-bottom: 20px;
    border-bottom: 1px solid var(--border-color);
}

.order_control-btns .btn {
    width: 100%;
}

.order_control-btns .btn + .btn {
    margin-top: 10px;
}

.order_control-btns.desk {
    display: none;
}

.order_info {
    order: 1;
    display: flex;
    flex-direction: column;
    margin: 16px 0 0 0;
    padding-top: 20px;
    border-top: 1px solid var(--border-color)
}

.order_info .checkout_title {
    margin: 0 0 16px 0;
}

.delivery_name {
    display: flex;
    align-items: center;
    font-weight: 700;
    font-size: 14px;
    line-height: 1.2;
    margin-bottom: 10px;
}

.delivery_name svg {
    flex: 0 0 20px;
    margin-right: 12px;
    width: 20px;
    height: 20px;
}

.order_info-title {
    font-size: 12px;
    line-height: 1.2;
    color: var(--text-light);
    margin-bottom: 6px;
}

* + .order_info-title {
    margin-top: 10px;
}

.order_info-box {
    display: flex;
    flex-direction: column;
}

.oi_group {
    margin: 0 0 8px 0;
}

.order_items {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.order_items .checkout_title {
    text-transform: capitalize;
    margin: 0 0 16px 0;
}

.oi_all {
    display: flex;
    flex-direction: column;
}

.order_item {
    display: flex;
    flex-direction: column;
    margin: 10px 0 0 0;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border-color);
}

.order_item > .col:nth-child(1) {
    display: flex;
    margin-bottom: 10px;
}

.order_item-img {
    display: block;
    margin-right: 10px;
    width: 90px;
    height: 75px;
}

.order_item-img img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background-color: var(--base-color-1);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
}

.order_item-info {
    display: flex;
    flex-direction: column;
    width: calc(100% - 90px);
}

.order_item-title {
    text-decoration: none;
    color: var(--text);
    font-size: 12px;
    line-height: 1.2;
    transition: 0.3s;
    margin-bottom: 4px;
}

.order_item-code {
    color: var(--text-light);
    font-size: 12px;
    line-height: 1.2;
}

.order_item > .col:nth-child(2) {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.one_item-cost {
    font-size: 12px;
    line-height: 1.2;
}

.one_item-cost span {
    color: var(--text-light);
}

.total-cost {
    font-size: 12px;
    line-height: 1.2;
}

.order_item:first-child {
    margin: 0;
}

.oi_row {
    display: flex;
    margin: 8px 0 0 0;
    justify-content: space-between;
}

.oi_row:first-child {
    margin: 0;
}

.order_name {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.oi_row .it_title {
    margin: 4px 0 8px 0;
}

.oi_col {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.oi_col:first-child {
    align-items: flex-start;
}

.oi_col:last-child {
    align-items: flex-end;
}

.oi_col_tit {
    font-size: 13px;
    color: var(--gray);
    margin: 0 0 6px 0;
}

/* --- profile cart file upload --- */
.profile_cart_box {width:100%; margin:0 0 20px 0; padding:16px; background:var(--white); border:1px solid var(--border-color); border-radius:var(--border-radius); box-shadow:var(--shadow-active);}
	.profile_cart_box Form {display:flex; flex-direction:column; gap:12px;}
		.cart_file {display:flex; align-items:center; width:100%; min-height:64px; padding:12px; background:var(--site-bg); border:1px dashed var(--base-color-4); border-radius:var(--border-radius);
		            cursor:pointer; transition:.3s;}
        .cart_file:hover {border-color:var(--sub-color); background:var(--accent-color-1);}
			.cart_file Input {position:absolute; left:-9999px;}
			.cart_file_icon {display:flex; align-items:center; justify-content:center; width:40px; height:40px; margin:0 12px 0 0; border-radius:var(--border-radius); background:var(--accent-color-1);
			                 flex-shrink:0;}
				.cart_file_icon .icon {width:20px; height:20px; fill:var(--accent-color-3);}
			.cart_file_text {display:flex; flex-direction:column; min-width:0;}
				.cart_file_title {font-size:14px; font-weight:600; color:var(--text); margin:0 0 4px 0;}
				.cart_file_name {font-size:13px; color:var(--text-light); overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
		.cart_file_btn {width:100%;}
			.cart_file_btn .icon {margin:0 8px 0 0; fill:var(--white);}
.profile_cart_box .catalog_list {margin-bottom:32px;}
    .profile_cart_box .catalog_list .one_good .btn.delete {background:var(--error); padding:0;}

/* --- Wish List --- */
.favorite_control {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 8px 0;
}

.delete_all.check_wrap {
    margin: 0;
}

.favorite_control .delete_this {
    text-decoration: none;
    color: var(--text);
    display: flex;
    align-items: center;
    pointer-events: none;
    opacity: .4;
    transition: .3s;
}

.delete_this .icon {
    margin: 0 6px 0 0;
    fill: var(--text);
}

.favorite_control .delete_this.active {
    pointer-events: unset;
    opacity: 1;
}

.add_in-list .check_wrap {
    padding: 0;
}

.add_in-list .check_wrap Label {
    width: 100%;
    height: 100%;
}

.add_in-list .check_wrap Input[type="checkbox"]:not(:checked)+Label::before,
.add_in-list .check_wrap Input[type="checkbox"]:checked+Label::before,
.add_in-list .check_wrap Input[type="checkbox"]:not(:checked)+Label::after,
.add_in-list .check_wrap Input[type="checkbox"]:checked+Label::after {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.add_in-list .check_wrap Input[type="checkbox"]:not(:checked)+Label::after,
.add_in-list .check_wrap Input[type="checkbox"]:checked+Label::after {
    transform: translate(-50%, -50%) rotate(-45deg);
}



/* --- Compare List --- */
.compare_group {
    display: flex;
    flex-direction: column;
    margin: 0 0 16px 0;
}

.compare_group:last-child {
    margin: 0;
}

.for_comare_title {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0 0 16px 0;
    padding: 8px;
    border-radius: var(--border-radius);
    align-items: flex-start;
}

.comare_title {
    font-size: 20px;
    line-height: 1.2;
    margin: 16px 0 0 8px;
}

.for_comare_title A.btn {
    pointer-events: none;
    opacity: .5;
    transition: .3s;
}

.for_comare_title A.btn.show {
    pointer-events: unset;
    opacity: 1;
}
/* --- Compare Details --- */
.cr_title_row {
    display: flex;
    flex-direction: column;
    margin: 0 0 24px 0;
}

.cr_title_row .main_title {
    flex-wrap: wrap;
    align-items: baseline;
    margin: 0 0 16px 0;
}

.cr_title_row .main_title Span {
    margin: 0 6px 0 0;
}

.cr_title_row .main_title Span:last-child {
    color: var(--text-light);
    margin: 3px 0 0 0;
    font-size: 14px;
}

.cr_but_row {
    display: flex;
    justify-content: space-between;
}

.compare_toggle {
    display: flex;
    margin: 0 0 0 16px;
    align-items: center;
}

.cr_but_row A {
    display: flex;
    position: relative;
    color: var(--main-color);
    text-decoration: none;
    align-items: center;
    transition: .3s;
}

.compare_toggle A.active {
    display: none;
}

.compare_toggle A .icon {
    margin: 0 6px 0 0;
    fill: var(--main-color);
}

.cr_but_row A.plus {
    padding: 0 0 0 24px;
}

.cr_but_row A.plus::before,
.cr_but_row A.plus::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 16px;
    height: 2px;
    border-radius: 2px;
    background: var(--main-color);
    transition: .3s;
}

.cr_but_row A.plus::after {
    transform: translateY(-50%) rotate(90deg);
}

.for_compare {
    width: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
}

.compare_products {
    display: flex;
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    scrollbar-width: none;
    position: sticky;
    top: 70px;
    margin: 0 0 400px;
    box-shadow: 0 6px 8px -10px rgba(0, 0, 0, .7);
    z-index: 1;
    background: var(--white);
}

.compare_products .one_good {
    width: 50%;
    max-width: 172px;
    flex-shrink: 0;
}

.compare_products .one_good .main_price {
    font-size: 18px;
}

.one_good .main_price Small {
    font-size: 16px;
}

.compare_options {
    display: flex;
    flex-direction: column;
    width: 100%;
    overflow-y: hidden;
    overflow-x: auto;
    margin: -400px 0 0 0;
}

.compare_options LI {
    display: flex;
    width: 100%;
}

.compare_options LI.for_compare_title {
    height: 30px;
}

LI.for_compare_title .compare_title {
    width: 100%;
    height: 30px;
    position: absolute;
    top: auto;
    left: 0;
    padding: 0 0 0 8px;
    display: flex;
    align-items: center;
    background: var(--site-bg);
    font-weight: 700;
}

.compare_options .one_good {
    width: 50%;
    max-width: 172px;
    flex-shrink: 0;
    padding: 8px;
}

/* Page 404 */
.page_404 {
    display: flex;
    flex-direction: column;
    margin: 100px auto 150px auto;
}

.text_404 {
    display: flex;
    flex-direction: column;
    margin: 0 0 32px 0;
}

.text_404_num {
    font-size: 80px;
    line-height: 1.2;
    color: var(--error);
}

.text_404_title {
    font-size: 22px;
    line-height: 1.2;
    color: var(--error);
    margin: 0 0 16px 0;
}

.links_404 {
    display: flex;
    flex-direction: column;
}

.links_404_title {
    margin: 0 0 64px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
}

.links_404_title A.btn {
    margin: 0 16px 8px 16px;
}

.links_404_subtitle {
    margin: 0 0 8px 0;
}

UL.links_404_list {
    display: flex;
    flex-wrap: wrap;
}

UL.links_404_list LI {
    margin: 0 24px 8px 0;
    color: var(--link);
    max-width: max-content;
    transition: .3s;
}

UL.links_404_list A {
    color: var(--link);
    text-decoration: underline;
    width: max-content;
    transition: .3s;
}

/* Google Map */
.google_map {
    display: flex;
    flex-direction: column;
    margin-bottom: 32px;
}

.google_map Iframe,
.google_map .map_area {
    width: 100%;
    height: 400px;
}

/* Contact Us - Feedback */
.contact_us {
    display: flex;
    flex-direction: column;
    margin-bottom: 32px;
}

.contact_us .tit {
    font-size: 18px;
    line-height: 1.4;
    font-weight: 700;
    color: var(--main-color-lighter);
    margin: 0 0 16px 0;
    width: 100%;
}

.contact_us .long_div.row {
    margin: 0;
}

.contact_us .feedback {
    background: var(--white);
    padding: 16px;
    margin: 0 0 16px 0;
}

.contact_us .footer_contacts {
    background: var(--white);
    padding: 16px;
}

/* Stores on Google Map */
.stores {
    display: flex;
    flex-direction: column;
    margin-bottom: 32px;
}

.stores .title_wrap {
    padding: 0 8px;
    margin: 0 auto 16px auto;
    max-width: var(--content-width);
}

.all_cities {
    display: flex;
    flex-direction: column;
    margin: 0 0 16px 0;
    width: 100%;
}

.all_cities .centre {
    max-width: var(--content-width);
}

.cities_btns {
    display: flex;
    flex-wrap: wrap;
    margin: 0 0 8px 0;
}

.cities_btns .btn {
    margin: 0 8px 8px 0;
}

.cities_btns .btn:last-child {
    margin: 0 0 8px 0;
}

.cities_btns .btn.active {
    background: var(--btn-bg);
    color: var(--text-inverse);
}

.cities_search {
    display: flex;
}

.cities_search Input {
    width: 100%;
}

.stores .together {
    display: flex;
    flex-direction: column;
    padding: 0 8px;
}

.map_main {
    display: flex;
    flex-direction: column;
    margin: 0 0 32px 0;
    width: 100%;
}

.map_main_box {
    width: 100%;
    height: 400px;
}

.all_stores {
    display: flex;
    flex-wrap: wrap;
    margin: -8px 0 0 -8px;
}

.map_address {
    display: flex;
    flex-direction: column;
    background: var(--white);
    padding: 16px;
    width: calc(100% - 8px);
    margin: 8px 0 0 8px;
    transition: .3s;
}

.stores .map_address .title_wrap {
    padding: 0;
}

.stores .map_address .address {
    margin: 0 32px 0 0;
}

.stores_title {
    display: flex;
    margin: 0 0 6px 0;
    color: var(--main-color-light);
}

.stores_row {
    margin: 0 0 4px 16px;
    line-height: 22px;
}

.map_box {
    display: none;
}

.active .map_box {
    display: flex;
    flex-direction: column;
    max-width: 860px;
}

.map_box .google_map {
    margin: 0;
    width: 100%;
    height: 400px;
}

/* --- Main FOOTER --- */
.main_footer {
    display: flex;
    background: var(--footer-bg);
    padding: 30px 0 50px 0;
}

.main_footer > .centre {
    display: flex;
    flex-direction: column;
}

.nav_and_contacts {
    display: flex;
    flex-direction: column;
    margin: 0;
}

.footer_nav {
    display: flex;
    flex-direction: column;
}

.menu_element {
    position: relative;
    margin-bottom: 30px;
}

.footer_menu-titile {
    font-weight: 700;
    color: var(--base-color-1);
    display: block;
    width: 100%;
    font-size: 14px;
    margin-bottom: 8px;
    position: relative;
}

.main_footer .whap_hidden {
    display: flex;
    flex-direction: column;
}

.main_footer LI A,
.footer_phones A {
    font-size: 14px;
    line-height: 1.2;
    margin: 0 0 8px 0;
    display: inline-flex;
    color: var(--base-color-4);
    text-decoration: none;
    max-width: max-content;
}

.footer_contacts.menu_element {
    margin: 0;
}

.footer_contacts.menu_element .whap_hidden.contacts_wrap {
    display: flex;
    flex-direction: row;
}

.footer_contacts.menu_element .whap_hidden.contacts_wrap .footer_phones {
    flex: 0 0 50%;
    padding-right: 5px;
}

.footer_contacts.menu_element .whap_hidden.contacts_wrap .hours_work {
    flex: 0 0 50%;
    padding-left: 5px;
}

.footer_contacts.menu_element .foo_mini_tit {
    font-size: 14px;
    font-weight: 600;
}

.footer_contacts.menu_element .hw_text {
    font-size: 14px;
    line-height: 1.6;
    color: var(--base-color-5);
}

.footer_phones,
.messenger_wrap,
.hours_work {
    display: flex;
    flex-direction: column;
    margin: 0 0 8px 0;
}

.foo_mini_tit {
    font-weight: 700;
    color: var(--base-color-1);
    display: block;
    width: 100%;
    font-size: 16px;
    line-height: 1.2;
    margin-bottom: 8px;
    position: relative;
}

.hw_text {
    line-height: 2.2;
}

.footer_social {
    display: flex;
    flex-direction: column;
    order: -1;
}

.for_foo_logo {
    display: flex;
    flex-direction: column;
    margin: 0 0 30px 0;
}

.foo_logo {
    margin: 0 0 16px 0;
}

.foo_logo Img {
    width: 200px;
    height: auto;
}

.foo_logo Img.desk {
    display: none;
}

.footer_slogan {
    font-size: 12px;
    color: var(--text-light);
}

.address {
    font-size: 12px;
    font-style: normal;
    color: var(--text-light);
}

.socials_row {
    display: flex;
    margin: 0 0 16px 0;
    justify-content: center;
}

.socials_row A {
    display: flex;
    margin: 0 8px;
}

.socials_row A .icon {
    width: 24px;
    height: 24px;
    fill: var(--gray-light);
}

.foo_copyrights {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sufix_copyrights {
    font-size: 12px;
    line-height: 1.2;
    margin-top: 12px;
}

.sufix_copyrights A {
    text-decoration: none;
    color: var(--text-light);
    transition: .3s;
}

.sufix_copyrights A:hover {
    color: var(--main-color);
    transition: .3s;
}

.download_list {
    display: flex;
    flex-direction: column;
    margin-top: 30px;
}

.download_list .btn {
    font-size: 14px;
    background-color: var(--accent-color-6);
}

.download_list .btn + .btn {
    margin: 10px 0 0 0;
}

.download_list .btn .icon {
    margin-right: 10px;
}

/* --- Page UP - button --- */
.page_up {
    display: block;
    width: 40px;
    height: 40px;
    position: fixed;
    bottom: 64px;
    right: 8px;
    background: var(--main-color);
    border-radius: var(--border-radius);
    visibility: hidden;
    opacity: 0;
    transition: .3s;
    z-index: 9;
}

.page_up:hover {
    background: var(--main-color-light);
}

.page_up.active {
    visibility: visible;
    opacity: 1;
}

.page_up::before {
    content: '';
    margin: 4px 0 0 0;
    width: 13px;
    height: 13px;
    position: absolute;
    top: 50%;
    left: 50%;
    border-top: 2px solid var(--white);
    border-right: 2px solid var(--white);
    transform: translate(-50%, -50%) rotate(-45deg);
}


/* --- FILTER TILES --- */

.filter_tiles {
    margin-bottom: var(--section-bottom);
}

.filter_tiles .centre {
    display: flex;
    flex-direction: column;
}

.filter_tiles .title_wrap {
    padding-right: 70px;
}

.filter_tiles-slider .slick-list {
    padding-top: 65px;
    margin-top: -65px;
}

.filter_tiles-slider:not(.slick-initialized) {
    display: flex;
    flex-wrap: wrap;
}

.filter_tiles-slider:not(.slick-initialized) .filter_tiles-item {
    display: none;
}

.filter_tiles-slider .slick-arrow {
    top: -62px;
    transform: none;
}

.filter_tiles-slider .slick-arrow.slick-next {
    right: 0;
}

.filter_tiles-slider .slick-arrow.slick-prev {
    right: 40px;
    left: auto;
    transform: rotate(180deg);
}

.filter_tiles-slider:not(.slick-initialized) .filter_tiles-item:nth-child(1),
.filter_tiles-slider:not(.slick-initialized) .filter_tiles-item:nth-child(2),
.filter_tiles-slider:not(.slick-initialized) .filter_tiles-item:nth-child(3),
.filter_tiles-slider:not(.slick-initialized) .filter_tiles-item:nth-child(4),
.filter_tiles-slider:not(.slick-initialized) .filter_tiles-item:nth-child(5),
.filter_tiles-slider:not(.slick-initialized) .filter_tiles-item:nth-child(6),
.filter_tiles-slider:not(.slick-initialized) .filter_tiles-item:nth-child(7),
.filter_tiles-slider:not(.slick-initialized) .filter_tiles-item:nth-child(8) {
    display: flex;
}

.filter_tiles-slide {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 5px;
}

.slick-initialized .slick-slide.filter_tiles-slide {
    display: flex;
}

.filter_tiles-slider .slick-dots {
    justify-content: center;
    margin-top: 10px;
}

.filter_tiles-slider .slick-dots li {
    transition: 0.3s;
    overflow: hidden;
    width: 16px;
    margin: 0 5px;
}

.filter_tiles-slider .slick-dots li:not(.visible) {
    width: 0;
    margin: 0;
}


.filter_tiles-item {
    width: calc((100% / 3) - (10px / 3));
    display: flex;
    margin-bottom: 5px;
    background-color: var(--base-color-1);
    padding: 8px;
    border-radius: var(--border-radius);
    border: var(--base-color-3);
    transition: 0.3s;
    box-shadow: var(--shadow-not-active);
}

.filter_tiles-item:nth-child(5n + 1),
.filter_tiles-item:nth-child(5n + 2),
.filter_tiles-item:nth-child(5n + 4) {
    margin-right: 5px;
}

.filter_tiles-item:nth-child(5n + 4) {
    margin-left: 16.66%;
}

.filter_tiles-img {
    display: block;
    width: 100%;
    height: auto;
}

.filter_tiles-img img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 2 / 1;
    object-fit: contain;
}


/* --- COOKIES terms Popup --- */
.cookies {
    background: var(--white);
    padding: 16px;
    border-radius: var(--border-radius);
    position: fixed;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% - 32px);
    max-width: max-content;
    display: flex;
    flex-direction: column;
    box-shadow: 0 6px 16px rgba(0,0,0,.3);
    z-index: 99;
    animation: jump 1s ease-in 1s both;
}

.cook_box {
    display: flex;
    flex-direction: column;
    margin: 0 0 16px 0;
}

.cook_text {
    margin: 0 0 16px 0;
}

.cook_text A {
    color: var(--link);
    transition: .3s;
}

.cook_text A:hover {
    color: var(--link-hover);
}

.cookies .btn {
    width: 100%;
    height: max-content;
}

.reject_but {
    display: flex;
    justify-content: center;
}

.reject_cookies {
    border: none;
    width: max-content;
    cursor: pointer;
    background: none;
    padding: 0;
    color: var(--text-light);
    transition: .3s;
}

.reject_cookies:hover {
    color: var(--error);
}

@keyframes jump {
    0% {
        bottom: -200px;
    }

    100% {
        bottom: 16px;
    }
}

/* --- Seo categories & prices --- */
.price_by_cat, .seo_by_cat, .cat_faq {
    margin: 16px 0;
}

.price_by_cat H3, .seo_by_cat H3, .cat_faq H3 {
    font-size: 18px;
    margin: 0 0 8px 0;
    font-weight: normal;
}

.price_by_cat Table,
.cat_faq DD Table {
    width: 100%;
    border-collapse: collapse;
}

.price_by_cat TR,
.cat_faq DD TR {
    background: var(--white);
    border-bottom: 1px solid var(--border-color);
}

.price_by_cat TR:last-child,
.cat_faq DD TR:last-child {
    border: none;
}

.price_by_cat TD,
.cat_faq DD TD {
    padding: 8px;
}

.price_by_cat TR TD:last-child,
.cat_faq DD TD:last-child {
    min-width: 90px;
    text-align: right;
}

.price_by_cat a {
    color: var(--accent-color-3);
}

/* --- Seo Faq --- */
.cat_faq dl > div {
    display: flex;
    flex-direction: column;
    border-radius: var(--border-radius);
    background: var(--white);
    margin: 0 0 16px 0;
    transition: .3s;
    margin: 0 0 8px 0;
}

.cat_faq DT {
    padding: 8px 8px 8px 32px;
    font-size: 16px;
    position: relative;
    cursor: pointer;
}

.cat_faq DT::before,
.cat_faq DT::after {
    content: "";
    width: 2px;
    height: 7px;
    background-color: var(--accent-color-4);
    position: absolute;
    top: 50%;
    left: 16px;
    transform-origin: bottom;
    transition: 0.3s;
}

.cat_faq DT::after {
    transform: translateY(-50%) rotate(45deg);
}

.cat_faq DT::before {
    transform: translateY(-50%) rotate(-45deg);
}

.cat_faq DT.active::after {
    transform: translateY(-50%) rotate(-45deg);
    transform-origin: top;
}

.cat_faq DT.active::before {
    transform: translateY(-50%) rotate(45deg);
    transform-origin: top;
}

.cat_faq DD a {
    color: var(--accent-color-3);
}

/* --- fly bunner --- */
.mediap {
    position: fixed;
    width: auto;
    max-width: 50%;
    height: auto;
    bottom: 16px;
    left: 16px;
    z-index: 8;
    transition: 0.3s;
}

.mediap.hidden {
    display: flex !important;
    opacity: 0;
    visibility: hidden;
}

.mediap .close_media {
    font-size: 0;
    background-color: var(--white);
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 2px solid var(--base-color-6);
    position: absolute;
    top: -16px;
    right: -16px;
    cursor: pointer;
    transition: 0.3s;
}

.mediap .close_media::before,
.mediap .close_media::after {
    content: "";
    width: 14px;
    height: 2px;
    background-color: var(--base-color-6);
    position: absolute;
    top: 50%;
    left: 50%;
    transition: 0.3s;
}

.mediap .close_media::before {
    transform: translate(-50%, -50%) rotate(-45deg);
}

.mediap .close_media::after {
    transform: translate(-50%, -50%) rotate(45deg);
}

@media (hover: hover) {
    .mediap .close_media:hover {
        background-color: var(--base-color-6);
    }

    .mediap .close_media:hover::before,
    .mediap .close_media:hover::after {
        background-color: var(--base-color-1);
    }
}

.mediap_link {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
}

.mediap picture {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
}

.mediap picture img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    border-radius: 16px;
    box-shadow: rgba(0, 0, 0, 0.66) 0px 0px 10px 0px;
    height: auto;
}

/* --- Contact puls button --- */

.contact_puls_btn {
    width: 68px;
    height: 68px;
    background: var(--accent-color-3);
    color: var(--base-color-1);
    font-size: 10px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    position: fixed;
    bottom: 128px;
    right: 16px;
    border-radius: 50%;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: .3s;
    z-index: 7;
}

.cpb_label {
    animation: cpb_show_label 6s infinite;
    position: absolute;
    color: var(--base-color-1);
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.contact_puls_btn.active .cpb_label, .contact_puls_btn.active .cpb_icons {
    display: none;
    animation-play-state: paused;
}

.cpb_label svg {
    margin-bottom: 2px;
}

.cpb_label svg, .cpb_label img {
    fill: var(--base-color-1);
    width: 20px;
    height: 20px;
}

.cpb_icons {
    animation: cpb_show_icons 6s infinite;
    background: var(--base-color-1);
    border-radius: 50%;
    width: 42px;
    height: 42px;
    overflow: hidden;
    position: absolute;
    left: 50%;
    top: 50%;
    margin: -21px 0 0 -21px;
    display: flex;
    flex-shrink: 0;
}

.cpb_icons_line {
    position: absolute;
    top: 10px;
    left: 9px;
    display: flex;
}

.cpb_label .icon {
    fill: var(--base-color-1);
}

.cpb_icons_line .icon {
    fill: var(--accent-color-3);
    margin-right: 44px;
    width: 24px;
    height: 24px;
}

.contact_puls_btn.active .cpb_close {
    background: var(--base-color-1);
    width: calc(100% + 2px);
    height: calc(100% + 2px);
    position: absolute;
    z-index: 1;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.cpb_close::before, .cpb_close::after {
    content: '';
    width: 22px;
    height: 3px;
    border-radius: 2px;
    background: var(--accent-color-3);
    position: absolute;
    top: 33px;
    left: 23px;
    transform: rotate(45deg);
    opacity: 0;
    transition: .3s;
}

.cpb_close::after {
    transform: rotate(-45deg);
}

.contact_puls_btn.active .cpb_close::before, .contact_puls_btn.active .cpb_close::after {
    opacity: 1;
}

.cpb_pulse {
    animation: cpb_pulse 2s infinite;
    width: 84px;
    height: 84px;
    background: var(--accent-color-3);
    transform: scale(0);
    position: absolute;
    left: -8px;
    top: -8px;
    z-index: -1;
    border-radius: 50%;
}

.cpb_pulse:nth-of-type(2) {
    animation-delay: .5s;
}

.contact_puls_btn.active .cpb_pulse {
    display: none;
}

@keyframes cpb_show_label {
    0%,20% {
        transform: scale(1);
    }

    21%,84% {
        transform: scale(0);
    }

    85%,100% {
        transform: scale(1);
    }
}

@keyframes cpb_show_icons {
    0%,20% {
        transform: scale(0);
    }

    21%,84% {
        transform: scale(1);
    }

    85%,100% {
        transform: scale(0);
    }
}

@keyframes cpb_pulse {
    0% {
        transform: scale(0);
        opacity: 1;
    }

    50% {
        opacity: .5;
    }

    100% {
        transform: scale(1);
        opacity: 0;
    }
}

@keyframes cpb_icon_step {
    0% { transform: translateX(0px); }
    20% { transform: translateX(0px); }
        20% { transform: translateX(0px); }
        30.240000000000002% { transform: translateX(0px); }
        32.8% { transform: translateX(-68px); }
        32.8% { transform: translateX(-68px); }
        43.04% { transform: translateX(-68px); }
        45.6% { transform: translateX(-136px); }
        45.6% { transform: translateX(-136px); }
        55.84% { transform: translateX(-136px); }
        58.400000000000006% { transform: translateX(-204px); }
        58.400000000000006% { transform: translateX(-204px); }
        68.64000000000001% { transform: translateX(-204px); }
        71.2% { transform: translateX(-272px); }
        71.2% { transform: translateX(-272px); }
        81.44% { transform: translateX(-272px); }
        84% { transform: translateX(0px); }
    84% { transform: translateX(-272px); }
    100% { transform: translateX(-272px); }}


/* --- Dropdown - Contact pulsing button --- */
.cpb_dropdown {
    height: auto;
    display: flex;
    flex-direction: column;
    position: fixed;
    right: 16px;
    bottom: 202px;
    z-index: 10;
    overflow: hidden;
    max-height: 0;
    transition: max-height 0.5s ease-out;
}

.cpb_dropdown.show {
    max-height: 1000px;
}

.cpb_dropdown .one_row {
    display: flex;
    transform: translateY(32px);
    opacity: 0;
    margin-bottom: 6px;
    transition: .4s ease, color .3s;
    max-height: 50px;
}

.cpb_dropdown .one_row:hover {
    box-shadow:0 0 10px -6px #000;
}

.cpb_dropdown .one_row A, .cpb_dropdown .one_row A:hover {
    padding:8px 12px;
    display:flex;
    color: var(--base-color-6);
    background:var(--base-color-1);
    border-radius:6px;
    position:relative;
    overflow:hidden;
}

.cpb_dropdown .one_row img, .cpb_dropdown .one_row .icon {
    width:20px;
    height:20px;
    margin:0 8px 0 0;
}

.cpb_dropdown .one_row A:hover .icon {
    fill:var(--accent-color-3);
}

.cpb_dropdown .one_row A::before {
    content:'';
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
    height:0;
    transition: .4s ease, color .3s;
    background:var(--accent-color-3);
}

.cpb_dropdown .one_row A:hover::before {
    height:6px;
    transform: rotate(-1deg);
    bottom: -2px;
}

.cpb_dropdown.show .one_row {
    transform: translateY(0);
    opacity: 1;
}

.cpb_dropdown.show .one_row:nth-child(1) {
    transition-delay: 0s;
}

.cpb_dropdown.show .one_row:nth-child(2) {
    transition-delay: 0.1s;
}

.cpb_dropdown.show .one_row:nth-child(3) {
    transition-delay: 0.2s;
}

.cpb_dropdown.show .one_row:nth-child(4) {
    transition-delay: 0.3s;
}

.cpb_dropdown.show .one_row:nth-child(5) {
    transition-delay: 0.4s;
}

.cpb_dropdown.show .one_row:nth-child(6) {
    transition-delay: 0.5s;
}

.cpb_dropdown.show .one_row:nth-child(7) {
    transition-delay: 0.6s;
}

.cpb_dropdown.show .one_row:nth-child(8) {
    transition-delay: 0.7s;
}

.cpb_dropdown A {
    text-decoration: none;
    display: flex;
    width: 100%;
    align-items: center;
    transition: .3s;
}

.cpb_dropdown A:hover {
    background: var(--accent-color-3);
}

.cpb_dropdown .one_row:hover .icon {
    fill: var(--accent-color-3);
}

