/* === БАЗОВЫЕ НАСТРОЙКИ И ШАПКА САЙТА === */
a:focus {
    outline: none !important;
}
.btn, .button, a.btn {
    background-color: #4a7ba8 !important;
    color: #ffffff !important;
}
.header, .site-header {
    background-color: #4a7ba8 !important;
}
.alert, .notice {
    background-color: #eef3f7 !important;
    border-left-color: #4a7ba8 !important;
}
.site-titles a {
    color: #4a7ba8 !important;
    display: inline-flex !important;
    align-items: center !important;
    line-height: 0.75 !important;
    height: 1.35em !important;
    padding: 0 !important;
    margin: 0 !important;
    letter-spacing: 0.5px !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    transition: all 0.3s ease !important;
}
.site-titles a:hover {
    color: #2b5a7f !important;
}
/* === НАВИГАЦИЯ, СООБЩЕНИЯ И ТАБЫ === */
.woocommerce-error, .woocommerce-info, .woocommerce-message {
    border-top: 3px solid #4a7ba8 !important;
}
.tab a {
    display: inline-block !important;
    color: #2c3e50 !important;
    text-decoration: none !important;
    padding: 6px 12px !important;
    line-height: 25px !important;
    background-color: #f9f9f9 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    border-radius: 6px !important;
    border: 1px solid transparent !important;
    border-left: 3px solid #4a7ba8 !important;
    transition: all 0.2s ease !important;
}
.tab a:hover {
    font-weight: 700 !important;
    transform: scale(1.03) translateX(-2px) !important;
    background-color: #f0f0f0 !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.08) !important;
    color: #000000 !important;
}
.woocommerce a.remove {
    color: #4a7ba8 !important;
}
.main-navigation ul li a, .primary-menu li a, #menu-main li a {
    color: #4a7ba8 !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
}

/* === СТИЛИ ТАБЛИЦЫ КОРЗИНЫ И СУММ === */
.woocommerce table.shop_table {
    border-collapse: collapse !important;
    border: none !important;
    margin: 0 0 24px 0 !important;
    width: 100% !important;
    font-family: inherit !important;
}
.woocommerce table.shop_table tbody tr {
    height: 60px !important;
    background-color: #ffffff !important;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03) inset !important;
}
.woocommerce table.shop_table tbody tr:nth-child(even) {
    background-color: #f9fbfd !important;
}
.woocommerce table.shop_table th, .woocommerce table.shop_table td {
    padding: 0 15px !important;
    border: none !important;
    vertical-align: middle !important;
    color: #333333 !important;
}
.woocommerce table.shop_table .product-name a, .woocommerce table.shop_table .product-name {
    font-size: 17px !important;
    font-weight: 700 !important;
    color: #222222 !important;
    text-decoration: none !important;
}
.woocommerce table.shop_table .product-total,
.woocommerce table.shop_table .quantity input,
.woocommerce table.shop_table .product-subtotal,
.woocommerce table.shop_table .order-total .amount,
.woocommerce table.shop_table .cart-subtotal .amount {
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #222222 !important;
}
.woocommerce table.shop_table thead th {
    background-color: #f5f7fa !important;
    color: #2c3e50 !important;
    font-weight: 600 !important;
    padding: 12px 15px !important;
    border: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}
.woocommerce table.shop_table tfoot tr th.order-total,
.woocommerce table.shop_table tfoot tr td.order-total {
    font-size: 20px !important;
    font-weight: 700 !important;
    background-color: #f5f7fa !important;
    border-top: 2px solid #4a7ba8 !important;
}
.woocommerce table.shop_table th.product-price, .woocommerce table.shop_table td.product-price,
.woocommerce table.shop_table tfoot tr th, .woocommerce table.shop_table tfoot tr td {
    min-width: 120px !important;
    text-align: right !important;
}
/* === МИНИАТЮРЫ КОРЗИНЫ И КАРТОЧКА ТОВАРА === */
.woocommerce table.shop_table td.product-thumbnail {
    vertical-align: middle !important;
    padding: 0 !important;
    overflow: hidden !important;
    position: relative !important;
}
.woocommerce table.shop_table td.product-thumbnail img {
    width: 90px !important;
    height: auto !important;
    display: block !important;
    margin: 0 auto !important;
    transition: transform 0.3s ease !important;
}
.woocommerce table.shop_table td.product-thumbnail img:hover {
    transform: scale(1.15) !important;
    z-index: 10 !important;
    cursor: zoom-in !important;
}
.woocommerce div.product form.cart {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.my-clean-no-border-btn {
    display: inline-block !important;
    background-color: transparent !important;
    color: #4a7ba8 !important;
    border: none !important;
}
.woocommerce ul.products li.product, ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    height: auto !important;
    min-height: 590px !important;
    padding: 20px !important;
    background-color: #ffffff !important;
    border: 1px solid #eef2f5 !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03) !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    position: relative !important;
}
.woocommerce ul.products li.product:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 12px 24px rgba(74, 123, 168, 0.12) !important;
    border-color: #4a7ba8 !important;
}
/* 1. ГАРАНТИРОВАННОЕ ОКРАШИВАНИЕ И УВЕЛИЧЕНИЕ ЗАГОЛОВКОВ ВНУТРИ КОНТЕНТА (БЕЗ ШАПКИ) */
main h1, 
main h2,
#content h1,
#content h2,
.elementor-page-title,
.wd-page-title,
.page-title-inner h1,
.title-wrapper h1,
.title-wrapper h2,
.title-design-centered .title,
.section-title h2,
.section-title h1,
.wd-title h2,
.wd-title h1 {
    font-size: 28px !important; /* Название страницы будет большим, красивым и синим */
    font-weight: 800 !important;
    color: #4a7ba8 !important;
    text-align: center !important;
    margin-top: 25px !important;
    margin-bottom: 10px !important; /* Поджимаем каталог кнопок выше */
    letter-spacing: -0.5px !important;
}
/* === ОФОРМЛЕНИЕ ЭЛЕМЕНТОВ КАРТОЧКИ И КНОПКИ === */
.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    margin-bottom: auto !important;
    text-decoration: none !important;
}
.woocommerce ul.products li.product::before,
.woocommerce ul.products li.product::after,
.woocommerce ul.products li.product .onsale::before,
.woocommerce ul.products li.product .onsale::after,
.archive.woocommerce span.onsale:before {
    display: none !important;
    content: none !important;
    background: none !important;
}
.woocommerce ul.products li.product span.onsale {
    background-color: #cf2e2e !important;
    border-radius: 4px !important;
    padding: 5px 15px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    position: absolute !important;
    top: 15px !important;
    left: 50% !important;
    transform: translateX(-50%) !important; 
    min-height: auto !important;
    line-height: 1.4 !important;
    z-index: 5 !important;
}
.woocommerce ul.products li.product picture,
.woocommerce ul.products li.product img {
    display: block !important;
    margin: 25px auto 15px auto !important;
    max-height: 180px !important;
    width: auto !important;
    object-fit: contain !important;
    transition: transform 0.3s ease, filter 0.3s ease !important;
}
.woocommerce ul.products li.product a img:hover {
    transform: scale(1.05) !important;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #2c3e50 !important;
    text-align: center !important;
    margin-bottom: 10px !important;
    min-height: 44px !important;
    line-height: 1.3 !important;
    display: block !important;
    letter-spacing: 0.5px !important;
}
.woocommerce ul.products li.product span.price {
    display: block !important;
    text-align: center !important;
    margin-bottom: 15px !important;
}
.woocommerce ul.products li.product span.price del {
    font-size: 13px !important;
    color: #95a5a6 !important;
    margin-right: 6px !important;
}
.woocommerce ul.products li.product span.price ins,
.woocommerce ul.products li.product span.price > .amount {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #4a7ba8 !important;
    text-decoration: none !important;
}
.woocommerce ul.products li.product .fields_price_container {
    display: block !important;
    width: 100% !important;
    background-color: #f8fafc !important;
    border-radius: 8px !important;
    padding: 15px 18px !important;
    margin: 0 0 15px 0 !important;
    box-sizing: border-box !important;
}
.woocommerce ul.products li.product .field_single_line {
    display: flex !important;
    justify-content: space-between !important;
    text-align: left !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: #4e5d6c !important;
    border-bottom: 1px dashed #e2e8f0 !important;
    padding-bottom: 4px !important;
    margin-bottom: 7px !important;
    transition: color 0.2s ease, font-size 0.2s ease, font-weight 0.2s ease !important;
}
.woocommerce ul.products li.product .field_single_line:last-child {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.woocommerce ul.products li.product .button.add_to_cart_button {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    background-color: #4a7ba8 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    padding: 10px 0 !important;
    border-radius: 6px !important;
    margin-bottom: 8px !important;
    transition: background-color 0.2s ease, transform 0.1s ease !important;
}
.woocommerce ul.products li.product .button.add_to_cart_button:hover {
    background-color: #38628c !important;
    transform: scale(1.02) !important;
}
.woocommerce ul.products li.product .yith-wcqv-button {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    background-color: transparent !important;
    color: #7f8c8d !important;
    border: 1px solid #dcdde1 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    padding: 8px 0 !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
}
.woocommerce ul.products li.product .yith-wcqv-button:hover {
    background-color: #f5f6fa !important;
    color: #2c3e50 !important;
    border-color: #7f8c8d !important;
}
/* === СТИЛИ СТРАНИЦЫ ВЫШКА ТУРА === */
.al-menu-stairs li {
    display: inline-block;
    border: 0;
    margin: 2% 1%;
}
.al-menu-stairs a {
    text-decoration: none;
}
.al-menu-stairs {
    text-align: center;
    list-style: none;
    display: block;
    width: 100%;
    clear: both;
    overflow: hidden;
    background: #fff;
    margin: 0;
    padding: 0;
    position: relative;
}
.al-menu-stairs img, .al-menu-stairs strong {
    display: block;
    text-align: center;
    margin: 0 auto;
    padding: 0;
}
.al-menu-stairs strong {
    padding: 3% 1%;
    border: 1px solid #ddd;
    border-bottom: 1px solid #aaa;
    border-right: 1px solid #aaa;
    background: #e5ebea;
    color: #000;
    font-weight: normal;
}
.al-menu-stairs a:hover strong {
    color: red;
    border: 1px solid #ddd;
    background: #fff;
}
.shop-folder-desc2 {
    clear: both;
    margin: 10% 0 0;
}
.al-filtr-stairs {
    list-style: none;
    margin: 0;
    padding: 0;
    display: block;
    width: 100%;
    clear: both;
    overflow: hidden;
    background: #fff;
    position: relative;
}
.al-filtr-stairs li {
    display: inline-block;
}
.al-filtr-stairs>li {
    float: right;
    width: 79.8%;
    padding: 1% 2% 1%;
}
.al-filtr-stairs>li:first-child {
    display: block;
    float: left;
    width: 20%;
    height: 100%;
    padding: 0;
}
.al-filtr-stairs ol {
    list-style: none;
    margin: 0;
    display: block;
    width: 100%;
    clear: both;
    overflow: hidden;
    background: #fff;
    padding: .5%;
}
.al-filtr-stairs ol li {
    width: 23.5%;
    margin: 0 .5%;
    background: #fff;
    text-align: center;
    vertical-align: bottom;
}
.al-filtr-stairs ol a {
    width: 100%;
    padding: 2% 2px;
    margin: 2% 0;
    display: inline-block;
    background: #e5ebea;
    color: #000;
    border: 1px solid #ddd;
    border-bottom: 1px solid #aaa;
    border-right: 1px solid #aaa;
}
.al-filtr-stairs ol a:hover, .al-filtr-stairs ol a.al-active {
    color: red;
    font-weight: bold;
    text-decoration: none;
    border: 1px solid #ddd;
    background: #fff;
}
.al-filtr-stairs a {
    text-decoration: none;
}
.al-filtr-stairs img {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 20%;
    height: auto;
    margin: auto 0;
}
.al-filtr-stairs strong {
    padding: 0 0 2%;
}
.al-border {
    overflow: hidden;
    padding: 2%;
}
.al-menu-stairs.al-404-menu {
    border: 0;
}
.al-404-menu img {
    display: inline-block;
}
.al-404-menu li {
    border: 1px solid #aaa;
    margin: 1%;
    padding: 6px;
}
.al-404-menu strong {
    display: block;
    padding: 2px 6px;
}
li.level-3 {
    display: none;
}
/* === ФОРМА ЗАКАЗА И АККОРДЕОНЫ === */
#orderForm {
    margin: 2% 0;
}
#orderForm input, #orderForm textarea, .al-mail input, .al-mail textarea {
    width: 100%;
    max-width: 500px;
}
#orderForm .al-checkout, .al-mail .al-checkout {
    margin: 10px 0;
    width: 180px;
}
#acc {
    width: 100%;
    overflow: hidden;
    list-style: none;
    margin: 3% 0;
    padding: 0 2% 2%;
    background: #f1f1f1;
    border: 1px solid #aaa;
}
#acc>li>.acc-section {
    opacity: 1!important;
    height: auto!important;
}
#acc>li>h2 {
    width: 100%;
    border: 0;
    background: none;
    padding: 6px 6px 8px;
    font-size: 130%;
    margin-top: 5px;
    cursor: auto;
}
#acc .acc-section {
    overflow: hidden;
    background: #fff;
}
.acc-content-par {
    width: 100%;
    padding: .5% 0;
    background: #fff;
}
#nested {
    width: 100%;
    list-style: none;
    padding: 0;
}
#nested li {
    display: block;
    background: #fff;
    margin: .5% 0;
    padding: .5% 1%;
}
#nested h2 {
    width: 100%;
    border: 1px solid #ddd;
    background: #f9f9f9;
    font-size: 100%;
    cursor: pointer;
    padding: 1%;
    font-weight: normal;
}
#nested h2:hover {
    background: #fff;
}
#nested .acc-section {
    overflow: hidden;
    background: #fff;
}
#nested .acc-content {
    width: 100%;
    background: #fff;
}
#acc .acc-selected-nes {
    border-bottom: transparent;
}
.acc-content {
    overflow: hidden;
    width: 100%;
    min-height: 200px;
    padding: 10px;
    margin: 0;
    font-size: 90%;
    border: 1px solid #cecece;
    border-top: transparent;
}

/* === УЛУЧШЕННАЯ СОРТИРОВКА ТОВАРОВ === */
.woocommerce-result-count {
    display: none;
}
form.woocommerce-ordering {
    display: inline-block !important;
    float: right !important;
    margin: 20px 0 !important;
}
form.woocommerce-ordering select.orderby {
    background-color: #4a7ba8 !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    padding: 10px 35px 10px 15px !important;
    border: none !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease, transform 0.1s ease !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
background-image: url("data:image/svg+xml;utf8,") !important;
background-repeat: no-repeat !important;
background-position: right 15px center !important;
}
form.woocommerce-ordering select.orderby:hover {
background-color: #38628c !important;
transform: scale(1.02) !important;
}
form.woocommerce-ordering select.orderby option {
background-color: #ffffff !important;
color: #333333 !important;
font-weight: normal !important;
}
/* === ШАПКА САЙТА И ЦЕНТРИРОВАНИЕ МЕНЮ === */
#search-box, 
.search-box-inner, 
form.woocommerce-product-search {
    display: none !important;
}
.site-branding {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    margin: 0 !important;
}
.header-wrap, 
#site-branding .wrap {
   /* padding-top: 5px !important;
    padding-bottom: 5px !important; */
    min-height: auto !important;
}
.header-tel-info pre.wp-block-code code,
.header-right .header-tel-info pre {
    background: none !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    color: #4a7ba8 !important;
    letter-spacing: 0.5px !important;
}
nav#site-navigation {
    float: none !important;
    display: flex !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 10px 0 !important;
    clear: both !important;
}
nav#site-navigation ul.nav-menu li a,
#primary-menu li a {
    font-size: 16px !important;
    padding: 10px 20px !important;
}
#sticky-header .wrap {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
}
.site-branding .wrap {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
}
.header-right {
    float: right !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 30px !important;
    width: auto !important;
    margin: 0 !important;
}
#sticky-header .cart-box,
#sticky-header .sx-cart-views {
    display: none !important;
}
.site-name {
    float: left !important;
    display: block !important;
}
#sticky-header .main-header {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    float: none !important;
    width: 100% !important;
    height: 40px !important;
    padding: 0 !important;
    margin: 0 auto !important;
}
#sticky-header .header-right,
#sticky-header .cart-box,
#sticky-header .sx-cart-views {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    visibility: hidden !important;
}
#sticky-header #site-branding,
#sticky-header .site-branding {
    display: none !important;
    width: 0 !important;
}
#site-content-contain,
#content,
.site-content .wrap,
#primary,
#main {
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}
ul.al-menu-stairs {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    float: none !important;
    margin: 25px auto !important;
    padding: 0 !important;
    width: 100% !important;
}
.term-description,
.term-description ul {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    float: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
}
h1.page-title,
.term-description h2 {
    text-align: center !important;
    width: 100% !important;
    margin: 20px auto !important;
    float: none !important;
}
/* === СТРАНИЦА ОДНОГО ТОВАРA (SINGLE PRODUCT) === */
.woocommerce-page .single-product,
.single-product div.product {
    background-color: #ffffff !important;
    padding: 30px 0 !important;
}
.single-product span.onsale {
    background-color: #cf2e2e !important;
    color: #ffffff !important;
    border-radius: 4px !important;
    padding: 5px 15px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    position: absolute !important;
    top: 15px !important;
    left: 15px !important;
    min-height: auto !important;
    line-height: 1.4 !important;
}
.single-product p.price {
    font-size: 0 !important;
    margin: 20px 0 !important;
}
.single-product p.price del,
.single-product p.price del .woocommerce-Price-amount {
    font-size: 16px !important;
    color: #95a5a6 !important;
    font-weight: 400 !important;
    margin-right: 12px !important;
    display: inline-block !important;
}
.single-product p.price ins,
.single-product p.price ins .woocommerce-Price-amount,
.single-product p.price > .amount {
    font-size: 26px !important;
    font-weight: 700 !important;
    color: #4a7ba8 !important;
    text-decoration: none !important;
    display: inline-block !important;
}
.single-product div.product form.cart {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    margin: 25px 0 !important;
}
.single-product div.product form.cart .quantity input.qty {
    width: 60px !important;
    height: 46px !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #2c3e50 !important;
    text-align: center !important;
    border: 1px solid #dcdde1 !important;
    border-radius: 6px !important;
    background-color: #ffffff !important;
    padding: 0 !important;
}
.single-product div.product form.cart .button.single_add_to_cart_button {
    background-color: #4a7ba8 !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    height: 46px !important;
    padding: 0 35px !important;
    border-radius: 6px !important;
    border: none !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease, transform 0.1s ease !important;
}
.single-product div.product form.cart .button.single_add_to_cart_button:hover {
    background-color: #38628c !important;
    transform: scale(1.02) !important;
}
.single-product .my_quantity {
    display: inline-block !important;
    background-color: #e3f2fd !important;
    color: #1e88e5 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 6px 14px !important;
    border-radius: 4px !important;
    margin: 10px 0 !important;
}
.woocommerce-tabs.wc-tabs-wrapper {
    margin-top: 40px !important;
    border-top: 1px solid #eef2f5 !important;
    padding-top: 30px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
    padding: 0 !important;
    margin: 0 0 20px 0 !important;
    border-bottom: 1px solid #dcdde1 !important;
    display: flex !important;
    gap: 10px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background-color: #f8fafc !important;
    border: 1px solid #dcdde1 !important;
    border-bottom: none !important;
    border-radius: 6px 6px 0 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    display: block !important;
    padding: 10px 20px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #5a6c7d !important;
    text-decoration: none !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    background-color: #ffffff !important;
    border-top: 3px solid #4a7ba8 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: #4a7ba8 !important;
}
.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel {
    font-size: 15px !important;
    line-height: 1.7 !important;
    color: #2c3e50 !important;
    padding: 10px 5px !important;
}
/* === КНОПКА НАЗАД И ХАРАКТЕРИСТИКИ ТОВАРA === */
.woocommerce-breadcrumb,
.single-product .my-clean-no-border-btn {
    display: inline-flex !important;
    align-items: center !important;
    background-color: transparent !important;
    color: #4a7ba8 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    margin-bottom: 15px !important;
    padding: 0 !important;
    border: none !important;
    transition: color 0.2s ease !important;
}
.woocommerce-breadcrumb a,
.single-product .my-clean-no-border-btn:hover {
    color: #38628c !important;
}
.woocommerce-breadcrumb::before {
    content: "← " !important;
    font-weight: 700 !important;
    margin-right: 5px !important;
}
.single-product .summary .woocommerce-product-details__short-description,
.single-product .summary div[itemprop="description"],
.single-product .summary .fields_price_container {
    display: block !important;
    width: 100% !important;
    max-width: 500px !important;
    background-color: #f8fafc !important;
    border-radius: 8px !important;
    padding: 18px 20px !important;
    margin: 20px 0 !important;
    box-sizing: border-box !important;
    border: 1px solid #eef2f5 !important;
}
.single-product .summary .woocommerce-product-details__short-description p,
.single-product .summary div[itemprop="description"] p,
.single-product .summary .field_single_line {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-end !important;
    text-align: left !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: #4e5d6c !important;
    margin: 0 0 8px 0 !important;
    padding-bottom: 4px !important;
    border-bottom: 1px dashed #e2e8f0 !important;
}
.single-product .summary .woocommerce-product-details__short-description p:last-child,
.single-product .summary div[itemprop="description"] p:last-child,
.single-product .summary .field_single_line:last-child {
    border-bottom: none !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.single-product .summary .woocommerce-product-details__short-description p strong,
.single-product .summary .woocommerce-product-details__short-description p b,
.single-product .summary div[itemprop="description"] p strong,
.single-product .summary .field_single_line span:last-child {
color: #2c3e50 !important;
font-weight: 700 !important;
}
/* Эффект плавного масштабирования плашки параметров */
.woocommerce ul.products li.product .fields_price_container,
.single-product.summary .fields_price_container {
transition: transform 0.25s ease-in-out, box-shadow 0.25s ease-in-out !important;
transform: scale(1) !important;
}
.woocommerce ul.products li.product .field_single_line,
.single-product.summary .field_single_line {
transition: color 0.25s ease !important;
}
.woocommerce ul.products li.product:hover .field_single_line,
.woocommerce ul.products li.product:hover .field_single_line span,
.woocommerce ul.products li.product:hover .field_single_line span:last-child,
.single-product.summary .fields_price_container:hover .field_single_line,
.single-product.summary .fields_price_container:hover .field_single_line span:last-child {
font-weight: inherit !important;
color: #2c3e50 !important;
}
.woocommerce ul.products li.product:hover .fields_price_container,
.single-product.summary .fields_price_container:hover {
transform: scale(1.03) !important;
box-shadow: 0 4px 12px rgba(74, 123, 168, 0.08) !important;
}
.single-product .summary a.rsnvr-back-button {
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
color: #4a7ba8 !important;
background-color: #ffffff !important;
border: 2px solid #4a7ba8 !important;
border-radius: 6px !important;
font-size: 13px !important;
font-weight: 700 !important;
text-transform: uppercase !important;
letter-spacing: 0.5px !important;
padding: 8px 18px !important;
margin: 20px 0 0 0 !important;
text-decoration: none !important;
cursor: pointer !important;
box-shadow: 0 2px 4px rgba(74, 123, 168, 0.06) !important;
transition: all 0.2s ease !important;
}
.single-product .summary a.rsnvr-back-button:hover {
background-color: #4a7ba8 !important;
color: #ffffff !important;
box-shadow: 0 4px 8px rgba(74, 123, 168, 0.15) !important;
transform: translateY(-1px) !important;
}
.single-product .product_meta {
display: block !important;
visibility: visible !important;
height: auto !important;
padding: 0 !important;
margin: 0 0 15px 0 !important;
border: none !important;
}
.single-product .product_meta > *:not(.sku_wrapper) {
display: none !important;
}
.single-product .product_meta .sku_wrapper {
display: block !important;
font-size: 14px !important;
font-weight: 600 !important;
color: #7f8c8d !important;
margin-bottom: 5px !important;
}
/* === СКВОЗНЫЕ ЛИНИИ МЕНЮ И СЕТКИ ФИЛЬТРОВ === */
#sticky-header {
background-color: #ffffff !important;
box-shadow: none !important;
width: 100% !important;
display: block !important;
clear: both !important;
border-top: 1px solid #f1f4f8 !important;
border-bottom: 1px solid #f1f4f8 !important;
}
#sticky-header .wrap,
#sticky-header .main-header,
.main-header,
nav#site-navigation,
#primary-menu,
.main-navigation ul.nav-menu {
background: transparent !important;
box-shadow: none !important;
border: none !important;
}
#sticky-header .main-header {
max-width: 1200px !important;
margin: 0 auto !important;
padding: 0 15px !important;
display: flex !important;
justify-content: center !important;
align-items: center !important;
}
nav#site-navigation ul.nav-menu li,
#primary-menu li,
#primary-menu li::before,
#primary-menu li::after,
.main-navigation ul li::after {
border: none !important;
background: none !important;
box-shadow: none !important;
}
.term-description ul:not(.al-menu-stairs) {
display: flex !important;
flex-wrap: wrap !important;
justify-content: flex-start !important;
align-items: center !important;
text-align: left !important;
margin-left: 0 !important;
margin-right: auto !important;
width: 100% !important;
}
.term-description ul li.tab15,
.term-description ul li.tab,
.term-description ul li {
text-align: left !important;
justify-content: flex-start !important;
}
.term-description ul:not(.al-menu-stairs),
.tax-product_cat .term-description ul {
display: flex !important;
flex-wrap: wrap !important;
align-items: center !important;
list-style: none !important;
padding: 0 !important;
margin: 0 0 8px 0 !important;
background: none !important;
border: none !important;
gap: 5px !important;
}
.term-description ul:not(.al-menu-stairs) li.tab15,
.term-description ul:not(.al-menu-stairs) li:first-child {
font-size: 13px !important;
font-weight: 700 !important;
text-transform: uppercase !important;
color: #2c3e50 !important;
letter-spacing: 0.5px !important;
padding: 0 8px 0 0 !important;
margin: 0 !important;
background: none !important;
border: none !important;
box-shadow: none !important;
}
.term-description ul:not(.al-menu-stairs) li::after,
.term-description ul:not(.al-menu-stairs) li::before {
display: none !important;
content: none !important;
}
.term-description ul:not(.al-menu-stairs) li:not(.tab15) {
margin: 0 !important;
padding: 0 !important;
display: inline-flex !important;
}
.term-description ul:not(.al-menu-stairs) li:not(.tab15) a {
display: block !important;
font-size: 13px !important;
font-weight: 600 !important;
color: #4a7ba8 !important;
background-color: #ffffff !important;
border: 1px solid #e2e8f0 !important;
border-radius: 6px !important;
padding: 4px 10px !important;
text-decoration: none !important;
box-shadow: 0 1px 2px rgba(0, 0, 0, 0.02) !important;
transition: all 0.2s ease !important;
white-space: nowrap !important;
}
.term-description ul:not(.al-menu-stairs) li:not(.tab15) a:hover {
background-color: #4a7ba8 !important;
color: #ffffff !important;
border-color: #4a7ba8 !important;
box-shadow: 0 3px 6px rgba(74, 123, 168, 0.12) !important;
transform: translateY(-1px) !important;
}
.term-description ul:not(.al-menu-stairs) li.al-active a,
.term-description ul:not(.al-menu-stairs) li a.al-active {
background-color: #4a7ba8 !important;
color: #ffffff !important;
border-color: #4a7ba8 !important;
}
/* === СТИЛИЗАЦИЯ ЗАГОЛОВКОВ И КОНТАКТОВ === */
main h1, main h2,
#content h1, #content h2,
.elementor-page-title, .wd-page-title,
.page-title-inner h1, .title-wrapper h1,
.title-wrapper h2, .title-design-centered .title,
.section-title h2, .section-title h1,
.wd-title h2, .wd-title h1 {
font-size: 28px !important;
font-weight: 800 !important;
color: #4a7ba8 !important;
text-align: center !important;
margin-top: 25px !important;
margin-bottom: 10px !important;
letter-spacing: -0.5px !important;
}
.whb-main-header a[href^="tel:"],
.whb-main-header h1, .whb-main-header h2,
.whb-block a[href^="tel:"],
.wd-header-phone a, .header-phone a {
font-size: 16px !important;
font-weight: 700 !important;
color: #333333 !important;
text-align: left !important;
margin: 0 !important;
letter-spacing: normal !important;
}
.rs-section-container {
padding-top: 0 !important;
margin-top: 0 !important;
}
@media (max-width: 768px) {
main h1, main h2, #content h1, #content h2 {
font-size: 26px !important;
}
.whb-main-header a[href^="tel:"] {
font-size: 14px !important;
}
}
.my-cart {
font-size: 0 !important;
}
.my-cart::after {
content: "Итого";
font-size: 14px;
color: #4a7ba8;
font-weight: inherit;
}
@media screen and (max-width: 768px) {
.woocommerce ul.products[class="columns-"] li.product,
.woocommerce-page ul.products[class*="columns-"] li.product,
.archive.woocommerce ul.products li.product {
width: 100% !important;
max-width: 100% !important;
margin-right: 0 !important;
margin-left: 0 !important;
float: none !important;
clear: both !important;
flex: 0 0 100% !important;
}
}
/* === ОПТИМИЗИРОВАННЫЙ СЛАЙДЕР И ГАЛЕРЕЯ ТОВАРА (ФИКС КЛИКА) === */
/* Позволяем скрипту WooCommerce нормально управлять главным слайдером */
.woocommerce-product-gallery .flex-viewport {
    max-height: 420px !important;
    background-color: #ffffff !important;
    border: 1px solid #eef2f5 !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

/* Выравниваем изображение внутри слайдов без жесткого Flexbox, ломающего JS */
.woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image img {
    max-height: 420px !important;
    width: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
    margin: 0 auto !important;
    display: block !important;
}

/* Нижняя лента миниатюр — делаем её адаптивным скролл-баром */
.woocommerce-product-gallery .flex-control-thumbs {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    scroll-behavior: smooth !important;
    -webkit-overflow-scrolling: touch !important;
    gap: 8px !important;
    padding: 12px 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

/* Скрываем уродливые системные полосы прокрутки в разных браузерах */
.woocommerce-product-gallery .flex-control-thumbs::-webkit-scrollbar {
    display: none !important;
}
.woocommerce-product-gallery .flex-control-thumbs {
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
}

/* Оформление самих квадратиков миниатюр под главным фото */
.woocommerce-product-gallery .flex-control-thumbs li {
    flex: 0 0 80px !important; /* Фиксированная ширина миниатюры */
    width: 80px !important;
    height: 80px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    cursor: pointer !important;
    transition: border-color 0.2s ease, opacity 0.2s ease !important;
}

.woocommerce-product-gallery .flex-control-thumbs li:hover {
    border-color: #4a7ba8 !important;
}

/* Подсвечиваем миниатюру активного в данный момент слайда */
.woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.woocommerce-product-gallery .flex-control-thumbs li img:hover {
    opacity: 1 !important;
}

.woocommerce-product-gallery .flex-control-thumbs li img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    display: block !important;
    opacity: 0.7;
}

/* Адаптив под мобильные телефоны */
@media (max-width: 768px) {
    .woocommerce-product-gallery .flex-viewport {
        max-height: 320px !important;
    }
    .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image img {
        max-height: 320px !important;
    }
    .woocommerce-product-gallery .flex-control-thumbs li {
        flex: 0 0 65px !important;
        width: 65px !important;
        height: 65px !important;
    }
}
/* === СПОСОБЫ ОПЛАТЫ И ОФОРМЛЕНИЕ ЗАКАЗА === */
.woocommerce-checkout-payment {
background: #ffffff !important;
border: 1px solid #dce4ec !important;
border-radius: 8px !important;
padding: 20px !important;
margin-top: 20px !important;
box-shadow: 0 2px 8px rgba(74,123,168,0.06) !important;
}
.wc_payment_method {
padding: 12px 16px !important;
margin-bottom: 10px !important;
border: 1px solid #e8edf2 !important;
border-radius: 6px !important;
background: #fafbfc !important;
transition: all 0.2s ease !important;
}
.wc_payment_method:hover {
border-color: #4a7ba8 !important;
background: #f5f8fb !important;
}
.wc_payment_method input[type="radio"]:checked + label {
color: #4a7ba8 !important;
font-weight: 600 !important;
}
.payment_box {
background: #f0f6fb !important;
border-left: 3px solid #4a7ba8 !important;
border-radius: 0 6px 6px 0 !important;
padding: 14px 16px !important;
margin-top: 10px !important;
color: #2c3e50 !important;
font-size: 14px !important;
line-height: 1.6 !important;
}
.payment_box::before, .payment_box::after {
display: none !important;
}
.wc_payment_method input[type="radio"] {
accent-color: #4a7ba8 !important;
width: 16px;
height: 16px;
cursor: pointer;
}
.woocommerce-terms-and-conditions-wrapper {
background: #ffffff !important;
border: 1px solid #e8edf2 !important;
border-radius: 6px !important;
margin-top: 15px !important;
overflow: hidden !important;
}
.woocommerce-terms-and-conditions {
background: #f8fafc !important;
border: none !important;
border-bottom: 1px solid #e8edf2 !important;
padding: 15px 18px !important;
font-size: 13px !important;
color: #444 !important;
line-height: 1.6 !important;
max-height: 180px !important;
}
.woocommerce-privacy-policy-text {
font-size: 13px !important;
color: #555 !important;
margin: 12px 0 !important;
}
.woocommerce-form__label-for-checkbox {
font-size: 14px !important;
color: #333 !important;
}
.woocommerce-form__label-for-checkbox .required {
color: #4a7ba8 !important;
}
#place_order {
background-color: #4a7ba8 !important;
color: #ffffff !important;
border-radius: 6px !important;
font-size: 16px !important;
font-weight: 600 !important;
padding: 15px 32px !important;
border: none !important;
transition: all 0.2s ease !important;
width: 100% !important;
margin-top: 10px !important;
}
#place_order:hover {
background-color: #3a6a94 !important;
transform: translateY(-1px) !important;
box-shadow: 0 4px 12px rgba(74,123,168,0.25) !important;
}
ul.products li.product .price {
text-align: center !important;
width: 100% !important;
display: block !important;
}
ul.products li.product .price ins,
ul.products li.product .price del,
.product_list_widget ins,
.product_list_widget del {
float: none !important;
display: inline-block !important;
vertical-align: middle !important;
}
ul.products li.product .price del {
margin-right: 6px !important;
}
/* === АДАПТИВНАЯ СЕТКА ШАПКИ (ПК И МОБИЛЬНЫЕ) === */
@media only screen and (min-width: 981px) {
.rsnvr-grid-header .class-rsnvr-wrap {
display: grid !important;
grid-template-columns: 1fr 2fr 1fr !important;
align-items: center !important;
width: 100% !important;
max-width: 1200px !important;
margin: 0 auto !important;
box-sizing: border-box !important;
}
.custom-header-fibo {
width: 100% !important;
max-width: 500px !important;
margin: 0 auto !important;
}
.rsnvr-grid-header .class-rsnvr-wrap .rsnvr-right-wing {
display: flex !important;
flex-direction: row !important;
align-items: center !important;
justify-content: flex-end !important;
gap: 20px !important;
margin: 0 !important;
padding: 0 !important;
float: none !important;
}
}
@media only screen and (max-width: 980px) {
.rsnvr-grid-header .class-rsnvr-wrap {
display: flex !important;
flex-direction: column !important;
align-items: center !important;
justify-content: center !important;
width: 100% !important;
padding: 10px !important;
box-sizing: border-box !important;
}
.rsnvr-left-wing {
width: 100% !important;
text-align: center !important;
margin-bottom: 15px !important;
}
.custom-header-fibo {
width: 100% !important;
max-width: 100% !important;
margin: 0 0 15px 0 !important;
display: block !important;
}
.rsnvr-grid-header .class-rsnvr-wrap .rsnvr-right-wing {
display: flex !important;
flex-direction: row !important;
align-items: center !important;
justify-content: center !important;
gap: 20px !important;
width: 100% !important;
margin: 0 !important;
padding: 0 !important;
float: none !important;
}
}
.rsnvr-right-wing pre.wp-block-code code,
.rsnvr-right-wing pre {
margin: 0 !important;
padding: 0 !important;
line-height: 1 !important;
}
/* === МОБИЛЬНОЕ МЕНЮ КАТАЛОГА === */
.main-navigation ul,
.main-navigation ul li,
#site-navigation ul,
#site-navigation .menu,
.primary-menu,
.primary-menu ul {
background-color: #ffffff !important;
}
.main-navigation ul li a,
#site-navigation ul li a,
.primary-menu li a {
color: #4a7ba8 !important;
font-weight: 700 !important;
border-bottom: 1px solid #f0f3f6 !important;
padding: 12px 20px !important;
}
.main-navigation ul li a:hover,
#site-navigation ul li a:hover,
.primary-menu li a:hover {
background-color: #f7fafc !important;
color: #4a7ba8 !important;
}
.menu-toggle,
.menu-toggle:hover,
.menu-toggle:focus {
color: #ffffff !important;
}
.entry-meta, .post-meta, .byline {
display: none !important;
}
.site-detail-block,
.site-title-text,
.site-description-text {
display: none !important;
}
#site-branding .site-detail-block,
#site-branding .site-title-text,
#site-branding .site-description-text {
display: block !important;
}
/* === АКТИВНЫЕ КНОПКИ ФИЛЬТРОВ И ТЕГИ === */
li.tab.active a,
ul li.tab.active a {
background-color: #4a7ba8 !important;
color: #ffffff !important;
border-left-color: transparent !important;
border: 1px solid #4a7ba8 !important;
box-shadow: none !important;
}
li.tab.active a:hover,
ul li.tab.active a:hover {
background-color: #4a7ba8 !important;
color: #ffffff !important;
transform: none !important;
box-shadow: none !important;
}
li.tab.tab-on a,
li.tab.tab-on a:hover {
background-color: #4a7ba8 !important;
color: #ffffff !important;
border-color: #4a7ba8 !important;
border-left-color: #4a7ba8 !important;
box-shadow: none !important;
transform: none !important;
}
.tab.active a {
background-image: linear-gradient(#4a7ba8, #4a7ba8) !important;
color: #ffffff !important;
border-radius: 6px !important;
border: 1px solid #4a7ba8 !important;
border-left: 3px solid #4a7ba8 !important;
}
.term-description ul:not(.al-menu-stairs) li.tab.active a {
background-color: #4a7ba8 !important;
color: #ffffff !important;
border-color: #4a7ba8 !important;
}
.term-description ul:not(.al-menu-stairs) li.tab.active {
border: none !important;
outline: none !important;
box-shadow: none !important;
background: transparent !important;
}
.aioseo-html-sitemap-compact-date {
display: none !important;
}
/* === БЛОК ПЕРЕЛИНКОВКИ И ТЕГОВ МАГАЗИНА === */
.rs-tags-container {
background: #fdfdfd;
padding: 20px;
border: 1px solid #e2e8f0;
border-radius: 8px;
margin-top: 30px;
}
.rs-tags-group {
margin-bottom: 25px;
padding-bottom: 15px;
border-bottom: 1px dashed #cbd5e1;
}
.rs-tags-group:last-child {
border-bottom: none;
margin-bottom: 0;
padding-bottom: 0;
}
.rs-tags-title {
display: flex;
align-items: center;
gap: 15px;
margin-bottom: 12px;
}
.rs-tags-title img {
height: 45px;
width: auto;
object-fit: contain;
}
.rs-tags-title strong {
font-size: 18px;
color: #1e293b;
}
.rs-tags-list {
list-style: none !important;
padding: 0 !important;
margin: 5px 0 15px 0 !important;
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 8px;
}
.rs-tags-list .tab15 {
font-weight: bold;
color: #64748b;
font-size: 14px;
margin-right: 5px;
width: 100%;
}
@media (min-width: 768px) {
.rs-tags-list .tab15 { width: auto; }
}
.rs-tags-list .tab a {
display: inline-block;
background: #f1f5f9;
color: #334155;
padding: 4px 10px;
border-radius: 4px;
font-size: 13px;
text-decoration: none;
transition: all 0.2s ease;
border: 1px solid #e2e8f0;
}
.rs-tags-list .tab a:hover {
background: #3b82f6;
color: #ffffff;
border-color: #3b82f6;
}
/* === КАТАЛОГ И СЕО-СПОЙЛЕРЫ (DETAILS) === */
:root {
--rs-blue-main: #4a7ba8;
--rs-blue-hover: #3b648a;
--rs-bg-light: #f8fafc;
--rs-border: #e2e8f0;
--rs-dark: #2d3748;
--rs-muted: #4a5568;
}
.rs-section-container {
font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
max-width: 1200px;
margin: 0 auto;
padding: 20px 15px;
color: var(--rs-dark);
}
.cat-row-block {
background: #ffffff;
border-radius: 16px;
box-shadow: 0 4px 20px rgba(0,0,0,0.03);
padding: 30px;
margin-bottom: 35px;
border: 1px solid var(--rs-border);
}
.cat-row-header {
display: flex;
align-items: center;
gap: 15px;
margin-bottom: 25px;
border-bottom: 2px solid #edf2f7;
padding-bottom: 15px;
}
.cat-row-header img {
height: 45px;
object-fit: contain;
}
.cat-row-header h2 {
font-size: 24px;
font-weight: 700;
color: var(--rs-dark);
margin: 0;
}
.cat-label-container {
width: 100% !important;
margin-top: 20px !important;
margin-bottom: 10px !important;
display: block !important;
clear: both !important;
}
.cat-row-label {
font-size: 13px !important;
font-weight: 700 !important;
color: #a0aec0 !important;
text-transform: uppercase !important;
letter-spacing: 1px !important;
}
.cat-buttons-row-grid {
display: grid !important;
grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)) !important;
gap: 10px !important;
width: 100% !important;
padding: 0 !important;
margin: 0 0 20px 0 !important;
list-style: none !important;
}
.cat-btn-wrapper {
display: block !important;
width: 100% !important;
height: 42px !important;
}
.cat-btn-item {
display: block !important;
box-sizing: border-box !important;
width: 100% !important;
height: 42px !important;
line-height: 40px !important;
padding: 0 10px !important;
background-color: var(--rs-bg-light) !important;
border: 1px solid var(--rs-border) !important;
border-radius: 8px !important;
text-decoration: none !important;
color: var(--rs-muted) !important;
font-weight: 600 !important;
font-size: 14px !important;
text-align: center !important;
white-space: nowrap !important;
overflow: hidden !important;
text-overflow: ellipsis !important;
transition: all 0.2s ease-in-out !important;
}
.cat-btn-item:hover {
background-color: #ffffff !important;
border-color: var(--rs-blue-main) !important;
color: var(--rs-blue-main) !important;
transform: translateY(-2px) !important;
box-shadow: 0 4px 12px rgba(74, 123, 168, 0.12) !important;
}
.seo-details-block {
background: #ffffff !important;
border: 1px solid var(--rs-border) !important;
border-radius: 14px !important;
margin-bottom: 20px !important;
box-shadow: 0 4px 12px rgba(0,0,0,0.02) !important;
overflow: hidden !important;
transition: all 0.3s ease !important;
}
.seo-details-block[open] {
border-color: var(--rs-blue-main) !important;
box-shadow: 0 10px 25px rgba(74, 123, 168, 0.08) !important;
}
.seo-summary-btn {
padding: 22px 25px !important;
font-size: 18px !important;
font-weight: 700 !important;
color: var(--rs-dark) !important;
cursor: pointer !important;
list-style: none !important;
position: relative !important;
background: linear-gradient(to right, #ffffff, var(--rs-bg-light)) !important;
}
.seo-summary-btn:hover { color: var(--rs-blue-main) !important; }
.seo-summary-btn::after {
content: '➔' !important;
position: absolute !important;
right: 25px !important;
top: 50% !important;
transform: translateY(-50%) !important;
transition: transform 0.3s ease !important;
color: var(--rs-blue-main) !important;
}
.seo-details-block[open] .seo-summary-btn::after { transform: translateY(-50%) rotate(90deg) !important; }
.seo-summary-btn::-webkit-details-marker { display: none !important; }
.seo-text-layout { padding: 30px !important; color: var(--rs-muted) !important; line-height: 1.75 !important; font-size: 15px !important; border-top: 1px solid #edf2f7 !important; }
.seo-text-layout p { margin-bottom: 18px !important; }
.seo-text-layout h2 { color: var(--rs-dark) !important; font-size: 22px !important; margin: 25px 0 15px 0 !important; font-weight: 700 !important; }
.seo-text-layout ul, .seo-text-layout ol { margin-bottom: 22px !important; padding-left: 20px !important; }
.seo-text-layout li { margin-bottom: 10px !important; }
/* === СТИЛИ ДЛЯ ГЛАВНОЙ СТРАНИЦЫ САЙТА === */
.rs-home-container {
font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
max-width: 1200px;
margin: 0 auto;
padding: 0 15px;
color: var(--rs-dark);
}
.rs-hero-image-wrapper {
margin-bottom: 20px;
text-align: center;
}
.rs-hero-img {
max-width: 100%;
height: auto;
border-radius: 12px;
display: block;
}
.rs-row-grid-container {
width: 100% !important;
margin-bottom: 30px !important;
display: block !important;
clear: both !important;
}
.rs-home-row-grid {
 display: flex !important;
 flex-wrap: wrap !important;
 justify-content: center !important;
 gap: 15px !important;
 width: 100% !important;
 padding: 0 !important;
 margin: 0 0 20px 0 !important;
 list-style: none !important;
 }
.rs-home-row-grid {
list-style: none !important;
padding: 0 !important;
margin: 0 0 20px 0 !important;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
gap: 20px;
}
.rs-home-card-wrapper {
display: contents !important;
}
.rs-home-card {
display: flex !important;
flex-direction: column !important;
align-items: center !important;
justify-content: space-between !important;
box-sizing: border-box !important;
width: 100% !important;
min-height: 195px !important;
background: #ffffff !important;
border: 1px solid var(--rs-border) !important;
border-radius: 12px !important;
padding: 15px 10px !important;
text-decoration: none !important;
transition: all 0.2s ease-in-out !important;
box-shadow: 0 4px 12px rgba(0,0,0,0.02) !important;
color: inherit;
}
.rs-home-card:hover {
border-color: var(--rs-blue-main) !important;
transform: translateY(-2px) !important;
box-shadow: 0 6px 18px rgba(74, 123, 168, 0.12) !important;
}
.rs-home-card img {
height: 105px !important;
width: auto !important;
max-width: 100% !important;
object-fit: contain !important;
margin: 0 auto 10px auto !important;
display: block !important;
}
.rs-home-card strong {
display: block !important;
width: 100% !important;
font-size: 13.5px !important;
color: var(--rs-muted) !important;
font-weight: 600 !important;
line-height: 1.3 !important;
text-align: center !important;
}
.rs-home-card:hover strong {
color: var(--rs-blue-main) !important;
}
.rs-home-section {
background: #ffffff;
border-radius: 14px;
border: 1px solid var(--rs-border);
padding: 30px;
margin-top: 40px;
margin-bottom: 25px;
box-shadow: 0 4px 15px rgba(0,0,0,0.01);
}
.rs-home-section p {
line-height: 1.7 !important;
color: var(--rs-muted) !important;
margin-bottom: 15px !important;
font-size: 15px !important;
}
.rs-home-section h2 {
font-size: 24px;
margin-bottom: 20px;
border-bottom: 2px solid #eee;
padding-bottom: 10px;
}
.rs-section-margin-top {
margin-top: 25px;
}
.rs-no-bottom-margin {
margin-bottom: 0;
}
.rs-grid-features {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 25px;
margin-top: 20px;
}
.rs-feature-item {
background: var(--rs-bg-light);
padding: 20px;
border-radius: 10px;
border: 1px solid var(--rs-border);
}
.rs-feature-item h3 {
margin-top: 0 !important;
font-size: 18px !important;
font-weight: 700 !important;
color: var(--rs-dark) !important;
}
.rs-feature-item p {
line-height: 1.6;
color: #555;
}
.rs-steps-grid {
grid-template-columns: 1fr;
}
@media (min-width: 768px) {
.rs-steps-grid {
grid-template-columns: repeat(3, 1fr);
}
}
.rs-step-item {
position: relative;
padding-left: 45px;
}
.rs-step-number {
font-size: 32px;
font-weight: 800;
color: rgba(74, 123, 168, 0.2);
position: absolute;
top: 10px;
left: 0;
line-height: 1;
}
.rs-contact-hint {
margin-top: 25px;
font-weight: 600;
}
.rs-company-name {
text-align: right;
font-weight: 700;
margin-top: 20px;
margin-bottom: 0;
}
/* === ПРИНУДИТЕЛЬНАЯ МОБИЛЬНАЯ ШАПКА === */
@media screen and (max-width: 1024px) {
#site-branding-mobile.rsnvr-show-on-mobile,
div.rsnvr-show-on-mobile {
display: block !important;
}
.rsnvr-hide-on-mobile {
display: none !important;
}
}
/* === ТОЧНЫЙ ФИКС ГЛАВНОЙ СТРАНИЦЫ === */
/* 1. Жесткое центрирование заголовка "ВЫСОТНЫЕ КОНСТРУКЦИИ" на главной */
.rs-home-container h1, 
.rs-home-container h2,
#content h1,
#content h2,
h1.page-title {
    text-align: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
    float: none !important; /* Убираем возможный сдвиг темы влево */
}
/* 2. Сохраняем правильную flex-сетку для аккуратных карточек */
.rs-home-row-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    grid-template-columns: none !important;
    gap: 15px !important;
    width: 100% !important;
}

/* 3. Фиксируем родные размеры плиток категорий */
.rs-home-card-wrapper {
    display: block !important;
    flex: 0 1 calc(25% - 15px) !important;
    min-width: 175px !important;
    max-width: 220px !important;
    width: 100% !important;
}
/* === ПОЛНЫЙ ФИКС ГОРИЗОНТАЛЬНОГО МЕНЮ: УБИРАЕМ НАЕЗД И ВЫЛЕЗАНИЕ === */
/* === ПОЛНЫЙ ФИКС ЛИПКОГО МЕНЮ: СТРОГАЯ ВЫСОТА И УЗКАЯ СТРОКА === */

@media only screen and (min-width: 981px) {
    /* 1. Жестко фиксируем компактную высоту для всей строки меню */
    #sticky-header .main-header {
        display: flex !important;
        flex-direction: row !important;
        justify-content: center !important;
        align-items: center !important;
        float: none !important;
        width: 100% !important;
        height: 40px !important; /* Родная компактная высота меню */
        padding: 0 !important;
        margin: 0 auto !important;
    }

    /* 2. Настраиваем контейнер навигации внутри этой строки */
    nav#site-navigation {
        float: none !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        width: auto !important;
        height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* 3. Центрируем сам список кнопок без лишних переносов */
    #primary-menu,
    .main-navigation ul.nav-menu {
        display: flex !important;
        flex-direction: row !important;
        justify-content: center !important;
        align-items: center !important;
        margin: 0 auto !important;
        padding: 0 !important;
        height: 100% !important;
        width: auto !important;
    }

    /* 4. Задаем кнопкам меню аккуратные компактные отступы под высоту 40px */
    nav#site-navigation ul.nav-menu li a,
    #primary-menu li a,
    #menu-main li a {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
        padding: 0 15px !important;    /* Удобные боковые отступы */
        line-height: 40px !important;   /* Выравниваем текст строго по центру */
        font-size: 15px !important;     /* Родной читаемый размер шрифта */
        letter-spacing: 0px !important; /* Убираем ломающее раздувание букв */
        white-space: nowrap !important; /* Строгий запрет на перенос слов */
    }
}
/* === ФИКС ЗАДВОЕНИЯ ЗАГОЛОВКОВ В КАТАЛОГЕ === */
/* === ПОЛНЫЙ СБРОС ЗАДВОЕНИЯ ЗАГОЛОВКОВ НА СТРАНИЦАХ КАТЕГОРИЙ === */
/* Скрываем стандартный верхний заголовок темы на страницах архивов, тегов и категорий товаров */
.archive .page-header,
.archive .page-title,
.tax-product_cat .page-header,
.tax-product_cat .page-title,
.tax-product_cat h1.page-title {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}
/* === ФИКС СТРАНИЦЫ ТОВАРА: УБИРАЕМ НАЛОЖЕНИЕ НАЗВАНИЯ И ЦЕНЫ === */
/* 1. Крупный, жирный, фирменный синий заголовок */
.single-product div.product .product_title,
.single-product .summary .product_title,
h1.product_title.entry-title {
    font-size: 28px !important;
    font-weight: 800 !important;
    color: #4a7ba8 !important;
    text-align: left !important;
    margin-top: 10px !important;
    margin-bottom: 15px !important;
    letter-spacing: -0.5px !important;
    display: block !important;
    width: 100% !important;
}
/* 2. Ставим цену строго под заголовок без сдвигов влево */
.single-product p.price,
.single-product .summary p.price {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 0 25px 0 !important; /* Даем хороший отступ снизу до характеристик */
    width: 100% !important;
}
/* 3. Возвращаем форму выбора количества и кнопку "В корзину" на место под артикул */
.single-product div.product form.cart,
.single-product .summary form.cart {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    margin: 25px 0 !important; /* Отодвигаем от артикула и создаем правильные зазоры */
    clear: both !important;
    width: 100% !important;
}
/* === КОРРЕКТНОЕ ВЫРАВНИВАНИЕ СТАРОЙ И НОВОЙ ЦЕНЫ В ОДНУ СТРОКУ === */
/* Склеиваем старую (del) и новую (ins) цены в единую горизонтальную линию */
.single-product p.price,
.single-product .summary p.price {
    display: flex !important;
    flex-direction: row !important; /* Строго в один ряд */
    align-items: baseline !important; /* Выравниваем буквы и цифры по одной нижней линии */
    justify-content: flex-start !important;
    gap: 12px !important; /* Делаем аккуратный отступ между старой и новой ценой */
    margin: 15px 0 25px 0 !important;
    width: 100% !important;
}
/* Сбрасываем возможные ломающие переносы и сдвиги для зачеркнутой цены */
.single-product p.price del,
.single-product p.price del .woocommerce-Price-amount {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: baseline !important;
}
/* Сбрасываем сдвиги для новой синей цены */
.single-product p.price ins,
.single-product p.price ins .woocommerce-Price-amount {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    vertical-align: baseline !important;
}
/* Удаляю цвет верхнего гамбургера в мобВерсии */
.top-menu-toggle {
    color: initial !important;
}
/* Карта сайта цвет */
.grey-sitemap-link a {
    color: #e0e0e0 !important;
    font-size: 11px !important;
    text-decoration: none !important;
    opacity: 0.6;  
    transition: opacity 0.3s;
}
.grey-sitemap-link a:hover {
    opacity: 1;
    text-decoration: underline !important;
}
/* === ИСПРАВЛЕНИЕ МОБИЛЬНОГО ПОИСКА === */
@media screen and (max-width: 1024px) {
    /* 1. По умолчанию скрываем строку поиска на телефонах */
    #site-branding-mobile .rsnvr-mob-search-drawer {
        display: none !important;
        max-height: 0 !important;
        overflow: hidden !important;
        transition: max-height 0.25s ease-out !important;
        width: 100% !important;
        max-width: 290px !important;
        margin: 0 auto !important;
        padding: 0 10px !important;
    }

    /* 2. Показываем строку поиска только тогда, когда чекбокс лупы активен */
    #rsnvr-search-trigger-mob:checked ~ .rsnvr-mob-search-drawer {
        display: block !important;
        max-height: 50px !important;
        margin-top: 10px !important;
        margin-bottom: 5px !important;
    }
}
