#shop-basket ul {
    margin: 0;
    padding: 0;
    text-align: left;
    list-style: none
}

/* Пилотная плашка 14+ в характеристиках карточки товара. */
.page--shop-entry .details-list--big .product-age-warning-item {
    display: block;
    width: 100%;
    margin: 16px 0 18px;
    padding: 0;
    border: 0;
}

.page--shop-entry .product-age-warning {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding: 12px 14px;
    border: 1px solid rgba(155, 0, 0, 0.24);
    border-left: 4px solid #9b0000;
    border-radius: 4px;
    background: #fff8f8;
    color: #2b2b2b;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.4;
}

.page--shop-entry .product-age-warning strong {
    color: #9b0000;
    font-size: 17px;
    font-weight: 800;
    white-space: nowrap;
}

/* В трёхколоночной раскладке растягиваем плашку в свободную область под блоком цены. */
@media only screen and (min-width: 1192px) {
    .page--shop-entry .details-list--big .product-age-warning-item {
        position: relative;
        z-index: 2;
    }

    .page--shop-entry .product-age-warning {
        width: calc(200% + 1rem);
        max-width: none;
    }
}

@media only screen and (max-width: 520px) {
    .page--shop-entry .details-list--big .product-age-warning-item {
        margin: 14px 0 16px;
    }

    .page--shop-entry .product-age-warning {
        padding: 11px 12px;
        font-size: 14px;
    }

    .page--shop-entry .product-age-warning strong {
        font-size: 16px;
    }
}

/* Две сравниваемые компоновки существуют только у пилотной карточки товара. */
.page--shop-entry .product-pilot-recommendations--sell,
.page--shop-entry .product-pilot-brand--sell {
    display: none;
}

@media only screen and (min-width: 1192px) {
    .page--shop-entry .product__row--pilot-v1 .product__info,
    .page--shop-entry .product__row--pilot-v2 .product__info {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 34%;
        flex: 0 0 34%;
        max-width: 34%;
    }

    .page--shop-entry .product__row--pilot-v1 .product__sell,
    .page--shop-entry .product__row--pilot-v2 .product__sell {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 16%;
        flex: 0 0 16%;
        max-width: 16%;
    }

    .page--shop-entry .product__row--pilot-v1 .product-age-warning,
    .page--shop-entry .product__row--pilot-v2 .product-age-warning {
        width: 100%;
        padding-right: 8px;
        padding-left: 8px;
    }

    /* Вариант 1: ссылки и сервисные кнопки располагаются под кнопками покупки. */
    .page--shop-entry .product__row--pilot-v1 .product-pilot-recommendations--info {
        display: none;
    }

    .page--shop-entry .product__row--pilot-v1 .product-pilot-recommendations--sell {
        display: block;
        margin-top: 14px;
        font-size: 14px;
        line-height: 1.45;
    }

    .page--shop-entry .product__row--pilot-v1 .product-pilot-recommendations--sell > div + div {
        margin-top: 8px;
    }

    .page--shop-entry .product__row--pilot-v1 .product-pilot-recommendations--sell .product-service-links {
        align-items: stretch;
    }

    .page--shop-entry .product__row--pilot-v1 .product-pilot-recommendations--sell .product-service-link {
        box-sizing: border-box;
        width: 100%;
        justify-content: center;
        padding-right: 12px;
        padding-left: 12px;
        font-size: 16px;
        text-align: center;
    }

    .page--shop-entry .product__row--pilot-v1 .product__controls {
        padding: 16px;
    }

    .page--shop-entry .product__row--pilot-v1 .product__buttons {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }

    .page--shop-entry .product__row--pilot-v1 .product__buttons > div {
        width: 100%;
        margin: 0;
    }

    .page--shop-entry .product__row--pilot-v1 .product__buttons .basket.add {
        box-sizing: border-box;
        width: 100%;
        min-height: 52px;
        margin: 0;
        padding: 0 16px;
        border: 0;
        border-radius: 10px;
        background: #f0ad4e;
        color: #1f252b;
        box-shadow: none;
        font-size: 18px;
        font-weight: 500;
        text-transform: none;
    }

    .page--shop-entry .product__row--pilot-v1 .product__buttons .wish {
        box-sizing: border-box;
        display: flex;
        width: 100%;
        height: 52px;
        margin: 0;
        border-radius: 10px;
        background: #fff;
        color: #f0ad4e;
        box-shadow: 0 0 0 2px #f0ad4e;
        font-size: 22px;
    }

    .page--shop-entry .product__row--pilot-v1 .product__buttons .wish::after {
        position: static;
        padding-left: 10px;
        color: inherit;
        font-size: 16px !important;
        transform: none;
    }

    .page--shop-entry .product__row--pilot-v1 .product__buttons .wish.wdel {
        color: #613d7c;
        box-shadow: 0 0 0 2px #613d7c;
    }

    /* Вариант 2: бренд и артикул перемещаются над ценой, характеристики поднимаются вверх. */
    .page--shop-entry .product__row--pilot-v2 .product-pilot-brand--info {
        display: none;
    }

    .page--shop-entry .product__row--pilot-v2 .product-pilot-brand--sell {
        display: block;
        margin-bottom: 14px;
    }

    .page--shop-entry .product__row--pilot-v2 .product-pilot-brand--sell .product__brand {
        margin-bottom: 12px;
        padding-bottom: 12px;
    }

    .page--shop-entry .product__row--pilot-v2 .product-pilot-brand--sell .product__artno {
        margin-bottom: 0;
    }
}

/* BEGIN Codex: branded pilot product descriptions, scoped to .mode-description */
/* Modellisimo product descriptions: Precision Scale + Collector's Garage */
.product__description .mode-description {
    color: #1C1F24;
    font-family: Roboto, Arial, sans-serif;
    letter-spacing: 0;
}

.product__description .mode-description__section {
    margin: 30px 0;
}

.product__description .mode-description__eyebrow,
.product__description .mode-description__notice-title {
    color: #9b0000;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .09em;
    line-height: 1.3;
}

.product__description .mode-description__eyebrow {
    margin: 0 0 7px;
}

.product__description .mode-description h2 {
    margin: 0 0 16px;
    padding: 0 0 12px;
    border-bottom: 1px solid #9b0000;
    color: #1C1F24;
    font-size: 21px;
    font-weight: 700;
    line-height: 1.25;
}

.product__description .mode-description p {
    margin: 0 0 14px;
    color: #3A3F46;
    font-size: 15px;
    line-height: 1.62;
}

.product__description .mode-description table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    border-top: 1px solid #D0D3D8;
    font-size: 14px;
}

.product__description .mode-description td {
    padding: 10px 12px;
    border-bottom: 1px solid #D0D3D8;
    vertical-align: top;
}

.product__description .mode-description td:first-child {
    width: 42%;
    color: #1C1F24;
    font-weight: 600;
}

.product__description .mode-description tr:nth-child(odd) td {
    background: #F4F5F7;
}

.product__description .mode-description__notice {
    margin: 34px 0;
    padding: 20px 22px;
    border-left: 4px solid #9b0000;
    background: #F4F5F7;
}

.product__description .mode-description__notice-title {
    margin: 0 0 9px;
}

.product__description .mode-description__notice p {
    margin: 0;
    color: #1C1F24;
}

.product__description .mode-description ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.product__description .mode-description li {
    position: relative;
    margin: 0 0 10px;
    padding-left: 20px;
    color: #3A3F46;
    line-height: 1.5;
}

.product__description .mode-description li::before {
    position: absolute;
    left: 0;
    top: .55em;
    width: 7px;
    height: 7px;
    background: #9b0000;
    content: "";
}

@media (max-width: 767px) {
    .product__description .mode-description h2 { font-size: 19px; }
    .product__description .mode-description td { padding: 9px 8px; }
    .product__description .mode-description td:first-child { width: 46%; }
    .product__description .mode-description__notice { padding: 17px 16px; }
}

/* END Codex: branded pilot product descriptions */

#shop-basket li {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0.5rem;
    padding-left: 0 !important
}

#shop-basket .basket-item-icon {
    flex-shrink: 0
}

#shop-basket .basket-item-icon img {
    object-fit: contain;
    width: 60px;
    height: 45px
}

#shop-basket .basket-item-name {
    flex-grow: 2;
    margin: 0 7px
}

#shop-basket .basket-item-name .cost {
    opacity: 0.5
}

#shop-basket .basket-item-func i {
    cursor: pointer;
    outline: none;
    font-size: 0.8rem;
    color: #d2cece
}

#shop-basket .basket-item-func i.fa-remove:hover {
    color: red
}

#shop-basket .empty {
    text-align: center
}

#shop-basket .total {
    font-weight: bold
}

#shop-basket .disc,
#shop-basket .total,
#shop-basket .order {
    text-align: right
}

#shop-basket .info {
    font-style: italic
}


.pagination{
    /*    width: 500px;*/
    overflow: auto;
}


.product-one__button_all{
    margin-right: 1rem;
}

@media(max-width:992px){

    .pagination{
        width:300px;
    }
}

/** moved from /files/my.css **/

.icon{
    width: 1.6rem;
    height: 1.6rem;
    margin-right:0.8rem;
    background-size:100%;
}

.personal-menu {
    position: relative;
}

.personal-menu__dropdown {
    width: 260px;
    max-width: calc(100vw - 24px);
    margin-top: 10px;
    border-radius: 6px;
    border: 1px solid #d8d8d8;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
    overflow: hidden;
    left: auto;
    right: 0;
}

.personal-menu__hello {
    display: block;
    padding: 12px 16px 10px;
    font-size: 15px;
    font-weight: 600;
    color: #2f343a;
    border-bottom: 1px solid #ececec;
    background: #fff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.25;
}

.personal-menu__dropdown .dropdown-item {
    display: block;
    padding: 11px 16px;
    font-size: 17px;
    line-height: 1.2;
    color: #2f343a;
    text-decoration: none;
    background: #fff;
}

.personal-menu__dropdown .dropdown-item:hover {
    background: #f5f7fa;
    text-decoration: none;
}

.order-card-page .section__inner {
    max-width: 100%;
}

.order-card-page__title {
    font-size: 28px;
    font-weight: 300;
    margin: 20px 0 16px;
}

.order-card-page__subtitle {
    font-size: 28px;
    font-weight: 300;
    margin: 20px 0 10px;
}

.order-card-box {
    background: #fff;
    padding: 24px 26px;
}

.order-card-error {
    font-size: 18px;
    color: #b94a48;
}

.order-card-actions {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-top: 14px;
}

.order-card-actions__print {
    color: #e39b35;
    font-weight: 500;
    text-transform: uppercase;
}

.order-card-actions__print:hover {
    color: #d68a1e;
}

.order-delivery-pay {
    display: flex;
    justify-content: space-between;
    gap: 24px;
}

.order-delivery-pay__text {
    flex: 1 1 auto;
    max-width: 78%;
}

.order-delivery-pay__title {
    font-size: 18px;
    font-weight: 600;
    margin: 0 0 6px;
}

.order-delivery-pay__description {
    font-size: 16px;
    line-height: 1.45;
    margin: 0 0 14px;
}

.order-delivery-pay__tax {
    flex: 0 0 auto;
}

.order-delivery-pay__tax form {
    display: flex;
    align-items: center;
    gap: 8px;
}

.order-delivery-pay__tax input[type="text"] {
    min-width: 150px;
}

.order-card-page .order-total__item {
    margin-bottom: 8px;
}

.order-total__status-message {
    margin-top: 28px;
    font-size: 34px;
    font-weight: 800;
    line-height: 1.1;
    display: block;
    color: #2f2f2f;
}

.order-total__status-message--paid {
    color: #2e9e44 !important;
}

.order-total__status-message--cancelled {
    color: #d32f2f !important;
}

.order-card-page .order-info-date {
    background: #e6e6e6;
    margin-top: 0;
    padding: 26px;
    font-size: 16px;
}

.order-card-page .checkout__aside--block {
    margin-top: 28px;
}

.order-card-page .checkout__aside--order,
.order-card-page #tinkoffPay.checkout__aside--order {
    display: block;
    width: 100%;
    min-height: 72px;
    padding: 18px 32px;
    border: 0;
    border-radius: 8px;
    background: #2e9e44;
    color: #fff;
    font-size: 32px;
    font-weight: 700;
    line-height: 1.1;
    text-transform: uppercase;
    text-align: center;
    box-shadow: 0 10px 24px rgba(46, 158, 68, 0.24);
    transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.order-card-page .checkout__aside--order:hover,
.order-card-page #tinkoffPay.checkout__aside--order:hover {
    background: #27873a;
    box-shadow: 0 14px 28px rgba(39, 135, 58, 0.28);
    transform: translateY(-1px);
}

.order-card-page .checkout__aside--order:disabled,
.order-card-page #tinkoffPay.checkout__aside--order:disabled {
    background: #bdbdbd;
    color: #fff;
    box-shadow: none;
    cursor: not-allowed;
    transform: none;
    opacity: 1;
}

@media (max-width: 1199px) {
    .order-card-page__title {
        font-size: 26px;
    }

    .order-card-page__subtitle {
        font-size: 24px;
    }

    .order-delivery-pay__title {
        font-size: 18px;
    }

    .order-delivery-pay__description {
        font-size: 16px;
    }
}

@media (max-width: 991px) {
    .order-card-page__title {
        font-size: 22px;
    }

    .order-card-page__subtitle {
        font-size: 21px;
    }

    .order-delivery-pay {
        flex-direction: column;
    }

    .order-delivery-pay__text {
        max-width: 100%;
    }

    .order-delivery-pay__title {
        font-size: 17px;
    }

    .order-delivery-pay__description {
        font-size: 15px;
    }

    .order-total__status-message {
        margin-top: 20px;
        font-size: 30px;
    }

    .order-card-page .checkout__aside--order,
    .order-card-page #tinkoffPay.checkout__aside--order {
        min-height: 64px;
        font-size: 26px;
        padding: 16px 24px;
    }
}

/* Мобильный личный кабинет: компактный вход без второго заголовка и узкой карточки. */
@media (max-width: 767px) {
    .page__content:has(.personal-auth-page),
    .page__content:has(.personal-auth-page) * {
        box-sizing: border-box;
    }

    .page__content:has(.personal-auth-page) {
        max-width: 100%;
        overflow-x: hidden;
    }

    .page__content:has(.personal-auth-page) .section__inner,
    .page__content:has(.personal-auth-page) .section__content {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0;
    }

    .page__content:has(.personal-auth-page) .breadcrumbs,
    .page__content:has(.personal-auth-page) .section__title {
        display: none;
    }

    .personal-auth-page {
        width: 100%;
        min-height: 0;
        align-items: flex-start;
        padding: 14px 10px 24px;
    }

    .personal-auth-card {
        width: 100%;
        max-width: 100%;
        padding: 20px 16px 18px;
        border-radius: 10px;
    }

    .personal-auth-title {
        margin-bottom: 6px;
        font-size: 27px;
        line-height: 1.18;
    }

    .personal-auth-subtitle {
        margin-bottom: 16px;
        font-size: 14px;
        line-height: 1.4;
    }

    .personal-auth-errors {
        margin-bottom: 14px;
    }

    .personal-auth-field {
        margin-bottom: 12px;
    }

    .personal-auth-input {
        height: 44px;
        padding: 0 12px;
        font-size: 16px;
    }

    .personal-auth-submit {
        height: 46px;
        margin-top: 2px;
        font-size: 16px;
    }

    .personal-auth-links {
        flex-direction: row !important;
        gap: 8px;
        margin-top: 10px;
    }

    .personal-auth-link-btn {
        width: auto !important;
        min-width: 0;
        min-height: 38px;
        flex: 1 1 128px;
        padding: 0 10px;
        font-size: 13px;
        line-height: 1.15;
        text-align: center;
    }

    .personal-auth-note {
        margin-top: 10px;
        font-size: 13px;
        line-height: 1.3;
    }

    .page__content:has(.personal-auth-page) .personal-auth-page {
        min-height: 0;
        align-items: flex-start;
        padding: 14px 10px 24px;
    }

    .page__content:has(.personal-auth-page) .personal-auth-card {
        width: 100%;
        max-width: 100%;
        padding: 20px 16px 18px;
        border-radius: 10px;
    }

    .page__content:has(.personal-auth-page) .personal-auth-title {
        margin-bottom: 6px;
        font-size: 27px;
        line-height: 1.18;
    }

    .page__content:has(.personal-auth-page) .personal-auth-subtitle {
        margin-bottom: 16px;
        font-size: 14px;
        line-height: 1.4;
    }

    .page__content:has(.personal-auth-page) .personal-auth-errors {
        margin-bottom: 14px;
    }

    .page__content:has(.personal-auth-page) .personal-auth-field {
        margin-bottom: 12px;
    }

    .page__content:has(.personal-auth-page) .personal-auth-input {
        height: 44px;
        padding: 0 12px;
        font-size: 16px;
    }

    .page__content:has(.personal-auth-page) .personal-auth-submit {
        height: 46px;
        margin-top: 2px;
        font-size: 16px;
    }

    .page__content:has(.personal-auth-page) .personal-auth-links {
        flex-direction: row;
        gap: 8px;
        margin-top: 10px;
    }

    .page__content:has(.personal-auth-page) .personal-auth-link-btn {
        width: auto;
        min-width: 0;
        min-height: 38px;
        flex: 1 1 128px;
        padding: 0 10px;
        font-size: 13px;
        line-height: 1.15;
        text-align: center;
    }

    .page__content:has(.personal-auth-page) .personal-auth-note {
        margin-top: 10px;
        font-size: 13px;
        line-height: 1.3;
    }
}

/* Мобильный список заказов: таблицу оставляем скроллируемой, а действия делаем на всю ширину. */
@media (max-width: 767px) {
    #cont-shop-invoices,
    #cont-shop-invoices * {
        box-sizing: border-box;
    }

    #cont-shop-invoices {
        max-width: 100%;
        overflow-x: hidden;
    }

    #cont-shop-invoices .scrollable-table-container {
        width: 100%;
        max-width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
    }

    #cont-shop-invoices #invoice-table {
        min-width: 720px;
    }

    .orders_button {
        width: 100%;
        min-height: 42px;
        padding: 11px 14px;
        white-space: normal;
    }

    .order-edit-trigger,
    .order-state-dropdown,
    .order-status-dropdown {
        width: 100%;
        max-width: 100%;
    }
}

/* ========================================
 * Исправление стиля поля email
 * чтобы соответствовал остальным полям формы
 * ======================================== */
.checkout__block input[type="email"] {
    width: 100%;
    padding: 15px;
    border: 1px solid #e0e0e0;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 400;
    color: #333;
    outline: none;
    transition: border-color 0.3s;
    box-sizing: border-box;
    background-color: #fff;
}

.checkout__block input[type="email"]:focus {
    border-color: #5b3c67;
}

.checkout__block input[type="email"]::placeholder {
    color: #999;
    font-weight: 400;
}

/*.orders_button {*/
/*    padding: 8px 20px;*/
/*    background: #f8f9fa;*/
/*    color: black;*/
/*    border: 1px solid grey;*/
/*    cursor: not-allowed;*/
/*    border-radius: 4px;    */
/*    font-size: 14px;*/
/*    font-weight: 500;*/
/*    text-transform: uppercase;*/
/*    width: 100%;*/
/*}*/


.orders_button {
    padding: 15px 20px;
    background: #f8f9fa;
    color: #fff;
    border: 1px solid grey;
    cursor: not-allowed;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    width: 75%;
    display: block;
    text-align: center;
}

.orders_button_active {
    cursor: pointer;
    background: #28a745;
}


button.orders_button {
    color:#000;
}
.not-visible td,
.not-visible button{
     text-decoration: line-through;
    text-decoration-color: red; 
    text-decoration-thickness: 2px; 
}

.catalog__num .stock-quick-filter {
    margin-left: 0.4rem;
}

/* Mobile basket popup: keep preview images stable and prevent total value wrapping. */
@media (max-width: 767px) {
    #basket_in_header .basket-box__footer {
        display: flex;
        align-items: center;
        gap: 14px;
        padding: 14px 24px;
    }

    #basket_in_header .basket-box__total {
        flex: 0 0 132px;
        min-width: 132px;
        line-height: 1.05;
    }

    #basket_in_header .basket-box__total-value {
        display: inline-flex;
        align-items: baseline;
        white-space: nowrap;
        font-size: 30px;
        line-height: 1;
        letter-spacing: 0;
    }

    #basket_in_header .basket-box__total-value:after {
        flex: 0 0 auto;
    }

    #basket_in_header .basket-box__checkout {
        flex: 1 1 auto;
        max-width: none;
        min-width: 0;
        min-height: 48px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 14px;
        text-align: center;
        line-height: 1.05;
    }

    #basket_in_header .basket__img {
        object-fit: contain;
    }
}

@media (max-width: 340px) {
    #basket_in_header .basket-box__footer {
        gap: 10px;
        padding-right: 16px;
        padding-left: 16px;
    }

    #basket_in_header .basket-box__total {
        flex-basis: 118px;
        min-width: 118px;
    }

    #basket_in_header .basket-box__total-value {
        font-size: 28px;
    }
}

.cookie-consent {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 26px 36px;
    background: rgba(28, 30, 34, 0.94);
    color: #fff;
    box-shadow: 0 -10px 28px rgba(0, 0, 0, 0.24);
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 18px 18px 0 0;
    box-sizing: border-box;
}

.cookie-consent.is-hidden {
    display: none;
}

.cookie-consent__text {
    max-width: 1500px;
    color: #f4f4f4;
    font-size: 17px;
    line-height: 1.55;
    font-weight: 400;
}

.cookie-consent__notice {
    display: block;
    margin-top: 4px;
}

.cookie-consent__text a {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.cookie-consent__text a:hover,
.cookie-consent__text a:focus {
    color: #f7b94a;
}

.cookie-consent__button {
    flex: 0 0 auto;
    min-width: 108px;
    min-height: 44px;
    padding: 11px 24px;
    border: 0;
    border-radius: 5px;
    background: #f0a437;
    color: #fff;
    font-size: 16px;
    line-height: 1.2;
    font-weight: 700;
    cursor: pointer;
    transition: background-color 0.2s ease, transform 0.2s ease;
}

.cookie-consent__button:hover,
.cookie-consent__button:focus {
    background: #ffb447;
}

.cookie-consent__button:active {
    transform: translateY(1px);
}

@media (max-width: 768px) {
    .cookie-consent {
        align-items: flex-start;
        flex-direction: column;
        gap: 16px;
        padding: 20px 18px;
        border-radius: 14px 14px 0 0;
    }

    .cookie-consent__text {
        font-size: 14px;
        line-height: 1.5;
    }

    .cookie-consent__button {
        width: 100%;
        min-height: 42px;
    }
}

/* Мобильная карточка товара: держим галерею, бейджи и описание в нормальном потоке. */
@media (max-width: 767px) {
    .page--shop-entry,
    .page--shop-entry * {
        box-sizing: border-box;
    }

    .page--shop-entry {
        max-width: 100%;
        overflow-x: hidden;
        padding-bottom: 122px;
    }

    .page--shop-entry .breadcrumbs {
        max-width: 100%;
        min-width: 0;
        overflow-x: auto;
        overflow-y: hidden;
        flex-wrap: nowrap;
        white-space: nowrap !important;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
    }

    .page--shop-entry .breadcrumbs::-webkit-scrollbar {
        display: none;
    }

    .page--shop-entry .breadcrumbs > span,
    .page--shop-entry .breadcrumbs [itemscope],
    .page--shop-entry .breadcrumbs a,
    .page--shop-entry .breadcrumbs span[itemprop="name"] {
        min-width: 0;
        max-width: none;
        white-space: nowrap !important;
        overflow-wrap: normal;
        word-break: normal;
    }

    .page--shop-entry .product__title,
    .page--shop-entry .product__h1 {
        min-width: 0;
        max-width: 100%;
        white-space: normal !important;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .page--shop-entry .product__row > *,
    .page--shop-entry .gallery,
    .page--shop-entry .gallery__main-img,
    .page--shop-entry .gallery__carousel {
        min-width: 0;
        max-width: 100%;
    }

    .page--shop-entry .product > .section__content > .product__row {
        display: flex;
        flex-direction: column;
        height: auto !important;
        transform: none !important;
    }

    .page--shop-entry .product__images {
        order: 1;
        height: auto !important;
        min-height: clamp(320px, calc(100vw - 30px), 350px);
        margin: 0 0 22px;
    }

    .page--shop-entry .product__images .product-one__new,
    .page--shop-entry .product__images .product-one__discount {
        top: 16px !important;
        z-index: 4;
    }

    .page--shop-entry .product__images .product-one__new {
        right: auto !important;
        left: 16px !important;
    }

    .page--shop-entry .product__images .product-one__discount {
        right: 16px !important;
        left: auto !important;
    }

    .page--shop-entry .gallery {
        height: auto !important;
        margin: 0;
    }

    .page--shop-entry .gallery__main-img {
        height: auto !important;
        margin: 0;
    }

    .page--shop-entry .gallery__main-img img,
    .page--shop-entry .gallery__main-img .gphoto {
        display: block;
        max-width: 100%;
        height: auto;
        object-fit: contain;
    }

    .page--shop-entry .gallery__carousel {
        margin-top: 18px !important;
        margin-bottom: 0 !important;
    }

    .page--shop-entry .product__sell {
        order: 2;
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 9000;
        width: 100%;
        margin: 0;
        padding: 0;
        background: #fff;
        box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.16);
    }

    .page--shop-entry .product__info {
        order: 3;
        width: 100%;
        margin: 0 0 32px;
    }

    .page--shop-entry .product__controls {
        width: 100%;
        min-height: 72px;
        display: flex;
        align-items: center;
        gap: 10px;
        padding: 10px 14px;
        border-radius: 0;
        background: #fff;
        margin: 0 !important;
    }

    .page--shop-entry .product__prices {
        flex: 1 1 auto;
        min-width: 0;
        margin: 0;
    }

    .page--shop-entry .block-prices__old {
        display: none;
    }

    .page--shop-entry .block-prices__main {
        line-height: 1.05;
    }

    .page--shop-entry .block-prices__main {
        font-size: 30px;
    }

    .page--shop-entry .product__discount {
        display: none;
    }

    .page--shop-entry .product__buttons {
        flex: 0 0 auto;
        width: auto !important;
        display: flex;
        align-items: center;
        gap: 8px;
        flex-wrap: nowrap;
    }

    .page--shop-entry .product__buttons > div {
        flex: 0 1 auto;
        width: auto;
        margin: 0;
    }

    .page--shop-entry .product__buttons .basket.add {
        min-width: 142px;
        min-height: 48px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 18px;
    }

    .page--shop-entry .product__buttons .wish {
        display: none !important;
    }

    .page--shop-entry .details-list--big .details-list__item:has(.details-list__name b) {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 72px;
        z-index: 9000;
        width: 100%;
        min-height: 34px;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        margin: 0;
        padding: 7px 14px;
        background: #f5fbf6;
        border-top: 1px solid rgba(92, 184, 92, 0.28);
        box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.08);
        font-size: 14px;
        line-height: 1.2;
    }

    .page--shop-entry .details-list--big .details-list__item:has(.details-list__name b) .details-list__name,
    .page--shop-entry .details-list--big .details-list__item:has(.details-list__name b) .details-list__value {
        width: auto;
        margin: 0;
    }

    .page--shop-entry .details-list--big > li:not(.details-list__item) {
        display: block;
        width: 100%;
        clear: both;
        margin: 18px 0 0;
        padding: 0;
        line-height: 1.35;
    }

    .page--shop-entry .details-list--big > li:not(.details-list__item) > div {
        display: block;
        margin: 8px 0;
        line-height: 1.35;
    }

    .page--shop-entry .product__content {
        width: 100%;
        max-width: 100%;
        clear: both;
    }

    .page--shop-entry .product__content .product__h1 {
        position: static !important;
        display: block;
        width: 100%;
        margin: 0 0 18px;
        padding: 0;
        clear: both;
        font-size: 22px;
        line-height: 1.25;
        text-align: center;
    }

    .page--shop-entry .product__description,
    .page--shop-entry .product__description p {
        max-width: 100%;
        letter-spacing: 0;
        word-spacing: normal !important;
        overflow-wrap: break-word;
        word-break: normal;
        text-align: left !important;
    }

    .page--shop-entry .product__description p {
        margin: 0 0 14px;
        line-height: 1.45;
    }
}

/* Mobile catalog: prevent overflow and keep filter controls usable on narrow screens. */
@media (max-width: 767px) {
    .section--catalog,
    .section--catalog * {
        box-sizing: border-box;
    }

    .section--catalog {
        max-width: 100%;
        overflow-x: hidden;
    }

    .section--catalog .breadcrumbs,
    .section--catalog .breadcrumbs * {
        min-width: 0;
        max-width: 100%;
        white-space: normal !important;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .section--catalog .catalog__header {
        display: block;
    }

    .section--catalog .catalog__num {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        gap: 8px;
        padding: 14px 0 0 !important;
        font-size: 20px;
        line-height: 1.25;
    }

    .section--catalog .catalog__num > .instock,
    .section--catalog .catalog__num > .stock-quick-filter {
        flex: 1 1 calc(50% - 4px);
        min-height: 36px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin: 0 !important;
        padding: 7px 10px !important;
        border-radius: 999px;
        border: 1px solid #b8c7d3;
        background: #fff;
        color: #6f7c87;
        font-size: 14px;
        line-height: 1.15;
        font-weight: 600;
        text-align: center;
        white-space: normal;
    }

    .section--catalog .catalog__num > .instock:nth-of-type(3),
    .section--catalog .catalog__num > .stock-quick-filter:nth-of-type(3),
    .section--catalog .catalog__num > .instock:nth-child(3),
    .section--catalog .catalog__num > .stock-quick-filter:nth-child(3) {
        flex-basis: 100%;
    }

    .section--catalog .catalog__num > .instock.active,
    .section--catalog .catalog__num > .stock-quick-filter.active {
        background: #096cce;
        border-color: #096cce;
        color: #fff;
    }

    .section--catalog .catalog__num strong {
        font-size: 20px;
        line-height: 1.25;
    }

    .section--catalog .wrap_filter_but {
        min-height: 44px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 10px 16px;
        font-size: 18px;
        line-height: 1.2;
        font-weight: 700;
    }

    .section--catalog .wrap_filter {
        padding: 16px;
        margin: 18px 0 22px;
    }

    .section--catalog .wrap_filter .flist-item,
    .section--catalog .wrap_filter .jqselect {
        width: 100% !important;
        max-width: 100%;
        margin-bottom: 8px;
    }

    .section--catalog .wrap_filter .jq-selectbox__select {
        min-height: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        border-radius: 24px;
    }

    .section--catalog .wrap_filter .jq-selectbox__select-text {
        max-width: calc(100% - 44px);
        font-size: 16px;
        line-height: 1.25;
        text-transform: none;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .section--catalog .wrap_filter .jq-selectbox__dropdown {
        max-height: min(360px, calc(100vh - 220px));
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    body.catalog-filter-select-open {
        overflow: hidden;
    }

    .section--catalog .wrap_filter .jq-selectbox select {
        pointer-events: none;
    }

    .section--catalog .wrap_filter .jq-selectbox.opened {
        z-index: 10050 !important;
    }

    .section--catalog .wrap_filter .jq-selectbox.opened .jq-selectbox__select {
        border-radius: 24px;
    }

    .section--catalog .wrap_filter .jq-selectbox.opened .jq-selectbox__dropdown {
        position: fixed !important;
        top: calc(env(safe-area-inset-top, 0px) + 72px) !important;
        right: 16px !important;
        bottom: calc(env(safe-area-inset-bottom, 0px) + 16px) !important;
        left: 16px !important;
        display: block !important;
        width: auto !important;
        height: calc(100vh - 176px) !important;
        max-height: calc(100vh - 176px) !important;
        margin: 0;
        padding: 0;
        overflow-y: auto;
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 18px 46px rgba(0, 0, 0, 0.28);
        -webkit-overflow-scrolling: touch;
    }

    .section--catalog .wrap_filter .jq-selectbox.opened .jq-selectbox__search {
        position: sticky;
        top: 0;
        z-index: 2;
        margin: 0;
        padding: 10px;
        border-bottom: 1px solid #e7eef4;
        background: #fff;
    }

    .section--catalog .wrap_filter .jq-selectbox.opened .jq-selectbox__dropdown ul {
        max-height: none !important;
        overflow: visible;
        padding: 4px 0 10px;
    }

    .section--catalog .wrap_filter .jq-selectbox.opened .jq-selectbox__dropdown li {
        min-height: 44px;
        display: flex;
        align-items: center;
        padding: 10px 16px;
        font-size: 16px;
        line-height: 1.25;
        text-transform: none;
        white-space: normal;
    }

    .section--catalog .wrap_filter .jq-selectbox__search input,
    .section--catalog #fil_min,
    .section--catalog #fil_max {
        min-height: 42px;
        font-size: 16px;
    }

    .fast-filter .jq-selectbox__select {
        min-height: 40px;
        display: flex;
        align-items: center;
    }

    .fast-filter .jq-selectbox__select-text {
        max-width: calc(100% - 44px);
        font-size: 16px;
        line-height: 1.25;
        text-transform: none;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .fast-filter .jq-selectbox__dropdown {
        max-height: min(360px, calc(100vh - 220px));
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .fast-filter .jq-selectbox select {
        pointer-events: none;
    }

    .fast-filter .jq-selectbox.opened {
        z-index: 10050 !important;
    }

    .fast-filter .jq-selectbox.opened .jq-selectbox__dropdown {
        position: fixed !important;
        top: calc(env(safe-area-inset-top, 0px) + 72px) !important;
        right: 16px !important;
        bottom: calc(env(safe-area-inset-bottom, 0px) + 16px) !important;
        left: 16px !important;
        display: block !important;
        width: auto !important;
        height: calc(100vh - 176px) !important;
        max-height: calc(100vh - 176px) !important;
        margin: 0;
        padding: 0;
        overflow-y: auto;
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 18px 46px rgba(0, 0, 0, 0.28);
        -webkit-overflow-scrolling: touch;
    }

    .fast-filter .jq-selectbox.opened .jq-selectbox__search {
        position: sticky;
        top: 0;
        z-index: 2;
        margin: 0;
        padding: 10px;
        border-bottom: 1px solid #e7eef4;
        background: #fff;
    }

    .fast-filter .jq-selectbox.opened .jq-selectbox__dropdown ul {
        max-height: none !important;
        overflow: visible;
        padding: 4px 0 10px;
    }

    .fast-filter .jq-selectbox.opened .jq-selectbox__dropdown li {
        min-height: 44px;
        display: flex;
        align-items: center;
        padding: 10px 16px;
        font-size: 16px;
        line-height: 1.25;
        text-transform: none;
        white-space: normal;
    }

    .fast-filter .jq-selectbox__search input {
        min-height: 42px;
        font-size: 16px;
    }

    .section--catalog .product-one {
        align-items: stretch;
    }

    .section--catalog .product-one__image {
        flex: 0 0 auto;
        width: 100%;
        max-width: 100%;
        height: 214px;
    }

    .section--catalog .product-one__img {
        top: calc(50% - 18px);
        max-height: calc(100% - 42px);
    }

    .section--catalog .product-one__image > [style*="bottom:24px"] {
        bottom: 42px !important;
        z-index: 3 !important;
    }

    .section--catalog .product-one__sticker {
        bottom: 0;
        min-height: 34px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 10px;
        font-size: 14px;
        line-height: 1.15;
        font-weight: 700;
        letter-spacing: 0;
    }

    .section--catalog .product-one__body {
        flex: 1 1 100%;
        max-width: 100%;
        padding-left: 0;
    }

    .section--catalog .product-one__button,
    .section--catalog .product-one__button_all {
        width: 44px;
        height: 44px;
        min-width: 44px;
        min-height: 44px;
    }
}

/* Мобильная корзина: освобождаем ширину формы и держим оформление под рукой. */
@media (max-width: 767px) {
    .page__content:has(.checkout),
    .page__content:has(.checkout) * {
        box-sizing: border-box;
    }

    .page__content:has(.checkout) {
        max-width: 100%;
        overflow-x: hidden;
    }

    .page__content:has(.checkout) .section__inner,
    .page__content:has(.checkout) .section__content {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding-right: 0;
        padding-left: 0;
    }

    .page__content:has(.checkout) .section__content {
        padding-top: 72px;
    }

    .page__content:has(.checkout) .breadcrumbs {
        display: none;
    }

    .page__content:has(.checkout) .section__title {
        width: calc(100% - 28px);
        margin: 0 14px 14px;
        font-size: 30px;
        line-height: 1.15;
    }

    .checkout {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0 12px 24px;
        overflow-x: hidden;
    }

    .checkout .container,
    .checkout #basket-form,
    .checkout .checkout__inner,
    .checkout .checkout__left,
    .checkout .checkout__right,
    .checkout #basket_in_right {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 0;
    }

    .checkout #basket-form {
        padding-bottom: 92px;
    }

    .checkout .checkout__inner,
    .checkout .checkout__left {
        display: flex;
        flex-direction: column;
        gap: 14px;
    }

    .checkout .checkout__basket {
        width: 100%;
        position: relative;
        display: grid;
        grid-template-columns: 104px minmax(0, 1fr);
        grid-template-areas:
            "image name"
            "price count";
        align-items: start;
        gap: 12px;
        margin: 0;
        padding: 14px 50px 14px 14px;
        border-radius: 6px;
    }

    .checkout .checkout__basket img,
    .checkout .checkout__basket--name,
    .checkout .checkout__basket--price,
    .checkout .checkout__basket--count {
        position: static !important;
        inset: auto !important;
        transform: none !important;
    }

    .checkout .checkout__basket img {
        grid-area: image;
        width: 104px;
        height: 78px;
        object-fit: contain;
    }

    .checkout .checkout__basket--name {
        grid-area: name;
        display: -webkit-box;
        width: auto !important;
        min-width: 0;
        font-size: 17px;
        line-height: 1.25;
        overflow: hidden;
        overflow-wrap: anywhere;
        word-break: break-word;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
    }

    .checkout .checkout__basket--delete {
        position: absolute !important;
        top: 14px;
        right: 14px;
        width: 32px;
        height: 32px;
    }

    .checkout .checkout__basket--price {
        grid-area: price;
        align-self: center;
        width: auto !important;
        font-size: 28px;
        line-height: 1.1;
    }

    .checkout .checkout__basket--count {
        grid-area: count;
        justify-self: end;
        width: auto !important;
        min-width: 156px;
        display: flex;
    }

    .checkout .checkout__basket--count--minus,
    .checkout .checkout__basket--count--plus,
    .checkout .checkout__basket--count--input {
        width: 52px;
        height: 46px;
        min-width: 52px;
        font-size: 22px;
        line-height: 46px;
    }

    .checkout .checkout__block,
    .checkout .checkout__aside--block {
        width: 100%;
        max-width: 100%;
        margin: 0;
        padding: 16px 14px;
        border-radius: 6px;
    }

    .checkout .checkout__block h3,
    .checkout .checkout__aside--block h3 {
        margin-top: 0;
        font-size: 24px;
        line-height: 1.2;
    }

    .checkout .checkout__block input:not([type="hidden"]):not([type="checkbox"]),
    .checkout .checkout__block textarea,
    .checkout #select_city,
    .checkout #cityList {
        width: 100%;
        max-width: 100%;
    }

    .checkout .checkout__block input:not([type="hidden"]):not([type="checkbox"]),
    .checkout .checkout__block textarea,
    .checkout #select_city {
        min-height: 44px;
        padding: 10px 12px;
        font-size: 16px;
        line-height: 1.25;
    }

    .checkout #cityList {
        max-height: 230px;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
    }

    .checkout #cityList .cityList__item {
        min-height: 0;
        padding: 12px;
        font-size: 17px;
        line-height: 1.25;
        overflow-wrap: anywhere;
    }

    .checkout .checkout__block--row {
        display: flex !important;
        flex-direction: column;
        gap: 10px !important;
    }

    .checkout .checkout__block--row input {
        width: 100% !important;
    }

    .checkout .delivery__buttons,
    .checkout .pay {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .checkout .delivery__buttons--item,
    .checkout .pay__item,
    .checkout .courierM__item {
        width: 100%;
        min-height: 44px;
        display: flex;
        align-items: center;
        padding: 10px 12px;
        font-size: 16px;
        line-height: 1.25;
    }

    .checkout .point__map,
    .checkout .point__maps,
    .checkout #map,
    .checkout #sav-kart {
        width: 100% !important;
        max-width: 100%;
    }

    .checkout .checkout__block label {
        display: grid;
        grid-template-columns: 22px minmax(0, 1fr);
        gap: 8px;
        align-items: start;
        font-size: 15px;
        line-height: 1.35;
    }

    .checkout .checkout__block input[type="checkbox"] {
        width: 18px;
        height: 18px;
        margin-top: 2px;
    }

    .checkout .checkout__aside--block--item {
        display: flex;
        justify-content: space-between;
        gap: 12px;
        font-size: 15px;
        line-height: 1.35;
    }

    .checkout .checkout__aside--order {
        position: sticky;
        bottom: 10px;
        z-index: 100;
        width: 100% !important;
        min-height: 54px;
        margin-top: 14px;
        border-radius: 999px;
        box-shadow: 0 8px 22px rgba(0, 0, 0, 0.18);
        font-size: 20px;
        line-height: 1.2;
    }
}

@media (max-width: 360px) {
    .checkout .checkout__basket {
        grid-template-columns: 1fr;
        grid-template-areas:
            "image"
            "name"
            "price"
            "count";
        padding: 14px;
    }

    .checkout .checkout__basket img {
        justify-self: center;
        width: 172px;
        height: 112px;
    }

    .checkout .checkout__basket--name {
        width: 100% !important;
        font-size: 16px;
        text-align: left;
    }

    .checkout .checkout__basket--price,
    .checkout .checkout__basket--count {
        justify-self: center;
    }
}

/* Плашки New и скидки: если New есть, разводим бейджи по углам; если New нет, скидка занимает левый слот. */
.product-one__discount.product-one__discount--new-slot {
    right: auto;
    left: .5rem;
}

/* На большой карточке товара убираем старую вертикальную раскладку и держим плашки поверх главной фотографии. */
.page--shop-entry .product__images .product-one__new,
.page--shop-entry .product__images .product-one__discount {
    top: 1rem !important;
    z-index: 4;
}

.page--shop-entry .product__images .product-one__new {
    right: auto !important;
    left: 1rem !important;
}

.page--shop-entry .product__images .product-one__discount {
    right: 1rem !important;
    left: auto !important;
}

.page--shop-entry .product__images .product-one__discount.product-one__discount--new-slot {
    right: auto !important;
    left: 1rem !important;
}

/* Недавно просмотренные на карточке товара: фиксируем зоны, не меняя сетки каталога. */
.page--shop-entry .product__h1 + .goods-list .list-item {
    display: flex;
}

.page--shop-entry .product__h1 + .goods-list .list-item > .product-one {
    box-sizing: border-box;
    width: 100%;
    min-height: 100%;
    display: flex;
    align-items: stretch;
}

.page--shop-entry .product__h1 + .goods-list .product-one__body {
    display: flex;
    flex-direction: column;
    min-height: 0;
}

.page--shop-entry .product__h1 + .goods-list .product-one__footer {
    width: 100%;
    margin-top: auto;
    column-gap: 12px;
}

.page--shop-entry .product__h1 + .goods-list .product-one__prices {
    flex: 1 1 auto;
    min-width: 7.5rem;
    min-height: 4.15rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    white-space: nowrap;
}

.page--shop-entry .product__h1 + .goods-list .product-one__price,
.page--shop-entry .product__h1 + .goods-list .product-one__price-old,
.page--shop-entry .product__h1 + .goods-list .product-one__price span,
.page--shop-entry .product__h1 + .goods-list .product-one__price-old span {
    white-space: nowrap;
}

.page--shop-entry .product__h1 + .goods-list .product-one__controls {
    flex: 0 0 auto;
    align-items: center;
}

.page--shop-entry .product__h1 + .goods-list .list-item {
    flex: 0 0 100%;
    max-width: 100%;
    width: 100%;
}

@media only screen and (min-width: 768px) {
    .page--shop-entry .product__h1 + .goods-list .list-item > .product-one {
        flex-direction: column;
        justify-content: flex-start;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__image {
        flex: 0 0 214px;
        width: 100%;
        max-width: 100%;
        height: 214px;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__img {
        top: calc(50% - 18px);
        max-height: calc(100% - 42px);
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__image > [style*="bottom:24px"] {
        bottom: 42px !important;
        z-index: 3 !important;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__sticker {
        bottom: 0;
        min-height: 34px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 10px;
        font-size: 14px;
        line-height: 1.15;
        font-weight: 700;
        letter-spacing: 0;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__body {
        flex: 1 1 auto;
        max-width: 100%;
        padding-left: 0;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__title {
        min-height: 4.15rem;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__details {
        min-height: 5.1rem;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__footer {
        flex: 0 0 auto;
        flex-direction: row;
        align-items: flex-end;
        justify-content: space-between;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__controls {
        margin-left: auto;
    }
}

@media only screen and (min-width: 694px) {
    .page--shop-entry .product__h1 + .goods-list .list-item {
        flex: 0 0 50%;
        max-width: 50%;
        width: 50%;
    }
}

@media only screen and (min-width: 1192px) {
    .page--shop-entry .product__h1 + .goods-list .list-item {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
        width: 16.666667%;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__footer {
        column-gap: 8px;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__prices {
        min-width: 0;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__button {
        margin-right: 8px;
    }
}

/* Карусель похожих моделей на карточке товара: используем существующие карточки без новых API-запросов. */
.product-similar-section {
    margin: 2.5rem 0 2rem;
    padding: 2rem 0 2.4rem;
    border-top: 1px solid #ececec;
    border-bottom: 1px solid #ececec;
}

.product-similar-section__title {
    margin-bottom: 1.35rem;
    text-align: center;
}

.product-card-carousel {
    position: relative;
    box-sizing: border-box;
    padding: 0 46px;
}

.product-card-carousel .flickity-viewport {
    width: 100%;
}

.product-card-carousel .list-item {
    box-sizing: border-box;
    display: flex;
    width: 100%;
    max-width: 100%;
    padding: 0 10px;
}

.product-card-carousel .list-item > .product-one {
    box-sizing: border-box;
    width: 100%;
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

.product-card-carousel .product-one__body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
}

.product-card-carousel .product-one__title {
    min-height: 4.15rem;
}

.product-card-carousel .product-one__details {
    min-height: 5.1rem;
}

.product-card-carousel .product-one__footer {
    width: 100%;
    margin-top: auto;
    column-gap: 8px;
}

.product-card-carousel .product-one__prices {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 4.15rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    white-space: nowrap;
}

.product-card-carousel .product-one__price,
.product-card-carousel .product-one__price-old,
.product-card-carousel .product-one__price span,
.product-card-carousel .product-one__price-old span {
    white-space: nowrap;
}

.product-card-carousel .product-one__controls {
    flex: 0 0 auto;
    align-items: center;
    margin-left: auto;
}

.product-card-carousel .product-one__button {
    margin-right: 8px;
}

.product-card-carousel .flickity-button {
    background: #fff;
    border: 1px solid #d8d8d8;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.16);
    color: #333;
}

.product-card-carousel .flickity-button:hover {
    background: #f7f7f7;
}

.product-card-carousel .flickity-button:disabled {
    opacity: .25;
}

.product-card-carousel .flickity-prev-next-button {
    width: 38px;
    height: 38px;
}

.product-card-carousel .flickity-prev-next-button.previous {
    left: 2px;
}

.product-card-carousel .flickity-prev-next-button.next {
    right: 2px;
}

@media only screen and (min-width: 694px) {
    .product-card-carousel .list-item {
        width: 50%;
        max-width: 50%;
    }
}

@media only screen and (min-width: 768px) {
    .product-card-carousel .product-one__image {
        flex: 0 0 214px;
        width: 100%;
        max-width: 100%;
        height: 214px;
    }

    .product-card-carousel .product-one__img {
        top: calc(50% - 18px);
        max-height: calc(100% - 42px);
    }

    .product-card-carousel .product-one__image > [style*="bottom:24px"] {
        bottom: 42px !important;
        z-index: 3 !important;
    }

    .product-card-carousel .product-one__sticker {
        bottom: 0;
        min-height: 34px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0 10px;
        font-size: 14px;
        line-height: 1.15;
        font-weight: 700;
        letter-spacing: 0;
    }
}

@media only screen and (min-width: 992px) {
    .product-card-carousel .list-item {
        width: 33.333333%;
        max-width: 33.333333%;
    }
}

@media only screen and (min-width: 1192px) {
    .product-card-carousel .list-item {
        width: 16.666667%;
        max-width: 16.666667%;
    }
}

@media only screen and (max-width: 520px) {
    .product-similar-section {
        margin: 1.75rem 0 1.5rem;
        padding: 1.35rem 0 1.8rem;
    }

    .product-card-carousel {
        padding: 0 34px;
    }

    .product-card-carousel .list-item {
        padding: 0 6px;
    }

    .product-card-carousel .flickity-prev-next-button {
        width: 30px;
        height: 30px;
    }
}

/* Замена отсутствующего логотипа бренда: черная плашка с названием производителя. */
.brand-logo-fallback {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 92px;
    padding: 14px 16px;
    border: 1px solid #242424;
    border-radius: 4px;
    background: #050505;
    color: #fff;
    font-family: Georgia, "Times New Roman", Times, serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.12;
    letter-spacing: 0;
    text-align: center;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

.brands-list__link .brand-logo-fallback {
    min-height: 118px;
    margin-bottom: 12px;
}

.vendors-slider__image .brand-logo-fallback {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-width: 100%;
    max-height: 100%;
    padding: 8px 10px;
    overflow: hidden;
    font-size: 15px;
    line-height: 1.05;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.brand-info__link .brand-logo-fallback {
    position: absolute;
    top: 50%;
    left: 0;
    width: 180px;
    height: 100%;
    min-height: 0;
    max-width: 100%;
    max-height: 100%;
    padding: 8px 10px;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.05;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

@media only screen and (min-width: 768px) {
    .vendors-slider__image .brand-logo-fallback {
        font-size: 17px;
    }
}

@media (max-width: 520px) {
    .brand-logo-fallback {
        min-height: 78px;
        padding: 12px;
        font-size: 17px;
    }

    .brands-list__link .brand-logo-fallback {
        min-height: 96px;
    }

    .vendors-slider__image .brand-logo-fallback,
    .brand-info__link .brand-logo-fallback {
        min-height: 0;
        padding: 6px 8px;
        font-size: 13px;
    }
}

/* Финальное правило карточных действий: единый размер и позиция во всех списках товаров. */
#goods_cont > .goods-list .list-item,
.section--catalog .list-item,
.page--shop-entry .product__h1 + .goods-list .list-item,
.product-card-carousel .list-item {
    box-sizing: border-box;
}

#goods_cont > .goods-list .product-one__footer,
.section--catalog .product-one__footer,
.page--shop-entry .product__h1 + .goods-list .product-one__footer,
.product-card-carousel .product-one__footer {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    column-gap: 12px;
}

#goods_cont > .goods-list .product-one__footer .product-one__prices,
.section--catalog .product-one__footer .product-one__prices,
.page--shop-entry .product__h1 + .goods-list .product-one__footer .product-one__prices,
.product-card-carousel .product-one__footer .product-one__prices {
    flex: 1 1 auto;
    min-width: 0;
}

#goods_cont > .goods-list .product-one__footer .product-one__controls,
.section--catalog .product-one__footer .product-one__controls,
.page--shop-entry .product__h1 + .goods-list .product-one__footer .product-one__controls,
.product-card-carousel .product-one__footer .product-one__controls {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: nowrap;
    gap: 16px;
    margin-left: auto;
}

#goods_cont > .goods-list .product-one__footer .product-one__button,
#goods_cont > .goods-list .product-one__footer .product-one__button_all,
.section--catalog .product-one__footer .product-one__button,
.section--catalog .product-one__footer .product-one__button_all,
.page--shop-entry .product__h1 + .goods-list .product-one__footer .product-one__button,
.page--shop-entry .product__h1 + .goods-list .product-one__footer .product-one__button_all,
.product-card-carousel .product-one__footer .product-one__button,
.product-card-carousel .product-one__footer .product-one__button_all {
    box-sizing: border-box !important;
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    min-height: 44px !important;
    max-width: 44px !important;
    max-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 50%;
}

/* Финальное правило статусной плашки: формат как в общей карточке каталога. */
#goods_cont > .goods-list .product-one__image > [style*="bottom:24px"],
.section--catalog .product-one__image > [style*="bottom:24px"],
.page--shop-entry .product__h1 + .goods-list .product-one__image > [style*="bottom:24px"],
.product-card-carousel .product-one__image > [style*="bottom:24px"] {
    bottom: 24px !important;
}

#goods_cont > .goods-list .product-one__sticker,
.section--catalog .product-one__sticker,
.page--shop-entry .product__h1 + .goods-list .product-one__sticker,
.product-card-carousel .product-one__sticker {
    display: block !important;
    bottom: 0 !important;
    left: 0;
    right: 0;
    height: auto !important;
    min-height: 1.5rem !important;
    padding: 0 !important;
    color: #fff;
    font-family: inherit;
    font-size: 12px !important;
    font-weight: 300 !important;
    line-height: 1.5rem !important;
    letter-spacing: 0;
    text-align: center;
    text-transform: uppercase;
}

/* Финальный вид карусели похожих моделей: плотная сетка и стрелки поверх фотографий. */
.product-similar-section {
    padding-right: 2rem;
    padding-left: 2rem;
}

.product-similar-section__title {
    margin-bottom: 1rem;
}

.product-card-carousel {
    padding-right: 2rem !important;
    padding-left: 2rem !important;
}

.product-card-carousel .flickity-viewport {
    border-left: 1px solid #e6e6e6;
}

.product-card-carousel .list-item {
    padding: 0 !important;
}

.product-card-carousel .list-item > .product-one {
    border-left: 0;
}

.product-card-carousel .product-one__image {
    flex: 0 0 166px !important;
    height: 166px !important;
}

.product-card-carousel .product-one__img {
    top: calc(50% + 2px) !important;
    max-height: calc(100% - 30px) !important;
}

.product-card-carousel .product-one__image > [style*="bottom:24px"] {
    right: 8px !important;
    bottom: 48px !important;
    z-index: 4 !important;
    text-shadow: 0 1px 0 rgba(255, 255, 255, .9);
}

.product-card-carousel .product-one__details {
    display: none !important;
    min-height: 0 !important;
}

.product-card-carousel .product-one__title {
    min-height: 0 !important;
}

.product-card-carousel .product-one__cat {
    margin-bottom: 2px;
}

.product-card-carousel .product-one__name {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.product-card-carousel .product-one__footer {
    margin-top: .75rem !important;
}

.product-card-carousel .product-one__prices {
    min-height: 3.1rem !important;
}

.product-card-carousel .flickity-button {
    background: rgba(255, 255, 255, .94) !important;
    border: 1px solid rgba(0, 0, 0, .13) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .18) !important;
    color: #333;
}

.product-card-carousel .flickity-button:hover {
    background: #fff !important;
}

.product-card-carousel .flickity-button:disabled {
    opacity: .42 !important;
}

.product-card-carousel .flickity-prev-next-button {
    background: rgba(255, 255, 255, .94) !important;
    border: 1px solid rgba(0, 0, 0, .13) !important;
    box-shadow: 0 8px 22px rgba(0, 0, 0, .18) !important;
    top: 128px;
    z-index: 5;
    width: 46px;
    height: 46px;
    transform: translateY(-50%);
}

.product-card-carousel .flickity-prev-next-button.previous {
    left: 14px;
}

.product-card-carousel .flickity-prev-next-button.next {
    right: 14px;
}

.product-card-carousel .flickity-button-icon {
    fill: #333;
}

@media only screen and (min-width: 1192px) {
    .product-card-carousel .list-item {
        width: 16.666667% !important;
        max-width: 16.666667% !important;
    }
}

@media only screen and (max-width: 767px) {
    .product-similar-section {
        padding-right: 1rem;
        padding-left: 1rem;
    }

    .product-card-carousel .list-item > .product-one {
        align-items: stretch;
        flex-direction: column;
    }

    .product-card-carousel .product-one__image {
        flex: 0 0 178px !important;
        width: 100%;
        max-width: 100% !important;
        height: 178px;
    }

    .product-card-carousel .product-one__img {
        top: calc(50% + 2px) !important;
        max-height: calc(100% - 30px) !important;
    }

    .product-card-carousel .product-one__image > [style*="bottom:24px"] {
        right: 36px !important;
    }

    .product-card-carousel .product-one__body {
        flex: 1 1 auto;
        max-width: 100%;
        padding-left: 0;
    }

    .product-card-carousel .product-one__title {
        min-height: 0;
    }

    .product-card-carousel .product-one__name {
        -webkit-line-clamp: 4;
    }

    .product-card-carousel .flickity-prev-next-button {
        top: 126px;
        width: 40px;
        height: 40px;
    }

    .product-card-carousel .flickity-prev-next-button.previous {
        left: 10px;
    }

    .product-card-carousel .flickity-prev-next-button.next {
        right: 10px;
    }
}

/* Компактный вид недавно просмотренных моделей: тот же принцип, что у похожих моделей. */
.page--shop-entry .product__h1 + .goods-list .product-one__image > [style*="bottom:24px"] {
    right: 8px !important;
    bottom: 48px !important;
    z-index: 4 !important;
    text-shadow: 0 1px 0 rgba(255, 255, 255, .9);
}

.page--shop-entry .product__h1 + .goods-list .product-one__image {
    flex: 0 0 166px !important;
    height: 166px !important;
}

.page--shop-entry .product__h1 + .goods-list .product-one__img {
    top: calc(50% + 2px) !important;
    max-height: calc(100% - 28px) !important;
}

.page--shop-entry .product__h1 + .goods-list .product-one__details {
    display: none !important;
    min-height: 0 !important;
}

.page--shop-entry .product__h1 + .goods-list .product-one__title {
    min-height: 0 !important;
}

.page--shop-entry .product__h1 + .goods-list .product-one__cat {
    margin-bottom: 2px;
}

.page--shop-entry .product__h1 + .goods-list .product-one__name {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.page--shop-entry .product__h1 + .goods-list .product-one__footer {
    margin-top: .75rem !important;
}

.page--shop-entry .product__h1 + .goods-list .product-one__prices {
    min-height: 3.1rem !important;
}

@media only screen and (max-width: 767px) {
    .page--shop-entry .product__h1 + .goods-list .list-item > .product-one {
        align-items: stretch;
        flex-direction: column;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__image {
        flex: 0 0 178px !important;
        width: 100%;
        max-width: 100% !important;
        height: 178px;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__img {
        top: calc(50% + 2px) !important;
        max-height: calc(100% - 30px) !important;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__image > [style*="bottom:24px"] {
        right: 36px !important;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__body {
        flex: 1 1 auto;
        max-width: 100%;
        padding-left: 0;
    }

    .page--shop-entry .product__h1 + .goods-list .product-one__name {
        -webkit-line-clamp: 4;
    }
}

/* r43: позиция фото, масштаба и статусной плашки как в обычной карточке каталога. */
.product-card-carousel .product-one__image,
.page--shop-entry .product__h1 + .goods-list .product-one__image {
    flex: 0 0 214px !important;
    width: 100%;
    max-width: 100% !important;
    height: 214px !important;
}

.product-card-carousel .product-one__img,
.page--shop-entry .product__h1 + .goods-list .product-one__img {
    top: calc(50% - 18px) !important;
    max-height: calc(100% - 42px) !important;
}

.product-card-carousel .product-one__image > [style*="bottom:24px"],
.page--shop-entry .product__h1 + .goods-list .product-one__image > [style*="bottom:24px"] {
    right: 0 !important;
    bottom: 24px !important;
    z-index: 4 !important;
    text-shadow: none !important;
}

.product-card-carousel .product-one__sticker,
.page--shop-entry .product__h1 + .goods-list .product-one__sticker {
    bottom: 0 !important;
}

/* r44: возвращаем компактным блокам десктопную геометрию обычной карточки каталога. */
.product-similar-section {
    box-sizing: border-box;
    width: auto;
    max-width: none;
    margin-right: 0;
    margin-left: 0;
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.product-card-carousel {
    width: 100%;
}

.product-card-carousel .list-item {
    padding-right: 0 !important;
    padding-left: 0 !important;
}

.product-card-carousel .product-one__image,
.page--shop-entry .product__h1 + .goods-list .product-one__image {
    flex: 0 0 170px !important;
    width: 100%;
    max-width: 100% !important;
    height: 170px !important;
}

.product-card-carousel .product-one__img,
.page--shop-entry .product__h1 + .goods-list .product-one__img {
    top: 50% !important;
    max-height: 100% !important;
}

.product-card-carousel .product-one__image > [style*="bottom:24px"],
.page--shop-entry .product__h1 + .goods-list .product-one__image > [style*="bottom:24px"] {
    right: 0 !important;
    bottom: 24px !important;
    z-index: 4 !important;
    text-shadow: none !important;
}

.product-card-carousel .product-one__sticker,
.page--shop-entry .product__h1 + .goods-list .product-one__sticker {
    display: block !important;
    bottom: 0 !important;
    min-height: 1.5rem !important;
    padding: 0 !important;
    font-size: 12px !important;
    line-height: 1.5rem !important;
    font-weight: 300 !important;
}

@media only screen and (min-width: 1192px) {
    .product-card-carousel .product-one__image,
    .page--shop-entry .product__h1 + .goods-list .product-one__image {
        flex-basis: 186px !important;
        height: 186px !important;
    }

    .product-card-carousel .list-item {
        width: 16.666667% !important;
        max-width: 16.666667% !important;
    }
}

/* r52: брендовая страница подарочных сертификатов в стиле Precision Scale. */
.sertifikaty-brand {
    --sert-graphite: #1C1F24;
    --sert-black: #0E0F12;
    --sert-red: #9b0000;
    --sert-metal: #8A9199;
    --sert-silver: #C9CDD2;
    --sert-bg: #F4F5F7;
    --sert-green: #2E9E5B;
    box-sizing: border-box;
    width: 100%;
    margin-top: 18px;
    color: var(--sert-graphite);
    font-family: Roboto, Arial, sans-serif;
}

.sertifikaty-brand *,
.sertifikaty-brand *::before,
.sertifikaty-brand *::after {
    box-sizing: border-box;
}

.sertifikaty-brand__hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr);
    gap: 28px;
    overflow: hidden;
    min-height: 320px;
    margin-bottom: 32px;
    padding: 34px;
    border: 1px solid rgba(201, 205, 210, .22);
    border-radius: 8px;
    background-color: var(--sert-graphite);
    background-image:
        linear-gradient(rgba(201, 205, 210, .08) 1px, transparent 1px),
        linear-gradient(90deg, rgba(201, 205, 210, .08) 1px, transparent 1px);
    background-size: 32px 32px;
    color: #fff;
}

.sertifikaty-brand__hero::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 5px;
    height: 100%;
    background: var(--sert-red);
}

.sertifikaty-brand__hero-copy,
.sertifikaty-brand__hero-visual {
    position: relative;
    z-index: 1;
}

.sertifikaty-brand__eyebrow,
.sertifikaty-brand__section-kicker,
.sertifikaty-brand__certificate-top,
.sertifikaty-brand__certificate-note,
.sertifikaty-brand__fact-label,
.sertifikaty-brand__ruler span {
    font-family: "JetBrains Mono", "Roboto Mono", SFMono-Regular, Consolas, monospace;
}

.sertifikaty-brand__eyebrow {
    margin-bottom: 18px;
    color: var(--sert-silver);
    font-size: 13px;
    line-height: 1.4;
}

.sertifikaty-brand__hero-title {
    max-width: 620px;
    margin: 0 0 18px;
    color: #fff;
    font-size: 42px;
    line-height: 1.1;
    font-weight: 800;
}

.sertifikaty-brand__hero-text {
    max-width: 660px;
    margin: 0;
    color: rgba(255, 255, 255, .82);
    font-size: 16px;
    line-height: 1.5;
}

.sertifikaty-brand__facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    max-width: 720px;
    margin-top: 28px;
    border: 1px solid rgba(201, 205, 210, .22);
    background: rgba(201, 205, 210, .22);
}

.sertifikaty-brand__fact {
    min-height: 76px;
    padding: 16px;
    background: rgba(14, 15, 18, .68);
}

.sertifikaty-brand__fact-value {
    display: block;
    color: #fff;
    font-size: 20px;
    line-height: 1.15;
    font-weight: 800;
}

.sertifikaty-brand__fact-label {
    display: block;
    margin-top: 6px;
    color: var(--sert-silver);
    font-size: 12px;
    line-height: 1.35;
}

.sertifikaty-brand__hero-visual {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
}

.sertifikaty-brand__certificate {
    position: relative;
    width: min(100%, 360px);
    aspect-ratio: 1.58 / 1;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 8px;
    background: var(--sert-black);
    box-shadow: 0 18px 36px rgba(0, 0, 0, .28);
}

.sertifikaty-brand__certificate::before,
.sertifikaty-brand__certificate::after {
    content: "";
    position: absolute;
    z-index: 0;
    background: var(--sert-red);
    transform: rotate(-28deg);
}

.sertifikaty-brand__certificate::before {
    top: -42px;
    left: -12px;
    width: 86px;
    height: 160px;
}

.sertifikaty-brand__certificate::after {
    right: -34px;
    bottom: -44px;
    width: 78px;
    height: 174px;
}

.sertifikaty-brand__certificate-top {
    position: absolute;
    z-index: 1;
    top: 24px;
    right: 24px;
    color: rgba(255, 255, 255, .74);
    font-size: 12px;
    line-height: 1.25;
}

.sertifikaty-brand__certificate-brand {
    position: absolute;
    z-index: 1;
    left: 118px;
    right: 24px;
    bottom: 54px;
    color: #fff;
    font-size: 26px;
    line-height: 1;
    font-weight: 900;
}

.sertifikaty-brand__certificate-note {
    position: absolute;
    z-index: 1;
    left: 118px;
    right: 24px;
    bottom: 26px;
    color: var(--sert-silver);
    font-size: 11px;
    line-height: 1.3;
}

.sertifikaty-brand__products,
.sertifikaty-brand__terms {
    margin-top: 0;
}

.sertifikaty-brand__products-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, .82fr);
    gap: 24px;
    align-items: end;
    margin-bottom: 18px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--sert-silver);
}

.sertifikaty-brand__section-kicker {
    margin-bottom: 6px;
    color: var(--sert-red);
    font-size: 12px;
    line-height: 1.4;
}

.sertifikaty-brand__section-title {
    margin: 0;
    color: var(--sert-graphite);
    font-size: 30px;
    line-height: 1.15;
    font-weight: 800;
}

.sertifikaty-brand__ruler {
    position: relative;
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0;
    padding-top: 18px;
    border-top: 2px solid var(--sert-graphite);
}

.sertifikaty-brand__ruler::before {
    content: "";
    position: absolute;
    top: -7px;
    left: 0;
    width: 18px;
    height: 2px;
    background: var(--sert-red);
}

.sertifikaty-brand__ruler span {
    position: relative;
    color: var(--sert-metal);
    font-size: 12px;
    line-height: 1.2;
    text-align: center;
}

.sertifikaty-brand__ruler span::before {
    content: "";
    position: absolute;
    top: -18px;
    left: 50%;
    width: 1px;
    height: 10px;
    background: var(--sert-graphite);
}

.sertifikaty-giftcards {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 0;
    margin: 0;
}

.sertifikaty-giftcards .list-item {
    display: flex !important;
    flex: 0 0 16.666667% !important;
    width: 16.666667% !important;
    max-width: 16.666667% !important;
    padding: 0 !important;
}

.sertifikaty-giftcards .list-item > .product-one {
    width: 100%;
    min-height: 100%;
    overflow: hidden;
    border: 1px solid #e4e4e4;
    border-radius: 0;
    background: #fff;
}

.sertifikaty-giftcards .list-item > .product-one:hover {
    border-color: #e4e4e4;
    box-shadow: none;
    transform: none;
}

.sertifikaty-giftcards .product-one__image {
    flex: 0 0 170px !important;
    height: 170px !important;
    background: #fff;
}

.sertifikaty-giftcards .product-one__img {
    top: 50% !important;
    max-width: 100% !important;
    max-height: 100% !important;
}

.sertifikaty-giftcards .product-one__image > [style*="bottom:24px"] {
    display: none !important;
    right: 8px !important;
    bottom: 30px !important;
}

.sertifikaty-giftcards .product-one__sticker {
    bottom: 0 !important;
    min-height: 1.5rem !important;
    padding: 0 !important;
}

.sertifikaty-giftcards .product-one__body {
    padding: 12px;
}

.sertifikaty-giftcards .product-one__cat {
    display: none;
}

.sertifikaty-giftcards .product-one__new,
.sertifikaty-giftcards .product-one__discount,
.sertifikaty-giftcards .product-one__price-old {
    display: none !important;
}

.sertifikaty-giftcards .product-one__name {
    min-height: 3.75em;
}

.sertifikaty-giftcards .details-list__item:nth-child(3),
.sertifikaty-giftcards .details-list__item:nth-child(4) {
    display: none;
}

.sertifikaty-giftcards .product-one__footer {
    align-items: center;
    margin-top: 10px;
}

@media only screen and (min-width: 1192px) {
    .sertifikaty-giftcards .product-one__image {
        flex-basis: 186px !important;
        height: 186px !important;
    }
}

.sertifikaty-brand__terms {
    margin-top: 34px;
    padding-top: 24px;
    border-top: 1px solid var(--sert-silver);
}

.sertifikaty-brand__terms-text {
    max-width: 1120px;
    margin-top: 16px;
    padding: 22px 24px;
    border-left: 5px solid var(--sert-red);
    background: var(--sert-bg);
}

.sertifikaty-brand__terms-text div {
    margin: 0 0 10px;
    color: var(--sert-graphite);
    font-size: 16px;
    line-height: 1.5;
}

.sertifikaty-brand__terms-text ol {
    margin: 18px 0 0;
    padding-left: 22px;
    column-count: 2;
    column-gap: 34px;
}

.sertifikaty-brand__terms-text li {
    break-inside: avoid;
    margin: 0 0 12px;
    color: var(--sert-graphite);
    font-size: 16px;
    line-height: 1.5;
}

@media only screen and (max-width: 1180px) {
    .sertifikaty-brand__hero,
    .sertifikaty-brand__products-head {
        grid-template-columns: 1fr;
    }

    .sertifikaty-brand__hero-visual {
        justify-content: flex-start;
    }

    .sertifikaty-giftcards .list-item {
        flex-basis: calc(50% - 8px) !important;
        width: calc(50% - 8px) !important;
        max-width: calc(50% - 8px) !important;
    }

    .sertifikaty-giftcards .product-one__image {
        flex: 0 0 190px !important;
        height: 190px !important;
    }

    .sertifikaty-giftcards .product-one__body {
        padding: 16px;
    }

    .sertifikaty-giftcards .product-one__name {
        min-height: 2.6em;
    }
}

@media only screen and (max-width: 767px) {
    .sertifikaty-brand {
        margin-top: 14px;
    }

    .sertifikaty-brand__hero {
        min-height: 0;
        padding: 24px 20px;
        border-radius: 8px;
        background-size: 24px 24px;
    }

    .sertifikaty-brand__hero-title {
        font-size: 30px;
    }

    .sertifikaty-brand__hero-text {
        font-size: 16px;
        line-height: 1.5;
    }

    .sertifikaty-brand__facts {
        grid-template-columns: 1fr;
    }

    .sertifikaty-brand__hero-visual {
        display: none;
    }

    .sertifikaty-brand__products-head {
        gap: 16px;
    }

    .sertifikaty-brand__section-title {
        font-size: 30px;
        line-height: 1.15;
    }

    .sertifikaty-brand__ruler {
        min-width: 0;
    }

    .sertifikaty-giftcards .list-item {
        flex-basis: 100% !important;
        width: 100% !important;
        max-width: 100% !important;
        padding-right: 0 !important;
        padding-left: 0 !important;
    }

    .sertifikaty-giftcards .list-item > .product-one {
        align-items: stretch;
        flex-direction: column;
    }

    .sertifikaty-giftcards .product-one__image {
        flex: 0 0 190px !important;
        width: 100%;
        max-width: 100% !important;
        height: 190px !important;
    }

    .sertifikaty-giftcards .product-one__body {
        flex: 1 1 auto;
        max-width: 100%;
    }

    .sertifikaty-brand__terms-text {
        padding: 18px 16px;
    }

    .sertifikaty-brand__terms-text ol {
        column-count: 1;
    }
}

/* r53: страница персональных данных в спокойной фирменной типографике Modellisimo. */
.page--personalnye-dannye {
    --personal-graphite: #1C1F24;
    --personal-black: #0E0F12;
    --personal-red: #9b0000;
    --personal-metal: #8A9199;
    --personal-silver: #C9CDD2;
    --personal-bg: #F4F5F7;
}

.page--personalnye-dannye .page__content {
    background: #fff;
    color: var(--personal-graphite);
    font-family: Roboto, Arial, sans-serif;
}

.page--personalnye-dannye .page__content > .section {
    padding: 28px 0 58px;
}

.page--personalnye-dannye .page__content > .section .section__inner {
    width: calc(100% - 48px);
    max-width: 1120px;
    margin-right: auto;
    margin-left: auto;
}

.page--personalnye-dannye .breadcrumbs {
    margin: 0 0 24px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--personal-silver);
    color: var(--personal-metal);
    font-size: 13px;
    line-height: 1.45;
}

.page--personalnye-dannye .breadcrumbs,
.page--personalnye-dannye .breadcrumbs * {
    font-weight: 400;
}

.page--personalnye-dannye .breadcrumbs a {
    color: var(--personal-metal);
    text-decoration: none;
}

.page--personalnye-dannye .breadcrumbs a:hover,
.page--personalnye-dannye .breadcrumbs a.current {
    color: var(--personal-red);
}

.page--personalnye-dannye .breadcrumbs span[itemprop="name"] {
    white-space: normal !important;
}

.page--personalnye-dannye .section__content {
    position: relative;
    max-width: 1060px;
    padding-top: 8px;
    color: var(--personal-graphite);
}

.page--personalnye-dannye .section__content::before {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    margin-bottom: 22px;
    background: var(--personal-red);
}

.page--personalnye-dannye .section__title {
    max-width: 900px;
    margin: 0 0 28px;
    color: var(--personal-black);
    font-size: 42px;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: 0;
    text-align: left;
}

.page--personalnye-dannye .section__content p,
.page--personalnye-dannye .section__content li {
    color: var(--personal-graphite);
    font-size: 16px;
    line-height: 1.5;
    font-weight: 400;
    letter-spacing: 0;
}

.page--personalnye-dannye .section__content p {
    max-width: 980px;
    margin: 0 0 14px;
    text-align: justify !important;
    text-align-last: left;
    -webkit-hyphens: auto;
    hyphens: auto;
    overflow-wrap: break-word;
}

.page--personalnye-dannye .section__content p > strong:first-child {
    color: var(--personal-red);
    font-size: 24px;
    line-height: 1.25;
    font-weight: 800;
}

.page--personalnye-dannye .section__content p:first-of-type {
    margin-bottom: 12px;
}

.page--personalnye-dannye .section__content p:first-of-type > strong {
    color: var(--personal-graphite);
    font-size: 20px;
}

.page--personalnye-dannye .section__content ol:first-of-type {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    max-width: 980px;
    margin: 0 0 30px;
    padding: 1px;
    border: 0;
    background: var(--personal-silver);
    counter-reset: personalSummary;
    list-style: none;
}

.page--personalnye-dannye .section__content ol:first-of-type li {
    position: relative;
    min-height: 76px;
    margin: 0;
    padding: 18px 18px 16px 54px;
    background: var(--personal-bg);
    font-size: 16px;
    line-height: 1.5;
    font-weight: 500;
}

.page--personalnye-dannye .section__content ol:first-of-type li::before {
    counter-increment: personalSummary;
    content: counter(personalSummary, decimal-leading-zero);
    position: absolute;
    top: 18px;
    left: 18px;
    color: var(--personal-red);
    font-size: 13px;
    line-height: 1.2;
    font-weight: 800;
}

.page--personalnye-dannye .section__content p + p > strong:first-child,
.page--personalnye-dannye .section__content ol + p > strong:first-child {
    display: inline-block;
    margin-top: 18px;
}

.page--personalnye-dannye .section__content p:not(:first-of-type) > strong:first-child {
    display: inline-block;
    padding-top: 10px;
}

.page--personalnye-dannye .section__content a {
    color: var(--personal-red);
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

@media only screen and (max-width: 900px) {
    .page--personalnye-dannye .section__title {
        font-size: 34px;
    }

    .page--personalnye-dannye .section__content ol:first-of-type {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media only screen and (max-width: 767px) {
    .page--personalnye-dannye .page__content > .section {
        padding: 18px 0 40px;
    }

    .page--personalnye-dannye .page__content > .section .section__inner {
        width: calc(100% - 28px);
    }

    .page--personalnye-dannye .breadcrumbs {
        margin-bottom: 18px;
        overflow-wrap: anywhere;
        font-size: 12px;
    }

    .page--personalnye-dannye .section__title {
        margin-bottom: 22px;
        font-size: 28px;
        line-height: 1.16;
    }

    .page--personalnye-dannye .section__content p,
    .page--personalnye-dannye .section__content li {
        font-size: 16px;
        line-height: 1.5;
    }

    .page--personalnye-dannye .section__content p > strong:first-child {
        font-size: 21px;
    }

    .page--personalnye-dannye .section__content p:first-of-type > strong {
        font-size: 18px;
    }

    .page--personalnye-dannye .section__content ol:first-of-type {
        grid-template-columns: 1fr;
        margin-bottom: 24px;
    }

    .page--personalnye-dannye .section__content ol:first-of-type li {
        min-height: 0;
        padding: 15px 15px 14px 48px;
        font-size: 16px;
    }

    .page--personalnye-dannye .section__content ol:first-of-type li::before {
        top: 16px;
        left: 15px;
    }
}

/* r55: страница "О нас" в фирменной системе Modellisimo без изменения CMS-текста. */
.page--o-nas {
    --about-graphite: #1C1F24;
    --about-black: #0E0F12;
    --about-red: #9b0000;
    --about-metal: #8A9199;
    --about-silver: #C9CDD2;
    --about-bg: #F4F5F7;
}

.page--o-nas .page__content {
    background: #fff;
    color: var(--about-graphite);
    font-family: Roboto, Arial, sans-serif;
}

.page--o-nas .page__content > .section {
    padding: 28px 0 58px;
}

.page--o-nas .page__content > .section .section__inner {
    width: calc(100% - 48px);
    max-width: 1120px;
    margin-right: auto;
    margin-left: auto;
}

.page--o-nas .breadcrumbs {
    margin: 0 0 24px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--about-silver);
    color: var(--about-metal);
    font-size: 13px;
    line-height: 1.45;
}

.page--o-nas .breadcrumbs,
.page--o-nas .breadcrumbs * {
    font-weight: 400;
}

.page--o-nas .breadcrumbs a {
    color: var(--about-metal);
    text-decoration: none;
}

.page--o-nas .breadcrumbs a:hover,
.page--o-nas .breadcrumbs a.current {
    color: var(--about-red);
}

.page--o-nas .breadcrumbs span[itemprop="name"] {
    white-space: normal !important;
}

.page--o-nas .section__content {
    position: relative;
    max-width: 1060px;
    padding-top: 8px;
    color: var(--about-graphite);
}

.page--o-nas .section__content::before {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    margin-bottom: 22px;
    background: var(--about-red);
}

.page--o-nas .section__title {
    max-width: 920px;
    margin: 0 0 28px;
    color: var(--about-black);
    font-size: 46px;
    line-height: 1.08;
    font-weight: 800;
    letter-spacing: 0;
    text-align: left;
}

.page--o-nas .section__content p,
.page--o-nas .section__content li,
.page--o-nas .section__content span {
    color: var(--about-graphite) !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    letter-spacing: 0;
    background: transparent !important;
}

.page--o-nas .section__content p {
    max-width: 980px;
    margin: 0 0 16px;
    text-align: justify !important;
    text-align-last: left;
    -webkit-hyphens: auto;
    hyphens: auto;
    overflow-wrap: break-word;
}

.page--o-nas .section__content p > br:first-child {
    display: none;
}

.page--o-nas .section__content p:nth-of-type(1),
.page--o-nas .section__content p:nth-of-type(2) {
    max-width: 980px;
    padding: 22px 24px;
    border-left: 5px solid var(--about-red);
    background: var(--about-bg) !important;
}

.page--o-nas .section__content p:nth-of-type(1) {
    margin-bottom: 1px;
}

.page--o-nas .section__content p:nth-of-type(2) {
    margin-bottom: 24px;
}

.page--o-nas .section__content b,
.page--o-nas .section__content strong {
    color: var(--about-graphite) !important;
    font-weight: 800;
}

.page--o-nas .section__content p:nth-of-type(1) b,
.page--o-nas .section__content p:nth-of-type(2) b {
    color: var(--about-red) !important;
}

.page--o-nas .section__content p:nth-of-type(5),
.page--o-nas .section__content p:nth-of-type(6),
.page--o-nas .section__content p:nth-of-type(8),
.page--o-nas .section__content p:nth-of-type(10) {
    margin-top: 34px;
    margin-bottom: 12px;
}

.page--o-nas .section__content p:nth-of-type(5) span,
.page--o-nas .section__content p:nth-of-type(6) span,
.page--o-nas .section__content p:nth-of-type(8) span,
.page--o-nas .section__content p:nth-of-type(10) span,
.page--o-nas .section__content p:nth-of-type(5) b,
.page--o-nas .section__content p:nth-of-type(6) b,
.page--o-nas .section__content p:nth-of-type(8) b,
.page--o-nas .section__content p:nth-of-type(10) b {
    color: var(--about-red) !important;
    font-size: 24px !important;
    line-height: 1.2 !important;
    font-weight: 800;
}

.page--o-nas .section__content p:nth-of-type(7),
.page--o-nas .section__content p:nth-of-type(9) {
    margin-bottom: 10px;
    color: var(--about-metal);
}

.page--o-nas .section__content p:nth-of-type(7) span,
.page--o-nas .section__content p:nth-of-type(9) span {
    color: var(--about-metal) !important;
    font-weight: 500;
}

.page--o-nas .section__content ul {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    max-width: 980px;
    margin: 0 0 22px;
    padding: 1px;
    border: 0;
    background: var(--about-silver);
    list-style: none;
}

.page--o-nas .section__content li {
    position: relative;
    min-height: 64px;
    margin: 0;
    padding: 18px 18px 16px 44px;
    background: var(--about-bg) !important;
    font-weight: 500;
}

.page--o-nas .section__content li::before {
    content: "";
    position: absolute;
    top: 24px;
    left: 19px;
    width: 9px;
    height: 9px;
    border: 2px solid var(--about-red);
    border-radius: 50%;
    background: #fff;
}

.page--o-nas .section__content li span {
    font-size: 16px !important;
    line-height: 1.38 !important;
    font-weight: 500;
}

.page--o-nas .section__content li.about-category-link-item {
    padding: 0;
    transition: background .18s ease, border-color .18s ease;
}

.page--o-nas .section__content li.about-category-link-item > a.about-category-link {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 64px;
    padding: 18px 18px 16px 44px;
    color: var(--about-graphite) !important;
    text-decoration: none;
}

.page--o-nas .section__content li.about-category-link-item > a.about-category-link span {
    color: var(--about-graphite) !important;
    text-decoration: none;
}

.page--o-nas .section__content li.about-category-link-item:hover,
.page--o-nas .section__content li.about-category-link-item:focus-within {
    background: #fff !important;
}

.page--o-nas .section__content li.about-category-link-item:hover::before,
.page--o-nas .section__content li.about-category-link-item:focus-within::before {
    background: var(--about-red);
}

.page--o-nas .section__content li.about-category-link-item > a.about-category-link:focus-visible {
    outline: 2px solid var(--about-red);
    outline-offset: -4px;
}

.page--o-nas .section__content a,
.page--o-nas .section__content a span {
    color: var(--about-red) !important;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.page--o-nas .section__content p:last-child {
    display: none;
}

@media only screen and (max-width: 900px) {
    .page--o-nas .section__title {
        font-size: 36px;
    }

    .page--o-nas .section__content ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media only screen and (max-width: 767px) {
    .page--o-nas .page__content > .section {
        padding: 18px 0 40px;
    }

    .page--o-nas .page__content > .section .section__inner {
        width: calc(100% - 28px);
    }

    .page--o-nas .breadcrumbs {
        margin-bottom: 18px;
        overflow-wrap: anywhere;
        font-size: 12px;
    }

    .page--o-nas .section__title {
        margin-bottom: 22px;
        font-size: 30px;
        line-height: 1.16;
    }

    .page--o-nas .section__content p,
    .page--o-nas .section__content li,
    .page--o-nas .section__content span {
        font-size: 16px !important;
        line-height: 1.5 !important;
    }

    .page--o-nas .section__content p:nth-of-type(1),
    .page--o-nas .section__content p:nth-of-type(2) {
        padding: 18px 16px;
    }

    .page--o-nas .section__content p:nth-of-type(5) span,
    .page--o-nas .section__content p:nth-of-type(6) span,
    .page--o-nas .section__content p:nth-of-type(8) span,
    .page--o-nas .section__content p:nth-of-type(10) span,
    .page--o-nas .section__content p:nth-of-type(5) b,
    .page--o-nas .section__content p:nth-of-type(6) b,
    .page--o-nas .section__content p:nth-of-type(8) b,
    .page--o-nas .section__content p:nth-of-type(10) b {
        font-size: 22px !important;
    }

    .page--o-nas .section__content ul {
        grid-template-columns: 1fr;
        margin-bottom: 20px;
    }

    .page--o-nas .section__content li {
        min-height: 0;
        padding: 15px 15px 14px 40px;
    }

    .page--o-nas .section__content li.about-category-link-item {
        padding: 0;
    }

    .page--o-nas .section__content li.about-category-link-item > a.about-category-link {
        min-height: 0;
        padding: 15px 15px 14px 40px;
    }

    .page--o-nas .section__content li::before {
        top: 21px;
        left: 16px;
    }
}

/* r58: единая фирменная типографика для статических страниц футера Modellisimo. */
.page--footer-brand {
    --footer-graphite: #1C1F24;
    --footer-black: #0E0F12;
    --footer-red: #9b0000;
    --footer-metal: #8A9199;
    --footer-silver: #C9CDD2;
    --footer-bg: #F4F5F7;
}

.page--footer-brand .page__content {
    background: #fff;
    color: var(--footer-graphite);
    font-family: Roboto, Arial, sans-serif;
}

.page--footer-brand .page__content > .section {
    padding: 28px 0 58px;
}

.page--footer-brand .page__content > .section .section__inner {
    width: calc(100% - 48px);
    max-width: 1180px;
    margin-right: auto;
    margin-left: auto;
}

.page--footer-brand .breadcrumbs {
    margin: 0 0 24px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--footer-silver);
    color: var(--footer-metal);
    font-size: 13px;
    line-height: 1.45;
}

.page--footer-brand .breadcrumbs,
.page--footer-brand .breadcrumbs * {
    font-weight: 400;
}

.page--footer-brand .breadcrumbs a {
    color: var(--footer-metal);
    text-decoration: none;
}

.page--footer-brand .breadcrumbs a:hover,
.page--footer-brand .breadcrumbs a.current {
    color: var(--footer-red);
}

.page--footer-brand .breadcrumbs span[itemprop="name"] {
    white-space: normal !important;
}

.page--footer-brand .section__content {
    position: relative;
    color: var(--footer-graphite);
    font-family: Roboto, Arial, sans-serif;
}

.page--footer-brand .section__content::before {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    margin-bottom: 22px;
    background: var(--footer-red);
}

.page--footer-brand .section__title {
    max-width: 980px;
    margin: 0 0 28px;
    color: var(--footer-black);
    font-size: 42px;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: 0;
    text-align: left;
}

.page--footer-brand .section__content a,
.page--footer-brand .section__content a span {
    color: var(--footer-red) !important;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}

.page--footer-brand .section__content img {
    max-width: 100%;
    height: auto;
}

.page--footer-brand .section__content * {
    box-sizing: border-box;
    max-width: 100%;
}

.page--footer-text .section__content,
.page--footer-contact .section__content {
    max-width: 980px;
}

.page--footer-shop .section__content {
    max-width: 1080px;
}

.page--footer-text .section__content p,
.page--footer-text .section__content li,
.page--footer-text .section__content td,
.page--footer-text .section__content th,
.page--footer-text .section__content > div:not(.section__title),
.page--footer-text .section__content div:not([class]),
.page--footer-text .section__content span,
.page--footer-contact .section__content > div:not(.section__title):not(.section-map),
.page--footer-contact .section__content span,
.page--footer-shop .section__content p,
.page--footer-shop .section__content div:not([class]),
.page--footer-shop .section__content span {
    color: var(--footer-graphite) !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
    letter-spacing: 0;
}

.page--footer-text .section__content p,
.page--footer-text .section__content > div:not(.section__title),
.page--footer-text .section__content div:not([class]),
.page--footer-shop .section__content p,
.page--footer-shop .section__content div:not([class]) {
    margin-top: 0;
    margin-bottom: 14px;
}

.page--footer-text .section__content p,
.page--footer-text .section__content div:not([class]),
.page--footer-shop .section__content p,
.page--footer-shop .section__content div:not([class]) {
    text-align: justify !important;
    text-align-last: left;
    -webkit-hyphens: auto;
    hyphens: auto;
    overflow-wrap: break-word;
}

.page--footer-text .section__content > .footer-text-normalized {
    margin-top: 0;
    margin-bottom: 12px;
    text-align: justify !important;
    text-align-last: left;
    -webkit-hyphens: auto;
    hyphens: auto;
    overflow-wrap: break-word;
}

.page--footer-text .section__content > .footer-text-intro {
    max-width: 980px;
    margin-right: auto;
    margin-left: auto;
    text-align: center !important;
}

.page--footer-text .section__content > .footer-text-normalized.footer-text-heading {
    margin-top: 28px;
    margin-bottom: 10px;
    color: var(--footer-red) !important;
    font-size: 22px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    text-align: left !important;
}

.page--footer-text .section__content > .footer-text-normalized.footer-text-heading:first-of-type {
    margin-top: 0;
}

.page--footer-text .section__content > .footer-text-normalized.footer-text-subheading {
    margin-top: 18px;
    margin-bottom: 8px;
    color: var(--footer-black) !important;
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 800 !important;
}

.page--footer-text .section__content span[style*="#ff0000"],
.page--footer-text .section__content span[style*="rgb(255, 0, 0)"],
.page--footer-text .section__content strong[style*="#ff0000"],
.page--footer-text .section__content strong[style*="rgb(255, 0, 0)"],
.page--footer-shop .section__content span[style*="#ff0000"],
.page--footer-shop .section__content span[style*="rgb(255, 0, 0)"],
.page--footer-shop .section__content strong[style*="#ff0000"],
.page--footer-shop .section__content strong[style*="rgb(255, 0, 0)"] {
    color: var(--footer-red) !important;
}

.page--footer-text .section__content b,
.page--footer-text .section__content strong,
.page--footer-contact .section__content b,
.page--footer-contact .section__content strong,
.page--footer-shop .section__content b,
.page--footer-shop .section__content strong {
    color: inherit;
    font-weight: 800;
}

.page--footer-text .section__content h2,
.page--footer-text .section__content h3,
.page--footer-text .section__content h4 {
    margin: 24px 0 10px;
    color: var(--footer-red);
    font-family: Roboto, Arial, sans-serif;
    font-weight: 800;
    letter-spacing: 0;
}

.page--footer-text .section__content h2 {
    font-size: 32px;
    line-height: 1.15;
}

.page--footer-text .section__content h3 {
    font-size: 24px;
    line-height: 1.2;
}

.page--footer-text .section__content h4 {
    font-size: 20px;
    line-height: 1.3;
}

.page--footer-text .section__content h2 *,
.page--footer-text .section__content h3 *,
.page--footer-text .section__content h4 * {
    color: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

.page--footer-text .section__content ul,
.page--footer-text .section__content ol {
    max-width: 980px;
    margin: 0 0 22px 20px;
    padding: 0 0 0 20px;
}

.page--footer-text .section__content li {
    margin-bottom: 8px;
    padding-left: 2px;
}

.page--footer-text .section__content li::marker {
    color: var(--footer-red);
    font-weight: 800;
}

.page--footer-text .section__content table {
    width: 100% !important;
    max-width: 100%;
    margin: 24px 0;
    border: 1px solid var(--footer-silver);
    border-collapse: collapse;
    background: #fff;
}

.page--footer-text .section__content th,
.page--footer-text .section__content td {
    padding: 12px 14px !important;
    border: 1px solid var(--footer-silver);
    vertical-align: top;
    background: #fff !important;
}

.page--footer-text .section__content th {
    color: var(--footer-black) !important;
    font-weight: 800;
}

.page--footer-text .section__content .faq-item,
.page--footer-text .section__content .faq-item * {
    color: var(--footer-graphite) !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: 17px !important;
    line-height: 1.62 !important;
    letter-spacing: 0;
}

.page--footer-text .section__content .faq-item strong {
    color: var(--footer-red) !important;
}

.page--footer-contact .section__content {
    overflow-wrap: anywhere;
}

.page--footer-contact .section__content .section-map,
.page--footer-contact .section__content iframe {
    display: block;
    width: 100% !important;
    max-width: 100%;
}

.page--footer-contact .section__content iframe {
    min-height: 420px;
    margin-top: 28px;
    border: 1px solid var(--footer-silver) !important;
    background: var(--footer-bg);
}

.page--footer-shop .section__content img {
    display: block;
    max-width: 100% !important;
    margin-right: auto;
    margin-left: auto;
    height: auto !important;
}

.page--footer-logo-index .section__content {
    max-width: 1180px;
}

.page--footer-logo-index .page-content-wrapper {
    max-width: 100%;
}

.page--footer-logo-index .brands-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
    gap: 1px;
    margin: 0;
    padding: 1px;
    border: 0;
    background: var(--footer-silver);
    list-style: none;
}

.page--footer-logo-index .brands-list__item {
    min-width: 0;
    margin: 0;
    padding: 0;
    background: #fff;
}

.page--footer-logo-index .brands-list__link {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 154px;
    height: 100%;
    padding: 16px 14px 14px;
    background: var(--footer-bg);
    color: var(--footer-graphite) !important;
    font-family: Roboto, Arial, sans-serif;
    text-align: center;
    text-decoration: none;
    transition: background .18s ease, color .18s ease;
}

.page--footer-logo-index .brands-list__link:hover,
.page--footer-logo-index .brands-list__link:focus-visible {
    background: #fff;
    color: var(--footer-red) !important;
}

.page--footer-logo-index .brands-list__img,
.page--footer-logo-index .brands-list__link .brand-logo-fallback {
    display: block;
    width: 100%;
    height: 78px;
    min-height: 78px;
    max-height: 78px;
    margin: 0 0 14px;
    object-fit: contain;
}

.page--footer-logo-index .brands-list__link .brand-logo-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 8px 10px;
    background: #050505;
    color: #fff !important;
    font-size: 14px;
    line-height: 1.08;
    text-align: center;
}

.page--footer-logo-index .brands-list__link:hover .brand-logo-fallback,
.page--footer-logo-index .brands-list__link:focus-visible .brand-logo-fallback {
    color: #fff !important;
}

.page--footer-logo-index .section__content .brands-list__title {
    display: block;
    color: var(--footer-graphite) !important;
    font-family: Roboto, Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.22 !important;
    font-weight: 800;
    letter-spacing: 0;
    overflow-wrap: anywhere;
}

.page--footer-logo-index .section__content .brands-list__link:hover .brands-list__title,
.page--footer-logo-index .section__content .brands-list__link:focus-visible .brands-list__title {
    color: var(--footer-red) !important;
}

.page--footer-blog .catalog {
    display: grid;
    grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
    gap: 34px;
    align-items: start;
    max-width: 100%;
}

.page--footer-blog .catalog__aside,
.page--footer-blog .catalog__content,
.page--footer-blog .catalog__body,
.page--footer-blog .blog-list,
.page--footer-blog .blog__item,
.page--footer-blog .blog__item--content,
.page--footer-blog .blog__item--header {
    min-width: 0;
    max-width: 100%;
}

.page--footer-blog .blog-widjet {
    padding: 18px 18px 20px;
    border: 1px solid var(--footer-silver);
    background: var(--footer-bg);
}

.page--footer-blog .blog-widjet__title {
    margin-bottom: 14px;
    color: var(--footer-red);
    font-family: Roboto, Arial, sans-serif;
    font-size: 18px;
    line-height: 1.25;
    font-weight: 800;
}

.page--footer-blog .blog-widjet a,
.page--footer-blog .archive__block a {
    color: var(--footer-graphite) !important;
    font-family: Roboto, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.35;
    text-decoration: none;
}

.page--footer-blog .blog-widjet a:hover,
.page--footer-blog .archive__block a:hover {
    color: var(--footer-red) !important;
}

.page--footer-blog .blog-list {
    min-width: 0;
}

.page--footer-blog .blog__item {
    gap: 20px;
    padding: 22px 0;
    border-bottom: 1px solid var(--footer-silver);
}

.page--footer-blog .blog__item--header {
    overflow: hidden;
    background: var(--footer-bg);
}

.page--footer-blog .blog__item--header img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}

.page--footer-blog .blog__item--content {
    color: var(--footer-graphite);
    font-family: Roboto, Arial, sans-serif;
}

.page--footer-blog .section__content .blog__item--title {
    color: var(--footer-graphite) !important;
    font-size: 19px !important;
    line-height: 1.26 !important;
    font-weight: 800;
    text-decoration: none;
}

.page--footer-blog .section__content .blog__item--title:hover {
    color: var(--footer-red) !important;
}

.page--footer-blog .blog__item--category,
.page--footer-blog .blog__item--read {
    color: var(--footer-red) !important;
    font-family: Roboto, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.35;
    font-weight: 500;
}

.page--footer-blog .blog__item--views,
.page--footer-blog .blog__item--date {
    color: var(--footer-metal);
    font-family: Roboto, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.35;
}

@media only screen and (max-width: 900px) {
    .page--footer-brand .section__title {
        font-size: 34px;
    }

    .page--footer-blog .catalog {
        grid-template-columns: 1fr;
        gap: 24px;
    }
}

@media only screen and (max-width: 767px) {
    .page--footer-brand .page__content > .section {
        padding: 18px 0 40px;
    }

    .page--footer-brand .page__content > .section .section__inner {
        width: calc(100% - 28px);
    }

    .page--footer-brand .breadcrumbs {
        margin-bottom: 18px;
        overflow-wrap: anywhere;
        font-size: 12px;
    }

    .page--footer-brand .section__title {
        margin-bottom: 22px;
        font-size: 28px;
        line-height: 1.16;
    }

    .page--footer-text .section__content p,
    .page--footer-text .section__content li,
    .page--footer-text .section__content td,
    .page--footer-text .section__content th,
    .page--footer-text .section__content > div:not(.section__title),
    .page--footer-text .section__content div:not([class]),
    .page--footer-text .section__content span,
    .page--footer-contact .section__content > div:not(.section__title):not(.section-map),
    .page--footer-contact .section__content span,
    .page--footer-shop .section__content p,
    .page--footer-shop .section__content div:not([class]),
    .page--footer-shop .section__content span,
    .page--footer-text .section__content .faq-item,
    .page--footer-text .section__content .faq-item * {
        font-size: 16px !important;
        line-height: 1.5 !important;
    }

    .page--footer-text .section__content h2 {
        font-size: 30px;
        line-height: 1.15;
    }

    .page--footer-text .section__content h3,
    .page--footer-text .section__content h4 {
        font-size: 22px;
        line-height: 1.2;
    }

    .page--footer-text .section__content h4 {
        font-size: 18px;
        line-height: 1.3;
    }

    .page--footer-text .section__content table {
        display: block;
        overflow-x: auto;
    }

    .page--footer-contact .section__content iframe {
        min-height: 360px;
    }

    .page--footer-logo-index .brands-list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .page--footer-logo-index .brands-list__link {
        min-height: 136px;
        padding: 14px 10px 12px;
    }

    .page--footer-logo-index .brands-list__img,
    .page--footer-logo-index .brands-list__link .brand-logo-fallback {
        height: 64px;
        min-height: 64px;
        max-height: 64px;
    }

    .page--footer-logo-index .brands-list__title {
        font-size: 12px !important;
    }
}

/* Magazin page visit panel */
.page--footer-shop .section__content .magazin-legacy-info,
.page--footer-shop .section__content .magazin-legacy-showcase {
    display: none !important;
}

.page--footer-shop .section__content .magazin-visit-panel,
.page--footer-shop .section__content .magazin-showcase-intro {
    width: min(100%, 1000px);
    margin-right: auto;
    margin-left: auto;
}

.page--footer-shop .section__content .magazin-visit-panel {
    margin-top: 4px;
    margin-bottom: 28px;
    border-top: 3px solid var(--footer-red);
    border-bottom: 1px solid var(--footer-silver);
    background: #fff;
}

.page--footer-shop .section__content .magazin-visit-panel__head {
    max-width: 760px;
    padding: 24px 0 20px;
}

.page--footer-shop .section__content .magazin-visit-panel__eyebrow {
    margin-bottom: 8px;
    color: var(--footer-red) !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.page--footer-shop .section__content .magazin-visit-panel__title {
    margin: 0;
    color: var(--footer-black);
    font-family: Roboto, Arial, sans-serif;
    font-size: 32px;
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: 0;
}

.page--footer-shop .section__content .magazin-visit-panel__lead {
    max-width: 680px;
    margin: 12px 0 0;
    color: var(--footer-graphite) !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
}

.page--footer-shop .section__content .magazin-visit-panel__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--footer-silver);
    border-left: 1px solid var(--footer-silver);
}

.page--footer-shop .section__content .magazin-visit-panel__cell {
    min-height: 142px;
    padding: 18px 16px 16px;
    border-right: 1px solid var(--footer-silver);
    border-bottom: 1px solid var(--footer-silver);
    background: linear-gradient(180deg, #fff 0%, #f7f8fa 100%);
}

.page--footer-shop .section__content .magazin-visit-panel__cell span,
.page--footer-shop .section__content .magazin-showcase-intro span {
    display: block;
    margin-bottom: 9px;
    color: var(--footer-red) !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.page--footer-shop .section__content .magazin-visit-panel__cell strong,
.page--footer-shop .section__content .magazin-showcase-intro strong {
    display: block;
    color: var(--footer-black) !important;
    font-size: 18px !important;
    line-height: 1.3 !important;
    font-weight: 800;
}

.page--footer-shop .section__content .magazin-visit-panel__cell em {
    display: block;
    margin-top: 8px;
    color: var(--footer-graphite) !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
    font-style: normal;
}

.page--footer-shop .section__content .magazin-visit-panel__notice {
    margin: 18px 0 0;
    padding: 14px 16px;
    border-left: 4px solid var(--footer-red);
    color: var(--footer-black) !important;
    background: #fff4f4;
    font-size: 15px !important;
    line-height: 1.5 !important;
}

.page--footer-shop .section__content .magazin-visit-panel__notice strong {
    color: var(--footer-red) !important;
    font-weight: 800;
    text-transform: uppercase;
}

.page--footer-shop .section__content .magazin-visit-panel__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding: 18px 0 24px;
}

.page--footer-shop .section__content .magazin-visit-panel__actions a {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 0 18px;
    border: 1px solid var(--footer-red);
    color: var(--footer-red) !important;
    background: #fff;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 800;
    text-decoration: none;
}

.page--footer-shop .section__content .magazin-visit-panel__actions a:first-child {
    color: #fff !important;
    background: var(--footer-red);
}

.page--footer-shop .section__content .magazin-visit-panel__actions a:focus-visible,
.page--footer-shop .section__content .magazin-visit-panel__actions a:hover {
    background: var(--footer-black);
    border-color: var(--footer-black);
    color: #fff !important;
}

.page--footer-shop .section__content .magazin-showcase-intro {
    display: grid;
    grid-template-columns: minmax(220px, .55fr) minmax(0, 1fr);
    gap: 22px;
    align-items: start;
    margin-top: 22px;
    margin-bottom: 24px;
    padding: 18px 20px;
    border-left: 4px solid var(--footer-red);
    background: #f7f8fa;
}

.page--footer-shop .section__content .magazin-showcase-intro p {
    margin: 0;
    color: var(--footer-graphite) !important;
    font-size: 16px !important;
    line-height: 1.5 !important;
}

/* Magazin page photo gallery */
.page--footer-shop .section__content .magazin-photo-link {
    display: block;
    cursor: zoom-in;
}

.page--footer-shop .section__content .magazin-photo-link--hero {
    width: min(100%, 1000px);
    max-width: 100%;
    margin: 0 auto;
}

.page--footer-shop .section__content img.magazin-photo {
    display: block;
    width: 100% !important;
    height: auto !important;
    max-width: 100%;
}

.page--footer-shop .section__content .magazin-photo-grid {
    width: min(100%, 1000px) !important;
    max-width: 1000px;
    margin: 22px auto !important;
    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 12px !important;
    table-layout: fixed;
}

.page--footer-shop .section__content .magazin-photo-grid td {
    width: 50%;
    padding: 0 !important;
    border: 0 !important;
    vertical-align: top;
    background: transparent;
}

.page--footer-shop .section__content .magazin-photo-grid .magazin-photo-link {
    width: 100%;
}

.page--footer-shop .section__content .magazin-photo-link:focus-visible {
    outline: 3px solid #9b0000;
    outline-offset: 3px;
}

.page--footer-shop .section__content .magazin-photo-link:hover img.magazin-photo {
    filter: brightness(.96);
}

body.magazin-lightbox-open {
    overflow: hidden;
}

body.magazin-lightbox-open .cookie-consent {
    display: none !important;
}

.magazin-lightbox {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 34px;
    background: rgba(13, 15, 18, .88);
}

.magazin-lightbox__img {
    display: block;
    width: auto;
    height: auto;
    max-width: min(1200px, calc(100vw - 68px));
    max-height: calc(100vh - 92px);
    object-fit: contain;
    background: #fff;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .4);
}

.magazin-lightbox__close {
    position: fixed;
    top: 18px;
    right: 20px;
    width: 42px;
    height: 42px;
    border: 1px solid rgba(255, 255, 255, .45);
    border-radius: 50%;
    background: rgba(0, 0, 0, .42);
    color: #fff;
    font-size: 30px;
    line-height: 38px;
    text-align: center;
    cursor: pointer;
}

.magazin-lightbox__hint {
    position: fixed;
    left: 24px;
    right: 24px;
    bottom: 18px;
    color: rgba(255, 255, 255, .75);
    font-size: 13px;
    line-height: 1.4;
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .page--footer-shop .section__content .magazin-visit-panel {
        margin-top: 0;
        margin-bottom: 22px;
    }

    .page--footer-shop .section__content .magazin-visit-panel__head {
        padding: 20px 0 16px;
    }

    .page--footer-shop .section__content .magazin-visit-panel__title {
        font-size: 30px;
        line-height: 1.15;
    }

    .page--footer-shop .section__content .magazin-visit-panel__grid,
    .page--footer-shop .section__content .magazin-showcase-intro {
        grid-template-columns: 1fr;
    }

    .page--footer-shop .section__content .magazin-visit-panel__cell {
        min-height: 0;
        padding: 16px 14px;
    }

    .page--footer-shop .section__content .magazin-visit-panel__actions {
        padding: 16px 0 20px;
    }

    .page--footer-shop .section__content .magazin-visit-panel__notice {
        margin-top: 14px;
        padding: 12px 14px;
        font-size: 14px !important;
    }

    .page--footer-shop .section__content .magazin-visit-panel__actions a {
        justify-content: center;
        width: 100%;
    }

    .page--footer-shop .section__content .magazin-showcase-intro {
        gap: 12px;
        margin-top: 18px;
        padding: 16px;
    }

    .page--footer-shop .section__content .magazin-photo-grid,
    .page--footer-shop .section__content .magazin-photo-grid tbody,
    .page--footer-shop .section__content .magazin-photo-grid tr,
    .page--footer-shop .section__content .magazin-photo-grid td {
        display: block;
        width: 100% !important;
    }

    .page--footer-shop .section__content .magazin-photo-grid {
        border-spacing: 0 !important;
    }

    .page--footer-shop .section__content .magazin-photo-grid td + td,
    .page--footer-shop .section__content .magazin-photo-grid tr + tr td:first-child {
        margin-top: 12px;
    }

    .magazin-lightbox {
        padding: 16px;
    }

    .magazin-lightbox__img {
        max-width: calc(100vw - 32px);
        max-height: calc(100vh - 78px);
    }
}
