﻿@font-face {
    font-family: "geologica-regular";
    font-style: normal;
    font-weight: normal;
        /* Подключался только woff с полным набором знаков - больше 900 глифов,
           включая греческий и то, чего на сайте не бывает. В папке subset
           лежат те же шрифты, урезанные до латиницы, кириллицы, знаков
           препинания и валют: вдвое легче. Оригиналы никуда не делись,
           вернуть - заменить путь обратно на /themes/default/fonts/. */
        src: url("/themes/default/fonts/subset/Geologica-Regular.woff2") format("woff2"), url("/themes/default/fonts/subset/Geologica-Regular.woff") format("woff");
        /* без этой строки браузер прячет текст, пока грузится шрифт */
        font-display: swap;
}
@font-face {
    font-family: "geologica-light";
    font-style: normal;
    font-weight: normal;
        /* Подключался только woff с полным набором знаков - больше 900 глифов,
           включая греческий и то, чего на сайте не бывает. В папке subset
           лежат те же шрифты, урезанные до латиницы, кириллицы, знаков
           препинания и валют: вдвое легче. Оригиналы никуда не делись,
           вернуть - заменить путь обратно на /themes/default/fonts/. */
        src: url("/themes/default/fonts/subset/Geologica-Light.woff2") format("woff2"), url("/themes/default/fonts/subset/Geologica-Light.woff") format("woff");
        /* без этой строки браузер прячет текст, пока грузится шрифт */
        font-display: swap;
}
@font-face {
    font-family: "geologica-medium";
    font-style: normal;
    font-weight: normal;
        /* Подключался только woff с полным набором знаков - больше 900 глифов,
           включая греческий и то, чего на сайте не бывает. В папке subset
           лежат те же шрифты, урезанные до латиницы, кириллицы, знаков
           препинания и валют: вдвое легче. Оригиналы никуда не делись,
           вернуть - заменить путь обратно на /themes/default/fonts/. */
        src: url("/themes/default/fonts/subset/Geologica-Medium.woff2") format("woff2"), url("/themes/default/fonts/subset/Geologica-Medium.woff") format("woff");
        /* без этой строки браузер прячет текст, пока грузится шрифт */
        font-display: swap;
}
@font-face {
    font-family: "geologica-bold";
    font-style: normal;
    font-weight: normal;
        /* Подключался только woff с полным набором знаков - больше 900 глифов,
           включая греческий и то, чего на сайте не бывает. В папке subset
           лежат те же шрифты, урезанные до латиницы, кириллицы, знаков
           препинания и валют: вдвое легче. Оригиналы никуда не делись,
           вернуть - заменить путь обратно на /themes/default/fonts/. */
        src: url("/themes/default/fonts/subset/Geologica-Bold.woff2") format("woff2"), url("/themes/default/fonts/subset/Geologica-Bold.woff") format("woff");
        /* без этой строки браузер прячет текст, пока грузится шрифт */
        font-display: swap;
}
@font-face {
    font-family: "open-sans-regular";
    font-style: normal;
    font-weight: normal;
        /* Подключался только woff с полным набором знаков - больше 900 глифов,
           включая греческий и то, чего на сайте не бывает. В папке subset
           лежат те же шрифты, урезанные до латиницы, кириллицы, знаков
           препинания и валют: вдвое легче. Оригиналы никуда не делись,
           вернуть - заменить путь обратно на /themes/default/fonts/. */
        src: url("/themes/default/fonts/subset/open-sans-regular.woff2") format("woff2"), url("/themes/default/fonts/subset/open-sans-regular.woff") format("woff");
        /* без этой строки браузер прячет текст, пока грузится шрифт */
        font-display: swap;
}
@font-face {
    font-family: "open-sans-bold";
    font-style: normal;
    font-weight: normal;
        /* Подключался только woff с полным набором знаков - больше 900 глифов,
           включая греческий и то, чего на сайте не бывает. В папке subset
           лежат те же шрифты, урезанные до латиницы, кириллицы, знаков
           препинания и валют: вдвое легче. Оригиналы никуда не делись,
           вернуть - заменить путь обратно на /themes/default/fonts/. */
        src: url("/themes/default/fonts/subset/open-sans-bold.woff2") format("woff2"), url("/themes/default/fonts/subset/open-sans-bold.woff") format("woff");
        /* без этой строки браузер прячет текст, пока грузится шрифт */
        font-display: swap;
}
html, body {
        width: 100%;
        height: 100%;
        padding: 0;
        margin: 0;
    font-family: "geologica-regular";
        font-size: 12px;
        color: #000000;
        background: #ffffff;
        scroll-behavior: smooth;
}
a {
        outline: none;
        -moz-outline: 0;
        border: none;
        border-width: 0px;
}
a:active {
        outline: none;
        -moz-outline: 0;
}
a:focus {
        outline: none;
        -moz-outline: 0;
}
img {
        border: none;
        border-width: 0px;
}
*html #main {
        height: 100%;
}
p {
        margin: 12px 0px ;
}
a {
        text-decoration: underline;
        color: #000;
}
a:hover {
        text-decoration: none;
}
h1 {
        color: #000;
        font-size: 25px;
        font-style: none;
        font-weight: normal;
        text-transform: uppercase;
    font-family: "geologica-regular";
}
h2, h3, h4 {
        font-size: 18px;
        margin: 15px 0;
        font-weight: normal;
    font-family: "geologica-regular";
}
h3 {
        font-size: 16px;
}
h4 {
        font-size: 14px;
}
table {
        border-collapse: collapse;
}
ul {
        list-style: none;
        margin: 0px;
        padding: 0px;
}
html {
}
body {
        height:auto;
}
body.no-scroll {
        height: 100%;
        overflow: hidden;
}
#pagewrap {
        width:100%;
        max-width: 1920px;
        padding: 0;
        margin: 0 auto;
        background: #fafafa;
}
/* мобильное меню лежит на z-index 20, поэтому всплывающая форма
   и затемнение под ней должны быть выше, иначе форма открывается
   под меню и её не видно */
#blackwrap {
        z-index: 40;
}
#show_form {
        z-index: 41;
}
header {
        width: 100%;
        padding: 0px;
        margin: 0px;
        z-index: 3;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
header.scrolled {
}
#header-top-menu {
        width: 100%;
        padding: 0px;
        margin: 0px;
        background-color: #ffffff;
        box-shadow: 4px 4px 7px 0px #52525226;
}
#header-top-menu-container {
        position: relative;
        width: 90%;
        max-width: 1600px;
        height: 50px;
        padding: 0px;
        margin: 0px auto;
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
}
#header-top-menu-close {
        display: none;
}
#header-top-menu ul {
        padding: 0px;
        margin: 0px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: wrap;
}
#header-top-menu ul li {
        padding: 0px;
        margin: 0px;
}
#header-top-menu ul li a {
        padding: 10px 0px;
        margin: 0px 48px 0px 0px;
        font-family: "geologica-regular";
        font-weight: normal;
        font-size: 16px;
        color: #525252;
        text-decoration: none;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        opacity: 1.0;
}
#header-top-menu ul li a:hover {
        color: #1c1917;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#header-top-menu-phone {
        padding: 0px 0px 0px 0px;
        margin: 0px 20px 0px auto;
}
#header-top-menu-phone a {
        display: block;
        margin: 0px;
        padding: 10px 0px 10px 30px;
        font-family: "geologica-regular";
        font-size: 20px;
        font-weight: normal;
        text-decoration: none;
        color: #1c1917;
        background: url("/themes/default/images/header-top-menu-phone-3x.png") no-repeat 0px 50%;
        background-size: 25px;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#header-top-menu-phone a:hover {
        color: #eb3f3f;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#header-top-menu-call {
        padding: 0px;
        margin: 0px;
}
#header-top-menu-call a {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 150px;
        flex-basis: 150px;
        height: 30px;
        background: linear-gradient(90deg, #1c1917 0%, #292524 100%);
        font-family: "geologica-light";
        font-size: 14px;
        font-weight: normal;
        color: #ffffff;
        text-decoration: none;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#header-top-menu-call a:hover {
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        color: #1c1917;
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
#header-main {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
#header-main-container {
        position: relative;
        width: 90%;
        max-width: 1600px;
        height: 89px;
        padding: 0px;
        margin: 0px auto;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: wrap;
}
/* сортировка внутри фильтра нужна только на мобильных */
.catalog-cat-sidebar-sorting {
        display: none;
}
/* Мобильное меню: гамбургер слева от логотипа и блок ссылок внутри
   выпадающего меню каталога. На десктопе оба не нужны. */
#header-mobile-burger {
        display: none;
}
.header-catalog-menu-extra {
        display: none;
}
/* Логотип крупнее самой шапки (250x139 при высоте строки 89px).
   Пока он лежал в потоке, его высота задавала высоту flex-строки,
   и слоган, иконки и кнопка VK уезжали вниз примерно на 17px.
   Выносим логотип из потока: рисуется он ровно там же, но на
   раскладку остальных элементов больше не влияет.
   left/top отсчитываются от #header-main-container (у него
   position: relative), -30px по горизонтали ставят видимую часть
   логотипа вровень с левым краем контента. */
#header-main-logo {
        display: block;
        position: absolute;
        left: -30px;
        top: -15px;
        width: 250px;
        flex-basis: auto;
        padding: 0px;
        margin: 0px;
        text-decoration: none;
        opacity: 1.0;
        transition: opacity 500ms ease-out;
        -webkit-transition: opacity 500ms ease-out;
        -moz-transition: opacity 500ms ease-out;
        -ms-transition: opacity 500ms ease-out;
        -o-transition: opacity 500ms ease-out;
}
#header-main-logo:hover {
        opacity: 0.7;
        transition: all 500ms ease-out;
        -webkit-transition: all 500ms ease-out;
        -moz-transition: all 500ms ease-out;
        -ms-transition: all 500ms ease-out;
        -o-transition: all 500ms ease-out;
}
#header-main-logo img {
        display: block;
        height: auto;
        width: 100%;
        margin: 0px;
        padding: 0px;
}
/* 262px = 197px (место, которое занимал логотип в потоке: 162 + 35
   отступ) + прежние 65px до слогана. Логотип теперь абсолютный,
   поэтому место под него держит отступ слогана. */
#header-main-slogan {
        padding: 0%;
        margin: 0% 0px 0px 262px;
        max-width: 330px;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 18px;
        color: #000;
        transition: all 500ms ease-out;
        -webkit-transition: all 500ms ease-out;
        -moz-transition: all 500ms ease-out;
        -ms-transition: all 500ms ease-out;
        -o-transition: all 500ms ease-out;
}
#header-main-slogan.active {
        color: #1c1917;
        transition: all 500ms ease-out;
        -webkit-transition: all 500ms ease-out;
        -moz-transition: all 500ms ease-out;
        -ms-transition: all 500ms ease-out;
        -o-transition: all 500ms ease-out;
}
#header-main-panel {
        padding: 0px;
        margin: 0px 0px 0px auto;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: nowrap;
}
.header-user {
        position: relative;
        width: 33px;
        flex-basis: 33px;
        height: 33px;
        display: block;
        background: url("/themes/default/images/header-user-3x.png") no-repeat 50% 50%;
        background-size: 33px;
        padding: 0px;
        margin: 0px 15px;
}
.header-user:hover {
        background: url("/themes/default/images/header-user-hover-3x.png?1") no-repeat 50% 50%;
        background-size: 33px;
}
/* меню пользователя в шапке: ссылки прячутся под иконку и
   выпадают при наведении (раньше «Войти» висело текстом рядом) */
.header-user-menu {
        position: relative;
        padding: 0px;
        margin: 0px;
}
.header-user-drop {
        display: none;
        position: absolute;
        top: 100%;
        right: 0px;
        padding: 14px 0px 0px 0px;
        margin: 0px;
        z-index: 5;
}
.header-user-menu:hover .header-user-drop {
        display: block;
}
.header-user-drop-inner {
        min-width: 190px;
        padding: 12px 0px;
        margin: 0px;
        background: #1c1917;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        box-shadow: 0px 4px 8px 0px rgba(34, 60, 80, 0.3);
}
.header-user-drop-links {
        padding: 0px;
        margin: 0px;
}
.header-user-drop-links a {
        display: block;
        padding: 8px 20px;
        margin: 0px;
        font-family: "geologica-regular";
        font-weight: normal;
        font-size: 15px;
        line-height: 21px;
        color: #ffffff;
        text-decoration: none;
        white-space: nowrap;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.header-user-drop-links a:hover {
        color: #eb3f3f;
}
.header-user-drop-links a.logout {
        margin: 6px 0px 0px 0px;
        padding-top: 12px;
        border-top: 1px solid #292524;
        color: #cfc7b8;
}
.header-user-drop-links a.logout:hover {
        color: #eb3f3f;
}
.header-wish {
}
.header-wish  a{
        position: relative;
        width: 33px;
        flex-basis: 33px;
        height: 33px;
        display: block;
        background: url("/themes/default/images/header-wish-3x.png") no-repeat 50% 50%;
        background-size: 33px;
        padding: 0px;
        margin: 0px 15px;
}
/* ховер висел на обёртке .header-wish, а картинку рисует вложенная
   ссылка — её собственный фон перекрывал подмену, и сердечко при
   наведении не менялось вообще. Вешаем на саму ссылку. */
.header-wish a:hover {
        background: url("/themes/default/images/header-wish-hover-3x.png?1") no-repeat 50% 50%;
        background-size: 33px;
}
.header-wish span{
        position: absolute;
        top: -10px;
        right: -10px;
        color: #ffffff;
        background: #1c1917;
        font-family: "geologica";
        font-weight: normal;
        font-size: 11px;
        text-align: center;
        padding: 1px 3px;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        min-width: 8px;
}
.header-basket {
        position: relative;
        width: 33px;
        flex-basis: 33px;
        height: 33px;
        display: block;
        background: url("/themes/default/images/header-basket-3x.png") no-repeat 50% 50%;
        background-size: 33px;
        padding: 0px;
        margin: 0px 15px;
}
.header-basket:hover {
        background: url("/themes/default/images/header-basket-hover-3x.png?1") no-repeat 50% 50%;
        background-size: 33px;
}
#header-main-vk {
        padding: 0px;
        margin: 0px 0px 0px 80px;
}
#header-main-vk a {
        width: 100px;
        flex-basis: 100px;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        background: linear-gradient(90deg, #1c1917 0%, #292524 100%);
        font-family: "geologica-medium";
        font-size: 14px;
        line-height: normal;
        color: #ffffff;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        text-decoration: none;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#header-main-vk a:hover {
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        color: #1c1917;
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
.header-basket .basket_header_items {
        position: absolute;
        top: -10px;
        right: -10px;
        color: #ffffff;
        background: #1c1917;
        font-family: "geologica";
        font-weight: normal;
        font-size: 11px;
        text-align: center;
        padding: 1px 3px;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        min-width: 8px;
}
#header-catalog-menu {
        width: 100%;
        padding: 0px;
        margin: 0px;
        height: 61px;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
}
#header-catalog-menu-fon {
        width: 100%;
        padding: 0px;
        margin: 0px;
        background: url("/themes/default/images/header-catalog-menu-fon-3x.png?1") repeat-x 0px 100%;
        background-size: 29px;
}
#header-catalog-menu-container {
        position: relative;
        width: 90%;
        max-width: 1600px;
        height: 61px;
        padding: 0px;
        margin: 0px auto;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: wrap;
}
#header-catalog-menu-nav {
        width: 68%;
        padding: 0px;
        margin: 0px;
        z-index: 3;
}
#header-catalog-menu-ul {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
}
#header-catalog-menu-ul li {
        position: relative;
        padding: 0px;
        margin: 0px;
        display: block;
        z-index: 2;
}
#header-catalog-menu-ul li a {
        display: block;
        padding: 20px 0px;
        margin: 0%;
        font-family: "geologica-medium";
        font-weight: normal;
        font-size: 20px;
        line-height: 20px;
        color: #1c1917;
        text-decoration: none;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#header-catalog-menu-ul li a:hover {
        opacity: 0.7;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#header-catalog-menu-ul li ul {
        position: absolute;
        top: 58px;
        left: 0px;
        margin: 0px;
        padding: 20px 0px 20px 0px;
        display: block;
        background: #1c1917 url("/themes/default/images/header-catalog-menu-ul-3x.png") repeat-x 0px 0%;
        background-size: 29px;
        display: none;
        width: 240px;
        flex-basis: 240px;
        border-radius: 0px 0px 10px 10px;
        -webkit-border-radius: 0px 0px 10px 10px;
        -moz-border-radius: 0px 0px 10px 10px;
        -ms-border-radius: 0px 0px 10px 10px;
        -o-border-radius: 0px 0px 10px 10px;
        z-index: 3;
        box-shadow: 0px 4px 8px 0px rgba(34, 60, 80, 0.3);
}
#header-catalog-menu-ul li ul li {
}
#header-catalog-menu-ul li ul li a {
        margin: 0px;
        padding: 5px 20px;
        font-size: 16px;
        font-family: "geologica-regular";
        color: #ffffff;
}
#header-catalog-menu-ul li ul li ul {
        display: none;
}
#header-catalog-menu-ul li:hover ul {
        display: block;
}
#header-catalog-menu-close {
        display: none;
}
.header-catalog-menu-search {
        width: 28%;
        flex-basis: 28%;
        padding: 0px;
        margin: 0px 0px 0px auto;
        height: 31px;
        background-color: #ffffff;
        border: 1px solid #909090;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        box-shadow: 2px 1px 3px -2px #00000026;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.header-catalog-menu-search:hover {
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#header_catalog_menu_search_form {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        height: 100%;
}
.header-catalog-menu-search-input {
        width: 60%;
        flex-basis: 60%;
        padding: 5px 0px;
        margin: 0px 5%;
        font-family: "geologica-light";
        font-weight: normal;
        font-size: 16px;
        color: #3A362B;
        border:none;
}
.header-catalog-menu-search-input:active,
.header-catalog-menu-search-input:hover,
.header-catalog-menu-search-input:focus {
        outline: 0;
        outline-offset: 0;
}
.header-catalog-menu-search-input::placeholder {
        font-family: "geologica-light";
        font-weight: normal;
        font-size: 16px;
        color: #757575;
}
.header-catalog-menu-search-ok {
        position: relative;
        top: 0px;
        right: auto;
        width: 40px;
        flex-basis: 40px;
        height: 31px;
        background: #fdecec url("/themes/default/images/header-catalog-menu-search-ok-3x.png") no-repeat 50% 50%;
        background-size: 31px;
        border-radius: 0px 10px 10px 0px;
        -webkit-border-radius: 0px 10px 10px 0px;
        -moz-border-radius: 0px 10px 10px 0px;
        -ms-border-radius: 0px 10px 10px 0px;
        -o-border-radius: 0px 10px 10px 0px;
}
.header-catalog-menu-search-ok:hover {
        background: #D9D9D9 url("/themes/default/images/header-catalog-menu-search-ok-3x.png") no-repeat 50% 50%;
        background-size: 31px;
}
#swiper-on-main,
#swiper-on-main-mobile {
        display: block;
        position: relative;
        width: 90%;
        max-width: 1600px;
        padding: 0px;
        margin: 20px auto 0px auto;
}
.mainSwiper,
.mainSwiper-mobile {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
.mainSwiper .swiper-wrapper,
.mainSwiper-mobile .swiper-wrapper {
}
.mainSwiper .swiper-slide,
.mainSwiper-mobile .swiper-slide {
}
.main-swiper-block {
        width: 100%;
        position: relative;
        height: 100%;
        padding: 0px;
        margin: 0px;
}
/* обёртка <picture> вокруг баннера не должна участвовать
   в раскладке - размеры по-прежнему задаёт сама картинка */
.main-swiper-block picture {
        display: contents;
}
.main-swiper-img {
        display: block;
        width: 100%;
        height: auto;
        padding: 0px;
        margin: 0px;
}
.main-swiper-block-info {
        position: absolute;
        top: 0px;
        left: 0px;
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-wrap: wrap;
}
.main-swiper-block-text {
        padding: 0px;
        margin: 0px;
}
.main-swiper-block-text-logo {
        width: 160px;
        height: 80px;
        padding: 0px;
        margin: 0px auto;
}
.main-swiper-block-text-logo img {
        display: block;
        padding: 0px;
        margin: 0px;
        height: auto;
        width: 100%;
}
.main-swiper-block-text-title {
        margin: 18px auto 22px auto;
        padding: 0px 20px 0px 20px;
        text-align: center;
        background: #2A271690;
        border-radius: 15px;
        -webkit-border-radius: 15px;
        -moz-border-radius: 15px;
        -ms-border-radius: 15px;
        -o-border-radius: 15px;
}
.main-swiper-block-text-title h2,
.main-swiper-block-text-title .main-swiper-title {
        padding: 0px;
        margin: 0px;
        font-family: "geologica-bold";
        /* Размер тянется за шириной экрана, чтобы заголовок всегда оставался
           в одну строку: 53.5px - прежний размер на больших экранах, 4.3vw -
           плавное уменьшение, 14px - нижняя граница для узких телефонов.
           Раньше размер переключался ступеньками в style-mobile.css (30px
           на 1100 и 18px на 500) - обе строки убраны оттуда, иначе они
           перекрывали бы эту. */
        font-size: clamp(14px, 4.3vw, 53.5px);
        font-weight: normal;
        text-transform: uppercase;
        color: #ffffff;
        text-shadow: 3.07px 1.53px 6.13px #000000F5;
}
.main-swiper-block-text-title h2 a,
.main-swiper-block-text-title .main-swiper-title a {
        color: #fdecec;
        text-decoration: none;
}
.main-swiper-block-text-more {
        max-width: 400px;
        width: 90%;
        padding: 4px 1px 5px 1px;
        margin: 0px auto 40px auto;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        background: linear-gradient(90deg, #eb3f3f 0%, #eb3f3f 100%);
}
.main-swiper-block-text-more h3,
.main-swiper-block-text-more .main-swiper-more {
        padding: 0px;
        margin: 0px;
        font-family: "geologica-bold";
        font-weight: normal;
        font-size: 20.5px;
        color: #160000;
        text-shadow: 1.19px 0.59px 2.38px #16000055;
        text-transform: uppercase;
        text-align: center;
}
.main-swiper-block-text-more h3 a,
.main-swiper-block-text-more .main-swiper-more a {
        color: #160000;
        text-decoration: none;
}
#swiper-on-main .swiper-pagination-bullet-active,
#swiper-on-main-mobile .swiper-pagination-bullet-active,
#oneImgSwiper-container .swiper-pagination-bullet-active {
        background: #1c1917;
}
#swiper-on-main .swiper-pagination,
#swiper-on-main-mobile .swiper-pagination-mobile {
        z-index: 3;
}
/* Текст главной страницы из админки (маркер %maintext%): выводится
   в той же обёртке, что и внутренние страницы, поэтому оформление
   берётся из правил .static ниже. Поле пустое - блока на странице нет. */
.static_main:empty {
        display: none;
}

#cats-on-main {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
#cats-on-main-container {
        /* ширина как у баннера, чтобы края совпадали */
        width: 90%;
        max-width: 1600px;
        padding: 0px;
        margin: 0px auto;
}
/* только заголовок блока, но не подписи плиток внутри него */
#cats-on-main-container > h2 {
        padding: 15px 0px 35px 0px;
        margin: 0px 0px 0px 0%;
        font-family: "geologica-regular";
        font-size: 32px;
        font-weight: normal;
        color: #1c1917;
        text-align: center;
}
/* ============================================================
   Одна сетка на все списки карточек: категории и хиты на главной,
   список категорий в каталоге, товары внутри категории.
   repeat(auto-fill, minmax(230px, 1fr)) вместо фиксированного числа
   колонок — контейнеры разной ширины (в категории слева ещё меню),
   и число карточек в ряду подбирается само. Карточки тянутся на 1fr,
   поэтому ряд всегда ровный, а не с дырой справа.
   ============================================================ */
#cats-on-main-list,
#hits-on-main-list,
.catalog-all-cats-list,
#catalog-cat-list {
        width: 100%;
        padding: 0px;
        margin: 0px;
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
        align-items: start;
        gap: 16px;
}
/* в сетке ширину задаёт колонка, собственная ширина карточки мешает */
#cats-on-main-list .cats-on-main-item,
#hits-on-main-list .catalog-list-one,
.catalog-all-cats-list .cats-on-main-item,
#catalog-cat-list .catalog-list-one {
        width: auto;
        flex-basis: auto;
        margin: 0px;
}
.cats-on-main-item {
        width: 298px;
        flex-basis: 298px;
        /* геометрия как у карточек хитов: тот же размер, тот же отступ снизу */
        padding: 0px 0px 10px 0px;
        margin: 0px 0px 18px 0px;
        background-color: #ffffff;
        border-radius: 15px;
        -webkit-border-radius: 15px;
        -moz-border-radius: 15px;
        -ms-border-radius: 15px;
        -o-border-radius: 15px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.cats-on-main-item:hover {
        box-shadow: 0px 0px 8px 4px rgba(34, 60, 80, 0.18);
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.cats-on-main-item-img {
        display: block;
        overflow: hidden;
        /* отступы и радиус как у фото в карточке хита, вместо жирной
           золотой подложки — тонкая обводка того же цвета */
        width: 86.5%;
        padding: 0px;
        margin: 20px auto 17px auto;
        background: none;
        border: 1px solid #eb3f3f;
        border-radius: 16px;
        -webkit-border-radius: 16px;
        -moz-border-radius: 16px;
        -ms-border-radius: 16px;
        -o-border-radius: 16px;
        box-sizing: border-box;
}
.cats-on-main-item-img img {
        display: block;
        width: 100%;
        height: auto;
        padding: 0px;
        margin: 0px;
        border-radius: 15px;
        -webkit-border-radius: 15px;
        -moz-border-radius: 15px;
        -ms-border-radius: 15px;
        -o-border-radius: 15px;
}
.cats-on-main-item h4,
.cats-on-main-item h3,
.cats-on-main-item h2 {
        padding: 0px 5% 8px 5%;
        width: 90%;
        margin: 0px 0px;
        text-align: center;
        font-family: "geologica-regular";
        font-size: 20px;
        font-weight: normal;
        color: #525252;
}
/* плитки-вкладки в блоке «Категории»: у них нет фотографии,
   поэтому вместо неё — золотое поле со значком, размер тот же */
.cats-on-main-item-extra {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-direction: column;
        text-decoration: none;
        box-sizing: border-box;
}
.cats-on-main-item-extra-icon {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 86.5%;
        /* ровно пропорции реальных фото категорий (462×418) */
        aspect-ratio: 462 / 418;
        margin: 20px auto 17px auto;
        background: linear-gradient(135deg, #fdecec 0%, #eb3f3f 100%);
        border: 1px solid #eb3f3f;
        border-radius: 16px;
        -webkit-border-radius: 16px;
        -moz-border-radius: 16px;
        -ms-border-radius: 16px;
        -o-border-radius: 16px;
        box-sizing: border-box;
        overflow: hidden;
}
.cats-on-main-item-extra-icon svg {
        width: 62%;
        height: 62%;
        display: block;
        overflow: visible;
}
.cats-on-main-item-extra h4,
.cats-on-main-item-extra h3,
.cats-on-main-item-extra h2 {
        color: #1c1917;
}
/* анимация иконок: у всех элементов точка отсчёта — их собственный центр,
   иначе SVG вращает относительно начала координат холста */
.cats-on-main-item-extra-icon svg * {
        transform-box: fill-box;
        transform-origin: center;
}
.cx-spark-main {
        animation: cx-spin 9s linear infinite;
}
.cx-spark-a {
        animation: cx-twinkle 2.4s ease-in-out infinite;
}
.cx-spark-b {
        animation: cx-twinkle 2.4s ease-in-out 1.2s infinite;
}
/* «Хиты продаж»: столбики (.cx-bar) намеренно оставлены статичными —
   двигается только звезда, иначе в иконке слишком много движения */
.cx-star {
        animation: cx-pulse 2.8s ease-in-out infinite;
}
.cx-tag {
        animation: cx-swing 3.2s ease-in-out infinite;
}
.cx-bow {
        animation: cx-bow-breathe 4s ease-in-out infinite;
}
@keyframes cx-spin {
        from { transform: rotate(0deg); }
        to { transform: rotate(360deg); }
}
@keyframes cx-twinkle {
        0%, 100% { opacity: 0.25; transform: scale(0.6); }
        50% { opacity: 1; transform: scale(1); }
}
@keyframes cx-pulse {
        0%, 100% { transform: scale(0.86) rotate(-7deg); }
        50% { transform: scale(1.06) rotate(7deg); }
}
@keyframes cx-swing {
        0%, 100% { transform: rotate(-5deg); }
        50% { transform: rotate(5deg); }
}
@keyframes cx-bow-breathe {
        0%, 100% { opacity: 0.55; }
        50% { opacity: 1; }
}
/* если в системе отключены анимации — оставляем иконки статичными */
@media (prefers-reduced-motion: reduce) {
        .cats-on-main-item-extra-icon svg * {
                animation: none;
        }
}

#cats-on-main-more {
        width: 100%;
        padding: 0px;
        margin: 25px 0px 0px 0px;
}
#cats-on-main-more a {
        width: 300px;
        height: 50px;
        padding: 0px;
        margin: 0px auto;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: "geologica-light";
        font-size: 20px;
        font-weight: normal;
        text-decoration: none;
        color: #1c1917;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
}
#cats-on-main-more a:hover {
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        background: linear-gradient(90deg, #eb3f3f 0%, #c93030 100%);
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
#hits-on-main {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
#hits-on-main-container {
        /* ширина как у баннера, чтобы края совпадали */
        width: 90%;
        max-width: 1600px;
        padding: 0px;
        margin: 0px auto;
}
#hits-on-main h3,
#hits-on-main-container > h2 {
        padding: 30px 0px 28px 0px;
        margin: 0px 0px 0px 0%;
        font-family: "geologica-regular";
        font-size: 32px;
        font-weight: normal;
        color: #1c1917;
        text-align: center;
}
.catalog-list-one {
        overflow: hidden;
        width: 298px;
        flex-basis: 298px;
        padding: 0px 0px 25px 0px;
        margin: 0px 0px 18px 0px;
        background-color: #ffffff;
        border-radius: 15px;
        -webkit-border-radius: 15px;
        -moz-border-radius: 15px;
        -ms-border-radius: 15px;
        -o-border-radius: 15px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-list-one:hover {
        /* была серо-синяя из прежней темы — теперь такая же, как у категорий */
        box-shadow: 0px 0px 8px 4px rgba(34, 60, 80, 0.18);
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-list-one-img {
        position: relative;
        overflow: hidden;
        /* обводка фото — как в блоке «Категории», чтобы карточки были одинаковыми */
        border: 1px solid #eb3f3f;
        box-sizing: border-box;
        width: 86.5%;
        flex-basis: 86.5%;
        padding: 0px 0px 0px 0px;
        margin: 20px auto 17px auto;
        border-radius: 16px;
        -webkit-border-radius: 16px;
        -moz-border-radius: 16px;
        -ms-border-radius: 16px;
        -o-border-radius: 16px;
}
.catalog-list-one-img-a {
        width: 100%;
        height: auto;
        padding: 0px;
        margin: 0px;
        text-decoration: none;
}
.catalog-list-one-img-a img {
        display: block;
        padding: 0px;
        margin: 0px;
        height: auto;
        width: 100%;
}
.catalog-list-one-wish {
        position: absolute;
        top: 8px;
        right: 9px;
        width: 30px;
        flex-basis: 30px;
        height: 30px;
        background: url("/themes/default/images/catalog-list-one-wish-3x.png") no-repeat 50% 50%;
        background-size: 30px;
}
.catalog-list-one-wish:hover {
        background: url("/themes/default/images/catalog-list-one-wish-hover-3x.png") no-repeat 50% 50%;
        background-size: 30px;
}
.catalog-list-one-wish.active {
        background: url("/themes/default/images/catalog-list-one-wish-active-3x.png") no-repeat 50% 50%;
        background-size: 30px;
}
.catalog-list-one-hit {
        position: absolute;
        bottom: 33px;
        left: 10px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        margin: 0px;
        padding: 0px 5px;
        width: 41px;
        height: 21px;
        font-family: "geologica-medium";
        font-weight: normal;
        font-size: 14px;
        text-align: left;
        color: #ffffff;
        text-transform: uppercase;
        background-color: #1c1917;
        border-radius: 18px;
        -webkit-border-radius: 18px;
        -moz-border-radius: 18px;
        -ms-border-radius: 18px;
        -o-border-radius: 18px;
}
.catalog-list-one-new {
        position: absolute;
        bottom: 7px;
        left: 10px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        margin: 0px;
        padding: 0px 5px;
        width: 77px;
        height: 21px;
        font-family: "geologica-medium";
        font-weight: normal;
        font-size: 14px;
        text-align: left;
        color: #1c1917;
        text-transform: uppercase;
        background-color: #eb3f3f;
        border-radius: 18px;
        -webkit-border-radius: 18px;
        -moz-border-radius: 18px;
        -ms-border-radius: 18px;
        -o-border-radius: 18px;
}
.catalog-list-one-articul {
        overflow: hidden;
        height: 20px;
        width: 86.5%;
        flex-basis: 86.5%;
        padding: 0px 0px 0px 0px;
        margin: 0px auto;
        color: #BCBCBC;
        font-family: "geologica-light";
        font-size: 14px;
        line-height: normal;
        font-weight: normal;
}
.catalog-list-one-articul span {
        color: #333333;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: normal;
        font-weight: normal;
}
.catalog-list-one-title {
        overflow: hidden;
        /* место всегда под две строки: иначе карточка с коротким названием
           подтягивает цену и кнопку вверх, и ряд карточек скачет */
        display: -webkit-box;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        height: 36px;
        min-height: 36px;
        max-height: 36px;
        width: 86.5%;
        flex-basis: 86.5%;
        padding: 0px 0px 0px 0px;
        margin: 0px auto;
        color: #333333;
        font-family: "geologica-light";
        font-size: 14px;
        line-height: 18px;
        font-weight: normal;
}
.catalog-list-one-color {
        overflow: hidden;
        height: 20px;
        width: 86.5%;
        flex-basis: 86.5%;
        padding: 0px 0px 0px 0px;
        margin: 0px auto;
        color: #333333;
        font-family: "geologica-light";
        font-size: 14px;
        line-height: normal;
        font-weight: normal;
}
.catalog-list-one-price {
        width: 90%;
        flex-basis: 90%;
        padding: 12px 0px 8px 0px;
        margin: 0px auto;
        font-family: "geologica-medium";
        font-size: 18px;
        color: #333333;
}
.catalog-list-one-price-init {
        padding: 0px;
        margin: 0px 0px 0px 7px;
        font-family: "geologica-light";
        font-size: 14px;
        color: #BCBCBC;
}
.catalog-list-one-add {
        width: 90%;
        flex-basis: 90%;
        overflow: hidden;
        height: 30px;
        padding: 0px;
        margin: 0px auto;
}
.catalog-list-one-add-button {
        width: 100%;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: "geologica-light";
        font-size: 16px;
        line-height: 21px;
        padding: 0px;
        margin: 0px auto 0px auto;
        color: #ffffff;
        background: linear-gradient(90deg, #1c1917 0%, #292524 100%);
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-list-one-add-button:hover {
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        color: #1c1917;
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
.catalog-list-one-add-panel {
        display: none;
}
.catalog-list-one-add.active .catalog-list-one-add-panel {
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        width: 100%;
        height: 30px;
        overflow: hidden;
        padding: 0px;
        margin: 0px auto;
}
.catalog-list-one-add.active .catalog-list-one-add-button {
        display: none;
}
.catalog-list-one-add-button-ok {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 48%;
        height: 100%;
        padding: 0px;
        margin: 0px;
        background: #1c1917;
        font-family: "geologica-light";
        font-size: 16px;
        line-height: 20px;
        color: #ffffff;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        text-decoration: none;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-list-one-add-button-ok:hover {
        background: #eb3f3f;
        color: #1c1917;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-list-one-add-panel-amount {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 48%;
        height: 100%;
        padding: 0px;
        margin: 0px;
        background: #fdecec;
        font-family: "geologica-light";
        font-size: 16px;
        line-height: 20px;
        color: #1c1917;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        text-decoration: none;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-list-one-add-panel-amount:hover {
        background: #fdecec;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-list-one-add-panel-amount-minus {
        padding: 0px;
        margin: 0px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        flex-basis: 30px;
        height: 30px;
        font-size: 21px;
        font-weight: normal;
        color: #1c1917;
        cursor: pointer;
}
.catalog-list-one-add-panel-amount-value {
        width: 45%;
        flex-basis: 45%;
        padding: 0px;
        margin: 0px;
        font-size: 18px;
        font-weight: normal;
        color: #1c1917;
        border: none;
        background: none;
        text-align: center;
}
.catalog-list-one-add-panel-amount-plus {
        padding: 0px;
        margin: 0px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 30px;
        flex-basis: 30px;
        height: 30px;
        font-size: 21px;
        font-weight: normal;
        color: #1c1917;
        cursor: pointer;
}
.catalog-list-one-add-panel-amount-value:active,
.catalog-list-one-add-panel-amount-value:hover,
.catalog-list-one-add-panel-amount-value:focus {
        outline: 0;
        outline-offset: 0;
}
#hits-on-main-more {
        width: 100%;
        padding: 50px 0px 35px 0px;
        margin: 0px auto;
}
#hits-on-main-more a {
        width: 300px;
        height: 50px;
        padding: 0px;
        margin: 0px auto;
        display: flex;
        align-items: center;
        justify-content: center;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        color: #1c1917;
        font-family: "geologica-light";
        font-size: 20px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        text-decoration: none;
}
#hits-on-main-more a:hover {
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        background: linear-gradient(90deg, #eb3f3f 0%, #c93030 100%);
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
#advantages-on-main {
        width: 100%;
        padding: 0px;
        margin: 0px 0px 135px 0px;
}
#advantages-on-main-container {
        width: 94%;
        padding: 0px;
        margin: 0px auto;
}
#advantages-on-main h3,
#advantages-on-main h2 {
        padding: 35px 0px 48px 0px;
        margin: 0px 0px 0px 0%;
        font-family: "geologica-regular";
        font-size: 32px;
        font-weight: normal;
        color: #1c1917;
        text-align: center;
}
#advantages-on-main-list {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
#advantages-on-main-list ul {
        width: 100%;
        padding: 0px;
        margin: 0px;
        display: flex;
        align-items: flex-start;
        justify-content: space-around;
        flex-wrap: wrap;
}
#advantages-on-main-list ul li {
        width: 220px;
        flex-basis: 220px;
        padding: 0px;
        margin: 0px;
        cursor: pointer;
}
#advantages-on-main-list ul li img {
        overflow: hidden;
        width: 118px;
        height: auto;
        display: block;
        flex-basis: 118px;
        flex-basis: 118px;
        padding: 0px;
        margin: 0px auto;
        border-radius: 24px;
        -webkit-border-radius: 24px;
        -moz-border-radius: 24px;
        -ms-border-radius: 24px;
        -o-border-radius: 24px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#advantages-on-main-list ul li:hover img {
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
#advantages-on-main-list ul li span {
        display: block;
        width: 90%;
        padding: 0px 5%;
        margin: 15px auto;
        text-align: center;
        font-family: "geologica-light";
        font-size: 16px;
        font-weight: normal;
        color: #525252;
        text-align: center;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#advantages-on-main-list ul li:hover span {
        color: #000000;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
footer {
        width: 100%;
        padding: 0px;
        margin: 0px auto;
        background-color: #1c1917;
        border-top: 2px solid #eb3f3f;
}
#footer-main {
        width: 94%;
        padding: 0px;
        margin: 0px auto;
}
#footer-main-container {
        width: 100%;
        min-height: 310px;
        padding: 0px;
        margin: 0%;
        display: flex;
        align-items: flex-start;
        justify-content: space-around;
        flex-wrap: wrap;
}
.footer-main-block h3,
.footer-main-block .footer-block-title {
        margin: 0px;
        padding: 36px 0px 10px 0px;
        font-family: "open-sans-bold";
        font-weight: normal;
        font-size: 15px;
        line-height: 18px;
        color: #eb3f3f;
        text-decoration: none;
}
.footer-main-block-1 ul,
.footer-main-block-2 ul,
.footer-main-block-3 ul {
        padding: 0px;
        margin: 0px;
}
.footer-main-block-1 ul li,
.footer-main-block-3 ul li,
.footer-main-block-2 ul li {
        padding: 0px;
        margin: 0px;
}
.footer-main-block-1 ul li a,
.footer-main-block-2 ul li a,
.footer-main-block-3 ul li a {
        display: block;
        padding: 5px 0px 5.5px 0px;
        margin: 0px;
        font-family: "open-sans-regular";
        font-weight: normal;
        font-size: 14px;
        line-height: 18px;
        color: #cfc7b8;
        text-decoration: none;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.footer-main-block-1 ul li a:hover,
.footer-main-block-2 ul li a:hover,
.footer-main-block-3 ul li a:hover {
        color: #eb3f3f;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.footer-main-block-1 {
        width: 200px;
        flex-basis: 200px;
        padding: 0px;
        margin: 0px 0px 0px 3%;
}
.footer-main-block-2 {
        width: 200px;
        flex-basis: 200px;
}
.footer-main-block-3 {
        width: 200px;
        flex-basis: 200px;
}
.footer-main-block-4 {
        width: 270px;
        flex-basis: 270px;
        padding: 0px;
        margin: 0px 2.5% 0px 0px;
}
.footer-main-block-5 {
        width: 225px;
        flex-basis: 225px;
        padding: 0px;
        margin: 0px 2% 0px 0px;
}
.footer-main-block-5 h3,
.footer-main-block-5 h4,
.footer-main-block-5 .footer-block-title {
        margin: 0px;
        padding: 36px 0px 10px 0px;
        font-family: "open-sans-bold";
        font-weight: normal;
        font-size: 15px;
        line-height: 18px;
        color: #eb3f3f;
        text-decoration: none;
}
#footer-main-mailing {
        width: 100%;
        flex-basis: 100%;
        padding: 0px;
        margin: 7px 0px 0px 0px;
        border-radius: 10px 0px 0px 10px;
        -webkit-border-radius: 10px 0px 0px 10px;
        -moz-border-radius: 10px 0px 0px 10px;
        -ms-border-radius: 10px 0px 0px 10px;
        -o-border-radius: 10px 0px 0px 10px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#footer-main-mailing:hover {
        -webkit-box-shadow: 0px 0px 10px 2px rgba(34, 60, 80, 0.18);
        -moz-box-shadow: 0px 0px 10px 2px rgba(34, 60, 80, 0.18);
        box-shadow: 0px 0px 10px 2px rgba(34, 60, 80, 0.18);
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#footer-main-mailing form{
        color:#fff;
        font-size:11px;
}
#footer-main-mailing .show_form_all_fields {
        position: relative;
        overflow: hidden;
        border-radius: 8px;
}


#footer-main-mailing .form_accept_area a{
        color:#fff;
}

#footer-main-mailing form input.form_field_one {
        width: 100%;
        flex-basis: 100%;
        height: 40px;
        /* слева воздух, справа место под кнопку-стрелку (она 39px, absolute);
           раньше padding был нулевой и текст лип к самой рамке */
        padding: 0px 47px 0px 14px;
        margin: 0px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        background-color: #ffffff;
        flex-wrap: wrap;
        border:1px solid #eb3f3f;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        box-sizing: border-box;
        overflow: hidden;
}
#footer-main-mailing form input.form_field_one1 {
        padding: 5px 5%;
        width: 50%;
        flex-basis: 50%;
        border: none;
        background: none;
        font-family: "open-sans-regular";
        font-weight: normal;
        font-size: 13px;
        color: #757575;
}
#footer-main-mailing form input.form_field_one::placeholder {
        font-family: "open-sans-regular";
        font-weight: normal;
        font-size: 13px;
        color: #757575;
}
#footer-main-mailing form a.main_form_send {
        position: absolute;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 39px;
        flex-shrink: 0;
        height: 100%;
        box-sizing: border-box;
        text-decoration: none;
        /* кнопка золотая и в покое, и при наведении: тёмная заливка совпадала
           с фоном подвала, и кнопка пропадала. При наведении просто темнее
           оттенок золота — видно, что нажимается, но кнопка не исчезает */
        background: linear-gradient(270deg, #eb3f3f 0%, #fdecec 100%);
        border: none;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        top: 0;
        right:0;
}
#footer-main-mailing form a.main_form_send:hover {
        opacity: 1.0;
        background: linear-gradient(270deg, #c93030 0%, #eb3f3f 100%);
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#footer-main-mailing form a img {
        display: none;
}
#footer-main-mailing form a.main_form_send::after {
        content: "";
        display: block;
        width: 16px;
        height: 16px;
        background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171310' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><line x1='4' y1='12' x2='20' y2='12'/><polyline points='13 5 20 12 13 19'/></svg>") no-repeat center / contain;
}
#footer-main-mailing form input:focus,
#footer-main-mailing form input:hover,
#footer-main-mailing form input:active {
        outline: 0;
        outline-offset: 0;
}
.footer-main-block-4 h4,
.footer-main-block-4 .footer-block-title-soc {
        margin: 0px;
        padding: 36px 0px 17px 0px;
        font-family: "open-sans-bold";
        font-weight: normal;
        font-size: 15px;
        line-height: 18px;
        color: #eb3f3f;
        text-decoration: none;
}
#footer-main-soc {
        padding: 0px;
        margin: 0px;
}
#footer-main-soc ul {
        width: 100%;
        padding: 0px;
        margin: 0px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: wrap;
}
#footer-main-soc ul li {
        width: 40px;
        flex-basis: 40px;
        padding: 0px;
        margin: 0px 10px 0px 0px;
}
#footer-main-soc ul li a {
        display: block;
        width: 100%;
        flex-basis: 100%;
        padding: 0px;
        margin: 0px;
        text-decoration: none;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#footer-main-soc ul li a:hover {
        opacity: 0.7;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#footer-main-soc ul li a img {
        display: block;
        width: 100%;
        height: auto;
        padding: 0px;
        margin: 0px;
}
.footer-main-phone {
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
        padding: 0px;
        margin: 12px 0px 20px 0px;
}
.footer-main-phone img {
        width: 12px;
        height: auto;
        display: block;
        padding: 0px;
        /* 2 + 12 + 20 = 34px - столько же, сколько у почты и адреса
           (16 + 18), чтобы три строки начинались по одной вертикали */
        margin: 0px 20px 0px 2px;
        filter: brightness(0) invert(1);
        -webkit-filter: brightness(0) invert(1);
}
.footer-main-phone a {
        padding: 0px;
        margin: 0px;
        font-family: "open-sans-bold";
        font-size: 14px;
        line-height: 18px;
        color: #eb3f3f;
        text-decoration: none;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.footer-main-phone a:hover {
        opacity: 0.7;
        opacity: 0.7;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.footer-main-phone-hours {
        width: 100%;
        flex-basis: 100%;
        padding: 4px 0px 0px 0px;
        /* было 30px - часы начинались на 2px левее самого номера */
        margin: 0px 0px 0px 34px;
        font-family: "open-sans-regular";
        font-weight: normal;
        font-size: 12px;
        line-height: 16px;
        color: #9a9285;
}
.footer-main-mail {
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
        padding: 0px;
        margin: 0px 0px 20px 0px;
}
.footer-main-mail img {
        width: 16px;
        height: auto;
        display: block;
        padding: 0px;
        margin: 0px 18px 0px 0px;
        filter: brightness(0) invert(1);
        -webkit-filter: brightness(0) invert(1);
}
.footer-main-mail a {
        padding: 0px;
        margin: 0px;
        font-family: "open-sans-regular";
        font-size: 14px;
        line-height: 22px;
        color: #cfc7b8;
        text-decoration: none;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.footer-main-mail a:hover {
        opacity: 0.7;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.footer-main-address {
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
        padding: 0px;
        margin: 0px 0px 20px 0px;
}
.footer-main-address img {
        width: 16px;
        height: auto;
        display: block;
        padding: 0px;
        margin: 5px 18px 0px 0px;
        filter: brightness(0) invert(1);
        -webkit-filter: brightness(0) invert(1);
}
.footer-main-address span {
        padding: 0px;
        margin: 0px;
        /* Без этих двух строк длинный адрес не помещался рядом с иконкой,
           flex-wrap переносил его целиком на следующую строку, и текст
           начинался под значком, а не справа от него. flex: 1 1 0 разрешает
           блоку сжаться, min-width: 0 снимает запрет сжиматься уже
           содержимого - тогда переносится сам текст, внутри своей колонки. */
        flex: 1 1 0;
        min-width: 0;
        font-family: "open-sans-regular";
        font-size: 14px;
        line-height: 22px;
        color: #cfc7b8;
        text-decoration: none;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.footer-main-address span:hover {
        opacity: 0.7;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#footer-law {
        width: 96%;
        max-width: 1600px;
        padding: 0px;
        margin: 0px auto;
}
#footer-law-container {
        width: 100%;
        padding: 0px;
        margin: 0px;
        height: 125px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: wrap;
        border-top: 1px solid #292524;
}
.footer-law-block-1 {
        padding: 0px;
        margin: 0px;
        font-family: "open-sans-regular";
        font-size: 14px;
        line-height: 22px;
        color: #9a9285;
}
.footer-law-block-2 {
        width: 150px;
        height: 50px;
        padding: 6px 10px;
        margin: 0px 0px 0px 19%;
        text-decoration: none;
        background-color: #ffffff;
        border-radius: 8px;
        -webkit-border-radius: 8px;
        -moz-border-radius: 8px;
        -ms-border-radius: 8px;
        -o-border-radius: 8px;
        box-sizing: border-box;
}
.footer-law-block-2 img {
        display: block;
        width: 100%;
        height: auto;
        padding: 0px;
        margin: 0px;
}
.footer-law-block-3 {
        padding: 0px;
        margin: 0px 0px 0px auto;
        font-family: "open-sans-regular";
        font-size: 14px;
        line-height: 22px;
        color: #9a9285;
}
.footer-law-block-3 a {
        color: #eb3f3f;
        font-family: "open-sans-regular";
        font-size: 14px;
        line-height: 22px;
        text-decoration: none;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.footer-law-block-3 a:hover {
        opacity: 0.7;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
/* ============================================================
   Форма «Заказать звонок».
   Разметку не трогаем: строки таблицы генерирует движок из секции
   [show-form-fields], она общая для всплывающей и встроенной формы.
   Поэтому всё лечится стилями.
   ============================================================ */

/* Само окно */
#show_form {
        position: fixed;
        left: 50%;
        top: 100px;
        width: 360px;
        max-width: calc(100% - 32px);
        max-height: calc(100vh - 130px);
        overflow-y: auto;
        margin: 0px 0px 0px -180px;
        transform: translateX(0px);
        padding: 0px;
        border: none!important;
        background: #ffffff;
        z-index: 41;
        border-radius: 14px;
        -webkit-border-radius: 14px;
        -moz-border-radius: 14px;
        -ms-border-radius: 14px;
        -o-border-radius: 14px;
        -webkit-box-shadow: 0px 24px 60px -18px rgba(20, 16, 12, 0.45);
        -moz-box-shadow: 0px 24px 60px -18px rgba(20, 16, 12, 0.45);
        box-shadow: 0px 24px 60px -18px rgba(20, 16, 12, 0.45);
}
#show_form .show_form_inner,
.show_form_page .show_form_inner {
        padding: 24px 26px 26px 26px;
        box-sizing: border-box;
}
#show_form h1,
.show_form_page h1 {
        padding: 0px 34px 0px 0px;
        margin: 0px 0px 20px 0px;
        text-align: left;
        font-family: "geologica-medium";
        font-size: 19px;
        line-height: 25px;
        color: #1c1917;
}

/* Крестик: был голой буквой X, стал кружком с зоной нажатия 32px */
#show_form_close {
        display: flex;
        align-items: center;
        justify-content: center;
        position: absolute;
        top: 16px;
        right: 16px;
        width: 32px;
        height: 32px;
        padding: 0px;
        margin: 0px;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 1;
        color: #8a8175;
        background: #fdecec;
        border-radius: 50%;
        text-decoration: none;
        z-index: 100000;
        /* в шаблоне стоит заглавная буква X — прячем её и рисуем настоящий
           знак умножения, он ровнее садится в кружок. Текст остаётся
           в разметке, его читает программа для незрячих. */
        font-size: 0px;
        transition: all 200ms ease-out;
        -webkit-transition: all 200ms ease-out;
        -moz-transition: all 200ms ease-out;
        -ms-transition: all 200ms ease-out;
        -o-transition: all 200ms ease-out;
}
#show_form_close:before {
        content: "\00d7";
        font-family: Arial, Helvetica, sans-serif;
        font-size: 22px;
        line-height: 22px;
        display: block;
}
#show_form_close:hover {
        color: #ffffff;
        background: #1c1917;
}

/* Таблица движка разворачивается в столбик: подпись над полем.
   В две колонки длинная подпись вроде «Удобное время звонка»
   переносилась на две строки, сжимала колонку с полем, и строки
   разъезжались по высоте. В столбик ширина подписи ни на что
   не влияет — работает с любым числом полей и любыми названиями. */
#show_form .show_form_table,
#show_form .show_form_table tbody,
#show_form .show_form_table tr,
#show_form .show_form_table th,
#show_form .show_form_table td,
.show_form_page .show_form_table,
.show_form_page .show_form_table tbody,
.show_form_page .show_form_table tr,
.show_form_page .show_form_table th,
.show_form_page .show_form_table td {
        display: block;
        width: 100%;
        padding: 0px;
        margin: 0px;
        box-sizing: border-box;
}
#show_form .show_form_table tr,
.show_form_page .show_form_table tr {
        margin: 0px 0px 16px 0px;
}
#show_form .show_form_table th,
.show_form_page .show_form_table th {
        padding: 0px 0px 7px 0px;
        text-align: left;
        font-family: "geologica-regular";
        font-weight: normal;
        font-size: 13px;
        line-height: 18px;
        color: #6b6259;
}
#show_form .show_form_table th p,
#show_form .show_form_table td p,
.show_form_page .show_form_table th p,
.show_form_page .show_form_table td p {
        padding: 0px;
        margin: 0px;
}
#show_form .show_form_text,
.show_form_page .show_form_text {
        font-size: 12px;
        line-height: 16px;
        color: #9a9285;
}
#show_form .show_form_table input,
#show_form .show_form_table textarea,
.show_form_page .show_form_table input,
.show_form_page .show_form_table textarea {
        width: 100%;
        height: 46px;
        padding: 0px 14px;
        margin: 0px;
        box-sizing: border-box;
        font-family: "geologica-regular";
        font-size: 15px;
        color: #1c1917;
        background: #ffffff;
        border: 1px solid #f7f7f7!important;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
        transition: border-color 200ms ease-out, box-shadow 200ms ease-out;
        -webkit-transition: border-color 200ms ease-out, box-shadow 200ms ease-out;
        -moz-transition: border-color 200ms ease-out, box-shadow 200ms ease-out;
        -ms-transition: border-color 200ms ease-out, box-shadow 200ms ease-out;
        -o-transition: border-color 200ms ease-out, box-shadow 200ms ease-out;
}
#show_form .show_form_table textarea,
.show_form_page .show_form_table textarea {
        height: 104px;
        padding: 12px 14px;
        resize: vertical;
}
#show_form .show_form_table input::placeholder,
#show_form .show_form_table textarea::placeholder,
.show_form_page .show_form_table input::placeholder,
.show_form_page .show_form_table textarea::placeholder {
        color: #a79e93;
}
#show_form .show_form_table input:hover,
#show_form .show_form_table textarea:hover,
.show_form_page .show_form_table input:hover,
.show_form_page .show_form_table textarea:hover {
        border-color: #c9bfae!important;
}
#show_form .show_form_table input:focus,
#show_form .show_form_table textarea:focus,
.show_form_page .show_form_table input:focus,
.show_form_page .show_form_table textarea:focus {
        outline: 0;
        outline-offset: 0;
        border-color: #eb3f3f!important;
        -webkit-box-shadow: 0px 0px 0px 3px rgba(228, 183, 100, 0.25);
        -moz-box-shadow: 0px 0px 0px 3px rgba(228, 183, 100, 0.25);
        box-shadow: 0px 0px 0px 3px rgba(228, 183, 100, 0.25);
}

/* Кнопка — золотая, как «Показать ещё» на главной. Была чёрная 100px,
   на фоне золотых полей читалась как второстепенная. */
#show_form .show_form_send,
.show_form_page .show_form_send {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 50px;
        margin: 0px;
        padding: 0px;
        font-family: "geologica-light";
        font-size: 17px;
        color: #1c1917!important;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%)!important;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        text-decoration: none;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#show_form .show_form_send:hover,
.show_form_page .show_form_send:hover {
        background: linear-gradient(90deg, #1c1917 0%, #292524 100%)!important;
        color: #ffffff!important;
}

/* ============================================================
   «Вопрос-ответ» и «Отзывы».
   Обе страницы собраны из одного набора классов: слева список,
   справа карточка с формой. На экране уже 1000px - одна колонка,
   форма сверху, список под ней (как было до правки).
   ============================================================ */
.inner-feedback {
        padding: 0px;
        margin: 0px auto;
        width: 90%;
        max-width: 1600px;
}
#inner-feedback-container {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
.inner-feedback h1 {
        padding: 7px 0px 26px 0px;
        margin: 0px;
        font-family: "geologica-bold";
        font-size: 30px;
        line-height: 32px;
        color: #2d2d2d;
        font-weight: normal;
        text-transform: none;
}
/* 1180px - предел ширины: дальше строки ответов становятся
   слишком длинными, глазу тяжело возвращаться к началу строки */
.fb-layout {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 360px;
        gap: 40px;
        align-items: start;
        width: 100%;
        max-width: 1180px;
        padding: 0px 0px 50px 0px;
        margin: 0px;
}
/* порядок в разметке - форма, потом список; на широком экране
   раскладываем явно, чтобы список оказался слева */
.fb-main {
        grid-column: 1;
        grid-row: 1;
        min-width: 0;
}
.fb-aside {
        grid-column: 2;
        grid-row: 1;
        min-width: 0;
}
.fb-card {
        width: 100%;
        box-sizing: border-box;
        padding: 24px 24px 20px 24px;
        margin: 0px;
        background: #ffffff;
        border: 1px solid #fdecec;
        border-radius: 16px;
        -webkit-border-radius: 16px;
        -moz-border-radius: 16px;
        -ms-border-radius: 16px;
        -o-border-radius: 16px;
        -webkit-box-shadow: 0px 10px 30px -18px rgba(23, 19, 16, 0.35);
        -moz-box-shadow: 0px 10px 30px -18px rgba(23, 19, 16, 0.35);
        box-shadow: 0px 10px 30px -18px rgba(23, 19, 16, 0.35);
}
#feedback_form_0 h4,
#feedback_form_0 h2,
#faq_form_0 h4,
#faq_form_0 h2 {
        padding: 0px;
        margin: 0px 0px 6px 0px;
        font-family: "geologica-medium";
        font-size: 19px;
        line-height: 24px;
        color: #1c1917;
        font-weight: normal;
        text-transform: none;
}
.fb-card-note {
        padding: 0px;
        margin: 0px 0px 18px 0px;
        font-family: "open-sans-regular";
        font-weight: normal;
        font-size: 13px;
        line-height: 18px;
        color: #9a9285;
}
/* сообщение после отправки: пока пустое - его не видно */
#inner-feedback-form-alert {
        padding: 14px 16px;
        margin: 0px 0px 16px 0px;
        background: #f4f8f4;
        border: 1px solid #cfe1cf;
        border-radius: 12px;
        font-family: "geologica-regular";
        font-size: 15px;
        line-height: 21px;
        color: #2f5d34;
}
#inner-feedback-form-alert:empty {
        display: none;
}
#feedback_form_0 .catalog_user_data,
#faq_form_0 .catalog_user_data {
        padding: 0px;
        margin: 0px;
        /* та же форма стоит на карточке товара, во вкладке «Задать вопрос»,
           а там места намного больше - без ограничения поля растянулись бы
           на всю ширину вкладки */
        max-width: 520px;
        border: none;
}
.inner-feedback-block {
        width: 100%;
        padding: 0px;
        margin: 0px 0px 14px 0px;
}
.inner-feedback-block label {
        display: block;
        padding: 0px;
        margin: 0px 0px 6px 0px;
        color: #6b6259;
        font-family: "geologica-regular";
        font-size: 13px;
        line-height: 16px;
}
/* только текстовые поля: кнопка «Отправить» - тоже input,
   и общее правило красило бы и её */
.inner-feedback .inner-feedback-block input[type="text"],
.inner-feedback .inner-feedback-block textarea {
        display: block;
        width: 100%;
        box-sizing: border-box;
        height: 44px;
        padding: 0px 14px;
        margin: 0px;
        color: #1c1917;
        font-family: "geologica-regular";
        font-size: 15px;
        background: #ffffff;
        border: 1px solid #f7f7f7;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        transition: border-color 200ms ease-out, box-shadow 200ms ease-out;
        -webkit-transition: border-color 200ms ease-out, box-shadow 200ms ease-out;
}
.inner-feedback .inner-feedback-block textarea {
        height: 112px;
        padding: 11px 14px;
        line-height: 21px;
        resize: none;
}
.inner-feedback .inner-feedback-block input[type="text"]:focus,
.inner-feedback .inner-feedback-block textarea:focus {
        outline: none;
        outline-offset: 0;
        border-color: #eb3f3f;
        -webkit-box-shadow: 0px 0px 0px 3px rgba(228, 183, 100, 0.25);
        -moz-box-shadow: 0px 0px 0px 3px rgba(228, 183, 100, 0.25);
        box-shadow: 0px 0px 0px 3px rgba(228, 183, 100, 0.25);
}
.inner-feedback-block input:active,
.inner-feedback-block input:hover,
.inner-feedback-block textarea:active,
.inner-feedback-block textarea:hover {
        outline: 0;
        outline-offset: 0;
}
/* капча и поле кода - в одну строку, одной высоты */
.inner-feedback-block-code .fb-code-row {
        display: flex;
        align-items: center;
        gap: 12px;
        width: 100%;
}
.inner-feedback-block-code img.captcha {
        display: block;
        width: 120px;
        height: 44px;
        flex: 0 0 auto;
        object-fit: cover;
        padding: 0px;
        margin: 0px;
        background: #ffffff;
        border: 1px solid #f7f7f7;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
}
.inner-feedback .inner-feedback-block-code input.pkod[type="text"],
#faq_form_0 .inner-feedback-block-code input.pkod[type="text"] {
        width: auto;
        flex: 1 1 auto;
        min-width: 0px;
        height: 44px;
        padding: 0px 14px;
        margin: 0px;
        float: none;
        color: #1c1917;
        font-family: "geologica-regular";
        font-size: 15px;
        border: 1px solid #f7f7f7;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
}
.inner-feedback .inner-feedback-block-send,
#faq_form_0 .inner-feedback-block-send {
        margin: 0px;
}
/* главное действие на сайте всегда золотое - так же выглядят
   «Отправить» в форме звонка и стрелка подписки в подвале */
.inner-feedback .inner-feedback-block-send input,
#faq_form_0 .inner-feedback-block-send input {
        display: block;
        width: 100%;
        max-width: 360px;
        box-sizing: border-box;
        height: 48px;
        padding: 0px;
        margin: 0px;
        background: linear-gradient(270deg, #eb3f3f 0%, #fdecec 100%);
        font-family: "geologica-medium";
        font-size: 15px;
        font-weight: normal;
        color: #1c1917;
        text-decoration: none;
        border: none;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        cursor: pointer;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.inner-feedback .inner-feedback-block-send input:hover,
#faq_form_0 .inner-feedback-block-send input:hover {
        background: linear-gradient(270deg, #c93030 0%, #eb3f3f 100%);
        color: #1c1917;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
/* ---------- список вопросов и отзывов ---------- */
.inner-feedback .inner-feedback-list {
        padding: 0px;
        margin: 0px;
        width: 100%;
        height: auto;
}
.inner-feedback-list .one-question {
        width: 100%;
        box-sizing: border-box;
        padding: 20px 22px;
        margin: 0px 0px 14px 0px;
        background: #ffffff;
        border: 1px solid #fdecec;
        border-radius: 14px;
        -webkit-border-radius: 14px;
        -moz-border-radius: 14px;
        -ms-border-radius: 14px;
        -o-border-radius: 14px;
}
/* ответы на отзывы - со ступенькой */
.inner-feedback-list .one-question.sub_question {
        margin-left: 26px;
}
.one-question-head {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 12px;
        padding: 0px;
        margin: 0px 0px 10px 0px;
}
/* кружок с первой буквой имени. Букву считает PHP и отдаёт
   в %initial% - в шаблоне взять первую букву нечем, а CSS
   умеет только ::first-letter внутри самого текста. */
.one-question-avatar {
        display: flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 auto;
        width: 38px;
        height: 38px;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
        background: linear-gradient(135deg, #fdecec 0%, #eb3f3f 100%);
        font-family: "geologica-medium";
        font-size: 17px;
        line-height: 1;
        color: #1c1917;
        text-transform: uppercase;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none;
}
/* имени нет (или в ядре ещё нет %initial%) - кружка тоже нет */
.one-question-avatar:empty {
        display: none;
}
/* ответ магазина в ветке отзыва - кружок тёмный, чтобы отличался
   от кружка покупателя */
.one-question.sub_question .one-question-avatar {
        background: linear-gradient(135deg, #292524 0%, #1c1917 100%);
        color: #eb3f3f;
}
.one-question-meta {
        display: flex;
        flex-direction: column;
        justify-content: center;
        min-width: 0px;
}
.one-question-author {
        font-family: "geologica-medium";
        font-size: 15px;
        line-height: 20px;
        color: #1c1917;
}
/* имени может не быть - тогда не оставляем пустой отступ */
.one-question-author:empty {
        display: none;
}
.one-question-date {
        padding: 0px;
        margin: 0px;
        background: none;
        width: auto;
        font-family: "open-sans-regular";
        font-size: 13px;
        line-height: 18px;
        text-align: left;
        color: #9a9285;
}
.one-question-question {
        padding: 0px;
        margin: 0px;
        border: none;
        font-family: "geologica-regular";
        font-size: 16px;
        line-height: 24px;
        text-align: left;
        color: #1c1917;
}
.one-question-question p {
        padding: 0px;
        margin: 0px 0px 8px 0px;
        color: #1c1917;
}
.one-question-question p:last-child {
        margin-bottom: 0px;
}
/* ответ магазина - отдельным блоком, чтобы не путался с вопросом */
.one-question-answer {
        padding: 14px 16px 14px 17px;
        margin: 14px 0px 0px 0px;
        border: none;
        border-left: 3px solid #eb3f3f;
        border-radius: 0px 10px 10px 0px;
        -webkit-border-radius: 0px 10px 10px 0px;
        -moz-border-radius: 0px 10px 10px 0px;
        -ms-border-radius: 0px 10px 10px 0px;
        -o-border-radius: 0px 10px 10px 0px;
        background: #f7f7f7;
        font-family: "geologica-regular";
        font-size: 15px;
        line-height: 22px;
        text-align: left;
        color: #4a443d;
}
/* ответа может не быть - тогда блока нет вовсе */
.one-question-answer:empty {
        display: none;
}
.one-question-answer:before {
        content: "Ответ магазина";
        display: block;
        padding: 0px;
        margin: 0px 0px 6px 0px;
        font-family: "geologica-medium";
        font-size: 12px;
        line-height: 16px;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        color: #c93030;
}
.one-question-answer p {
        padding: 0px;
        margin: 0px 0px 8px 0px;
        color: #4a443d;
}
.one-question-answer p:last-child {
        margin-bottom: 0px;
}
/* ---------- вкладки на карточке товара ---------- */
/* «Оплата» и «Доставка»: короткая выжимка из одноимённых страниц,
   плашками. Полные условия - по ссылке под плашками. */
.one-info-cols {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
        gap: 16px;
        padding: 0px;
        margin: 6px 0px 18px 0px;
}
.one-info-block {
        padding: 18px 20px;
        margin: 0px;
        background: #f7f7f7;
        border: 1px solid #fdecec;
        border-radius: 14px;
        -webkit-border-radius: 14px;
        -moz-border-radius: 14px;
        -ms-border-radius: 14px;
        -o-border-radius: 14px;
}
.one-info-block h4,
.one-info-block .one-info-block-title {
        padding: 0px;
        margin: 0px 0px 8px 0px;
        font-family: "geologica-medium";
        font-size: 16px;
        line-height: 22px;
        font-weight: normal;
        text-transform: none;
        color: #1c1917;
}
.one-info-block p {
        padding: 0px;
        margin: 0px;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 21px;
        color: #5c564e;
}
.one-info-note {
        padding: 0px;
        margin: 0px;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 21px;
        color: #7a736a;
}
.one-info-note a {
        color: #1c1917;
        text-decoration: none;
        border-bottom: 1px solid #eb3f3f;
}
.one-info-note a:hover {
        color: #c93030;
}
/* «Отзывы»: своих отзывов у товара движок не хранит, поэтому честная
   заглушка со ссылкой на общий раздел вместо выдуманных отзывов */
.fb-empty {
        padding: 26px 24px;
        margin: 0px;
        background: #f7f7f7;
        border: 1px solid #fdecec;
        border-radius: 14px;
        -webkit-border-radius: 14px;
        -moz-border-radius: 14px;
        -ms-border-radius: 14px;
        -o-border-radius: 14px;
}
.fb-empty-title {
        padding: 0px;
        margin: 0px 0px 8px 0px;
        font-family: "geologica-medium";
        font-size: 17px;
        line-height: 23px;
        color: #1c1917;
}
.fb-empty p {
        padding: 0px;
        margin: 0px 0px 16px 0px;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 21px;
        color: #5c564e;
}
.fb-empty-link {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        height: 44px;
        padding: 0px 22px;
        margin: 0px;
        background: linear-gradient(270deg, #eb3f3f 0%, #fdecec 100%);
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        font-family: "geologica-medium";
        font-size: 15px;
        color: #1c1917;
        text-decoration: none;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
}
.fb-empty-link:hover {
        background: linear-gradient(270deg, #c93030 0%, #eb3f3f 100%);
        color: #1c1917;
}
/* «Задать вопрос»: слева форма, справа отсылка к общему разделу */
.fb-ask {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 320px;
        gap: 30px;
        align-items: start;
        width: 100%;
}
.fb-ask > #inner-feedback-form-alert {
        grid-column: 1 / -1;
        grid-row: 1;
}
.fb-ask > .fb-card {
        grid-column: 1;
        grid-row: 2;
}
.fb-ask > .fb-ask-side {
        grid-column: 2;
        grid-row: 2;
        padding: 22px;
        background: #f7f7f7;
        border: 1px solid #fdecec;
        border-radius: 14px;
        -webkit-border-radius: 14px;
        -moz-border-radius: 14px;
        -ms-border-radius: 14px;
        -o-border-radius: 14px;
}
.fb-ask-side-title {
        padding: 0px;
        margin: 0px 0px 8px 0px;
        font-family: "geologica-medium";
        font-size: 16px;
        line-height: 22px;
        color: #1c1917;
}
.fb-ask-side p {
        padding: 0px;
        margin: 0px 0px 16px 0px;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 21px;
        color: #5c564e;
}
/* кнопка «Поделиться»: ширина по содержимому - подпись меняется
   на «Ссылка скопирована» и в прежние 165px не помещалась.
   Селектор с родителем - потому что правило с width: 165px стоит
   в файле ниже этого места, и по весу его надо перебить. */
.inner-catalog-one-description .catalog-one-description-link {
        width: fit-content;
        min-width: 165px;
}
.inner-catalog-one-description .catalog-one-description-link h4,
.inner-catalog-one-description .catalog-one-description-link .catalog-one-description-link-title {
        white-space: nowrap;
}
.catalog-one-description-link a {
        cursor: pointer;
}
.catalog-one-description-link-done {
        border-color: #eb3f3f;
}
.inner-catalog-one-description .catalog-one-description-link-done h4,
.inner-catalog-one-description .catalog-one-description-link-done .catalog-one-description-link-title {
        font-size: 13px;
        color: #c93030;
}
@media screen and (max-width: 1000px) {
        .fb-layout {
                grid-template-columns: minmax(0, 1fr);
                gap: 26px;
                max-width: none;
                padding: 0px 0px 30px 0px;
        }
        .fb-aside {
                grid-column: 1;
                grid-row: 1;
        }
        .fb-main {
                grid-column: 1;
                grid-row: 2;
        }
        .fb-card {
                padding: 20px 18px 18px 18px;
        }
        .inner-feedback-list .one-question {
                padding: 18px 16px;
        }
        .inner-feedback-list .one-question.sub_question {
                margin-left: 14px;
        }
        .fb-ask {
                grid-template-columns: minmax(0, 1fr);
                gap: 20px;
        }
        .fb-ask > .fb-card {
                grid-column: 1;
                grid-row: 2;
        }
        .fb-ask > .fb-ask-side {
                grid-column: 1;
                grid-row: 3;
        }
}
#main.main-inner {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
#main.main-inner .tetext {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
#main.main-inner .tetext .static {
        width: 90%;
        padding: 40px 0px;
        margin: 0px auto;
        max-width: 1600px;
        font-family: "geologica-regular";
        font-size: 16px;
        font-weight: normal;
        color: #222222;
}
#main.main-inner .tetext .static h1 {
        font-family: "geologica-bold";
        font-size: 30px;
        color: #2d2d2d;
        text-transform: none;
}
#main.main-inner .tetext .static h2 {
        font-family: "geologica-bold";
        font-size: 25px;
        color: #2d2d2d;
        text-transform: none;
}
#main.main-inner .tetext .static h3 {
        font-family: "geologica-bold";
        font-size: 25px;
        color: #2d2d2d;
        text-transform: none;
}
#inner-catalog-all-cats {
        width: 90%;
        padding: 0% 0px 60px 0px;
        margin: 0% auto;
        max-width: 1600px;
}
#inner-catalog-all-cats h1 {
        margin: 0px 0px 0px 0px;
        padding: 0px 0px 30px 0px;
        font-family: "geologica-bold";
        font-size: 30px;
        line-height: 33px;
        color: #333;
        font-weight: normal;
        text-transform: none;
}
.inner-pathway {
        width: 100%;
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
        padding: 22px 0px;
        margin: 0px 0px;
}
.inner-pathway a {
        display: block;
        padding: 5px 0px;
        margin: 0px 0px;
        text-decoration: none;
        font-family: "geologica-light";
        font-size: 14px;
        line-height: 20px;
        color: #949494;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.inner-pathway a:hover {
        color: #000000;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.inner-pathway .inner-pathway-separator {
        display: block;
        padding: 5px 0px;
        margin: 0px 10px;
        font-family: "geologica-light";
        font-size: 14px;
        line-height: 20px;
        color: #949494;
}
#inner-catalog-cat {
        width: 90%;
        padding: 0% 0px 60px 0px;
        margin: 0% auto;
        max-width: 1600px;
}
#inner-catalog-cat-container {
        width: 100%;
        padding: 0px;
        margin: 0px;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        flex-wrap: wrap;
}
#catalog-cat-sidebar {
        width: 20%;
        flex-basis: 20%;
        padding: 0px;
        margin: 0px;
}
#catalog-cat-sidebar-container {
        position: relative;
        width: 100%;
        padding: 0px;
        margin: 0px;
}
#catalog-cat-sidebar-scroll {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
/* Текст раздела каталога из админки (маркер %text% в секции catalog-cat).
   Нужен и поисковым системам, и покупателю: что в разделе, чем отличается.
   Поле пустое - блока на странице нет. */
#catalog-cat-text {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
/* .static задаёт 90% и центрирование - это для страниц во всю ширину;
   здесь текст уже внутри колонки каталога, поэтому во всю её ширину.
   Селектор длинный намеренно: у правила .static выше приоритет. */
#main.main-inner .tetext #catalog-cat-text .static_cat {
        width: 100%;
        max-width: none;
        padding: 30px 0px 10px 0px;
        margin: 0px;
}
#catalog-cat-text .static_cat:empty {
        display: none;
}
#catalog-cat-sidebar h3,
#catalog-cat-sidebar .catalog-cat-sidebar-title {
        margin: 0px 0px 10px 0px;
        padding: 8px 0px 15px 0px;
        color: #e8e8e8;
        font-family: "geologica-medium";
        font-size: 16px;
        line-height: 24px;
        color: #2d2d2d;
        text-transform: none;
        font-weight: normal;
        border-bottom: 1px solid #e8e8e8;
}
.catalog-cat-sidebar-categories {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
.catalog-cat-sidebar-categories ul {
        display: block;
        width: 100%;
        padding: 0px;
        margin: 0px;
}
.catalog-cat-sidebar-categories ul li a {
        width: 77%;
        flex-basis: 77%;
        display: block;
        padding: 19px 11.5%;
        margin: 0px 0px;
        border: 1px solid #f2f2f2;
        background-color: #ffffff;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 20px;
        color: #808080;
        text-decoration: none;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-cat-sidebar-categories ul li a:hover {
        background-color: #f2f2f2;
        color: #000000;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}

.catalog-cat-sidebar-categories ul li.active a {
        background-color: #f2f2f2;
        color: #000000;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#catalog-cat-sidebar-list {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
.catalog-cat-sidebar-list-block {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
.catalog-cat-sidebar-list-block-title {
        padding: 9.5px 0% 10px 0px;
        margin: 0px 0px 0px 0px;
        font-family: "geologica-medium";
        font-size: 15px;
        line-height: 24px;
        color: #2d2d2d;
        cursor: pointer;
        text-transform: none;
        font-weight: normal;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-cat-sidebar-list-block-title:hover {
        color: #1c1917;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-cat-sidebar-list-block-title span {
        margin: 0px;
        padding: 0px 20px 0px 0px;
        background: url("/themes/default/images/catalog-cat-sidebar-list-block-title-active-3x.png") no-repeat 100% 50%;
        background-size: 9px;
}
.catalog-cat-sidebar-list-block.active .catalog-cat-sidebar-list-block-title span {
        background: url("/themes/default/images/catalog-cat-sidebar-list-block-title-3x.png") no-repeat 100% 50%;
        background-size: 9px;
}
.catalog-cat-sidebar-buttons {
        width: 100%;
        padding: 20px 0px 30px 0px;
        margin: 0px;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        flex-wrap: wrap;
}
.catalog-cat-sidebar-button {
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 17px;
        text-decoration: none;
}
.catalog-cat-sidebar-button-1 {
        width: 45%;
        height: 35px;
        display: flex;;
        align-items: center;
        justify-content: center;
        text-align: center;
        color: #757575;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-cat-sidebar-button-1:hover {
        color: #000;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-cat-sidebar-button-2 {
        width: 55%;
        height: 35px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #1c1917;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        padding: 0px;
        margin: 0px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
}
.catalog-cat-sidebar-button-2:hover {
        background: linear-gradient(90deg, #eb3f3f 0%, #c93030 100%);
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-cat-sidebar-list-block-content-checkboxes {
        width: 100%;
        padding: 5px 0px 7px 0px;
        margin: 0px;
}
.catalog-cat-sidebar-list-block-content-checkboxes label {
        display: inline-block;
        padding: 0px;
        cursor: pointer;
        margin: 0px 5px 10px 0px;
}
.catalog-cat-sidebar-list-block-content-checkboxes label input {
        display: none;
        cursor: pointer;
}
.catalog-cat-sidebar-list-block-content-checkboxes label span {
        display: inline-block;
        padding: 5px 10px;
        margin: 0px 0px;
        font-family: "geologica-regular";
        font-size: 13px;
        font-weight: normal;
        line-height: 18px;
        color: #2d2d2d;
        background: #F4F4F4;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        -ms-border-radius: 5px;
        -o-border-radius: 5px;
}
.catalog-cat-sidebar-list-block-content-checkboxes label span:hover {
        color: #2d2d2d;
        background: #f3efef;
}
.catalog-cat-sidebar-list-block-content-checkboxes label input:checked + span {
        background: #2d2d2d;
        color: #1c1917;
        background: #1c1917;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
}
.catalog-cat-sidebar-list-block-content {
        display: none;
}
.catalog-cat-sidebar-list-block.active .catalog-cat-sidebar-list-block-content {
        display: block;
}
.catalog-cat-sidebar-list-block-content-slider {
        width: 100%;
        padding: 5px 0px 7px 0px;
        margin: 0px;
}
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-handle > i:first-child {
        top: 0px;
        left: 0px;
        width: 20px;
        height: 20px;
        background: #FFFFFF;
        box-shadow: 0px 3px 10px 1px #00000059;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
}
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-handle > i:first-child:hover,
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-handle.state_hover > i:first-child {
        background: #eb3f3f;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
}
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-bar {
        top: 30px;
        height: 3px;
        background-color: #eb3f3f;
}
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-line {
        top: 30px;
        height: 3px;
        background: #dddddd;
}
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-from,
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-to,
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-single {
        background-color: #1c1917;
}
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-from::before,
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-to::before,
.catalog-cat-sidebar-list-block-content-slider .irs--flat .irs-single::before {
        border-top-color: #1c1917;
}
/* Избранное (/wish-list). На страницах каталога верхний отступ даёт
   блок хлебных крошек, здесь его нет — задаём тот же отступ, что у
   статических страниц (40px), иначе заголовок прилипает к шапке. */
/* Селектор с id: у #inner-catalog-cat задан padding одной записью,
   и id перебивал бы любое число классов — отступ сверху обнулялся. */
#inner-catalog-cat.inner-wishlist {
        padding-top: 40px;
}
.inner-wishlist .cabinet-title {
        padding: 0px 0px 22px 0px;
        margin: 0px;
        font-family: "geologica-bold";
        font-size: 30px;
        line-height: 34px;
        font-weight: normal;
        color: #2d2d2d;
        text-transform: none;
}
.inner-wishlist .cabinet-nav {
        margin: 0px 0px 34px 0px;
}
.inner-wishlist #catalog-cat-content h1 {
        padding-top: 0px;
}
/* ============================================================
   Левая колонка каталога: фильтр и список категорий.
   Раньше блоки лежали на фоне страницы без подложки, а кнопки
   «Сбросить»/«Применить» висели в пустоте отдельно от фильтра.
   Разметку не трогаем — форма #filter_left уже цельный блок.
   ============================================================ */
#catalog-cat-sidebar #filter_left {
        padding: 0px 20px 20px 20px;
        margin: 0px 0px 22px 0px;
        background: #ffffff;
        border: 1px solid #fdecec;
        border-radius: 14px;
        -webkit-border-radius: 14px;
        -moz-border-radius: 14px;
        -ms-border-radius: 14px;
        -o-border-radius: 14px;
        box-sizing: border-box;
}
#catalog-cat-sidebar h3,
#catalog-cat-sidebar .catalog-cat-sidebar-title {
        margin: 0px 0px 2px 0px;
        padding: 18px 0px 14px 0px;
        font-family: "geologica-medium";
        font-size: 17px;
        line-height: 24px;
        color: #1c1917;
        font-weight: normal;
        text-transform: none;
        border-bottom: 1px solid #fdecec;
}
/* разделитель — верхней рамкой начиная со второго блока: при нижней
   рамке линия висела и под единственным блоком (например, когда в
   категории остаётся только «Цена») */
#catalog-cat-sidebar .catalog-cat-sidebar-list-block + .catalog-cat-sidebar-list-block {
        border-top: 1px solid #fdecec;
}
#catalog-cat-sidebar .catalog-cat-sidebar-list-block-title {
        padding: 13px 0px 13px 0px;
}
#catalog-cat-sidebar .catalog-cat-sidebar-list-block.active .catalog-cat-sidebar-list-block-title {
        color: #1c1917;
}
#catalog-cat-sidebar .catalog-cat-sidebar-list-block-content {
        padding: 0px 0px 8px 0px;
}
#catalog-cat-sidebar .catalog-cat-sidebar-list-block-content-checkboxes label span {
        background: #fdecec;
        color: #525252;
}
#catalog-cat-sidebar .catalog-cat-sidebar-list-block-content-checkboxes label span:hover {
        background: #f7f7f7;
        color: #1c1917;
}
/* выбранное значение фильтра. Селектор с #catalog-cat-sidebar выше по
   весу, чем правило :checked + span ниже по файлу (id бьёт классы),
   поэтому подсветку выбора нужно повторить с той же специфичностью —
   иначе плашка не реагирует на клик */
#catalog-cat-sidebar .catalog-cat-sidebar-list-block-content-checkboxes label input:checked + span {
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        color: #1c1917;
}
/* Пустой блок фильтра. В категориях без заполненных характеристик
   движок всё равно отдаёт одну запись без данных: %title% и %name%
   не находятся и молча исчезают, остаётся кликабельная строка с
   пустым заголовком и пустым списком значений. Прячем два случая:
   блок с пустым именем поля (class оканчивается на «-») и любой блок,
   у которого контейнер значений пуст. Блок «Цена» свёрстан отдельно
   и под эти правила не попадает. */
#catalog-cat-sidebar .catalog-cat-sidebar-list-block[class$="catalog-cat-sidebar-list-block-"] {
        display: none;
}
#catalog-cat-sidebar .catalog-cat-sidebar-list-block:has(.catalog-cat-sidebar-list-block-content-checkboxes:empty) {
        display: none;
}
#catalog-cat-sidebar .catalog-cat-sidebar-buttons {
        padding: 18px 0px 0px 0px;
        margin: 4px 0px 0px 0px;
        justify-content: space-between;
        border-top: 1px solid #fdecec;
}
#catalog-cat-sidebar .catalog-cat-sidebar-button-1 {
        width: 47%;
        height: 42px;
        color: #7a7264;
        background: #ffffff;
        border: 1px solid #fdecec;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        box-sizing: border-box;
}
#catalog-cat-sidebar .catalog-cat-sidebar-button-1:hover {
        color: #1c1917;
        border-color: #eb3f3f;
}
#catalog-cat-sidebar .catalog-cat-sidebar-button-2 {
        width: 47%;
        height: 42px;
        box-sizing: border-box;
}
#catalog-cat-sidebar .catalog-cat-sidebar-categories {
        padding: 0px;
        margin: 0px;
        background: #ffffff;
        border: 1px solid #fdecec;
        border-radius: 14px;
        -webkit-border-radius: 14px;
        -moz-border-radius: 14px;
        -ms-border-radius: 14px;
        -o-border-radius: 14px;
        overflow: hidden;
        box-sizing: border-box;
}
#catalog-cat-sidebar .catalog-cat-sidebar-categories ul li a {
        position: relative;
        width: 100%;
        flex-basis: auto;
        padding: 14px 18px;
        margin: 0px;
        box-sizing: border-box;
        border: none;
        border-bottom: 1px solid #fdecec;
        background: none;
        font-family: "geologica-regular";
        font-size: 15px;
        line-height: 21px;
        color: #525252;
}
#catalog-cat-sidebar .catalog-cat-sidebar-categories ul li:last-child a {
        border-bottom: none;
}
#catalog-cat-sidebar .catalog-cat-sidebar-categories ul li a:hover,
#catalog-cat-sidebar .catalog-cat-sidebar-categories ul li.active a {
        background: #fdecec;
        color: #1c1917;
}
#catalog-cat-sidebar .catalog-cat-sidebar-categories ul li.active a {
        font-family: "geologica-medium";
}
/* вкладки «Новинки», «Хиты продаж», «Распродажа и акции» в меню каталога:
   это не категории, поэтому выделены цветом и начертанием, а стык с
   обычными категориями отмечен чуть более тёмной линией */
#catalog-cat-sidebar .catalog-cat-sidebar-categories ul li.catalog-cat-sidebar-extra a {
        font-family: "geologica-medium";
        color: #eb3f3f;
}
#catalog-cat-sidebar .catalog-cat-sidebar-categories ul li.catalog-cat-sidebar-extra a:hover {
        color: #1c1917;
}
#catalog-cat-sidebar .catalog-cat-sidebar-categories ul li.catalog-cat-sidebar-extra:nth-child(2) a,
#catalog-cat-sidebar .catalog-cat-sidebar-categories ul li:has(+ li.catalog-cat-sidebar-extra) a {
        border-bottom-color: #fdecec;
}
#catalog-cat-sidebar .catalog-cat-sidebar-categories ul li.active a::before {
        content: "";
        position: absolute;
        top: 0px;
        left: 0px;
        bottom: 0px;
        width: 3px;
        background: linear-gradient(180deg, #fdecec 0%, #eb3f3f 100%);
}
#catalog-cat-content {
        width: 78%;
        flex-basis: 78%;
        padding: 0px;
        margin: 0px;
}
#catalog-cat-content h1 {
        padding: 7px 0px 40px 0px;
        margin: 0px;
        font-family: "geologica-bold";
        font-size: 30px;
        line-height: 32px;
        color: #2d2d2d;
        font-weight: normal;
        text-transform: none;
}
#catalog-cat-sorting {
        width: 100%;
        padding: 3px 0px 30px 0px;
        margin: 0px;
}
#catalog-cat-sorting ul {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: wrap;
        margin: 0px 0px 0px 12px;
        padding: 0px;
}
#catalog-cat-sorting ul li {
        padding: 0px;
        margin: 0px;
}
#catalog-cat-sorting ul li a {
        padding: 0px 15px 0px 0px;
        margin: 0px 17px 5px 0px;
        font-family: "geologica-regular";
        font-weight: normal;
        font-size: 14px;
        color: #525252;
        background: url("/themes/default/images/catalog-cat-sorting-a-3x.png") no-repeat 100% 50%;;
        background-size: 8px;
        text-decoration: none;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#catalog-cat-sorting ul li a:hover {
        color: #1c1917;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#catalog-cat-sorting ul li.active a {
        
        color: #1c1917;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#catalog-cat-list-more {
        width: 100%;
        padding: 10px 0px 10px 0px;
        margin: 0px 0px;
}
#catalog-cat-list-more a {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0px;
        margin: 0px;
        width: 100%;
        height: 50px;
        font-family: "geologica-regular";
        font-size: 16px;
        line-height: 24px;
        color: #000000;
        text-decoration: none;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        background: #ffffff;
        border: 1px solid #f2f2f2;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
}
#catalog-cat-list-more a img {
        display: block;
        width: 30px;
        height: 30px;
        flex-basis: 30px;
        padding: 0px;
        margin: 0px;
}
#catalog-cat-list-more a span {
        padding: 0px;
        margin: 0px 0px 0px 10px;
}
#catalog-cat-list-more a:hover {
        background: #f3f0f0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#catalog-cat-list-pages {
        width: 100%;
        padding: 0px;
        margin: 20px 0px 40px 0px;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        flex-wrap: wrap;
}
#catalog-cat-list-pages a {
        width: 32px;
        flex-basis: 32px;
        height: 32px;
        padding: 0px;
        margin: 0px 3px 5px 0px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-decoration: none;
        font-family: "geologica-bold";
        font-weight: normal;
        font-size: 14px;
        line-height: 20px;
        color: #2d2d2d;
        border-radius: 5px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#catalog-cat-list-pages a:hover,
#catalog-cat-list-pages a.active {
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        color: #1c1917;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#catalog-cat-list .catalog-list-one {
        padding: 0px 0px 15px 0px;
}
#catalog-cat-list .catalog-list-one-img {
        padding: 0px 0px 0px 0px;
        margin: 0% auto;
        margin: 10px auto 12px auto;
        width: 88%;
}
#inner-catalog-one {
        width: 90%;
        padding: 0% 0px 60px 0px;
        margin: 0% auto;
        max-width: 1600px;
}
#inner-catalog-one h1 {
        padding: 0px 0px 26px 0px;
        margin: 0px;
        width: 100%;
        font-family: "geologica-bold";
        font-size: 30px;
        line-height: 32px;
        color: #2d2d2d;
        font-weight: normal;
        text-transform: none;
}
#inner-catalog-one-container {
        width: 100%;
        padding: 0px;
        margin: 0px;
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
        /* рамка вокруг всей карточки осталась от прежней темы — убрана,
           страница товара теперь устроена как страница категории */
        border: none;
}
/* правая колонка: заголовок над галереей и характеристиками,
   слева — то же меню категорий, что и в каталоге */
.inner-catalog-one-main {
        width: 78%;
        flex-basis: 78%;
        padding: 0px;
        margin: 0px 0px 0px 2%;
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
        box-sizing: border-box;
}
.inner-catalog-one-galeries {
        width: auto;
        flex-basis: auto;
        max-width: 58%;
        padding: 0px;
        margin: 0px;
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        /* было flex-wrap: wrap - при ширине окна меньше 1536px галерее не
           хватало 625px (55 миниатюры + 70 отступы + 500 фото), и главное
           фото переносилось под столбик миниатюр. Теперь фото сжимается,
           но остаётся справа от миниатюр на любой ширине. */
        flex-wrap: nowrap;
}
#otherImgSwiper-container {
        position: relative;
        width: 55px;
        flex-grow: 0;
        flex-shrink: 0;
        flex-basis: 55px;
        height: 315px;
        padding: 30px 0px;
        /* было margin: 0px 35px - 70px отступов забирали место у фото */
        margin: 0px 25px;
        order: 1;
}
.otherImgSwiper {
        width: 100%;
        height: 100%;
        padding: 0px;
        margin: 0px;
}
.otherImgSwiper .swiper-wrapper {
}
.otherImgSwiper .swiper-slide {
}
.otherImgSwiper .swiper-slide-block {
        overflow: hidden;
        width: 50px;
        height: 50px;
        padding: 0px;
        margin: 0px;
        border: 2px solid #ffffff;
        cursor: pointer;
}
.otherImgSwiper .swiper-slide.swiper-slide-thumb-active .swiper-slide-block {
        border: 2px solid #eb3f3f;
        cursor: pointer;
}
.otherImgSwiper .swiper-slide-block img {
        display: block;
        max-height: 100%;
        max-width: 100%;
        padding: 0px;
        margin: 0px auto;
        display: block;
}
#otherImgSwiper-container .swiper-other-button-prev {
        position: absolute;
        top: 0px;
        left: 0px;
        width: 100%;
        height: 30px;
        background: url("/themes/default/images/swiper-other-button-prev-3x.png") no-repeat 50% 50%;
        background-size: 15px;
        cursor: pointer;
        opacity: 1.0;
}
#otherImgSwiper-container .swiper-other-button-next {
        position: absolute;
        bottom: 0px;
        right: 0px;
        width: 100%;
        height: 30px;
        background: url("/themes/default/images/swiper-other-button-next-3x.png") no-repeat 50% 50%;
        background-size: 15px;
        cursor: pointer;
        opacity: 1.0;
}
#otherImgSwiper-container .swiper-other-button-prev.swiper-button-disabled,
#otherImgSwiper-container .swiper-other-button-next.swiper-button-disabled {
        opacity: 0.7;
}
#oneImgSwiper-container {
        /* было width/flex-basis: 500px жёстко, из-за чего галерее нужно было
           625px и при меньшей ширине фото уезжало под миниатюры. Базовый
           размер остался 500px, но теперь блок умеет сжиматься. */
        width: auto;
        flex-grow: 0;
        flex-shrink: 1;
        flex-basis: 500px;
        max-width: 500px;
        min-width: 0px;
        position: relative;
        padding: 0px;
        margin: 0px;
        order: 2;
}
.catalog-one-wish {
        position: absolute;
        top: 10px;
        right: 10px;
        width: 34px;
        flex-basis: 34px;
        height: 34px;
        padding: 0px;
        margin: 0px;
        background: #ffffffe1 url("/themes/default/images/catalog-one-wish-3x.png") no-repeat 50% 50%;
        background-size: 17px;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
        z-index: 2;
}
.catalog-one-wish.active,
.catalog-one-wish:hover {
        background: #ffffffe1 url("/themes/default/images/catalog-one-wish-active-3x.png") no-repeat 50% 50%;
        background-size: 17px;
}
#oneImgSwiper-container .swiper-pagination-one {
        position: relative;
        z-index: 3;
        bottom: 20px;
        left: 0;
        width: 100%;
        text-align: center;
}
#oneImgSwiper-container .swiper-slide a img,
#otherImgSwiper-container .swiper-slide .swiper-slide-block img {
        display: block;
        width: 100%;
        height: auto;
        padding: 0px;
        margin: 0px;
}
.oneImgSwiper,
.otherImgSwiper,
.moreSwiper {
        overflow: hidden;
}
.catalog-one-new {
        position: absolute;
        top: 10px;
        left: 10px;
        margin: 0px 0px;
        padding: 5px 10px;
        background: #eb3f3f;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        margin: 0px;
        padding: 0px 5px;
        width: 77px;
        height: 21px;
        font-family: "geologica-medium";
        font-weight: normal;
        font-size: 14px;
        text-align: left;
        color: #1c1917;
        text-transform: uppercase;
        border-radius: 18px;
        -webkit-border-radius: 18px;
        -moz-border-radius: 18px;
        -ms-border-radius: 18px;
        -o-border-radius: 18px;
        z-index: 2;
        text-decoration: none;
}
.inner-catalog-one-description {
        width: 36%;
        flex-basis: 36%;
        padding: 0px;
        margin: 0px 0px 0px 4%;
}
/* У колонки характеристик в default.css стоит overflow:hidden — старый
   клирфикс для флоатов. Он обрезал тень блока «цена и в корзину» справа
   и снизу, потому что блок упирается в край колонки. flow-root держит
   флоаты точно так же, но ничего не обрезает. */
#inner-catalog-one .inner-catalog-one-description {
        display: flow-root;
        overflow: visible;
}
.inner-catalog-one-description h3,
.inner-catalog-one-description h2 {
        padding: 0px;
        margin: 0px 0px 12px 0px;
        font-family: "geologica-medium";
        font-size: 14px;
        line-height: 16px;
        font-weight: normal;
        color: #444444;
        text-transform: none;
}
.catalog-one-description-fields {
        width: 100%;
        padding: 0px 0px 25px 0px;
        margin: 0px 0px 31px 0px;
        border-bottom: 1px solid #F2F2F2;
}
.catalog-one-description-field {
        position: relative;
        width: 100%;
        padding: 0px;
        margin: 0px 0px 7px 0px;
}
.catalog-one-description-field div {
        display: inline-block;
        font-family: "geologica-regular";
        font-size: 13px;
        line-height: 18px;
        color: #888888;
        background-color: #ffffff;
        cursor: pointer;
}
.catalog-one-description-field div span {
        padding: 0px 10px 0px 5px;
        margin: 0px 0px;
}
.catalog-one-description-field p {
        display: block;
        width: 100%;
        height: auto;
        padding: 0px 5px;
        margin: 3px 0px;
        color: #333333;
        font-family: "geologica-regular";
        font-size: 13px;
        line-height: 18px;
}
.catalog-one-description-field .with-note {
        position: relative;
}
.catalog-one-description-field .with-note::before {
        content: "?";
        font-size: 11px;
        line-height: 14px;
        display: flex;
        align-items: center;
        justify-content: center;
        float: left;
        padding: 0px;
        margin: 0px;
        width: 16px;
        flex-basis: 16px;
        height: 16px;
        border: 1px solid #E5E5E5;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
}
.catalog-one-description-field em {
        display: none;
        position: absolute;
        width: 100px;
        bottom: 20px;
        left: 10px;
        margin: 0px;
        padding: 10px;
        background: #eeeeeeec;
        color: #333333;
        font-family: "geologica-regular";
        font-size: 13px;
        line-height: 18px;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
.catalog-one-description-field .with-note:hover em {
        display: block;
}
.catalog-one-description-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 165px;
        height: 40px;
        border:1px solid #F2F2F2;
        padding: 0px;
        margin: 0px 0px 31px 0px;
}
.catalog-one-description-link h4,
.catalog-one-description-link .catalog-one-description-link-title {
        display: block;
        padding: 0px 20px;
        margin: 0px auto;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 21px;
        font-weight: normal;
        text-transform: none;
        color: #222222;
}
.catalog-one-description-link a {
        width: 43px;
        flex-basis: 43px;
        height: 100%;
        padding: 0px;
        margin: 0px;
        display: flex;
        align-items: center;
        justify-content: center;
        text-decoration: none;
        border-left: #f2f2f2 1px solid;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.catalog-one-description-link a img {
        display: block;
        height: auto;
        width: 14px;
        padding: 0px;
        margin: 0px;
}
.catalog-one-description-link a:hover {
        opacity: 0.7;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.inner-catalog-one-additing {
        position: sticky;
        top: 20px;
        width: 100%;
        max-width: 240px;
        padding: 10px;
        /* зазор справа и снизу: блок упирался в край колонки вплотную,
           и тень при прокрутке обрезалась с этих двух сторон */
        margin: 0px 6px 14px auto;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        box-sizing: border-box;
        z-index: 3;
}
.inner-catalog-one-additing.scrolled {
        background: #fafafad5;
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
.inner-catalog-one-additing-price {
        padding: 0px;
        margin: 0px;
        font-family: "geologica-bold";
        font-size: 26px;
        line-height: 30px;
        font-weight: normal;
        color: #1d2029;
}
.inner-catalog-one-additing-available {
        padding: 17px 0px 17px 20px;
        margin: 0px;
        font-family: "geologica-regular";
        font-size: 13px;
        line-height: 15px;
        font-weight: normal;
        color: #666666;
        background: url("/themes/default/images/inner-catalog-one-additing-available-3x.png") no-repeat 0px 50%;
        background-size: 11px;
}
.inner-catalog-one-button {
        width: 127px;
        height: 40px;
        padding: 0px;
        margin: 10px 0px;
        display: flex;
        align-items: center;
        justify-content: center;
        float: none;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 16px;
        font-weight: normal;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.inner-catalog-one-button:hover {
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
        background: linear-gradient(90deg, #eb3f3f 0%, #c93030 100%);
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
#inner-catalog-one-info {
        width: 100%;
        padding: 0px;
        margin: 30px 0px 20px 0px;
}
#inner-catalog-one-info-buttons {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
#inner-catalog-one-info-buttons ul {
        width: 100%;
        padding: 0px;
        margin: 0px;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: wrap;
}
#inner-catalog-one-info-buttons ul li {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0px 26px;
        margin: 0px;
        height: 55px;
        border: 1px solid #F2F2F2;
        font-family: "geologica-bold";
        font-size: 14px;
        line-height: 20px;
        color: #222222;
        cursor: pointer;
}
#inner-catalog-one-info-buttons ul li.active {
        height: 53px;
        border: 1px solid #F2F2F2;
        border-top: 3px solid #eb3f3f;
        font-family: "geologica-bold";
        font-size: 14px;
        line-height: 20px;
        color: #1c1917;
        background-color: #ffffff;
}
.inner-catalog-one-panel {
        display: none;
}
.inner-catalog-one-panel.active {
        display: block;
        width: 100%;
        margin: 0px;
        padding: 10px 0% 65px 0%;
        background: #ffffff;
        border-radius: 0px 38px 38px 38px;
        -webkit-border-radius: 0px 38px 38px 38px;
        -moz-border-radius: 0px 38px 38px 38px;
        -ms-border-radius: 0px 38px 38px 38px;
        -o-border-radius: 0px 38px 38px 38px;
}
.inner-catalog-one-info-panel-text {
        width: 80%;
        margin: 0px 0px;
        padding: 15px 3%;
        color: #616264;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 20px;
}
.inner-catalog-one-info-panel-params {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
.inner-catalog-one-info-panel-params h3,
.inner-catalog-one-info-panel-params h2 {
        margin: 0px 0px;
        padding: 5px 3% 20px 3%;
        color: #383838;
        font-family: "geologica-bold";
        font-size: 20px;
        line-height: 30px;
        font-weight: normal;
        text-transform: none;
}
.inner-catalog-one-info-panel-params-list {
        width: 76.5%;
        padding: 0px;
        margin: 0px;
}
.inner-catalog-one-info-panel-param {
        width: 100%;
        padding: 21px 0px;
        margin: 0px;
        min-height: 15px;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        flex-wrap: wrap;
        background: #F2F2F2;
        color: #222222;
        font-family: "geologica-regular";
        font-size: 13px;
        line-height: 18px;
        border-radius: 5px;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        -ms-border-radius: 5px;
        -o-border-radius: 5px;
}
.inner-catalog-one-info-panel-param:nth-child(even) {
        background: #ffffff;
}
.inner-catalog-one-info-panel-param div {
        width: 42%;
        padding: 0px;
        margin: 0px 4%;
}
.inner-catalog-one-info-panel-param p {
        width: 44%;
        padding: 0px;
        margin: 0px 5% 0px 1%;
}
#inner-catalog-one-more-swiper {
        width: 100%;
        padding: 0px;
        margin: 0px 0px 50px 0px;
        position: relative;
}
#inner-catalog-one-more-swiper h2 {
        margin: 0px 0px;
        padding: 26px 3% 15px 0%;
        color: #383838;
        font-family: "geologica-bold";
        font-size: 20px;
        line-height: 30px;
        font-weight: normal;
        text-transform: none;
}
.inner-catalog-one-panel .inner-feedback {
        width: 100%;
}
.moreSwiper {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
.moreSwiper .more-swiper-block {
        padding: 0px;
        margin: 0px;
}
.moreSwiper .more-swiper-block .catalog-list-one {
        width: 94%;
        padding: 0px 0px 15px 0px;
        margin: 10px auto 10px auto;
}
.swiper-more-button-next {
        position: absolute;
        top: 20px;
        right: 0px;
        display: block;
        width: 31px;
        flex-basis: 31px;
        height: 33px;
        border:1px solid #e5e5e5;
        background: url("/themes/default/images/swiper-more-button-next-3x.png") no-repeat 50% 50%;
        background-size: 8px;
        cursor: pointer;
        opacity: 1.0;
}
.swiper-more-button-prev {
        position: absolute;
        top: 20px;
        right: 33px;
        display: block;
        width: 31px;
        flex-basis: 31px;
        height: 33px;
        border:1px solid #e5e5e5;
        background: url("/themes/default/images/swiper-more-button-prev-3x.png") no-repeat 50% 50%;
        background-size: 8px;
        cursor: pointer;
        opacity: 1.0;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.swiper-more-button-prev.swiper-button-disabled,
.swiper-more-button-next.swiper-button-disabled {
        opacity: 0.7;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#hits-on-main.inner-catalog-search h1 {
        padding: 2px 0px 27px 0px;
        margin: 0px auto;
        width: 98%;
        font-family: "geologica-bold";
        font-size: 30px;
        line-height: 32px;
        color: #2d2d2d;
        font-weight: normal;
        text-transform: none;
}
#hits-on-main.inner-catalog-search {
        padding: 0px;
        margin: 0px 0px 30px 0px;
}
#inner-catalog-basket {
        width: 90%;
        padding: 0% 0px 60px 0px;
        margin: 0% auto;
        max-width: 1600px;
}
/* Удаление товара из корзины: вместо картинки delete.png — SVG-корзина */
#inner-catalog-basket a.delete {
        width: 36px;
        height: 36px;
        padding: 0px;
        margin: 0px auto;
        display: flex;
        align-items: center;
        justify-content: center;
        box-sizing: border-box;
        border: 1px solid #f7f7f7;
        border-radius: 50%;
        background: #ffffff;
        color: #8a8175;
        text-decoration: none;
        transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}
#inner-catalog-basket a.delete svg {
        width: 19px;
        height: 19px;
        display: block;
        overflow: visible;
}
#inner-catalog-basket a.delete:hover {
        border-color: #eb3f3f;
        background: rgb(235,63,63);
        background: linear-gradient(90deg, rgba(235,63,63,1) 0%, rgba(201,48,48,1) 100%);
        color: #1c1917;
}
/* при наведении крышка чуть приподнимается */
#inner-catalog-basket a.delete .basket-del-lid {
        transform-box: fill-box;
        transform-origin: 50% 100%;
        transition: transform 0.2s ease;
}
#inner-catalog-basket a.delete:hover .basket-del-lid {
        transform: translateY(-1.6px) rotate(-9deg);
}
@media (prefers-reduced-motion: reduce) {
        #inner-catalog-basket a.delete,
        #inner-catalog-basket a.delete .basket-del-lid {
                transition: none;
        }
        #inner-catalog-basket a.delete:hover .basket-del-lid {
                transform: none;
        }
}
/* Кнопка «Заказать»: в default.css у input стоит float: right, */
/* а у обёртки нет ничего, что этот float удержит, — высота блока */
/* схлопывалась в ноль, и кнопка наезжала на подвал. */
.catalog_send_button {
        display: flow-root;
        width: 100%;
        padding: 0px;
        margin: 0px;
        box-sizing: border-box;
}
.catalog_send_button:after {
        content: "";
        display: block;
        clear: both;
}
#inner-catalog-basket-container {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
#inner-catalog-basket h1 {
        margin: 0px 0px 0px 0px;
        padding: 0px 0px 30px 0px;
        font-family: "geologica-bold";
        font-size: 30px;
        line-height: 33px;
        color: #333;
        font-weight: normal;
        text-transform: none;
}
.inner-catalog-one-info-panel-feedback-list {
        width: 100%;
        padding: 0px;
        margin: 0px;
}
.inner-catalog-one-info-panel-feedback-list-block {
        padding: 10px 0px 10px 0px;
        margin: 0px 0px 10px 0px;
        border-bottom: 1px dashed #dedefe;
}
.inner-catalog-one-info-panel-feedback-list-user {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        padding: 0px;
        margin: 0px;
}
.inner-catalog-one-info-panel-feedback-list-name {
        padding: 0px 10px 0px 0px;
        margin: 0px;
        color: #1c1917;
}
.inner-catalog-one-info-panel-feedback-list-date {
        color: #dedede;
}
.inner-catalog-one-info-panel-feedback-list-text {
        color: #616264;
}
@media screen and (max-width: 1900px) {
}
@media screen and (max-width: 1850px) {
}
@media screen and (max-width: 1800px) {
}
@media screen and (max-width: 1750px) {
}
@media screen and (max-width: 1700px) {
}
@media screen and (max-width: 1650px) {
}
@media screen and (max-width: 1600px) {
}
@media screen and (max-width: 1500px) {
}
@media screen and (max-width: 1450px) {
}
@media screen and (max-width: 1400px) {
}
@media screen and (max-width: 1350px) {
}
@media screen and (max-width: 1300px) {
        #header-top-menu-container,
        #header-main-container,
        #header-catalog-menu-container,
        #swiper-on-main,
        #swiper-on-main-mobile,
        #cats-on-main-container,
        #hits-on-main-container,
        #advantages-on-main-container,
        #footer-main,
        .inner-feedback,
        #main.main-inner .tetext .static,
        #inner-catalog-all-cats,
        #inner-catalog-cat,
        #inner-catalog-one,
        #inner-catalog-basket {
                width: 96%;
        }
        #footer-law-container {
                display: flex;
                align-items: center;
                justify-content: space-between;
                flex-wrap: wrap;
        }
        #footer-law {
                width: 90%;
        }
        .footer-law-block-1,
        .footer-law-block-2,
        .footer-law-block-3 {
                padding: 0px;
                margin: 0px;
        }
        .footer-main-block-1,
        .footer-main-block-2,
        .footer-main-block-3,
        .footer-main-block-4,
        .footer-main-block-5 {
                width: auto;
                flex-basis: auto;
                padding: 0px;
                margin: 0px;
        }
}
@media screen and (max-width: 1250px) {
}
@media screen and (max-width: 1200px) {
}
@media screen and (max-width: 1100px) {
}
@media screen and (max-width: 1000px) {
        /* на узких экранах шапку перестраивает style-mobile.css:
           там у логотипа свои width/margin/order, поэтому возвращаем
           его в поток, иначе он останется абсолютным поверх шапки */
        #header-main-logo {
                position: static;
                left: auto;
                top: auto;
        }
}

/* ============================================================
   Статические страницы (.static) — «О нас», «Оплата», «Доставка» и т.п.
   В теме были оформлены только h1/h2/h3, а глобальный сброс
   ul{list-style:none;padding:0} убивал маркеры списков. Здесь
   типографика содержимого: абзацы, списки, выделения, ссылки, таблицы.
   ============================================================ */
#main.main-inner .tetext .static h1 {
        margin: 0px 0px 22px 0px;
        padding: 0px;
        line-height: 38px;
}
#main.main-inner .tetext .static h2 {
        margin: 34px 0px 14px 0px;
        padding: 0px;
        line-height: 32px;
}
#main.main-inner .tetext .static h3 {
        margin: 26px 0px 12px 0px;
        padding: 0px;
        font-size: 20px;
        line-height: 28px;
}
#main.main-inner .tetext .static p {
        padding: 0px;
        margin: 0px 0px 16px 0px;
        line-height: 25px;
}
/* ограничение длины строки — на широких мониторах текст не растягивается на всю ширину */
#main.main-inner .tetext .static h2,
#main.main-inner .tetext .static h3,
#main.main-inner .tetext .static p,
#main.main-inner .tetext .static ul,
#main.main-inner .tetext .static ol,
#main.main-inner .tetext .static blockquote {
        max-width: 1000px;
}
#main.main-inner .tetext .static strong,
#main.main-inner .tetext .static b {
        font-family: "geologica-medium";
        font-weight: normal;
        color: #1c1917;
}
#main.main-inner .tetext .static a {
        color: #eb3f3f;
        text-decoration: underline;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#main.main-inner .tetext .static a:hover {
        color: #1c1917;
        text-decoration: none;
}
#main.main-inner .tetext .static ul {
        padding: 0px;
        margin: 0px 0px 20px 0px;
        list-style: none;
}
#main.main-inner .tetext .static ul li {
        position: relative;
        padding: 0px 0px 0px 26px;
        margin: 0px 0px 10px 0px;
        line-height: 25px;
}
#main.main-inner .tetext .static ul li::before {
        content: "";
        position: absolute;
        top: 9px;
        left: 6px;
        width: 7px;
        height: 7px;
        background: linear-gradient(135deg, #fdecec 0%, #eb3f3f 100%);
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
}
#main.main-inner .tetext .static ol {
        padding: 0px;
        margin: 0px 0px 20px 0px;
        list-style: none;
        counter-reset: static-ol;
}
#main.main-inner .tetext .static ol li {
        position: relative;
        padding: 0px 0px 0px 26px;
        margin: 0px 0px 10px 0px;
        line-height: 25px;
        counter-increment: static-ol;
}
#main.main-inner .tetext .static ol li::before {
        content: counter(static-ol) ".";
        position: absolute;
        top: 0px;
        left: 0px;
        font-family: "geologica-medium";
        color: #eb3f3f;
}
#main.main-inner .tetext .static img {
        max-width: 100%;
        height: auto;
}
#main.main-inner .tetext .static iframe {
        display: block;
        width: 100%;
        max-width: 1000px;
        margin: 0px 0px 25px 0px;
        border: 1px solid #fdecec;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
}
/* выделенный блок-рамка внутри статической страницы: адрес, режим работы, важное */
#main.main-inner .tetext .static .info-box {
        width: 100%;
        max-width: 1000px;
        padding: 22px 26px;
        margin: 0px 0px 25px 0px;
        background: #fdecec;
        border: 1px solid #eb3f3f;
        border-radius: 12px;
        -webkit-border-radius: 12px;
        -moz-border-radius: 12px;
        -ms-border-radius: 12px;
        -o-border-radius: 12px;
        box-sizing: border-box;
}
#main.main-inner .tetext .static .info-box p {
        max-width: none;
        margin: 0px 0px 12px 0px;
}
#main.main-inner .tetext .static .info-box p:last-child {
        margin: 0px;
}
/* блок-рамка с иконкой по смыслу: телефон, почта, адрес, ВК.
   Иконки — инлайновые SVG прямо в CSS, чтобы в тексте страницы
   в админке был только класс (визуальный редактор вырезает <svg>). */
#main.main-inner .tetext .static .info-box.ib-phone,
#main.main-inner .tetext .static .info-box.ib-mail,
#main.main-inner .tetext .static .info-box.ib-address,
#main.main-inner .tetext .static .info-box.ib-vk {
        position: relative;
        padding-left: 88px;
        min-height: 46px;
}
#main.main-inner .tetext .static .info-box.ib-phone::before,
#main.main-inner .tetext .static .info-box.ib-mail::before,
#main.main-inner .tetext .static .info-box.ib-address::before,
#main.main-inner .tetext .static .info-box.ib-vk::before {
        content: "";
        position: absolute;
        top: 20px;
        left: 24px;
        width: 44px;
        height: 44px;
        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        -ms-border-radius: 50%;
        -o-border-radius: 50%;
        background-repeat: no-repeat, no-repeat;
        background-position: 50% 50%, 0% 0%;
        background-size: 22px 22px, 100% 100%;
}
#main.main-inner .tetext .static .info-box.ib-phone::before {
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171310' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 1.9.7 2.8a2 2 0 0 1-.5 2.1L8.1 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z'/></svg>"), linear-gradient(135deg, #fdecec 0%, #eb3f3f 100%);
}
#main.main-inner .tetext .static .info-box.ib-mail::before {
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171310' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='2' y='4' width='20' height='16' rx='2'/><path d='M2 7l10 7 10-7'/></svg>"), linear-gradient(135deg, #fdecec 0%, #eb3f3f 100%);
}
#main.main-inner .tetext .static .info-box.ib-address::before {
        background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171310' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z'/><circle cx='12' cy='10' r='3'/></svg>"), linear-gradient(135deg, #fdecec 0%, #eb3f3f 100%);
}
#main.main-inner .tetext .static .info-box.ib-vk::before {
        background-image: url("/themes/default/images/footer-main-soc-1-3x.png");
        background-size: 44px 44px;
        background-position: 50% 50%;
}
@media screen and (max-width: 600px) {
        #main.main-inner .tetext .static .info-box.ib-phone,
        #main.main-inner .tetext .static .info-box.ib-mail,
        #main.main-inner .tetext .static .info-box.ib-address,
        #main.main-inner .tetext .static .info-box.ib-vk {
                padding: 74px 18px 18px 18px;
        }
        #main.main-inner .tetext .static .info-box.ib-phone::before,
        #main.main-inner .tetext .static .info-box.ib-mail::before,
        #main.main-inner .tetext .static .info-box.ib-address::before,
        #main.main-inner .tetext .static .info-box.ib-vk::before {
                top: 18px;
                left: 18px;
        }
}
#main.main-inner .tetext .static blockquote {
        padding: 12px 0px 12px 22px;
        margin: 0px 0px 20px 0px;
        border-left: 3px solid #eb3f3f;
        color: #444444;
        font-style: normal;
}
#main.main-inner .tetext .static table {
        width: 100%;
        /* та же ширина, что у абзацев и блоков-рамок: без этого на широком
           мониторе таблица уезжала на 300px правее текста */
        max-width: 1000px;
        padding: 0px;
        margin: 0px 0px 25px 0px;
        border-collapse: collapse;
        font-size: 15px;
}
#main.main-inner .tetext .static table th {
        padding: 12px 14px;
        text-align: left;
        font-family: "geologica-medium";
        font-weight: normal;
        color: #1c1917;
        line-height: 22px;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        border: 1px solid #eb3f3f;
}
#main.main-inner .tetext .static table td {
        padding: 10px 14px;
        line-height: 22px;
        vertical-align: top;
        border: 1px solid #fdecec;
}
#main.main-inner .tetext .static table tr:nth-child(even) td {
        background: #f7f7f7;
}

/* ============================================================
   Личный кабинет: страницы /my-page, /my-orders (.cabinet)
   Раньше контент выводился без контейнера — прижимался к краю
   окна, а кнопки и вкладки доставались из старой темы (#cc614a).
   ============================================================ */
#main.main-inner .tetext .cabinet {
        width: 90%;
        max-width: 1600px;
        padding: 40px 0px 60px 0px;
        margin: 0px auto;
        font-family: "geologica-regular";
        font-size: 16px;
        color: #222222;
}
#main.main-inner .tetext .cabinet h1 {
        padding: 0px 0px 22px 0px;
        margin: 0px;
        font-family: "geologica-bold";
        font-size: 30px;
        line-height: 34px;
        font-weight: normal;
        color: #2d2d2d;
        text-transform: none;
}
#main.main-inner .tetext .cabinet h2 {
        padding: 0px 0px 18px 0px;
        margin: 34px 0px 0px 0px;
        font-family: "geologica-bold";
        font-size: 22px;
        line-height: 28px;
        font-weight: normal;
        color: #2d2d2d;
        text-transform: none;
}
.cabinet-nav {
        display: flex;
        align-items: center;
        justify-content: flex-start;
        flex-wrap: wrap;
        padding: 0px 0px 12px 0px;
        margin: 0px;
        border-bottom: 1px solid #fdecec;
}
.cabinet-nav a,
.cabinet-nav span {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 42px;
        padding: 0px 22px;
        margin: 0px 10px 8px 0px;
        font-family: "geologica-regular";
        font-size: 15px;
        line-height: 20px;
        color: #525252;
        text-decoration: none;
        text-transform: none;
        background: #ffffff;
        border: 1px solid #fdecec;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.cabinet-nav a:hover {
        color: #1c1917;
        border-color: #eb3f3f;
}
.cabinet-nav span {
        cursor: default;
}
/* .personal и .personal.active остались в default.css от старой темы:
   inline-block, uppercase, padding-bottom и vertical-align. Из-за
   display: inline-block активная вкладка переставала быть flex-боксом,
   align-items: center не работал и текст прилипал к верху плашки. */
.cabinet-nav a.active,
.cabinet-nav span.active {
        display: flex;
        align-items: center;
        justify-content: center;
        color: #1c1917;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        border-color: #eb3f3f;
        padding-bottom: 0px;
        vertical-align: baseline;
        text-transform: none;
}
.cabinet-nav a.logout {
        margin: 0px 0px 8px auto;
        color: #8a8279;
}
.cabinet-nav a.logout:hover {
        color: #1c1917;
}
/* Форма кабинета лежит карточкой: без подложки на широком экране
   она висела в пустоте у левого края. */
#main.main-inner .tetext .cabinet .cabinet-form {
        width: 100%;
        max-width: 780px;
        padding: 26px 34px 32px 34px;
        margin: 30px 0px 0px 0px;
        box-sizing: border-box;
        background: #ffffff;
        border: 1px solid #fdecec;
        border-radius: 14px;
        -webkit-border-radius: 14px;
        -moz-border-radius: 14px;
        -ms-border-radius: 14px;
        -o-border-radius: 14px;
        box-shadow: 0px 4px 18px 0px rgba(34, 60, 80, 0.06);
}
#main.main-inner .tetext .cabinet .cabinet-form table.form-question {
        width: 100%;
        border-collapse: collapse;
}
#main.main-inner .tetext .cabinet .cabinet-form th {
        width: 38%;
        padding: 9px 20px 9px 0px;
        text-align: left;
        vertical-align: middle;
        font-family: "geologica-regular";
        font-weight: normal;
        font-size: 15px;
        line-height: 21px;
        color: #1c1917;
}
#main.main-inner .tetext .cabinet .cabinet-form td {
        width: 62%;
        padding: 9px 0px;
        vertical-align: middle;
}
#main.main-inner .tetext .cabinet .cabinet-form h4 {
        padding: 0px 0px 6px 0px;
        margin: 26px 0px 0px 0px;
        font-family: "geologica-medium";
        font-weight: normal;
        font-size: 17px;
        line-height: 24px;
        color: #1c1917;
        text-transform: none;
}
#main.main-inner .tetext .cabinet .cabinet-form .form-comments {
        padding: 0px;
        margin: 0px;
        font-family: "geologica-light";
        font-size: 14px;
        line-height: 20px;
        color: #7a7264;
}
#main.main-inner .tetext .cabinet .cabinet-form input[type="text"],
#main.main-inner .tetext .cabinet .cabinet-form input[type="password"] {
        float: none;
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding: 12px 14px;
        margin: 0px;
        font-family: "geologica-regular";
        font-size: 15px;
        line-height: 20px;
        color: #333333;
        background: #ffffff;
        border: 2px solid #eb3f3f;
        border-radius: 8px;
        -webkit-border-radius: 8px;
        -moz-border-radius: 8px;
        -ms-border-radius: 8px;
        -o-border-radius: 8px;
}
#main.main-inner .tetext .cabinet .cabinet-form input[type="text"]:focus,
#main.main-inner .tetext .cabinet .cabinet-form input[type="password"]:focus {
        outline: 0;
        outline-offset: 0;
        border-color: #eb3f3f;
        box-shadow: 0px 0px 0px 3px rgba(228, 183, 100, 0.18);
}
/* Chrome красит автозаполненные поля в бледно-жёлтый — из-за этого
   часть полей выглядела иначе, чем остальные. Перебиваем внутренней
   тенью: цвет фона у autofill другим способом не меняется. */
#main.main-inner .tetext .cabinet .cabinet-form input:-webkit-autofill,
#main.main-inner .tetext .cabinet .cabinet-form input:-webkit-autofill:hover {
        -webkit-text-fill-color: #333333;
        -webkit-box-shadow: 0px 0px 0px 1000px #ffffff inset;
        box-shadow: 0px 0px 0px 1000px #ffffff inset;
        transition: background-color 100000s ease-in-out 0s;
}
#main.main-inner .tetext .cabinet .cabinet-form input:-webkit-autofill:focus {
        -webkit-text-fill-color: #333333;
        -webkit-box-shadow: 0px 0px 0px 1000px #ffffff inset, 0px 0px 0px 3px rgba(228, 183, 100, 0.18);
        box-shadow: 0px 0px 0px 1000px #ffffff inset, 0px 0px 0px 3px rgba(228, 183, 100, 0.18);
}
#main.main-inner .tetext .cabinet .cabinet-form-static {
        display: block;
        padding: 12px 0px;
        font-family: "geologica-medium";
        font-size: 15px;
        line-height: 20px;
        color: #1c1917;
}
#main.main-inner .tetext .cabinet .cabinet-form input[type="submit"] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 190px;
        height: 46px;
        padding: 0px;
        margin: 14px 0px 0px 0px;
        font-family: "geologica-medium";
        font-size: 15px;
        color: #1c1917;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        border: none;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        cursor: pointer;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
#main.main-inner .tetext .cabinet .cabinet-form input[type="submit"]:hover {
        background: linear-gradient(90deg, #eb3f3f 0%, #c93030 100%);
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
/* история заказов: каждый заказ — карточка со своей таблицей позиций */
#main.main-inner .tetext .cabinet .my_orders {
        width: 100%;
        padding: 0px;
        margin: 30px 0px 0px 0px;
}
.order-card {
        width: 100%;
        padding: 0px;
        margin: 0px 0px 22px 0px;
        background: #ffffff;
        border: 1px solid #fdecec;
        border-radius: 12px;
        -webkit-border-radius: 12px;
        -moz-border-radius: 12px;
        -ms-border-radius: 12px;
        -o-border-radius: 12px;
        box-sizing: border-box;
        overflow: hidden;
}
.order-card-head {
        padding: 16px 22px;
        margin: 0px;
        font-family: "geologica-regular";
        font-size: 17px;
        line-height: 24px;
        color: #1c1917;
        background: #fdecec;
        border-bottom: 1px solid #fdecec;
}
.order-card-head b {
        font-family: "geologica-medium";
        font-weight: normal;
}
.order-card-body {
        padding: 0px;
        margin: 0px;
        overflow-x: auto;
}
#main.main-inner .tetext .cabinet table.ordercab {
        width: 100%;
        padding: 0px;
        margin: 0px;
        border-collapse: collapse;
        font-size: 14px;
}
#main.main-inner .tetext .cabinet table.ordercab th {
        padding: 12px 18px;
        text-align: left;
        vertical-align: middle;
        font-family: "geologica-medium";
        font-weight: normal;
        font-size: 13px;
        line-height: 18px;
        color: #7a7264;
        text-transform: uppercase;
        background: #ffffff;
        border-bottom: 1px solid #fdecec;
        white-space: nowrap;
}
#main.main-inner .tetext .cabinet table.ordercab td {
        padding: 12px 18px;
        vertical-align: middle;
        font-family: "geologica-regular";
        font-size: 14px;
        line-height: 20px;
        color: #333333;
        border-bottom: 1px solid #f7f7f7;
}
#main.main-inner .tetext .cabinet table.ordercab tr.in_order_content_summ td {
        padding: 16px 18px;
        font-family: "geologica-medium";
        font-size: 15px;
        color: #1c1917;
        background: #fdecec;
        border-bottom: none;
        border-top: 1px solid #fdecec;
}
#main.main-inner .tetext .cabinet .orders-empty {
        padding: 22px 26px;
        margin: 0px;
        max-width: 760px;
        box-sizing: border-box;
        font-size: 16px;
        line-height: 23px;
        color: #525252;
        background: #fdecec;
        border: 1px solid #eb3f3f;
        border-radius: 12px;
        -webkit-border-radius: 12px;
        -moz-border-radius: 12px;
        -ms-border-radius: 12px;
        -o-border-radius: 12px;
}
#main.main-inner .tetext .cabinet .red {
        padding: 14px 18px;
        margin: 0px 0px 20px 0px;
        max-width: 760px;
        box-sizing: border-box;
        color: #a12d2d;
        background: #fdf3f3;
        border: 1px solid #e8bcbc;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
}
#main.main-inner .tetext .cabinet .cabinet-form textarea {
        float: none;
        display: block;
        width: 100%;
        height: 90px;
        box-sizing: border-box;
        padding: 12px 14px;
        margin: 0px;
        font-family: "geologica-regular";
        font-size: 15px;
        line-height: 20px;
        color: #333333;
        background: #ffffff;
        border: 2px solid #eb3f3f;
        border-radius: 8px;
        -webkit-border-radius: 8px;
        -moz-border-radius: 8px;
        -ms-border-radius: 8px;
        -o-border-radius: 8px;
        resize: vertical;
}
#main.main-inner .tetext .cabinet .cabinet-form textarea:focus {
        outline: 0;
        outline-offset: 0;
}
/* шаг 1 регистрации: выбор формы регистрации радиокнопками */
#main.main-inner .tetext .cabinet .cabinet-form > p {
        padding: 0px;
        margin: 0px 0px 12px 0px;
        font-size: 16px;
        line-height: 22px;
}
#main.main-inner .tetext .cabinet .cabinet-form > p label {
        cursor: pointer;
        padding: 0px 0px 0px 6px;
}
#main.main-inner .tetext .cabinet .cabinet-form > p label b {
        font-family: "geologica-regular";
        font-weight: normal;
        color: #1c1917;
}
/* страница входа: сообщение об ошибке и ссылка «забыли пароль» */
#main.main-inner .tetext .cabinet .auth-message:empty {
        display: none;
}
#main.main-inner .tetext .cabinet .auth-message {
        padding: 14px 18px;
        margin: 0px 0px 24px 0px;
        max-width: 760px;
        box-sizing: border-box;
        font-size: 15px;
        line-height: 21px;
        color: #a12d2d;
        background: #fdf3f3;
        border: 1px solid #e8bcbc;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
}
#main.main-inner .tetext .cabinet .auth-message a {
        color: #a12d2d;
}
#main.main-inner .tetext .cabinet .login-forgot {
        padding: 0px;
        margin: 14px 0px 0px 0px;
        font-family: "geologica-light";
        font-size: 14px;
        line-height: 20px;
}
#main.main-inner .tetext .cabinet .login-forgot a {
        color: #8a8279;
        text-decoration: underline;
}
#main.main-inner .tetext .cabinet .login-forgot a:hover {
        color: #1c1917;
        text-decoration: none;
}
@media screen and (max-width: 700px) {
        #main.main-inner .tetext .cabinet .cabinet-form th,
        #main.main-inner .tetext .cabinet .cabinet-form td {
                display: block;
                width: 100%;
                padding: 0px;
        }
        #main.main-inner .tetext .cabinet .cabinet-form th {
                padding: 14px 0px 6px 0px;
        }
        #main.main-inner .tetext .cabinet .cabinet-form {
                padding: 18px 18px 24px 18px;
        }
        .cabinet-nav a.logout {
                margin: 0px 0px 8px 0px;
        }
}

/* ============================================================
   Личный кабинет: вход / регистрация (.need_register)
   Легаси-разметка + CSS из default.css конфликтовали (два
   разных набора правил для .need_register_right/#login_log
   с разной специфичностью), из-за чего поля растягивались на
   всю ширину и половина блока визуально "терялась". Здесь
   переопределяем их одним чистым набором под черно-золотую тему.
   ============================================================ */
.need_register {
        width: 100%;
        padding: 20px 0px 40px 0px;
        margin: 0px;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        flex-wrap: wrap;
}
.need_register_left,
.need_register_right {
        width: 47% !important;
        flex-basis: 47%;
        margin: 0px !important;
        float: none !important;
        box-sizing: border-box;
}
.need_register h4 {
        padding: 0px 0px 10px 0px;
        margin: 0px;
        font-family: "geologica-regular";
        font-size: 20px;
        font-weight: normal;
        color: #1c1917;
}
.need_register p {
        padding: 0px;
        margin: 0px 0px 15px 0px;
        font-family: "geologica-light";
        font-size: 15px;
        line-height: 22px;
        color: #525252;
}
.need_register a.button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: auto;
        height: 45px;
        padding: 0px 25px;
        margin: 0px;
        background: linear-gradient(90deg, #1c1917 0%, #292524 100%);
        color: #ffffff;
        font-family: "geologica-light";
        font-size: 15px;
        text-decoration: none;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.need_register a.button:hover {
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        color: #1c1917;
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
.need_register_right .login {
        width: 100%;
        margin: 0px !important;
}
#login_log,
#login_passw,
.need_register_right .input_password {
        display: block !important;
        float: none !important;
        width: 100% !important;
        box-sizing: border-box !important;
        padding: 12px 4% !important;
        margin: 0px 0px 12px 0px !important;
        font-family: "geologica-regular";
        font-size: 15px;
        color: #333333;
        background: #ffffff !important;
        border: 2px solid #eb3f3f !important;
        border-radius: 8px !important;
        -webkit-border-radius: 8px !important;
        -moz-border-radius: 8px !important;
        -ms-border-radius: 8px !important;
        -o-border-radius: 8px !important;
}
#login_log:focus,
#login_passw:focus {
        outline: 0;
        outline-offset: 0;
}
.need_register_right .login input[type="submit"] {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 160px;
        height: 42px;
        padding: 0px;
        margin: 5px 0px 0px 0px;
        background: linear-gradient(90deg, #fdecec 0%, #eb3f3f 100%);
        color: #1c1917;
        font-family: "geologica-medium";
        font-size: 15px;
        border: none;
        border-radius: 10px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        -ms-border-radius: 10px;
        -o-border-radius: 10px;
        cursor: pointer;
        text-decoration: none;
        transition: all 300ms ease-out;
        -webkit-transition: all 300ms ease-out;
        -moz-transition: all 300ms ease-out;
        -ms-transition: all 300ms ease-out;
        -o-transition: all 300ms ease-out;
}
.need_register_right .login input[type="submit"]:hover {
        background: linear-gradient(90deg, #eb3f3f 0%, #c93030 100%);
        -webkit-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        -moz-box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
        box-shadow: 0px 0px 8px 2px rgba(34, 60, 80, 0.2);
}
@media screen and (max-width: 700px) {
        .need_register_left,
        .need_register_right {
                width: 100% !important;
                flex-basis: 100%;
                margin: 0px 0px 25px 0px !important;
        }
}

/* ============================================================
   Согласие на обработку персональных данных.
   Блок одинаковый во всех формах: заказ звонка, оформление заказа,
   обратная связь, регистрация.
   ============================================================ */
.pdn-agree {
        width: 100%;
        padding: 14px 0px 4px 0px;
        margin: 0px;
        box-sizing: border-box;
        font-family: "geologica-regular";
        font-size: 13px;
        line-height: 18px;
        color: #6b6259;
        text-align: left;
}
.pdn-agree label {
        display: flex;
        align-items: flex-start;
        gap: 9px;
        cursor: pointer;
        margin: 0px;
        padding: 0px;
        font-weight: normal;
}
.pdn-agree input[type="checkbox"] {
        flex: 0 0 auto;
        width: 16px;
        height: 16px;
        margin: 1px 0px 0px 0px;
        padding: 0px;
        accent-color: #c93030;
        cursor: pointer;
}
.pdn-agree span {
        display: block;
}
.pdn-agree a {
        color: #1c1917;
        text-decoration: none;
        border-bottom: 1px solid #eb3f3f;
}
.pdn-agree a:hover {
        color: #c93030;
}
/* подсветка, когда галочку не поставили: ставится из pdn.js */
.pdn-agree.pdn-agree-error {
        padding: 10px 12px;
        margin: 10px 0px 0px 0px;
        background: #fdf3f3;
        border: 1px solid #e3b4b4;
        border-radius: 8px;
        color: #a33a3a;
}
.pdn-agree.pdn-agree-error a {
        color: #a33a3a;
        border-bottom-color: #d58c8c;
}
/* в модалке «Заказать звонок» блок идёт отдельной строкой над кнопкой */
#show_form .pdn-agree,
.show_form_page .pdn-agree {
        padding: 2px 0px 18px 0px;
        font-size: 12.5px;
        line-height: 17px;
}
/* в узком окне ссылка переносится по словам, поэтому чуть больше
   воздуха между галочкой и текстом и подчёркивание не вплотную */
#show_form .pdn-agree label,
.show_form_page .pdn-agree label {
        gap: 10px;
}
#show_form .pdn-agree a,
.show_form_page .pdn-agree a {
        padding-bottom: 1px;
}
/* подсветка ошибки: без этого правила её отступы проигрывают
   селектору с id выше, и текст упирается в рамку */
#show_form .pdn-agree.pdn-agree-error,
.show_form_page .pdn-agree.pdn-agree-error {
        padding: 11px 13px;
        margin: 0px 0px 18px 0px;
}

/* ============================================================
   Согласие под формой подписки в подвале.
   Разметку не трогаем: метка оборачивает чекбокс и текст, между
   ними ещё ссылка. Поэтому flex не годится — он разорвал бы текст
   на три колонки вокруг ссылки. Делаем висячий отступ: чекбокс
   вынут из потока влево, все строки текста выровнены по одной линии.
   ============================================================ */
#footer-main-mailing .form_accept_area {
        display: block;
        position: relative;
        width: 100%;
        padding: 0px 0px 0px 23px;
        margin: 12px 0px 0px 0px;
        box-sizing: border-box;
        cursor: pointer;
        font-family: "open-sans-regular";
        font-size: 11px;
        line-height: 16px;
        color: #9a9285;
}
#footer-main-mailing .form_accept_area .form_accept {
        position: absolute;
        left: 0px;
        top: 1px;
        width: 14px;
        height: 14px;
        padding: 0px;
        margin: 0px;
        accent-color: #c93030;
        cursor: pointer;
}
/* ссылка была белой и сливалась с текстом согласия; в подвале
   ссылки золотые — приводим к общему виду */
#footer-main-mailing .form_accept_area a {
        color: #eb3f3f;
        text-decoration: none;
        border-bottom: 1px solid rgba(228, 183, 100, 0.45);
}
#footer-main-mailing .form_accept_area a:hover {
        color: #c93030;
        border-bottom-color: rgba(201, 147, 56, 0.7);
}

/* ============================================================
   Скругление баннера на главной.
   Мобильный баннер скруглён давно (style-mobile.css, до 700px,
   радиус 10px), десктопный оставался прямоугольным. Радиус 15px —
   такой же, как у карточек категорий и товаров ниже на этой же
   странице, чтобы блоки читались одной серией.
   Скругляется картинка, а не блок: у .main-swiper-block-info нет
   своего фона, и overflow: hidden на блоке только создал бы риск
   срезать текст поверх баннера на узких экранах.
   ============================================================ */
.main-swiper-img {
        border-radius: 15px;
        -webkit-border-radius: 15px;
        -moz-border-radius: 15px;
        -ms-border-radius: 15px;
        -o-border-radius: 15px;
}

/* ============================================================
   Новинки, хиты и распродажа в подвале — золотым.
   В колонке «Каталог» они стоят первыми и последним, и без цвета
   терялись среди обычных категорий.
   ============================================================ */
.footer-main-block-1 ul li.footer-nav-accent a {
        color: #eb3f3f;
}
.footer-main-block-1 ul li.footer-nav-accent a:hover {
        color: #ffffff;
}

/* ============================================================
   Старая цена на карточке товара.
   Движок отдаёт её в %show_discount_price% только тогда, когда
   у товара задана цена до скидки, поэтому у обычных товаров
   строка просто не появляется.
   ============================================================ */
.catalog-list-one-price .old_price {
        margin-right: 9px;
        font-family: "geologica-light";
        font-size: 15px;
        color: #9a9285;
        text-decoration: line-through;
        text-decoration-color: #c9bfae;
}
/* Старая цена на странице товара. Текущая цена там 26px, поэтому
   зачёркнутая крупнее каталожной (там 15px при цене 18px). */
.inner-catalog-one-additing-price .old_price {
        margin-right: 12px;
        font-family: "geologica-light";
        font-size: 19px;
        color: #9a9285;
        text-decoration: line-through;
        text-decoration-color: #c9bfae;
}

/* ============================================================
   Омни-виджет и баннер cookie не должны налезать друг на друга.
   Баннер прибит к низу экрана (position: fixed, z-index 1000),
   виджет стоит в том же углу на z-index 19 — без этого правила
   робота наполовину срезает баннером, пока посетитель не ответит
   про cookie.
   Пока баннер показан (класс add_cookie_show), поднимаем виджет
   над ним. Высота баннера зависит от длины текста и ширины экрана:
   67px на десктопе, 121px до 760px, 138px до 520px и 155px уже 414px -
   отсюда три значения (третье в блоке max-width: 500px в конце файла).
   Селектор с id перебивает инлайновый <style> виджета, который
   задаёт --eo-y классом.
   ============================================================ */
#add_cookie_banner.add_cookie_show ~ .eo-omni {
        --eo-y: 93px;
}
@media screen and (max-width: 760px) {
        #add_cookie_banner.add_cookie_show ~ .eo-omni {
                --eo-y: 154px;
        }
}

/* до 500px карточка занимает всю ширину: две в ряд уже не помещаются,
   а одна узкая посреди экрана смотрелась сиротливо */
@media screen and (max-width: 500px) {
        /* id в селекторе обязателен: выше в файле у карточки задана ширина
           правилом #catalog-cat-list .catalog-list-one, а медиазапрос
           специфичности не добавляет — без id он проигрывает */
        .catalog-list-one,
        #catalog-cat-list .catalog-list-one,
        #hits-on-main.inner-catalog-search .catalog-list-one {
                width: 100%;
                flex-basis: 100%;
                margin-left: 0px;
                margin-right: 0px;
        }
        /* #inner-catalog-all-cats-list в разметке нет: контейнер списка
           категорий называется .catalog-all-cats-list, и правило до него
           не доходило */
        #cats-on-main-list,
        #hits-on-main-list,
        .catalog-all-cats-list,
        #catalog-cat-list {
                grid-template-columns: 1fr;
        }
        .catalog-list-one-title {
                height: auto;
                min-height: 0px;
                max-height: none;
                -webkit-line-clamp: 3;
        }
        /* на узком экране текст баннера cookie занимает на строку больше
           (155px вместо 138), и виджет снова упирался в него - поднимаем */
        #add_cookie_banner.add_cookie_show ~ .eo-omni {
                --eo-y: 172px;
        }
        #show_form {
                left: 50%;
                width: 90%;
                max-width: 420px;
                margin: 0px;
                transform: translateX(-50%);
                -webkit-transform: translateX(-50%);
                -moz-transform: translateX(-50%);
                -ms-transform: translateX(-50%);
                -o-transform: translateX(-50%);
                top: 70px;
                max-height: calc(100vh - 100px);
        }
}


/* ============================================================
   Палитра темы default — Terracotta + Cream (2026.10).
   Тёплая палитра с ассоциацией крафта/мебели.
  Terracotta #eb3f3f — основной акцент (кнопки, ссылки, активные элементы)
   Cream     #fdecec — мягкий фон, секции, подложки
   Stone-900 #1c1917 — основной текст (нейтральный тёмный, не коричневый)
   Сам eo-kit.css не правим: он подключён ВЫШЕ, а тут те же
   правила :root перекрывают его значения по умолчанию.
   Ставить новую тему — переписать только этот блок.
   --eo-accent и --eo-accent-hover общие с модулем 06.
   ============================================================ */
:root {
        --eo-accent: #eb3f3f;
        --eo-accent-hover: #9a3412;
        --eo-accent-disabled: #fdecec;
        --eo-accent-soft: #fdecec;
        --eo-accent-text: #7c2d12;
        --eo-text: #1c1917;
        --eo-muted: #78716c;
        --eo-soft: #fdecec;
        --eo-soft-hover: #fdecec;
        --eo-line: #fdecec;
        --eo-overlay: rgba(28, 25, 23, .55);
        --eo-radius: 14px;
        --eo-radius-sm: 8px;
}

/* ------------------------------------------------------------------
   Панель «Поделиться» из eo-kit (модуль 07) выводится внутри блока
   .catalog-one-description-link, а правило «.catalog-one-description-link a»
   выше задаёт ссылкам ширину 43 px, display:flex и нулевые отступы —
   оно специфичнее (.класс + тег), чем .eo-sh из кита, и кнопки панели
   схлопывались друг на друга. Возвращаем оформление кита только внутри
   панели; сама кнопка «Поделиться» остаётся как была.
   ------------------------------------------------------------------ */
.catalog-one-description-link .eo-share a {
        width: auto;
        flex-basis: auto;
        height: auto;
        display: inline-block;
        padding: 7px 14px;
        margin: 0;
        border-left: 0;
}
.catalog-one-description-link .eo-share a img { display: none; }
