@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');

*,
::after,
::before {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased !important;
    -webkit-tap-highlight-color: transparent;
    outline: 0 !important;
}

html {
    font-family: "Montserrat", sans-serif;

}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 400;
    font-size: 1em;
}

a,
body,
div,
form,
h1,
h2,
h3,
h4,
h5,
li,
p,
ul {
    margin: 0;
    padding: 0;
    border: 0;
    text-decoration: none;
    line-height: 1;
}

button,
input,
textarea {
    outline: 0 !important;
    -webkit-transition: 0.125s;
    -o-transition: 0.125s;
    transition: 0.125s;
    font-family: inherit;
}

input:active,
input[type="checkbox"]:focus,
input[type="file"]:focus,
input[type="radio"]:focus,
input[type="text"]:focus {
    outline: 0 !important;
}

::-webkit-input-placeholder {
    color: #222;
}

::-moz-placeholder {
    color: #222;
}

:-moz-placeholder {
    color: #222;
}

:-ms-input-placeholder {
    color: #222;
}

::-webkit-scrollbar {
    width: 5px;
}

::-webkit-scrollbar-track {
    background: #f2f2f2;
    border-radius: 10px;
}

::-webkit-scrollbar-thumb {
    background: #176BD8;
    border-radius: 10px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
    background: #2037EF;
}

[hidden] {
    display: none;
}

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

svg {
    -ms-flex-negative: 0;
    flex-shrink: 0;
}

path,
svg {
    -webkit-transition: 0.125s;
    -o-transition: 0.125s;
    transition: 0.125s;
}

a {
    color: inherit;
    text-decoration: none;
    -webkit-transition: 125ms;
    -o-transition: 125ms;
    transition: 125ms;
}

a:focus,
a:hover {
    text-decoration: none !important;
}

li,
ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

i {
    line-height: 100%;
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

button {
    cursor: pointer;
    border: none;
    outline: 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: 0.225s ease-out;
    -o-transition: 0.225s ease-out;
    transition: 0.225s ease-out;
    background-color: inherit;
    font-size: 1em;
}

body {
    background: #F5F5F5;
}

.wrapper {
    max-width: 95%;
    margin: auto;
    width: 100%;
}

body.fixed {
    overflow-y:hidden;
    position: fixed;
    width: 100%;
}

/* HEADER */

header {
    position: sticky;
    top: 0;
    z-index: 20;
    transition: 0.5s !important;
    width: 100%;
}

select {
    display: none;
}

._animate {
    opacity: 0;
    -webkit-transition: 1.2s;
    -o-transition: 1.2s;
    transition: 1.2s;
    -webkit-transform: translateY(0.8em);
    -ms-transform: translateY(0.8em);
    transform: translateY(0.8em);
}

._animate._opacity-only {
    -webkit-transition: 1.5s;
    -o-transition: 1.5s;
    transition: 1.5s;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

._animate._animated {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.btn {
    display: flex;
    align-items: center;
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;
    letter-spacing: -2%;
    text-align: left;
    width: fit-content;
    border-radius: 12px;
    background: rgb(23, 107, 216);
    padding: 10px;
    height: 40px;
    transition: 0.3s;
    color: #fff;
}

.btn:hover {
    background: #1661c3;
}

.btn span {
    display: flex;
    margin-left: 10px;
}

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

.top_header {
    display: flex;
    position: fixed;
    top: 0;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    background: #fff;
    width: 100%;
}
.bottom_header__wrapper.top-hidden {
    top: 15px;

}
.bottom_header__wrapper.top-hidden .bottom_header__right .cart_btn,
.bottom_header__wrapper.top-hidden .bottom_header__left {
       box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.08), 0 2px 4px 0 rgba(0, 0, 0, 0.12);

}
.top_menu {
    display: flex;
    gap: 32px;
}

.city_select {
    color: rgb(73, 73, 73);
    font-size: 12px;
    font-weight: 600;
    line-height: 15px;
    letter-spacing: 0%;
    text-align: left;
    text-decoration-line: underline;
}

.top_menu li a {
    color: rgb(73, 73, 73);
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
    transition: 0.4s;
}

.head_phone a {
    color: rgb(73, 73, 73);
    font-size: 18px;
    font-weight: 500;
    line-height: 22px;
    letter-spacing: 0%;
    text-align: left;
    transition: 0.4s;
}

.head_phone a:hover,
.top_menu li a:hover {
    color: #176BD8;
}

.bottom_header {
    position: relative;
}

.bottom_header__left {
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 5px 5px 5px 15px;
    border-radius: 1000px;
    backdrop-filter: blur(20px);
    background: rgba(255, 255, 255, 0.1);
    height: 100%;
}

.bottom_header__right {
    height: 100%;
}

.bottom_header__wrapper {
    display: flex;
    align-items: center;
    gap: 10px;
    height: 60px;
    position: absolute;
    top: 75px;
    transition: 0.3s;
    width: 100%;
}

.cart_btn {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 1000px;
    height: 100%;
    padding: 0 20px;
    transition: 0.4s;
    backdrop-filter: blur(20px);
    background: rgba(255, 255, 255, 0.1);
}

.cart_btn span {
    color: rgb(255, 255, 255);
    font-size: 12px;
    font-weight: 600;
    line-height: 15px;
    letter-spacing: 0%;
    text-align: left;
    transition: 0.4s;
}

.cart_btn:hover path {
    transition: 0.4s;
}

.cart_btn:hover {
    background: #fff;
}

.cart_btn:hover path,
.cart_btn:hover span {
    color: #176BD8;
    fill: #176BD8
}

.bottom_header__left form input {
    display: flex;
    align-items: center;
    gap: 7px;
    height: 50px;
    border-radius: 100px;
    border: none;
    color: rgb(255, 255, 255);
    font-size: 14px;
    font-weight: 400;
    line-height: 17px;
    letter-spacing: -2%;
    text-align: left;
    position: relative;
    padding-left: 32px;
    transition: 0.4s;
    border: 1px solid transparent;
    background: rgba(244, 245, 250, 0.2);
}

.bottom_header__left form input:focus {
    border: 1px solid #fff;
}

.bottom_header__left form input::placeholder {
    color: #fff;
}

.bottom_header__left form {
    position: relative;
}

.bottom_header__left form:before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='14.000000' height='14.000000' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpath id='Ellipse 130 (Stroke)' d='M6.31 1.02C3.39 1.02 1.02 3.39 1.02 6.31C1.02 9.24 3.39 11.6 6.31 11.6C9.24 11.6 11.6 9.24 11.6 6.31C11.6 3.39 9.24 1.02 6.31 1.02ZM0 6.31C0 2.82 2.82 0 6.31 0C9.8 0 12.63 2.82 12.63 6.31C12.63 9.8 9.8 12.63 6.31 12.63C2.82 12.63 0 9.8 0 6.31Z' fill='%23FFFFFF' fill-opacity='1.000000' fill-rule='evenodd'/%3E%3Cpath id='Vector 446 (Stroke)' d='M10.05 10.05C10.25 9.85 10.57 9.85 10.77 10.05L13.84 13.12C14.05 13.32 14.05 13.65 13.84 13.85C13.65 14.05 13.32 14.05 13.12 13.85L10.05 10.77C9.85 10.57 9.85 10.25 10.05 10.05Z' fill='%23FFFFFF' fill-opacity='1.000000' fill-rule='evenodd'/%3E%3C/svg%3E%0A");
    width: 14px;
    height: 14px;
    display: block;
    position: absolute;
    left: 0;
    top: 17px;
    left: 12px;
}

.logo img {
    max-width: 149px;
    width: 100%;
}

.burger {
    background: none;
    display: flex;
    align-content: center;
}

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

.slide img {
    width: 100%;
    border-radius: 30px;
    object-fit: cover;
}

.main_slider {
    position: relative;
    overflow: hidden;
}

.main_slider .swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: 26px;
}

.main_slider .swiper-pagination-bullets .swiper-pagination-bullet,
.main_slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 7px;
    background: #fff;
    transition: 0.3s;
}

.main_slider .swiper-pagination-bullet-active {
    width: 40px;
    border-radius: 5px;
}

.advantage_item,
.advantages_list {
    display: flex;
    align-items: center;
}

.advantages_list {
    width: 100%;
    justify-content: space-between;
    gap: 20px;
}

.advantage_item {
    gap: 12px;
    color: rgb(119, 119, 141);
    font-size: 18px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: 0%;
    text-align: left;
}

.section.advantages {
    margin-top: 50px;
}

.main_body {
    margin-top: 70px;
    display: flex;
}

.main_body,
.main_body .wrapper {
    display: flex;
    gap: 42px;
}

.main_body_left {
    display: flex;
    width: 20%;
    min-width: 320px;
    flex-direction: column;
    z-index: 10;
}

.main_body_right {
    display: flex;
    width: 80%;
    overflow: hidden;
    flex-direction: column;
    gap: 64px;
}

.consult_banner {
    position: relative;
    display: flex;
    cursor: pointer;
    z-index: 2;
    justify-content: center;
}

.consult_banner img {
    width: 100%;
}


.btn_consult {
    background: #fff;
    color: #176BD8;
    font-size: 18px;
    font-weight: 500;
    line-height: 22px;
    padding: 12px;
    border-radius: 100px;
    height: 51px;
    position: absolute;
    bottom: 15px;
}

.btn_consult:hover {
    background-color: #176BD8;
    color: #fff;
}

.product_slider {
    display: flex;
    flex-direction: column;
    width: 100%;
    position: relative;
}

.product_slider .swiper-horizontal>.swiper-pagination-bullets,
.product_slider .swiper-pagination-bullets.swiper-pagination-horizontal {
    position: unset;
    margin-top: 24px;
}

.product_slider .swiper-pagination-bullets .swiper-pagination-bullet,
.product_slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 7px;
    background: #77778D;
    transition: 0.3s;
}


.product_slider .swiper-pagination-bullet-active {
    width: 40px;
    border-radius: 5px;
}



.product_card {
    display: flex;
    flex-direction: column;
    gap: 15px;
    padding: 15px;
    border-radius: 20px;
    transition: 0.4s !important;
}

.product_card:hover {

    background: #fff;
    border-radius: 20px;
    box-shadow: 0px 99px 60px 0px rgba(0, 0, 0, 0.05), 0px 177px 71px 0px rgba(0, 0, 0, 0.01), 0px 276px 77px 0px rgba(0, 0, 0, 0);
}

.product_img {
    display: flex;
    position: relative;
}

.product_img img {
    width: 100%;
    object-fit: cover;
    border-radius: 20px;
    height: auto;
}

.product_badge {
    display: flex;
    color: rgb(255, 255, 255);
    font-size: 10px;
    font-weight: 400;
    line-height: 12px;
    letter-spacing: -2%;
    position: absolute;
    top: 13px;
    left: 11px;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 5px 10px 5px 10px;
    border-radius: 10px;
    background: rgb(23, 107, 216);
}

.product_card_advantages {
    display: flex;
    gap: 10px;
}

.product_card_advantage {
    display: flex;
    align-items: center;
    gap: 2px;
}

.product_card_advantage span {
    color: rgb(30, 60, 114);
    font-size: 12px;
    font-weight: 500;
    line-height: 15px;
    letter-spacing: -3%;
    text-align: left;
}

.product_card_info {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.product_card_name {
    color: rgb(73, 73, 85);
    font-size: 15px;
    font-weight: 600;
    line-height: 18px;
    letter-spacing: -2%;
    text-align: left;
}

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

.card_button {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    width: 56px;
    height: 56px;
    transition: 0.3s;
    opacity: 0;
    background: rgb(23, 107, 216);
}

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

.product_card_price {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.price_old span {
    color: rgb(73, 73, 85);
    font-size: 12px;
    font-weight: 400;
    line-height: 15px;
    letter-spacing: 0%;
    text-align: left;
    opacity: 0.5;
    text-decoration-line: line-through;
}

.sale_badge {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    padding: 5px;
    color: rgb(255, 255, 255);
    font-size: 10px;
    font-weight: 500;
    line-height: 12px;
    letter-spacing: 0%;
    text-align: left;
    background: rgb(33, 33, 33);
}

.price_new {
    color: rgb(73, 73, 85);
    font-size: 24px;
    font-weight: 600;
    line-height: 29px;
    letter-spacing: -2%;
    text-align: left;
}

.product_card:hover .card_button {
    opacity: 1;
}

.card_button:hover {
    background: #1661c3;
}

.offerings_slider__container,
.product_slider__container {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.product_slider__title {
    color: rgb(73, 73, 85);
    font-size: 36px;
    font-weight: 600;
    line-height: 44px;
    letter-spacing: -2%;
    text-align: left;
    margin-left: 15px;
}

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

.main_banner img {
    width: 100%;
    border-radius: 30px;
}

.about {
    display: flex;
    flex-direction: column;
    gap: 31px;
}

.about_text {
    columns: 2;

}

.about_badge {
    display: flex;
    align-items: center;
    width: fit-content;
    border-radius: 6px;
    color: rgb(119, 119, 141);
    padding: 6px 8px 6px 6px;
    gap: 4px;
    font-size: 14px;
    font-weight: 600;
    line-height: 100%;
    letter-spacing: -2%;
    text-align: left;
    background: rgba(119, 119, 141, 0.1);
}

.about_title {
    color: rgb(73, 73, 85);
    font-size: 52px;
    font-weight: 600;
    line-height: 110%;
    letter-spacing: 0%;
    text-align: left;
}

.about_text p,
.about_text {
    color: rgb(0, 0, 0);

    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;

}

.about_text p:not(:nth-last-child(1)) {
    margin-bottom: 20px;
}

.about_advantages {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

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

.about_advatage__text {
    color: rgb(73, 73, 85);
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.about_advatage__text strong {
    font-weight: 700;
}


.offerings_slider .swiper-horizontal>.swiper-pagination-bullets,
.offerings_slider .swiper-pagination-bullets.swiper-pagination-horizontal {
    position: unset;
    width: fit-content;
}

.offerings_slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    box-sizing: border-box;
    border: 1.2px solid rgb(73, 73, 85);
    border-radius: 10px;
    opacity: 0.2;
    width: 30px;
    height: 30px;
    background: transparent;
    transition: 0.3s;
}

.offerings_slide {
    display: flex;
    flex-direction: column;
    gap: 25px;
}

.offerings_card_info {
    color: rgb(73, 73, 85);
    font-size: 16px;
    transition: 0.4s;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.offerings_slide:hover .offerings_card_info {
    color: #176BD8;
}

.offerings_slider .swiper-pagination-bullet {
    width: 20px;
    height: 20px;
    text-align: center;
    line-height: 20px;
    font-size: 12px;
    color: #000;
    opacity: 1;
    color: rgb(73, 73, 85);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;
    letter-spacing: -2%;
    text-align: center;
    align-content: center;
    margin: 3px !important;
}

.offerings_slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet-active {
    color: #fff;
    background: #494955;
    opacity: 1;
    margin: auto;

}

.offerings_slider__nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 34px;
    margin-top: 63px;
}

.offerings_slider__nav button {
    display: flex;
    align-items: center;
}

.footer {
    display: flex;
    padding: 50px 0;
    margin-top: 75px;
}

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

.footer_row {
    display: flex;
    justify-content: space-between;

}

.footer_col {
    display: flex;
}

.footer_menu ul,
.footer_menu {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.footer_menu li a {
    color: rgb(119, 119, 141);
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: -2%;
    text-align: left;
    transition: 0.4s;
}

.footer_col .logo img {
    width: 100%;
    max-width: 133px;
}

.bold_menu li a,
.menu_title {
    color: rgb(78, 82, 93);
    font-size: 18px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: -2%;
    text-align: left;
}

.footer_menu li a:hover {
    color: #176BD8;
}

.copyright {
    color: rgba(119, 119, 141, 0.4);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;
    letter-spacing: -2%;
    text-align: left;
}

.sticky {
    position: sticky;
    top: 90px;

}






.menu-wrapper {
    background: #fff;
    display: flex;
    height: 100%;
    border-radius: 30px;

    background: rgb(255, 255, 255);
}

.main-sidebar {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;



}

.mega-menu {
    position: absolute;
    top: 0;
    left: 95%;
    display: flex;
    overflow: hidden;
    width: 0;
    transition: width 0.2s;
    z-index: 2;
    height: 100%;

}

.menu-column {
    display: none;
    flex-direction: column;
    min-width: 380px;
    background: #fff;

}


.megamenu {
    position: relative;
    z-index: 90;
    background: #fff;
    border-radius: 20px;
    padding: 10px;
}

.menu-wrapper .item {

    border-radius: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 20px;
    background: rgb(255, 255, 255);
    color: rgb(119, 119, 141);
    position: relative;
    font-size: 18px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: 0%;
    text-align: left;
    cursor: pointer;
    transition: 0.4s;
    padding-right: 50px;
}

.menu-column {
    padding: 10px 0px 10px 50px;
    border-left: 1px solid rgb(238, 238, 238);
    border-bottom-right-radius: 20px;
    border-top-right-radius: 20px;
}

.menu-wrapper .item:hover {
    color: #4B4B59;
}

.menu-wrapper .item img {
    border: 1px solid transparent;
    transition: 0.4s;
    border-radius: 12px;
}

.menu-wrapper .item:hover img {
    border: 1px solid rgb(23, 107, 216);

}

.has-children::after {
    content: '';
    width: 24px;
    height: 25px;
    position: absolute;
    right: 30px;
    display: block;
    background-image: url("data:image/svg+xml,%3Csvg width='24.000000' height='24.000000' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg clip-path='url(%23clip47_47132)'%3E%3Cpath id='Vector 166 (Stroke)' d='M8.46 2.46C8.76 2.17 9.23 2.17 9.53 2.46L18.53 11.46C18.82 11.76 18.82 12.23 18.53 12.53L9.53 21.53C9.23 21.82 8.76 21.82 8.46 21.53C8.17 21.23 8.17 20.76 8.46 20.46L16.93 12L8.46 3.53C8.17 3.23 8.17 2.76 8.46 2.46Z' fill='%2377778D' fill-opacity='1.000000' fill-rule='evenodd'/%3E%3C/g%3E%3C/svg%3E%0A");


}

.level-3 .item,
.level-2 .item {

    font-size: 18px;
    font-weight: 500;
    line-height: 140% !important;
    letter-spacing: 0%;
    text-align: left;
}

.level-2 {
    padding-right: 40px;
}

.level-3 {
    position: relative;
    left: -20px;

}

.hide_xl,
.hide_xm,
.hide_xs {
    display: none;
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(3px);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 99999;
}

.modal.hidden {
    display: none;
}

.modal-content {
    background: #fff;
    border-radius: 30px;
    display: flex;
    flex-direction: column;
    gap: 36px;
    padding: 30px;
    width: 100%;
    max-width: 1054px;
    max-height: auto;
    overflow: auto;
    position: relative;
}
.wpcf7-not-valid-tip {
    margin-top: 5px;
}
.modal_header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.close {


    background: none;
    border: none;
    font-size: 24px;
    cursor: pointer;
}

.city-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
    gap: 8px;
    margin-top: 16px;
    height: 15em;
    overflow-y: auto;
    column-gap: 100px;
    row-gap: 14px;
}

.city-item {
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
    transition: 0.2s;
}

.city-item:hover,
.city-item.selected {
    color: rgb(23, 107, 216);

    font-weight: 600;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
    text-decoration-line: underline;
}

.slide_image_mob,
.slide_image_tab {
    display: none;
}

.card_button span {
    display: none;
}

.modal_header h2 {
    color: rgb(0, 0, 0);
    font-size: 24px;
    font-weight: 600;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

#cityInput {
    border-radius: 100px;
    display: flex;
    align-items: center;
    gap: 7px;
    border: none;
    padding: 12px;
    color: rgb(43, 43, 43);
    font-size: 14px;
    font-weight: 400;
    line-height: 17px;
    letter-spacing: -2%;
    text-align: left;
    width: 100%;
    height: 50px;
    background: rgb(245, 245, 245);
}

#cityInput::placeholder {
    color: rgb(119, 119, 141);
}

.city_input {
    position: relative;
}

.city_input::before {
    content: '';
    background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.21961 1.17072C3.87892 1.17072 1.17075 3.87881 1.17075 7.21942C1.17075 10.56 3.87892 13.2681 7.21961 13.2681C10.5603 13.2681 13.2685 10.56 13.2685 7.21942C13.2685 3.87881 10.5603 1.17072 7.21961 1.17072ZM0 7.21942C0 3.23224 3.23233 0 7.21961 0C11.2069 0 14.4392 3.23224 14.4392 7.21942C14.4392 11.2066 11.2069 14.4388 7.21961 14.4388C3.23233 14.4388 0 11.2066 0 7.21942Z' fill='%2377778D'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.4879 11.4886C11.7165 11.26 12.0871 11.26 12.3157 11.4886L15.8279 15.0007C16.0565 15.2293 16.0565 15.6 15.8279 15.8286C15.5993 16.0572 15.2287 16.0572 15.0001 15.8286L11.4879 12.3164C11.2593 12.0878 11.2593 11.7172 11.4879 11.4886Z' fill='%2377778D'/%3E%3C/svg%3E%0A");
    width: 14px;
    height: 14px;
    display: block;
    position: absolute;
    left: 0;
    top: 17px;
    left: 12px;
}

#cityInput {
    padding-left: 35px;
}

.city-item:nth-child(1),
.city-item:nth-child(5),
.city-item:nth-child(9) {
    font-weight: 600;
}

.fg {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 5px;
    padding: 14px;
    transition: 0.4s;
    border-radius: 10px;
    border: 1px solid transparent;

    background: rgb(245, 245, 245);
}

.fg:has(textarea:focus),
.fg:has(input:focus) {
    border: 1px solid #176BD8;
}

#orderModal form {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

textarea,
input[type="tel"],
input[type="email"],
input[type="text"] {
    border: none;
    background: transparent;

}

textarea::placeholder,
input[type="tel"]::placeholder,
input[type="email"]::placeholder,
input[type="text"]::placeholder {
    color: rgb(119, 119, 141);
    font-size: 16px;
    font-weight: 400;
    line-height: 19px;
    letter-spacing: 0%;
    text-align: left;
}

.fg label {
    color: rgba(119, 119, 141, 0.5);
    font-size: 12px;
    font-weight: 400;
    line-height: 15px;
    letter-spacing: 0%;
    text-align: left;
}

textarea {
    height: 70px;
    resize: none;
}

.round {
    position: relative;
    display: flex;
    align-items: center;
    margin: 27px 0;

}

.round input[type="checkbox"] {
    display: none;
}

.round .custom-checkbox {
    display: inline-block;
    background-color: #fff;
    border: 3px solid #176BD8;
    border-radius: 50%;
    cursor: pointer;
    height: 23px;
    width: 23px;
    position: relative;
    vertical-align: middle;
    margin-right: 8px;
}

.round .custom-checkbox:after {
    content: "";
    position: absolute;
    left: 5px;
    top: 1px;
    width: 8px;
    height: 14px;
    border: solid white;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg);
    opacity: 0;
}

.round input[type="checkbox"]:checked+.custom-checkbox {
    background-color: #176BD8;
    border-color: #176BD8;
}

.round input[type="checkbox"]:checked+.custom-checkbox:after {
    opacity: 1;
}

.round .label-text {
    vertical-align: middle;
    cursor: pointer;
}

#orderModal form .round label {
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.form_nav button {
    width: 100%;
    text-align: center;
    background: #2037EF;
    height: 44px;
    justify-content: center;
}

.success_text {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 10px;
    color: rgb(0, 0, 0);
    font-size: 24px;
    font-weight: 600;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: center;
}

.success_text p {
    color: rgb(0, 0, 0);
    font-size: 24px;
    font-weight: 600;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: center;
}

.success_modal .success_nav button {
    background-color: #F5F5F5;
    width: 100%;
    color: #000;
    justify-content: center;
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: 0%;
}

.success_modal .success_nav button:hover {
    background-color: #176BD8;
    color: #fff;
}

.city-btn:hover {
    color: #176BD8;

    font-weight: 500;

}

.sticky_top_head {
    box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.08), 0 2px 4px 0 rgba(0, 0, 0, 0.12);
}

.header_advanced .bottom_header__wrapper {
    left: 0;
    right: 0;
    max-width: 95%;
    margin: auto;

}

.header_advanced .bottom_header__left {
    background: #fff;
    width: 100%;
    padding: 5px 40px 5px 20px;

    justify-content: space-between;
}

.header_advanced .bottom_header__left form {
    width: 80%;
}

.header_advanced .bottom_header__left form input {
    background: #F5F5F5;
    width: 100%;
}

.header_advanced .bottom_header__left form input::placeholder {
    color: #77778D;
}

.header_advanced .bottom_header__left form input {
    color: #434343;
}

.header_advanced .cart_btn {
    background: #fff;
}

.header_advanced .cart_btn span {
    color: #77778D;
}

.top_bar_phone {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 200px;
    justify-content: center;


}
.spec_link,
.top_bar_phone a {
    color: rgb(119, 119, 141);
    transition: 0.3s;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}
.spec_link,
.top_bar_phone a:hover {
    color: #176BD8;
}
#char {
    scroll-margin-top: 50px;
}
.spec_link {
    text-decoration: underline;
    margin-top: 5px;
}

.header_advanced .bottom_header__left .logo img {
    width: 133px;
}

.header_advanced .bottom_header__left form::before {
    background-image: url("data:image/svg+xml,%3Csvg width='14.000000' height='14.000000' viewBox='0 0 14 14' fill='none' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpath id='Ellipse 130 (Stroke)' d='M6.31 1.02C3.39 1.02 1.02 3.39 1.02 6.31C1.02 9.24 3.39 11.6 6.31 11.6C9.24 11.6 11.6 9.24 11.6 6.31C11.6 3.39 9.24 1.02 6.31 1.02ZM0 6.31C0 2.82 2.82 0 6.31 0C9.8 0 12.63 2.82 12.63 6.31C12.63 9.8 9.8 12.63 6.31 12.63C2.82 12.63 0 9.8 0 6.31Z' fill='%2377778D' fill-opacity='1.000000' fill-rule='evenodd'/%3E%3Cpath id='Vector 446 (Stroke)' d='M10.05 10.05C10.25 9.85 10.57 9.85 10.77 10.05L13.84 13.12C14.04 13.32 14.04 13.65 13.84 13.85C13.64 14.05 13.32 14.05 13.12 13.85L10.05 10.77C9.85 10.57 9.85 10.25 10.05 10.05Z' fill='%2377778D' fill-opacity='1.000000' fill-rule='evenodd'/%3E%3C/svg%3E%0A");
    z-index: 1;
}

.header_advanced .bottom_header__left form input:focus {
    border-color: #176BD8;
}

.header_advanced .cart_btn:hover {
    background: #176BD8;
}

.header_advanced .cart_btn:hover path {
    fill: #fff;
}

.header_advanced .cart_btn:hover span {
    color: #fff;
}

.breadcrumbs {
    display: flex;
    gap: 10px;
    margin-bottom: 16px;
}

.breadcrumbs li {
    position: relative;
    color: rgb(177, 177, 181);
    font-size: 14px;
    font-weight: 400;
    line-height: 17px;
    letter-spacing: 0%;
    text-align: left;
}

.breadcrumbs li a {
    transition: 0.3s;

}

.breadcrumbs li span {
    color: #898990;
}

.breadcrumbs li a:hover {
    color: #176BD8;
}

.breadcrumbs li:has(a) {
    padding-right: 20px;
}

.breadcrumbs li:has(a)::after {
    content: '';
    position: absolute;
    right: 0;
    top: 3px;
    display: block;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100%;
    width: 12px;
    height: 12px;
    background-image: url("data:image/svg+xml,%3Csvg width='12.058594' height='8.000000' viewBox='0 0 12.0586 8' fill='none' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cpath id='Vector 165 (Stroke)' d='M0 4C0 3.75 0.19 3.55 0.44 3.55L11.11 3.55C11.35 3.55 11.55 3.75 11.55 4C11.55 4.24 11.35 4.44 11.11 4.44L0.44 4.44C0.19 4.44 0 4.24 0 4Z' fill='%23B1B1B5' fill-opacity='1.000000' fill-rule='evenodd'/%3E%3Cpath id='Vector 166 (Stroke)' d='M8.45 0.1C8.64 -0.06 8.92 -0.03 9.08 0.15L11.88 3.52C12.11 3.8 12.11 4.19 11.88 4.47L9.08 7.84C8.92 8.02 8.64 8.05 8.45 7.89C8.26 7.73 8.24 7.45 8.39 7.27L11.12 4L8.39 0.72C8.24 0.54 8.26 0.26 8.45 0.1Z' fill='%23B1B1B5' fill-opacity='1.000000' fill-rule='evenodd'/%3E%3C/svg%3E%0A");
}

.mt110,
.catalog {
    margin-top: 150px;
}

.page_title {
    color: rgb(73, 73, 85);
    font-size: 48px;
    font-weight: 600;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
    margin-bottom: 30px;
}

.catalog_category {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.catalog_category img {
    border-radius: 10px;
    width: 55px;
    height: 55px;
    background: rgb(255, 255, 255);
}

.catalog_category_name {
    color: rgb(73, 73, 85);
    transition: 0.3s;
    font-size: 20px;
    font-weight: 600;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.catalog_category_name:hover {
    color: #176BD8;
}

.subcategories li a,
.subcategories {
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: rgb(119, 119, 141);
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: 0%;
}

.subcategories a {
    transition: 0.3s;
}

.subcategories a:hover {
    color: #176BD8;
}

.catalog_grid {
    display: grid;
    width: 100%;
    justify-content: space-between;
    grid-template-columns: repeat(3, 1fr);
    row-gap: 58px;
}

body:has(main.catalog) .footer_col:nth-child(2) {
    display: none;
}

body:has(main.catalog) .footer_col .bold_menu ul {
    flex-direction: row;
    gap: 24px;
}




.burger svg {
    width: 24px;
    height: 24px;
}

.line {
    stroke: #fff;
    stroke-width: 2;
    stroke-linecap: round;
    transition: all 0.3s ease;
}

/* Активное состояние — превращаем в крест */
.burger.active .top {
    transform: translateY(-1px) translateX(8px) rotate(45deg);
}

.burger.active .middle {
    opacity: 0;
}

.burger.active .bottom {
    transform: translateY(7px) translateX(-9px) rotate(-45deg);
}

.mobile-menu {
    position: fixed;
    display: flex;
    flex-direction: column;
    gap: 42px;
    top: 65px;

    padding-top: 65px;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #F5F5F5;
    transform-origin: top left;
    transform: scale(0);
    opacity: 0;
    transition: transform 0.3s ease, opacity 0.3s ease;
    z-index: 1000;
    overflow-y: auto;
    overflow-y: auto;
    height: 100%;
    margin: auto;
    padding-bottom: 60px;
}

.mobile-menu.active {
    transform: scale(1);
    opacity: 1;
}

.mobile-menu .catalog_grid {
    padding: 0 20px;
}

.mobile-menu .bold_menu {
    background: #fff;
    padding: 40px 20px 100px 20px;
}

.mobile-menu .bold_menu ul {
    gap: 24px;
}

.category_title {
    color: rgb(41, 41, 46);
    font-size: 40px;
    font-weight: 600;
    line-height: 49px;
    letter-spacing: 0%;
    text-align: left;
}

.catalog_nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: rgba(0, 0, 0, 0.6);
    font-size: 14px;
    font-weight: 400;
    line-height: 17px;
    letter-spacing: 0%;
    text-align: left;
}

.products_grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}

.products_grid .main_banner {
    grid-column: -1 / 1;
}

.woocommerce-pagination ul.page-numbers {
    display: flex;
    align-items: center;
    gap: 5px;
    width: 100%;
    justify-content: center;
}
span.page-numbers,
a.page-numbers {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    border-radius: 10px;
    border: 1.2px solid rgb(73, 73, 85, 0.2);
    color: rgb(73, 73, 85, 0.2);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;
    letter-spacing: -2%;
    text-align: center;
    transition: 0.3s;
}

.page-numbers.prev,
.page-numbers.next {
    border: none !important;
}

a.page-numbers:hover,
.page-numbers.current {
    background: rgb(73, 73, 85);
    color: #fff;
}

a.prev.page-numbers:hover,
a.next.page-numbers:hover {
    background: none;
    color: unset;
}

.offerings_slider__nav button path,
a.prev.page-numbers:hover path,
a.next.page-numbers:hover path {
    transition: 0.3s;
    stroke: #000 !important;
    opacity: 1 !important;
}

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

.nice-select {
    border: 1px solid rgb(125, 125, 125) !important;
    border-radius: 10px;
    background-color: #f5f5f5;
    color: rgb(125, 125, 125);
    font-size: 14px;
    font-weight: 400;
    line-height: 17px;
    letter-spacing: 0%;
    display: flex;
    align-items: center;
    width: 160px;
}

.list {

    border-radius: 10px;
}

.nice-select .option:hover,
.nice-select .option.focus,
.nice-select .option.selected.focus {
    background-color: #176BD8 !important;
    color: #fff;
}

.catalog_body {
    gap: 20px;
    margin-top: 24px;
}

.catalog_body .main_body_right {
    gap: 32px;
}

.seo_text p,
.seo_text {
    color: rgba(73, 73, 85, 0.7);
    font-size: 14px;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: -2%;
    text-align: left;
}

.seo_text {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.seo_text h1 {
    color: rgb(73, 73, 85);
    font-size: 24px;
    font-weight: 600;
    line-height: 29px;
    letter-spacing: -2%;
    text-align: left;
}

.cart_body,
.product_body {
    margin-top: 24px;
}

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

.product_gallery .gallery-container {
    display: flex;
    gap: 20px;
    align-items: start;
    max-width: 45em;
    width: 100%;
    margin: auto;
}

.product_gallery .thumbs-swiper {
    width: 80px;
    height: 400px;
}

.product_gallery .main-swiper {
    width: 100%;
    height: auto;
}

.product_gallery .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    border-radius: 10px;
    border: 2px solid transparent;
    max-height: 500px;
}

.product_gallery .thumbs-swiper .swiper-slide {
    cursor: pointer;
    display: flex;
    width: 100%;
    height: 100%;
    border-radius: 20px;
    overflow: hidden;
    border: 2px solid #DADAEA;
}

.product_gallery .thumbs-swiper .swiper-slide:nth-last-child(1) {
    opacity: 0.5;
}

.product_gallery .thumbs-swiper .swiper-slide-thumb-active {
    opacity: 1;
    border: 2px solid #007bff;
}

.product_gallery .thumbs-swiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;

}

.product_gallery .thumbs-swiper .swiper-slide {
    width: 100%;
    height: fit-content !important;
}

.main-swiper,
.product_specs {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.spec {
    display: flex;
    gap: 7px;
    color: rgb(0, 0, 0);
    font-size: 14px;
    font-weight: 400;
    line-height: 17px;
    letter-spacing: 0%;
    text-align: left;
}

.spec_name {
    color: rgba(0, 0, 0, 0.5);
}

.product_body .main_body_right {
    gap: 32px;
}

.product_title {
    color: rgb(41, 41, 46);
    font-size: 32px;
    font-weight: 600;
    line-height: 39px;
    letter-spacing: 0%;
    text-align: left;
}

.thumbs-button-next {
    position: absolute;
    cursor: pointer;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    transition: 0.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    user-select: none;
    transition: background 0.3s;
    z-index: 10;
    background-color: #fff;
    border-radius: 50%;
    width: 40px;
    height: 40px;
}

.thumbs-button-next:hover {
    background: #176BD8;
}

.thumbs-button-next:hover path {
    stroke: #fff;
    fill: #fff;
}

.cart_block {
    display: flex;
    flex-direction: column;
    gap: 24;
    padding: 30px;
    border-radius: 20px;
    background: rgb(255, 255, 255);
}

.stock {
    display: flex;
    align-items: center;
    gap: 5px;
    color: rgb(23, 107, 216);
    font-size: 12px;
    font-weight: 500;
    line-height: 15px;
    letter-spacing: -3%;
    text-align: left;
}

.options {
    display: flex;
}

.options .attribute-group {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.options .options_radio {
    display: flex;
    gap: 40px;

}

.cart_block,
.variations_form {
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 100%;
}

.radios {
    display: flex;
    gap: 5px;
    flex-wrap: wrap;
    max-width: 90%;
}

.radios input {
    display: none;
}

.radios label {
    display: flex;
    box-sizing: border-box;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 10px;
    width: auto;
    padding: 12px 16px 12px 16px;
    height: 41px;
    align-items: center;
    justify-content: center;
    transition: 0.3s;
    cursor: pointer;
    color: rgb(0, 0, 0);
    font-size: 14px;
    font-weight: 500;
    line-height: 17px;
    letter-spacing: 0%;
    text-align: left;
}

.radios label:hover,
.radios label:has(input[type=radio]:checked),
.radios label:has(input[type=checkbox]:checked) {
    background: #176BD8;
    color: #fff;
    border-color: #176BD8;
}

p.label {
    color: rgba(0, 0, 0, 0.3);
    font-size: 12px;
    font-weight: 400;
    line-height: 15px;
    letter-spacing: 0%;
    text-align: left;

}

.radios label:has(input[type=radio]:disabled) {
    background: rgb(243, 243, 247);
    border-color: rgb(243, 243, 247);
    color: rgba(0, 0, 0, 0.5);
}

.cart_block .product_card_price {
    flex-direction: row;
}

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

.variations_button {
    width: 100%;
    display: flex;
    gap: 5px;
}

.single_variation_wrap .btn {
    width: 50%;
    justify-content: center;
    height: 40px;
    gap: 10px;
}

.one_click_buy {
    background: transparent;
    border: 1px solid rgb(198, 198, 198);
    color: rgb(198, 198, 198);
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.one_click_buy:hover {
    color: #fff;
    border-color: #176BD8;
}

.one_click_buy:hover path {
    fill: #fff;
}

.delivery_text {
    display: flex;
    align-items: center;
    justify-content: center;
    color: rgb(146, 150, 168);
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
    gap: 10px;
}

.product_consult {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-radius: 20px;
    padding: 20px;
    background: rgb(255, 255, 255);
    margin-top: -25px;
}

.consult_title {
    color: rgb(0, 0, 0);

    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.product_consult button {
    width: 30%;
    justify-content: center;
}

.cart_block .price_new {
    font-size: 28px;
    line-height: 100%;
}

.cart_block .price_new span {
    font-size: 16px;
}

.cart_block .price_old {
    font-size: 14px;
    line-height: 100%;
}

.cart_block .product_card_price {
    gap: 10px;
}

.product_add_services {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product_add_services__title {
    color: rgba(0, 0, 0, 0.5);
    font-size: 12px;
    font-weight: 500;
    line-height: 15px;
    letter-spacing: 0%;
    text-align: left;
}

.service_card {
    display: flex;
    justify-content: space-between;
    border-radius: 20px;
    align-items: center;
    padding: 20px;
    background: rgb(255, 255, 255);
}

.service_info {
    display: flex;
    flex-direction: column;
    gap: 12px;

}

.service_info__title {
    color: rgba(0, 0, 0, 0.6);
    font-size: 12px;
    font-weight: 500;
    line-height: 15px;
    letter-spacing: 0%;
    text-align: left;
}

.service_info__subtitle {
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.service_btn {
    width: 30%;
    color: rgb(198, 198, 198);
    justify-content: center;
    box-sizing: border-box;
    border: 1px solid rgb(198, 198, 198);
    border-radius: 10px;
    background: transparent;
}

.service_btn:hover {
    color: #fff;
    border-color: #2037EF;
}

.tabs {
    display: flex;
    width: 100%;
    align-items: center;

}

.tab {
    display: flex;
    width: 100%;
    justify-content: center;
    height: 64px;
    align-items: center;
    border-bottom: 2px;
    color: rgb(164, 164, 164);
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
    transition: 0.4s;
    border-bottom: 2px solid rgb(164, 164, 164);
}

.tab:hover,
.tab.active {
    color: #176BD8;
    border-bottom: 2px solid rgb(23, 107, 216);
}

.tab-content {


    transition: 0.4s;
    gap: 24px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
    height: 0;
    overflow: hidden;
}

.tab-content.active {
    display: flex;
    flex-direction: column;
    opacity: 1;
    visibility: visible;
    height: auto;
    margin-top: 64px;
}

.tab-content,
.tab-content ul li,
.tab-content p {
    color: rgba(0, 0, 0, 0.6);
    font-size: 16px;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.char_list {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 13px;
}

.product_char {
    display: flex;
    width: 100%;
    gap: 9px;
    color: rgba(0, 0, 0, 0.5);

    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.text_wrapper ul li,
.tab-content ul li {
    list-style: disc;
    margin-left: 30px;

}

.tab-content ul {
    list-style: disc;
}
.product_char__name,
.product_char__val {
  flex: 0 0 auto; /* ширина по контенту */
}
.product_char__div {
    width: 100%;
    border-bottom: 1px dashed rgb(164, 164, 164);
}

.tab-content__title {
    color: rgb(0, 0, 0);
    font-size: 26px;
    font-weight: 600;
    line-height: 32px;
    letter-spacing: 0%;
    text-align: left;
}

.product_description {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product_seo_text {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 30px;
}

.product_seo_text,
.product_seo_text p {
    color: rgba(0, 0, 0, 0.7);
    font-size: 16px;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.product_seo_text h1 {
    color: rgb(0, 0, 0);
    font-size: 18px;
    font-weight: 600;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.page_head {
    display: flex;
    gap: 35px;

    flex-direction: column;
}

.page_title_group {
    display: flex;
    gap: 15px;

}

.page_head button {
    display: flex;
    align-items: center;
    transition: 0.3s;
}

.page_head button:hover path {
    stroke: #176BD8;
}

.page_head .page_title {
    margin-bottom: 0;
    color: rgb(0, 0, 0);
    font-size: 26px;
    font-weight: 600;
    line-height: 32px;
    letter-spacing: -2%;
    text-align: left;
}

.cart_items {
    display: flex;
    flex-direction: column;
    gap: 5px;
    width: 100%;
}

.cart_item {
    display: flex;
    width: 100%;
    border-radius: 20px;
    padding: 20px;
    align-items: center;
    background: rgb(255, 255, 255);
}

.product_image {
    margin-right: 20px;
}

.product_image img {
    border-radius: 4px;
    width: 64px;
    height: 64px;

}

.product_info_left {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.product_info__chars {
    display: flex;
    gap: 10px;
}

.product_info_right {
    display: flex;
    justify-content: space-between;
    margin: auto 0 auto auto;
    align-items: center;
    gap: 44px;
}

.product_info_right .product_card_price {
    flex-direction: row;
}

.product_info__title {
    color: rgb(41, 41, 46);

    font-size: 16px;
    font-weight: 600;
    line-height: 160%;
    letter-spacing: 0%;
    text-align: left;
}

.char_item {
    color: rgba(41, 41, 46, 0.5);

    font-size: 12px;
    font-weight: 500;
    line-height: 120%;
    letter-spacing: 0%;
    text-align: left;
}

.char_item strong {
    color: #272727;
}

.quantity {
    display: inline-flex;
    align-items: center;
    background: #F5F5F5;
    border-radius: 5px;
    overflow: hidden;
    max-width: 120px;
}

.quantity input {
    background: #f5f5f5;
    color: rgb(161, 161, 161);

    font-size: 12px;
    font-weight: 700;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.quantity button {
    background-color: #f5f5f5;
    border: none;
    font-size: 12px;
    font-weight: 700;
    line-height: 140%;
    letter-spacing: 0%;
    color: rgb(161, 161, 161);
    width: 32px;
    height: 40px;
    font-size: 20px;
    cursor: pointer;
    transition: background 0.2s ease;
}

.quantity button:hover {
    background-color: #e0e0e0;
}

.quantity input.qty {
    width: 50px;
    height: 40px;
    border: none;
    text-align: center;
    font-size: 16px;
    outline: none;
    appearance: textfield;
}

/* Убираем стрелки в Chrome */
.quantity input.qty::-webkit-outer-spin-button,
.quantity input.qty::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.product_info_right .price_new {
    color: rgb(41, 41, 46);
    font-size: 18px;
    font-weight: 600;
    line-height: 22px;
    letter-spacing: 0%;
    text-align: left;
}

.product-remove svg {
    transition: 0.3s;
}

.product-remove:hover path {
    stroke: rgb(177, 3, 3);
}

.cart_totals {
    display: flex;
    flex-direction: column;
    gap: 18px;
    padding: 20px;
    padding-bottom: 0;
    border-top: 2px solid #D9D9D9;
}
.single_variation_wrap,
.cart {
    display: flex;
    flex-direction: column;
    gap: 36px;
}

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

.checkout-button {
    width: 100%;
    justify-content: center;
}

.cart_body .main_body_right {
    gap: 34px;
}

.free_shipping_notice {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 20px;
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;

}

.totals_row {
    color: rgba(0, 0, 0, 0.7);
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.totals_val.bold {
    color: #000;
    font-weight: 700;
}

.totals_title.big_bold {
    color: #000;
    font-weight: 700;
    font-size: 16px;
}

.product_info__title .product_image {
    display: none;
}
.checkout_body {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
}
.checkout_body .main_body_left {
    width: calc(80% - 15px);
    gap: 10px;
}

.checkout_body .main_body_right {
    width: calc(20% - 15px);
    overflow: visible;
}
.woocommerce-NoticeGroup-checkout {
    width: 100%;
}
.checkout_block {
    display: flex;
    flex-direction: column;
    gap: 12px;
    border-radius: 20px;
    padding: 30px;
    background: rgb(255, 255, 255);
}

.checkout_block__title {
    color: rgb(0, 0, 0);
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: 0%;
    text-align: left;
}

.checkout_block__text {
    color: rgb(0, 0, 0, 0.5);
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.checkout_body {
    margin-top: 24px;
    gap: 24px;
}

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

.checkout_body .nice-select {
    height: 66px;
    border: none !important;
    color: #000;
    font-size: 16px;

    font-weight: 500;
    line-height: 20px;
    width: 25%;
}

.shipping-methods {
    display: flex;
    gap: 20px;
    margin: 10px 0;

}

.method {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    gap: 8px;
    font-size: 16px;
    user-select: none;
}

.method input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.method span {
    position: relative;
    padding-left: 28px;
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.method span::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    border: 2px solid #176BD8;
    border-radius: 50%;
    background: white;
    box-sizing: border-box;
}

.method input:checked+span::after {
    content: "";
    position: absolute;
    left: 5px;
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    background: #176BD8;
    border-radius: 50%;
}

.combo {
    position: relative;
}

.combo-input {
    width: 100%;
    padding-right: 36px;
}

.combo-btn {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    border: 1px solid #cbd5e1;
    border-radius: 8px;
    background: #fff;
    cursor: pointer;
}

.combo-btn::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    margin: 0 auto;
    margin-top: 9px;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid #334155;
}

.combo[aria-expanded="true"] .combo-btn::after {
    border-top-color: #0f172a;
}

.combo-list {
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 6px);
    background: #fff;
    border: 1px solid #cbd5e1;
    border-radius: 10px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, .06);
    list-style: none;
    margin: 0;
    padding: 6px;
    max-height: 260px;
    overflow: auto;
    display: none;
    z-index: 10;
}

.combo[aria-expanded="true"] .combo-list {
    display: block;
}

.combo-option {
    padding: 8px 10px;
    border-radius: 8px;
    cursor: pointer;
    line-height: 1.3;
}

.combo-option[aria-selected="true"],
.combo-option:hover {
    background: #f1f5f9;
}

.combo-empty {
    padding: 10px;
    color: #64748b;
}

.checkout_cart_items {
    display: flex;
    gap: 24px;
}

.checkout_cart_item {
    display: flex;
    flex-direction: column;
    gap: 18px;
    justify-content: center;
    align-items: center;
}

.checkout_cart_item img {
    width: 88px;
    height: 88px;
    object-fit: cover;

}

.cart_block {
    display: flex;
    flex-direction: column;
    color: rgb(0, 0, 0, 0.6);
    gap: 24px;
    cursor: pointer;
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.checkout_cart_total {
    color: rgb(0, 0, 0);
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: 0%;
    text-align: left;
}

.checkout_cart_totals {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.client_block .checkout_block__text {
    color: #000;

}

.vertical {
    flex-direction: column;
}

.payment_block .radios label {
    background: #F2F2F2;
    border: none;
}
.payment_block .place_order_btn {
    margin-top: 20px;
}
.payment_block .radios label:hover {
    background: #176BD8;
}

.order_totals {
    display: flex;
    flex-direction: column;
    border-radius: 20px;
    gap: 18px;
    padding: 20px;
    background: rgb(255, 255, 255);
}

.order_totals__item {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.order_totals__item__val {
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: rgba(0, 0, 0, 0.7);
    padding-bottom: 18px;
    border-bottom: 1px solid #D9D9D9;
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.order_totals__item__title {
    display: flex;
    width: 100%;
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: 700;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
    justify-content: space-between;
}

.order_totals__item__title span {
    color: rgb(0, 0, 0, 0.7);
    font-size: 14px;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

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

.place_order_btn {
    width: 100%;
    justify-content: center;
}

.order_totals__total {
    color: rgb(0, 0, 0);
    font-size: 16px;
    font-weight: 600;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

body:has(main.checkout) .footer_menu {
    display: none;
}

.cart_modal .cart_items {
    max-height: 350px;
    overflow: hidden;
    overflow-y: scroll;
}

.text_page_body .breadcrumbs {
    margin-bottom: 0;
}

.text_page_body .main_body_right {
    gap: 40px;
}

.text_page_body .page_head {
    padding-bottom: 40px;
    border-bottom: 2px solid #dadada;
}

.text_wrapper {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.text_wrapper hr {
    color: rgba(217, 217, 217, 0.3);
    margin: 18px 0;
}

.text_wrapper h1,
.text_wrapper h2,
.text_wrapper h3,
.text_wrapper h4,
.text_wrapper h5,
.text_wrapper h6 {
    color: rgba(0, 0, 0, 1);
    font-size: 20px;
    font-weight: 600;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.page_expcrept,
.page_expcrept p,
.text_wrapper,
.text_wrapper p,
.text_wrapper li {
    color: rgba(0, 0, 0, 1);
    font-size: 16px;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.page_expcrept {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.text_wrapper p~ul {
    margin-top: -22px;
}

.text_wrapper h3+ul {
    margin-top: 0;
}

ul ul li {
    margin-left: 50px !important;
}
.contacts_body .wrapper {
    gap: 100px;
}
.contacts_body .main_body_right {
    gap: 24px;
}

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

.contacts {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.contact_item {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.contact_item a {
    color: rgba(0, 0, 0, 1);
    transition: 0.3s;
    font-size: 16px;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.contact_item a:hover {
    color: #176BD8;
}

.contact_item__title {
    color: rgba(0, 0, 0, 0.6);
    font-size: 14px;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

#map {
    width: 100%;
    height: 300px;
    border-radius: 20px;
    overflow: hidden;
}

.organization_info p,
.organization_info {
    color: rgba(0, 0, 0, 1);
    font-size: 14px;
    font-weight: 400;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.organization_info h3 {
    color: rgba(0, 0, 0, 1);
    margin-bottom: 18px;
    font-size: 18px;
    font-weight: 500;
    line-height: 140%;
    letter-spacing: 0%;
    text-align: left;
}

.partnership_block {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.block_title {
    color: rgba(0, 0, 0, 1);
    font-size: 26px;
    font-weight: 600;
    line-height: 32px;
    letter-spacing: -2%;
    text-align: left;
}

.partnership_grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 100px;
    row-gap: 56px;

}

.partnerhip_item {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.partnerhip_item img {
    width: 60px;
}

.partnerhip_item__title {
    color: rgba(0, 0, 0, 1);
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: 0%;
    text-align: left;
}

.partnerhip_item__desc {
    color: rgba(0, 0, 0, 1);

    font-size: 16px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.partnership_body .main_body_right {
    gap: 32px;
}

.article_page {
    flex-direction: column;
}
.article_page .menu-wrapper {
    height: auto;
}
.article_page .page_head  {
    border-bottom: none;
    padding-bottom: 0;
}
.article_img img {
    width: 100%;
    border-radius: 20px;
    object-fit: cover;
}

.article_wrapper {
    display: flex;
    flex-direction: column;
    gap: 80px;
}

.article_date {
    color: rgba(0, 0, 0, 0.5);
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0%;
    text-align: left;
}

.readmore_articles {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 13px;
}

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

.readmore_title {
    color: rgba(19, 19, 19, 1);

    font-size: 32px;
    font-weight: 600;
    line-height: 39px;
    letter-spacing: 0%;
    text-align: left;
}

.article_page {
    display: flex;
    flex-direction: column;
    gap: 80px;
}

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

.article button {
    width: 100%;
    justify-content: space-between;
    background: #F2F2F2;
    color: #000;
    padding: 0 20px;
}

.article span {
    margin: 0;
}

.article:hover button{
    color: #fff;
    background: #176BD8;
}

.article:hover button path {
    fill: #fff;
}

.article .article_img img {
    border-radius: 20px;
    width: 100%;
    height: 220px;
    object-fit: cover;
}

.article_title {
    color: rgba(0, 0, 0, 1);
    font-size: 20px;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: 0%;
    text-align: left;
}

.article .article_date {
    font-size: 14px;
}
.archive_page .main_body_right {
    gap: 40px;
}
.archive_page .breadcrumbs {
    margin: 0;
}
.archive_page .page_title{
    color: rgba(19, 19, 19, 1);

font-size: 48px;
font-weight: 600;
line-height: 59px;
letter-spacing: 0%;
text-align: left;
}
.articles_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    row-gap: 40px;
}
.serices_list {
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.serices_list .service_btn {
    background: #176BD8;
    border: none;
    color: #fff;
}
.serices_list .service_btn:hover {
    background-color: #1661c3;
}
.serices_list .service_info__title {

font-size: 15px;
font-weight: 500;
line-height: 18px;
letter-spacing: 0%;
text-align: left;
}
.serices_list .service_info__subtitle {
color: rgba(0, 0, 0, 1);
font-size: 24px;
font-weight: 600;
line-height: 29px;
letter-spacing: 0%;
text-align: left;
}
.serices_list .service_card:hover {
    background: rgba(255, 255, 255, 0.5);
}
.service_list_body .page_head {
    padding-bottom: 0;
    border-bottom: none;
}
.main_banner_tab,
.main_banner_mob {
    display: none;
}
.offerings_slider  .swiper-wrapper {
height: fit-content;
}

.blur-overlay {
  position: fixed;
  z-index: 30; 
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  backdrop-filter: blur(3px);
  background: rgba(255, 255, 255, 0.2);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s;
  pointer-events: none;

}
.megamenu  {
    z-index: 40;
}

.article_body .page_title  {
    font-size: 32px;
    line-height: 110%;
}

.page_cart .consult_banner  {
    display: none;
}

.page_cart .product_slider__title {
    font-size: 24px;
}
.page_cart .product_slider__container {
    gap: 0px;
    margin-top: 50px;
}
.page_cart .product_slider__container {
    overflow: hidden;
}

   header:not(.header_advanced) .bottom_header__left .logo img {
        filter: brightness(100);
    }
    header:not(.header_advanced) .top_bar_phone {
        display: none;
    }
 header:not(.header_advanced) .cart_btn path {
fill: #fff;
 }
  header:not(.header_advanced) .cart_btn:hover path {
    fill: #176BD8;
  }

  .mt_main {
    margin-top: 63px;
}
    .article_img img {
        max-width: 960px;
        margin: auto;
        justify-content: center;
  display: flex;
    }
    .count_bubble {
        display: flex !important;
    }
        .menu-wrapper .item,
.advantage_item  {
    font-size: 16px;
}
.section.advantages {
    margin-top: 30px;
    margin-bottom: -30px;
}
    .menu-wrapper .item {
        padding: 10px;
        padding-right: 50px;
    }
@media screen and (max-width:1444px) {
    .product_gallery  {
    width: 60%;
}

.product_info_right {
    gap: 20px;
    width: 60%;
}
}

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

    .main-sidebar {
        gap: 0;
    }

    .main_body_left {
        min-width: 360px;
    }
    .product_card_advantage:nth-child(2) {
        display: none;
    }

    .product_card {
        padding: 0;
    }

    .product_card_info {
        gap: 13px;
    }

    .price_new {
        font-size: 22px;
        font-weight: 500;
        line-height: 27px;
        letter-spacing: -2%;
    }

    .product_card_info_bottom {
        flex-direction: column;
        gap: 11px;
    }

    .product_card:hover {
        background: none;
        box-shadow: none;
    }

    .card_button {
        opacity: 1;
        width: 100%;
        height: 40px;
        gap: 10px;
        border-radius: 12px;
    }

    .card_button span {
        display: flex;
        color: rgb(255, 255, 255);
        font-size: 14px;
        font-weight: 500;
        line-height: 17px;
        letter-spacing: -2%;
        text-align: left;
    }
        #orderModal .modal-content {
            max-height: fit-content;
        }
        #orderModal .modal-content {
            gap: 15px ;
            padding: 20px;
        }
        #orderModal .round {
            margin: 15px 0;
        }
        #orderModal textarea {
          height: 50px;
        }
        .cart .product_info_right .product_card_price {
          flex-direction: column;
        }
}

@media screen and (max-width:960px) {
    .top_header .logo {
        display: flex;
    }
    .bottom_header  {
        transition: 0.4s !important;
    }

    header:not(.header_advanced) .cart_btn path {
        fill: #77778D;
    }
    .bottom_header.top {
        top: 10px;
    }
    .bottom_header {
        top: 60px;
    }
        .bottom_header .burger,
        .bottom_header input,
        .bottom_header .bottom_header__right .cart_btn {
               box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.08), 0 2px 4px 0 rgba(0, 0, 0, 0.12);

    }
    .page_cart .product_slider__container {
    gap: 20px;
}
    .main_banner_desc {
        display: none;
    }
    .main_banner_tab {
        display: flex;
    }
    .main_body_left,
    .cart_btn span,
    .bottom_header .logo,
    .slide_image_desc,
    .top_menu,
    #currentCityBtn {
        display: none;
    }

    .slide_image_tab {
        display: flex;
    }

    .bottom_header__left {
        background: none;
        gap: 5px;
        padding: 0;
        backdrop-filter: none;
    }

    .bottom_header__wrapper {
        gap: 5px;
        padding: 0 20px;
        width: 100%;
        margin: auto;
        top: 10px;
    }

    .burger {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 58px;
        height: 52px;
        border-radius: 50%;
        background: #176BD8;
    }

    .cart_btn {
        background: #fff;
        padding: 0;
        width: 52px;
        height: 52px;
    }

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

    .cart_btn svg path {
        fill: #77778D;
    }

    .bottom_header__left {
        width: 100%;
    }

    .bottom_header__left form input::placeholder {
        color: #77778D;
    }

    .bottom_header__left form input {
        height: 52px;
        background: #fff;
        color: #222;
        width: 100%;
    }

    .advantages_list {
        flex-direction: column;
    }

    .main_body_right {
        width: 100%;
    }

    .bottom_header {
        z-index: 1001;
    }

    .bottom_header__left form::before {
        background-image: url("data:image/svg+xml,%3Csvg width='14' height='14' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M7.21961 1.17072C3.87892 1.17072 1.17075 3.87881 1.17075 7.21942C1.17075 10.56 3.87892 13.2681 7.21961 13.2681C10.5603 13.2681 13.2685 10.56 13.2685 7.21942C13.2685 3.87881 10.5603 1.17072 7.21961 1.17072ZM0 7.21942C0 3.23224 3.23233 0 7.21961 0C11.2069 0 14.4392 3.23224 14.4392 7.21942C14.4392 11.2066 11.2069 14.4388 7.21961 14.4388C3.23233 14.4388 0 11.2066 0 7.21942Z' fill='%2377778D'/%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M11.4879 11.4886C11.7165 11.26 12.0871 11.26 12.3157 11.4886L15.8279 15.0007C16.0565 15.2293 16.0565 15.6 15.8279 15.8286C15.5993 16.0572 15.2287 16.0572 15.0001 15.8286L11.4879 12.3164C11.2593 12.0878 11.2593 11.7172 11.4879 11.4886Z' fill='%2377778D'/%3E%3C/svg%3E%0A");
        z-index: 1;
        top: 20px;
    }

    .bottom_header__left form {
        width: 100%;
    }

    .head_phone a {
        color: #77778D;
        font-size: 16px;
        font-weight: 500;
        line-height: 15px;
        letter-spacing: 0%;
        text-align: left;
        text-decoration-line: underline;
    }

    .top_header .logo img {
        width: 133px;
    }

    .advantages_list {
        max-width: 50%;
        gap: 24px;
        margin: auto;
    }

    .main_slider .swiper-horizontal>.swiper-pagination-bullets,
    .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: 10px;
    }

    .product_slider__title {
        font-size: 24px;
        font-weight: 600;
        line-height: 29px;
        letter-spacing: -2%;
    }

    .product_card_advantage:nth-child(2) {
        display: none;
    }

    .product_card {
        padding: 0;
    }

    .product_card_info {
        gap: 13px;
    }

    .price_new {
        font-size: 22px;
        font-weight: 500;
        line-height: 27px;
        letter-spacing: -2%;
    }

    .product_card_info_bottom {
        flex-direction: column;
        gap: 11px;
    }

    .product_card:hover {
        background: none;
        box-shadow: none;
    }

    .card_button {
        opacity: 1;
        width: 100%;
        height: 40px;
        gap: 10px;
        border-radius: 12px;
    }

    .card_button span {
        display: flex;
        color: rgb(255, 255, 255);
        font-size: 14px;
        font-weight: 500;
        line-height: 17px;
        letter-spacing: -2%;
        text-align: left;
    }

    .main_slider .swiper-pagination-bullets .swiper-pagination-bullet,
    .main_slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
        width: 6px;
        height: 6px;
    }

    .main_slider .swiper-pagination-bullets .swiper-pagination-bullet,
    .main_slider .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet-active {
        width: 48px;
    }

    .bottom_header__left form input:focus {
        border: 1px solid #176BD8;
    }

    .about_text {
        columns: 1;
    }

    .about_title {
        font-size: 28px;
        font-weight: 600;
        line-height: 110%;
        letter-spacing: 0%;
    }

    .about_advantages {
        display: flex;
        flex-direction: column;
        gap: 34px;
    }

    .about_advatage__icon img {
        width: 64px;
    }

    .offerings_slider__container {
        gap: 32px;
    }

    .product_slider__container {
        gap: 16px;
    }

    .footer_row {
        flex-direction: column;
        gap: 40px;
    }

    .bold_menu ul {
        display: flex;
        gap: 40px;
    }

    .footer_phone a {
        text-decoration: none;
        font-size: 18px;
        font-weight: 600;
        line-height: 22px;
        letter-spacing: -2%;
        text-align: left;
        color: #176BD8;
    }

    .main_body_right {
        gap: 40px;
    }

    .footer {
        padding-bottom: 20px;
    }

    .product_slider__title {
        margin-left: 0;
    }

    .modal-content {
        max-width: 80%;
    }

    .success_text p {
        font-size: 18px;
    }

    .modal-content {
        padding: 20px;
    }

    .top_bar_phone {
        display: none;
    }

    .header_advanced .bottom_header__left form {
        width: 100%;
    }

    .header_advanced .bottom_header__left {
        background: none;
    }

    .header_advanced .bottom_header__left form input {
        background: #fff;
    }

    .header_advanced .bottom_header__left {
        padding: 0;
        gap: 5px;
    }

    .header_advanced .bottom_header__wrapper {
        max-width: 100%;

    }
 

    .catalog_grid {

        grid-template-columns: repeat(2, 1fr);
        row-gap: 58px;
        column-gap: 30px;
    }

    .footer_col {
        width: 100%;
    }

    body:has(main.catalog) .footer_row {
        align-items: start;
    }

    body:has(main.catalog) .footer_col .bold_menu ul {
        flex-direction: column;
    }

    .mt110,
    .catalog {
        margin-top: 90px;
    }

    .products_grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 15px;
        row-gap: 30px;
    }

    .catalog_banner {
        display: flex;
    }

    .cat_banner_mob {
        display: none;
    }

    .catalog_banner img {
        margin: 10px 0;
    }

    .category_title {
        font-size: 30px;
        font-weight: 600;
        line-height: 37px;
        margin: 20px 0;
    }

    .catalog_top_banner {
        display: none;
    }

    .product_gallery,
    .gallery-container {
        flex-direction: column-reverse;
        width: 100%;
    }

    .product_gallery .thumbs-swiper {
        width: 100%;
        height: auto;
    }

    .thumbs-button-next {
        display: none;
    }

    .product_gallery .gallery-container {
        max-width: 100%;
    }

    .product_top {
        flex-direction: column;
    }

    .options .options_radio {
        flex-direction: column;
        gap: 24px;
    }

    .radios {
        max-width: 100%;
    }

    .variations_button {
        flex-direction: column;
    }

    .single_variation_wrap .btn {
        width: 100%;
    }

    .product_consult {
        flex-direction: column;
        gap: 12px;
        align-items: start;
        margin-top: 0;
    }

    .product_consult button {
        width: 100%;
    }

    .product_body .main_body_right {
        gap: 24px;
    }

    .tab {
        text-wrap: nowrap;
    }

    .breadcrumbs {
        overflow: hidden;
    }

    .breadcrumbs li {
        text-wrap: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .product_top {
        gap: 24px;
    }

    .service_card {
        align-items: start;
        flex-direction: column;
        gap: 12px;
    }

    .service_card a {
        width: 100%;
    }

    .cart_item {
        flex-direction: column;
        align-items: start;
        gap: 10px;
    }

    .product_info_right {
        margin: unset;
        width: 100%;
        gap: 0;
        justify-content: space-between;
    }

    .product_info__chars {
        flex-direction: column;
    }

    .product_image {
        display: none;
    }

    .product_image.mob {
        display: flex;
    }

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

    .cart,
    .single_variation_wrap,
    .cart_body .main_body_right {
        gap: 24px;
    }

    .checkout_body {
        gap: 10px;
        flex-direction: column;
    }

    .checkout_body .main_body_left {
        display: flex;
        width: 100%;
    }

    .checkout_body .nice-select {
        width: 100%;
    }

    .card {
        flex-direction: column;
    }

    .checkout_body .main_body_right {
        width: 100%;
    }

    body:has(main.checkout) .footer_row {
        gap: 10px;
    }

    .nice-select-dropdown {
        width: 100%;
    }

    .partnership_grid {
        display: flex;
        flex-direction: column;
        gap: 34px;

    }

    .readmore_articles {
        display: flex;
        flex-direction: column;
        gap: 13px;
    }

    .article_img img {
        height: 300px;
    }
    .articles_grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .serices_list .service_btn {
        width: 100%;
    }
    .article_body .page_title  {
    font-size: 24px;
}
}



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

    .slide_image_tab,
    .hide_xm {
        display: none;
    }

    .bottom_header {
        top: 65px;
    }

    .hide_xl.hide_xm,
    .slide_image_mob {
        display: flex;
    }

    .burger {
        width: 64px;
    }

    .bottom_header__wrapper {
        top: 0;
    }

    .advantages_list {
        max-width: 100%;
    }

    .offerings_slider__nav {
        margin-top: 20px;
    }

    .footer {
        margin-top: 20px;
    }

    .modal-content {
        max-width: 95%;
    }

    .catalog_grid {
        display: flex;
        flex-direction: column;

        column-gap: 30px;
    }

    .page_title {
        font-size: 34px;
    }

    .mt110,
    .catalog {
        margin-top: 135px;
    }

    .breadcrumbs li {
        font-size: 12px;
    }

    .catalog_nav {
        flex-direction: column;
        justify-content: start;
        align-items: start;
        gap: 16px;
    }

    .products_grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;

    }
   
    .cat_banner_tab {
        display: none;
    }

    .cat_banner_mob {
        display: flex;
    }

    .tabs {
        overflow: scroll;

    }

    .tab {
        padding: 0 25px;
    }

    .tabs {
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

    .tabs::-webkit-scrollbar {
        display: none;
    }

    .client_type {
        flex-direction: column;
    }

    .contacts_list {
        flex-direction: column;
        gap: 24px;
    }
    .serices_list .service_info__title {

font-size: 12px;
font-weight: 500;
line-height: 15px;
letter-spacing: 0%;
text-align: left;
}
.serices_list .service_info__subtitle {

font-size: 18px;
font-weight: 600;
line-height: 22px;
letter-spacing: 0%;
text-align: left;
}
.main_banner_tab {
    display: none;
}
   .main_banner_mob {
        display: flex;
    }
        .articles_grid {
       display: flex;
       flex-direction: column;
    }
    .main_body {
        margin-top: 10px;
    }
      .section.advantages {
  
    margin-bottom: 30px;
  }
}

.count_bubble {
    display: flex;
  width: 20px;
  height: 20px;
  background: #176BD8;
  color: #fff !important;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: 0;
}

.autocomplete-suggestions { border: 1px solid #D9D9D9; background: #FFF; overflow: auto; top: 100%; left: 0; width: 100% !important;}
.autocomplete-suggestion { padding: 8px 14px; white-space: nowrap; overflow: hidden; cursor: pointer;}
.autocomplete-selected { background: #F0F0F0; }
.autocomplete-suggestions strong { font-weight: normal; color: #3399FF; }
.autocomplete-group { padding: 2px 5px; }
.autocomplete-group strong { display: block; border-bottom: 1px solid #000; }
/* HTML: <div class="loader"></div> */

.loader {
    font-weight: bold;
    font-family: sans-serif;
    font-size: 30px;
    animation: l1 1s linear infinite alternate;
}
.loader:before {
    content:"Загрузка..."; position: absolute; left: 0; width: 100%; height: 100%; text-align: center;
}
@keyframes l1 {to{opacity: 0}}

/* === ШАПКА: иконки + телефон прижаты к правому краю === */
.top_header {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  max-width: none !important;
  padding: 20px !important;
}
.top_menu {
  flex: 1 1 auto !important;
  justify-content: center !important;
}
.top_header__right {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 !important;
  flex-shrink: 0;
}
.header-messengers {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 !important;
}
.header-messengers a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  transition: opacity .6s ease;
}
.header-messengers a:hover { opacity: .7; }
.header-messengers img {
  display: block;
  width: 32px;
  height: 32px;
}
@media (max-width: 860px) {
  .top_header__right { gap: 8px; }
  .header-messengers { gap: 5px; }
  .header-messengers a { width: 30px; height: 30px; }
  .header-messengers img { width: 24px; height: 24px; }
}
/* === ПОДВАЛ: иконки мессенджеров (WhatsApp и Макс) под телефоном === */
.footer-messengers {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
}
.footer-messengers a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  transition: opacity .6s ease;
}
.footer-messengers a:hover { opacity: .7; }
.footer-messengers img {
  display: block;
  width: 32px;
  height: 32px;
}
@media (max-width: 860px) {
  .footer-messengers { gap: 5px; }
  .footer-messengers a { width: 30px; height: 30px; }
  .footer-messengers img { width: 24px; height: 24px; }
}
/* Форма заявки: отступы вокруг капчи (между согласием и кнопкой) */
#captcha-container {
    margin: 14px 0;
}