
        /* Graphik-Medium-Cy: файлов нет в static/fonts/ — даём системный fallback (см. font-family ниже),
           чтобы не было 3 × 404 на каждой холодной загрузке. */

        /* Заголовки в каталоге (моб. «Выберите категорию», десктоп карточки уровня 2) */
        @font-face {
            font-family: 'Graphik LC Web';
            src: url('/static/fonts/graphiklcweb_medium.ttf') format('truetype');
            font-weight: 500;
            font-style: normal;
            font-display: swap;
        }
        /* YS Text — фирменный шрифт Яндекса (виджет Маркета) */
        @font-face {
            font-family: 'YS Text';
            src: url('https://yastatic.net/s3/home/fonts/ys/3/text-regular.woff2') format('woff2');
            font-weight: 400;
            font-style: normal;
            font-display: swap;
        }
        @font-face {
            font-family: 'YS Text';
            src: url('https://yastatic.net/s3/home/fonts/ys/3/text-medium.woff2') format('woff2');
            font-weight: 500;
            font-style: normal;
            font-display: swap;
        }
        
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        
        body {
            font-family: 'Graphik-Medium-Cy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            background: #ffffff;
            min-height: 100vh;
            min-height: 100dvh;
            min-height: -webkit-fill-available;
            display: flex;
            flex-direction: column;
            color: #333;
            overflow-x: hidden;
            width: 100%;
            margin: 0;
            padding: 0;
            padding-bottom: env(safe-area-inset-bottom);
        }
        
        html {
            width: 100%;
            overflow-x: hidden;
            margin: 0;
            padding: 0;
            background: #ffffff;
            background-color: #ffffff;
            min-height: 100%;
            min-height: -webkit-fill-available;
            /* До init: разумный fallback; точное значение задаёт updateDesktopHeaderOffset() на широком десктопе */
            --header-desktop-offset: 96px;
            --header-surface-bg: #ffffff;
        }
        
        .container {
            position: relative;
            max-width: 1400px;
            width: 100%;
            margin: 0 auto;
            padding: 0 20px 20px 20px; /* шапка примыкает к верху */
            box-sizing: border-box;
            flex: 1 0 auto; /* растягиваем контент, чтобы футер был внизу */
        }
        
        .container > .header:first-child {
            margin-top: 0;
        }
        
        /* Убираем лишние отступы сверху на мобильных */
        @media (max-width: 480px) {
            body {
                padding-top: 0;
                margin-top: 0;
            }
            
            .container {
                padding-top: var(--header-mobile-offset, 124px);
                margin-top: 0;
            }
            
            .catalog-btn {
                padding: 8px;
                font-size: 0;
                gap: 0;
                min-width: 40px;
                width: 40px;
                justify-content: center;
            }
            
            .catalog-btn .dropdown-arrow {
                display: none;
            }
            
            .catalog-btn svg:first-of-type {
                width: 20px;
                height: 20px;
            }
            
            .catalog-btn span,
            .catalog-btn .catalog-text {
                display: none;
            }
            
            .catalog-dropdown-menu {
                width: 85vw;
            }
            
            .catalog-dropdown-item {
                padding: 10px 12px;
            }
            
            .catalog-dropdown-item .category-icon {
                width: 28px;
                height: 28px;
            }
        }
        
        /* Мобильные устройства */
        /* Для планшетов и мобильных (1024px и меньше) - используем мобильные стили */
        @media screen and (max-width: 1024px) {
            :root {
                --header-mobile-offset: 124px;
                --header-mobile-top-gap: 8px;
            }

            .container {
                padding: 10px;
                padding-top: var(--header-mobile-offset, 124px);
                padding-bottom: calc(20px + env(safe-area-inset-bottom) + 50px);
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            body {
                width: 100%;
                max-width: 100vw;
                overflow-x: hidden;
                box-sizing: border-box;
            }
            
            html {
                width: 100%;
                max-width: 100vw;
                overflow-x: hidden;
                box-sizing: border-box;
            }
            
            img, video, iframe {
                max-width: 100%;
                height: auto;
            }
            
            .header-desktop {
                display: none !important;
            }
            
            .header-mobile {
                display: block !important;
                position: fixed !important;
                top: var(--header-mobile-top-gap, 8px);
                left: 0;
                right: 0;
                width: 100%;
                margin: 0 !important;
                margin-top: 0 !important;
                padding-top: env(safe-area-inset-top, 0px);
                padding-bottom: 0;
                z-index: 2000;
                background: var(--header-surface-bg, #ffffff);
                box-shadow: none;
            }

            .container > .header:first-child {
                margin-top: 0 !important;
            }

            .header-mobile::before {
                top: calc(-1 * env(safe-area-inset-top, 0px));
                bottom: 0;
            }

            .header {
                margin: 0 !important;
                padding: 0;
            }

            .header::before {
                top: 0;
                bottom: 0;
            }

            .catalog-icon-btn,
            .cart-icon-btn {
                display: none !important;
                opacity: 0 !important;
                pointer-events: none !important;
            }
            
            .catalog-btn {
                padding: 6px 10px;
                font-size: 0.8rem;
                gap: 4px;
                background: transparent !important;
                color: #374151 !important;
                border: none !important;
                position: relative !important;
                z-index: 1001 !important;
                pointer-events: auto !important;
                touch-action: manipulation !important;
            }
            
            .catalog-btn:hover {
                background: transparent !important;
            }
            
            .catalog-btn:active {
                background: rgba(0, 0, 0, 0.1) !important;
            }
            
            .catalog-btn svg {
                width: 16px;
                height: 16px;
                stroke: #2d2d2d !important;
                pointer-events: none;
            }
            
            .catalog-dropdown {
                position: relative !important;
                z-index: 2000 !important;
            }
            
            .catalog-dropdown-menu {
                width: 85vw;
            }
            
            .search-bar {
                max-width: none;
                flex: 1;
            }
            
            .logo {
                width: auto;
                height: 28px;
                max-width: 76px;
                object-fit: contain;
            }
            
            .header-top-mobile {
                position: relative;
                display: flex;
                align-items: center;
                gap: 12px;
                padding: 8px 12px 10px;
                min-height: 52px;
            }

            .header-mobile-logo {
                position: static;
                transform: none;
                margin: 0;
                flex-shrink: 0;
                line-height: 0;
            }

            .header-mobile-logo .logo-link {
                display: block;
            }

            .header-mobile-search {
                flex: 1;
                min-width: 0;
                position: relative;
            }

            .header-mobile-search__trigger {
                width: 100%;
                display: flex;
                align-items: center;
                gap: 8px;
                min-height: 44px;
                padding: 0 12px 0 16px;
                background: #f2f2f7;
                border: none;
                border-radius: 12px;
                cursor: pointer;
                text-align: left;
                font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
                -webkit-tap-highlight-color: transparent;
            }

            .header-mobile-search__trigger-text {
                flex: 1;
                min-width: 0;
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
                font-size: 16px;
                font-weight: 400;
                color: #8e8e93;
            }

            .header-mobile-search__trigger.has-value .header-mobile-search__trigger-text {
                color: #000;
            }

            .header-mobile-search__trigger svg {
                flex-shrink: 0;
                width: 20px;
                height: 20px;
                color: #8e8e93;
            }

            .catalog-btn--hidden {
                position: absolute !important;
                width: 1px !important;
                height: 1px !important;
                margin: -1px !important;
                padding: 0 !important;
                overflow: hidden !important;
                clip: rect(0, 0, 0, 0) !important;
                white-space: nowrap !important;
                border: 0 !important;
                opacity: 0 !important;
                pointer-events: none !important;
            }

            .header-top-mobile-actions {
                display: none !important;
            }
            
            .header-top-mobile h1:not(.header-mobile-logo) {
                position: static;
                transform: none;
                margin: 0;
            }
            
            .header-top-mobile .catalog-dropdown {
                flex-shrink: 0;
                z-index: 2000;
            }
            
            .header-top-mobile .cart-icon-btn-header {
                flex-shrink: 0;
                margin-left: auto;
                z-index: 2;
            }
            
            
            .search-bar-mobile {
                width: 100%;
            }
            
            .search-bar-mobile .search-input {
                width: 100%;
                border: none;
                outline: none;
                background: transparent;
                font-size: 16px; /* Минимум 16px для предотвращения автоматического увеличения масштаба на iOS */
            }
            
            .search-bar-mobile .search-autocomplete {
                min-width: calc(100vw - 30px);
                max-width: calc(100vw - 30px);
                left: 0;
                right: 0;
            }
            
            .search-bar-mobile .search-icon-btn {
                position: absolute;
                right: 8px;
                top: 50%;
                transform: translateY(-50%);
                background: transparent;
                border: none;
                cursor: pointer;
                padding: 4px;
                display: flex;
                align-items: center;
                justify-content: center;
            }
            
            .quick-menu-mobile {
                display: flex !important;
                flex-wrap: nowrap !important;
                width: 100% !important;
                max-width: 100% !important;
                padding: 6px 8px;
                margin-bottom: 6px;
                gap: 4px;
                overflow-x: auto !important;
                overflow-y: hidden !important;
                -webkit-overflow-scrolling: touch;
                box-sizing: border-box;
                justify-content: center;
                align-items: center;
            }
            
            .quick-menu-mobile .quick-menu-item {
                font-size: 0.75rem;
                padding: 4px 8px;
                flex-shrink: 0;
                white-space: nowrap;
                min-width: fit-content;
            }
        }
        
        /* Узкий экран (430px и т.п.) — чуть компактнее, чтобы не выходило за край */
        @media screen and (max-width: 480px) {
            .quick-menu-mobile {
                padding: 2px 2px !important;
                gap: 3px !important;
            }
            .quick-menu-mobile .quick-menu-item {
                font-size: 0.72rem !important;
                padding: 10px 12px !important;
            }
        }
        
        /* Скрываем доп. пункты quick-menu на мобильных и планшетах */
        @media screen and (max-width: 1024px) {
            .quick-menu-mobile .quick-menu-item-tablet {
                display: none !important;
            }
        }
        
        
        /* Для очень маленьких экранов (до 420px) чуть компактнее */
        @media screen and (max-width: 420px) {
            .quick-menu-mobile {
                flex-wrap: nowrap !important;
                padding: 4px 6px !important;
                gap: 3px !important;
                overflow-x: auto !important;
                overflow-y: hidden !important;
            }
            
            .quick-menu-mobile .quick-menu-item {
                font-size: 0.65rem !important;
                padding: 3px 5px !important;
            }
        }
        
        .header {
            color: #111827;
            background: transparent;
            border-bottom: none;
            border-radius: 0;
            margin: 10px 0 20px 0;
            padding: 5px 0;
            position: relative;
            z-index: 100;
        }
        
        .header::before {
            content: '';
            position: absolute;
            top: -10px;
            left: 50%;
            transform: translateX(-50%);
            width: 100vw;
            bottom: 0;
            background: var(--header-surface-bg, #ffffff);
            z-index: -1;
        }
        
        /* Плавающий header — выше панели фильтров (1050), каталог приоритетнее */
        @media (min-width: 1025px) {
            .header-desktop {
                position: fixed;
                top: 0;
                left: 0;
                right: 0;
                width: 100%;
                margin: 0 !important;
                margin-top: 0px !important;
                padding-top: 8px;
                padding-bottom: 0;
                z-index: 2000;
                background: var(--header-surface-bg, #ffffff);
                box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
            }
            
            .container > .header-desktop:first-child {
                margin-top: 0px !important;
            }
            
            .header-desktop::before {
                top: 0;
            }
            
            .container {
                padding-top: var(--header-desktop-offset, 96px);
            }
            
            .header-main {
                padding-bottom: 10px;
            }
        }
        
        .container > .header:first-child {
            margin-top: 10px;
        }
        
        .container > .header-desktop:first-child {
            margin-top: 0px !important;
        }
        
        .header-desktop {
            display: block;
            margin-top: 0px;
        }
        
        .header-mobile {
            display: none;
            position: relative;
        }
        
        .header-top-links {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 8px 20px;
            flex-wrap: wrap;
            padding-bottom: 0px;
            margin-bottom: 8px;
            border-bottom: 1px solid rgba(45, 45, 45, 0.1);
        }
        
        .header-desktop {
            padding-top: 0px;
        }

        .header-top-links-left,
        .header-top-links-right {
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            min-width: 0;
        }

        .header-top-links-left {
            gap: 36px;
        }

        .header-top-links-right {
            gap: 14px;
        }

        .header-top-links-left .header-top-link {
            font-size: 0.8125rem;
            font-weight: 400;
            color: #374151;
            text-decoration: none;
            white-space: nowrap;
        }
        
        .header-top-links-left .header-top-link--delivery {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 36px;
            padding: 8px 16px;
            background: transparent;
            border: none;
            border-radius: 0;
            box-sizing: border-box;
            font-size: 0.8125rem;
            font-weight: 400;
            color: #374151;
        }

        .header-top-phone {
            font-size: 0.8125rem;
            font-weight: 400;
            color: #374151;
            text-decoration: none;
            white-space: nowrap;
        }

        .header-top-callback {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 36px;
            padding: 8px 16px;
            font-size: 0.8125rem;
            font-weight: 400;
            font-family: inherit;
            color: #374151;
            text-decoration: none;
            white-space: nowrap;
            background: transparent;
            border: none;
            border-radius: 0;
            box-sizing: border-box;
            cursor: pointer;
            transition: background 0.15s ease;
        }

        .header-top-callback:hover {
            background: transparent;
        }

        .header-contact-messenger {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 30px;
            height: 30px;
            border-radius: 8px;
            color: #374151;
            flex-shrink: 0;
            text-decoration: none;
            transition: background 0.2s ease, color 0.2s ease;
        }

        .header-contact-messenger:hover {
            background: rgba(0, 0, 0, 0.06);
            color: #111827;
        }

        .header-contact-messenger svg {
            width: 20px;
            height: 20px;
        }

        .header-contact-messenger--max img {
            width: 20px;
            height: 20px;
            object-fit: contain;
            display: block;
        }

        .header-top-mobile-actions .header-contact-messenger {
            width: 40px;
            height: 40px;
            border-radius: 12px;
        }

        .header-mobile .header-top-mobile-actions .header-contact-messenger {
            display: none !important;
        }
        
        .header-main {
            display: flex;
            align-items: center;
            justify-content: flex-start;
            gap: 10px;
        }

        .header-desktop .header-main-divider {
            display: block;
            width: 1px;
            height: 20px;
            background: #111827;
            flex-shrink: 0;
            margin: 0 2px;
        }

        .header-desktop .header-main .quick-menu {
            flex: 1;
            min-width: 0;
            flex-wrap: nowrap;
        }

        .header-desktop .header-main .quick-menu-item {
            flex-shrink: 0;
        }

        .header-desktop .header-main .search-bar {
            flex: 0 1 380px;
            width: 380px;
            max-width: 400px;
            margin-left: auto;
        }
        
        /* Контейнер для ограничения ширины header */
        .header-inner {
            max-width: 1200px;
            margin: 0 auto;
            padding: 0 20px;
        }
        
        @media (min-width: 1025px) {
            .header-desktop .header-inner {
                max-width: 1380px;
            }
        }
        
        .header-top-mobile {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 10px;
            margin-bottom: 0;
        }
        
        .search-bar-mobile {
            background: var(--header-surface-bg, #ffffff);
            border-radius: 14px;
            padding: 6px 10px;
            box-shadow: 0 2px 10px rgba(0,0,0,0.08);
            position: relative;
            display: flex;
            align-items: center;
            gap: 8px;
            border: 1px solid rgba(55, 65, 81, 0.22);
            transition: border-color 0.3s ease, box-shadow 0.3s ease;
        }

        .search-mobile-wrapper {
            position: relative;
            display: flex;
            justify-content: center;
        }

        .header-top-mobile-actions {
            margin-left: auto;
            display: flex;
            align-items: center;
            gap: 2px;
        }

        .header-top-mobile-actions .cart-icon-btn-header {
            margin-left: 0;
        }

        .search-mobile-toggle {
            width: 40px;
            height: 40px;
            border: none;
            border-radius: 12px;
            background: transparent;
            display: none;
            align-items: center;
            justify-content: center;
            color: #374151;
            cursor: pointer;
        }

        .search-mobile-toggle svg {
            width: 20px;
            height: 20px;
            stroke: currentColor;
        }
        
        .search-bar-mobile:focus-within {
            border-color: rgba(45, 45, 45, 0.6);
            box-shadow: 0 2px 15px rgba(45, 45, 45, 0.15);
        }
        
        .cart-icon-btn-header {
            position: relative;
            background: transparent;
            border: none;
            border-radius: 12px;
            padding: 8px;
            cursor: pointer;
            transition: all 0.2s ease;
            display: flex;
            align-items: center;
            justify-content: center;
            width: 40px;
            height: 40px;
            margin-left: auto;
        }
        
        .cart-icon-btn-header:hover {
            background: transparent;
            border: none;
            color: inherit;
        }
        
        .cart-icon-btn-header svg {
            width: 20px;
            height: 20px;
            stroke: #374151;
        }
        
        .cart-icon-btn-header .cart-badge {
            position: absolute;
            top: -4px;
            right: -4px;
            background: #ef4444;
            color: white;
            border-radius: 10px;
            padding: 2px 6px;
            font-size: 0.7rem;
            font-weight: 600;
            min-width: 18px;
            text-align: center;
        }

        .header-desktop .cart-icon-btn-header--desktop {
            background: #111827;
            color: #ffffff;
            width: auto;
            min-width: 40px;
            height: 40px;
            padding: 0 14px 0 12px;
            gap: 8px;
            border-radius: 12px;
            margin-left: auto;
            flex-shrink: 0;
        }

        .header-desktop .cart-icon-btn-header--desktop:hover {
            background: #1f2937;
            color: #ffffff;
        }

        .header-desktop .cart-icon-btn-header--desktop svg {
            width: 18px;
            height: 18px;
            stroke: currentColor;
            flex-shrink: 0;
        }

        .header-desktop .cart-icon-btn-header--desktop .cart-icon-btn-header__label {
            font-size: 0.9375rem;
            font-weight: 600;
            line-height: 1;
            white-space: nowrap;
        }

        .header-desktop .cart-icon-btn-header--desktop .cart-badge {
            top: -6px;
            right: -8px;
        }
        
        /* Показываем старую кнопку корзины только когда верхняя не видна */
        .cart-icon-btn.visible {
            opacity: 1 !important;
            pointer-events: auto !important;
        }
        
        .header h1 {
            margin: 0;
            margin-left: 0;
            padding-left: 0;
            display: flex;
            align-items: center;
            justify-content: flex-start; /* логотип слева */
            flex-shrink: 0; /* не сжимается */
        }
        
        .logo {
            width: 50px;
            height: 50px;
            border-radius: 10px;
            object-fit: cover;
        }
        
        /* Мобильная версия - размер логотипа как в планшете */
        @media (max-width: 480px) {
            .logo {
                width: 40px !important;
                height: 40px !important;
            }
        }
        
        .logo-link {
            text-decoration: none;
            display: inline-block;
            transition: transform 0.2s ease;
            cursor: pointer;
        }
        
        .logo-link:hover {
            transform: scale(1.05);
        }
        
        .catalog-btn {
            display: flex;
            align-items: center;
            gap: 6px;
            padding: 8px 14px;
            background: transparent;
            color: #2d2d2d;
            border: none;
            border-radius: 12px;
            font-size: 0.9rem;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.2s ease;
            white-space: nowrap;
        }
        
        .catalog-btn-desktop {
            background: transparent;
            color: #4b5563;
            padding: 4px 8px;
            border-radius: 6px;
            font-family: inherit;
            font-size: 1rem;
            font-weight: inherit;
            gap: 0;
            box-shadow: none;
            border: none;
            transition: all 0.2s ease;
        }
        
        .catalog-btn-desktop:hover,
        .catalog-btn.catalog-btn-desktop:hover {
            background: #f3f4f6;
            transform: none;
            box-shadow: none;
            color: #2d2d2d;
        }
        
        .catalog-btn-desktop:active,
        .catalog-btn.catalog-btn-desktop:active {
            background: #f3f4f6;
            transform: none;
            box-shadow: none;
            color: #2d2d2d;
        }
        
        .catalog-btn-desktop svg {
            display: none;
        }
        
        .catalog-btn-desktop .catalog-text {
            color: inherit;
            font-size: 1rem;
            font-weight: inherit;
            transition: color 0.2s ease;
        }
        
        .catalog-btn-desktop:hover .catalog-text {
            color: #2d2d2d;
        }
        
        .catalog-btn:hover {
            background: transparent;
            transform: none;
        }
        
        .catalog-btn:active {
            background: rgba(0, 0, 0, 0.1);
            transform: translateY(0);
        }
        
        .catalog-btn svg {
            flex-shrink: 0;
        }
        
        .catalog-btn .dropdown-arrow {
            display: none;
        }
        
        .catalog-dropdown.active .catalog-btn .dropdown-arrow {
            display: none;
        }
        
        .catalog-dropdown {
            position: relative;
            z-index: 2000;
        }
        
        .catalog-overlay {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(0, 0, 0, 0.5);
            z-index: 19999;
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.3s ease;
        }
        
        .catalog-overlay.show {
            opacity: 1;
            pointer-events: auto;
        }
        
            .catalog-dropdown-menu {
            position: fixed;
            top: 0;
            left: 0;
            width: 320px;
            max-width: 85vw;
            height: 100vh;
            background: var(--header-surface-bg, #ffffff);
            box-shadow: none;
            z-index: 20000;
            padding: 0;
            padding-top: 0;
            border: none;
            transform: translateX(-100%);
            transition: transform 0.3s ease;
            display: flex;
            flex-direction: column;
            overflow: hidden;
        }
        
        /* Каталог поверх всего (в т.ч. панели фильтров 1050) — десктоп и мобильные */
        @media screen and (max-width: 1024px) {
            .catalog-dropdown-menu {
                z-index: 20000 !important;
            }
            
            .catalog-overlay {
                z-index: 19999 !important;
            }
            
            .header {
                z-index: 2000 !important;
            }
        }
        
        .catalog-dropdown-menu-desktop {
            position: fixed;
            left: 0;
            width: 100%;
            max-width: 1380px;
            height: auto;
            max-height: 95vh;
            background: var(--header-surface-bg, #ffffff);
            box-shadow: none;
            border-radius: 0;
            border: none;
            border-bottom: none;
            top: 0;
            opacity: 0;
            pointer-events: none;
            transform: translateY(-20px);
            transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            display: flex;
            flex-direction: column;
            overflow: hidden;
            z-index: 2001;
            box-sizing: border-box;
        }
        
        .catalog-dropdown-inner-desktop {
            display: flex;
            flex: 1 1 auto;
            overflow: hidden;
            width: 100%;
            padding: 0 32px;
            box-sizing: border-box;
            min-height: 0;
            height: auto;
            align-items: stretch;
            gap: 8px;
            background: var(--header-surface-bg, #ffffff);
        }
        
        .catalog-dropdown-menu-desktop.show {
            transform: translateY(0);
            opacity: 1;
            pointer-events: auto;
            box-shadow: 0 10px 16px -8px rgba(0, 0, 0, 0.1);
            border-bottom: 1px solid rgba(0, 0, 0, 0.08);
            overflow: visible;
        }

        .catalog-dropdown-menu-desktop.show::before {
            content: '';
            position: absolute;
            top: -3px;
            left: 0;
            right: 0;
            height: 3px;
            background: var(--header-surface-bg, #ffffff);
            pointer-events: none;
        }
        
        .catalog-dropdown-menu.show {
            transform: translateX(0);
        }
        
        .catalog-overlay-desktop {
            display: none !important;
        }
        
        .catalog-overlay-desktop.show {
            display: none !important;
        }
        
        .catalog-dropdown-close {
            background: none;
            border: none;
            cursor: pointer;
            padding: 8px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: #6b7280;
            transition: color 0.2s ease;
            border-radius: 8px;
        }
        
        .catalog-dropdown-close:hover {
            color: #111827;
            background: #f3f4f6;
        }

        .catalog-dropdown-header {
            display: none;
            flex-shrink: 0;
            background: var(--header-surface-bg, #ffffff);
        }

        .catalog-dropdown-header__top {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .catalog-dropdown-title {
            margin: 0;
            font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            font-size: 20px;
            font-weight: 700;
            line-height: 1.2;
            letter-spacing: -0.02em;
            color: #000;
        }

        .catalog-dropdown-header__sub[hidden],
        .catalog-dropdown-header__root[hidden],
        .catalog-dropdown-header__search[hidden] {
            display: none !important;
        }

        .catalog-dropdown-subheader__nav {
            display: grid;
            grid-template-columns: auto 1fr auto;
            align-items: center;
            gap: 0;
            padding: 0 0 4px;
        }

        .catalog-dropdown-subheader__title {
            margin: 0;
            text-align: center;
            font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            font-size: 17px;
            font-weight: 700;
            line-height: 1.2;
            letter-spacing: -0.02em;
            color: #000;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
            transition: opacity 0.2s ease, transform 0.2s ease;
        }

        .catalog-dropdown-subheader__title.is-swapping-forward {
            opacity: 0;
            transform: translate3d(12px, 0, 0);
        }

        .catalog-dropdown-subheader__title.is-swapping-back {
            opacity: 0;
            transform: translate3d(-12px, 0, 0);
        }

        .catalog-dropdown-back {
            background: none;
            border: none;
            padding: 4px;
            margin: 0;
            color: #000;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 0;
            justify-self: start;
        }

        .catalog-dropdown-back:hover,
        .catalog-dropdown-back:active {
            background: none;
        }

        .catalog-dropdown-search {
            position: relative;
        }

        .catalog-dropdown-search__trigger {
            width: 100%;
            display: flex;
            align-items: center;
            gap: 8px;
            min-height: 48px;
            padding: 0 12px 0 16px;
            background: #f2f2f7;
            border: none;
            border-radius: 12px;
            cursor: pointer;
            text-align: left;
            font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            -webkit-tap-highlight-color: transparent;
        }

        .catalog-dropdown-search__trigger-text {
            flex: 1;
            min-width: 0;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
            font-size: 16px;
            font-weight: 400;
            color: #868686;
        }

        .catalog-dropdown-search__trigger.has-value .catalog-dropdown-search__trigger-text {
            color: #000;
        }

        .catalog-dropdown-search__trigger svg {
            flex-shrink: 0;
            width: 20px;
            height: 20px;
            color: #555;
        }

        .catalog-dropdown-search__input {
            flex: 1;
            border: none;
            background: transparent;
            font-size: 16px;
            font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            color: #000;
            outline: none;
            min-width: 0;
            padding: 12px 8px 12px 0;
            -webkit-appearance: none;
        }

        .catalog-dropdown-search__input::placeholder {
            color: #868686;
        }

        .catalog-dropdown-search__btn {
            flex-shrink: 0;
            border: none;
            background: transparent;
            padding: 8px;
            color: #555;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .catalog-dropdown-search__autocomplete {
            position: absolute;
            top: calc(100% + 4px);
            left: 0;
            right: 0;
            z-index: 20;
            max-height: 280px;
            overflow-y: auto;
            background: #fff;
            border-radius: 12px;
            box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
        }
        
        .catalog-dropdown-content {
            flex: 1;
            overflow-y: auto;
            padding: 8px 0;
            font-family: 'Graphik-Medium-Cy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
        }
        
        .catalog-dropdown-quick {
            padding: 16px 16px 12px 16px;
            border-bottom: 1px solid #e2e8f0;
        }
        
        .catalog-dropdown-heading {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Inter', 'Helvetica Neue', sans-serif;
            font-size: 24px;
            font-weight: 700;
            color: #1d1d1f;
            margin-bottom: 12px;
            padding-left: 16px;
            letter-spacing: -0.022em;
        }
        
        /* Для планшетов и мобильных - отступы каталога, снизу — под адресную строку Telegram/Safari на iPhone */
        @media screen and (max-width: 1024px) {
            .catalog-dropdown-content {
                padding-top: 12px;
                padding-bottom: calc(env(safe-area-inset-bottom) + 60px);
            }
        }
        
        .catalog-dropdown-content-desktop {
            flex: 0 0 260px;
            overflow-y: auto;
            overflow-x: hidden;
            padding: 28px 0 32px;
            border-right: none;
            align-self: stretch;
            min-height: 0;
            height: auto;
            max-height: 85vh;
            -webkit-overflow-scrolling: touch;
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Inter', 'Helvetica Neue', sans-serif;
            -webkit-font-smoothing: antialiased;
        }
        
        .catalog-mega-menu-column {
            flex: 0 0 260px;
            overflow-y: auto;
            overflow-x: hidden;
            padding: 28px 0 32px;
            border-right: none;
            align-self: stretch;
            min-height: 0;
            height: 100%;
            max-height: 85vh;
            display: none;
            background: var(--header-surface-bg, #ffffff);
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Inter', 'Helvetica Neue', sans-serif;
            -webkit-font-smoothing: antialiased;
        }
        
        .catalog-mega-menu-column.show {
            display: block;
        }
        
        .catalog-mega-menu-column.level-2 {
            flex: 0 0 260px;
        }
        
        .catalog-mega-menu-column.level-3 {
            flex: 0 0 400px;
            border-right: none;
            padding: 28px 16px 32px;
        }

        .catalog-dropdown-menu-desktop .catalog-level2-cards {
            border: none;
            gap: 0;
        }

        .catalog-dropdown-menu-desktop .catalog-level2-cards .catalog-level2-card {
            border: none;
            border-radius: 16px;
        }

        .catalog-dropdown-menu-desktop .catalog-level2-cards .catalog-level2-card:hover {
            border: none;
        }

        .catalog-mega-menu-column__header {
            font-size: 24px;
            font-weight: 700;
            color: #1d1d1f;
            letter-spacing: -0.022em;
            line-height: 1.15;
            padding: 0 20px 16px;
            margin: 0;
        }
        
        .catalog-level2-cards {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 0;
            border-top: 1px solid rgba(0, 0, 0, 0.08);
            border-left: 1px solid rgba(0, 0, 0, 0.08);
            box-sizing: border-box;
        }
        
        .catalog-level2-card {
            display: flex;
            flex-direction: column;
            align-items: center;
            padding: 14px 12px;
            border-radius: 16px;
            border: 1px solid rgba(0, 0, 0, 0.06);
            background: #ffffff;
            cursor: pointer;
            transition: transform 0.2s ease, border-color 0.2s ease;
            text-decoration: none;
            color: #111827;
            text-align: center;
            box-shadow: none;
        }
        
        .catalog-level2-card:hover {
            transform: translateY(-2px);
            border-color: rgba(0, 0, 0, 0.1);
            box-shadow: none;
            background: #ffffff;
        }

        .catalog-level2-cards .catalog-level2-card {
            border-radius: 0;
            border: none;
            border-right: 1px solid rgba(0, 0, 0, 0.08);
            border-bottom: 1px solid rgba(0, 0, 0, 0.08);
        }

        .catalog-level2-cards .catalog-level2-card:hover {
            border-right-color: rgba(0, 0, 0, 0.1);
            border-bottom-color: rgba(0, 0, 0, 0.1);
        }
        
        .catalog-level2-card__img-wrap {
            width: 100%;
            aspect-ratio: 1;
            border-radius: 12px;
            overflow: hidden;
            background: transparent;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 12px;
            padding: 8px;
            box-sizing: border-box;
        }
        
        .catalog-level2-card__img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
        
        .catalog-level2-card__img-placeholder {
            width: 56px;
            height: 56px;
            color: #cbd5e1;
        }
        
        .catalog-level2-card__title {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Inter', 'Helvetica Neue', sans-serif;
            font-size: 16px;
            font-weight: 400;
            line-height: 1.3;
            margin: 0;
            letter-spacing: -0.022em;
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
        }
        
        .catalog-level2-card__count {
            display: none;
        }
        
        .catalog-dropdown-item-desktop {
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 10px 12px;
            margin: 0 8px;
            cursor: pointer;
            transition: background-color 0.15s ease, color 0.15s ease;
            color: #1d1d1f;
            text-decoration: none;
            border: none;
            background: none;
            width: calc(100% - 16px);
            text-align: left;
            position: relative;
            border-radius: 10px;
            box-sizing: border-box;
        }
        
        .catalog-dropdown-item-desktop:hover {
            background: rgba(0, 0, 0, 0.04);
            color: #1d1d1f;
        }
        
        .catalog-dropdown-item-desktop.active {
            background: #f2f2f7;
            color: #1d1d1f;
        }
        
        .catalog-dropdown-item-desktop .category-icon {
            display: none;
        }
        
        .catalog-dropdown-item-desktop .category-info {
            flex: 1;
            min-width: 0;
        }
        
        .catalog-dropdown-item-desktop .category-name {
            font-weight: 400;
            font-size: 15px;
            margin-bottom: 0;
            color: inherit;
            letter-spacing: -0.022em;
            line-height: 1.35;
        }
        
        .catalog-dropdown-item-desktop .category-count {
            display: none;
        }
        
        .catalog-dropdown-item-desktop .arrow-right {
            margin-left: auto;
            flex-shrink: 0;
            color: #c7c7cc;
            opacity: 1;
            transition: color 0.15s ease;
        }
        
        .catalog-dropdown-item-desktop:hover .arrow-right,
        .catalog-dropdown-item-desktop.active .arrow-right {
            color: #1d1d1f;
        }
        
        .catalog-mega-menu-item {
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 10px 12px;
            margin: 0 8px;
            cursor: pointer;
            transition: background-color 0.15s ease, color 0.15s ease;
            color: #1d1d1f;
            text-decoration: none;
            border: none;
            background: none;
            width: calc(100% - 16px);
            text-align: left;
            font-size: 15px;
            font-weight: 400;
            letter-spacing: -0.022em;
            line-height: 1.35;
            border-radius: 10px;
            box-sizing: border-box;
        }
        
        .catalog-mega-menu-item:hover {
            background: rgba(0, 0, 0, 0.04);
            color: #1d1d1f;
        }
        
        .catalog-mega-menu-item.active {
            background: #f2f2f7;
            color: #1d1d1f;
            font-weight: 400;
        }
        
        .catalog-mega-menu-item .arrow-right {
            margin-left: auto;
            flex-shrink: 0;
            color: #c7c7cc;
            opacity: 1;
            width: 8px;
            height: 13px;
            transition: color 0.15s ease;
        }

        .catalog-mega-menu-item:hover .arrow-right,
        .catalog-mega-menu-item.active .arrow-right {
            color: #1d1d1f;
        }
        
        .catalog-mega-menu-item .brand-icon-mega-menu {
            display: none;
        }

        .catalog-mega-menu-item__label {
            flex: 1;
            min-width: 0;
        }

        .catalog-mega-menu-item__count {
            display: none;
        }

        .catalog-level2-list {
            padding: 0 20px;
        }

        .catalog-level2-list__item {
            display: flex;
            align-items: center;
            gap: 10px;
            width: 100%;
            padding: 10px 0;
            border: none;
            background: none;
            cursor: pointer;
            text-align: left;
            color: #1d1d1f;
            font-family: inherit;
            font-size: 15px;
            font-weight: 400;
            letter-spacing: -0.022em;
            line-height: 1.35;
            transition: color 0.15s ease;
        }

        .catalog-level2-list__item:hover {
            color: #0066cc;
        }

        .catalog-level2-list__item-name {
            flex: 0 1 auto;
        }

        .catalog-level2-list__badge {
            font-size: 12px;
            font-weight: 400;
            color: #bf4800;
            letter-spacing: 0;
            white-space: nowrap;
        }
        
        .catalog-dropdown-menu .catalog-dropdown-item {
            opacity: 1;
        }
        
        .catalog-dropdown-loading {
            padding: 20px;
            text-align: center;
            color: #6b7280;
            font-size: 14px;
        }
        
        .catalog-dropdown-item {
            display: flex;
            align-items: center;
            gap: 12px;
            padding: 12px 16px;
            margin: 0 8px;
            cursor: pointer;
            transition: background-color 0.15s ease, color 0.15s ease;
            color: #1d1d1f;
            text-decoration: none;
            border: none;
            background: none;
            width: calc(100% - 16px);
            text-align: left;
            opacity: 1;
            border-radius: 10px;
            box-sizing: border-box;
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Inter', 'Helvetica Neue', sans-serif;
            -webkit-font-smoothing: antialiased;
        }
        
        @media (hover: hover) and (pointer: fine) {
            .catalog-dropdown-item:hover {
                background: rgba(0, 0, 0, 0.04);
                color: #1d1d1f;
            }
        }
        
        .catalog-dropdown-item .category-icon {
            width: 28px;
            height: 28px;
            flex-shrink: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 18px;
        }
        
        .catalog-dropdown-item .category-icon img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            border-radius: 6px;
        }
        
        .catalog-dropdown-item .category-info {
            flex: 1;
            min-width: 0;
        }
        
        .catalog-dropdown-item .category-name {
            font-weight: 400;
            font-size: 17px;
            margin-bottom: 0;
            color: #1d1d1f;
            letter-spacing: -0.022em;
            line-height: 1.35;
        }
        
        .catalog-dropdown-item .category-count {
            font-size: 12px;
            color: #86868b;
        }
        
        .catalog-section-item {
            padding: 12px 16px;
        }
        
        .catalog-section-item .category-icon {
            width: 28px;
            height: 28px;
        }
        
        .catalog-section-item .category-name {
            font-size: 17px;
            font-weight: 400;
        }

        /* Мобильное меню «Каталог»: типографика и оформление как в референсе */
        @media screen and (max-width: 1024px) {
            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) {
                width: 100vw;
                max-width: 100vw;
                box-shadow: none !important;
            }

            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-header {
                display: block;
                padding: calc(env(safe-area-inset-top, 0px) + 12px) 20px 14px;
            }

            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-header:has(.catalog-dropdown-header__sub:not([hidden])),
            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-header:has(.catalog-dropdown-header__search:not([hidden])) {
                padding-left: 0;
                padding-right: 0;
            }

            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-header__sub {
                padding: calc(env(safe-area-inset-top, 0px) + 4px) 0 12px;
            }

            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-header__root .catalog-dropdown-header__top {
                margin-bottom: 12px;
            }

            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-header__search {
                padding: calc(env(safe-area-inset-top, 0px) + 8px) 0 12px;
            }

            .catalog-dropdown-search-mode {
                display: grid;
                grid-template-columns: auto 1fr auto;
                align-items: center;
                gap: 0;
            }

            .catalog-dropdown-search-mode .catalog-dropdown-back {
                justify-self: start;
                padding: 8px 4px 8px 8px;
            }

            .catalog-dropdown-search-mode .catalog-dropdown-close {
                justify-self: end;
                padding: 8px 8px 8px 4px;
            }

            .catalog-dropdown-search-mode__field {
                position: relative;
                grid-column: 2;
                display: flex;
                align-items: center;
                gap: 10px;
                min-height: 48px;
                padding: 0 14px;
                background: #fff;
                border: 1px solid #d1d1d6;
                border-radius: 12px;
                min-width: 0;
            }

            .catalog-dropdown-search-mode__icon {
                flex-shrink: 0;
                width: 20px;
                height: 20px;
                color: #8e8e93;
            }

            .catalog-dropdown-search-mode__input {
                flex: 1;
                min-width: 0;
                border: none;
                outline: none;
                background: transparent;
                font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
                font-size: 16px;
                font-weight: 400;
                color: #000;
                padding: 12px 0;
                -webkit-appearance: none;
            }

            .catalog-dropdown-search-mode__input::placeholder {
                color: #8e8e93;
            }

            .catalog-dropdown-search-mode__clear {
                flex-shrink: 0;
                border: none;
                background: none;
                padding: 0;
                font-size: 14px;
                font-weight: 400;
                color: #0071e3;
                cursor: pointer;
                font-family: inherit;
                white-space: nowrap;
                -webkit-tap-highlight-color: transparent;
            }

            .catalog-dropdown-search-mode__clear[hidden] {
                display: none;
            }

            .catalog-search-panel {
                padding: 0 12px 12px;
            }

            .catalog-search-panel .search-assist-mobile {
                padding-top: 4px;
            }

            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-close {
                color: #000;
                padding: 4px;
                margin: 0;
                border-radius: 0;
                background: none;
            }

            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-subheader__nav .catalog-dropdown-back {
                padding: 8px 4px 8px 8px;
            }

            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-subheader__nav .catalog-dropdown-close {
                justify-self: end;
                padding: 8px 8px 8px 4px;
            }

            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-close:hover,
            .catalog-dropdown-menu:not(.catalog-dropdown-menu-desktop) .catalog-dropdown-close:active {
                color: #000;
                background: none;
            }

            .catalog-dropdown-content {
                font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
                -webkit-font-smoothing: antialiased;
                padding-top: 0;
                padding-bottom: calc(env(safe-area-inset-bottom) + 60px);
                overflow-x: hidden;
            }

            .catalog-mobile-stage {
                display: grid;
                grid-template-columns: minmax(0, 1fr);
                width: 100%;
                overflow: hidden;
            }

            .catalog-mobile-stage > .catalog-mobile-panel {
                grid-column: 1;
                grid-row: 1;
                width: 100%;
                min-width: 0;
                background: var(--header-surface-bg, #ffffff);
            }

            .catalog-mobile-panel {
                width: 100%;
                background: var(--header-surface-bg, #ffffff);
                will-change: transform, opacity;
            }

            .catalog-mobile-panel.is-leaving-forward {
                animation: catalogMobileLeaveForward 0.24s cubic-bezier(0.4, 0, 0.2, 1) forwards;
                pointer-events: none;
                z-index: 1;
            }

            .catalog-mobile-panel.is-entering-forward {
                animation: catalogMobileEnterForward 0.24s cubic-bezier(0.4, 0, 0.2, 1) forwards;
                z-index: 2;
            }

            .catalog-mobile-panel.is-leaving-back {
                animation: catalogMobileLeaveBack 0.24s cubic-bezier(0.4, 0, 0.2, 1) forwards;
                pointer-events: none;
                z-index: 1;
            }

            .catalog-mobile-panel.is-entering-back {
                animation: catalogMobileEnterBack 0.24s cubic-bezier(0.4, 0, 0.2, 1) forwards;
                z-index: 2;
            }

            @keyframes catalogMobileEnterForward {
                from {
                    transform: translate3d(24px, 0, 0);
                    opacity: 0;
                }
                to {
                    transform: none;
                    opacity: 1;
                }
            }

            @keyframes catalogMobileLeaveForward {
                from {
                    transform: none;
                    opacity: 1;
                }
                to {
                    transform: translate3d(-24px, 0, 0);
                    opacity: 0;
                }
            }

            @keyframes catalogMobileEnterBack {
                from {
                    transform: translate3d(-24px, 0, 0);
                    opacity: 0;
                }
                to {
                    transform: none;
                    opacity: 1;
                }
            }

            @keyframes catalogMobileLeaveBack {
                from {
                    transform: none;
                    opacity: 1;
                }
                to {
                    transform: translate3d(24px, 0, 0);
                    opacity: 0;
                }
            }

            .catalog-dropdown-quick {
                padding: 12px 20px 10px;
                border-bottom: 1px solid #ebebeb;
            }

            .catalog-dropdown-heading {
                font-family: inherit;
                font-size: 13px;
                font-weight: 400;
                color: #868686;
                margin-bottom: 10px;
                padding-left: 0;
                letter-spacing: 0;
            }

            .catalog-dropdown-quick .quick-menu-item {
                font-size: 14px;
                font-weight: 400;
                color: #333;
                padding: 6px 10px;
                border-radius: 8px;
                background: #f2f2f7;
            }

            .catalog-dropdown-quick__chips {
                display: flex;
                align-items: center;
                gap: 8px;
                flex-wrap: wrap;
            }

            .catalog-dropdown-divider {
                border-top: 1px solid #ebebeb;
                margin: 12px 0 0;
            }

            .catalog-dropdown-divider + .catalog-section-item {
                padding-top: 12px !important;
            }

            .catalog-dropdown-item {
                gap: 0;
                padding: 12px 20px;
                margin: 0;
                width: 100%;
                border-radius: 0;
                font-family: inherit;
                color: #000;
                -webkit-tap-highlight-color: transparent;
            }

            .catalog-dropdown-item:not(.catalog-section-item):not(.catalog-dropdown-item--sub) {
                padding: 14px 20px;
            }

            .catalog-dropdown-quick + .catalog-dropdown-item:not(.catalog-section-item):not(.catalog-dropdown-item--sub) {
                padding-top: 22px;
            }

            .catalog-dropdown-item:active {
                background: #f5f5f5;
            }

            @media (hover: hover) and (pointer: fine) {
                .catalog-dropdown-item:hover {
                    background: #f5f5f5;
                }
            }

            .catalog-dropdown-item:not(.catalog-section-item) .category-icon {
                display: none;
            }

            .catalog-dropdown-item:not(.catalog-section-item):not(.catalog-dropdown-item--sub) .category-name {
                font-size: 15px !important;
                font-weight: 700 !important;
                letter-spacing: -0.01em;
                line-height: 1.15;
                color: #000;
            }

            .catalog-dropdown-item:not(.catalog-section-item) > svg:last-child {
                margin-left: auto;
                flex-shrink: 0;
                width: 16px;
                height: 16px;
                color: #c7c7cc;
                stroke-width: 2;
            }

            .catalog-dropdown-item--sub .category-name {
                font-size: 15px !important;
                font-weight: 400 !important;
                letter-spacing: -0.01em;
                line-height: 1.15 !important;
                color: #000;
            }

            .catalog-section-item {
                padding: 7px 20px !important;
            }

            .catalog-section-item .category-icon {
                display: none !important;
            }

            .catalog-section-item .category-name {
                font-size: 15px !important;
                font-weight: 400 !important;
                color: #000;
                letter-spacing: -0.01em;
                line-height: 1.2;
            }

            .catalog-section-item > svg {
                display: none;
            }

            .catalog-dropdown-content > div[style*="border-top"] {
                border-top: 1px solid #ebebeb !important;
                margin: 0 !important;
            }
        }
        
        .header p { display: none; }
        
        .search-bar {
            background: var(--header-surface-bg, #ffffff);
            border-radius: 14px;
            padding: 6px 10px;
            margin-bottom: 0; /* убираем нижний отступ, так как теперь в header */
            box-shadow: none;
            position: relative; /* для иконки справа */
            flex: 1; /* занимает оставшееся пространство */
            min-width: 0; /* позволяет сжиматься при необходимости */
            display: flex;
            align-items: center;
            gap: 8px;
            border: 1px solid rgba(55, 65, 81, 0.22);
            transition: border-color 0.3s ease;
            align-self: center; /* явное вертикальное центрирование относительно лого */
            min-height: 44px; /* визуально балансируем с лого 50px */
            box-sizing: border-box;
        }
        
        .search-bar:focus-within {
            border-color: rgba(45, 45, 45, 0.6);
            box-shadow: none;
        }
        
        .search-input {
            width: 100%;
            flex: 1;
            border: none;
            outline: none;
            font-size: 0.85rem;
            background: transparent;
            line-height: 1.5;
            padding: 0;
            vertical-align: middle;
            font-family: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
            font-weight: 500;
            color: rgba(17, 24, 39, 0.92);
        }

        .search-input::placeholder {
            color: rgba(107, 114, 128, 0.52);
            font-weight: 400;
        }

        .search-leading-icon {
            width: 18px;
            height: 18px;
            color: rgba(55, 65, 81, 0.7);
            flex-shrink: 0;
        }

        .search-actions {
            display: inline-flex;
            align-items: center;
            gap: 2px;
            flex-shrink: 0;
        }

        .search-action-btn {
            width: 30px;
            height: 30px;
            border: none;
            border-radius: 50%;
            background: transparent;
            color: rgba(75, 85, 99, 0.9);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            padding: 0;
        }

        .search-action-btn svg {
            width: 20px;
            height: 20px;
            stroke: currentColor;
        }

        .search-action-btn:active {
            background: rgba(0, 0, 0, 0.06);
        }
        
        /* Предотвращаем автоматическое увеличение масштаба на мобильных устройствах */
        @media screen and (max-width: 1024px) {
            .search-input {
                font-size: 16px; /* Минимум 16px для предотвращения автоматического увеличения масштаба на iOS */
            }
        }

        .search-icon-btn {
            position: absolute;
            right: 8px;
            top: 50%;
            transform: translateY(-50%);
            width: 22px;
            height: 22px;
            display: grid;
            place-items: center;
            background: transparent;
            border: none;
            border-radius: 50%;
            cursor: pointer;
            color: #6b7280; /* slate-500 */
        }
        @media (hover: hover) and (pointer: fine) {
            .search-icon-btn:hover { color: #2d2d2d; background: #f3f4f6; }
        }
        
        .search-autocomplete {
            position: absolute;
            top: calc(100% + 4px);
            left: 0;
            min-width: 500px;
            width: max-content;
            max-width: 600px;
            background: var(--header-surface-bg, #ffffff);
            border-radius: 12px;
            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
            max-height: 300px;
            overflow-y: auto;
            z-index: 1000;
            border: 1px solid rgba(45, 45, 45, 0.1);
        }
        
        .search-autocomplete-item {
            padding: 12px 16px;
            cursor: pointer;
            display: flex;
            align-items: center;
            gap: 12px;
            transition: background-color 0.2s ease;
            border-bottom: 1px solid rgba(45, 45, 45, 0.05);
        }
        
        .search-autocomplete-item:last-child {
            border-bottom: none;
        }
        
        @media (hover: hover) and (pointer: fine) {
            .search-autocomplete-item:hover {
                background-color: #f9fafb;
            }
        }
        
        .search-autocomplete-item.active {
            background-color: #f3f4f6;
        }
        
        .search-autocomplete-item-image {
            width: 40px;
            height: 40px;
            object-fit: contain;
            border-radius: 6px;
            background: #f9fafb;
        }
        
        .search-autocomplete-item-info {
            flex: 1;
            min-width: 0;
        }
        
        .search-autocomplete-item-name {
            font-size: 0.9rem;
            font-weight: 500;
            color: #2d2d2d;
            margin-bottom: 2px;
            word-wrap: break-word;
            word-break: break-word;
            line-height: 1.4;
        }
        
        .search-autocomplete-item-details {
            font-size: 0.75rem;
            color: #6b7280;
            word-wrap: break-word;
            word-break: break-word;
            line-height: 1.3;
        }
        
        .search-autocomplete-item-price {
            font-size: 0.9rem;
            font-weight: 600;
            color: #2d2d2d;
            white-space: nowrap;
        }
        
        .quick-menu {
            display: flex;
            align-items: center;
            gap: 12px;
            flex-wrap: wrap;
            transition: opacity 0.3s ease, visibility 0.3s ease;
        }
        
        /* Для планшетов и мобильных (1024px и меньше) - скрываем десктопный quick-menu */
        @media screen and (max-width: 1024px) {
            .quick-menu:not(.quick-menu-mobile) {
                display: none !important;
            }
        }
        
        .quick-menu.hidden {
            opacity: 0;
            visibility: hidden;
            pointer-events: none;
        }
        
        .quick-menu-item {
            font-size: 1rem;
            color: #4b5563;
            text-decoration: none;
            padding: 4px 8px;
            border-radius: 6px;
            transition: all 0.2s ease;
            white-space: nowrap;
        }
        
        .quick-menu-item:hover,
        .quick-menu-item.is-active {
            background: #f3f4f6;
            color: #2d2d2d;
        }

        .quick-menu-dropdown {
            position: fixed;
            left: 0;
            width: 100%;
            max-width: 1380px;
            z-index: 2001;
            display: block;
            pointer-events: none;
            opacity: 0;
            transform: translateY(-20px);
            transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            box-sizing: border-box;
            background: var(--header-surface-bg, #ffffff);
            box-shadow: none;
            border: none;
            overflow: visible;
            will-change: transform, opacity;
        }

        .quick-menu-dropdown.show {
            pointer-events: auto;
            opacity: 1;
            transform: translateY(0);
            box-shadow: 0 10px 16px -8px rgba(0, 0, 0, 0.1);
            border-bottom: 1px solid rgba(0, 0, 0, 0.08);
        }

        .quick-menu-dropdown.show::before {
            content: '';
            position: absolute;
            top: -3px;
            left: 0;
            right: 0;
            height: 3px;
            background: var(--header-surface-bg, #ffffff);
            pointer-events: none;
        }

        .quick-menu-dropdown-inner {
            width: 100%;
            padding: 0;
            overflow-y: auto;
            box-sizing: border-box;
            min-height: 0;
            background: var(--header-surface-bg, #ffffff);
            transition: opacity 0.25s cubic-bezier(0.4, 0, 0.2, 1), min-height 0.3s cubic-bezier(0.4, 0, 0.2, 1);
        }

        .quick-menu-dropdown-inner.is-swapping {
            opacity: 0;
            pointer-events: none;
        }

        .quick-menu-dropdown-inner .quick-menu-mega-menu {
            display: flex;
            width: 100%;
            min-height: 0;
            align-items: stretch;
            gap: 8px;
        }

        .quick-menu-dropdown-inner .quick-menu-mega-menu .catalog-mega-menu-column {
            display: block;
            flex: 0 0 260px;
            max-height: calc(100vh - 120px);
        }

        .quick-menu-dropdown-inner .quick-menu-mega-menu .catalog-mega-menu-column.level-3 {
            flex: 0 0 400px;
            padding: 28px 16px 32px;
        }

        .quick-menu-dropdown-inner .quick-menu-mega-menu .catalog-mega-menu-column__header {
            padding: 0 20px 16px;
        }

        .quick-menu-dropdown-inner .quick-menu-mega-menu .catalog-level2-cards {
            margin: 0;
            width: 100%;
            border: none;
            gap: 0;
        }

        .quick-menu-dropdown-inner .quick-menu-mega-menu .catalog-level2-cards .catalog-level2-card {
            border: none;
            border-radius: 16px;
        }

        .quick-menu-dropdown-inner .quick-menu-mega-menu .catalog-level2-cards .catalog-level2-card:hover {
            border: none;
        }

        .quick-menu-dropdown-inner .catalog-dropdown-loading {
            padding: 20px;
            color: #6b7280;
            text-align: center;
        }

        @media screen and (max-width: 1024px) {
            .quick-menu-dropdown {
                display: none !important;
            }
        }

        .search-dropdown-desktop {
            display: none;
        }

        @media screen and (min-width: 1025px) {
            .search-dropdown-desktop {
                position: fixed;
                left: 0;
                width: 100%;
                max-width: 1380px;
                z-index: 2001;
                display: block;
                pointer-events: none;
                opacity: 0;
                transform: translateY(-20px);
                transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
                box-sizing: border-box;
                background: var(--header-surface-bg, #ffffff);
                box-shadow: none;
                border: none;
                overflow: hidden;
                will-change: transform, opacity;
                font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
                -webkit-font-smoothing: antialiased;
            }

            .search-dropdown-desktop.show {
                pointer-events: auto;
                opacity: 1;
                transform: translateY(0);
                box-shadow: 0 10px 16px -8px rgba(0, 0, 0, 0.1);
                border-bottom: 1px solid rgba(0, 0, 0, 0.08);
                overflow: visible;
            }

            .search-dropdown-desktop.show::before {
                content: '';
                position: absolute;
                top: -3px;
                left: 0;
                right: 0;
                height: 3px;
                background: var(--header-surface-bg, #ffffff);
                pointer-events: none;
            }

            .search-dropdown-desktop__inner {
                display: flex;
                flex-direction: column;
                max-height: inherit;
                overflow: hidden;
                background: var(--header-surface-bg, #ffffff);
            }

            .search-dropdown-desktop__body {
                flex: 1;
                min-height: 0;
                overflow-y: auto;
                padding: 20px 32px 32px;
                box-sizing: border-box;
                background: var(--header-surface-bg, #ffffff);
                transition: min-height 0.25s ease;
            }

            .search-dropdown-desktop .mobile-search-results.is-updating {
                opacity: 0.72;
                transition: opacity 0.15s ease;
            }

            .search-dropdown-desktop .search-assist-mobile {
                display: block;
            }

            .search-dropdown-desktop .search-assist-mobile[hidden],
            .search-dropdown-desktop .mobile-search-results[hidden] {
                display: none !important;
            }

            .search-dropdown-desktop .search-assist-section {
                margin-bottom: 36px;
            }

            .search-dropdown-desktop .search-assist-section:last-child {
                margin-bottom: 0;
            }

            .search-dropdown-desktop .search-assist-section__title {
                margin: 0 0 16px;
                font-family: inherit;
                font-size: 20px;
                font-weight: 700;
                color: #000;
                line-height: 1.2;
                letter-spacing: -0.02em;
            }

            .search-dropdown-desktop .search-assist-section__head {
                display: flex;
                align-items: baseline;
                justify-content: space-between;
                gap: 16px;
                margin-bottom: 16px;
            }

            .search-dropdown-desktop .search-assist-section__head .search-assist-section__title {
                margin-bottom: 0;
            }

            .search-dropdown-desktop .search-assist-section__clear {
                border: none;
                background: none;
                padding: 0;
                font-size: 14px;
                font-weight: 400;
                color: #9e9e9e;
                cursor: pointer;
                font-family: inherit;
                white-space: nowrap;
            }

            @media (hover: hover) and (pointer: fine) {
                .search-dropdown-desktop .search-assist-section__clear:hover {
                    color: #666;
                }
            }

            .search-dropdown-desktop .quick-list {
                display: flex;
                flex-wrap: nowrap;
                gap: 10px;
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
                scrollbar-width: none;
                margin: 0 -32px 0;
                padding: 0 32px 2px;
            }

            .search-dropdown-desktop .quick-list::-webkit-scrollbar {
                display: none;
            }

            .search-dropdown-desktop .quick-list .search-assist-chip,
            .search-dropdown-desktop .search-assist-chip {
                flex: 0 0 auto;
                border: none;
                background: #f2f2f2;
                color: #1d1d1f;
                border-radius: 12px;
                padding: 9px 16px;
                font-size: 15px;
                font-weight: 400;
                line-height: 1.2;
                cursor: pointer;
                font-family: inherit;
                white-space: nowrap;
                text-transform: lowercase;
                -webkit-tap-highlight-color: transparent;
            }

            @media (hover: hover) and (pointer: fine) {
                .search-dropdown-desktop .quick-list .search-assist-chip:hover,
                .search-dropdown-desktop .search-assist-chip:hover {
                    background: #e8e8e8;
                }
            }

            .search-dropdown-desktop .history-list {
                display: flex;
                flex-wrap: nowrap;
                gap: 24px;
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
                scrollbar-width: none;
            }

            .search-dropdown-desktop .history-list::-webkit-scrollbar {
                display: none;
            }

            .search-dropdown-desktop .search-assist-history-item {
                display: inline-flex;
                align-items: center;
                gap: 8px;
                max-width: none;
                border: none;
                background: transparent;
                color: #000;
                border-radius: 0;
                padding: 0;
                font-size: 15px;
                font-weight: 400;
                line-height: 1.2;
                cursor: pointer;
                font-family: inherit;
                white-space: nowrap;
                flex-shrink: 0;
            }

            @media (hover: hover) and (pointer: fine) {
                .search-dropdown-desktop .search-assist-history-item:hover span {
                    color: #333;
                }
            }

            .search-dropdown-desktop .search-assist-history-item span {
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
            }

            .search-dropdown-desktop .search-assist-history-item__icon {
                width: 16px;
                height: 16px;
                flex-shrink: 0;
                color: #9e9e9e;
            }

            .search-dropdown-desktop .mobile-search-products--airy-grid,
            .search-dropdown-desktop .mobile-search-products--desktop-grid {
                display: grid;
                grid-template-columns: repeat(4, minmax(0, 1fr));
                gap: 0;
                border-left: 1px solid #eaeaea;
                border-top: 1px solid #eaeaea;
                background: var(--header-surface-bg, #ffffff);
            }

            .search-dropdown-desktop .mobile-search-product-card {
                display: flex;
                flex-direction: column;
                align-items: center;
                min-height: 100%;
                border: none;
                border-right: 1px solid #eaeaea;
                border-bottom: 1px solid #eaeaea;
                border-radius: 0;
                background: var(--header-surface-bg, #ffffff);
                padding: 16px 14px;
                gap: 12px;
                text-align: center;
                cursor: pointer;
                font-family: inherit;
            }

            @media (hover: hover) and (pointer: fine) {
                .search-dropdown-desktop .mobile-search-product-card:hover {
                    background: rgba(0, 0, 0, 0.02);
                }
            }

            .search-dropdown-desktop .mobile-search-product-card__image {
                display: block;
                width: 100%;
                height: 140px;
                object-fit: contain;
                padding: 4px;
                box-sizing: border-box;
                background: #ffffff;
            }

            .search-dropdown-desktop .mobile-search-product-card__info {
                display: flex;
                flex-direction: column;
                align-items: center;
                gap: 6px;
                flex: 1;
                min-height: 0;
                width: 100%;
            }

            .search-dropdown-desktop .mobile-search-product-card__name {
                font-size: 14px;
                font-weight: 400;
                line-height: 1.35;
                color: #000;
                display: -webkit-box;
                -webkit-line-clamp: 2;
                -webkit-box-orient: vertical;
                overflow: hidden;
                text-align: center;
            }

            .search-dropdown-desktop .mobile-search-product-card__price {
                font-size: 16px;
                font-weight: 700;
                color: #000;
                line-height: 1.2;
                margin-top: auto;
            }

            .search-dropdown-desktop .mobile-search-product-card__old-price {
                display: inline;
                margin-left: 6px;
                font-size: 13px;
                font-weight: 400;
                color: #9e9e9e;
                text-decoration: line-through;
            }

            .search-dropdown-desktop .mobile-search-products__loading {
                font-size: 15px;
                color: #9e9e9e;
            }

            @media screen and (min-width: 1280px) {
                .search-dropdown-desktop .mobile-search-products--desktop-grid {
                    grid-template-columns: repeat(5, minmax(0, 1fr));
                }
            }

            .search-dropdown-desktop .mobile-search-results__loading,
            .search-dropdown-desktop .mobile-search-results__empty {
                padding: 24px 0;
                font-size: 15px;
                color: #86868b;
                text-align: center;
            }

            .search-dropdown-desktop .mobile-search-results__chips {
                display: flex;
                gap: 10px;
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
                scrollbar-width: none;
                margin: 0 -32px 24px;
                padding: 0 32px 2px;
            }

            .search-dropdown-desktop .mobile-search-results__chip {
                flex: 0 0 auto;
                border: none;
                background: #f2f2f2;
                color: #1d1d1f;
                border-radius: 12px;
                padding: 9px 16px;
                font-size: 15px;
                font-weight: 400;
                cursor: pointer;
                font-family: inherit;
                white-space: nowrap;
                text-transform: lowercase;
            }

            .search-dropdown-desktop .mobile-search-results__section {
                margin-bottom: 36px;
            }

            .search-dropdown-desktop .mobile-search-results__title {
                margin: 0 0 16px;
                font-size: 20px;
                font-weight: 700;
                letter-spacing: -0.02em;
                color: #000;
            }

            .search-dropdown-desktop .mobile-search-results__head {
                display: flex;
                align-items: baseline;
                justify-content: flex-start;
                gap: 8px;
                margin-bottom: 16px;
            }

            .search-dropdown-desktop .mobile-search-results__head .mobile-search-results__title {
                margin-bottom: 0;
            }

            .search-dropdown-desktop .mobile-search-results__total {
                font-size: 20px;
                font-weight: 700;
                color: #9e9e9e;
            }

            .search-dropdown-desktop .mobile-search-results__categories {
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                align-items: baseline;
                gap: 24px;
            }

            .search-dropdown-desktop .mobile-search-results__category {
                display: inline-flex;
                align-items: baseline;
                gap: 6px;
                width: auto;
                padding: 0;
                border: none;
                background: none;
                cursor: pointer;
                font-family: inherit;
                text-align: left;
            }

            .search-dropdown-desktop .mobile-search-results__category-name {
                font-size: 15px;
                font-weight: 400;
                color: #000;
            }

            .search-dropdown-desktop .mobile-search-results__category-count {
                font-size: 15px;
                font-weight: 400;
                color: #9e9e9e;
            }

            .search-dropdown-desktop .mobile-search-results__grid--desktop-row {
                display: flex;
                flex-wrap: nowrap;
                align-items: stretch;
                gap: 0;
                border: none;
            }

            .search-dropdown-desktop .mobile-search-results__grid--desktop-row .mobile-search-results__product {
                flex: 1 1 0;
                min-width: 0;
                display: flex;
                flex-direction: column;
                align-items: center;
                gap: 10px;
                padding: 0 10px;
                border: none;
                background: transparent;
                cursor: pointer;
                text-align: center;
                font-family: inherit;
            }

            .search-dropdown-desktop .mobile-search-results__grid--desktop-row .mobile-search-results__product:first-child {
                padding-left: 0;
            }

            .search-dropdown-desktop .mobile-search-results__grid--desktop-row .mobile-search-results__product:last-child {
                padding-right: 0;
            }

            @media (hover: hover) and (pointer: fine) {
                .search-dropdown-desktop .mobile-search-results__grid--desktop-row .mobile-search-results__product:hover .mobile-search-results__product-name {
                    color: #333;
                }
            }

            .search-dropdown-desktop .mobile-search-results__grid--desktop-row .mobile-search-results__product-image {
                width: 100%;
                height: 88px;
                object-fit: contain;
            }

            .search-dropdown-desktop .mobile-search-results__grid--desktop-row .mobile-search-results__product-name {
                font-size: 13px;
                font-weight: 400;
                line-height: 1.35;
                color: #000;
                display: -webkit-box;
                -webkit-line-clamp: 4;
                -webkit-box-orient: vertical;
                overflow: hidden;
                text-align: center;
                width: 100%;
            }

            .search-dropdown-desktop .mobile-search-results__grid--desktop-row .mobile-search-results__product-price {
                font-size: 15px;
                font-weight: 700;
                color: #000;
                text-align: center;
                margin-top: auto;
            }

            .search-dropdown-desktop .mobile-search-results__grid:not(.mobile-search-results__grid--desktop-row) {
                display: grid;
                grid-template-columns: repeat(4, minmax(0, 1fr));
                gap: 0;
                border-left: 1px solid #eaeaea;
                border-top: 1px solid #eaeaea;
            }

            .search-dropdown-desktop .mobile-search-results__grid:not(.mobile-search-results__grid--desktop-row) .mobile-search-results__product {
                display: flex;
                flex-direction: column;
                gap: 8px;
                padding: 12px;
                border: none;
                border-right: 1px solid #eaeaea;
                border-bottom: 1px solid #eaeaea;
                background: var(--header-surface-bg, #ffffff);
                cursor: pointer;
                text-align: left;
                font-family: inherit;
            }

            .search-dropdown-desktop .mobile-search-results__grid:not(.mobile-search-results__grid--desktop-row) .mobile-search-results__product-image {
                width: 100%;
                height: 120px;
                object-fit: contain;
            }

            .search-dropdown-desktop .mobile-search-results__grid:not(.mobile-search-results__grid--desktop-row) .mobile-search-results__product-name {
                font-size: 13px;
                line-height: 1.3;
                color: #111827;
                display: -webkit-box;
                -webkit-line-clamp: 2;
                -webkit-box-orient: vertical;
                overflow: hidden;
            }

            .search-dropdown-desktop .mobile-search-results__grid:not(.mobile-search-results__grid--desktop-row) .mobile-search-results__product-price {
                font-size: 14px;
                font-weight: 600;
                color: #000;
            }
        }
        
        .quick-menu-mobile {
            display: none;
        }

        .mobile-bottom-nav {
            display: none;
        }
        .messenger-picker-overlay,
        .messenger-picker-sheet {
            display: none;
        }
        
        .promo-banners-container {
            display: flex;
            justify-content: stretch;
            flex-wrap: nowrap;
            gap: 0;
            margin-bottom: 0;
            background: transparent;
            max-width: none;
            margin-left: 0;
            margin-right: 0;
            width: 100%;
        }
        
        
        .promo-banner {
            background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
            border-radius: 0;
            padding: 0;
            color: white;
            cursor: pointer;
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3), 0 0 0 1px rgba(255, 255, 255, 0.1);
            position: relative;
            overflow: hidden;
            opacity: 0;
            transform: translateY(30px);
            animation: fadeInUp 0.6s ease 0.1s forwards;
            display: flex;
            align-items: center;
            aspect-ratio: 18 / 9;
            max-height: 145px;
            flex: 1;
            min-width: 0;
        }

        .promo-banner.promo-banner--full-image {
            padding: 0;
            cursor: pointer;
            text-decoration: none;
            color: inherit;
            -webkit-tap-highlight-color: transparent;
            box-sizing: border-box;
            box-shadow: none;
            border-radius: 0;
        }

        .promo-banner.promo-banner--full-image picture {
            display: block;
            flex: 1 1 auto;
            min-width: 0;
            min-height: 0;
            width: 100%;
            height: 100%;
            position: relative;
            z-index: 0;
        }

        .promo-banner.promo-banner--full-image picture img {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            flex: 1 1 auto;
            min-height: 0;
            border-radius: 0;
        }

        .promo-banner--first {
            position: relative;
        }

        .promo-banner--first .promo-first-content {
            position: absolute;
            left: clamp(22px, 4vw, 66px);
            top: 51%;
            transform: translateY(-50%);
            max-width: min(52%, 560px);
            color: #eaf0f8;
            z-index: 2;
            text-shadow: none;
        }

        .promo-banner--first .promo-first-title {
            margin: 0;
            font-size: clamp(24px, 3.7vw, 58px);
            line-height: 1.05;
            font-weight: 700;
            letter-spacing: -0.02em;
        }

        .promo-banner--first .promo-first-subtitle {
            margin: clamp(8px, 1.1vw, 16px) 0 0;
            font-size: clamp(14px, 2.1vw, 33px);
            line-height: 1.2;
            font-weight: 600;
            opacity: 0.92;
        }

        .promo-banner--first .promo-first-button {
            margin-top: clamp(12px, 2vw, 28px);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: clamp(38px, 3.5vw, 52px);
            padding: 0 clamp(24px, 2.8vw, 40px);
            border-radius: 15px;
            background: #f3f4f6;
            color: #1f2937;
            font-size: clamp(15px, 1.5vw, 24px);
            line-height: 1;
            font-weight: 600;
            text-shadow: none;
        }

        .promo-banner--second {
            position: relative;
        }

        .promo-banner--second .promo-second-content {
            position: absolute;
            left: clamp(28px, 4.2vw, 70px);
            top: 50%;
            transform: translateY(-50%);
            max-width: min(56%, 620px);
            color: #1f2937;
            z-index: 2;
        }

        .promo-banner--second .promo-second-title {
            margin: 0;
            font-size: clamp(26px, 3.7vw, 60px);
            line-height: 1.06;
            font-weight: 700;
            letter-spacing: -0.018em;
        }

        .promo-banner--second .promo-second-subtitle {
            display: none;
        }

        .promo-banner--second .promo-second-button {
            margin-top: clamp(16px, 2.4vw, 34px);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: clamp(42px, 3.9vw, 58px);
            padding: 0 clamp(26px, 3vw, 44px);
            border-radius: 17px;
            background: #34373d;
            color: #f8fafc;
            font-size: clamp(15px, 1.45vw, 22px);
            line-height: 1;
            font-weight: 500;
            letter-spacing: -0.01em;
        }

        .promo-banner--third {
            position: relative;
        }

        .promo-banner--third .promo-third-content {
            position: absolute;
            left: clamp(28px, 4.2vw, 70px);
            top: 50%;
            transform: translateY(-50%);
            max-width: min(48%, 500px);
            color: #1f232c;
            z-index: 2;
        }

        .promo-banner--third .promo-third-title {
            margin: 0;
            font-size: clamp(26px, 3.7vw, 60px);
            line-height: 1.06;
            font-weight: 700;
            letter-spacing: -0.018em;
            max-width: none;
            white-space: nowrap;
        }

        .promo-banner--third .promo-third-subtitle {
            margin: clamp(8px, 1.1vw, 16px) 0 0;
            font-size: clamp(14px, 2vw, 31px);
            line-height: 1.2;
            font-weight: 500;
            color: #6b7280;
        }

        .promo-banner--third .promo-third-button {
            margin-top: clamp(16px, 2.4vw, 34px);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: clamp(42px, 3.9vw, 58px);
            padding: 0 clamp(26px, 3vw, 44px);
            border-radius: 17px;
            background: #34373d;
            color: #f8fafc;
            font-size: clamp(15px, 1.45vw, 22px);
            line-height: 1;
            font-weight: 500;
            letter-spacing: -0.01em;
        }

        .promo-banner--fourth {
            position: relative;
        }

        .promo-banner--fourth .promo-fourth-content {
            position: absolute;
            left: clamp(28px, 4.2vw, 70px);
            top: 50%;
            transform: translateY(-50%);
            max-width: min(52%, 560px);
            color: #1f232c;
            z-index: 2;
        }

        .promo-banner--fourth .promo-fourth-title {
            margin: 0;
            font-size: clamp(26px, 3.7vw, 60px);
            line-height: 1.06;
            font-weight: 700;
            letter-spacing: -0.018em;
        }

        .promo-banner--fourth .promo-fourth-button {
            margin-top: clamp(16px, 2.4vw, 34px);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: clamp(42px, 3.9vw, 58px);
            padding: 0 clamp(26px, 3vw, 44px);
            border-radius: 17px;
            background: #34373d;
            color: #f8fafc;
            font-size: clamp(15px, 1.45vw, 22px);
            line-height: 1;
            font-weight: 500;
            letter-spacing: -0.01em;
        }

        .promo-banner--fifth {
            position: relative;
        }

        .promo-banner--fifth .promo-fifth-content {
            position: absolute;
            left: clamp(28px, 4.2vw, 70px);
            top: 50%;
            transform: translateY(-50%);
            max-width: min(52%, 560px);
            color: #f8fafc;
            z-index: 2;
        }

        .promo-banner--fifth .promo-fifth-title {
            margin: 0;
            font-size: clamp(24px, 3.45vw, 54px);
            line-height: 1.08;
            font-weight: 700;
            letter-spacing: -0.015em;
            font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Helvetica Neue", Arial, sans-serif;
        }

        .promo-banner--fifth .promo-fifth-button {
            margin-top: clamp(16px, 2.4vw, 34px);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: clamp(42px, 3.9vw, 58px);
            padding: 0 clamp(26px, 3vw, 44px);
            border-radius: 17px;
            background: #f3f4f6;
            color: #111827;
            font-size: clamp(15px, 1.45vw, 22px);
            line-height: 1;
            font-weight: 500;
            letter-spacing: -0.01em;
            font-family: 'Graphik-Medium-Cy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
        }

        .promo-banner--first .promo-first-title,
        .promo-banner--second .promo-second-title,
        .promo-banner--third .promo-third-title,
        .promo-banner--fourth .promo-fourth-title,
        .promo-banner--fifth .promo-fifth-title,
        .promo-banner--first .promo-first-subtitle,
        .promo-banner--second .promo-second-subtitle,
        .promo-banner--third .promo-third-subtitle,
        .promo-banner--first .promo-first-button,
        .promo-banner--second .promo-second-button,
        .promo-banner--third .promo-third-button,
        .promo-banner--fourth .promo-fourth-button,
        .promo-banner--fifth .promo-fifth-button {
            font-family: 'Graphik-Medium-Cy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
        }

        @media (max-width: 900px) {
            .promo-banner--first .promo-first-content {
                max-width: 72%;
            }

            .promo-banner--first .promo-first-subtitle {
                margin-top: 4px;
            }
        }
        
        .promo-banner-iphone17 {
            background: #000000 !important;
        }
        
        
        .promo-banner-iphone17::before {
            background: transparent !important;
        }
        
        .promo-banner-iphone17::after {
            background: transparent !important;
        }
        
        .promo-banner-2 {
            background: #FFFFFF !important;
        }
        
        .promo-banner-2::before {
            background: transparent !important;
        }
        
        .promo-banner-2::after {
            background: transparent !important;
        }
        
        .promo-banner-2:hover {
            background: #FFFFFF !important;
        }
        
        .promo-banner-whoop {
            background: #ebe9e1 !important;
            position: relative;
            overflow: hidden;
            color: #111111;
            cursor: default;
        }
        
        .promo-banner-whoop::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: transparent !important;
            z-index: 2;
            pointer-events: none;
        }
        
        .promo-banner-whoop .promo-video-background,
        .promo-banner-whoop .promo-whoop-background {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center center;
            z-index: 1;
        }
        
        .promo-banner-whoop .promo-video-fallback {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: #000000;
            z-index: 1;
            display: none;
        }
        
        .promo-banner-whoop .promo-banner-content {
            position: relative;
            z-index: 3;
            display: flex;
            align-items: center;
            justify-content: flex-start;
            min-height: 100%;
            padding: clamp(52px, 5.5vw, 82px) clamp(20px, 4.2vw, 60px) clamp(18px, 2.6vw, 36px);
        }
        
        .promo-banner-whoop .promo-text {
            text-align: left;
            max-width: 285px;
            color: #111111;
        }
        
        .promo-banner-whoop::after {
            background: transparent !important;
        }
        
        .promo-banner-whoop:hover {
            background: #ebe9e1 !important;
        }
        
        .promo-banner-whoop .promo-title {
            margin: 12px 0 12px;
            color: #050505;
            font-size: clamp(1.08rem, 1.75vw, 1.82rem);
            font-weight: 900;
            line-height: 1.08;
            letter-spacing: -0.045em;
            text-transform: uppercase;
            text-shadow: none;
        }
        
        .promo-banner-whoop .promo-subtitle {
            max-width: 230px;
            color: #141414;
            font-size: clamp(0.68rem, 0.78vw, 0.84rem);
            font-weight: 500;
            line-height: 1.45;
            text-shadow: none;
        }

        .promo-whoop-logo {
            width: clamp(82px, 8vw, 128px);
            height: auto;
            display: block;
            margin-bottom: 10px;
        }

        .promo-whoop-benefits {
            display: grid;
            grid-template-columns: repeat(4, minmax(44px, 1fr));
            gap: 9px;
            max-width: 250px;
            margin: 12px 0 15px;
        }

        .promo-whoop-benefit {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 7px;
            color: #111111;
            font-size: 0.52rem;
            font-weight: 500;
            line-height: 1.3;
            text-align: center;
        }

        .promo-whoop-benefit__icon {
            width: 28px;
            height: 28px;
            border: 1.35px solid #111111;
            border-radius: 50%;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            color: #111111;
            background: rgba(255, 255, 255, 0.04);
        }

        .promo-whoop-benefit__icon svg {
            width: 15px;
            height: 15px;
            display: block;
            stroke: currentColor;
        }

        .promo-whoop-button {
            display: inline-flex;
            align-items: center;
            gap: 14px;
            min-width: 176px;
            justify-content: center;
            padding: 11px 16px;
            border-radius: 8px;
            background: #000000;
            color: #ffffff;
            font-size: 0.6rem;
            font-weight: 800;
            letter-spacing: 0.18em;
            line-height: 1;
            text-transform: uppercase;
            box-shadow: 0 8px 18px rgba(0, 0, 0, 0.2);
            border: 0;
            cursor: pointer;
        }

        .promo-whoop-button__arrow {
            font-size: 1.05rem;
            line-height: 0.8;
        }

        @media (min-width: 1025px) {
            .promo-banner-whoop {
                border-radius: 18px;
                box-shadow: none;
            }

            .promo-banner-whoop .promo-whoop-background {
                width: 102%;
                left: -1%;
                object-position: center center;
            }
        }

        @media (max-width: 1024px) {
            .promo-banner-whoop .promo-whoop-background {
                width: 104%;
                left: -2%;
                object-position: center center;
            }
        }

        @media (max-width: 1024px) {
            .promo-banner-whoop .promo-banner-content {
                align-items: flex-start;
                padding: 40px 20px 16px;
            }

            .promo-banner-whoop .promo-text {
                max-width: 48%;
            }

            .promo-banner-whoop .promo-title {
                margin: 10px 0 8px;
                font-size: clamp(0.88rem, 3.8vw, 1.32rem);
            }

            .promo-whoop-logo {
                width: clamp(64px, 18vw, 92px);
                margin-bottom: 8px;
            }

            .promo-banner-whoop .promo-subtitle {
                max-width: 170px;
                font-size: 0.62rem;
            }

            .promo-whoop-benefits {
                grid-template-columns: repeat(4, minmax(34px, 1fr));
                gap: 5px;
                max-width: 180px;
                margin: 8px 0 10px;
            }

            .promo-whoop-benefit {
                font-size: 0.44rem;
            }

            .promo-whoop-benefit__icon {
                width: 23px;
                height: 23px;
            }

            .promo-whoop-benefit__icon svg {
                width: 12px;
                height: 12px;
            }

            .promo-whoop-button {
                min-width: 132px;
                padding: 9px 12px;
                gap: 10px;
                border-radius: 7px;
                font-size: 0.48rem;
            }
        }
        
        .promo-banner-airpods {
            background: #000000 !important;
            position: relative;
            overflow: hidden;
        }
        
        .promo-banner-airpods::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(135deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.6) 100%);
            z-index: 2;
            pointer-events: none;
        }
        
        .promo-banner-airpods .promo-video-background {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            z-index: 1;
        }
        
        .promo-banner-airpods .promo-banner-content {
            position: relative;
            z-index: 3;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .promo-banner-airpods .promo-text {
            text-align: center;
        }
        
        .promo-banner-airpods::after {
            background: transparent !important;
        }
        
        .promo-banner-airpods:hover {
            background: #000000 !important;
        }
        
        .promo-banner-iphone17pro {
            background: #000000 !important;
            position: relative;
            overflow: hidden;
            cursor: default;
        }
        
        .promo-banner-iphone17pro::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(135deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.6) 100%);
            z-index: 2;
            pointer-events: none;
        }
        
        .promo-banner-iphone17pro .promo-video-background {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center 40%;
            z-index: 1;
        }

        .promo-banner-iphone17pro .promo-hero-background {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: contain;
            object-position: right center;
            transform: scale(1.08);
            transform-origin: right center;
            z-index: 1;
        }
        
        /* Скрываем элементы управления видео на мобильных */
        @media (max-width: 1024px) {
            .promo-banner-iphone17pro .promo-video-background {
                object-position: center 32%;
            }

            .promo-video-background {
                pointer-events: none;
            }
            
            .promo-video-background::-webkit-media-controls {
                display: none !important;
            }
            
            .promo-video-background::-webkit-media-controls-enclosure {
                display: none !important;
            }
            
            .promo-video-background::-webkit-media-controls-panel {
                display: none !important;
                opacity: 0 !important;
                visibility: hidden !important;
            }
            
            .promo-video-background::-webkit-media-controls-play-button {
                display: none !important;
                opacity: 0 !important;
            }
            
            .promo-video-background::-webkit-media-controls-start-playback-button {
                display: none !important;
                opacity: 0 !important;
            }
            
            .promo-video-background::-webkit-media-controls-overlay-play-button {
                display: none !important;
                opacity: 0 !important;
            }
            
            /* Скрываем все элементы управления */
            .promo-video-background::-webkit-media-controls-timeline,
            .promo-video-background::-webkit-media-controls-current-time-display,
            .promo-video-background::-webkit-media-controls-time-remaining-display,
            .promo-video-background::-webkit-media-controls-mute-button,
            .promo-video-background::-webkit-media-controls-volume-slider,
            .promo-video-background::-webkit-media-controls-fullscreen-button {
                display: none !important;
                opacity: 0 !important;
            }
        }

        .mobile-search-sheet {
            display: none;
        }

        @media (max-width: 1024px) {
            .search-mobile-toggle {
                display: none !important;
            }

            .quick-menu-mobile {
                display: none !important;
            }

            .mobile-search-sheet {
                position: fixed;
                inset: 0;
                z-index: 22000;
                display: flex;
                flex-direction: column;
                background: var(--header-surface-bg, #ffffff);
                transform: translate3d(100%, 0, 0);
                transition: transform 0.32s cubic-bezier(0.32, 0.72, 0, 1);
                visibility: hidden;
                pointer-events: none;
            }

            .mobile-search-sheet.is-open {
                transform: translate3d(0, 0, 0);
                visibility: visible;
                pointer-events: auto;
            }

            body.mobile-search-open {
                overflow: hidden;
            }

            .mobile-search-sheet__header {
                flex-shrink: 0;
                display: flex;
                align-items: center;
                gap: 8px;
                padding: calc(env(safe-area-inset-top, 0px) + 10px) 0 12px 12px;
                border-bottom: 1px solid #f0f0f0;
            }

            .mobile-search-sheet__field {
                position: relative;
                flex: 1;
                min-width: 0;
                display: flex;
                align-items: center;
                gap: 10px;
                min-height: 48px;
                padding: 0 14px;
                background: #fff;
                border: 1px solid #d1d1d6;
                border-radius: 12px;
            }

            .mobile-search-sheet__leading-icon {
                flex-shrink: 0;
                width: 20px;
                height: 20px;
                color: #8e8e93;
            }

            .mobile-search-sheet__input {
                flex: 1;
                min-width: 0;
                border: none;
                outline: none;
                background: transparent;
                font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
                font-size: 16px;
                font-weight: 400;
                color: #000;
                padding: 12px 0;
                -webkit-appearance: none;
                -webkit-user-select: text;
                user-select: text;
                touch-action: manipulation;
            }

            .mobile-search-sheet__clear {
                flex-shrink: 0;
                border: none;
                background: none;
                padding: 0;
                font-size: 14px;
                font-weight: 400;
                color: #0071e3;
                cursor: pointer;
                font-family: inherit;
                white-space: nowrap;
                -webkit-tap-highlight-color: transparent;
            }

            .mobile-search-sheet__clear[hidden] {
                display: none;
            }

            .mobile-search-sheet__input::placeholder {
                color: #8e8e93;
            }

            .mobile-search-sheet__autocomplete {
                position: absolute;
                left: 0;
                right: 0;
                top: calc(100% + 8px);
                z-index: 10;
            }

            .mobile-search-sheet__close {
                flex-shrink: 0;
                display: flex;
                align-items: center;
                justify-content: center;
                width: 40px;
                height: 40px;
                padding: 0;
                margin-right: 4px;
                border: none;
                background: transparent;
                color: #000;
                cursor: pointer;
                -webkit-tap-highlight-color: transparent;
            }

            .mobile-search-sheet__body {
                flex: 1;
                min-height: 0;
                overflow-y: auto;
                -webkit-overflow-scrolling: touch;
                padding: 16px 12px calc(16px + env(safe-area-inset-bottom));
            }

            .search-assist-mobile[hidden],
            .mobile-search-results[hidden] {
                display: none !important;
            }

            .search-assist-mobile {
                display: block;
            }

            .mobile-search-results {
                display: block;
            }

            .mobile-search-results__loading,
            .mobile-search-results__empty {
                padding: 24px 0;
                font-size: 15px;
                color: #86868b;
                text-align: center;
            }

            .mobile-search-results__chips {
                display: flex;
                gap: 8px;
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
                scrollbar-width: none;
                margin: 0 -12px 20px;
                padding: 0 12px 2px;
            }

            .mobile-search-results__chips::-webkit-scrollbar {
                display: none;
            }

            .mobile-search-results__chip {
                flex: 0 0 auto;
                border: none;
                background: #f2f2f7;
                color: #1d1d1f;
                border-radius: 10px;
                padding: 10px 14px;
                font-size: 14px;
                font-weight: 400;
                white-space: nowrap;
                cursor: pointer;
                font-family: inherit;
                outline: none;
                box-shadow: none;
                -webkit-tap-highlight-color: transparent;
                -webkit-focus-ring-color: transparent;
                -webkit-appearance: none;
                appearance: none;
                touch-action: manipulation;
            }

            .mobile-search-results__chip:hover,
            .mobile-search-results__chip:active,
            .mobile-search-results__chip:focus,
            .mobile-search-results__chip:focus-visible {
                border: none;
                background: #f2f2f7;
                color: #1d1d1f;
                outline: none;
                box-shadow: none;
            }

            .mobile-search-results__section {
                margin-bottom: 28px;
            }

            .mobile-search-results__section:last-child {
                margin-bottom: 0;
            }

            .mobile-search-results__head {
                display: flex;
                align-items: baseline;
                justify-content: space-between;
                gap: 12px;
                margin-bottom: 12px;
            }

            .mobile-search-results__title {
                margin: 0 0 12px;
                font-size: 17px;
                font-weight: 700;
                color: #000;
                line-height: 1.2;
            }

            .mobile-search-results__head .mobile-search-results__title {
                margin-bottom: 0;
            }

            .mobile-search-results__total {
                font-size: 15px;
                font-weight: 400;
                color: #86868b;
            }

            .mobile-search-results__categories {
                display: flex;
                flex-direction: column;
            }

            .mobile-search-results__category {
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px;
                width: 100%;
                padding: 14px 0;
                border: none;
                border-bottom: 1px solid #f0f0f0;
                background: transparent;
                text-align: left;
                cursor: pointer;
                font-family: inherit;
                outline: none;
                box-shadow: none;
                -webkit-tap-highlight-color: transparent;
                -webkit-focus-ring-color: transparent;
                -webkit-appearance: none;
                appearance: none;
                touch-action: manipulation;
            }

            .mobile-search-results__category:hover,
            .mobile-search-results__category:active,
            .mobile-search-results__category:focus,
            .mobile-search-results__category:focus-visible {
                background: transparent;
                outline: none;
                box-shadow: none;
                border: none;
                border-bottom: 1px solid #f0f0f0;
                border-bottom-color: #f0f0f0;
            }

            .mobile-search-results__category:last-child {
                border-bottom: none;
            }

            .mobile-search-results__category-name {
                font-size: 16px;
                font-weight: 400;
                color: #000;
            }

            .mobile-search-results__category-count {
                flex-shrink: 0;
                font-size: 16px;
                font-weight: 400;
                color: #86868b;
            }

            .mobile-search-results__grid {
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0;
                border-left: 1px solid #eaeaea;
                border-top: 1px solid #eaeaea;
            }

            .mobile-search-results__product {
                display: flex;
                flex-direction: column;
                align-items: stretch;
                min-height: 100%;
                padding: 12px;
                border: none;
                border-right: 1px solid #eaeaea;
                border-bottom: 1px solid #eaeaea;
                background: #fff;
                text-align: left;
                cursor: pointer;
                font-family: inherit;
                outline: none;
                box-shadow: none;
                -webkit-tap-highlight-color: transparent;
                -webkit-focus-ring-color: transparent;
                -webkit-appearance: none;
                appearance: none;
                touch-action: manipulation;
            }

            .mobile-search-results__product:hover,
            .mobile-search-results__product:active,
            .mobile-search-results__product:focus,
            .mobile-search-results__product:focus-visible {
                outline: none;
                box-shadow: none;
                background: #fff;
                border-top: none;
                border-left: none;
                border-right: 1px solid #eaeaea;
                border-bottom: 1px solid #eaeaea;
                border-right-color: #eaeaea;
                border-bottom-color: #eaeaea;
            }

            .mobile-search-results__product-image {
                display: block;
                width: 100%;
                height: 132px;
                object-fit: contain;
                margin-bottom: 8px;
            }

            .mobile-search-results__product-name {
                flex: 1;
                font-size: 14px;
                font-weight: 400;
                line-height: 1.3;
                color: #1d1d1f;
                display: -webkit-box;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;
                overflow: hidden;
                margin-bottom: 8px;
            }

            .mobile-search-results__product-price {
                font-size: 16px;
                font-weight: 700;
                color: #000;
                line-height: 1.2;
            }

            .mobile-search-results__more {
                width: 100%;
                margin-top: 16px;
                padding: 14px 16px;
                border: none;
                border-radius: 12px;
                background: #f2f2f7;
                color: #0071e3;
                font-size: 15px;
                font-weight: 500;
                cursor: pointer;
                font-family: inherit;
                outline: none;
                box-shadow: none;
                -webkit-tap-highlight-color: transparent;
                -webkit-focus-ring-color: transparent;
                -webkit-appearance: none;
                appearance: none;
                touch-action: manipulation;
            }

            .mobile-search-results__more:hover,
            .mobile-search-results__more:active,
            .mobile-search-results__more:focus,
            .mobile-search-results__more:focus-visible {
                border: none;
                background: #f2f2f7;
                color: #0071e3;
                outline: none;
                box-shadow: none;
            }

            .search-assist-section {
                margin-bottom: 28px;
            }

            .search-assist-section:last-child {
                margin-bottom: 0;
            }

            .search-assist-section__head {
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px;
                margin-bottom: 12px;
            }

            .search-assist-section__title {
                margin: 0 0 12px;
                font-size: 17px;
                font-weight: 700;
                color: #000;
                line-height: 1.2;
            }

            .search-assist-section__head .search-assist-section__title {
                margin-bottom: 0;
            }

            .search-assist-section__clear {
                border: none;
                background: none;
                padding: 0;
                font-size: 14px;
                font-weight: 400;
                color: #0071e3;
                cursor: pointer;
                font-family: inherit;
                outline: none;
                box-shadow: none;
                -webkit-tap-highlight-color: transparent;
                -webkit-focus-ring-color: transparent;
                -webkit-appearance: none;
                appearance: none;
                touch-action: manipulation;
            }

            .search-assist-section__clear:hover,
            .search-assist-section__clear:active,
            .search-assist-section__clear:focus,
            .search-assist-section__clear:focus-visible {
                border: none;
                background: none;
                color: #0071e3;
                outline: none;
                box-shadow: none;
            }

            .search-assist-mobile .quick-list,
            .search-assist-mobile .history-list {
                flex-wrap: wrap;
                overflow-x: visible;
                margin-bottom: 0;
                gap: 8px;
            }

            .search-assist-mobile .search-assist-chip,
            .search-assist-history-item {
                border: none;
                background: #f2f2f7;
                color: #1d1d1f;
                border-radius: 10px;
                padding: 10px 14px;
                font-size: 14px;
                font-weight: 400;
                white-space: nowrap;
                cursor: pointer;
                font-family: inherit;
                outline: none;
                box-shadow: none;
                -webkit-tap-highlight-color: transparent;
                -webkit-focus-ring-color: transparent;
                -webkit-appearance: none;
                appearance: none;
                touch-action: manipulation;
            }

            .search-assist-mobile .search-assist-chip:hover,
            .search-assist-mobile .search-assist-chip:active,
            .search-assist-mobile .search-assist-chip:focus,
            .search-assist-mobile .search-assist-chip:focus-visible,
            .search-assist-history-item:hover,
            .search-assist-history-item:active,
            .search-assist-history-item:focus,
            .search-assist-history-item:focus-visible {
                border: none;
                background: #f2f2f7;
                color: #1d1d1f;
                outline: none;
                box-shadow: none;
            }

            .search-assist-history-item {
                display: inline-flex;
                align-items: center;
                gap: 8px;
                max-width: 100%;
            }

            .search-assist-history-item span {
                overflow: hidden;
                text-overflow: ellipsis;
                white-space: nowrap;
            }

            .search-assist-history-item__icon {
                width: 16px;
                height: 16px;
                flex-shrink: 0;
                color: #86868b;
            }

            .mobile-search-products__loading {
                font-size: 14px;
                color: #86868b;
            }

            .mobile-search-products--airy-grid {
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0;
                border-left: 1px solid #eaeaea;
                border-top: 1px solid #eaeaea;
                background: #ffffff;
            }

            .mobile-search-product-card {
                display: flex;
                flex-direction: column;
                align-items: stretch;
                min-height: 100%;
                border: none;
                border-right: 1px solid #eaeaea;
                border-bottom: 1px solid #eaeaea;
                border-radius: 0;
                background: #ffffff;
                padding: 12px;
                gap: 10px;
                text-align: left;
                cursor: pointer;
                font-family: inherit;
                outline: none;
                box-shadow: none;
                -webkit-tap-highlight-color: transparent;
                -webkit-focus-ring-color: transparent;
                -webkit-appearance: none;
                appearance: none;
                touch-action: manipulation;
            }

            .mobile-search-product-card:hover,
            .mobile-search-product-card:focus,
            .mobile-search-product-card:focus-visible,
            .mobile-search-product-card:active {
                outline: none;
                box-shadow: none;
                border-top: none;
                border-left: none;
                border-right: 1px solid #eaeaea;
                border-bottom: 1px solid #eaeaea;
                border-right-color: #eaeaea;
                border-bottom-color: #eaeaea;
                background: #ffffff;
            }

            .mobile-search-product-card__image {
                display: block;
                width: 100%;
                height: 132px;
                object-fit: contain;
                padding: 2px;
                box-sizing: border-box;
                background: #ffffff;
            }

            .mobile-search-product-card__info {
                display: flex;
                flex-direction: column;
                gap: 4px;
                flex: 1;
                min-height: 0;
            }

            .mobile-search-product-card__name {
                font-size: 15px;
                font-weight: 400;
                line-height: 1.3;
                color: #111827;
                display: -webkit-box;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;
                overflow: hidden;
                min-height: 0;
            }

            .mobile-search-product-card__price {
                font-size: 17px;
                font-weight: 600;
                color: #111827;
                line-height: 1.2;
                margin-top: auto;
            }

            .mobile-search-product-card__old-price {
                display: inline;
                margin-left: 6px;
                font-size: 14px;
                font-weight: 400;
                color: #6b7280;
                text-decoration: line-through;
            }

            .header-mobile .mobile-search-panel,
            .header-mobile .search-bar-mobile {
                display: none !important;
            }

            .search-assist-title {
                font-size: 0.78rem;
                color: #6b7280;
                margin-bottom: 6px;
                font-weight: 500;
            }

            .search-assist-list {
                display: flex;
                gap: 6px;
                overflow-x: auto;
                -webkit-overflow-scrolling: touch;
                scrollbar-width: none;
                margin-bottom: 8px;
            }

            .search-assist-list::-webkit-scrollbar {
                display: none;
            }

            .search-assist-chip {
                border: 1px solid rgba(55, 65, 81, 0.18);
                background: rgba(255, 255, 255, 0.88);
                color: #374151;
                border-radius: 999px;
                padding: 6px 10px;
                font-size: 0.76rem;
                white-space: nowrap;
                cursor: pointer;
            }
        }

        .search-assist-desktop {
            display: none;
            position: absolute;
            top: calc(100% + 8px);
            left: 0;
            right: 0;
            background: rgba(255, 255, 255, 0.98);
            border: 1px solid rgba(55, 65, 81, 0.12);
            border-radius: 14px;
            padding: 12px;
            box-shadow: 0 12px 30px rgba(17, 24, 39, 0.1);
            z-index: 1200;
            backdrop-filter: blur(6px);
        }

        .search-bar.search-assist-open .search-assist-desktop {
            display: block;
        }

        .search-assist-desktop .search-assist-title {
            font-size: 0.76rem;
            color: #6b7280;
            margin-bottom: 7px;
            font-weight: 500;
            letter-spacing: 0.01em;
        }

        .search-assist-desktop .search-assist-list {
            display: flex;
            flex-wrap: wrap;
            overflow: visible;
            gap: 7px;
            margin-bottom: 10px;
        }

        .search-assist-desktop .search-assist-chip {
            border: 1px solid rgba(55, 65, 81, 0.14);
            background: #f8fafc;
            color: #374151;
            border-radius: 999px;
            padding: 7px 12px;
            font-size: 0.78rem;
            line-height: 1;
            transition: all 0.2s ease;
        }

        @media (hover: hover) and (pointer: fine) {
            .search-assist-desktop .search-assist-chip:hover {
                background: #eef2ff;
                border-color: rgba(99, 102, 241, 0.25);
                color: #1f2937;
            }
        }

        .search-assist-desktop .search-assist-list.quick-list .search-assist-chip {
            border-color: rgba(55, 65, 81, 0.3);
            color: #1f2937;
            background: #f9fafb;
            font-weight: 600;
        }

        .search-assist-list.frequent-list {
            display: flex;
            flex-direction: column;
            gap: 4px;
            margin-bottom: 0;
        }

        .search-assist-row {
            display: block;
            width: 100%;
            text-align: left;
            border-radius: 10px;
            border: 1px solid transparent;
            background: transparent;
            padding: 8px 10px;
            color: #374151;
            font-weight: 500;
            font-size: 0.88rem;
            line-height: 1.25;
            text-decoration: none;
            cursor: pointer;
            transition: background-color 0.18s ease, border-color 0.18s ease;
        }

        @media (hover: hover) and (pointer: fine) {
            .search-assist-row:hover {
                background: rgba(17, 24, 39, 0.06);
                border-color: rgba(55, 65, 81, 0.12);
            }
        }

        @media (max-width: 1024px) {
            .promo-banners-container .promo-banner:not(.promo-banner--full-image) {
                aspect-ratio: 13 / 9 !important;
                min-height: 205px !important;
            }

            .promo-banners-container .promo-banner .promo-banner-content {
                min-height: 158px !important;
            }

            .promo-banners-container .promo-banner .promo-image img,
            .promo-banners-container .promo-banner .promo-image video {
                max-height: 128px !important;
            }
        }
        
        .promo-banner-iphone17pro .promo-banner-content {
            position: relative;
            z-index: 3;
            display: flex;
            align-items: center;
            justify-content: flex-start;
        }
        
        .promo-banner-iphone17pro .promo-text {
            text-align: left;
        }
        
        .promo-banner-iphone17pro::after {
            background: transparent !important;
        }
        
        .promo-banner-iphone17pro:hover {
            background: #000000 !important;
        }
        
        .promo-banner-iphone17pro .promo-title {
            font-size: 22px;
        }
        
        .promo-banner-iphone17pro .promo-subtitle {
            font-size: 15px;
        }

        .promo-hero-button {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            margin-top: 22px;
            padding: 12px 18px;
            border-radius: 10px;
            background: #f3f4f6;
            color: #111;
            font-size: 0.95rem;
            font-weight: 700;
            line-height: 1;
            box-shadow: 0 10px 26px rgba(0, 0, 0, 0.22);
            border: 0;
            cursor: pointer;
        }

        .promo-hero-button__arrow {
            font-size: 1.05rem;
            line-height: 1;
        }

        .promo-description {
            margin-top: 18px;
            color: rgba(255, 255, 255, 0.9);
            font-size: 1rem;
            font-weight: 500;
            line-height: 1.55;
        }

        @media (min-width: 1025px) {
            .promo-banners-container {
                overflow-x: auto;
                scroll-snap-type: x mandatory;
                scroll-behavior: smooth;
                scrollbar-width: none;
                -ms-overflow-style: none;
                cursor: grab;
                -webkit-overflow-scrolling: touch;
            }

            .promo-banners-container::-webkit-scrollbar {
                display: none;
            }

            .promo-banners-container.is-dragging {
                scroll-snap-type: none;
                scroll-behavior: auto;
                cursor: grabbing;
                user-select: none;
            }

            .promo-banners-container .promo-banner {
                flex: 0 0 100%;
                scroll-snap-align: start;
                aspect-ratio: 3.1 / 1;
                max-height: 420px;
            }

            .promo-banners-container .promo-banner--full-image {
                border-radius: 0;
                box-shadow: none;
            }

            .promo-banner-iphone17pro {
                border-radius: 0;
                box-shadow: none;
            }

            .promo-banner-iphone17pro::before {
                background: transparent !important;
            }

            .promo-banner-iphone17pro .promo-banner-content {
                min-height: 100%;
                padding: clamp(34px, 4vw, 64px) clamp(34px, 4vw, 64px);
            }

            .promo-banner-iphone17pro .promo-text {
                max-width: 43%;
            }

            .promo-banner-iphone17pro .promo-badge {
                margin-bottom: 18px;
                padding: 5px 12px;
                border-radius: 999px;
                background: rgba(255, 255, 255, 0.12);
                border: 1px solid rgba(255, 255, 255, 0.2);
                color: rgba(255, 255, 255, 0.86);
                font-size: 0.68rem;
                letter-spacing: 0.18em;
            }

            .promo-banner-iphone17pro .promo-title {
                max-width: 520px;
                font-size: clamp(2.3rem, 4vw, 4rem);
                line-height: 0.98;
                letter-spacing: -0.06em;
            color: #fff;
            }

            .promo-banner-iphone17pro .promo-subtitle {
                max-width: 430px;
                margin-top: 6px;
                font-size: clamp(1rem, 1.35vw, 1.35rem);
                line-height: 1.45;
                font-weight: 700;
                color: #d9a184;
            }

            .promo-banner-iphone17pro .promo-description {
                max-width: 430px;
                font-size: clamp(0.95rem, 1.1vw, 1.15rem);
            }
        }

        .promo-banner-2 .promo-image {
            border-radius: 0 12px 12px 0;
        }
        
        .promo-banner-2 .promo-image img,
        .promo-banner-2 .promo-image video {
            filter: none !important;
        }
        
        .promo-banner-2 .promo-text {
            color: #111827;
            text-align: center;
        }
        
        .promo-banner-2 .promo-banner-content {
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .promo-banner-2 .promo-title {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro Text', 'Helvetica Neue', sans-serif;
            background: linear-gradient(135deg, #4b5563 0%, #6b7280 50%, #9ca3af 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            font-size: 24px;
            font-weight: 600;
            margin-bottom: 6px;
            line-height: 1.1;
            letter-spacing: -0.02em;
        }
        
        .promo-banner-2 .promo-subtitle {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            color: rgba(17, 24, 39, 0.65);
            font-size: 14px;
            font-weight: 600;
            line-height: 1.47;
            letter-spacing: -0.01em;
        }
        
        .promo-banner-2 .promo-badge {
            background: linear-gradient(135deg, rgba(17, 24, 39, 0.08) 0%, rgba(17, 24, 39, 0.12) 100%);
            color: #111827;
            border: 1px solid rgba(17, 24, 39, 0.15);
            font-weight: 700;
        }
        
        .promo-banner-max {
            background: #FFFFFF !important;
        }
        
        .promo-banner-max::before {
            background: transparent !important;
        }
        
        .promo-banner-max::after {
            background: transparent !important;
        }
        
        .promo-banner-max:hover {
            background: #FFFFFF !important;
        }
        
        .promo-banner-max .promo-image {
            border-radius: 0 12px 12px 0;
        }
        
        .promo-banner-max .promo-image img,
        .promo-banner-max .promo-image video {
            filter: none !important;
        }
        
        .promo-banner-max .promo-text {
            text-align: center;
        }
        
        .promo-banner-max .promo-banner-content {
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .promo-banner-max .promo-text {
            color: #111827;
        }
        
        .promo-banner-max .promo-title {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro Text', 'Helvetica Neue', sans-serif;
            background: linear-gradient(135deg, #1d1d1f 0%, #2d2d2f 50%, #3d3d3f 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            font-size: 24px;
            font-weight: 600;
            margin-bottom: 6px;
            line-height: 1.1;
            letter-spacing: -0.02em;
        }
        
        .promo-banner-max .promo-subtitle {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            color: rgba(17, 24, 39, 0.65);
            font-size: 14px;
            font-weight: 600;
            line-height: 1.47;
            letter-spacing: -0.01em;
        }
        
        .promo-banner-max .promo-badge {
            background: linear-gradient(135deg, rgba(17, 24, 39, 0.08) 0%, rgba(17, 24, 39, 0.12) 100%);
            color: #111827;
            border: 1px solid rgba(17, 24, 39, 0.15);
            font-weight: 700;
        }
        
        .promo-banner-iphone17 .promo-banner-content {
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .promo-banner-iphone17 .promo-text {
            text-align: center;
        }
        
        .promo-banner-iphone17 .promo-title {
            font-family: 'Graphik-Medium-Cy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            background: linear-gradient(135deg, #ffffff 0%, #f8f9ff 50%, #e8edff 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            font-size: 22px;
            font-weight: 530;
            margin-bottom: 6px;
            line-height: 1.07143;
            letter-spacing: -0.005em;
            text-shadow: none;
        }
        
        .promo-banner-iphone17 .promo-subtitle {
            color: rgba(255, 255, 255, 0.85);
            font-weight: 600;
            letter-spacing: 0.2px;
        }
        
        .promo-banner-iphone17 .promo-badge {
            background: linear-gradient(135deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.15) 100%);
            color: rgba(255, 255, 255, 0.95);
            border: 1px solid rgba(255, 255, 255, 0.25);
        }
        
        .promo-banner-watch {
            background: #000000 !important;
        }
        
        
        .promo-banner-watch::before {
            background: transparent !important;
        }
        
        .promo-banner-watch::after {
            background: transparent !important;
        }
        
        .promo-banner-watch .promo-banner-content {
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .promo-banner-watch .promo-text {
            text-align: center;
        }
        
        .promo-banner-watch .promo-title {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro Text', 'Helvetica Neue', sans-serif;
            background: linear-gradient(135deg, #d1d5db 0%, #e5e7eb 50%, #f3f4f6 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            font-size: 18px;
            font-weight: 600;
            margin-bottom: 4px;
            line-height: 1.1;
            letter-spacing: -0.02em;
            text-shadow: none;
        }
        
        .promo-banner-watch .promo-subtitle {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            color: rgba(255, 255, 255, 0.8);
            font-size: 12px;
            font-weight: 600;
            line-height: 1.4;
            letter-spacing: -0.01em;
        }
        
        .promo-banner-watch .promo-badge {
            background: linear-gradient(135deg, rgba(255, 255, 255, 0.2) 0%, rgba(255, 255, 255, 0.15) 100%);
            color: rgba(255, 255, 255, 0.95);
            border: 1px solid rgba(255, 255, 255, 0.25);
        }
        
        
        .promo-banner::before {
            content: '';
            position: absolute;
            top: -50%;
            right: -50%;
            width: 200%;
            height: 200%;
            background: radial-gradient(circle, rgba(102, 126, 234, 0.15) 0%, transparent 70%);
            animation: pulse 4s ease-in-out infinite;
        }
        
        .promo-banner::after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: linear-gradient(135deg, rgba(102, 126, 234, 0.1) 0%, transparent 50%);
            pointer-events: none;
        }
        
        @keyframes pulse {
            0%, 100% { transform: scale(1) rotate(0deg); opacity: 0.3; }
            50% { transform: scale(1.2) rotate(180deg); opacity: 0.6; }
        }
        
        .promo-banner:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 25px rgba(0,0,0,0.15);
        }
        
        .promo-banner-content {
            position: relative;
            z-index: 2;
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            padding: 10px 15px;
            gap: 15px;
            min-height: 105px;
        }
        
        .promo-text {
            flex: 1;
            max-width: 45%;
            align-self: center;
            padding-top: 0;
        }
        
        .promo-badge {
            display: inline-block;
            background: linear-gradient(135deg, rgba(255, 255, 255, 0.25) 0%, rgba(255, 255, 255, 0.15) 100%);
            padding: 3px 10px;
            border-radius: 20px;
            font-size: 0.5rem;
            font-weight: 700;
            margin-bottom: 6px;
            text-transform: uppercase;
            letter-spacing: 1px;
            border: 1px solid rgba(255, 255, 255, 0.3);
            color: rgba(255, 255, 255, 1);
            text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
        }
        
        .promo-title {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 18px;
            font-weight: 600;
            margin-bottom: 4px;
            opacity: 0.95;
            color: rgba(255, 255, 255, 0.95);
            text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7), 0 1px 4px rgba(0, 0, 0, 0.8);
            line-height: 1.1;
            letter-spacing: -0.02em;
        }
        
        .promo-subtitle {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 13px;
            opacity: 0.95;
            font-weight: 600;
            line-height: 1.4;
            color: rgba(255, 255, 255, 0.95);
            text-shadow: 0 2px 10px rgba(0, 0, 0, 0.7), 0 1px 4px rgba(0, 0, 0, 0.8);
            letter-spacing: -0.01em;
        }
        
        .promo-image {
            flex: 1;
            max-width: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            position: relative;
            min-height: 100px;
            height: 100px;
        }
        
        .promo-image img,
        .promo-image video {
            max-width: 100%;
            height: auto;
            max-height: 100px;
            object-fit: contain;
            filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.4));
            transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        
        /* Карусель для мобильной версии */
        .promo-carousel-wrapper {
            position: relative;
            margin-top: 0;
            margin-bottom: 15px;
            background: transparent;
            width: 100vw;
            max-width: 100vw;
            margin-left: calc(50% - 50vw);
            margin-right: calc(50% - 50vw);
        }

        /* Промо и шапки страниц — вплотную под fixed header (компенсируем запас offset) */
        @media (min-width: 1025px) {
            #content > .promo-carousel-wrapper:first-child,
            #content > .breadcrumbs:first-child,
            #content > .search-results-header:first-child {
                margin-top: calc(var(--header-desktop-height, 96px) - var(--header-desktop-offset, 96px));
            }
        }

        @media (max-width: 1024px) {
            #content > .promo-carousel-wrapper:first-child {
                margin-top: calc(var(--header-mobile-height, 116px) - var(--header-mobile-offset, 116px));
            }

            #content > .breadcrumbs:first-child,
            #content > .search-results-header:first-child {
                scroll-margin-top: calc(var(--header-mobile-offset, 124px) + 8px);
            }
        }
        @media (min-width: 1025px) {
            .promo-banner {
                max-height: 240px;
                aspect-ratio: 21 / 9;
            }
            .promo-image {
                min-height: 160px;
                height: 160px;
            }
            .promo-image img,
            .promo-image video {
                max-height: 160px;
            }
        }
        
        .promo-carousel-indicators {
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 10px;
            padding: 10px 22px 14px;
            position: absolute;
            bottom: 12px;
            left: 50%;
            right: auto;
            transform: translateX(-50%);
            z-index: 10;
            pointer-events: auto;
            width: max-content;
            max-width: calc(100% - 32px);
            box-sizing: border-box;
            -webkit-tap-highlight-color: transparent;
        }
        
        .promo-carousel-indicator {
            position: relative;
            flex-shrink: 0;
            width: 34px;
            height: 4px;
            border-radius: 999px;
            background: rgba(255, 255, 255, 0.18);
            cursor: pointer;
            transition: all 0.3s ease;
            border: none;
            padding: 0;
            pointer-events: auto;
        }

        /* Невидимая зона нажатия — проще попасть, не уходя кликом на баннер */
        .promo-carousel-indicator::after {
            content: '';
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            width: 44px;
            min-height: 40px;
        }
        
        .promo-carousel-indicator.active {
            background: rgba(255, 255, 255, 0.95);
            width: 34px;
            border-radius: 999px;
        }
        
        @media (max-width: 1024px) {
            .promo-banners-container {
                --promo-title-size: clamp(22px, 6.4vw, 30px);
                --promo-subtitle-size: clamp(13px, 3.5vw, 17px);
                --promo-btn-size: clamp(13px, 3.1vw, 16px);
                --promo-btn-height: clamp(38px, 9.5vw, 44px);
                --promo-content-inset: clamp(14px, 4vw, 22px);
                display: flex;
                overflow-x: auto;
                scroll-snap-type: x mandatory;
                scroll-behavior: smooth;
                gap: 0;
                background: transparent;
                -webkit-overflow-scrolling: touch;
                padding: 0;
                scrollbar-width: none;
                -ms-overflow-style: none;
            }
            
            .promo-banners-container::-webkit-scrollbar {
                display: none;
            }
            
            .promo-carousel-indicators {
                display: flex;
            }
            
            .promo-banner {
                min-width: 100%;
                width: 100%;
                flex-shrink: 0;
                scroll-snap-align: start;
                aspect-ratio: 16 / 9;
                border-radius: 0;
                margin-right: 0;
                box-shadow: none;
                position: relative;
            }
            
            .promo-banner::before,
            .promo-banner::after {
                display: none;
            }
            
            .promo-banner-content {
                flex-direction: column;
                align-items: center;
                justify-content: center;
                padding: 10px 12px;
                gap: 8px;
                text-align: center;
                min-height: 145px;
            }
            
            .promo-text {
                max-width: 100%;
                align-self: center;
                text-align: center;
            }
            
            .promo-image {
                max-width: 100%;
            }
            
            .promo-title {
                font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'SF Pro Text', 'Helvetica Neue', sans-serif;
                font-size: 20px;
                font-weight: 600;
                line-height: 1.1;
                letter-spacing: -0.02em;
            }
            
            .promo-subtitle {
                font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
                font-size: 13px;
                font-weight: 600;
                line-height: 1.47;
                letter-spacing: -0.01em;
            }
            
            .promo-badge {
                font-size: 0.55rem;
                padding: 3px 10px;
            }
            
            /* Главная: мобильные баннеры 410×358 — слот как в макете, без обрезки картинки */
            .promo-banners-container .promo-banner.promo-banner--full-image {
                aspect-ratio: 410 / 358;
                max-height: none;
                min-height: 0;
                background: #f5f5f7;
            }
            .promo-banners-container .promo-banner.promo-banner--full-image picture img {
                object-fit: contain !important;
            }

            /* Текст на мобильных баннерах (кроме 1-го — у него блок внизу) */
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-second-content,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-third-content,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-fourth-content,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-fifth-content {
                left: var(--promo-content-inset);
                right: auto;
                max-width: min(62%, 360px);
                top: 30%;
                transform: translateY(-50%);
            }

            /* 1-й баннер: текст и кнопка внизу, на всю ширину (+ отступ от точек карусели) */
            .promo-banners-container .promo-banner.promo-banner--full-image.promo-banner--first .promo-first-content {
                left: var(--promo-content-inset);
                right: var(--promo-content-inset);
                top: auto;
                bottom: clamp(44px, 11vw, 64px);
                transform: none;
                max-width: none;
                width: auto;
                box-sizing: border-box;
                color: #111827;
            }

            .promo-banners-container .promo-banner.promo-banner--full-image.promo-banner--first .promo-first-title {
                color: #111827;
                font-size: var(--promo-title-size);
                line-height: 1.08;
            }

            .promo-banners-container .promo-banner.promo-banner--full-image.promo-banner--first .promo-first-subtitle {
                color: #4b5563;
                opacity: 1;
                font-size: var(--promo-subtitle-size);
                line-height: 1.25;
                margin-top: clamp(6px, 1.6vw, 10px);
                font-weight: 400;
            }

            .promo-banners-container .promo-banner.promo-banner--full-image.promo-banner--first .promo-first-button {
                background: #1f2937;
                color: #f9fafb;
                min-height: var(--promo-btn-height);
                padding: 0 clamp(20px, 5vw, 36px);
                font-size: var(--promo-btn-size);
                margin-top: clamp(10px, 2.5vw, 16px);
                border-radius: clamp(12px, 2vw, 15px);
            }

            /* 1-й слайд: нижняя «воздушная» зона под текст — без лишнего зазора сверху при contain */
            .promo-banners-container .promo-banner.promo-banner--full-image.promo-banner--first picture img {
                object-position: bottom center !important;
            }

            /* 3-й баннер: текст чуть ниже остальных */
            .promo-banners-container .promo-banner.promo-banner--full-image.promo-banner--third .promo-third-content {
                top: 38%;
                transform: translateY(-50%);
            }

            .promo-banners-container .promo-banner.promo-banner--full-image.promo-banner--third .promo-third-subtitle {
                font-size: var(--promo-subtitle-size);
                line-height: 1.25;
                margin-top: clamp(6px, 1.6vw, 10px);
                font-weight: 400;
                color: #4b5563;
            }

            /* 4-й баннер: текст чуть выше стандартного центра на мобиле */
            .promo-banners-container .promo-banner.promo-banner--full-image.promo-banner--fourth .promo-fourth-content {
                top: 25%;
                transform: translateY(-50%);
            }

            /* Заголовки и кнопки промо-баннеров — масштаб от ширины экрана */
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-first-title,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-second-title,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-third-title,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-fourth-title,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-fifth-title {
                font-family: 'Graphik-Medium-Cy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
                font-size: var(--promo-title-size);
                line-height: 1.08;
                font-weight: 700;
                letter-spacing: -0.018em;
            }

            .promo-banners-container .promo-banner.promo-banner--full-image .promo-third-title {
                white-space: normal;
            }

            .promo-banners-container .promo-banner.promo-banner--full-image .promo-second-button,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-third-button,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-fourth-button {
                margin-top: clamp(10px, 2.5vw, 16px);
                display: inline-flex;
                align-items: center;
                justify-content: center;
                min-height: var(--promo-btn-height);
                padding: 0 clamp(18px, 4.5vw, 32px);
                border-radius: clamp(12px, 2vw, 17px);
                background: #34373d;
                color: #f8fafc;
                font-family: 'Graphik-Medium-Cy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
                font-size: var(--promo-btn-size);
                line-height: 1;
                font-weight: 500;
                letter-spacing: -0.01em;
            }

            .promo-banners-container .promo-banner.promo-banner--full-image .promo-fifth-button {
                margin-top: clamp(10px, 2.5vw, 16px);
                display: inline-flex;
                align-items: center;
                justify-content: center;
                min-height: var(--promo-btn-height);
                padding: 0 clamp(18px, 4.5vw, 32px);
                border-radius: clamp(12px, 2vw, 17px);
                background: #f3f4f6;
                color: #111827;
                font-family: 'Graphik-Medium-Cy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
                font-size: var(--promo-btn-size);
                line-height: 1;
                font-weight: 500;
                letter-spacing: -0.01em;
            }
            
            .promo-image img,
            .promo-image video {
                max-height: 120px;
            }
        }

        /* Планшет: крупнее типографика под широкий баннер 410×358 */
        @media (min-width: 481px) and (max-width: 1024px) {
            .promo-banners-container {
                --promo-title-size: clamp(30px, 4.6vw, 44px);
                --promo-subtitle-size: clamp(15px, 2.1vw, 20px);
                --promo-btn-size: clamp(14px, 1.7vw, 17px);
                --promo-btn-height: clamp(42px, 5.2vw, 50px);
                --promo-content-inset: clamp(22px, 3.5vw, 40px);
            }

            .promo-banners-container .promo-banner.promo-banner--full-image .promo-second-content,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-third-content,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-fourth-content,
            .promo-banners-container .promo-banner.promo-banner--full-image .promo-fifth-content {
                max-width: min(54%, 420px);
            }

            .promo-banners-container .promo-banner.promo-banner--full-image.promo-banner--first .promo-first-content {
                bottom: clamp(48px, 8vw, 72px);
            }
        }
        
        
        .brands-carousel {
            width: 100vw;
            max-width: none;
            margin-left: calc(50% - 50vw);
            margin-right: calc(50% - 50vw);
            margin-top: 24px;
            margin-bottom: 28px;
            border-top: 1px solid #eaeaea;
            border-bottom: 1px solid #eaeaea;
            background: #f3f4f6;
            overflow: hidden;
            position: relative;
            scroll-margin-top: calc(var(--header-desktop-offset, 96px) + 16px);
        }

        .brands-carousel-arrow {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 42px;
            height: 42px;
            border-radius: 50%;
            border: 1px solid rgba(17, 24, 39, 0.08);
            background: rgba(255, 255, 255, 0.62);
            color: rgba(17, 24, 39, 0.62);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            z-index: 3;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
            transition: all 0.2s ease;
        }

        .brands-carousel-arrow--prev { left: 10px; }
        .brands-carousel-arrow--next { right: 10px; }

        .brands-carousel-arrow:hover {
            background: rgba(249, 250, 251, 0.76);
            border-color: rgba(17, 24, 39, 0.14);
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.10);
        }

        .brands-carousel-arrow svg {
            width: 24px;
            height: 24px;
            stroke: currentColor;
            stroke-width: 2;
            fill: none;
        }

        .brands-carousel-track {
            display: flex;
            align-items: center;
            gap: 8px;
            width: max-content;
            padding: 12px 16px;
            will-change: transform;
            transition: transform 0.28s ease;
        }

        .brands-carousel-item {
            min-width: 170px;
            height: 70px;
            padding: 0 18px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            text-decoration: none;
            color: #111827;
            background: transparent;
            box-sizing: border-box;
            flex-shrink: 0;
        }

        .brands-carousel-item img {
            max-height: 42px;
            max-width: 150px;
            width: auto;
            object-fit: contain;
            display: block;
            opacity: 0.92;
            filter: grayscale(1);
            transition: opacity 0.2s ease, filter 0.2s ease;
        }

        .brands-carousel-item img.brands-carousel-logo--compact {
            max-height: 26px;
            max-width: 88px;
        }

        .brands-carousel-item img.brands-carousel-logo--yandex {
            max-height: 22px;
            max-width: 74px;
        }

        .brands-carousel-item:hover img {
            opacity: 1;
            filter: grayscale(0);
        }

        .brands-carousel-item-name {
            font-size: 40px;
            line-height: 1;
            font-weight: 700;
            letter-spacing: -0.03em;
            white-space: nowrap;
        }

        @media (max-width: 1024px) {
            .brands-carousel-track {
                padding: 10px 12px;
            }
            .brands-carousel-item {
                min-width: 150px;
                height: 62px;
                padding: 0 12px;
            }
            .brands-carousel-item img {
                max-height: 36px;
                max-width: 130px;
            }
            .brands-carousel-item img.brands-carousel-logo--compact {
                max-height: 22px;
                max-width: 74px;
            }
            .brands-carousel-item img.brands-carousel-logo--yandex {
                max-height: 18px;
                max-width: 60px;
            }
            .brands-carousel-item-name {
                font-size: 32px;
            }
        }

        @media (max-width: 1024px) {
            .brands-carousel {
                overflow-x: auto;
                overflow-y: hidden;
                -webkit-overflow-scrolling: touch;
                scroll-snap-type: x mandatory;
                scroll-padding-inline: 14px;
            }
            .brands-carousel::-webkit-scrollbar { display: none; }
            .brands-carousel-track {
                gap: 12px;
                padding: 10px 14px;
                transform: none !important;
                transition: none;
            }
            .brands-carousel-item {
                flex: 0 0 84px;
                width: 84px;
                min-width: 84px;
                max-width: 84px;
                height: 72px;
                padding: 0;
                flex-shrink: 0;
                scroll-snap-align: start;
            }
            .brands-carousel-item img {
                max-height: 36px;
                max-width: 76px;
                width: auto;
                margin: 0 auto;
            }
            .brands-carousel-item img.brands-carousel-logo--compact {
                max-height: 28px;
                max-width: 76px;
            }
            .brands-carousel-item img.brands-carousel-logo--yandex {
                max-height: 24px;
                max-width: 76px;
            }
            .brands-carousel-item-name {
                font-size: 13px;
                font-weight: 600;
                letter-spacing: -0.02em;
                text-align: center;
                white-space: normal;
                line-height: 1.15;
                max-width: 100%;
                overflow: hidden;
                display: -webkit-box;
                -webkit-line-clamp: 2;
                -webkit-box-orient: vertical;
            }
            .brands-carousel-arrow { display: none; }
        }

        .popular-categories-title {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Helvetica Neue', sans-serif;
            font-size: 22px;
            font-weight: 600;
            color: #111827;
            line-height: 1.2;
            letter-spacing: -0.02em;
            margin: 20px 0 14px;
            text-align: center;
        }
        
        .categories {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 0;
            margin-bottom: 30px;
            border-top: 1px solid #eaeaea;
            border-left: 1px solid #eaeaea;
            box-sizing: border-box;
        }

        @media (min-width: 1025px) {
            .categories {
                width: 100vw;
                max-width: none;
                margin-left: calc(50% - 50vw);
                margin-right: calc(50% - 50vw);
            }
        }
        
        /* Для планшетов и мобильных (1024px и меньше) - используем мобильные стили */
        @media screen and (max-width: 1024px) {
            .categories {
                grid-template-columns: repeat(2, 1fr);
                gap: 0;
            }

            .products-grid:not(.individual-mode) {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
            
            .products-grid.individual-mode {
                grid-template-columns: repeat(2, 1fr);
                gap: 0;
            }
            
            .products-grid.individual-mode .product-name {
                font-size: 0.95rem;
            }
            
            .category-card {
                max-width: 100%;
                box-sizing: border-box;
            }
        }
        
        /* Секция "За что нас выбирают" — карточки в стиле restore */
        .why-choose-section {
            margin-top: 48px;
            padding: 0 20px 12px;
            max-width: 1400px;
            margin-left: auto;
            margin-right: auto;
            width: 100%;
        }
        
        .why-choose-header {
            text-align: left;
            margin-bottom: 20px;
        }
        
        .why-choose-title {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Helvetica Neue', sans-serif;
            font-size: 32px;
            font-weight: 500;
            color: #000;
            margin: 0 0 10px;
            line-height: 1.12;
            letter-spacing: -0.04em;
        }
        
        .why-choose-subtitle {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 22px;
            font-weight: 400;
            color: #4b5563;
            line-height: 1.4;
            letter-spacing: -0.02em;
            margin: 0;
            max-width: 640px;
        }
        
        .why-choose-cards {
            display: grid;
            grid-template-columns: repeat(6, minmax(0, 1fr));
            gap: 10px;
            align-items: stretch;
        }
        
        .why-choose-card {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: flex-start;
            text-align: center;
            padding: 28px 12px 24px;
            background: #f5f5f7;
            border-radius: 14px;
            min-height: 220px;
            box-sizing: border-box;
            height: 100%;
        }
        
        .why-choose-icon {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
            margin: 0 0 14px;
            width: 84px;
            height: 84px;
            min-height: 84px;
            color: #000;
        }
        
        .why-choose-icon-svg {
            width: 84px;
            height: 84px;
            display: block;
        }
        
        .why-choose-icon-svg path,
        .why-choose-icon-svg circle,
        .why-choose-icon-svg line,
        .why-choose-icon-svg polyline {
            stroke-width: 1;
        }
        
        .why-choose-card-label {
            flex: 1;
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            width: 100%;
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'SF Pro Display', 'Helvetica Neue', sans-serif;
            font-size: 14px;
            font-weight: 400;
            color: #4b5563;
            line-height: 1.45;
            letter-spacing: -0.01em;
            margin: 0 auto;
            max-width: 16em;
        }
        
        .why-choose-card-title {
            display: block;
            font-size: 16px;
            font-weight: 600;
            color: #000;
            margin-bottom: 6px;
            letter-spacing: -0.02em;
        }
        
        .why-choose-card-label strong {
            font-weight: 600;
            color: #111827;
        }
        
        @media screen and (max-width: 1024px) {
            .why-choose-section {
                margin-top: 40px;
                padding: 0 20px 12px;
            }
            
            .why-choose-title {
                font-size: 26px;
            }
            
            .why-choose-subtitle {
                font-size: 18px;
            }
            
            .why-choose-cards {
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 8px;
            }
            
            .why-choose-card {
                padding: 28px 12px 24px;
                min-height: 200px;
            }
            
            .why-choose-icon {
                width: 68px;
                height: 68px;
                min-height: 68px;
                margin-bottom: 10px;
            }
            
            .why-choose-icon-svg {
                width: 68px;
                height: 68px;
            }
            
            .why-choose-card-label {
                font-size: 13px;
                max-width: 14em;
            }
            
            .why-choose-card-title {
                font-size: 15px;
            }
        }
        
        @media screen and (max-width: 640px) {
            .why-choose-section {
                margin-top: 32px;
                padding: 0 15px 12px;
            }
            
            .why-choose-title {
                font-size: 22px;
            }
            
            .why-choose-cards {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 8px;
            }
            
            .why-choose-card {
                padding: 24px 10px 20px;
                min-height: 188px;
                border-radius: 10px;
            }
            
            .why-choose-subtitle {
                font-size: 16px;
            }
            
            .why-choose-icon {
                width: 58px;
                height: 58px;
                min-height: 58px;
                margin-bottom: 8px;
            }
            
            .why-choose-icon-svg {
                width: 58px;
                height: 58px;
            }
            
            .why-choose-card-label {
                font-size: 12px;
                max-width: 13em;
            }
            
            .why-choose-card-title {
                font-size: 14px;
                margin-bottom: 4px;
            }
        }

        /* Техноблог — карточки в стиле restore Digest */
        .home-tech-blog {
            margin-top: 56px;
            padding: 0 20px 12px;
            max-width: 1400px;
            margin-left: auto;
            margin-right: auto;
        }
        .home-tech-blog__header {
            margin-bottom: 28px;
        }
        .home-tech-blog__title {
            font-family: 'Inter', system-ui, -apple-system, sans-serif;
            font-size: 28px;
            font-weight: 700;
            color: #000;
            margin: 0 0 8px;
            letter-spacing: -0.03em;
            line-height: 1.15;
        }
        .home-tech-blog__subtitle {
            font-size: 15px;
            color: #6b7280;
            line-height: 1.5;
            margin: 0;
        }
        .home-tech-blog__grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 20px;
        }
        .home-tech-blog-card {
            position: relative;
            display: flex;
            flex-direction: column;
            justify-content: flex-end;
            min-height: 380px;
            padding: 28px 26px 24px;
            border-radius: 4px;
            overflow: hidden;
            text-decoration: none;
            color: #fff;
            background-color: #3a3a3c;
            background-size: cover;
            background-position: center;
            transition: transform 0.35s ease, box-shadow 0.35s ease;
        }
        .home-tech-blog-card:hover {
            transform: translateY(-3px);
            box-shadow: 0 20px 48px rgba(0, 0, 0, 0.22);
        }
        .home-tech-blog-card__overlay {
            position: absolute;
            inset: 0;
            /* Одинаковое лёгкое затемнение на всех карточках + градиент снизу для текста */
            background:
                linear-gradient(180deg, rgba(0, 0, 0, 0.1) 0%, rgba(0, 0, 0, 0.52) 70%, rgba(0, 0, 0, 0.66) 100%),
                rgba(0, 0, 0, 0.16);
            pointer-events: none;
        }
        .home-tech-blog-card__section,
        .home-tech-blog-card__heading,
        .home-tech-blog-card__date {
            position: relative;
            z-index: 1;
        }
        .home-tech-blog-card__section {
            font-size: 13px;
            font-weight: 500;
            letter-spacing: 0.02em;
            margin-bottom: 10px;
            opacity: 0.92;
        }
        .home-tech-blog-card__heading {
            font-family: 'Inter', system-ui, -apple-system, sans-serif;
            font-size: clamp(1.25rem, 2.2vw, 1.65rem);
            font-weight: 700;
            line-height: 1.22;
            letter-spacing: -0.02em;
            margin: 0 0 auto;
            padding-bottom: 20px;
            color: #fff;
        }
        .home-tech-blog-card__date {
            font-size: 13px;
            opacity: 0.75;
            margin-top: auto;
        }
        @media (max-width: 1024px) {
            .home-tech-blog__grid {
                grid-template-columns: 1fr;
            }
            .home-tech-blog-card {
                min-height: 320px;
            }
            .home-tech-blog {
                margin-top: 40px;
            }
        }

        /* Страница статьи — editorial layout */
        .blog-article-page.info-static-page-wrap {
            max-width: 100%;
            padding-left: 0;
            padding-right: 0;
            padding-bottom: 72px;
        }
        .blog-article-layout {
            max-width: 1280px;
            margin: 0 auto;
            padding: 0 24px;
        }
        @media (min-width: 1025px) {
            .blog-article-layout {
                padding: 0 32px;
            }
        }
        .blog-article-back {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            margin-bottom: 28px;
            font-size: 14px;
            font-weight: 500;
            color: #6b7280;
            background: none;
            border: none;
            cursor: pointer;
            padding: 0;
            transition: color 0.2s;
        }
        .blog-article-back:hover {
            color: #111827;
        }
        .blog-article-hero__kicker {
            font-size: 15px;
            font-weight: 700;
            letter-spacing: 1px;
            text-transform: uppercase;
            color: #000;
            margin: 0 0 20px;
        }
        .blog-article-hero__title {
            font-family: 'Inter', system-ui, -apple-system, sans-serif;
            font-size: clamp(2rem, 5.5vw, 3rem);
            font-weight: 700;
            letter-spacing: -0.03em;
            color: #000;
            line-height: 1.08;
            margin: 0;
        }
        .blog-article-hero__date {
            display: block;
            margin-top: 18px;
            font-size: 15px;
            color: #000;
            opacity: 0.5;
        }
        .blog-article-intro {
            display: grid;
            grid-template-columns: minmax(0, 1fr) minmax(220px, 320px);
            gap: 32px 48px;
            margin: 36px 0 12px;
            align-items: start;
        }
        .blog-article-intro__lead p {
            font-size: 17px;
            line-height: 1.65;
            color: #1d1d1f;
            margin: 0 0 14px;
        }
        .blog-article-intro__lead p:last-child {
            margin-bottom: 0;
        }
        .blog-article-intro__lead em {
            font-style: italic;
        }
        .blog-article-aside__label {
            font-size: 14px;
            font-weight: 700;
            margin: 0 0 10px;
            color: #000;
        }
        .blog-article-aside__link {
            display: block;
            font-size: 14px;
            line-height: 1.45;
            color: #1d1d1f;
            text-decoration: none;
            margin-bottom: 10px;
            transition: opacity 0.2s;
        }
        .blog-article-aside__link:hover {
            opacity: 0.65;
        }
        .blog-article-body-wrap {
            margin-top: 8px;
        }
        .blog-section {
            margin-top: 40px;
        }
        .blog-section__title {
            font-family: 'Inter', system-ui, -apple-system, sans-serif;
            font-size: clamp(1.35rem, 3vw, 1.75rem);
            font-weight: 600;
            color: #000;
            line-height: 1.25;
            letter-spacing: -0.02em;
            margin: 0 0 4px;
        }
        .blog-section__figure {
            margin: 20px 0 0;
            padding: 0;
        }
        .blog-section__figure img {
            width: 100%;
            max-width: 100%;
            height: auto;
            display: block;
            vertical-align: top;
        }
        .blog-section__content {
            background: #f5f5f7;
            border-radius: 12px;
            padding: 24px 28px;
            margin-top: 0;
        }
        .blog-section__content p {
            font-size: 16px;
            line-height: 1.75;
            color: #1d1d1f;
            margin: 0 0 16px;
        }
        .blog-section__content p:last-child {
            margin-bottom: 0;
        }
        .blog-section__content ul {
            margin: 0;
            padding-left: 1.25em;
            font-size: 16px;
            line-height: 1.7;
            color: #1d1d1f;
        }
        .blog-section__content li {
            margin-bottom: 8px;
        }
        .blog-section__content li:last-child {
            margin-bottom: 0;
        }
        .blog-section__content strong {
            font-weight: 600;
            color: #000;
        }
        .blog-section__content a {
            color: #000;
            text-decoration: underline;
            text-underline-offset: 2px;
        }
        .blog-article-summary {
            margin-top: 48px;
            padding: 28px 32px;
            background: #f5f5f7;
            border-radius: 12px;
        }
        .blog-article-summary__title {
            font-family: 'Inter', system-ui, -apple-system, sans-serif;
            font-size: clamp(1.25rem, 3vw, 1.6rem);
            font-weight: 600;
            color: #000;
            margin: 0 0 18px;
            letter-spacing: -0.02em;
        }
        .blog-article-summary p,
        .blog-article-summary li {
            font-size: 16px;
            line-height: 1.7;
            color: #1d1d1f;
        }
        .blog-article-summary ul {
            margin: 0;
            padding-left: 1.25em;
        }
        .blog-article-summary li {
            margin-bottom: 10px;
        }
        .blog-article-summary li:last-child {
            margin-bottom: 0;
        }
        .blog-article-cta {
            margin-top: 40px;
            padding: 32px 36px;
            border-radius: 12px;
            background: #000;
            color: #fff;
            text-align: center;
        }
        .blog-article-cta__title {
            font-size: 22px;
            font-weight: 600;
            margin: 0 0 10px;
            letter-spacing: -0.02em;
        }
        .blog-article-cta__text {
            font-size: 15px;
            line-height: 1.55;
            color: rgba(255, 255, 255, 0.72);
            margin: 0 0 22px;
            max-width: 480px;
            margin-left: auto;
            margin-right: auto;
        }
        .blog-article-cta__btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 14px 32px;
            border-radius: 980px;
            background: #fff;
            color: #000;
            font-size: 15px;
            font-weight: 600;
            border: none;
            cursor: pointer;
            transition: transform 0.2s, opacity 0.2s;
        }
        .blog-article-cta__btn:hover {
            transform: scale(1.02);
            opacity: 0.92;
        }
        @media (max-width: 1024px) {
            .blog-article-intro {
                grid-template-columns: 1fr;
                gap: 24px;
            }
            .blog-section__content {
                padding: 20px 18px;
            }
        }
        
        /* Рекомендации товаров на главной странице */
        .home-recommendations {
            margin-top: 0;
            padding: 0 20px;
            max-width: 1400px;
            margin-left: auto;
            margin-right: auto;
            position: relative;
            opacity: 0;
            transform: translateY(20px);
        }
        
        .home-recommendations.animate-in {
            animation: fadeInUp 0.6s ease forwards;
        }

        .home-highlights {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 24px;
            max-width: 1400px;
            margin: 24px auto 24px;
            padding: 0 20px;
        }

        .home-highlights .home-recommendations,
        .home-highlights .home-discounts {
            margin: 0;
            padding: 0;
            max-width: none;
        }
        
        /* Суперцены на главной странице */
        .home-discounts {
            margin-top: 30px;
            margin-bottom: 24px;
            padding: 0 20px;
            max-width: 1400px;
            margin-left: auto;
            margin-right: auto;
            position: relative;
            opacity: 0;
            transform: translateY(20px);
        }
        
        .home-discounts.animate-in {
            animation: fadeInUp 0.6s ease forwards;
        }
        
        .home-discounts-title {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Helvetica Neue', sans-serif;
            font-size: 22px;
            font-weight: 600;
            background: linear-gradient(135deg, #111827 0%, #374151 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            text-align: center;
            margin-bottom: 32px;
            line-height: 1.2;
        }

        /* Страница /discounts — акции: на всю ширину контейнера, 2 в ряд, карточка горизонтальная как в макете */
        .discounts-page-promos {
            width: 100%;
            max-width: none;
            margin: 0 0 40px;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            -webkit-font-smoothing: antialiased;
            /* Запас под fixed desktop header; padding блокирует collapse с margin у заголовка */
            scroll-margin-top: calc(var(--header-desktop-offset, 96px) + 12px);
        }
        @media (min-width: 1025px) {
            .discounts-page-promos {
                padding-top: 40px;
            }
        }
        @media (max-width: 1024px) {
            .discounts-page-promos {
                padding-top: max(20px, calc(8px + env(safe-area-inset-top, 0px)));
                scroll-margin-top: 12px;
                padding-inline: max(14px, env(safe-area-inset-left, 0px)) max(14px, env(safe-area-inset-right, 0px));
                box-sizing: border-box;
            }
        }
        .discounts-page-promos__title {
            font-size: 1.25rem;
            font-weight: 600;
            color: #111827;
            margin: 0 0 24px;
            letter-spacing: -0.02em;
            text-align: center;
        }
        .discounts-page-promos__grid {
            display: grid;
            gap: 14px;
            grid-template-columns: 1fr;
            width: 100%;
            align-items: stretch;
        }
        @media (min-width: 880px) {
            .discounts-page-promos__grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 14px 18px;
            }
        }
        .discounts-page-promos__grid > .discounts-promo-banner {
            min-height: 0;
            height: 100%;
        }
        .discounts-promo-banner {
            display: flex;
            flex-direction: column;
            justify-content: center;
            min-height: 64px;
            height: 100%;
            border-radius: 12px;
            overflow: hidden;
            border: 1px solid #e8e8e8;
            background: #fff;
            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
        }
        .discounts-promo-banner__body {
            flex: 1;
            display: flex;
            flex-direction: column;
            justify-content: center;
            gap: 6px;
            padding: 12px 14px;
            min-width: 0;
        }
        .discounts-promo-banner__title {
            margin: 0;
            font-size: 0.875rem;
            font-weight: 600;
            color: #2d2d2d;
            line-height: 1.2;
            letter-spacing: -0.02em;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 2;
            overflow: hidden;
        }
        .discounts-promo-banner__subtitle {
            margin: 0;
            font-size: 0.8125rem;
            font-weight: 400;
            color: #525252;
            line-height: 1.38;
            display: -webkit-box;
            -webkit-box-orient: vertical;
            -webkit-line-clamp: 4;
            overflow: hidden;
        }
        .discounts-promo-banner__subtitle strong {
            font-weight: 600;
            color: #2d2d2d;
        }
        .discounts-promo-banner__badge {
            align-self: flex-start;
            margin-top: 3px;
            display: inline-block;
            padding: 3px 7px;
            font-size: 0.5625rem;
            font-weight: 700;
            letter-spacing: 0.05em;
            text-transform: uppercase;
            color: #fff;
            background: #2d2d2d;
            border-radius: 4px;
            line-height: 1.2;
        }
        @media (max-width: 879px) {
            .discounts-page-promos__title {
                margin-bottom: 16px;
                font-size: 1.125rem;
            }
            .discounts-promo-banner {
                min-height: 0;
                box-shadow: none;
            }
            .discounts-promo-banner__body {
                padding: 12px 14px 14px;
                gap: 8px;
                justify-content: flex-start;
            }
            .discounts-promo-banner__title {
                font-size: 0.9375rem;
                line-height: 1.25;
                -webkit-line-clamp: 3;
            }
            .discounts-promo-banner__subtitle {
                font-size: 0.875rem;
                line-height: 1.45;
                -webkit-line-clamp: 8;
            }
            .discounts-promo-banner__badge {
                font-size: 0.625rem;
                padding: 4px 8px;
                margin-top: 2px;
            }
        }
        .discounts-page-superprices-title {
            font-size: 1.25rem;
            font-weight: 600;
            color: #111827;
            text-align: center;
            margin: 8px 0 24px;
            letter-spacing: -0.02em;
        }
        @media (max-width: 1024px) {
            .discounts-page-superprices-title {
                padding-inline: max(14px, env(safe-area-inset-left, 0px)) max(14px, env(safe-area-inset-right, 0px));
                box-sizing: border-box;
            }
        }
        .discounts-page-empty {
            max-width: 560px;
            margin: 0 auto 40px;
            padding: 24px 20px;
            text-align: center;
            font-size: 0.9375rem;
            line-height: 1.5;
            color: #6b7280;
            background: #f9fafb;
            border: 1px solid #e5e7eb;
            border-radius: 12px;
            box-sizing: border-box;
        }
        
        .home-discounts-wrapper {
            position: relative;
        }
        
        .home-discounts-list {
            overflow: hidden;
            position: relative;
            width: 100%;
        }
        
        .home-discounts-slider {
            display: flex;
            transition: transform 0.3s ease;
        }
        
        .home-discounts-slider .page-loading {
            width: 100%;
            min-height: 300px;
        }
        
        .home-discounts-slide {
            min-width: 100%;
            width: 100%;
            display: grid;
            grid-template-columns: repeat(5, minmax(0, 1fr));
            gap: 0;
            flex-shrink: 0;
            box-sizing: border-box;
            padding: 0;
            align-items: stretch;
            grid-auto-rows: 1fr;
            position: relative;
            box-shadow:
                inset 1px 0 0 #ffffff,
                inset -1px 0 0 #ffffff,
                inset 0 1px 0 #ffffff,
                inset 0 -1px 0 #ffffff;
        }

        /* Узкая сетка: inset-тень перекрывается белым фоном ячеек — рамка слева/сверху на контейнере; справа/снизу — border у карточек */
        @media screen and (max-width: 1024px) {
            .home-discounts:not(.home-mobile-airy-carousel) .home-discounts-slide {
                box-shadow: none;
                border-left: 1px solid #eaeaea;
                border-top: 1px solid #eaeaea;
            }
        }

        @media (min-width: 1025px) {
            .home-discounts-slide.home-discounts-slide--desktop-showcase {
                grid-template-columns: repeat(6, minmax(0, 1fr));
                grid-template-rows: repeat(2, minmax(0, 1fr));
            }

            .home-discounts-slide.home-discounts-slide--desktop-showcase .home-discount-item:first-child,
            .home-discounts-slide.home-discounts-slide--desktop-showcase .home-discount-item:nth-child(n + 6) {
                border-bottom: none;
            }

            .home-discounts-slide.home-discounts-slide--desktop-showcase .home-discount-item:first-child {
                grid-column: 1 / span 2;
                grid-row: 1 / span 2;
                justify-content: center;
            }

            .home-discounts-slide.home-discounts-slide--desktop-showcase .home-discount-item:first-child .home-discount-image {
                height: 320px;
            }

            .home-discounts-slide.home-discounts-slide--desktop-showcase .home-discount-item:first-child .home-discount-price {
                margin-top: 8px;
                font-size: 22px;
            }

            .home-discounts-slide.home-discounts-slide--desktop-showcase .home-discount-item:first-child .home-discount-name {
                font-size: 17px;
                line-height: 1.28;
                text-align: center;
            }

            .home-discounts-slide.home-discounts-slide--desktop-showcase .home-discount-item:first-child .home-discount-info {
                align-items: center;
            }
        }
        
        .home-discounts-grid {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 0;
        }
        
        .home-discounts-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 48px;
            height: 48px;
            border-radius: 50%;
            background: var(--header-surface-bg, #ffffff);
            border: 1px solid rgba(17, 24, 39, 0.1);
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.3s ease;
            z-index: 10;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
        }
        
        .home-discounts-nav:hover {
            background: #f9fafb;
            border-color: rgba(17, 24, 39, 0.2);
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
        }
        
        .home-discounts-nav.prev {
            left: -60px;
        }
        
        .home-discounts-nav.next {
            right: -60px;
        }
        
        .home-discounts-nav svg {
            width: 20px;
            height: 20px;
            color: #111827;
        }
        
        .home-discounts-nav:disabled {
            opacity: 0.3;
            cursor: not-allowed;
        }
        
        .home-discounts-dots {
            display: flex;
            justify-content: center;
            gap: 8px;
            margin-top: 24px;
        }
        
        .home-discounts-dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: rgba(17, 24, 39, 0.2);
            cursor: pointer;
            transition: all 0.3s ease;
        }
        
        .home-discounts-dot.active {
            background: #111827;
            width: 24px;
            border-radius: 4px;
        }

        .home-discount-item {
            background: var(--header-surface-bg, #ffffff);
            border-radius: 0;
            padding: 16px;
            border: none;
            border-right: 1px solid #eaeaea;
            border-bottom: 1px solid #eaeaea;
            cursor: pointer;
            display: flex;
            flex-direction: column;
            gap: 12px;
            position: relative;
            height: 100%;
            overflow: hidden;
        }
        
        .home-discount-badge {
            position: absolute;
            top: 12px;
            right: 12px;
            background: linear-gradient(135deg, #ff3b30 0%, #ff2d55 100%);
            color: white;
            padding: 3px 8px;
            border-radius: 0;
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 11px;
            font-weight: 600;
            z-index: 2;
            box-shadow: none;
        }
        
        .home-discount-image {
            width: 100%;
            height: 160px;
            object-fit: contain;
            border-radius: 0;
            background: #ffffff;
            padding: 12px;
            box-sizing: border-box;
            transition: transform 0.28s ease;
        }

        .home-discount-item:hover .home-discount-image {
            transform: scale(1.04);
        }
        
        .home-discount-info {
            display: flex;
            flex-direction: column;
            gap: 8px;
            flex: 1;
            height: 100%;
            flex: 1 1 auto;
        }
        
        .home-discount-name {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 15px;
            font-weight: 400;
            color: #111827;
            line-height: 1.3;
            letter-spacing: -0.01em;
            min-height: 0;
        }
        
        .home-recommendation-name-multiline {
            line-height: 1.25;
        }
        
        .home-discount-specs {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 12px;
            color: #6b7280;
            line-height: 1.5;
            min-height: 18px;
        }
        
        .home-discount-price {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 18px;
            font-weight: 600;
            color: #111827;
            letter-spacing: -0.01em;
            margin-top: auto;
            text-align: center;
            width: 100%;
        }
        
        .home-discount-old-price {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 15px;
            color: #6b7280;
            text-decoration: line-through;
            margin-left: 8px;
            font-weight: 400;
        }
        
        .home-recommendations-title {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Helvetica Neue', sans-serif;
            font-size: 22px;
            font-weight: 600;
            background: linear-gradient(135deg, #111827 0%, #374151 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            background-clip: text;
            margin-bottom: 32px;
            line-height: 1.2;
            text-align: center;
            letter-spacing: -0.03em;
            text-align: center;
        }
        
        .home-recommendations-wrapper {
            position: relative;
        }
        
        .home-recommendations-list {
            display: flex;
            overflow: hidden;
            position: relative;
            width: 100%;
        }
        
        .home-recommendations-slider {
            display: flex;
            transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            will-change: transform;
            width: 100%;
        }
        
        .home-recommendations-slider .page-loading {
            width: 100%;
            min-height: 300px;
        }
        
        .home-recommendations-slide {
            min-width: 100%;
            width: 100%;
            display: grid;
            grid-template-columns: repeat(5, minmax(0, 1fr));
            gap: 0;
            flex-shrink: 0;
            box-sizing: border-box;
            padding: 0;
            border-top: 1px solid #eaeaea;
            border-left: 1px solid #eaeaea;
        }
        
        .home-recommendation-item {
            min-width: 0;
            width: 100%;
            box-sizing: border-box;
            background: var(--header-surface-bg, #ffffff);
            border-radius: 0;
            padding: 16px;
            border: none;
            border-right: 1px solid #eaeaea;
            border-bottom: 1px solid #eaeaea;
            cursor: pointer;
            display: flex;
            flex-direction: column;
            gap: 12px;
            overflow: hidden;
        }
        
        .home-recommendation-image {
            width: 100%;
            height: 160px;
            object-fit: contain;
            border-radius: 0;
            background: #ffffff;
            padding: 12px;
            box-sizing: border-box;
            transition: transform 0.28s ease;
        }

        .home-recommendation-item:hover .home-recommendation-image {
            transform: scale(1.04);
        }
        
        .home-recommendation-info {
            display: flex;
            flex-direction: column;
            gap: 8px;
            flex: 1;
            height: 100%;
        }
        
        .home-recommendation-name {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 15px;
            font-weight: 400;
            color: #111827;
            line-height: 1.3;
            letter-spacing: -0.01em;
            min-height: 0;
        }
        
        .home-recommendation-specs {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 13px;
            color: #6b7280;
            line-height: 1.5;
            min-height: 20px;
        }
        
        .home-recommendation-variants {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 12px;
            color: #3b82f6;
            line-height: 1.4;
            margin-top: 4px;
            font-weight: 500;
        }
        
        .home-recommendation-price {
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            font-size: 18px;
            font-weight: 600;
            color: #111827;
            letter-spacing: -0.01em;
            margin-top: auto;
        }
        
        .home-recommendation-old-price {
            font-size: 15px;
            color: #6b7280;
            text-decoration: line-through;
            margin-left: 8px;
            font-weight: 400;
        }
        
        .home-recommendations-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            width: 48px;
            height: 48px;
            border-radius: 50%;
            background: var(--header-surface-bg, #ffffff);
            border: 1px solid rgba(17, 24, 39, 0.1);
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.3s ease;
            z-index: 10;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
        }
        
        .home-recommendations-nav:hover {
            background: #f9fafb;
            border-color: rgba(17, 24, 39, 0.2);
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
        }
        
        .home-recommendations-nav.prev {
            left: -60px;
        }
        
        .home-recommendations-nav.next {
            right: -60px;
        }
        
        .home-recommendations-nav svg {
            width: 20px;
            height: 20px;
            stroke-width: 2;
            color: #111827;
        }
        
        .home-recommendations-nav:disabled {
            opacity: 0.3;
            cursor: not-allowed;
        }
        
        .home-recommendations-dots {
            display: flex;
            justify-content: center;
            gap: 8px;
            margin-top: 24px;
        }
        
        .home-recommendations-dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: rgba(17, 24, 39, 0.2);
            cursor: pointer;
            transition: all 0.3s ease;
        }
        
        .home-recommendations-dot.active {
            background: #111827;
            width: 24px;
            border-radius: 4px;
        }

        /* Мобила: карусель суперцен и бестселлеров — 2 в ряд, визуально как сетка каталога */
        @media screen and (max-width: 1024px) {
            .home-discounts.home-mobile-airy-carousel,
            .home-recommendations.home-mobile-airy-carousel {
                margin-top: 20px;
                margin-bottom: 0;
                padding: 0 10px;
            }

            .home-mobile-airy-carousel .home-discounts-title,
            .home-mobile-airy-carousel .home-recommendations-title {
                font-size: 20px;
                margin-bottom: 20px;
            }

            .home-mobile-airy-carousel .home-discounts-list,
            .home-mobile-airy-carousel .home-recommendations-list {
                overflow: hidden;
            }

            .home-mobile-airy-carousel .home-discounts-slider,
            .home-mobile-airy-carousel .home-recommendations-slider {
                display: flex;
                align-items: stretch;
            }

            .home-mobile-airy-carousel .home-discounts-slide,
            .home-mobile-airy-carousel .home-recommendations-slide {
                min-width: 100%;
                width: 100%;
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0;
                padding: 0;
                box-shadow: none;
                border-left: 1px solid #eaeaea;
                border-top: 1px solid #eaeaea;
                align-items: stretch;
            }

            .home-mobile-airy-carousel .home-discount-item,
            .home-mobile-airy-carousel .home-recommendation-item {
                border-radius: 0;
                box-shadow: none;
                border: none;
                border-right: 1px solid #eaeaea;
                border-bottom: 1px solid #eaeaea;
                padding: 12px;
                gap: 10px;
                background: #ffffff;
                height: 100%;
                min-height: 0;
            }

            .home-mobile-airy-carousel .home-discount-image,
            .home-mobile-airy-carousel .home-recommendation-image {
                height: 132px;
                padding: 2px;
                border-radius: 0;
                background: #ffffff;
                margin-bottom: 4px;
            }

            .home-mobile-airy-carousel .home-discount-name,
            .home-mobile-airy-carousel .home-recommendation-name {
                font-size: 15px;
                font-weight: 400;
                line-height: 1.3;
                min-height: 0;
            }

            .home-mobile-airy-carousel .home-discount-info,
            .home-mobile-airy-carousel .home-recommendation-info {
                gap: 4px;
            }

            .home-mobile-airy-carousel .home-discount-price,
            .home-mobile-airy-carousel .home-recommendation-price {
                font-size: 17px;
                text-align: center;
                margin-top: auto;
            }

            .home-mobile-airy-carousel .home-discount-old-price,
            .home-mobile-airy-carousel .home-recommendation-old-price {
                font-size: 12px;
            }

            .home-mobile-airy-carousel .home-recommendation-variants {
                display: none;
            }

            .home-mobile-airy-carousel .home-discount-badge {
                top: 12px;
                right: 12px;
                border-radius: 0;
            }

            .home-mobile-airy-carousel .home-discounts-nav,
            .home-mobile-airy-carousel .home-recommendations-nav {
                display: none !important;
            }

            .home-mobile-airy-carousel .home-discounts-dots,
            .home-mobile-airy-carousel .home-recommendations-dots {
                display: flex;
                justify-content: center;
                gap: 8px;
                margin-top: 24px;
            }
        }
        
        @media screen and (max-width: 1024px) {
            .home-highlights {
                grid-template-columns: 1fr;
                gap: 32px;
                margin: 20px auto 16px;
                padding: 0 20px;
            }

            .home-recommendations:not(.home-mobile-airy-carousel) {
                margin-top: 60px;
                padding: 0 60px;
            }
            
            .home-recommendations:not(.home-mobile-airy-carousel) .home-recommendations-title {
                font-size: 22px;
                margin-bottom: 24px;
            }
            
            .home-recommendations:not(.home-mobile-airy-carousel) .home-recommendations-slide {
                grid-template-columns: repeat(2, 1fr);
                gap: 0;
            }
            
            .home-recommendation-image {
                height: 140px;
            }
            
            .home-recommendations-nav {
                width: 40px;
                height: 40px;
            }
            
            .home-recommendations-nav.prev {
                left: -48px;
            }
            
            .home-recommendations-nav.next {
                right: -48px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) {
                margin-top: 60px;
                padding: 0 60px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discounts-title {
                font-size: 22px;
                margin-bottom: 24px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discounts-slide {
                grid-template-columns: repeat(2, 1fr);
                gap: 0;
            }
            
            .home-discount-image {
                height: 160px;
            }
            
            .home-discounts-nav {
                width: 40px;
                height: 40px;
            }
            
            .home-discounts-nav.prev {
                left: -48px;
            }
            
            .home-discounts-nav.next {
                right: -48px;
            }
        }
        
        @media screen and (max-width: 640px) {
            .home-recommendations:not(.home-mobile-airy-carousel) {
                margin-top: 50px;
                padding: 0 35px;
            }
            
            .home-recommendations-title {
                font-size: 20px;
                margin-bottom: 20px;
            }
            
            .home-recommendations:not(.home-mobile-airy-carousel) .home-recommendations-slide {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0;
            }
            
            .home-recommendations:not(.home-mobile-airy-carousel) .home-recommendation-item {
                padding: 10px;
            }
            
            .home-recommendations:not(.home-mobile-airy-carousel) .home-recommendation-image {
                height: 88px;
                padding: 6px;
            }
            
            .home-recommendation-name {
                font-size: 15px;
                font-weight: 400;
                min-height: 0;
                line-height: 1.3;
            }
            
            .home-recommendation-info {
                gap: 6px;
            }
            
            .home-recommendation-specs {
                font-size: 10px;
            }
            
            .home-recommendation-price {
                font-size: 14px;
            }
            
            .home-recommendation-item {
                gap: 6px;
            }
            
            .home-recommendations-nav {
                width: 36px;
                height: 36px;
            }
            
            .home-recommendations-nav.prev {
                left: -40px;
            }
            
            .home-recommendations-nav.next {
                right: -40px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) {
                margin-top: 60px;
                padding: 0 60px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discounts-title {
                font-size: 22px;
                margin-bottom: 24px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discounts-slide {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discount-image {
                height: 88px;
            }
            
            .home-discounts-nav {
                width: 40px;
                height: 40px;
            }
            
            .home-discounts-nav.prev {
                left: -48px;
            }
            
            .home-discounts-nav.next {
                right: -48px;
            }
        }
        
        @media screen and (max-width: 640px) {
            .home-discounts:not(.home-mobile-airy-carousel) {
                margin-top: 20px;
                padding: 0 10px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discounts-title {
                font-size: 20px;
                margin-bottom: 20px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discounts-slide {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discount-item {
                padding: 12px;
                gap: 10px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discount-image {
                height: 132px;
                padding: 2px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discount-name {
                font-size: 15px;
                font-weight: 400;
                min-height: 0;
                line-height: 1.25;
                margin-bottom: 0;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discount-info {
                gap: 4px;
            }
            
            .home-discounts:not(.home-mobile-airy-carousel) .home-discount-price {
                font-size: 17px;
                text-align: center;
                margin-top: auto;
            }

            .home-discounts:not(.home-mobile-airy-carousel) .home-discount-old-price {
                font-size: 12px;
            }
        }

        @media screen and (max-width: 420px) {
            .home-recommendations-slide {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0;
            }

            .home-discounts-slide {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0;
            }
        }
        
        .category-card {
            background: var(--header-surface-bg, #ffffff);
            border-radius: 12px;
            padding: 8px 12px 12px 12px;
            text-align: center;
            cursor: pointer;
            transition: transform 0.3s ease;
            box-shadow: none;
            opacity: 0;
            transform: translateY(20px);
            box-sizing: border-box;
        }
        
        .category-card.animate-in {
            animation: fadeInUp 0.5s ease forwards;
        }
        
        @keyframes fadeInUp {
            from {
                opacity: 0;
                transform: translateY(20px);
            }
            to {
                opacity: 1;
                transform: translateY(0);
            }
        }
        
        .category-card:hover {
            transform: translateY(-5px);
            box-shadow: none;
        }

        .categories .category-card {
            border-radius: 0;
            border-right: 1px solid #eaeaea;
            border-bottom: 1px solid #eaeaea;
        }
        
        /* Контейнер для карточки "Аксессуары" */
        .accessories-container {
            width: 100%;
        }
        
        @media (max-width: 1024px) {
            .accessories-container {
                display: flex;
                justify-content: center;
            }
        }
        
        /* Карточка "Аксессуары" во всю ширину на десктопе */
        .accessories-card-full-width {
            max-width: 100%;
        }
        
        @media (max-width: 1024px) {
            .accessories-card-full-width {
                max-width: 300px;
            }
        }
        
        /* Уменьшенная высота для карточки "Аксессуары" */
        .accessories-card-full-width .category-icon {
            width: 120px;
            height: 120px;
            margin: 0 auto 4px;
        }
        
        .accessories-card-full-width .category-name {
            font-size: 0.9rem;
            margin-bottom: 2px;
        }
        
        .accessories-card-full-width .category-count {
            font-size: 0.8rem;
        }
        
        .accessories-card-full-width .category-header {
            padding: 8px;
        }
        
        /* Стили для заголовка категории */
        .category-header {
            cursor: pointer;
            padding: 0;
            border-radius: 8px;
            transition: background-color 0.2s ease;
            background-color: white !important;
            margin-bottom: 0;
            display: flex;
            flex-direction: column;
            align-items: center;
        }
        
        /* Стили для контейнера брендов */
        .brands-container {
            display: flex;
            flex-direction: column;
            gap: 4px;
            margin-top: 0;
            padding: 0;
            background: transparent;
            border-radius: 12px;
            border: none;
            box-shadow: none;
            overflow: hidden;
            max-height: 0;
            opacity: 0;
            transition: max-height 0.4s cubic-bezier(0.4, 0, 0.2, 1), 
                        opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                        padding 0.4s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        .category-card.expanded .brands-container {
            max-height: 1000px;
            opacity: 1;
            padding: 8px 0;
            gap: 6px;
        }
        
        /* Стили для элементов списка брендов */
        .brand-item {
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 8px 12px;
            background: transparent;
            color: #333;
            border: none;
            border-radius: 6px;
            cursor: pointer;
            transition: all 0.2s ease;
            font-size: 0.875rem;
            font-weight: 400;
            box-shadow: none;
            position: relative;
            overflow: visible;
        }
        
        .brand-item img {
            width: 18px;
            height: 18px;
            object-fit: contain;
            flex-shrink: 0;
        }
        
        .brand-text {
            color: #4a4a4a;
            font-size: 0.875rem;
            font-weight: 400;
            transition: color 0.2s ease;
        }
        
        /* При expanded */
        .category-card.expanded .brand-item {
            padding: 10px 12px;
        }
        
        .category-card.expanded .brand-item img {
            width: 20px;
            height: 20px;
        }
        
        .category-card.expanded .brand-text {
            font-size: 0.9rem;
        }
        
        .brand-item:hover {
            background: transparent;
        }
        
        .brand-item:hover .brand-text {
            color: #111827;
            font-weight: 500;
        }
        
        .brand-item:active {
            background: transparent;
        }
        
        .brand-icon {
            font-size: 1rem;
            opacity: 0.8;
            transition: opacity 0.2s ease;
        }
        
        .brand-item:hover .brand-icon {
            opacity: 1;
        }
        
        .brand-item img {
            height: 20px;
            width: auto;
            max-width: 80px;
            object-fit: contain;
            display: block;
        }
        
        .brand-name {
            font-weight: 500;
            letter-spacing: 0;
        }
        
        .subcategory-name img {
            height: 40px;
            width: auto;
            object-fit: contain;
            display: block;
        }
        
        .brand-count {
            background: rgba(0,122,255,0.1);
            color: #2d2d2d;
            padding: 2px 6px;
            border-radius: 6px;
            font-size: 0.7rem;
            font-weight: 600;
            margin-left: 4px;
            transition: all 0.2s ease;
            border: none;
        }
        
        .brand-item:hover .brand-count {
            background: rgba(74, 74, 74, 0.1);
            color: #111827;
        }
        
        /* Стили для подкатегорий */
        .subcategories {
            margin-top: 15px;
            padding-top: 15px;
            border-top: 1px solid rgba(255,255,255,0.2);
        }
        
        .subcategory-item {
            display: flex;
            align-items: center;
            padding: 8px 12px;
            margin: 5px 0;
            background: rgba(255,255,255,0.1);
            border-radius: 8px;
            cursor: pointer;
            transition: all 0.3s ease;
            font-size: 0.9em;
        }
        
        .subcategory-item:hover {
            background: rgba(255,255,255,0.2);
            transform: translateX(5px);
        }
        
        .subcategory-icon {
            margin-right: 8px;
            font-size: 1.1em;
        }
        
        .subcategory-name {
            flex: 1;
            font-weight: 500;
        }
        
        /* Tablet: use two larger cards per row */
        @media (max-width: 1024px) {
            .categories {
                grid-template-columns: repeat(2, 1fr) !important; /* 2 карточки в ряд на планшетах */
                gap: 0 !important;
            }
            .category-card { padding: 10px 18px 18px 18px !important; }
            
            /* Уменьшаем логотип Яндекс в мобильной версии */
            .yandex-brand-icon {
                height: 13px !important;
                max-width: 50px !important;
            }
            .about-footer {
                padding: 30px 20px !important;
                margin-top: 30px !important;
            }
            .about-footer .grid {
                gap: 25px !important;
            }
        }

        /* Mobile: 1 column for iPhone (including iPhone 16 Pro Max) */
        @media (max-width: 480px) {
            body {
                padding-top: 0 !important;
                margin-top: 0 !important;
            }
            
            .container {
                padding-top: var(--header-mobile-offset, 68px) !important;
                margin-top: 0 !important;
                padding-left: 8px;
                padding-right: 8px;
                padding-bottom: 15px;
                box-sizing: border-box;
            }
            
            .header h1 {
                margin-left: 0;
                padding-left: 0;
            }
            
            .logo {
                width: 40px;
                height: 40px;
            }
            
            .search-bar {
                max-width: none;
                flex: 1;
            }
            
            .cart-icon-btn {
                top: 16px;
                left: 20px;
                bottom: auto;
                width: 52px;
                height: 52px;
            }
            
            .cart-icon-btn svg {
                width: 24px;
                height: 24px;
            }
            
            .categories {
                grid-template-columns: repeat(2, 1fr) !important; /* 2 cards per row on mobile */
                gap: 0 !important;
                padding: 0 !important;
                margin: 0 !important;
            }
            .category-card {
                padding: 6px 4px 8px 4px !important;
                border-radius: 8px !important;
                box-sizing: border-box !important;
                min-width: 0 !important;
            }
            .categories .category-card {
                border-radius: 0 !important;
            }
            .categories .category-name {
                font-size: 0.8rem !important;
                margin-bottom: 4px !important;
            }
            .category-count {
                font-size: 0.7rem !important;
            }
            .category-icon {
                font-size: 1.2rem !important;
                margin-bottom: 4px !important;
            }
            .brands-container {
                padding: 6px !important;
                gap: 4px !important;
                margin-top: 6px !important;
            }
            .brand-item {
                padding: 6px 8px !important;
                font-size: 0.75rem !important;
            }
            .brand-icon {
                font-size: 0.8rem !important;
            }
            .brand-item img {
                height: 20px !important;
                width: 20px !important;
            }
            .brand-text {
                font-size: 0.75rem !important;
            }
            .brand-name {
                font-size: 0.75rem !important;
            }
            .brand-count {
                font-size: 0.65rem !important;
            }
            .subcategory-item { font-size: 0.9rem !important; }
            .about-footer {
                padding: 25px 15px !important;
                margin-top: 25px !important;
                border-radius: 0 !important;
            }
            .about-footer .grid {
                grid-template-columns: 1fr !important;
                gap: 20px !important;
            }
            .about-footer h4 {
                font-size: 15px !important;
                margin-bottom: 12px !important;
            }
            .about-footer .about-list,
            .about-footer .about-kv {
                font-size: 13px !important;
            }
            .about-footer .phone-link {
                font-size: 18px !important;
            }
            
            /* Уменьшаем category-welcome на мобильных */
            .category-welcome {
                margin: 12px 0 16px 0 !important;
            }
            
            .category-welcome-title {
                font-size: 1.4rem !important;
            }
            
            .category-welcome-subtitle {
                font-size: 0.9rem !important;
                margin: 6px 0 0 0 !important;
            }
            
            .category-welcome--hero-split .category-welcome-title {
                font-size: clamp(2.125rem, 7vw, 2.85rem) !important;
                letter-spacing: -0.04em !important;
                line-height: 1.05 !important;
            }
            .category-welcome--hero-split .category-welcome-subtitle {
                font-size: clamp(1rem, 3.2vw, 1.1875rem) !important;
                line-height: 1.42 !important;
                margin-top: 14px !important;
            }
            
            /* Уменьшаем filter-group на мобильных. Сами фильтры открываются в drawer */
            .hierarchy-filters {
                margin: 0 0 12px 0 !important;
                padding: 0 !important;
                background: transparent !important;
                border-radius: 0 !important;
                border: none !important;
                box-shadow: none !important;
                overflow: visible !important;
            }
            .filters-mobile-header {
                display: none !important;
            }
            .filters-mobile-body {
                display: block !important;
                max-height: none !important;
                overflow: visible !important;
            }
            .filters-mobile-body .filters-mobile-inner {
                max-height: none !important;
                overflow: visible !important;
            }
            .filters-mobile-body .view-controls-container {
                margin: 0;
            }
            /* Inline-фильтры на мобильном остаются быстрыми чипами-каруселью */
            .filters-mobile-body .hierarchy-filter-section {
                display: block !important;
                padding: 0;
                margin: 0 0 10px 0;
            }
            .filters-mobile-body .hierarchy-filter-section > div:first-child {
                display: none !important;
            }
            /* Иконка сортировки в одну вертикаль с иконкой фильтра */
            .filters-mobile-body .view-controls-container {
                margin: 0;
            }
            .filters-mobile-body .view-controls-row {
                padding: 0;
            }
            .hierarchy-filters .filters-mobile-body .view-controls-container--catalog {
                padding: 0;
            }
            /* Меню сортировки поверх всего: при переносе в body — fixed и поверх карточек */
            .filters-mobile-body .dropdown-select__menu,
            .dropdown-select__menu.dropdown-select__menu--viewport {
                position: fixed !important;
                left: 0;
                top: 0;
                right: auto;
                min-width: 200px;
                z-index: 10002 !important;
            }
            /* Выскальзывание вниз от кнопки: старт выше, плавно в 0 */
            .dropdown-select__menu.dropdown-select__menu--viewport {
                transform: translateY(-12px);
                opacity: 0;
                transition: transform 0.25s ease-out, opacity 0.2s ease;
            }
            .dropdown-select__menu.dropdown-select__menu--viewport.show {
                transform: translateY(0);
                opacity: 1;
            }
            .filters-mobile-body .dropdown-overlay {
                z-index: 10001 !important;
            }
            
            .filter-group {
                margin-bottom: 6px !important;
            }
            
            .filter-group h4 {
                font-size: 9px !important;
                margin: 0 0 3px 0 !important;
                letter-spacing: 0.3px !important;
            }
            
            .filter-buttons {
                flex-wrap: nowrap !important;
                gap: 4px !important;
                overflow-x: auto !important;
                overflow-y: hidden !important;
                -webkit-overflow-scrolling: touch;
                scrollbar-width: none;
            }

            .filter-buttons::-webkit-scrollbar {
                display: none;
            }
            
            .filter-btn {
                border-width: 1.5px !important;
                flex: 0 0 auto;
            }
            
            /* Адаптация lp-compare и cf для мобильных */
            .lp-compare.cf {
                margin-top: 30px !important;
                padding: 20px 12px !important;
                border-radius: 12px !important;
            }
            
            .lp-compare.cf::before,
            .lp-compare.cf::after {
                content: "" !important;
                display: table !important;
            }
            
            .lp-compare.cf::after {
                clear: both !important;
            }
            
            .lp-compare__subtitle {
                font-size: 0.75rem !important;
                margin-bottom: 8px !important;
            }
            
            .lp-compare__title {
                font-size: 1.25rem !important;
                margin-bottom: 20px !important;
                line-height: 1.3 !important;
            }
            
            .lp-compare-rowgroup {
                padding: 12px 0 !important;
                flex-wrap: wrap !important;
            }
            
            .lp-compare-rowgroup--head {
                padding: 12px !important;
                margin: 0 -12px 0 -12px !important;
                border-radius: 8px 8px 0 0 !important;
            }
            
            .lp-compare-column {
                padding: 0 6px !important;
                min-width: 0 !important;
            }
            
            .lp-compare-column--table {
                flex: 0 0 100px !important;
                font-size: 0.75rem !important;
            }
            
            .lp-compare-column__head {
                font-size: 0.85rem !important;
                line-height: 1.2 !important;
            }
            
            .lp-compare-column__img {
                max-width: 90px !important;
            }
            
            .lp-compare-column__devices {
                gap: 8px !important;
            }
            
            .lp-compare-column__color {
                gap: 4px !important;
            }
            
            .lp-compare-column__color-item {
                width: 16px !important;
                height: 16px !important;
            }
            
            .lp-compare-column__features {
                gap: 6px !important;
                min-height: 50px !important;
            }
            
            .lp-compare-column__icon {
                width: 50px !important;
                height: 50px !important;
            }
            
            .lp-compare-column__caption {
                font-size: 0.75rem !important;
                line-height: 1.3 !important;
            }
            
            .lp-compare-column__value {
                font-size: 1rem !important;
            }
        }
        
        /* Extra small screens - 2 columns */
        @media (max-width: 360px) {
            .categories {
                grid-template-columns: repeat(2, 1fr) !important;
                gap: 0 !important;
                padding: 0 !important;
                margin: 0 !important;
            }
            .category-card {
                padding: 6px 4px 8px 4px !important;
                box-sizing: border-box !important;
                min-width: 0 !important;
            }
            .categories .category-name {
                font-size: 0.75rem !important;
                margin-bottom: 2px !important;
            }
            .category-count {
                font-size: 0.65rem !important;
            }
            .category-icon {
                font-size: 1rem !important;
                margin-bottom: 2px !important;
            }
            .brands-container {
                padding: 4px !important;
                gap: 2px !important;
                margin-top: 4px !important;
            }
            .brand-item {
                padding: 5px 6px !important;
                font-size: 0.7rem !important;
            }
            .brand-icon {
                font-size: 0.7rem !important;
            }
            .brand-item img {
                height: 18px !important;
                width: 18px !important;
            }
            .brand-text {
                font-size: 0.7rem !important;
            }
            .brand-name {
                font-size: 0.7rem !important;
            }
            .brand-count {
                font-size: 0.6rem !important;
            }
        }

        .subcategory-count {
            font-size: 0.8em;
            opacity: 0.8;
            background: rgba(255,255,255,0.2);
            padding: 2px 6px;
            border-radius: 10px;
        }
        
        /* Стили для хлебных крошек */
        .breadcrumbs {
            margin: 8px 0 12px 0;
            padding: 6px 0;
            background: transparent;
        }
        
        .breadcrumb-trail {
            display: flex;
            align-items: center;
            flex-wrap: nowrap;
            gap: 0;
            min-width: 0;
            width: 100%;
            overflow-x: auto;
            overflow-y: hidden;
            -webkit-overflow-scrolling: touch;
            scrollbar-width: none;
            font-size: 13px;
            color: #6c757d;
            opacity: 0.8;
        }
        .breadcrumb-trail::-webkit-scrollbar {
            display: none;
        }

        .breadcrumb-link,
        .breadcrumb-current {
            white-space: nowrap;
            flex-shrink: 0;
        }
        
        .breadcrumb-link {
            color: #4a4a4a;
            text-decoration: none;
            padding: 2px 0;
            border-radius: 2px;
            transition: all 0.2s ease;
            font-size: 13px;
        }
        
        .breadcrumb-link:hover {
            background: #4a4a4a;
            color: white;
            opacity: 1;
        }
        
        .breadcrumb-current {
            color: #495057;
            font-weight: 400;
            padding: 2px 0;
            background: transparent;
            border-radius: 2px;
            font-size: 13px;
        }
        
        .breadcrumb-separator {
            color: #adb5bd;
            margin: 0 4px;
            font-size: 12px;
            opacity: 0.6;
            flex-shrink: 0;
        }

        .search-results-header {
            margin: 0 0 20px;
            padding: 0;
            background: transparent;
        }

        .search-results-header__summary {
            margin: 12px 0 0;
            font-size: 22px;
            font-weight: 700;
            line-height: 1.25;
            color: #000;
        }

        @media (max-width: 1024px) {
            .search-results-header {
                margin-bottom: 16px;
            }

            .search-results-header__summary {
                font-size: 20px;
            }
        }
        
        @media (max-width: 1024px) {
            .breadcrumbs {
                max-width: 100%;
                min-width: 0;
                margin-top: 0;
                padding-top: 8px;
            }
            .breadcrumbs--catalog {
                margin-top: 0;
                padding-top: 10px;
                margin-bottom: 12px;
            }
            .breadcrumb-trail {
                max-width: 100%;
                overflow-x: auto;
                overflow-y: hidden;
                -webkit-overflow-scrolling: touch;
                overscroll-behavior-x: contain;
                touch-action: pan-x;
            }
        }
        
        @media (min-width: 1025px) {
            .breadcrumbs {
                margin-top: 35px;
            }
        }

        @media (min-width: 1025px) {
            .breadcrumbs:not(.breadcrumbs--catalog) {
                margin-top: 16px;
                margin-bottom: 4px;
                padding-bottom: 2px;
            }

            .breadcrumbs:not(.breadcrumbs--catalog) + .product-detail-page {
                padding-top: 12px;
            }
        }
        
        .category-header {
            text-align: center;
            margin-bottom: 0;
            padding: 1rem;
            background: white !important;
            border-radius: 15px;
            color: #333;
        }
        
        .category-header h2 {
            margin: 0;
            font-size: 1.8rem;
            font-weight: 600;
        }
        
        .category-header p {
            margin: 8px 0 0 0;
            opacity: 0.9;
            font-size: 1rem;
        }
        
        .category-welcome {
            text-align: center;
            margin: 16px 0 20px 0;
            padding: 0;
        }
        
        .category-welcome-title {
            margin: 0;
            font-size: 1.8rem;
            font-weight: 600;
            color: #333;
        }
        
        .category-welcome-subtitle {
            margin: 8px 0 0 0;
            font-size: 1rem;
            color: #666;
            opacity: 0.9;
        }

        /* Шапка списка каталога (крошки слева, заголовок по центру, линия, чипы, тулбар) */
        .breadcrumbs--catalog {
            margin: 24px 0 12px 0;
            padding: 0;
            background: transparent;
        }
        .breadcrumbs--catalog .breadcrumb-trail {
            font-size: 12px;
            line-height: 1.35;
            color: #8e8e93;
            opacity: 1;
        }
        .breadcrumbs--catalog .breadcrumb-link {
            color: #8e8e93;
            padding: 0;
            border-radius: 0;
        }
        .breadcrumbs--catalog .breadcrumb-link:hover {
            background: transparent;
            color: #1d1d1f;
        }
        .breadcrumbs--catalog .breadcrumb-current {
            color: #aeaeb2;
            font-weight: 400;
        }
        .breadcrumbs--catalog .breadcrumb-separator {
            color: #d1d1d6;
            margin: 0 4px;
            opacity: 1;
            flex-shrink: 0;
        }
        @media (min-width: 1025px) {
            .breadcrumbs--catalog {
                margin-top: 0;
                margin-bottom: 22px;
                padding-top: 16px;
            }
            .breadcrumbs--catalog:has(+ .category-welcome--hero-split),
            .breadcrumbs--catalog:has(+ .category-welcome--has-desktop-hero) {
                padding-top: 32px;
                margin-bottom: 32px;
            }
            .category-welcome--catalog {
                scroll-margin-top: calc(var(--header-desktop-offset, 120px) + 44px);
            }
        }
        .category-welcome--catalog {
            margin: 0;
            padding: 0 0 26px 0;
            text-align: center;
        }
        .category-welcome--catalog .category-welcome-title {
            font-size: clamp(1.75rem, 4.2vw, 2.35rem);
            font-weight: 700;
            letter-spacing: -0.035em;
            color: #000000;
            line-height: 1.1;
        }
        .category-welcome--catalog .category-welcome-subtitle {
            margin: 10px auto 0;
            max-width: 36rem;
            font-size: 1rem;
            font-weight: 400;
            line-height: 1.5;
            color: #8e8e93;
            opacity: 1;
        }
        .category-welcome--catalog .iphone-compare-btn,
        .category-welcome .iphone-compare-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            margin-top: 14px;
            padding: 7px 16px;
            font-size: 0.8125rem;
            font-weight: 500;
            line-height: 1.2;
            color: #0071e3;
            text-decoration: none;
            border: 1px solid #0071e3;
            border-radius: 8px;
            background: transparent;
            transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease;
        }
        .category-welcome--catalog .iphone-compare-btn:hover,
        .category-welcome .iphone-compare-btn:hover {
            background: transparent;
            color: #0058b0;
            border-color: #0058b0;
        }
        .category-welcome--catalog .iphone-compare-btn svg,
        .category-welcome .iphone-compare-btn svg {
            width: 16px;
            height: 16px;
            flex-shrink: 0;
        }
        @media (max-width: 1024px) {
            .category-welcome--catalog .iphone-compare-btn {
                font-size: 0.8125rem !important;
                padding: 7px 14px !important;
                gap: 6px !important;
                border-radius: 8px !important;
                margin-top: 12px !important;
            }
            .category-welcome--catalog .iphone-compare-btn svg {
                width: 16px !important;
                height: 16px !important;
            }
        }

        /* Десктопные promo-баннеры category-welcome (1.5x); на мобильных — карточка mob-1x + текст поверх (как на десктопе), верх фото обрезан ~25% */
        .category-welcome__hero-mobile-stack {
            position: relative;
            margin: 0 0 10px 0;
            border-radius: 14px;
            overflow: hidden;
            background: #f5f5f7;
        }
        .category-welcome__hero-mobile-stack--no-below-cta {
            margin-bottom: 14px;
        }
        .category-welcome__hero-mobile {
            width: 100%;
            margin: 0;
            border-radius: 0;
            overflow: hidden;
            background: transparent;
            aspect-ratio: 420 / calc(510 * 0.75);
        }
        .category-welcome__hero-mobile img {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: bottom center;
        }
        .category-welcome__hero-mobile-overlay {
            position: absolute;
            left: 0;
            right: 0;
            top: 0;
            z-index: 2;
            padding: clamp(14px, 4.2vw, 22px) clamp(14px, 4vw, 20px) 12px;
            pointer-events: none;
            text-align: center;
        }
        .category-welcome__hero-mobile-overlay .category-welcome__hero-overlay-copy {
            transform: none;
            position: relative;
            max-width: 100%;
            align-items: center;
            gap: 6px;
        }
        .category-welcome__hero-mobile-overlay .category-welcome__hero-overlay-eyebrow {
            white-space: normal;
            font-size: clamp(1.35rem, 5.2vw, 1.85rem);
            font-weight: 600;
            line-height: 1.12;
            color: #111827;
            text-align: center;
            text-shadow: 0 1px 0 rgba(255, 255, 255, 0.85), 0 0 18px rgba(245, 245, 247, 0.95);
        }
        .category-welcome__hero-mobile-overlay .category-welcome__hero-overlay-title {
            white-space: normal;
            font-size: clamp(0.94rem, 3.4vw, 1.12rem);
            font-weight: 700;
            line-height: 1.2;
            color: #111827;
            max-width: 100%;
            align-self: center;
            text-align: center;
            text-shadow: 0 1px 0 rgba(255, 255, 255, 0.82), 0 0 14px rgba(245, 245, 247, 0.9);
        }
        /* «Как выбрать» под мобильным баннером — компактнее, чем в каталоге без hero */
        .category-welcome__hero-mobile-cta-below {
            display: flex;
            justify-content: center;
            width: 100%;
            margin: 0 0 14px 0;
        }
        .category-welcome__hero-mobile-cta-below .category-welcome-cta-wrap--hero-overlay {
            position: static !important;
            top: auto !important;
            left: auto !important;
            margin-top: 0 !important;
            justify-content: center !important;
            width: 100% !important;
            max-width: none !important;
        }
        .category-welcome__hero-mobile-cta-below .iphone-compare-btn {
            margin-top: 0 !important;
            font-size: 0.72rem !important;
            padding: 5px 11px !important;
            gap: 4px !important;
            border-radius: 7px !important;
        }
        .category-welcome__hero-mobile-cta-below .iphone-compare-btn svg {
            width: 13px !important;
            height: 13px !important;
        }
        .category-welcome--has-desktop-hero .category-welcome--catalog-mobile-fallback:has(.category-welcome__hero-mobile-stack) {
            text-align: center;
        }
        .category-welcome--has-desktop-hero {
            padding-bottom: 0;
        }
        .category-welcome--has-desktop-hero .category-welcome--hero-desktop-only {
            display: block;
        }
        .category-welcome--has-desktop-hero .category-welcome--catalog-mobile-fallback {
            display: none;
            padding: 0;
            text-align: center;
        }
        @media (max-width: 1024px) {
            .category-welcome--has-desktop-hero .category-welcome--hero-desktop-only {
                display: none !important;
            }
            .category-welcome--has-desktop-hero .category-welcome--catalog-mobile-fallback {
                display: block;
            }
        }

        /* Apple MacBook: две колонки (крупная типографика как на промо-референсе) */
        .category-welcome--hero-split {
            width: 100vw;
            max-width: none;
            margin-left: calc(50% - 50vw);
            margin-right: calc(50% - 50vw);
            padding: 0 !important;
            margin-top: 0;
            background: #fff;
            text-align: center;
        }
        .category-welcome--hero-split .category-welcome__hero-inner {
            display: block;
            max-width: none;
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }
        .category-welcome__hero-copy {
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            min-width: 0;
            width: 100%;
            margin-inline: auto;
            box-sizing: border-box;
        }
        .category-welcome--hero-split .category-welcome-title {
            text-align: center;
            margin-left: auto;
            margin-right: auto;
            max-width: 18ch;
            font-size: clamp(2.65rem, 6.8vw, 4rem);
            font-weight: 700;
            letter-spacing: -0.045em;
            line-height: 1.02;
            color: #000000;
        }
        .category-welcome--hero-split .category-welcome-subtitle {
            margin: 18px auto 0;
            max-width: 28rem;
            text-align: center;
            font-size: clamp(1.125rem, 2.4vw, 1.375rem);
            font-weight: 400;
            line-height: 1.45;
            color: #424245;
        }
        .category-welcome--hero-split .category-welcome-cta-wrap {
            margin-top: 14px;
            display: flex;
            justify-content: center;
        }
        /* В оверлее баннера кнопка позиционируется под текстом и не двигает блок заголовков */
        .category-welcome__hero-overlay .category-welcome-cta-wrap--hero-overlay {
            pointer-events: auto;
            position: absolute;
            left: 0;
            top: 100%;
            margin-top: 4px;
            justify-content: flex-start;
            width: auto;
            max-width: min(42rem, 58vw);
        }
        /* Те же CTA без широкого баннера / в мобильном fallback — по центру (исключаем обёртку .has-desktop-hero — иначе ловится десктопный hero внутри) */
        .category-welcome--catalog-mobile-fallback .category-welcome-cta-wrap--hero-overlay,
        .category-welcome--catalog:not(.category-welcome--hero-split):not(.category-welcome--has-desktop-hero) .category-welcome-cta-wrap--hero-overlay {
            justify-content: center;
            width: 100%;
        }
        .category-welcome__hero-visual {
            min-width: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            padding-top: 0;
            align-self: stretch;
            width: 1450px;
            height: 250px;
            max-width: 100%;
            margin-left: auto;
            margin-right: auto;
            overflow: visible;
            position: relative;
        }
        .category-welcome__hero-visual img {
            width: 100%;
            height: 100%;
            max-width: none;
            max-height: none;
            object-fit: cover;
            object-position: center center;
        }
        .category-welcome__hero-overlay {
            position: absolute;
            left: clamp(18px, 4vw, 56px);
            top: 50%;
            z-index: 2;
            pointer-events: none;
            text-align: left;
        }
        /* Центрируем только текст; кнопка сравнения — вне расчёта центра (остаётся на том же месте, что категории без кнопки) */
        .category-welcome__hero-overlay-copy {
            position: relative;
            transform: translateY(-50%);
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            gap: 8px;
            max-width: min(42rem, 58vw);
        }
        .category-welcome__hero-overlay-eyebrow {
            margin: 0;
            font-size: clamp(1.8rem, 3.2vw, 2.8rem);
            font-weight: 600;
            line-height: 1.1;
            color: #111827;
            letter-spacing: -0.015em;
            white-space: nowrap;
        }

        .category-welcome__hero-overlay-title {
            margin: 0;
            font-size: clamp(1.05rem, 1.9vw, 1.6rem);
            font-weight: 700;
            line-height: 1.15;
            color: #111827;
            letter-spacing: -0.02em;
            max-width: min(42rem, 58vw);
            white-space: normal;
            text-align: left;
            align-self: stretch;
        }
        .category-welcome__hero-overlay-btn {
            pointer-events: auto;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-height: 40px;
            padding: 0 28px;
            border-radius: 10px;
            background: #1f2937;
            color: #fff;
            font-size: 0.95rem;
            font-weight: 500;
            text-decoration: none;
            border: none;
        }
        .category-welcome__hero-overlay-btn:hover {
            background: #111827;
        }
        @media (max-width: 900px) {
            .breadcrumbs--catalog:has(+ .category-welcome--hero-split),
            .breadcrumbs--catalog:has(+ .category-welcome--has-desktop-hero) {
                margin-bottom: 28px !important;
            }
            .category-welcome--hero-split {
                margin-top: 0;
                padding-top: 0 !important;
            }
            .category-welcome--hero-split .category-welcome__hero-inner {
                grid-template-columns: 1fr;
                gap: 18px;
                align-items: stretch;
            }
            .category-welcome__hero-copy {
                justify-content: flex-start;
                padding-bottom: 4px;
            }
            .category-welcome__hero-visual {
                order: -1;
                justify-content: center;
                padding-top: 0;
            }
            .category-welcome__hero-visual img {
                max-height: none;
                object-position: center center;
            }
            .category-welcome--hero-split .category-welcome-title,
            .category-welcome--hero-split .category-welcome-subtitle {
                text-align: center;
                margin-left: auto;
                margin-right: auto;
            }
            .category-welcome--hero-split .category-welcome-title {
                max-width: none;
            }
        }

        /* Каталог: панель фильтров (чипы + строка «Фильтры / сортировка») */
        .catalog-filters-icon-slot {
            position: relative;
            display: inline-flex;
            align-items: center;
            justify-content: center;
        }
        .catalog-filters-n-badge {
            position: absolute;
            top: -6px;
            right: -8px;
            min-width: 18px;
            height: 18px;
            padding: 0 5px;
            font-size: 11px;
            font-weight: 700;
            line-height: 18px;
            text-align: center;
            color: #fff;
            background: #ff4d67;
            border-radius: 9px;
            box-sizing: border-box;
        }
        /* Счётчик и aria-label — только когда панель/раскладка фильтров закрыты */
        body.catalog-filters-drawer-open .catalog-filters-n-badge {
            display: none !important;
        }
        .hierarchy-filters.filters-expanded .filters-mobile-header .catalog-filters-n-badge {
            display: none !important;
        }
        .catalog-filters-toolbar {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: space-between;
            gap: 12px 20px;
            width: 100%;
            box-sizing: border-box;
            border: none;
            box-shadow: none;
        }
        @media (min-width: 1025px) {
            .hierarchy-filters .catalog-filters-toolbar {
                flex-wrap: nowrap;
            }
        }
        .catalog-filters-toolbar__left--desktop {
            position: relative;
        }
        .catalog-filters-desktop-trigger {
            display: none;
        }
        @media (min-width: 1025px) {
            .catalog-filters-desktop-trigger {
                display: inline-flex;
                align-items: center;
                gap: 8px;
                position: relative;
                padding: 0;
                border: none;
                background: none;
                cursor: pointer;
                font: inherit;
                color: #111;
                font-weight: 600;
            }
            .catalog-filters-desktop-trigger:hover {
                color: #000;
            }
        }
        .catalog-filters-lines-icon {
            display: block;
        }
        .catalog-filters-toolbar__right {
            display: flex;
            align-items: center;
            justify-content: flex-end;
            gap: 6px 14px;
            flex: 1;
            min-width: 0;
        }
        @media (min-width: 1025px) {
            .catalog-filters-toolbar__right {
                flex: 0 0 auto;
                margin-left: auto;
            }
        }
        .sort-controls--catalog {
            margin: 0;
        }
        .sort-controls--catalog .search-page__sort-select-icon {
            display: none;
        }
        .sort-controls--catalog .dropdown-select__toggle {
            font-size: 0.9375rem;
            font-weight: 600;
            color: #111;
            min-width: auto;
            padding: 6px 2px 6px 0;
        }
        .sort-controls--catalog .dropdown-select__toggle:hover,
        .sort-controls--catalog .dropdown-select__toggle.active {
            color: #111;
            background: transparent;
        }
        .sort-controls--catalog .dropdown-select__chevron {
            stroke: #111;
        }
        .hierarchy-filters .view-mode-toggle {
            flex-shrink: 0;
        }
        .hierarchy-filters .view-mode-icon {
            color: #c4c4c4;
        }
        .hierarchy-filters .view-mode-icon:hover {
            color: #8e8e8e;
        }
        .hierarchy-filters .view-mode-icon.active {
            color: #3b82f6;
        }
        .catalog-filters-desktop-trigger .catalog-filters-lines-icon,
        .filters-mobile-header .filters-mobile-header-icon {
            color: #111;
            stroke: #111;
        }
        @media (min-width: 1025px) {
            .catalog-filters-trigger-label--open {
                display: none;
            }
            body.catalog-filters-drawer-open .catalog-filters-desktop-trigger .catalog-filters-trigger-label--closed {
                display: none;
            }
            body.catalog-filters-drawer-open .catalog-filters-desktop-trigger .catalog-filters-trigger-label--open {
                display: inline;
            }
            body.catalog-filters-drawer-open .catalog-filters-desktop-trigger .catalog-filters-lines-icon {
                display: none;
            }
        }
        @media (max-width: 1024px) {
            .catalog-filters-toolbar {
                justify-content: space-between;
                flex-wrap: nowrap;
                gap: 12px;
            }
            .catalog-filters-toolbar__left--desktop {
                display: flex;
                flex: 0 0 auto;
            }
            .catalog-filters-desktop-trigger {
                display: inline-flex;
                align-items: center;
                gap: 8px;
                position: relative;
                padding: 6px 0;
                border: none;
                background: none;
                cursor: pointer;
                font: inherit;
                color: #111;
                font-size: 0.95rem;
                font-weight: 600;
            }
            .catalog-filters-trigger-label--open {
                display: none;
            }
            .catalog-filters-toolbar__right {
                flex: 1 1 auto;
                min-width: 0;
            }
        }

        /* Панель фильтров в одной строке с .products-grid (колонка слева + сетка) */
        .catalog-filters-drawer-storage {
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border: 0;
            pointer-events: none;
        }
        .catalog-grid-layout {
            display: flex;
            flex-direction: row;
            align-items: flex-start;
            width: 100%;
            box-sizing: border-box;
        }
        .catalog-grid-layout .products-grid {
            flex: 1 1 0;
            min-width: 0;
            box-sizing: border-box;
            transition: background-color 0.35s ease;
        }
        @media (min-width: 1025px) {
            body.catalog-filters-drawer-open .catalog-grid-layout .products-grid {
                background: #ffffff;
            }
        }
        .catalog-filters-drawer-overlay {
            display: none;
            pointer-events: none;
        }
        .catalog-filters-drawer {
            position: sticky;
            top: var(--header-desktop-offset, 96px);
            align-self: flex-start;
            flex: 0 0 0;
            flex-basis: 0;
            min-width: 0;
            max-width: 0;
            width: 0;
            max-height: calc(100dvh - var(--header-desktop-offset, 96px) - 16px);
            z-index: 1;
            background: transparent;
            display: flex;
            flex-direction: column;
            overflow: hidden;
            opacity: 0;
            pointer-events: none;
            box-sizing: border-box;
            border-right: 1px solid transparent;
            box-shadow: none;
            font-family: inherit;
            transition:
                flex-basis 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                max-width 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                min-width 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                width 0.4s cubic-bezier(0.4, 0, 0.2, 1),
                opacity 0.3s ease,
                border-color 0.25s ease,
                box-shadow 0.3s ease;
        }
        body.catalog-filters-drawer-open .catalog-filters-drawer {
            flex: 0 0 clamp(250px, 26vw, 320px);
            flex-basis: clamp(250px, 26vw, 320px);
            min-width: clamp(250px, 26vw, 320px);
            max-width: clamp(250px, 26vw, 320px);
            width: clamp(250px, 26vw, 320px);
            overflow: hidden;
            opacity: 1;
            pointer-events: auto;
            border-right-color: #e5e5e5;
            box-shadow: none;
        }
        @media (max-width: 1024px) {
            .catalog-grid-layout {
                display: block;
            }
            .catalog-filters-drawer-overlay {
                position: fixed;
                inset: 0;
                display: block;
                background: rgba(0, 0, 0, 0.14);
                opacity: 0;
                pointer-events: none;
                z-index: 20000;
                transition: opacity 0.28s ease;
            }
            body.catalog-filters-drawer-open .catalog-filters-drawer-overlay {
                opacity: 1;
                pointer-events: auto;
            }
            .catalog-filters-drawer {
                position: fixed;
                inset: 0 auto 0 0;
                top: 0;
                width: 100vw;
                min-width: 100vw;
                max-width: 100vw;
                height: 100dvh;
                max-height: 100dvh;
                z-index: 20001;
                background: #fff;
                border-right: none;
                border-radius: 0;
                box-shadow: none;
                opacity: 1;
                pointer-events: none;
                transform: translateX(-100%);
                transition: transform 0.34s cubic-bezier(0.4, 0, 0.2, 1);
                padding-top: env(safe-area-inset-top);
            }
            body.catalog-filters-drawer-open .catalog-filters-drawer {
                flex: none;
                flex-basis: auto;
                width: 100vw;
                min-width: 100vw;
                max-width: 100vw;
                opacity: 1;
                pointer-events: auto;
                transform: translateX(0);
                border-right-color: transparent;
            }
            body.catalog-filters-drawer-open {
                overflow: hidden;
            }
        }
        .catalog-filters-drawer__top {
            display: none;
            align-items: center;
            justify-content: space-between;
            gap: 12px;
            padding: 16px 18px 12px 18px;
            flex-shrink: 0;
            border-bottom: 1px solid #ececec;
        }
        .catalog-filters-drawer__title {
            margin: 0;
            font-size: 1.25rem;
            font-weight: 600;
            color: #1d1d1f;
            letter-spacing: -0.02em;
        }
        .catalog-filters-drawer__close {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 40px;
            height: 40px;
            border: none;
            border-radius: 10px;
            background: transparent;
            color: #1d1d1f;
            cursor: pointer;
            margin: 0;
            padding: 0;
            -webkit-tap-highlight-color: transparent;
        }
        .catalog-filters-drawer__close:hover {
            background: rgba(0, 0, 0, 0.05);
        }
        .catalog-filters-drawer__scroll {
            flex: 1 1 auto;
            min-height: 0;
            overflow-y: auto;
            -webkit-overflow-scrolling: touch;
            padding: 14px 22px 0 24px;
        }
        .catalog-filters-accordion {
            display: flex;
            flex-direction: column;
        }
        .catalog-filters-accordion .cfa-item {
            border-bottom: 1px solid #ececec;
        }
        .catalog-filters-accordion .cfa-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            text-align: left;
            padding: 18px 18px 16px 0;
            font-size: 0.95rem;
            font-weight: 700;
            color: #1d1d1f;
            background: transparent;
            border: none;
            cursor: pointer;
            -webkit-tap-highlight-color: transparent;
        }
        .catalog-filters-accordion .cfa-head:focus,
        .catalog-filters-accordion .cfa-head:focus-visible {
            outline: none;
            box-shadow: none;
        }
        .catalog-filters-accordion .cfa-head:hover {
            background: transparent;
        }
        .catalog-filters-accordion .cfa-icon {
            font-size: 1rem;
            font-weight: 400;
            color: #1d1d1f;
            line-height: 1;
            min-width: 1.2em;
            text-align: center;
        }
        .catalog-filters-accordion .cfa-head[aria-expanded="true"] .cfa-icon {
            transform: none;
        }
        .catalog-filters-accordion .cfa-panel {
            padding: 0 18px 18px 0;
        }
        .catalog-filters-accordion .cfa-panel[hidden] {
            display: none;
        }
        .cfa-placeholder,
        .catalog-filters-drawer__empty {
            font-size: 0.88rem;
            color: #6e6e73;
            line-height: 1.45;
            margin: 0;
        }
        .catalog-filters-drawer__glabel {
            font-size: 0.75rem;
            font-weight: 500;
            color: #6e6e73;
            text-transform: uppercase;
            letter-spacing: 0.04em;
            margin: 0 0 8px 0;
        }
        .catalog-filters-drawer__group + .catalog-filters-drawer__group {
            margin-top: 14px;
        }
        .catalog-filters-drawer .filter-buttons {
            display: flex;
            flex-direction: column;
            align-items: stretch;
            gap: 0;
        }
        .catalog-filters-drawer .catalog-filters-accordion .filter-btn {
            width: 100%;
            display: block;
            text-align: left;
            justify-content: flex-start;
            box-sizing: border-box;
            border: none !important;
            border-radius: 0 !important;
            background: transparent !important;
            color: #1d1d1f !important;
            font-size: 0.9rem;
            font-weight: 400;
            line-height: 1.35;
            padding: 7px 0 !important;
            min-height: auto;
            box-shadow: none !important;
            transform: none !important;
            white-space: normal;
            transition: color 0.15s ease, font-weight 0.15s ease;
        }
        .catalog-filters-drawer .catalog-filters-accordion .filter-btn:hover {
            background: transparent !important;
            color: #000 !important;
            font-weight: 600;
            transform: none !important;
            box-shadow: none !important;
        }
        .catalog-filters-drawer .catalog-filters-accordion .filter-btn.active {
            background: transparent !important;
            color: #000 !important;
            font-weight: 700;
            padding-right: 0 !important;
            box-shadow: none !important;
            transform: none !important;
        }
        .catalog-filters-drawer .filter-btn-close {
            display: none;
        }
        .catalog-local-filter-list {
            display: flex;
            flex-direction: column;
            gap: 0;
        }
        .catalog-local-filter-option {
            width: 100%;
            border: none;
            background: transparent;
            color: #1d1d1f;
            font: inherit;
            font-size: 0.9rem;
            font-weight: 400;
            text-align: left;
            padding: 8px 0;
            cursor: pointer;
            -webkit-tap-highlight-color: transparent;
        }
        .catalog-local-filter-option.is-hidden {
            display: none;
        }
        .catalog-local-filter-option:hover {
            color: #000;
            font-weight: 600;
        }
        .catalog-local-filter-option.active {
            color: #000;
            font-weight: 700;
        }
        .catalog-local-filter-option--color {
            display: flex;
            align-items: center;
            gap: 10px;
        }
        .catalog-local-filter-color-dot {
            width: 18px;
            height: 18px;
            flex: 0 0 18px;
            border-radius: 50%;
            border: 1px solid rgba(29, 29, 31, 0.16);
            box-shadow: inset 0 0 0 1px rgba(255,255,255,0.45);
        }
        .catalog-local-filter-more {
            width: auto;
            border: none;
            background: transparent;
            color: #6e6e73;
            font: inherit;
            font-size: 0.88rem;
            font-weight: 500;
            text-align: left;
            padding: 10px 0 4px;
            cursor: pointer;
            -webkit-tap-highlight-color: transparent;
        }
        .catalog-local-filter-more:hover {
            color: #000;
        }
        .cfa-static {
            margin: 0;
            font-size: 0.9rem;
            color: #1d1d1f;
        }
        .catalog-price-filter {
            display: flex;
            flex-direction: column;
            gap: 18px;
        }
        .catalog-price-filter__inputs {
            display: grid;
            grid-template-columns: 1fr auto 1fr;
            align-items: center;
            gap: 12px;
        }
        .catalog-price-filter__sep {
            color: #9ca3af;
            font-size: 1rem;
        }
        .catalog-price-filter__input {
            display: flex;
            align-items: center;
            gap: 6px;
            height: 36px;
            padding: 0 12px;
            border-radius: 8px;
            background: #f5f5f7;
            color: #6e6e73;
            font-size: 0.82rem;
            box-sizing: border-box;
        }
        .catalog-price-filter__input input {
            width: 100%;
            min-width: 0;
            border: 0;
            outline: 0;
            background: transparent;
            color: #1d1d1f;
            font-size: 0.86rem;
            font-weight: 500;
            font-family: inherit;
            padding: 0;
        }
        .catalog-price-filter__range {
            position: relative;
            height: 18px;
        }
        .catalog-price-filter__track {
            position: absolute;
            left: 8px;
            right: 8px;
            top: 8px;
            height: 3px;
            border-radius: 999px;
            background: #d7d7dd;
        }
        .catalog-price-filter__handle {
            position: absolute;
            top: 3px;
            width: 13px;
            height: 13px;
            border-radius: 50%;
            background: #1d1d1f;
            box-shadow: 0 0 0 2px rgba(29, 29, 31, 0.08);
        }
        .catalog-price-filter__range input[type="range"] {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 18px;
            margin: 0;
            appearance: none;
            -webkit-appearance: none;
            background: transparent;
            pointer-events: none;
        }
        .catalog-price-filter__range input[type="range"]::-webkit-slider-thumb {
            width: 17px;
            height: 17px;
            border: 0;
            border-radius: 50%;
            background: #1d1d1f;
            cursor: pointer;
            pointer-events: auto;
            -webkit-appearance: none;
            box-shadow: 0 0 0 3px rgba(29, 29, 31, 0.08);
        }
        .catalog-price-filter__range input[type="range"]::-moz-range-thumb {
            width: 17px;
            height: 17px;
            border: 0;
            border-radius: 50%;
            background: #1d1d1f;
            cursor: pointer;
            pointer-events: auto;
            box-shadow: 0 0 0 3px rgba(29, 29, 31, 0.08);
        }
        .catalog-price-filter__range input[type="range"]::-webkit-slider-runnable-track,
        .catalog-price-filter__range input[type="range"]::-moz-range-track {
            background: transparent;
            border: 0;
        }
        .catalog-price-filter__handle--min {
            left: 0;
        }
        .catalog-price-filter__handle--max {
            right: 0;
        }
        .catalog-filters-drawer__footer {
            position: static;
            flex-shrink: 0;
            padding: 18px 22px 22px 24px;
            display: flex;
            flex-direction: column;
            gap: 8px;
            border-top: none;
            background: transparent;
        }
        .catalog-filters-drawer__apply {
            width: 100%;
            border: none;
            border-radius: 6px;
            padding: 12px 16px;
            font-size: 0.9rem;
            font-weight: 600;
            color: #fff;
            background: #000;
            cursor: pointer;
        }
        .catalog-filters-drawer__apply:hover {
            background: #111;
        }
        .catalog-filters-drawer__reset {
            width: 100%;
            border: none;
            background: none;
            padding: 6px 8px 4px 8px;
            font-size: 0.9rem;
            font-weight: 500;
            color: #1d1d1f;
            cursor: pointer;
        }
        .catalog-filters-drawer__reset:hover {
            text-decoration: underline;
        }
        @media (max-width: 1024px) {
            .catalog-filters-drawer__top {
                display: flex;
                padding: 26px 26px 20px 26px;
                border-bottom: none;
            }
            .catalog-filters-drawer__title {
                font-size: 1.4rem;
                font-weight: 700;
                letter-spacing: -0.03em;
            }
            .catalog-filters-drawer__close {
                width: 34px;
                height: 34px;
                border-radius: 50%;
            }
            .catalog-filters-drawer__scroll {
                padding: 8px 18px 0 26px;
            }
            .catalog-filters-accordion .cfa-head {
                padding: 18px 0 16px 0;
                font-size: 0.95rem;
            }
            .catalog-filters-accordion .cfa-panel {
                padding: 0 0 18px 10px;
            }
            .catalog-filters-drawer .catalog-filters-accordion .filter-btn,
            .catalog-local-filter-option {
                font-size: 1rem;
                padding: 9px 0 !important;
            }
            .catalog-filters-drawer .catalog-filters-accordion .filter-btn.active,
            .catalog-filters-drawer .cfa-static {
                display: flex;
                align-items: center;
                justify-content: space-between;
                border-radius: 8px !important;
                background: #f3f3f7 !important;
                padding: 12px 10px !important;
                font-size: 1rem;
                font-weight: 400;
            }
            .catalog-filters-drawer .catalog-filters-accordion .filter-btn.active::after,
            .catalog-filters-drawer .cfa-static::after {
                content: "✓";
                font-size: 0.95rem;
                color: #111;
            }
            .catalog-local-filter-more {
                color: #ec4899;
                font-size: 0.95rem;
                padding-top: 12px;
            }
            .catalog-local-filter-more:hover {
                color: #db2777;
            }
            .catalog-filters-drawer__footer {
                padding: 14px 26px calc(18px + env(safe-area-inset-bottom)) 26px;
                background: linear-gradient(to top, #fff 72%, rgba(255,255,255,0));
            }
        }
        
        .subcategories-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
            gap: 0;
            padding: 0;
            border-top: 1px solid #eaeaea;
            border-left: 1px solid #eaeaea;
            box-sizing: border-box;
        }
        
        .subcategory-card {
            background: var(--header-surface-bg, #ffffff);
            border-radius: 12px;
            padding: 20px 16px;
            text-align: center;
            box-shadow: none;
            opacity: 0;
            transform: translateY(20px);
            animation: fadeInUp 0.5s ease forwards;
        }
        
        .subcategory-card.animate-in {
            animation: fadeInUp 0.5s ease forwards;
        }
        
        .subcategory-card {
            transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
            cursor: pointer;
            border: 1px solid #f0f0f0;
            position: relative;
            overflow: hidden;
        }
        
        .subcategory-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 3px;
            background: linear-gradient(90deg, #2d2d2d, #1a1a1a);
            transform: scaleX(0);
            transform-origin: left;
            transition: transform 0.3s ease;
        }
        
        .subcategory-card:hover {
            transform: translateY(-2px);
            box-shadow: none;
            border-color: #2d2d2d;
        }
        
        .subcategory-card:hover::before {
            transform: scaleX(1);
        }

        .subcategories-grid .subcategory-card {
            border-radius: 0;
            border: none;
            border-right: 1px solid #eaeaea;
            border-bottom: 1px solid #eaeaea;
        }

        .subcategories-grid .subcategory-card:hover {
            border-right-color: #2d2d2d;
            border-bottom-color: #2d2d2d;
        }
        
        .subcategory-card .subcategory-icon {
            font-size: 2.5rem;
            margin-bottom: 1rem;
            display: block;
        }
        
        .subcategory-card .subcategory-name {
            font-size: 1rem;
            font-weight: 600;
            color: #1a1a1a;
            margin-bottom: 8px;
            letter-spacing: -0.01em;
        }
        
        .subcategory-card .subcategory-count {
            font-size: 0.75rem;
            color: #666;
            background: #f5f5f7;
            padding: 4px 10px;
            border-radius: 12px;
            display: inline-block;
            font-weight: 500;
            transition: all 0.2s ease;
        }
        
        .subcategory-card:hover .subcategory-count {
            background: rgba(45, 45, 45, 0.1);
            color: #2d2d2d;
        }
        
        .product-description-spoiler, .product-specifications-spoiler {
            margin: 10px 0;
        }
        
        .spoiler-header {
            cursor: pointer;
            padding: 8px 0;
            border-bottom: 1px solid #eee;
            display: flex;
            justify-content: space-between;
            align-items: center;
            transition: background-color 0.2s ease;
        }
        
        .spoiler-header:hover {
            background-color: #f8f9fa;
            border-radius: 5px;
            padding: 8px 10px;
            margin: 0 -10px;
        }
        
        .spoiler-title {
            font-weight: 600;
            color: #333;
            font-size: 0.8rem;
        }
        
        .spoiler-arrow {
            color: #667eea;
            font-size: 0.7rem;
            transition: transform 0.2s ease;
        }
        
        .spoiler-content {
            padding: 10px 0;
            margin-top: 5px;
        }
        
        .product-description {
            font-size: 0.9rem;
            color: #666;
            line-height: 1.4;
        }
        
        .specifications {
            font-size: 0.8rem;
        }
        
        .spec-item {
            display: grid;
            grid-template-columns: minmax(120px, 44%) minmax(0, 1fr);
            align-items: baseline;
            column-gap: 16px;
            padding: 3px 0;
            border-bottom: 1px solid #f0f0f0;
        }
        
        .spec-key {
            font-weight: 600;
            color: #333;
            font-size: 0.8rem;
            min-width: 0;
        }
        
        .spec-value {
            color: #666;
            text-align: right;
            font-size: 0.8rem;
            min-width: 0;
            justify-self: end;
        }
        
        .product-variants {
            margin: 12px 0 24px 0;
            padding: 12px;
            padding-top: 0px;
            background: transparent;
            border-radius: 12px;
            border: none;
        }
        
        .variant-group {
            margin-bottom: 8px;
        }
        
        .variant-group:last-child {
            margin-bottom: 0;
        }
        
        .variant-group label {
            display: block;
            font-weight: 600;
            color: #555;
            font-size: 0.8rem;
            margin-bottom: 8px;
            opacity: 0.8;
        }
        
        .variant-buttons {
            display: flex;
            align-items: center;
            gap: 8px;
            flex-wrap: nowrap;
            min-width: 0;
            max-width: 100%;
            overflow-x: auto;
            overflow-y: hidden;
            -webkit-overflow-scrolling: touch;
            overscroll-behavior-x: contain;
            scrollbar-width: thin;
        }
        
        .product-variants .variant-buttons {
            gap: 8px;
        }

        .variant-buttons .variant-btn,
        .variant-buttons .variant-button,
        .variant-buttons label {
            flex-shrink: 0;
        }

        .products-grid .product-card .variant-buttons .variant-btn.color-btn:first-child {
            margin-left: 3px;
            margin-top: 3px;
            margin-bottom: 3px;
        }

        /* Кнопки вариантов в карточке каталога — как PDP2 (все ширины экрана) */
        .products-grid .product-card .product-variants .variant-group label {
            font-size: 1rem;
            font-weight: 400;
            color: #111111;
            letter-spacing: -0.02em;
            opacity: 1;
        }
        .products-grid .product-card .product-variants .variant-buttons {
            gap: 8px;
        }
        .products-grid .product-card .product-variants .variant-buttons:has(.color-btn) {
            gap: 14px;
            padding: 6px 8px;
            box-sizing: border-box;
            overflow-y: visible;
        }
        @media (min-width: 1025px) {
            .products-grid:not(.individual-mode) .product-card .product-variants .variant-buttons:has(.color-btn) {
                flex-wrap: wrap;
                overflow-x: visible;
                overflow-y: visible;
                justify-content: flex-start;
                align-content: flex-start;
            }
            .products-grid:not(.individual-mode) .product-card .product-variants {
                width: 100%;
            }
        }
        .products-grid .product-card .product-variants .variant-buttons .variant-btn:not(.color-btn) {
            padding: 8px 13px;
            border: 1px solid #e5e7eb;
            border-radius: 6px;
            background: #ffffff;
            font-size: 0.8125rem;
            font-weight: 500;
            color: #374151;
            box-shadow: none;
            min-height: 36px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            transition: border-color 0.15s ease, color 0.15s ease, font-weight 0.15s ease;
        }
        .products-grid .product-card .product-variants .variant-buttons .variant-btn:not(.color-btn):hover:not(.active) {
            border-color: rgba(45, 45, 45, 0.35);
            border-width: 1px;
            background: #ffffff;
            color: #111827;
            box-shadow: none;
        }
        .products-grid .product-card .product-variants .variant-buttons .variant-btn:not(.color-btn).active {
            border: 2px solid #111111;
            font-weight: 600;
            color: #111111;
            background: #ffffff;
            padding: 7px 12px;
        }
        .products-grid .product-card .product-variants .variant-buttons .variant-btn:not(.color-btn).active:hover {
            border-color: #111111;
            background: #ffffff;
            color: #111111;
        }
        .products-grid .product-card .product-variants .variant-buttons .variant-btn.color-btn {
            width: 32px !important;
            height: 32px !important;
            min-width: 32px !important;
            padding: 0 !important;
            border-radius: 50% !important;
            box-sizing: border-box;
            transform: none !important;
            transition: box-shadow 0.15s ease, border-color 0.15s ease;
        }
        .products-grid .product-card .product-variants .variant-buttons .variant-btn.color-btn:not(.active) {
            border: 2px solid #e5e7eb !important;
        }
        .products-grid .product-card .product-variants .variant-buttons .variant-btn.color-btn:hover:not(.active) {
            transform: none !important;
            border-color: rgba(45, 45, 45, 0.35) !important;
        }
        .products-grid .product-card .product-variants .variant-buttons .variant-btn.color-btn.active {
            transform: none !important;
            border: 2px solid transparent !important;
            box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #111111 !important;
        }
        
        .variant-btn,
        .product-variants .variant-button {
            position: relative;
            padding: 6px 12px;
            border: 2px solid rgba(45, 45, 45, 0.3);
            border-radius: 8px;
            background: var(--header-surface-bg, #ffffff);
            cursor: pointer;
            transition: all 0.2s ease;
            font-size: 0.8rem;
            font-weight: 500;
            color: #374151;
            white-space: nowrap;
            text-align: center;
        }
        
        .variant-btn:hover:not(.active):not(.color-btn),
        .product-variants .variant-button:hover:not(.active):not(.variant-button-color) {
            border-color: rgba(45, 45, 45, 0.8);
            border-width: 2px;
            box-shadow: 0 2px 8px rgba(45, 45, 45, 0.2);
            background: white !important;
            color: #374151 !important;
        }
        
        .variant-btn.active:not(.color-btn):not(.memory-btn):not(.sim-btn),
        .product-variants .variant-button.active:not(.variant-button-color):not(.variant-button-memory):not(.variant-button-sim) {
            border-color: #4a4a4a;
            background: var(--header-surface-bg, #ffffff);
            color: #374151;
            border-width: 2px;
        }
        
        .variant-btn.active:hover:not(.color-btn):not(.memory-btn):not(.sim-btn),
        .product-variants .variant-button.active:hover:not(.variant-button-color):not(.variant-button-memory):not(.variant-button-sim) {
            border-color: #4a4a4a;
            background: var(--header-surface-bg, #ffffff);
            color: #374151;
        }
        
        /* Стили для активной кнопки памяти - только рамка */
        .variant-btn.memory-btn.active,
        .product-variants .variant-button-memory.active {
            border-color: #4a4a4a;
            background: var(--header-surface-bg, #ffffff);
            color: #374151;
            border-width: 2px;
        }
        
        .variant-btn.memory-btn.active:hover,
        .product-variants .variant-button-memory.active:hover {
            border-color: #4a4a4a;
            background: var(--header-surface-bg, #ffffff);
            color: #374151;
        }
        
        /* Стили для активной кнопки SIM - только рамка */
        .variant-btn.sim-btn.active,
        .product-variants .variant-button-sim.active {
            border-color: #4a4a4a;
            background: var(--header-surface-bg, #ffffff);
            color: #374151;
            border-width: 2px;
        }
        
        .variant-btn.sim-btn.active:hover,
        .product-variants .variant-button-sim.active:hover {
            border-color: #4a4a4a;
            background: var(--header-surface-bg, #ffffff);
            color: #374151;
        }
        
        /* Карточки каталога: цветовые кнопки .color-btn. Свотчи PDP — только .product-detail-page--pdp2 .variant-button-color */
        .color-btn:not([data-dual-color="true"]) {
            width: 20px;
            height: 20px;
            padding: 0;
            border-radius: 50%;
            border: 2px solid rgba(45, 45, 45, 0.3) !important;
            position: relative;
            transition: border-color 0.2s ease, transform 0.2s ease;
            cursor: pointer;
            min-width: 20px;
            box-sizing: border-box;
        }
        
        .color-btn[data-dual-color="true"] {
            width: 20px;
            height: 20px;
            padding: 0;
            border-radius: 50%;
            position: relative;
            transition: border-color 0.2s ease, transform 0.2s ease;
            cursor: pointer;
            min-width: 20px;
            box-sizing: border-box;
            /* border устанавливается через inline стиль из getColorButtonStyle с !important */
        }
        
        .product-variants .variant-button-color:not([data-dual-color="true"]) {
            width: 20px;
            height: 20px;
            padding: 0;
            border-radius: 50%;
            border: 2px solid rgba(45, 45, 45, 0.3) !important;
            position: relative;
            transition: border-color 0.2s ease, transform 0.2s ease;
            cursor: pointer;
            min-width: 20px;
            box-sizing: border-box;
        }
        
        .product-variants .variant-button-color[data-dual-color="true"] {
            width: 20px;
            height: 20px;
            padding: 0;
            border-radius: 50%;
            position: relative;
            transition: border-color 0.2s ease, transform 0.2s ease;
            cursor: pointer;
            min-width: 20px;
            box-sizing: border-box;
            /* border устанавливается через inline стиль из getColorButtonStyle с !important */
        }
        
        .color-btn:not([data-dual-color="true"]) {
            width: 28px;
            height: 28px;
            min-width: 28px;
        }
        
        .product-variants .variant-button-color:not([data-dual-color="true"]) {
            width: 28px;
            height: 28px;
            min-width: 28px;
        }
        
        .color-btn[data-dual-color="true"] {
            width: 28px;
            height: 28px;
            min-width: 28px;
        }
        
        .product-variants .variant-button-color[data-dual-color="true"] {
            width: 28px;
            height: 28px;
            min-width: 28px;
        }
        
        .color-btn:not([data-dual-color="true"]):hover {
            border-color: rgba(45, 45, 45, 0.6);
            transform: scale(1.05);
        }
        
        .product-variants .variant-button-color:not([data-dual-color="true"]):hover {
            border-color: rgba(45, 45, 45, 0.6);
            transform: scale(1.05);
        }
        
        .color-btn[data-dual-color="true"]:hover {
            transform: scale(1.05);
            /* border-color не меняем, он устанавливается через inline стиль */
        }
        
        .product-variants .variant-button-color[data-dual-color="true"]:hover {
            transform: scale(1.05);
            /* border-color не меняем, он устанавливается через inline стиль */
        }
        
        .variant-btn.color-btn.active {
            transform: scale(1.1);
        }
        
        .product-variants .variant-button-color.active {
            transform: scale(1.1);
        }
        
        .product-variants .variant-button-color[data-dual-color="true"] {
            box-sizing: border-box !important;
        }
        
        /* Для двойных цветов border устанавливается через inline стиль из getColorButtonStyle с !important */
        /* Не переопределяем border для двойных цветов, чтобы inline стиль работал */
        
        /* Стили для групп вариантов */
        .variant-group {
            margin: 15px 0;
        }
        
        .variant-group label {
            display: block;
            font-weight: 600;
            color: #555;
            font-size: 0.8rem;
            margin-bottom: 8px;
            opacity: 0.8;
        }
        
        /* Стили для кнопок памяти и SIM */
        .memory-btn, .sim-btn {
            background: #f8f9fa;
            border: 2px solid #e9ecef;
            color: #495057;
        }
        
        .memory-btn:hover, .sim-btn:hover {
            background: #667eea;
            color: white;
            border-color: #667eea;
        }
        
        .memory-btn.active, .sim-btn.active {
            background: var(--header-surface-bg, #ffffff);
            color: #667eea;
            border-color: #667eea;
            border-width: 2px;
            font-weight: 600;
        }
        /* Help (About) floating button */
        .help-fab {
            position: fixed;
            top: 18px;
            right: 18px;
            width: 36px;
            height: 36px;
            border-radius: 50%;
            background: #4a4a4a;
            color: #fff;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: 700;
            font-size: 18px;
            cursor: pointer;
            box-shadow: 0 4px 12px rgba(0,0,0,0.15);
            z-index: 1100;
        }
        .help-fab:hover { background: #3a3a3a; }
        .about-backdrop {
            position: fixed;
            inset: 0;
            background: rgba(0,0,0,0.35);
            display: none;
            align-items: center;
            justify-content: center;
            z-index: 1099;
        }

        #callbackBackdrop {
            z-index: 2050;
        }

        #cartAddedBackdrop {
            z-index: 2060;
            background: rgba(17, 24, 39, 0.14);
            opacity: 0;
            transition: opacity 0.34s ease;
        }

        #cartAddedBackdrop.is-visible {
            opacity: 1;
        }

        #cartAddedBackdrop .cart-added-modal {
            transform: translateY(14px);
            opacity: 0;
            transition:
                transform 0.38s cubic-bezier(0.22, 1, 0.36, 1),
                opacity 0.34s ease;
        }

        #cartAddedBackdrop.is-visible .cart-added-modal {
            transform: translateY(0);
            opacity: 1;
        }

        .cart-added-modal.about-modal {
            position: relative;
            width: min(392px, calc(100vw - 32px));
            border-radius: 0;
            box-shadow: 0 18px 48px rgba(17, 24, 39, 0.12);
            border: 1px solid #eaeaea;
        }

        .cart-added-close {
            position: absolute;
            top: 14px;
            right: 14px;
            z-index: 2;
            border: none;
            background: transparent;
            color: #9ca3af;
            font-size: 1.5rem;
            line-height: 1;
            cursor: pointer;
            padding: 4px;
            transition: color 0.2s ease;
        }

        .cart-added-close:hover {
            color: #374151;
        }

        .cart-added-content {
            padding: 28px 22px 22px;
        }

        .cart-added-intro {
            margin-bottom: 22px;
            padding-right: 28px;
        }

        .cart-added-title {
            margin: 0 0 8px;
            font-family: 'Graphik LC Web', 'Graphik-Medium-Cy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            font-size: 1.375rem;
            font-weight: 500;
            line-height: 1.15;
            letter-spacing: -0.03em;
            color: #111827;
        }

        .cart-added-intro__lead {
            margin: 0;
            font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            font-size: 0.875rem;
            font-weight: 400;
            line-height: 1.5;
            letter-spacing: -0.01em;
            color: #6b7280;
        }

        .cart-added-product {
            display: flex;
            align-items: center;
            gap: 14px;
            margin-bottom: 22px;
            padding: 14px 16px;
            background: #fff;
            border: 1px solid #eaeaea;
            border-radius: 0;
        }

        .cart-added-product__image {
            width: 52px;
            height: 52px;
            object-fit: contain;
            flex-shrink: 0;
            border-radius: 0;
            background: #fff;
            border: 1px solid #f3f4f6;
        }

        .cart-added-product__image[hidden] {
            display: none !important;
        }

        .cart-added-product__name {
            font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            font-size: 0.9375rem;
            font-weight: 500;
            line-height: 1.45;
            letter-spacing: -0.01em;
            color: #111827;
            word-break: break-word;
        }

        .cart-added-actions {
            display: flex;
            flex-direction: column;
            gap: 8px;
        }

        .cart-added-btn {
            width: 100%;
            min-height: 44px;
            padding: 11px 16px;
            border-radius: 0;
            font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            font-size: 0.9375rem;
            font-weight: 500;
            letter-spacing: -0.01em;
            cursor: pointer;
            transition: background-color 0.24s ease, color 0.24s ease, border-color 0.24s ease, opacity 0.24s ease;
        }

        .cart-added-btn--primary {
            border: 1px solid #111827;
            background: #111827;
            color: #fff;
        }

        .cart-added-btn--primary:hover {
            background: #000;
            border-color: #000;
        }

        .cart-added-btn--ghost {
            border: none;
            background: transparent;
            color: #6b7280;
            min-height: 38px;
        }

        .cart-added-btn--ghost:hover {
            background: transparent;
            color: #111827;
        }

        .callback-request-modal.about-modal {
            width: min(440px, 92vw);
        }

        .callback-request-modal .about-content {
            padding-top: 8px;
        }

        .callback-form-hint {
            font-size: 0.875rem;
            margin: 0 0 12px 0;
            line-height: 1.4;
        }

        .callback-product-block {
            display: flex;
            flex-direction: column;
            gap: 10px;
            margin-bottom: 4px;
            padding: 14px 16px;
            background: #f3f4f6;
            border-radius: 10px;
            border: 1px solid #e5e7eb;
        }

        .callback-product-block[hidden] {
            display: none !important;
        }

        .callback-product-block__label {
            font-size: 0.75rem;
            font-weight: 600;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            color: #6b7280;
        }

        .callback-product-block__name {
            font-size: 1rem;
            font-weight: 600;
            line-height: 1.35;
            color: #111827;
            word-break: break-word;
        }

        .callback-product-block__hint {
            margin: 0;
            font-size: 0.875rem;
            line-height: 1.45;
            color: #4b5563;
        }

        .callback-checkbox {
            display: flex;
            align-items: flex-start;
            gap: 10px;
            margin: 4px 0 0;
            cursor: pointer;
            user-select: none;
        }

        .callback-checkbox input[type="checkbox"] {
            width: 18px;
            height: 18px;
            margin: 2px 0 0;
            flex-shrink: 0;
            accent-color: #1e3a5f;
            cursor: pointer;
        }

        .callback-checkbox__text {
            font-size: 0.875rem;
            line-height: 1.4;
            color: #374151;
        }
        .btn-product-inquiry {
            background: #1e3a5f !important;
        }
        .btn-product-inquiry:hover {
            background: #152a45 !important;
        }
        .add-to-cart-btn.btn-product-inquiry {
            background: #1e3a5f;
            width: auto;
            min-width: 0;
            max-width: 100%;
            box-sizing: border-box;
            font-size: 0.6875rem;
            padding: 5px 8px;
            gap: 3px;
        }
        .add-to-cart-btn.btn-product-inquiry .add-to-cart-btn-text {
            line-height: 1.15;
        }
        @media (max-width: 1024px) {
            .products-grid .add-to-cart-btn.btn-product-inquiry {
                width: 100% !important;
                max-width: 100% !important;
                min-width: 0 !important;
                font-size: 0.8125rem !important;
                padding: 12px 14px !important;
                letter-spacing: -0.03em;
                line-height: 1.2;
                box-sizing: border-box !important;
            }
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn.btn-product-inquiry {
                width: 100% !important;
                min-width: 0 !important;
                max-width: 100% !important;
                font-size: 0.8125rem !important;
                font-weight: 600 !important;
                padding: 12px 14px !important;
            }
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn.btn-product-inquiry {
                width: 100% !important;
                min-width: 0 !important;
                max-width: 100% !important;
                font-size: 0.8125rem !important;
                font-weight: 600 !important;
                padding: 12px 14px !important;
                letter-spacing: -0.03em;
            }
            .products-grid.individual-mode .individual-product-card .product-info-sidebar {
                width: 100% !important;
                max-width: 100% !important;
                box-sizing: border-box;
            }
            .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-info-sidebar {
                padding-left: 10px !important;
                padding-right: 10px !important;
            }
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar {
                width: 100% !important;
                max-width: 100% !important;
                align-items: stretch !important;
                padding-left: 10px !important;
                padding-right: 10px !important;
            }
            .products-grid.search-results-grid .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry,
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry {
                width: 100% !important;
                min-width: 0 !important;
                max-width: 100% !important;
                align-self: stretch !important;
                margin-left: 0 !important;
                margin-right: 0 !important;
                font-size: 0.8125rem !important;
                font-weight: 600 !important;
                padding: 12px 14px !important;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry {
                width: 100% !important;
                font-size: 0.8125rem !important;
                font-weight: 600 !important;
                padding: 12px 14px !important;
            }
        }
        .callback-request-form {
            display: flex;
            flex-direction: column;
            gap: 16px;
            font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            -webkit-font-smoothing: antialiased;
        }

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

        .callback-field-label {
            font-size: 0.8125rem;
            font-weight: 500;
            color: #374151;
        }

        .callback-field-input {
            width: 100%;
            box-sizing: border-box;
            padding: 12px 14px;
            font-size: 0.9375rem;
            font-weight: 400;
            color: #111111;
            background: #fff;
            border: 1px solid #e0e0e0;
            border-radius: 6px;
            transition: border-color 0.15s ease, box-shadow 0.15s ease;
        }

        .callback-field-input::placeholder {
            color: #a3a3a3;
        }

        .callback-field-input:focus {
            outline: none;
            border-color: #111111;
            box-shadow: 0 0 0 1px #111111;
        }

        /* Телефон «Перезвоните мне» / корзина: маска визуально тише, пока поле не в фокусе и нет ввода */
        input[data-phone-mask="ru"].is-callback-phone-idle {
            color: #b4b8bf;
            font-size: 0.8125rem;
            letter-spacing: 0.02em;
        }

        input[data-phone-mask="ru"].is-callback-phone-idle:focus {
            color: #111111;
            font-size: 0.9375rem;
            letter-spacing: normal;
        }

        .callback-request-form .cart-submit-btn {
            width: 100%;
            box-sizing: border-box;
            margin-top: 4px;
            background: #111111;
            font-weight: 600;
            font-size: 1rem;
            padding: 16px 24px;
        }

        .callback-request-form .cart-submit-btn:hover:not(:disabled) {
            background: #1a1a1a;
        }

        /* Успех заявки «Перезвоните мне» — как финал корзины */
        .callback-request-phase.is-hidden {
            display: none !important;
        }

        .callback-request-success {
            display: none;
            flex-direction: column;
            align-items: center;
            text-align: center;
            padding: 8px 12px 16px;
            font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
        }

        .callback-request-success.is-visible {
            display: flex;
            animation: callbackRequestSuccessIn 0.42s ease-out both;
        }

        @keyframes callbackRequestSuccessIn {
            from {
                opacity: 0;
                transform: translateY(10px) scale(0.98);
            }
            to {
                opacity: 1;
                transform: translateY(0) scale(1);
            }
        }

        .callback-request-success__mark {
            width: 76px;
            height: 76px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 22px;
            background: linear-gradient(145deg, #ecfdf5 0%, #a7f3d0 55%, #6ee7b7 100%);
            box-shadow:
                0 10px 28px rgba(16, 185, 129, 0.28),
                0 2px 8px rgba(16, 185, 129, 0.12),
                inset 0 1px 0 rgba(255, 255, 255, 0.65);
            animation: callbackRequestMarkPop 0.55s cubic-bezier(0.34, 1.35, 0.64, 1) both;
        }

        @keyframes callbackRequestMarkPop {
            0% {
                transform: scale(0.35);
                opacity: 0;
            }
            100% {
                transform: scale(1);
                opacity: 1;
            }
        }

        .callback-request-success__check-svg {
            width: 38px;
            height: 38px;
            color: #047857;
            display: block;
        }

        .callback-request-success__check-path {
            stroke: currentColor;
            stroke-width: 2.6;
            stroke-linecap: round;
            stroke-linejoin: round;
            fill: none;
            stroke-dasharray: 1;
            stroke-dashoffset: 1;
        }

        .callback-request-success.is-visible .callback-request-success__check-path {
            animation: callbackRequestCheckDraw 0.5s cubic-bezier(0.65, 0, 0.45, 1) 0.18s forwards;
        }

        @keyframes callbackRequestCheckDraw {
            to {
                stroke-dashoffset: 0;
            }
        }

        .callback-request-success__title {
            margin: 0 0 10px;
            font-size: 1.25rem;
            font-weight: 700;
            color: #111827;
            letter-spacing: -0.03em;
            line-height: 1.25;
        }

        .callback-request-success__lead {
            margin: 0;
            font-size: 0.9375rem;
            line-height: 1.5;
            color: #6b7280;
            max-width: 280px;
        }

        @media (prefers-reduced-motion: reduce) {
            .callback-request-success.is-visible,
            .callback-request-success__mark,
            .callback-request-success.is-visible .callback-request-success__check-path {
                animation: none !important;
            }

            .callback-request-success__check-path {
                stroke-dashoffset: 0 !important;
            }
        }

        .about-modal { background: #fff; width: min(720px, 92vw); max-height: 86vh; border-radius: 12px; box-shadow: 0 10px 30px rgba(0,0,0,0.2); overflow: hidden; }
        .about-header { display: flex; align-items: center; justify-content: space-between; padding: 14px 18px; border-bottom: 1px solid #eee; }
        .about-title { font-size: 18px; font-weight: 700; }
        .about-close { background: transparent; border: none; font-size: 20px; cursor: pointer; color: #666; }
        .about-content { padding: 16px 18px 20px 18px; overflow: auto; max-height: 70vh; }
        .about-section { 
            margin-bottom: 24px;
            opacity: 0;
            transform: translateY(20px);
            animation: fadeInUp 0.6s ease forwards;
        }
        
        .about-section.animate-in {
            animation: fadeInUp 0.6s ease forwards;
        }
        .about-section h4 { 
            margin: 0 0 16px 0; 
            font-size: 18px; 
            font-weight: 700;
            color: #111827;
            letter-spacing: -0.02em;
            position: relative;
            padding-bottom: 12px;
        }
        .about-section h4::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 50px;
            height: 3px;
            background: linear-gradient(90deg, #2d2d2d, transparent);
            border-radius: 2px;
        }
        .about-section h4[style*="text-align: center"]::after {
            left: 50%;
            transform: translateX(-50%);
        }
        .about-section p {
            color: #4b5563;
            line-height: 1.8;
            margin-bottom: 12px;
            font-size: 14px;
        }
        .about-list { 
            margin: 0; 
            padding-left: 20px; 
            color: #4b5563;
            line-height: 1.8;
            font-size: 14px;
        }
        .about-list li {
            margin-bottom: 10px;
            position: relative;
        }
        .about-list li::marker {
            color: #2d2d2d;
        }
        .about-kv { color: #4b5563; }
        .about-kv div { margin: 4px 0; }
        
        /* Карточки доставки / оплаты / гарантии — воздух, почти квадратные углы в духе сайта */
        .info-card {
            padding: 32px 28px;
            background: #ffffff;
            border-radius: 10px;
            border: 1px solid #ebebeb;
            box-shadow: none;
            position: relative;
            overflow: hidden;
        }
        .info-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 1px;
            background: #f0f0f0;
        }
        .info-card h5 {
            margin: 0 0 18px 0;
            font-size: 15px;
            font-weight: 600;
            color: #1d1d1f;
            letter-spacing: -0.02em;
            display: flex;
            align-items: center;
            gap: 12px;
        }
        .info-card h5 span {
            font-size: 22px;
            line-height: 1;
            filter: none;
        }
        .info-card p {
            margin: 0;
            font-size: 14px;
            line-height: 1.8;
            color: #515154;
        }
        .info-card .about-list {
            color: #515154;
            line-height: 1.8;
        }
        .info-card .about-list li {
            margin-bottom: 12px;
        }

        /* Гарантия, доставка: зазор под fixed header (как у блока «Акции») */
        .info-static-page-wrap {
            margin-left: auto;
            margin-right: auto;
            box-sizing: border-box;
            padding: 28px 20px 20px;
            scroll-margin-top: calc(var(--header-desktop-offset, 96px) + 12px);
        }
        @media (min-width: 1025px) {
            .info-static-page-wrap {
                padding-top: 32px;
            }
        }
        @media (max-width: 1024px) {
            .info-static-page-wrap {
                padding-top: max(18px, calc(12px + env(safe-area-inset-top, 0px)));
                scroll-margin-top: 12px;
            }
        }

        /* Юридические страницы: оферта, возврат, персональные данные */
        .legal-page.info-static-page-wrap {
            max-width: 1120px;
            padding-bottom: 56px;
        }
        .legal-page__body {
            color: #374151;
            font-size: 0.9375rem;
            line-height: 1.65;
        }
        .legal-page__title {
            font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            font-size: clamp(1.375rem, 4vw, 1.75rem);
            font-weight: 700;
            letter-spacing: -0.02em;
            color: #111827;
            margin: 0 0 12px;
            line-height: 1.25;
            text-align: center;
        }
        .legal-page__meta {
            color: #6b7280;
            font-size: 0.875rem;
            margin: 0 0 10px;
            text-align: center;
        }
        .legal-page__section-title {
            font-size: 1rem;
            font-weight: 700;
            color: #111827;
            margin: 28px 0 12px;
            line-height: 1.35;
        }
        .legal-page__body p {
            margin: 0 0 12px;
        }
        .legal-page__body p:last-child {
            margin-bottom: 0;
        }
        .legal-page__list {
            margin: 0 0 14px;
            padding-left: 1.25rem;
        }
        .legal-page__list li {
            margin-bottom: 8px;
        }
        .legal-page__body a {
            color: #111827;
            text-decoration: underline;
            text-underline-offset: 2px;
        }

        /* ——— Страница «Гарантия» (/guarantee) ——— */
        .guarantee-page.info-static-page-wrap {
            max-width: 1120px;
            padding-bottom: 56px;
        }
        .about-page-wrap {
            max-width: 1120px;
            margin: 0 auto;
            padding-bottom: 56px;
        }
        .about-page-wrap .about-section {
            margin-bottom: 40px;
        }
        .about-page-wrap .about-section:last-child {
            margin-bottom: 0;
        }
        .guarantee-hero {
            text-align: center;
            margin-bottom: 56px;
        }
        .guarantee-hero__title {
            font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            font-size: clamp(1.875rem, 4.5vw, 2.5rem);
            font-weight: 700;
            letter-spacing: -0.03em;
            color: #000;
            margin: 0 0 36px;
            line-height: 1.12;
        }
        .guarantee-hero__highlights {
            display: grid;
            grid-template-columns: 1fr auto 1fr;
            gap: 0;
            align-items: stretch;
            max-width: 920px;
            margin: 0 auto 28px;
            background: transparent;
        }
        .guarantee-hero__highlight {
            padding: 28px 24px 32px;
            text-align: center;
            box-sizing: border-box;
        }
        .guarantee-hero__highlight-big {
            font-size: clamp(2.5rem, 7vw, 3.75rem);
            font-weight: 800;
            letter-spacing: -0.04em;
            color: #000;
            line-height: 1;
            margin: 0 0 10px;
        }
        .guarantee-hero__highlight-mid {
            font-size: clamp(1rem, 2.2vw, 1.1875rem);
            font-weight: 600;
            color: #000;
            line-height: 1.25;
            margin: 0 0 12px;
        }
        .guarantee-hero__highlight-sub {
            font-size: 0.9375rem;
            font-weight: 400;
            color: #525252;
            line-height: 1.4;
            margin: 0;
        }
        .guarantee-hero__divider {
            width: 1px;
            background: #e5e5e5;
            min-height: 100%;
            align-self: stretch;
        }
        .guarantee-hero__lead {
            font-size: 1rem;
            font-weight: 400;
            color: #404040;
            line-height: 1.55;
            max-width: 640px;
            margin: 0 auto;
        }
        .guarantee-features {
            display: grid;
            grid-template-columns: repeat(5, minmax(0, 1fr));
            gap: 12px 20px;
            margin-bottom: 56px;
        }
        .guarantee-feature {
            padding: 8px 10px 16px;
            background: transparent;
            border-radius: 0;
            border: none;
            box-sizing: border-box;
            text-align: center;
        }
        .guarantee-feature__title {
            font-size: 0.9375rem;
            font-weight: 700;
            color: #000;
            margin: 0 0 10px;
            line-height: 1.3;
        }
        .guarantee-feature__text {
            font-size: 0.8125rem;
            font-weight: 400;
            color: #525252;
            line-height: 1.45;
            margin: 0;
        }
        .guarantee-coverage {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: clamp(32px, 6vw, 72px);
            margin-bottom: 56px;
        }
        .guarantee-coverage__col {
            padding: 0;
            border: none;
            border-radius: 0;
            background: transparent;
            box-sizing: border-box;
        }
        .guarantee-coverage__title {
            font-size: 1rem;
            font-weight: 700;
            color: #000;
            margin: 0 0 18px;
            line-height: 1.3;
        }
        .guarantee-coverage__col ul {
            margin: 0;
            padding-left: 1.125rem;
            color: #262626;
            font-size: 0.9375rem;
            font-weight: 400;
            line-height: 1.55;
        }
        .guarantee-coverage__col li + li {
            margin-top: 12px;
        }
        .guarantee-steps-section {
            margin-bottom: 40px;
        }
        .guarantee-steps__heading {
            font-size: 1.375rem;
            font-weight: 700;
            color: #000;
            margin: 0 0 28px;
            letter-spacing: -0.02em;
            text-align: center;
        }
        .guarantee-steps {
            display: grid;
            grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr auto 1fr;
            align-items: center;
            gap: 0;
            margin-bottom: 24px;
        }
        .guarantee-step {
            padding: 0 6px;
            background: transparent;
            border-radius: 0;
            border: none;
            box-sizing: border-box;
            text-align: center;
            min-width: 0;
        }
        .guarantee-step__head {
            display: flex;
            flex-wrap: wrap;
            align-items: baseline;
            justify-content: center;
            gap: 6px 8px;
            margin-bottom: 10px;
        }
        .guarantee-step__num {
            font-size: clamp(1.125rem, 2vw, 1.375rem);
            font-weight: 800;
            color: #000;
            letter-spacing: -0.02em;
            line-height: 1;
        }
        .guarantee-step__title {
            font-size: clamp(0.8125rem, 1.35vw, 0.9375rem);
            font-weight: 700;
            color: #000;
            margin: 0;
            line-height: 1.2;
        }
        .guarantee-step__text {
            font-size: 0.75rem;
            font-weight: 400;
            color: #525252;
            line-height: 1.45;
            margin: 0 auto;
            max-width: 11.5rem;
        }
        .guarantee-steps__arrow {
            display: flex;
            align-items: center;
            justify-content: center;
            color: #d4d4d4;
            font-size: 1rem;
            font-weight: 400;
            padding: 0 2px;
            user-select: none;
            line-height: 1;
        }
        .guarantee-shipping-note {
            padding: 14px 18px;
            background: #f5f5f5;
            border-radius: 0;
            font-size: 0.875rem;
            font-weight: 400;
            color: #404040;
            line-height: 1.55;
            margin-bottom: 48px;
        }
        .guarantee-faq {
            margin-bottom: 40px;
        }
        .guarantee-faq__title {
            font-size: 1.375rem;
            font-weight: 700;
            color: #000;
            margin: 0 0 20px;
            letter-spacing: -0.02em;
            text-align: center;
        }
        .guarantee-faq details {
            border-bottom: 1px solid #ebebeb;
        }
        .guarantee-faq summary {
            list-style: none;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            padding: 18px 0;
            font-size: 1rem;
            font-weight: 500;
            color: #000;
        }
        .guarantee-faq summary::-webkit-details-marker {
            display: none;
        }
        .guarantee-faq summary::after {
            content: '';
            flex-shrink: 0;
            width: 0;
            height: 0;
            border-left: 5px solid transparent;
            border-right: 5px solid transparent;
            border-top: 6px solid #a3a3a3;
            transition: transform 0.2s ease;
            margin-top: 2px;
        }
        .guarantee-faq details[open] summary::after {
            transform: rotate(180deg);
            margin-top: -2px;
        }
        .guarantee-faq .guarantee-faq__answer {
            padding: 0 0 18px;
            font-size: 0.9375rem;
            font-weight: 400;
            color: #4b5563;
            line-height: 1.55;
        }
        .guarantee-faq .guarantee-faq__answer p,
        .guarantee-faq .guarantee-faq__answer li {
            font-size: inherit;
            font-weight: inherit;
            color: inherit;
            line-height: inherit;
        }
        .guarantee-faq .guarantee-faq__answer p {
            margin: 0 0 0.75em;
        }
        .guarantee-faq .guarantee-faq__answer p:last-child {
            margin-bottom: 0;
        }
        .guarantee-faq .guarantee-faq__answer ul {
            margin: 0.5em 0 0;
            padding-left: 1.25em;
        }
        .guarantee-faq .guarantee-faq__answer li + li {
            margin-top: 0.35em;
        }
        .guarantee-faq .guarantee-faq__answer a {
            color: inherit;
            font-weight: inherit;
            text-decoration: underline;
            text-underline-offset: 2px;
        }
        .guarantee-faq .guarantee-faq__note {
            margin-top: 0.75em;
            font-size: inherit;
            font-weight: inherit;
            color: inherit;
            line-height: inherit;
        }
        .guarantee-faq .guarantee-faq__note--emphasis {
            margin-top: 1em;
            padding-top: 1em;
            border-top: 1px solid #e5e7eb;
            text-align: center;
        }
        @media (max-width: 1100px) {
            .guarantee-steps {
                display: flex;
                flex-direction: column;
                align-items: stretch;
                gap: 0;
            }
            .guarantee-steps__arrow {
                display: none;
            }
            .guarantee-step {
                padding: 14px 0;
                border-bottom: 1px solid #ebebeb;
            }
            .guarantee-step:last-of-type {
                border-bottom: none;
            }
            .guarantee-step__text {
                max-width: none;
            }
        }
        @media (max-width: 900px) {
            .guarantee-features {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 20px 16px;
            }
        }
        @media (max-width: 640px) {
            .guarantee-hero__highlights {
                grid-template-columns: 1fr;
                max-width: 420px;
            }
            .guarantee-hero__divider {
                width: 100%;
                height: 1px;
                min-height: 0;
            }
            .guarantee-features {
                grid-template-columns: 1fr;
            }
            .guarantee-coverage {
                grid-template-columns: 1fr;
            }
        }

        /* PDP: вкладки «Гарантия» и «Доставка» — без полей полноэкранной страницы */
        .guarantee-page--pdp-tab {
            max-width: none;
            margin: 0;
            padding: 0;
        }
        .pdp-embed--warr .guarantee-page--pdp-tab .guarantee-hero {
            margin-bottom: 28px;
        }
        .pdp-embed--warr .guarantee-page--pdp-tab .guarantee-features {
            margin-bottom: 28px;
        }
        .pdp-embed--warr .guarantee-page--pdp-tab .guarantee-coverage {
            margin-bottom: 28px;
        }
        .pdp-embed--warr .guarantee-page--pdp-tab .guarantee-steps-section {
            margin-bottom: 24px;
        }
        .pdp-embed--warr .guarantee-page--pdp-tab .guarantee-faq {
            margin-bottom: 12px;
        }
        .delivery-marketing-page--pdp-tab {
            max-width: none;
            margin: 0;
            padding: 0;
        }
        .store-faq-page--pdp-tab {
            max-width: none;
            margin: 0;
            padding: 0;
        }
        .pdp-embed--faq .store-faq-page--pdp-tab .guarantee-faq {
            margin-bottom: 0;
        }

        /* Страница «Доставка» (/delivery) */
        .delivery-marketing-page.info-static-page-wrap {
            max-width: 920px;
        }
        .delivery-marketing__title {
            font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            font-size: clamp(1.875rem, 4.5vw, 2.5rem);
            font-weight: 700;
            letter-spacing: -0.03em;
            color: #1a1a1a;
            margin: 0 0 14px;
            line-height: 1.12;
        }
        .delivery-marketing__lead {
            font-size: 1rem;
            font-weight: 400;
            color: #777;
            line-height: 1.55;
            margin: 0 0 8px;
            max-width: 640px;
        }
        .delivery-marketing__lead strong {
            font-weight: 700;
            color: #1a1a1a;
        }
        .delivery-marketing__list {
            margin: 0;
            padding: 0;
        }
        .delivery-marketing__item {
            display: grid;
            grid-template-columns: minmax(168px, 236px) 1fr;
            gap: 16px clamp(24px, 5vw, 56px);
            align-items: start;
            padding: 32px 0;
            margin: 0;
            border-top: 1px solid #ebebeb;
        }
        .delivery-marketing__item:first-child {
            border-top: none;
            padding-top: 28px;
        }
        .delivery-marketing__item-title {
            font-size: 1rem;
            font-weight: 700;
            color: #1a1a1a;
            margin: 0;
            line-height: 1.35;
        }
        .delivery-marketing__item-desc {
            margin: 0;
            font-size: 0.9375rem;
            font-weight: 400;
            color: #1a1a1a;
            line-height: 1.55;
        }
        .delivery-marketing__map-link {
            display: inline-block;
            margin-top: 6px;
            font-weight: 600;
            color: #1a1a1a;
            text-decoration: underline;
            text-underline-offset: 3px;
        }
        .delivery-marketing__map-link:hover {
            color: #000;
        }
        .delivery-marketing__footnote {
            border-top: 1px solid #ebebeb;
            padding-top: 22px;
            margin: 0;
            font-size: 0.9375rem;
            font-weight: 400;
            color: #1a1a1a;
            line-height: 1.55;
        }
        @media (max-width: 640px) {
            .delivery-marketing__item {
                grid-template-columns: 1fr;
                gap: 10px;
                padding: 26px 0;
            }
            .delivery-marketing__item:first-child {
                padding-top: 22px;
            }
        }

        /* Страница «Доставка и оплата»: шире колонки сетки карточек */
        .delivery-page-wrap .about-section > div[style*='grid-template-columns'] {
            grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)) !important;
        }

        /* About footer at bottom — тёмно-серый в нашем стиле */
        .about-footer {
            margin-top: 40px;
            background: #000;
            border-top: 1px solid rgba(255, 255, 255, 0.1);
            padding: 40px 30px;
            border-radius: 0;
            box-shadow: 0 -8px 28px rgba(0, 0, 0, 0.35);
            position: relative;
            overflow: hidden;
            color: #e5e7eb;
        }
        .about-footer.footer-deferred {
            display: none;
        }
        .about-footer::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 3px;
            background: linear-gradient(90deg, rgba(255,255,255,0.15) 0%, rgba(255,255,255,0.08) 50%, rgba(255,255,255,0.15) 100%);
        }
        .about-footer .grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
            gap: 30px;
            position: relative;
            z-index: 1;
        }
        .about-footer h4 {
            margin: 0 0 16px 0;
            font-size: 16px;
            font-weight: 700;
            color: #f9fafb;
            letter-spacing: -0.02em;
            position: relative;
            padding-bottom: 10px;
        }
        .about-footer h4::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 40px;
            height: 2px;
            background: linear-gradient(90deg, rgba(255,255,255,0.4), transparent);
            border-radius: 2px;
        }
        .about-footer .about-list {
            font-size: 14px;
            line-height: 1.8;
            list-style: none;
            padding-left: 0;
        }
        .about-footer .about-list li {
            margin-bottom: 10px;
            transition: transform 0.2s ease;
        }
        .about-footer .about-list li:hover {
            transform: translateX(4px);
        }
        .about-footer .about-kv {
            font-size: 14px;
            line-height: 1.8;
            color: #9ca3af;
        }
        .about-footer .about-kv div {
            margin-bottom: 8px;
        }
        .about-footer a {
            transition: all 0.2s ease;
            position: relative;
            display: inline-block;
        }
        .about-footer a:hover {
            color: #f9fafb !important;
            text-decoration: none;
            transform: translateX(2px);
        }
        .about-footer a[href*="maps"] svg {
            transition: transform 0.2s ease;
        }
        .about-footer a[href*="maps"]:hover svg {
            transform: scale(1.1);
        }
        .about-footer a[href*="t.me"] svg,
        .about-footer a[href*="mailto"] svg {
            transition: transform 0.2s ease;
        }
        .about-footer a[href*="t.me"]:hover svg,
        .about-footer a[href*="mailto"]:hover svg {
            transform: scale(1.1);
        }
        .about-footer .about-list a {
            color: #9ca3af;
            display: inline-block;
            padding: 2px 0;
        }
        .about-footer .about-list a:hover {
            color: #f9fafb !important;
            transform: translateX(2px);
        }
        .about-footer .about-list a::after {
            content: '→';
            margin-left: 6px;
            opacity: 0;
            transition: all 0.2s ease;
            display: inline-block;
        }
        .about-footer .about-list a:hover::after {
            opacity: 1;
            transform: translateX(2px);
        }
        .about-footer .about-list a.about-download-link {
            display: inline-flex;
            align-items: center;
            gap: 6px;
        }
        .about-footer .about-list a.about-download-link::after {
            content: none;
        }
        .about-footer .about-list a.about-download-link svg {
            flex-shrink: 0;
            width: 12px;
            height: 12px;
            opacity: 0.9;
            transition: transform 0.2s ease, opacity 0.2s ease;
        }
        .about-footer .about-list a.about-download-link:hover svg {
            transform: translateY(2px);
            opacity: 1;
        }
        .about-footer .phone-link {
            font-size: 20px;
            font-weight: 700;
            color: #f9fafb;
            text-decoration: none;
            display: inline-block;
            transition: all 0.2s ease;
            letter-spacing: 0.02em;
        }
        .about-footer .phone-link:hover {
            color: #e5e7eb;
            transform: scale(1.05);
        }
        .about-footer a[href*="t.me"],
        .about-footer a[href*="mailto"],
        .about-footer a[href*="maps"] {
            color: #f9fafb !important;
        }
        .about-footer a[href*="t.me"]:hover,
        .about-footer a[href*="mailto"]:hover,
        .about-footer a[href*="maps"]:hover {
            color: #ffffff !important;
        }
        
        .category-icon {
            font-size: 2.2rem;
            width: 160px;
            height: 160px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0 auto 6px;
            overflow: hidden;
            flex-shrink: 0;
        }
        .category-icon svg { width: 28px; height: 28px; display: inline-block; vertical-align: middle; }
        .category-icon img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            border-radius: 6px;
        }

        /* Whoop / PlayStation / Яндекс Станции — крупнее фото в плитке категории */
        .category-icon img.category-tile-brand-logo--featured {
            width: 100%;
            height: 100%;
            max-width: none;
            max-height: none;
            transform: scale(1.22);
            transform-origin: center center;
        }
        
        .category-name {
            font-weight: 600;
            color: #333;
            margin-bottom: 4px;
            font-size: 0.95rem;
            position: relative;
            z-index: 2;
            flex-shrink: 0;
        }
        
        .category-count {
            font-size: 0.85rem;
            color: #666;
        }
        
        /* Тумблер переключения режимов отображения */
        .view-mode-toggle {
            display: flex;
            align-items: center;
            justify-content: center;
            margin: 0;
            padding: 0;
            background: transparent;
            border-radius: 6px;
            gap: 3px;
        }
        
        .view-controls-container {
            display: flex;
            flex-direction: column;
            gap: 6px;
            margin: 8px 0;
        }
        
        .view-controls-row {
            display: flex;
            align-items: center;
            justify-content: flex-start;
            gap: 8px;
        }
        
        .view-controls-row .view-mode-toggle {
            margin-left: auto;
        }
        
        .sort-controls {
            display: flex;
            align-items: center;
            gap: 8px;
        }
        .sort-controls .search-page__sort-select-icon {
            flex-shrink: 0;
            margin-right: 0;
            stroke: #2d2d2d;
            color: #2d2d2d;
            width: 20px;
            height: 20px;
        }
        
        .view-mode-icon {
            width: 28px;
            height: 28px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 6px;
            cursor: pointer;
            transition: all 0.2s ease;
            background: transparent;
            color: #6b7280;
            border: none;
        }
        
        .view-mode-icon:hover {
            background: transparent;
            color: #374151;
        }
        
        .view-mode-icon.active {
            background: transparent;
            color: #3b82f6;
            border: none;
            box-shadow: none;
        }
        
        .view-mode-icon svg {
            width: 22px;
            height: 22px;
            stroke: currentColor;
            stroke-width: 2;
            stroke-linecap: round;
            stroke-linejoin: round;
            fill: none;
        }
        
        
        .products-grid {
            display: grid;
            grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
            gap: 0;
            border-top: 1px solid #eaeaea;
            border-left: 1px solid #eaeaea;
            box-sizing: border-box;
        }

        /* Групповой режим: 4 карточки в ряд на десктопе */
        .products-grid:not(.individual-mode) {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .products-grid .product-card,
        .products-grid .product-card-placeholder {
            border-radius: 0;
            border-right: 1px solid #eaeaea;
            border-bottom: 1px solid #eaeaea;
        }
        
        .products-grid.individual-mode {
            grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
        }
        
        /* Десктоп: в отдельном режиме при малом числе карточек (< 6) — горизонтальная карточка на всю ширину */
        @media (min-width: 1025px) {
            .products-grid.individual-mode.individual-mode-few {
                display: flex;
                flex-direction: column;
                align-items: center;
                gap: 0;
                grid-template-columns: unset;
                border-top: none;
                border-left: none;
            }

            .products-grid.individual-mode.individual-mode-few .individual-product-card {
                display: grid;
                grid-template-columns: 380px 1fr 180px;
                grid-template-rows: 1fr;
                align-items: stretch;
                min-height: 360px;
                height: 360px;
                width: 100%;
                max-width: 1000px;
                overflow: hidden;
                border-right: none;
                border-bottom: 1px solid #eaeaea;
            }

            .products-grid.individual-mode.individual-mode-few .individual-product-card:last-child {
                border-bottom: none;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .low-stock-badge {
                grid-column: 1;
                grid-row: 1;
            }
            /* Фото слева на всю высоту, центрировано по вертикали */
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-image {
                grid-column: 1;
                grid-row: 1;
                width: 100%;
                height: 100%;
                min-height: 360px;
                border-radius: 0;
                display: flex;
                align-items: center;
                justify-content: center;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-image .product-image-carousel {
                height: 100%;
                min-height: 360px;
                width: 100%;
                padding: 0;
                display: flex;
                align-items: center;
                justify-content: center;
            }
                        .products-grid.individual-mode.individual-mode-few .individual-product-card .product-image .product-image-carousel .product-img,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-image .product-image-carousel .image-slide-item img {
                height: 82%;
                min-height: 0;
                width: 82%;
                max-height: 100%;
                margin: 0;
                object-fit: contain;
                object-position: center 35%;
            }
            /* Центральная колонка: название, бренд, описание, характеристики */
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info {
                display: contents;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-main {
                grid-column: 2;
                grid-row: 1;
                display: flex;
                flex-direction: column;
                justify-content: center;
                gap: 0;
                padding: 18px 24px 18px 20px;
                min-width: 0;
                min-height: 304px;
                overflow: hidden;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-name {
                font-size: 1.1rem;
                font-weight: 600;
                color: #111827;
                margin: 0 0 2px 0;
                line-height: 1.25;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-brand {
                font-size: 0.75rem;
                color: #6b7280;
                margin: 0 0 8px 0;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-description-spoiler {
                margin-top: 0;
                margin-bottom: 0;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler {
                margin-top: -4px;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-description-spoiler .spoiler-header,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler .spoiler-header {
                display: none;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-description-spoiler .spoiler-content,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler .spoiler-content {
                display: block !important;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-description-spoiler::before {
                content: "Описание";
                display: block;
                font-size: 0.75rem;
                font-weight: 600;
                color: #333;
                margin-bottom: 2px;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-description-spoiler .product-description {
                font-size: 0.75rem;
                color: #4b5563;
                line-height: 1.35;
                min-height: 3.2em;
                overflow-y: auto;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler::before {
                content: "Характеристики";
                display: block;
                font-size: 0.75rem;
                font-weight: 600;
                color: #333;
                margin-bottom: 1px;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler .specifications {
                font-size: 0.7rem;
                color: #4b5563;
                line-height: 1.3;
                min-height: 6em;
                overflow-y: auto;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler .spec-item {
                padding: 1px 0;
                border-bottom: 1px solid #f3f4f6;
                column-gap: 6px;
                width: 100%;
                max-width: 100%;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler .spec-key,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler .spec-value {
                font-size: 0.7rem;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler .spec-value {
                text-align: right;
                justify-self: end;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler table {
                font-size: 0.7rem;
                border-collapse: collapse;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler td {
                padding: 1px 6px 1px 0;
                line-height: 1.25;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-specifications-spoiler tr:not(:last-child) td {
                border-bottom: 1px solid #f3f4f6;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .spec-item.spec-item-hidden {
                display: none !important;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .specs-more-hint {
                font-size: 0.72rem;
                color: #3b82f6;
                margin-top: 6px;
                font-weight: 500;
            }
            /* Правая колонка: цена + кнопка по центру по вертикали */
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar {
                grid-column: 3;
                grid-row: 1;
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                gap: 10px;
                padding: 20px 20px;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .product-price {
                margin: 0;
                display: flex;
                align-items: center;
                justify-content: center;
                gap: 8px;
                flex-wrap: wrap;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .current-price {
                font-size: 1.25rem;
                font-weight: 600;
                color: #111827;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .old-price {
                font-size: 0.9rem;
                color: #9ca3af;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn {
                padding: 12px 26px;
                font-size: 0.9375rem;
                min-width: 160px;
                border-radius: 20px;
                font-weight: 500;
                border: 1px solid #1f2937;
                background: #111827;
                color: #fff;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn:hover {
                background: #1f2937;
                border-color: #1f2937;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn > svg {
                width: 17px;
                height: 17px;
            }
        }
        
        /* Индивидуальный режим, карточек больше 6: цена в контенте карточки (как в grouped) */
        .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card {
            position: relative;
        }
        .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-info {
            padding-bottom: 72px;
            display: flex;
            flex-direction: column;
            gap: 8px;
        }
        .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-info-sidebar {
            position: static;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            gap: 6px;
            padding: 0;
        }
        .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-info-sidebar .product-price {
            justify-content: flex-start !important;
            text-align: left;
        }
        .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .add-to-cart-btn {
            position: absolute;
        }
        /* Поисковая выдача: кнопка "В корзину" справа */
        .products-grid.search-results-grid .individual-product-card .product-info-sidebar {
            align-items: flex-start;
        }
        .products-grid.search-results-grid .individual-product-card .product-info-sidebar .product-price {
            justify-content: flex-start !important;
            text-align: left;
        }
        .products-grid.search-results-grid .individual-product-card .product-info-sidebar .add-to-cart-btn {
            align-self: flex-start;
            margin-left: 0;
            margin-right: auto;
        }
        .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-specifications-spoiler {
            margin-bottom: 25px;
        }
        /* Резервируем высоту под характеристики, чтобы карточка не «прорастала» после загрузки */
        .products-grid.individual-mode .individual-product-card .product-specifications-spoiler .spoiler-content,
        .products-grid.individual-mode .individual-product-card .product-specifications-spoiler .specifications {
            min-height: 5.5em;
        }
        
        /* Мобильная версия индивидуального режима: цена и кнопка «В корзину» по центру */
        @media (max-width: 1024px) {
            .products-grid.individual-mode .individual-product-card .product-info-sidebar {
                left: 50%;
                right: auto;
                transform: translateX(-50%);
                align-items: center;
            }
            /* individual-mode-few: мобильная раскладка + центрирование sidebar */
            .products-grid.individual-mode.individual-mode-few .individual-product-card {
                display: flex !important;
                flex-direction: column;
                min-height: 0;
                height: 100%;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info {
                display: flex !important;
                flex-direction: column !important;
                flex: 1 1 auto !important;
                min-height: 0 !important;
                padding: 12px 16px;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-main {
                display: block !important;
                padding: 0;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar {
                position: static !important;
                left: auto !important;
                right: auto !important;
                transform: none !important;
                display: flex !important;
                flex-direction: column !important;
                align-items: center !important;
                justify-content: center !important;
                width: 100%;
                padding: 0 16px 16px;
                margin-top: auto !important;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .product-price {
                justify-content: center !important;
                width: 100%;
                text-align: center;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn {
                align-self: center;
            }
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar {
                left: auto !important;
                right: 10px !important;
                transform: none !important;
                align-items: flex-end !important;
            }
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar {
                position: static !important;
                right: auto !important;
                width: 100%;
                padding: 0 16px 16px;
                align-items: flex-end !important;
            }
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .product-price {
                justify-content: flex-end !important;
                text-align: right;
            }
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn {
                align-self: flex-end !important;
                margin-left: auto !important;
                margin-right: 0 !important;
            }
            /* Поиск: финальный override — кнопка "В корзину" всегда справа */
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar {
                display: flex !important;
                flex-direction: column !important;
                align-items: flex-end !important;
            }
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn {
                align-self: flex-end !important;
                margin-left: auto !important;
                margin-right: 0 !important;
            }
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn {
                align-self: flex-end !important;
                margin-left: auto !important;
                margin-right: 0 !important;
            }
            /* Поиск на мобиле: «Нет в наличии» по центру карточки */
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .product-price.product-price--out-of-stock,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .product-price.product-price--out-of-stock {
                justify-content: center !important;
                align-items: center !important;
                text-align: center !important;
                width: 100%;
            }
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .product-price.product-price--out-of-stock .price-out-of-stock,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .product-price.product-price--out-of-stock .price-out-of-stock {
                display: block;
                width: 100%;
                text-align: center;
            }
            /* Зачёркнутая + текущая: сайдбар на всю ширину, обе цены одним блоком по центру */
            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar:has(.product-price-with-discount) {
                align-items: stretch !important;
            }
            /* Цена как в групповом режиме (.product-card .product-info .product-price), по центру ширины карточки */
            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price {
                flex-wrap: nowrap !important;
                align-items: baseline !important;
                gap: 6px !important;
                justify-content: center !important;
                min-width: 0;
                margin-bottom: 10px;
                width: 100%;
                text-align: center;
            }
            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price .current-price {
                font-size: 1.4rem;
                font-weight: 400;
                color: #000;
                flex-shrink: 0;
                line-height: 1.2;
            }
            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price .old-price {
                font-size: 1rem;
                flex: 0 1 auto;
                min-width: 0;
                white-space: nowrap;
                overflow: visible;
                text-overflow: clip;
                line-height: 1.2;
                color: #999;
                text-decoration: line-through;
            }
            /* Со скидкой: строка текущая + зачёркнутая — компактная ширина, по центру карточки */
            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price.product-price-with-discount {
                flex-direction: row;
                flex-wrap: nowrap !important;
                align-items: baseline !important;
                justify-content: center !important;
                text-align: center;
                margin-left: 0;
            }
            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price.product-price-with-discount .product-price-row {
                display: flex;
                justify-content: center;
                align-items: baseline;
                width: fit-content;
                max-width: 100%;
                margin-inline: auto;
                gap: 6px;
                flex-wrap: nowrap;
                min-width: 0;
                flex: 0 0 auto;
            }
            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price.product-price-with-discount .product-price-row .current-price {
                order: 1;
                font-size: 1.4rem;
                font-weight: 400;
                color: #000;
                flex-shrink: 0;
                white-space: nowrap;
                line-height: 1.2;
            }
            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price.product-price-with-discount .product-price-row .old-price {
                order: 2;
                flex: 0 1 auto;
                min-width: 0;
                white-space: nowrap;
                overflow: visible;
                text-overflow: clip;
                text-decoration: line-through;
                font-size: 1rem;
                line-height: 1.2;
                color: #999;
            }
            .products-grid.individual-mode .individual-product-card .product-info-sidebar .product-price .discount {
                position: absolute;
                top: 12px;
                right: 12px;
                z-index: 4;
                display: block !important;
                margin: 0;
                padding: 3px 8px;
                border-radius: 0;
                font-size: 11px;
                font-weight: 600;
                font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
                color: #fff !important;
                background: linear-gradient(135deg, #ff3b30 0%, #ff2d55 100%);
                box-shadow: none;
                line-height: 1.2;
                pointer-events: none;
            }
            
            /* «В корзину» в каталоге на мобиле — см. также общие стили .btn-add-to-cart-detail ниже по файлу */
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn {
                position: static !important;
                opacity: 1 !important;
                visibility: visible !important;
                pointer-events: auto !important;
                transform: none !important;
                width: 100% !important;
                max-width: none !important;
                min-width: 0 !important;
                margin: 10px 0 0 !important;
                padding: 14px 20px !important;
                min-height: 50px !important;
                border-radius: 12px !important;
                border: none !important;
                background: #2d2d2d !important;
                color: #fff !important;
                font-size: 1rem !important;
                font-weight: 700 !important;
                letter-spacing: 0.02em;
                box-shadow: 0 3px 14px rgba(45, 45, 45, 0.2);
            }
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn:hover,
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn:active {
                background: #1f1f1f !important;
                color: #fff !important;
            }
            .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-info {
                padding-bottom: 14px !important;
                display: flex !important;
                flex-direction: column !important;
                flex: 1 1 auto !important;
                min-height: 0 !important;
            }
            .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-info-sidebar {
                position: static !important;
                left: auto !important;
                right: auto !important;
                transform: none !important;
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                padding: 0 14px 16px;
                align-items: stretch !important;
                margin-top: auto !important;
            }
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn {
                align-self: stretch !important;
                width: 100% !important;
                max-width: none !important;
                min-height: 50px !important;
                margin-top: 4px !important;
                border-radius: 12px !important;
                border: none !important;
                background: #2d2d2d !important;
                color: #fff !important;
                font-weight: 700 !important;
                font-size: 1rem !important;
                box-shadow: 0 3px 14px rgba(45, 45, 45, 0.2);
            }
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar {
                align-items: stretch !important;
            }
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn {
                align-self: stretch !important;
                margin-left: 0 !important;
                margin-right: 0 !important;
                width: 100% !important;
            }
            /* Индивидуальный режим: блок с ценой и «В корзину» у нижнего края карточки */
            .products-grid.individual-mode {
                align-items: stretch;
            }
            .products-grid.individual-mode .individual-product-card .product-image {
                flex-shrink: 0;
            }
            .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card {
                display: flex !important;
                flex-direction: column;
                height: 100%;
                min-height: 0;
            }
            .products-grid.individual-mode .individual-product-card .product-info-sidebar {
                margin-top: auto !important;
            }
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar {
                margin-top: auto !important;
            }
            /* Групповой каталог (все категории + суперцены): кнопка «В корзину» прижата к низу карточки */
            .products-grid:not(.individual-mode) {
                align-items: stretch;
            }
            .products-grid:not(.individual-mode) .product-card {
                display: flex !important;
                flex-direction: column;
                height: 100%;
                min-height: 0;
            }
            .products-grid:not(.individual-mode) .product-card .product-image {
                flex-shrink: 0;
            }
            .products-grid:not(.individual-mode) .product-card .product-info {
                display: flex !important;
                flex-direction: column;
                flex: 1 1 auto;
                min-height: 0;
            }
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper {
                display: flex !important;
                justify-content: stretch !important;
                width: 100% !important;
                margin-top: auto !important;
                margin-bottom: 4px;
            }
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn {
                width: 100% !important;
                min-width: 0 !important;
                max-width: none !important;
                padding: 14px 18px !important;
                min-height: 50px !important;
                border-radius: 12px !important;
                border: none !important;
                background: #2d2d2d !important;
                color: #fff !important;
                font-size: 1rem !important;
                font-weight: 700 !important;
                box-shadow: 0 3px 14px rgba(45, 45, 45, 0.2);
            }
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn:hover {
                background: #1f1f1f !important;
                color: #fff !important;
            }
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn > svg,
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn > svg {
                display: none !important;
            }
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn.btn-product-inquiry,
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn.btn-product-inquiry {
                font-size: 0.8125rem !important;
                font-weight: 600 !important;
                padding: 12px 16px !important;
                letter-spacing: -0.03em !important;
            }
        }
        
        /* Десктоп: цены как было — центрированы, со скидкой */
        @media (min-width: 1025px) {
            .products-grid.individual-mode .individual-product-card .product-info-sidebar .product-price.product-price-with-discount .product-price-row {
                display: contents;
            }
        }
        
        @media (max-width: 1024px) {
            .products-grid.individual-mode .individual-product-card .product-specifications-spoiler {
                overflow-x: hidden;
                max-width: 100%;
            }
            .products-grid.individual-mode .individual-product-card .product-specifications-spoiler .spoiler-content,
            .products-grid.individual-mode .individual-product-card .product-specifications-spoiler .specifications {
                overflow-x: hidden;
                max-width: 100%;
                word-wrap: break-word;
                overflow-wrap: break-word;
            }
            .products-grid.individual-mode .individual-product-card .product-specifications-spoiler .spec-item {
                display: grid;
                grid-template-columns: minmax(100px, 46%) minmax(0, 1fr);
                align-items: baseline;
                column-gap: 10px;
                max-width: 100%;
                min-width: 0;
            }
            .products-grid.individual-mode .individual-product-card .product-specifications-spoiler .spec-key {
                min-width: 0;
                word-break: break-word;
                overflow-wrap: break-word;
            }
            .products-grid.individual-mode .individual-product-card .product-specifications-spoiler .spec-value {
                min-width: 0;
                word-break: break-word;
                overflow-wrap: break-word;
                text-align: right;
                justify-self: end;
                max-width: none;
            }
            .products-grid.individual-mode .individual-product-card .product-specifications-spoiler table {
                table-layout: fixed;
                width: 100%;
                max-width: 100%;
            }
            .products-grid.individual-mode .individual-product-card .product-specifications-spoiler td {
                word-break: break-word;
                overflow-wrap: break-word;
                max-width: 100%;
            }
        }
        
        /* Плавное появление карточек individual после загрузки описания/характеристик */
        .products-grid.individual-mode .individual-product-card.individual-card-reveal {
            opacity: 0;
            transition: opacity 0.4s ease-out;
        }
        .products-grid.individual-mode .individual-product-card.individual-card-reveal.individual-card-visible {
            opacity: 1;
        }
        /* Пустое пространство до загрузки карточек: резерв по высоте (класс ставится в JS в начале загрузки) */
        .products-grid.individual-cards-loading-area {
            min-height: 85vh;
        }
        .products-grid.individual-mode:has(.individual-card-reveal:not(.individual-card-visible)) {
            min-height: 85vh;
        }
        /* Футер скрыт через класс на body (ставится в JS), т.к. :has() не везде поддерживается */
        body.individual-cards-loading .about-footer {
            opacity: 0 !important;
            visibility: hidden !important;
            pointer-events: none;
            transition: opacity 0.3s ease, visibility 0.3s ease;
        }
        
        .products-grid.products-grid-loading {
            opacity: 0.65;
            pointer-events: none;
            transition: opacity 0.2s ease;
        }
        
        /* Плавное появление грида после смены level_1/level_2 — без моргания */
        .products-grid.products-grid-swap {
            opacity: 0;
            transition: opacity 0.15s ease-out;
        }
        
        /* Пагинация в индивидуальном режиме */
        .individual-pagination {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 6px;
            margin: 24px 0 32px;
            flex-wrap: wrap;
        }
        .individual-pagination .page-btn {
            min-width: 28px;
            height: 28px;
            padding: 0 8px;
            border: none;
            border-radius: 6px;
            background: transparent;
            font-size: 0.8125rem;
            font-weight: 500;
            color: #4b5563;
            cursor: pointer;
            transition: all 0.2s ease;
        }
        .individual-pagination .page-btn:hover:not(:disabled) {
            color: #1f2937;
            background: rgba(31, 41, 55, 0.08);
        }
        .individual-pagination .page-btn.active {
            background: linear-gradient(135deg, #1f2937 0%, #374151 100%);
            color: #f9fafb;
        }
        .individual-pagination .page-btn:disabled {
            opacity: 0.4;
            cursor: not-allowed;
        }
        .individual-pagination .page-ellipsis {
            padding: 0 2px;
            color: #9ca3af;
            font-size: 0.8125rem;
        }
        
        .products-grid.individual-mode .product-name {
            font-size: 1rem;
        }
        
        /* Селектор сортировки в стиле dropdown (иконка перед селектом) */
        .sort-controls {
            display: flex;
            align-items: center;
            justify-content: flex-start;
            gap: 8px;
            margin: 0;
            position: relative;
        }

        .hierarchy-filters .view-controls-container {
            margin: 0;
            background: transparent;
        }
        .hierarchy-filters .sort-controls:not(.sort-controls--catalog) {
            margin-left: 10px;
            margin-bottom: 10px;
        }
        
        .search-page__sort-select {
            position: relative;
            display: inline-block;
        }
        
        .search-page__sort-select-icon {
            width: 20px;
            height: 20px;
            margin-right: 0;
            stroke: #2d2d2d;
            color: #2d2d2d;
            flex-shrink: 0;
        }
        
        .dropdown-select {
            position: relative;
            display: inline-block;
            z-index: 1100;
        }
        
        .dropdown-select__toggle {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 6px;
            padding: 6px 10px;
            background: transparent;
            border: none;
            border-radius: 6px;
            font-size: 0.75rem;
            font-weight: 500;
            color: #2d2d2d;
            cursor: pointer;
            transition: all 0.2s ease;
            min-width: 150px;
            user-select: none;
        }
        
        .dropdown-select__toggle:hover {
            background: transparent;
            color: #3b82f6;
        }
        
        .dropdown-select__toggle.active {
            background: transparent;
            color: #3b82f6;
        }
        
        .dropdown-select__chevron {
            width: 16px;
            height: 16px;
            stroke: #6b7280;
            transition: transform 0.3s ease;
            flex-shrink: 0;
        }
        
        .dropdown-select__toggle.active .dropdown-select__chevron {
            transform: rotate(180deg);
        }
        
        .dropdown-select__menu {
            position: absolute;
            top: calc(100% + 4px);
            left: 0;
            right: 0;
            background: #fbfbfd;
            border: 1px solid #d8d8df;
            border-radius: 10px;
            box-shadow: 0 12px 28px rgba(17, 24, 39, 0.12);
            z-index: 1101;
            opacity: 0;
            visibility: hidden;
            transform: translateY(-10px);
            transition: all 0.2s ease;
            overflow: hidden;
            min-width: 150px;
            padding: 4px;
        }
        
        .dropdown-select__menu.show {
            opacity: 1;
            visibility: visible;
            transform: translateY(0);
        }
        
        .dropdown-select__option {
            padding: 9px 10px;
            font-size: 0.75rem;
            color: #1d1d1f;
            cursor: pointer;
            transition: background 0.15s ease, color 0.15s ease;
            display: flex;
            align-items: center;
            gap: 6px;
            border-radius: 7px;
        }
        
        .dropdown-select__option:hover {
            background: #eeeef2;
        }
        
        .dropdown-select__option.active {
            background: #e3e3e8;
            color: #111;
            font-weight: 600;
        }
        
        .dropdown-select__option-icon {
            width: 14px;
            height: 14px;
            stroke: currentColor;
            flex-shrink: 0;
        }
        
        .dropdown-overlay {
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            z-index: 1099;
            background: transparent;
            display: none;
        }
        
        .dropdown-overlay.show {
            display: block;
        }
        
        /* Стили для иерархических фильтров */
        .hierarchy-filters {
            margin: 0 0 20px 0;
            padding: 0;
            background: transparent;
            border: none;
            border-bottom: none;
            border-radius: 0;
            display: flex;
            flex-direction: column;
            gap: 0;
            box-shadow: none;
            opacity: 0;
            transform: translateY(-8px);
            transition: opacity 0.35s ease, transform 0.35s ease;
            position: relative;
            z-index: 1050;
        }
        .hierarchy-filters.visible {
            opacity: 1;
            transform: translateY(0);
        }
        .hierarchy-filters--catalog {
            margin: 0 0 24px 0;
            padding: 22px 0 0 0;
            border-top: 1px solid #eeeeee;
        }
        .hierarchy-filters--catalog.visible {
            transform: none;
        }
        
        /* Десктоп: шапка мобильных фильтров скрыта, тело всегда развёрнуто */
        .filters-mobile-header {
            display: none;
        }
        .filters-mobile-body {
            max-height: none;
            overflow: visible;
            visibility: visible;
        }
        
        /* Плавное выдвижение секции level_2 при выборе level_1 */
        .filter-group-level2 {
            overflow: hidden;
            max-height: 0;
            opacity: 0;
            margin-bottom: 0;
            transition: max-height 0.4s ease-out, opacity 0.25s ease 0.08s, margin-bottom 0.35s ease-out;
        }
        .filter-group-level2.expanded {
            max-height: 420px;
            opacity: 1;
            margin-bottom: 8px;
        }
        .filter-group-level2 .filter-btn {
            opacity: 0;
            transform: translateY(-6px);
            transition: opacity 0.32s ease, transform 0.32s ease;
        }
        .filter-group-level2.expanded .filter-btn {
            opacity: 1;
            transform: translateY(0);
        }
        .filter-group-level2.expanded .filter-btn:nth-child(1) { transition-delay: 0.05s; }
        .filter-group-level2.expanded .filter-btn:nth-child(2) { transition-delay: 0.08s; }
        .filter-group-level2.expanded .filter-btn:nth-child(3) { transition-delay: 0.11s; }
        .filter-group-level2.expanded .filter-btn:nth-child(4) { transition-delay: 0.14s; }
        .filter-group-level2.expanded .filter-btn:nth-child(5) { transition-delay: 0.17s; }
        .filter-group-level2.expanded .filter-btn:nth-child(6) { transition-delay: 0.2s; }
        .filter-group-level2.expanded .filter-btn:nth-child(7) { transition-delay: 0.23s; }
        .filter-group-level2.expanded .filter-btn:nth-child(8) { transition-delay: 0.26s; }
        .filter-group-level2.expanded .filter-btn:nth-child(9) { transition-delay: 0.29s; }
        .filter-group-level2.expanded .filter-btn:nth-child(10) { transition-delay: 0.32s; }
        .filter-group-level2.expanded .filter-btn:nth-child(n+11) { transition-delay: 0.35s; }
        
        .hierarchy-filter-section {
            margin-bottom: 0;
        }
        
        .hierarchy-filter-section > div:first-child {
            margin-bottom: 10px;
            padding-bottom: 8px;
            border-bottom: 2px solid #e5e7eb;
        }
        
        .hierarchy-filter-section > div:first-child svg {
            color: #2d2d2d;
        }
        
        .filter-group {
            margin-bottom: 8px;
        }
        
        .filter-group:last-child {
            margin-bottom: 0;
        }
        
        .filter-group h4 {
            margin: 0 0 6px 0;
            font-size: 11px;
            font-weight: 700;
            color: #6b7280;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }
        
        .filter-buttons {
            display: flex;
            flex-wrap: wrap;
            gap: 6px;
        }

        .hierarchy-filters .hierarchy-filter-section {
            margin: 0 0 16px 0;
        }
        .hierarchy-filters .filter-buttons {
            margin: 0;
            padding: 0;
            gap: 10px;
            justify-content: flex-start;
        }
        .hierarchy-filters .hierarchy-filter-section > div:first-child,
        .hierarchy-filters .hierarchy-filter-leading {
            display: none !important;
        }
        .view-controls-container--catalog {
            margin: 0 !important;
            width: 100%;
            gap: 0;
            background: transparent;
        }
        .hierarchy-filters .view-controls-container--catalog .catalog-filters-toolbar {
            border: none;
            box-shadow: none;
            padding: 6px 0 18px 0;
            margin: 0;
            background: transparent;
        }
        @media (min-width: 1025px) {
            .hierarchy-filters .view-controls-container--catalog .catalog-filters-toolbar {
                min-height: 48px;
                padding: 4px 0 20px 0;
            }
        }
        
        /* В верхнем hierarchy-filter-section после выбора level1 показываем только следующий уровень. */
        .hierarchy-filter-section:has(.filter-buttons-level2) .filter-group:has(> .filter-buttons-level1) {
            display: none;
        }
        
        .filter-btn {
            position: relative;
            padding: 6px 14px;
            background: #fafafa;
            border: 2px solid #e8e9ed;
            border-radius: 16px;
            font-size: 13px;
            font-weight: 500;
            color: #4b5563;
            cursor: pointer;
            transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease, padding 0.3s ease;
            white-space: nowrap;
            box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
        }
        .hierarchy-filters .filter-btn {
            background: #f2f2f5;
            border: none;
            border-radius: 10px;
            color: #3a3a3c;
            font-weight: 500;
            font-size: 16px;
            line-height: 1.25;
            box-shadow: none;
            padding: 12px 22px;
        }
        .hierarchy-filters .filter-btn:hover {
            background: #e9e9ed;
            border: none;
            color: #1d1d1f;
            transform: none;
            box-shadow: none;
        }
        .hierarchy-filters .filter-btn.active {
            padding-right: 32px;
            background: #e4e4e9;
            border: none;
            color: #1d1d1f;
            font-weight: 600;
            box-shadow: none;
        }
        .hierarchy-filters .filter-btn.active .filter-btn-close {
            background: rgba(0,0,0,0.08);
        }
        .hierarchy-filters .filter-btn.active .filter-btn-close:hover {
            background: rgba(0,0,0,0.14);
        }
        .hierarchy-filters .filter-btn.active .filter-btn-close svg {
            stroke: #3a3a3c;
        }
        
        .filter-btn:hover {
            background: #f3f4f6;
            border-color: #d1d5db;
            color: #374151;
            transform: translateY(-0.5px);
            box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
        }
        
        .filter-btn.active {
            padding-right: 28px;
            background: #eceef1;
            border-color: #c5c9d1;
            color: #1f2937;
            box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
            font-weight: 600;
        }
        
        .filter-btn-close {
            position: absolute;
            top: 50%;
            right: 4px;
            width: 16px;
            height: 16px;
            transform: translateY(-50%) scale(0.85);
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            opacity: 0;
            border-radius: 50%;
            background: rgba(255,255,255,0.25);
            transition: opacity 0.25s ease, background 0.25s ease, transform 0.25s ease;
            pointer-events: none;
        }
        
        .filter-btn.active .filter-btn-close {
            opacity: 0.85;
            transform: translateY(-50%) scale(1);
            pointer-events: auto;
            background: rgba(0, 0, 0, 0.1);
        }
        .filter-btn.active .filter-btn-close:hover {
            background: rgba(0, 0, 0, 0.16);
        }

        .search-level2-toggle-text {
            padding: 0;
            border: none;
            background: transparent;
            margin-left: 14px;
            margin-top: 6px;
            color: #6b7280;
            font-size: 14px;
            font-weight: 500;
            cursor: pointer;
            line-height: 1.2;
        }
        @media (hover: hover) and (pointer: fine) {
            .search-level2-toggle-text:hover {
                color: #374151;
                text-decoration: underline;
            }
        }
        
        .filter-btn-close:hover {
            opacity: 1;
            background: rgba(255,255,255,0.4);
        }
        
        .filter-btn-close svg {
            width: 10px;
            height: 10px;
        }
        
        /* Стили для индикатора загрузки товаров */
        .loading-products {
            text-align: center;
            padding: 40px 20px;
        }
        /* Пустое место под 6 карточек пока грузятся товары (прозрачные) */
        .product-card-placeholder {
            min-height: 380px;
            background: transparent;
        }
        
        @keyframes pulse {
            from { opacity: 0.6; }
            to { opacity: 1; }
        }
        
        .product-card {
            background: var(--header-surface-bg, #ffffff);
            border-radius: 15px;
            overflow: hidden;
            box-shadow: none;
            transition: transform 0.3s ease;
            position: relative;
            opacity: 0;
            transform: translateY(20px);
            animation: fadeInUp 0.5s ease forwards;
        }
        
        .product-card.animate-in {
            animation: fadeInUp 0.5s ease forwards;
        }
        
        .product-card:hover {
            transform: translateY(-5px);
            box-shadow: none;
        }
        
        /* Отключаем кликабельность карточек товаров на мобильных устройствах */
        @media screen and (max-width: 1024px) {
            .product-card {
                pointer-events: none;
            }
            
            .product-card * {
                pointer-events: auto;
            }
            
            /* Отключаем hover эффект на мобильных */
            .product-card:hover {
                transform: none;
                box-shadow: none;
            }
            
            /* Whoop и PlayStation (Sony): цены и «В корзину» по центру */
            .product-card[data-brand="Whoop"] .product-price,
            .product-card[data-brand="Sony"] .product-price {
                justify-content: center;
            }
            .product-card[data-brand="Whoop"] .add-to-cart-wrapper,
            .product-card[data-brand="Sony"] .add-to-cart-wrapper {
                justify-content: center !important;
            }

            /* Варианты: компенсация padding .product-info + небольшой отступ от левого края */
            .products-grid .product-card .product-variants {
                margin-left: calc(-1 * var(--card-info-padding, 12px));
                margin-right: calc(-1 * var(--card-info-padding, 12px));
                width: calc(100% + 2 * var(--card-info-padding, 12px));
                max-width: none;
                box-sizing: border-box;
                padding-left: calc(var(--card-info-padding, 12px) + 6px);
                padding-right: var(--card-info-padding, 12px);
            }

            /* Кнопки вариантов в карточках каталога на мобиле (не PDP) */
            .products-grid .product-card .product-variants .variant-group label {
                font-size: 0.8125rem;
                margin-bottom: 5px;
            }
            .products-grid .product-card .product-variants .variant-buttons {
                gap: 8px;
                flex-wrap: wrap;
                overflow-x: visible;
                overflow-y: visible;
            }
            .products-grid .product-card .product-variants .variant-buttons:has(.color-btn) {
                gap: 10px;
                padding: 4px 2px 4px 0;
            }
            .products-grid .product-card .product-variants .variant-buttons .variant-btn:not(.color-btn) {
                padding: 8px 13px;
                font-size: 0.875rem;
                min-height: 34px;
                border-radius: 5px;
                line-height: 1.2;
            }
            .products-grid .product-card .product-variants .variant-buttons .variant-btn:not(.color-btn).active {
                padding: 7px 12px;
            }
            .products-grid .product-card .product-variants .variant-buttons .variant-btn.color-btn {
                width: 30px !important;
                height: 30px !important;
                min-width: 30px !important;
            }
            .products-grid .product-card .product-variants .variant-buttons .variant-btn.color-btn:not(.active) {
                border-width: 2px !important;
            }
            .products-grid .product-card .product-variants .variant-buttons .variant-btn.color-btn.active {
                box-shadow: 0 0 0 2px #ffffff, 0 0 0 3px #111111 !important;
            }
            .products-grid .product-card .variant-buttons .variant-btn.color-btn:first-child {
                margin: 0;
            }
        }

        /* Мобилы: компактнее кнопки вариантов только в каталоге (.product-variants); PDP без изменений — стили PDP2 как на десктопе */
        @media (max-width: 1024px) {
            .variant-group label {
                font-size: 0.72rem;
                margin-bottom: 6px;
            }
            .product-variants .variant-buttons {
                gap: 6px;
            }
            .product-variants .variant-buttons-color {
                gap: 7px;
            }
            .product-variants .variant-btn:not(.color-btn) {
                padding: 4px 9px;
                font-size: 0.69rem;
                border-radius: 6px;
            }
            .product-variants .variant-btn.active:not(.color-btn):not(.memory-btn):not(.sim-btn) {
                padding: 3px 8px;
            }
            .product-variants .variant-btn.memory-btn.active,
            .product-variants .variant-btn.sim-btn.active {
                padding: 3px 8px;
            }
            .product-variants .variant-btn.color-btn,
            .product-variants .variant-btn.color-btn[data-dual-color="true"] {
                width: 22px !important;
                height: 22px !important;
                min-width: 22px !important;
                border-width: 1px !important;
            }
            .product-variants .variant-button-color:not([data-dual-color="true"]),
            .product-variants .variant-button-color[data-dual-color="true"] {
                width: 22px !important;
                height: 22px !important;
                min-width: 22px !important;
            }
        }

        /* Десктоп: «В корзину» — широкая розовая кнопка снизу, только при наведении (как на референсе) */
        @media (min-width: 1025px) {
            /* Ровная сетка каталога: одна высота карточек в ряду (кнопка absolute — не влияет на высоту) */
            .products-grid:not(.individual-mode) {
                align-items: stretch;
            }

            .products-grid.individual-mode:not(.individual-mode-few) {
                align-items: start;
            }

            /* Кнопка вне потока — высота карточки в сетке не меняется, ряды снизу не дёргаются */
            .products-grid:not(.individual-mode) .product-card {
                display: flex;
                flex-direction: column;
                overflow: visible;
                height: 100%;
                min-height: 0;
            }

            .products-grid:not(.individual-mode) .product-card .product-info {
                display: flex;
                flex-direction: column;
                flex: 1 1 auto;
                min-height: 0;
            }

            .products-grid:not(.individual-mode) .product-card .product-name {
                display: -webkit-box;
                -webkit-line-clamp: 2;
                -webkit-box-orient: vertical;
                overflow: hidden;
            }

            .products-grid .product-card .product-info .product-price {
                margin-bottom: 0;
            }

            .products-grid.individual-mode .individual-product-card .product-info-sidebar .product-price {
                margin-bottom: 4px;
            }

            /* Варианты шире внутри карточки каталога: на всю ширину между боками (как на мобиле) */
            .products-grid .product-card .product-variants {
                margin-top: 0;
                margin-left: -20px;
                margin-right: -20px;
                width: calc(100% + 40px);
                max-width: none;
                box-sizing: border-box;
                padding-left: 20px;
                padding-right: 20px;
            }

            /* max-height у absolute-блока не участвует в высоте ячейки grid — ряды не прыгают */
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper {
                display: flex !important;
                justify-content: stretch;
                position: absolute;
                left: 0;
                right: 0;
                bottom: 0;
                width: 100%;
                margin: 0;
                z-index: 5;
                max-height: 0;
                opacity: 0;
                visibility: hidden;
                overflow: hidden;
                pointer-events: none;
                transition: max-height 0.28s ease, opacity 0.2s ease, visibility 0.2s ease;
            }

            .products-grid:not(.individual-mode) .product-card:hover .add-to-cart-wrapper,
            .products-grid:not(.individual-mode) .product-card:has(.add-to-cart-btn:focus-visible) .add-to-cart-wrapper {
                max-height: 56px;
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
            }

            /* Пока показываем «добавлено», не скрываем кнопку при уходе курсора / потере hover */
            .products-grid:not(.individual-mode) .product-card.product-card--cart-feedback .add-to-cart-wrapper {
                max-height: 56px;
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
                overflow: visible;
            }

            .products-grid.individual-mode .individual-product-card.product-card--cart-feedback .add-to-cart-btn,
            .products-grid.individual-mode.individual-mode-few .individual-product-card.product-card--cart-feedback .product-info-sidebar .add-to-cart-btn {
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
                transform: translateY(0);
            }

            .products-grid:not(.individual-mode) .product-card:hover,
            .products-grid:not(.individual-mode) .product-card:has(.add-to-cart-btn:focus-visible) {
                transform: translateY(-4px);
                box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
                z-index: 25;
            }

            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn {
                width: 100%;
                min-width: 0;
                max-width: none;
                justify-content: center;
                padding: 14px 16px;
                font-size: 0.9375rem;
                font-weight: 600;
                font-family: inherit;
                letter-spacing: 0.01em;
                border-radius: 0;
                border: none;
                background: #111111;
                color: #ffffff;
                box-shadow: none;
                transition: background 0.2s ease, color 0.2s ease;
            }

            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn:hover {
                background: #1a1a1a;
                color: #ffffff;
                border: none;
            }

            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn:active {
                background: #0a0a0a;
                color: #ffffff;
            }

            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn > svg {
                display: none;
            }

            .products-grid.individual-mode .individual-product-card {
                position: relative;
                display: flex;
                flex-direction: column;
                height: 100%;
            }

            .products-grid.individual-mode:not(.individual-mode-few) {
                grid-template-columns: repeat(4, minmax(0, 1fr));
                align-items: stretch;
            }

            .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card:hover,
            .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card:has(.add-to-cart-btn:focus-visible) {
                z-index: 25;
                box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
            }

            .products-grid.individual-mode.individual-mode-few .individual-product-card:hover,
            .products-grid.individual-mode.individual-mode-few .individual-product-card:has(.add-to-cart-btn:focus-visible) {
                z-index: 25;
                box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12);
            }

            .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-info {
                padding-bottom: 45px;
                display: flex;
                flex-direction: column;
                gap: 8px;
                flex: 1 1 auto;
                min-height: 142px;
            }

            .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-info-main {
                min-height: 64px;
            }

            .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-name {
                display: -webkit-box;
                -webkit-box-orient: vertical;
                -webkit-line-clamp: 2;
                line-clamp: 2;
                overflow: hidden;
                min-height: 2.6em;
                line-height: 1.3;
            }

            .products-grid.individual-mode .individual-product-card .add-to-cart-btn {
                position: absolute;
                left: 0;
                right: 0;
                bottom: 0;
                width: 100%;
                min-width: 0;
                max-width: none;
                margin: 0;
                justify-content: center;
                padding: 14px 16px;
                font-size: 0.9375rem;
                font-weight: 600;
                font-family: inherit;
                letter-spacing: 0.01em;
                border-radius: 0;
                border: none;
                background: #111111;
                color: #ffffff;
                box-shadow: none;
                z-index: 6;
                opacity: 0;
                visibility: hidden;
                pointer-events: none;
                transform: translateY(12px);
                transition: opacity 0.22s ease, visibility 0.22s ease, transform 0.22s ease, background 0.2s ease, color 0.2s ease;
            }

            .products-grid.individual-mode .individual-product-card:hover .add-to-cart-btn,
            .products-grid.individual-mode .individual-product-card:has(.add-to-cart-btn:focus-visible) .add-to-cart-btn {
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
                transform: translateY(0);
            }

            .products-grid.individual-mode .individual-product-card .add-to-cart-btn:hover {
                background: #1a1a1a;
                color: #ffffff;
            }

            .products-grid.individual-mode .individual-product-card .add-to-cart-btn:active {
                background: #0a0a0a;
                color: #ffffff;
            }

            .products-grid.individual-mode .individual-product-card .add-to-cart-btn > svg {
                display: none;
            }

            .products-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-info-sidebar {
                position: static;
                bottom: auto;
                right: auto;
                align-items: flex-start;
            }

            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar {
                padding-bottom: 56px;
            }

            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn {
                position: absolute;
                left: 0;
                right: 0;
                bottom: 0;
                width: 100%;
                min-width: 0 !important;
                max-width: none;
                margin: 0;
                justify-content: center;
                padding: 14px 16px !important;
                font-size: 0.9375rem !important;
                font-weight: 600;
                font-family: inherit;
                letter-spacing: 0.01em;
                border-radius: 0 !important;
                border: none !important;
                background: #111111 !important;
                color: #ffffff !important;
                box-shadow: none;
                z-index: 6;
                opacity: 0;
                visibility: hidden;
                pointer-events: none;
                transform: translateY(12px);
                transition: opacity 0.22s ease, visibility 0.22s ease, transform 0.22s ease, background 0.2s ease, color 0.2s ease;
            }

            .products-grid.individual-mode.individual-mode-few .individual-product-card:hover .product-info-sidebar .add-to-cart-btn,
            .products-grid.individual-mode.individual-mode-few .individual-product-card:has(.add-to-cart-btn:focus-visible) .product-info-sidebar .add-to-cart-btn {
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
                transform: translateY(0);
            }

            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn:hover {
                background: #1a1a1a !important;
                color: #ffffff !important;
            }

            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn:active {
                background: #0a0a0a !important;
                color: #ffffff !important;
            }

            .products-grid.search-results-grid.individual-mode:not(.individual-mode-few) .individual-product-card .product-info-sidebar {
                bottom: auto;
            }

            /* «Оставить заявку» — финальный override (шире, текст влезает) */
            .products-grid .add-to-cart-btn.btn-product-inquiry,
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn.btn-product-inquiry,
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn.btn-product-inquiry,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry,
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry {
                width: 100% !important;
                min-width: 0 !important;
                max-width: 100% !important;
                box-sizing: border-box !important;
                font-size: 0.8125rem !important;
                font-weight: 600 !important;
                padding: 12px 16px !important;
                letter-spacing: -0.03em !important;
                line-height: 1.2 !important;
            }
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry {
                align-self: stretch !important;
                margin-left: 0 !important;
                margin-right: 0 !important;
            }
            .products-grid.individual-mode .individual-product-card .product-info-sidebar,
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar {
                width: 100% !important;
                max-width: 100% !important;
                align-items: stretch !important;
                box-sizing: border-box;
            }
        }
        
        .product-image {
            width: 100%;
            height: 300px;
            background: var(--header-surface-bg, #ffffff);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 3rem;
            color: #999;
        }
        
        .product-info {
            padding: 20px;
        }
        
        .product-name {
            font-size: 1.2rem;
            font-weight: 600;
            margin-bottom: 8px;
            color: #333;
        }
        
        .product-brand {
            color: #666;
            font-size: 0.9rem;
            margin-bottom: 10px;
        }
        
        .product-price {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-bottom: 10px;
        }
        
        .current-price {
            font-size: 1.4rem;
            font-weight: 400;
            color: #000;
        }
        
        .old-price {
            font-size: 1rem;
            color: #999;
            text-decoration: line-through;
        }
        
        .discount {
            background: #e74c3c;
            color: #333;
            padding: 2px 8px;
            border-radius: 10px;
            font-size: 0.8rem;
            font-weight: 600;
        }

        /* Метка "Нет в наличии" — рисуется на месте цены, когда stock = 0. */
        .price-out-of-stock {
            font-size: 1.1rem;
            font-weight: 500;
            color: #6b7280;
            line-height: 1.2;
            white-space: nowrap;
        }
        .product-card .product-info .product-price.product-price--out-of-stock {
            min-height: 1.7rem;
        }
        .product-card .product-info .product-price.product-price--out-of-stock .price-out-of-stock {
            font-size: 1.05rem;
        }
        .product-detail-price.product-detail-price--out-of-stock .price-out-of-stock--detail {
            font-size: 1.5rem;
            font-weight: 600;
            color: #6b7280;
        }
        .product-detail-page--pdp2 .product-detail-info .product-detail-price.product-detail-price--out-of-stock .price-main.price-out-of-stock {
            font-size: 1.6rem;
            font-weight: 600;
            color: #6b7280;
        }
        .mobile-search-product-card__price--out-of-stock .price-out-of-stock {
            font-size: 0.95rem;
        }

        /* Скидка в углу карточки каталога — как .home-discount-badge (суперцены); цена + зачёркнутая в одну строку */
        .product-card .product-info .product-price {
            flex-wrap: nowrap !important;
            align-items: baseline;
            gap: 6px;
            min-width: 0;
        }
        .product-card .product-info .product-price .current-price {
            font-size: 1.4rem;
            font-weight: 400;
            flex-shrink: 0;
            line-height: 1.2;
        }
        .product-card .product-info .product-price .old-price {
            font-size: 1rem;
            flex: 0 1 auto;
            min-width: 0;
            white-space: nowrap;
            overflow: visible;
            text-overflow: clip;
            line-height: 1.2;
        }
        .product-card .product-info .product-price .discount {
            position: absolute;
            top: 12px;
            right: 12px;
            z-index: 4;
            margin: 0;
            padding: 3px 8px;
            border-radius: 0;
            font-size: 11px;
            font-weight: 600;
            font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Helvetica Neue', sans-serif;
            color: #fff;
            background: linear-gradient(135deg, #ff3b30 0%, #ff2d55 100%);
            box-shadow: none;
            line-height: 1.2;
            pointer-events: none;
        }

        .product-card.individual-product-card .product-price.product-price-with-discount {
            flex-wrap: nowrap !important;
        }
        .product-card.individual-product-card .product-price-with-discount .product-price-row {
            display: flex;
            flex-wrap: nowrap;
            align-items: baseline;
            gap: 6px;
            min-width: 0;
            width: 100%;
        }
        .product-card.individual-product-card .product-price-with-discount .product-price-row .current-price {
            flex-shrink: 0;
            white-space: nowrap;
        }
        .product-card.individual-product-card .product-price-with-discount .product-price-row .old-price {
            flex: 0 1 auto;
            min-width: 0;
            white-space: nowrap;
            overflow: visible;
            text-overflow: clip;
            font-size: 1rem;
        }

        /* Детальная страница продукта */
        .product-detail-page {
            max-width: 1400px;
            margin: 0 auto;
            padding: 20px;
            width: 100%;
            box-sizing: border-box;
            overflow-x: hidden;
        }
        
        .product-detail-title {
            font-size: 1.875rem;
            font-weight: 500;
            margin-bottom: 30px;
            color: #111827;
            letter-spacing: -0.02em;
            font-family: 'Graphik-Medium-Cy', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
        }
        
        /* Логотип бренда в углу карусели — просто иконка */
        .product-detail-carousel-brand {
            position: absolute;
            top: 14px;
            right: 14px;
            z-index: 15;
            display: flex;
            align-items: center;
            justify-content: center;
            pointer-events: none;
        }
        
        .product-detail-carousel-brand img {
            width: auto;
            height: 24px;
            max-width: 36px;
            object-fit: contain;
        }
        
        .product-detail-carousel-brand .brand-name {
            font-size: 0.75rem;
            font-weight: 600;
            color: #374151;
            letter-spacing: 0.02em;
        }
        
        .product-detail-content {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 40px;
            margin-top: 20px;
        }
        
        @media (min-width: 1025px) {
            .product-detail-content {
                grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
                gap: 96px;
                align-items: start;
            }
            .product-detail-info {
                padding-left: 48px;
            }
            .product-detail-images {
                max-width: 100%;
            }
            .product-image-carousel-detail {
                max-width: 100%;
            }
            .product-thumbnails-carousel {
                max-height: 720px;
            }
            .product-images-container {
                gap: 28px;
            }
            .product-thumbnails-carousel + .product-image-carousel-detail {
                margin-left: 64px;
            }
        }
        
        .product-detail-images {
            display: flex;
            flex-direction: column;
            align-self: flex-start;
            width: 100%;
            max-width: 100%;
        }
        
        .product-detail-images-sticky {
            position: sticky;
            top: 20px;
            height: fit-content;
            width: 100%;
            flex-shrink: 0;
        }
        
        .product-images-container {
            display: flex;
            gap: 16px;
            align-items: flex-start;
        }
        
        .product-thumbnails-carousel {
            display: flex;
            flex-direction: column;
            gap: 12px;
            width: 85px;
            flex-shrink: 0;
            max-height: 500px;
            overflow-y: auto;
            overflow-x: hidden;
            padding-right: 8px;
            padding-left: 4px;
            padding-top: 4px;
            padding-bottom: 4px;
        }
        
        .product-thumbnails-carousel::-webkit-scrollbar {
            display: none;
        }
        
        .product-thumbnails-carousel {
            scrollbar-width: none; /* Firefox */
            -ms-overflow-style: none; /* IE and Edge */
        }
        
        .thumbnails-wrapper {
            display: flex;
            flex-direction: column;
            gap: 12px;
            scrollbar-width: none; /* Firefox */
            -ms-overflow-style: none; /* IE and Edge */
        }
        
        .thumbnails-wrapper::-webkit-scrollbar {
            display: none;
        }
        
        .thumbnail-item {
            width: 80px;
            height: 80px;
            border-radius: 8px;
            overflow: hidden;
            cursor: pointer;
            border: 2px solid transparent;
            transition: all 0.3s ease;
            background: var(--header-surface-bg, #ffffff);
            flex-shrink: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            box-sizing: border-box;
        }
        
        .thumbnail-item:hover {
            border-color: #2d2d2d;
            transform: scale(1.03);
        }
        
        .thumbnail-item.active {
            border-color: #2d2d2d;
            box-shadow: 0 2px 8px rgba(45, 45, 45, 0.3);
        }
        
        .thumbnail-item img {
            width: 100%;
            height: 100%;
            object-fit: contain;
            padding: 4px;
        }
        
        .product-image-carousel-detail {
            flex: 1;
        }
        
        .product-detail-images .top-specifications {
            margin-top: 20px;
        }
        
        /* Рекомендации на детальной странице */
        .product-detail-recommendations {
            margin-top: 40px;
            padding-top: 30px;
            padding-bottom: 30px;
            border-top: 1px solid rgba(229, 231, 235, 0.6);
            position: relative;
            width: 100%;
            max-width: 500px;
            min-height: 300px;
        }
        
        .product-detail-recommendations-title {
            font-size: 1.4rem;
            font-weight: 700;
            margin-bottom: 20px;
            color: #111827;
        }
        
        .product-detail-recommendations-list {
            position: relative;
        }
        
        .product-detail-recommendations-mobile .product-detail-recommendations-list {
            overflow: hidden;
        }
        
        .product-detail-recommendations-carousel {
            position: relative;
            width: 100%;
            padding: 0 60px;
            box-sizing: border-box;
        }
        
        .product-detail-recommendations-viewport {
            flex: 1;
            min-width: 0;
            overflow: hidden;
            width: 100%;
        }
        
        .product-detail-recommendations-carousel:has(.product-detail-recommendations-slide:only-child) .product-detail-recommendations-nav {
            display: none;
        }
        
        /* Как .home-recommendations-nav (бестселлеры) */
        .product-detail-recommendations-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            z-index: 10;
            flex-shrink: 0;
            width: 48px;
            height: 48px;
            padding: 0;
            border-radius: 50%;
            background: #fff;
            border: 1px solid rgba(17, 24, 39, 0.1);
            color: #111827;
            font-size: 0;
            line-height: 0;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
            transition: all 0.3s ease;
        }
        
        .product-detail-recommendations-nav--prev {
            left: 0;
        }
        
        .product-detail-recommendations-nav--next {
            right: 0;
        }
        
        .product-detail-recommendations-nav svg {
            width: 20px;
            height: 20px;
            stroke: currentColor;
            stroke-width: 2;
            stroke-linecap: round;
            stroke-linejoin: round;
            fill: none;
        }
        
        .product-detail-recommendations-nav:hover:not(:disabled) {
            background: #f9fafb;
            border-color: rgba(17, 24, 39, 0.2);
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
        }
        
        .product-detail-recommendations-nav:disabled {
            opacity: 0.3;
            cursor: not-allowed;
        }
        
        @media (max-width: 1024px) {
            .product-detail-recommendations-carousel {
                padding: 0 52px;
            }
            .product-detail-recommendations-nav {
                width: 40px;
                height: 40px;
            }
        }
        
        @media (max-width: 640px) {
            .product-detail-recommendations-carousel {
                padding: 0 44px;
            }
            .product-detail-recommendations-nav {
                width: 36px;
                height: 36px;
            }
            .product-detail-recommendations-nav svg {
                width: 18px;
                height: 18px;
            }
        }
        
        .product-detail-recommendations-slider {
            display: flex;
            transition: transform 0.4s ease;
            width: 100%;
            margin-top: 5px;
        }
        
        .product-detail-recommendations-slide {
            min-width: 100%;
            width: 100%;
            flex-shrink: 0;
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 0;
            align-items: stretch;
        }
        
        .product-detail-recommendation-item {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 12px;
            padding: 16px;
            background: var(--header-surface-bg, #ffffff);
            border: 1px solid #2d2d2d;
            border-radius: 12px;
            cursor: pointer;
            transition: all 0.2s ease;
            height: 100%;
            min-height: 120px;
        }
        
        .product-detail-recommendation-item:hover {
            background: var(--header-surface-bg, #ffffff);
            border-color: #1a1a1a;
            transform: translateY(-2px);
            box-shadow: none;
        }
        
        .product-detail-recommendation-image {
            width: 170px;
            height: 170px;
            object-fit: contain;
            border-radius: 8px;
            flex-shrink: 0;
            background: var(--header-surface-bg, #ffffff);
            padding: 6px;
        }
        
        .product-detail-recommendation-info {
            display: flex;
            flex-direction: column;
            justify-content: flex-start;
            flex: 1;
            min-width: 0;
            gap: 4px;
            width: 100%;
            text-align: center;
        }
        
        .product-detail-recommendation-name {
            font-size: 0.95rem;
            font-weight: 500;
            color: #111827;
            overflow-wrap: anywhere;
            white-space: normal;
        }
        .product-detail-recommendation-name.product-detail-recommendation-name-multiline {
            white-space: normal;
            text-overflow: clip;
        }
        
        .product-detail-recommendation-specs {
            font-size: 0.75rem;
            color: #6b7280;
            overflow-wrap: anywhere;
            white-space: normal;
        }
        
        /* Как в карточках каталога: .product-card .product-info .product-price + .current-price / .old-price */
        .product-detail-recommendation-price {
            display: flex;
            flex-wrap: nowrap;
            align-items: baseline;
            gap: 6px;
            min-width: 0;
            justify-content: center;
            margin-top: auto;
            margin-bottom: 0;
        }
        .product-detail-recommendation-price .current-price {
            font-size: 1.4rem;
            font-weight: 400;
            line-height: 1.2;
            flex-shrink: 0;
            color: #000;
        }
        .product-detail-recommendation-price .old-price {
            font-size: 1rem;
            line-height: 1.2;
            flex: 0 1 auto;
            min-width: 0;
            white-space: nowrap;
            overflow: visible;
            text-overflow: clip;
            color: #999;
            text-decoration: line-through;
            font-weight: 400;
        }
        
        .product-detail-recommendations-dots {
            display: flex;
            justify-content: center;
            gap: 8px;
            margin-top: 12px;
        }
        
        .product-detail-recommendations-dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: rgba(17, 24, 39, 0.2);
            cursor: pointer;
            transition: all 0.2s ease;
        }
        
        .product-detail-recommendations-dot.active {
            background: #111827;
            width: 24px;
            border-radius: 4px;
        }
        
        @media (max-width: 640px) {
            /* Ограничиваем ширину страницы и контента */
            .container {
                padding: 10px;
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-detail-page {
                width: 100%;
                max-width: 100%;
                padding: 0;
                margin: 0;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-detail-carousel-brand {
                top: 10px;
                right: 10px;
            }
            
            .product-detail-carousel-brand img {
                height: 20px;
                max-width: 30px;
            }
            
            .product-detail-content {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-detail-info {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
                padding: 0;
            }
            
            .product-detail-info > * {
                max-width: 100%;
                box-sizing: border-box;
                word-wrap: break-word;
                overflow-wrap: break-word;
            }
            
            .btn-add-to-cart-detail {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
            }
            
            .product-description,
            .product-specifications,
            .product-description-spoiler,
            .product-specifications-spoiler,
            .top-specifications,
            table {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: auto;
            }

            .product-variants {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: visible;
            }
            
            .product-detail-images {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-images-container {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-image-carousel-detail {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
            }
            
            .product-images-container .product-image-carousel-detail {
                flex: 0 0 auto;
                min-height: auto;
                align-self: stretch;
            }
            
            .product-detail-recommendations {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-detail-recommendations-slider {
                width: 100%;
                display: flex;
            }
            
            .product-detail-recommendations-slide {
                grid-template-columns: repeat(2, 1fr);
                gap: 0;
                width: 100%;
                min-width: 100%;
                max-width: 100%;
                flex-shrink: 0;
                box-sizing: border-box;
            }
            
            /* Скрываем рекомендации в .product-detail-images на мобильной версии */
            .product-detail-images .product-detail-recommendations {
                display: none !important;
            }
            
            .product-detail-recommendations-mobile {
                margin-top: 12px;
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-detail-recommendations-list {
                width: 100%;
                max-width: 100%;
                overflow-x: hidden;
            }
            
            .product-detail-recommendations-slider {
                display: flex;
                transition: transform 0.4s ease;
                width: 100%;
            }
            
            .product-detail-recommendations-slide {
                min-width: 100%;
                width: 100%;
                flex-shrink: 0;
                display: grid;
                grid-template-columns: repeat(2, 1fr);
                gap: 0;
                align-items: stretch;
            }
            
            .product-detail-recommendation-item {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                height: 100%;
                min-height: 90px;
                padding: 8px;
                gap: 10px;
                border-radius: 8px;
            }
            
            .product-detail-recommendations-title {
                font-size: 1.1rem;
                margin-bottom: 12px;
            }
            
            .product-detail-recommendation-image {
                width: 170px;
                height: 170px;
                border-radius: 6px;
            }
            
            .product-detail-recommendation-name {
                font-size: 0.9rem;
                white-space: normal;
                line-height: 1.3;
            }
            
            .product-detail-recommendation-specs {
                font-size: 0.8rem;
            }
            
            
            .product-detail-recommendations-dots {
                margin-top: 6px;
            }
            
            .product-detail-recommendations-dot {
                width: 8px;
                height: 8px;
                background: rgba(17, 24, 39, 0.2);
            }
            
            .product-detail-recommendations-dot.active {
                width: 24px;
                border-radius: 4px;
            }
        }
        
        .product-detail-recommendations-mobile .product-detail-recommendations-slider {
            display: flex;
            align-items: stretch;
            transition: transform 0.3s ease;
        }

        /* Моб. PDP: воздушная сетка как рекомендации в корзине */
        @media (max-width: 1024px) {
            .product-detail-recommendations-mobile {
                margin-top: 20px;
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
            }

            .product-detail-recommendations-mobile .product-detail-recommendations-title {
                font-size: 1rem;
                font-weight: 600;
                margin-bottom: 12px;
                color: #111827;
            }

            .product-detail-recommendations-mobile .product-detail-recommendations-list {
                overflow: hidden;
            }

            .product-detail-recommendations-mobile .product-detail-recommendations-slide {
                min-width: 100%;
                width: 100%;
                flex-shrink: 0;
                display: grid;
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 0;
                align-items: stretch;
                border-left: 1px solid #eaeaea;
                border-top: 1px solid #eaeaea;
                border-radius: 6px;
                overflow: hidden;
                background: #fff;
                box-sizing: border-box;
            }

            .product-detail-recommendations-mobile .product-detail-recommendation-item {
                display: flex;
                flex-direction: column;
                align-items: stretch;
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                height: 100%;
                min-height: 0;
                padding: 12px;
                gap: 10px;
                border: none;
                border-right: 1px solid #eaeaea;
                border-bottom: 1px solid #eaeaea;
                border-radius: 0;
                background: #fff;
                box-shadow: none;
                transition: none;
            }

            .product-detail-recommendations-mobile .product-detail-recommendation-item:hover,
            .product-detail-recommendations-mobile .product-detail-recommendation-item:active {
                background: #fff;
                transform: none;
                box-shadow: none;
                border-right-color: #eaeaea;
                border-bottom-color: #eaeaea;
            }

            .product-detail-recommendations-mobile .product-detail-recommendation-image {
                width: 100%;
                max-width: 100%;
                height: 96px;
                max-height: 96px;
                padding: 4px;
                border-radius: 6px;
                box-sizing: border-box;
                object-fit: contain;
            }

            .product-detail-recommendations-mobile .product-detail-recommendation-info {
                text-align: left;
                align-items: flex-start;
                flex: 1 1 auto;
                min-height: 0;
            }

            .product-detail-recommendations-mobile .product-detail-recommendation-name {
                font-size: 0.875rem;
                font-weight: 500;
                line-height: 1.25;
                text-align: left;
                display: -webkit-box;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;
                overflow: hidden;
            }

            .product-detail-recommendations-mobile .product-detail-recommendation-name.product-detail-recommendation-name-multiline {
                display: block;
                -webkit-line-clamp: unset;
                overflow: visible;
            }

            .product-detail-recommendations-mobile .product-detail-recommendation-price {
                justify-content: flex-start;
                margin-top: auto;
            }

            .product-detail-recommendations-mobile .product-detail-recommendation-price .current-price {
                font-size: 1rem;
            }

            .product-detail-recommendations-mobile .product-detail-recommendation-price .old-price {
                font-size: 0.75rem;
            }

            .product-detail-recommendations-mobile .product-detail-recommendations-dots {
                display: flex;
                justify-content: center;
                gap: 8px;
                margin-top: 12px;
            }

            .product-detail-recommendations-mobile .product-detail-recommendations-dot {
                width: 8px;
                height: 8px;
                border-radius: 50%;
                background: rgba(17, 24, 39, 0.2);
            }

            .product-detail-recommendations-mobile .product-detail-recommendations-dot.active {
                background: #111827;
                width: 24px;
                border-radius: 4px;
            }
        }

        /* На десктопе скрываем мобильный блок (после «В корзину») */
        @media (min-width: 1025px) {
            .product-detail-recommendations-mobile {
                display: none !important;
            }
        }

        /* На мобиле/планшете скрываем дубликат в колонке с фото */
        @media (max-width: 1024px) {
            .product-detail-images .product-detail-recommendations {
                display: none !important;
            }
        }
        
        /* PDP: десктопный макет (как витрина) */
        .product-detail-page--pdp2 .product-detail-title--desktop-only {
            display: none;
        }
        .product-detail-page--pdp2 .product-detail-title--mobile-only {
            display: block;
        }
        .product-detail-brand {
            font-size: 0.8125rem;
            font-weight: 500;
            color: #6b7280;
            margin: 0 0 8px 0;
            letter-spacing: 0.02em;
        }
        .product-detail-availability {
            font-size: 0.9375rem;
            font-weight: 600;
            margin: 0 0 12px 0;
        }
        .product-detail-availability--ok {
            color: #15803d;
        }
        .product-detail-availability--low {
            color: #c2410c;
        }
        .product-detail-availability--out {
            color: #b91c1c;
        }
        .product-detail-info .product-detail-price .discount {
            background: #e53935;
            color: #fff;
            padding: 4px 10px;
            border-radius: 999px;
            font-size: 0.8125rem;
        }
        .product-detail-secondary-row {
            display: flex;
            flex-wrap: wrap;
            gap: 10px;
            margin-top: 12px;
        }
        .pdp-btn-ghost {
            flex: 1 1 calc(50% - 6px);
            min-height: 44px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            padding: 10px 14px;
            border: 1px solid #d1d5db;
            border-radius: 10px;
            background: #fff;
            color: #111827;
            font-size: 0.875rem;
            font-weight: 500;
            cursor: pointer;
            text-decoration: none;
            box-sizing: border-box;
            transition: border-color 0.2s ease, background 0.2s ease;
        }
        .pdp-btn-ghost:hover {
            border-color: #111827;
            background: #fafafa;
        }
        .product-detail-links--aux {
            margin-top: 12px;
        }
        .pdp-article {
            margin-top: 32px;
            width: 100%;
            max-width: 100%;
            box-sizing: border-box;
        }
        .pdp-faq-section {
            margin-top: 32px;
            width: 100%;
            max-width: 100%;
            box-sizing: border-box;
        }
        .pdp-faq-section-title {
            font-size: 1.5rem;
            font-weight: 600;
            line-height: 1.2;
            margin: 0 0 1.25rem 0;
            color: #000000;
            letter-spacing: -0.02em;
        }
        .pdp-faq-section .pdp-embed--faq {
            background: #ffffff;
            border: 1px solid #d2d2d7;
            border-radius: 12px;
            padding: 1.5rem 1.75rem 1.75rem;
            box-sizing: border-box;
        }
        .pdp-faq-section .store-faq-page--pdp-tab .guarantee-faq__title {
            display: none;
        }
        .pdp-tabs {
            display: flex;
            flex-wrap: wrap;
            align-items: flex-end;
            gap: 0.35rem 2.75rem;
            margin: 0 0 1.5rem 0;
            padding: 0;
        }
        .pdp-tab {
            appearance: none;
            -webkit-appearance: none;
            margin: 0;
            padding: 0 0 0.45rem 0;
            background: none;
            border: none;
            border-radius: 0;
            border-bottom: 3px solid transparent;
            box-shadow: none;
            color: #86868b;
            font: inherit;
            font-size: 0.9375rem;
            font-weight: 400;
            line-height: 1.2;
            letter-spacing: 0.01em;
            cursor: pointer;
            white-space: nowrap;
            transition: color 0.2s ease, border-color 0.2s ease, font-weight 0.15s ease;
        }
        .pdp-tab:hover {
            color: #424245;
        }
        .pdp-tab.is-active,
        .pdp-tab[aria-selected="true"] {
            color: #000000;
            font-weight: 600;
            border-bottom-color: #000000;
        }
        .pdp-tab.is-active:hover,
        .pdp-tab[aria-selected="true"]:hover {
            color: #000000;
        }
        .pdp-tab:focus-visible {
            outline: 2px solid #000000;
            outline-offset: 3px;
        }
        .pdp-panel-title {
            font-size: 1.5rem;
            font-weight: 600;
            line-height: 1.2;
            margin: 0 0 1.25rem 0;
            color: #000000;
            letter-spacing: -0.02em;
        }
        .pdp-panels {
            background: #ffffff;
            border: 1px solid #d2d2d7;
            border-radius: 12px;
            padding: 1.5rem 1.75rem 1.75rem;
            box-sizing: border-box;
        }
        .pdp-panels .pdp-panel[hidden] {
            display: none;
        }
        .pdp-compare-embed {
            max-width: 100%;
            overflow-x: auto;
        }
        .pdp-link-more {
            color: #2563eb;
            font-weight: 500;
        }
        .pdp-contacts-plain {
            display: flex;
            flex-direction: column;
            gap: 1rem;
            color: #374151;
            font-size: 0.9375rem;
            line-height: 1.45;
        }
        .pdp-contacts-plain__row {
            display: flex;
            align-items: flex-start;
            gap: 0.65rem;
        }
        .pdp-contacts-plain__row > svg,
        .pdp-contacts-plain__messenger-icon {
            flex-shrink: 0;
            width: 18px;
            height: 18px;
            margin-top: 0.1rem;
        }
        .pdp-contacts-plain__row > svg {
            color: #6b7280;
        }
        .pdp-contacts-plain__messenger-icon {
            object-fit: contain;
            display: block;
        }
        .pdp-contacts-plain__row a.pdp-link-more {
            text-decoration: none;
        }
        .pdp-contacts-plain__note {
            margin-top: 0.25rem;
            color: #6b7280;
            font-size: 0.8125rem;
        }
        .pdp-contacts-plain__map-link {
            display: inline-block;
            margin-top: 0.35rem;
        }
        .pdp-contacts-plain__map {
            width: 100%;
            margin-top: 0.75rem;
            border-radius: 10px;
            overflow: hidden;
            background: #f3f4f6;
        }
        .pdp-contacts-plain__map iframe {
            width: 100%;
            vertical-align: middle;
        }
        @media (max-width: 1024px) {
            .pdp-contacts-plain__map iframe {
                height: 240px !important;
            }
        }
        .reviews-top-combo__grid {
            display: grid;
            grid-template-columns: minmax(280px, 560px) minmax(240px, 1fr);
            gap: 28px;
            align-items: start;
        }
        .reviews-top-combo__market {
            display: flex;
            flex-direction: column;
            align-items: stretch;
            justify-content: flex-start;
            padding-top: 4px;
            min-width: 0;
        }
        .reviews-market-widget {
            display: block;
            position: relative;
            background: #fff;
            border: 1px solid rgba(0, 0, 0, 0.08);
            border-radius: 16px;
            padding: 20px 22px 18px;
            text-decoration: none;
            color: #000;
            box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
        }
        .reviews-market-widget__ym-label {
            position: absolute;
            top: 18px;
            right: 20px;
            font-family: 'YS Text', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
            font-size: 0.8125rem;
            font-weight: 500;
            line-height: 1.2;
            letter-spacing: -0.02em;
            color: #000;
            white-space: nowrap;
            pointer-events: none;
            z-index: 1;
        }
        .reviews-market-widget__head {
            display: flex;
            align-items: center;
            gap: 14px;
            margin-bottom: 20px;
            padding-right: 7.5rem;
            box-sizing: border-box;
        }
        .reviews-market-widget__logo {
            width: 48px;
            height: 48px;
            min-width: 48px;
            border-radius: 12px;
            background: #000;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
        }
        .reviews-market-widget__logo img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
        .reviews-market-widget__title {
            margin: 0;
            font-size: 1.375rem;
            font-weight: 700;
            line-height: 1.15;
            letter-spacing: -0.03em;
            color: #000;
        }
        .reviews-market-widget__stats-row {
            display: flex;
            flex-direction: row;
            align-items: flex-start;
            flex-wrap: wrap;
            gap: 20px 28px;
            padding-bottom: 18px;
            border-bottom: 1px solid rgba(0, 0, 0, 0.08);
        }
        .reviews-market-widget__score-col {
            flex: 0 0 auto;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            gap: 6px;
            min-width: 72px;
        }
        .reviews-market-widget__score-inline {
            display: flex;
            flex-direction: row;
            align-items: center;
            gap: 2px;
            font-size: 1.625rem;
            font-weight: 700;
            line-height: 1;
            letter-spacing: -0.04em;
            color: #000;
        }
        .reviews-market-widget__score-star {
            font-size: 1.35rem;
            line-height: 1;
            margin-right: 1px;
        }
        .reviews-market-widget__votes {
            font-size: 0.8125rem;
            color: #8b8b8b;
            font-weight: 400;
            line-height: 1.25;
            margin: 0;
        }
        .reviews-market-widget__dist {
            flex: 0 1 132px;
            min-width: 100px;
            display: flex;
            flex-direction: column;
            gap: 5px;
        }
        .reviews-market-widget__dist-row {
            display: flex;
            align-items: center;
            gap: 6px;
        }
        .reviews-market-widget__dist-label {
            flex: 0 0 44px;
            display: flex;
            justify-content: flex-end;
            gap: 0;
            color: #000;
        }
        .reviews-market-widget__dist-label svg {
            width: 7px;
            height: 7px;
            flex-shrink: 0;
        }
        .reviews-market-widget__dist-track {
            flex: 1;
            height: 5px;
            background: #ebebeb;
            border-radius: 3px;
            overflow: hidden;
            min-width: 0;
        }
        .reviews-market-widget__dist-fill {
            height: 100%;
            background: #000;
            border-radius: 3px;
            min-width: 0;
        }
        .reviews-market-widget__chips {
            display: flex;
            flex-direction: row;
            flex-wrap: wrap;
            align-items: flex-start;
            gap: 22px 32px;
            flex: 1 1 auto;
            min-width: 0;
        }
        .reviews-market-widget__chip {
            flex: 0 0 auto;
        }
        .reviews-market-widget__chip strong {
            display: block;
            font-size: 1.375rem;
            font-weight: 700;
            line-height: 1.15;
            letter-spacing: -0.03em;
            color: #000;
        }
        .reviews-market-widget__chip span {
            display: block;
            font-size: 0.8125rem;
            color: #8b8b8b;
            margin-top: 4px;
            line-height: 1.2;
        }
        .reviews-market-widget__hint {
            margin: 12px 0 0;
            font-size: 0.75rem;
            color: #8b8b8b;
            line-height: 1.35;
        }
        @media screen and (max-width: 520px) {
            .reviews-market-widget__stats-row {
                flex-direction: column;
                align-items: stretch;
                gap: 16px;
            }
            .reviews-market-widget__dist {
                flex: 1 1 auto;
                max-width: 220px;
            }
            .reviews-market-widget__chips {
                gap: 16px 24px;
            }
        }
        #pdpPanel-rev .pdp-embed--reviews {
            max-width: 100%;
        }
        @media screen and (max-width: 1024px) {
            .reviews-top-combo__grid {
                grid-template-columns: 1fr !important;
                gap: 24px !important;
            }
            .reviews-top-combo {
                padding: 20px 16px !important;
            }
            .reviews-yandex-widget-inner {
                height: min(480px, 42vh) !important;
                max-width: none !important;
            }
            #pdpPanel-rev .reviews-yandex-widget-inner {
                height: min(480px, 42vh) !important;
            }
        }
        .pdp-full-desc {
            margin: 0;
        }
        .pdp-rich {
            width: 100%;
        }
        .pdp-rich__section + .pdp-rich__section {
            margin-top: 48px;
        }
        .pdp-rich__card {
            display: flex;
            flex-direction: column;
        }
        .pdp-rich__card--lg {
            position: relative;
        }
        .pdp-rich__card--lg .pdp-rich__card-img {
            width: 100%;
            border-radius: 16px;
            object-fit: cover;
            display: block;
        }
        .pdp-rich__card-about {
            position: absolute;
            top: 0;
            left: 0;
            padding: 48px 24px;
            max-width: min(100%, 563px);
            box-sizing: border-box;
            color: #fff;
        }
        .pdp-rich__card--lg .pdp-rich__card-title {
            font-size: 30px;
            line-height: 1.1;
            font-weight: 600;
            margin: 0 0 16px;
            color: #fff;
        }
        .pdp-rich__card--lg .pdp-rich__card-text {
            font-size: 14px;
            line-height: 19px;
            margin: 0;
            color: #fff;
        }
        .pdp-rich__card-about--dark,
        .pdp-rich__card-about--dark .pdp-rich__card-title,
        .pdp-rich__card-about--dark .pdp-rich__card-text {
            color: #111827;
        }
        .pdp-rich__cards {
            display: grid;
            grid-template-columns: 1fr;
            gap: 48px 19px;
        }
        .pdp-rich__card--sm .pdp-rich__card-img {
            width: 100%;
            height: auto;
            display: block;
            margin-bottom: 16px;
        }
        .pdp-rich__card--sm .pdp-rich__card-title {
            font-size: 18px;
            font-weight: 600;
            line-height: 1.25;
            margin: 0 0 8px;
            color: #111827;
        }
        .pdp-rich__card--sm .pdp-rich__card-text {
            font-size: 14px;
            line-height: 19px;
            margin: 0;
            color: #374151;
        }
        @media (min-width: 640px) {
            .pdp-rich__cards {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
        }
        @media (min-width: 1025px) {
            .pdp-rich__section + .pdp-rich__section {
                margin-top: 64px;
            }
            .pdp-rich__card-about {
                padding: 80px 64px;
            }
            .pdp-rich__card--lg .pdp-rich__card-title {
                font-size: 38px;
                line-height: 34px;
            }
            .pdp-rich__cards {
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 78px 32px;
            }
            .pdp-rich__card--sm .pdp-rich__card-img {
                margin-bottom: 32px;
            }
            .pdp-rich__card--sm .pdp-rich__card-title {
                margin-bottom: 16px;
            }
        }
        .pdp-desc-expand-btn {
            display: none;
        }
        .pdp-fbt-title-desktop {
            display: none;
        }
        .pdp-fbt-title-mobile {
            display: block;
        }
        .product-detail-recommendations--fbt {
            max-width: 100% !important;
            margin-top: 36px;
        }
        /* Карусель; сетка слайда как .products-grid — общие top/left, у ячейки right/bottom */
        .product-detail-recommendations--fbt .product-detail-recommendations-slide {
            border-top: 1px solid #eaeaea;
            border-left: 1px solid #eaeaea;
            background: #fff;
            box-sizing: border-box;
        }
        .product-detail-recommendations--fbt .product-detail-recommendation-item {
            border-radius: 0 !important;
            border: none !important;
            border-right: 1px solid #eaeaea !important;
            border-bottom: 1px solid #eaeaea !important;
            background: #fff;
            box-shadow: none !important;
            transform: none !important;
            transition: none !important;
            align-items: stretch;
            margin: 0;
            cursor: pointer;
        }
        .product-detail-recommendations--fbt .product-detail-recommendation-item:hover,
        .product-detail-recommendations--fbt .product-detail-recommendation-item:focus,
        .product-detail-recommendations--fbt .product-detail-recommendation-item:focus-visible,
        .product-detail-recommendations--fbt .product-detail-recommendation-item:active {
            background: #fff !important;
            transform: none !important;
            box-shadow: none !important;
            border-right: 1px solid #eaeaea !important;
            border-bottom: 1px solid #eaeaea !important;
            outline: none;
        }
        .product-detail-recommendations--fbt .product-detail-recommendation-image {
            border-radius: 0 !important;
            width: 100%;
            max-width: none;
            aspect-ratio: 1 / 1;
            height: auto;
            max-height: none;
            object-fit: contain;
            box-sizing: border-box;
            padding: 10px 8px;
            margin: 0 auto;
            flex-shrink: 0;
        }
        .product-detail-recommendations--fbt .product-detail-recommendation-info {
            text-align: left;
            width: 100%;
            align-items: flex-start;
        }
        @media (max-width: 1024px) {
            .pdp-tabs {
                display: none !important;
            }
            .pdp-faq-section {
                margin-top: 24px;
            }
            .pdp-faq-section-title {
                font-size: 1rem;
                font-weight: 600;
                margin: 0;
                padding: 18px 0;
            }
            .pdp-faq-section .pdp-embed--faq {
                border: none;
                border-radius: 0;
                border-top: 1px solid #e5e7eb;
                padding: 0 0 18px;
                background: transparent;
            }
            .pdp-panels {
                border: none;
                border-radius: 0;
                padding: 0;
                background: transparent;
            }
            .pdp-panel {
                display: block !important;
                margin: 0;
                padding: 0;
                border-top: 1px solid #e5e7eb;
            }
            .pdp-panel:last-child {
                border-bottom: 1px solid #e5e7eb;
            }
            .pdp-panels .pdp-panel[hidden] {
                display: block !important;
            }
            .pdp-panel + .pdp-panel {
                margin-top: 0;
                padding-top: 0;
            }
            .pdp-panel-title {
                display: flex;
                align-items: center;
                justify-content: space-between;
                gap: 12px;
                margin: 0;
                padding: 18px 0;
                font-size: 1rem;
                font-weight: 600;
                line-height: 1.25;
                color: #000000;
                letter-spacing: 0;
                cursor: pointer;
                -webkit-tap-highlight-color: transparent;
            }
            .pdp-panel-title::after {
                content: '›';
                font-size: 1.25rem;
                font-weight: 400;
                line-height: 1;
                color: #000000;
                transition: transform 0.2s ease;
                flex-shrink: 0;
            }
            .pdp-panel.is-active .pdp-panel-title::after {
                transform: rotate(90deg);
            }
            .pdp-panel:not(.is-active) > :not(.pdp-panel-title) {
                display: none !important;
            }
            .pdp-panel.is-active > :not(.pdp-panel-title) {
                display: block;
                padding-bottom: 18px;
            }
            .pdp-desc-expand-btn {
                display: flex;
                align-items: center;
                justify-content: center;
                width: 100%;
                margin-top: 12px;
                padding: 16px 20px;
                min-height: 52px;
                box-sizing: border-box;
                border: none;
                border-radius: 10px;
                background: #111827;
                color: #ffffff;
                font: inherit;
                font-size: 0.9375rem;
                font-weight: 600;
                line-height: 1.25;
                text-align: center;
                cursor: pointer;
                -webkit-tap-highlight-color: transparent;
                transition: background-color 0.2s ease;
            }
            .pdp-desc-expand-btn:hover,
            .pdp-desc-expand-btn:active {
                background: #000000;
            }
            .pdp-desc-expand-btn[hidden] {
                display: none !important;
            }
            .pdp-desc-expand-btn:focus-visible {
                outline: 2px solid #111827;
                outline-offset: 2px;
            }
            .pdp-desc-mobile:not(.is-expanded) .product-detail-description {
                position: relative;
            }
            .pdp-desc-mobile:not(.is-expanded) .product-detail-description::after {
                content: '';
                position: absolute;
                left: 0;
                right: 0;
                bottom: 0;
                height: 3.5rem;
                background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #ffffff);
                pointer-events: none;
            }
            .pdp-desc-mobile:not(.is-expanded) .pdp-full-desc {
                display: -webkit-box;
                -webkit-box-orient: vertical;
                -webkit-line-clamp: 4;
                line-clamp: 4;
                overflow: hidden;
            }
            .pdp-desc-mobile:not(.is-expanded) .pdp-desc-collapsible {
                max-height: min(42vh, 320px);
                overflow: hidden;
                position: relative;
            }
            .pdp-desc-mobile:not(.is-expanded) .pdp-desc-collapsible::after {
                content: '';
                position: absolute;
                left: 0;
                right: 0;
                bottom: 0;
                height: 4rem;
                background: linear-gradient(to bottom, rgba(255, 255, 255, 0), #ffffff);
                pointer-events: none;
            }
            .pdp-desc-mobile.is-expanded .pdp-desc-collapsible {
                max-height: none;
                overflow: visible;
            }
            .pdp-desc-mobile.is-expanded .pdp-desc-collapsible::after {
                display: none;
            }
            .pdp-hero-secondary {
                margin-top: 8px;
            }
            .pdp-article {
                margin-top: 20px;
            }
            .pdp-compare-embed,
            .pdp-embed,
            .pdp-faq-section .pdp-embed--faq {
                max-width: 100%;
                overflow-x: auto;
            }
            .product-detail-page--pdp2 .variant-buttons,
            .product-detail-page--pdp2 .variant-buttons.variant-buttons-color {
                flex-wrap: wrap;
                overflow-x: visible;
            }
        }
        @media (min-width: 1025px) {
            .pdp-desc-collapsible {
                max-height: none !important;
                overflow: visible !important;
            }
            .pdp-desc-collapsible::after {
                display: none !important;
            }
            .pdp-desc-expand-btn {
                display: none !important;
            }
            .product-detail-page--pdp2 .product-detail-title--desktop-only {
                display: block;
            }
            .product-detail-page--pdp2 .product-detail-title--mobile-only {
                display: none;
            }
            .product-detail-page--pdp2 .product-detail-info .product-detail-price {
                display: flex;
                flex-direction: row;
                flex-wrap: wrap;
                align-items: center;
                gap: 8px 14px;
            }
            .product-detail-page--pdp2 .product-detail-info .product-detail-price .price-main {
                font-size: 2rem;
                font-weight: 700;
            }
            .product-detail-page--pdp2 .product-detail-info .product-detail-price .price-old {
                font-size: 1.2rem;
                margin-left: 0;
            }
            .product-detail-page--pdp2 .product-detail-price-below {
                display: inline-flex;
                flex-wrap: wrap;
                align-items: center;
                gap: 8px 12px;
            }
            .product-detail-page--pdp2 #detail-discount {
                top: 0;
            }
            .product-detail-page--pdp2 .product-detail-title--desktop-only {
                font-size: 1.75rem;
                font-weight: 600;
                line-height: 1.2;
                margin: 0 0 12px 0;
            }
            .product-detail-page--pdp2 .product-detail-actions .product-detail-links {
                display: none !important;
            }
            .pdp-fbt-title-desktop {
                display: block;
            }
            .pdp-fbt-title-mobile {
                display: none;
            }
            .product-detail-recommendations--fbt .product-detail-recommendations-slide {
                grid-template-columns: repeat(4, minmax(0, 1fr));
                gap: 0;
            }
            .product-detail-recommendations--fbt .product-detail-recommendation-item {
                padding: 14px 12px 16px;
            }
            .product-detail-recommendations--fbt .product-detail-recommendations-carousel,
            .product-detail-recommendations--fbt .cart-recs-with-arrows {
                display: flex;
                align-items: center;
                gap: 6px;
                width: 100%;
                padding: 0;
                position: static;
            }
            .product-detail-recommendations--fbt .product-detail-recommendations-nav {
                position: static;
                top: auto;
                left: auto;
                right: auto;
                transform: none;
                width: auto;
                height: auto;
                min-width: 32px;
                min-height: 32px;
                padding: 6px;
                border-radius: 0;
                background: transparent;
                border: none;
                box-shadow: none;
            }
            .product-detail-recommendations--fbt .product-detail-recommendations-nav svg,
            .product-detail-recommendations--fbt .product-detail-recommendations-nav .cart-recs-nav__icon {
                display: block;
                width: 10px;
                height: 16px;
                stroke: none;
                fill: currentColor;
            }
            .product-detail-recommendations--fbt .product-detail-recommendations-nav:hover:not(:disabled) {
                background: transparent;
                border: none;
                box-shadow: none;
                color: #374151;
            }
            .product-detail-recommendations--fbt:has(.product-detail-recommendations-slider .product-detail-recommendations-slide:only-child) .product-detail-recommendations-dots {
                display: none;
            }
            .product-detail-page--pdp2 .btn-add-to-cart-detail {
                background: #111827;
                box-shadow: none;
                padding: 15px 24px;
                min-height: 50px;
                font-size: 1.0625rem;
                border-radius: 11px;
            }
            .product-detail-page--pdp2 .btn-add-to-cart-detail svg {
                width: 20px;
                height: 20px;
            }
            .product-detail-page--pdp2 .btn-add-to-cart-detail:hover {
                background: #000;
            }
            .product-detail-page--pdp2 .pdp-tabs {
                width: 100%;
                justify-content: flex-start;
                align-items: flex-end;
                gap: 0.9rem clamp(1.85rem, 2.9vw, 3.95rem);
                flex-wrap: wrap;
                box-sizing: border-box;
            }
            .product-detail-page--pdp2 .pdp-tab {
                font-size: 1rem;
                padding-bottom: 0.52rem;
            }
        }
        
        .product-image-carousel-detail {
            position: relative;
            width: 100%;
            max-width: 100%;
            background: var(--header-surface-bg, #ffffff);
            border-radius: 15px;
            overflow: hidden;
            aspect-ratio: 1;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: none;
            flex: 1 1 0;
            min-height: 0;
            min-width: 0;
        }
        
        .product-img-detail {
            width: 88%;
            height: 88%;
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
            transition: opacity 0.3s ease;
            transform-origin: center center;
        }
        
        .product-image-carousel-detail {
            cursor: zoom-in;
        }
        
        .product-image-carousel-detail.zooming {
            cursor: zoom-out;
        }
        
        .product-image-carousel-detail.zooming .product-img-detail,
        .product-image-carousel-detail.zooming .image-slide-item img {
            transition: transform 0.1s ease-out;
        }
        
        /* Миниатюра с индикатором */
        .zoom-thumbnail {
            position: absolute;
            bottom: 16px;
            right: 16px;
            width: 120px;
            height: 120px;
            border: 2px solid #2d2d2d;
            border-radius: 8px;
            background: var(--header-surface-bg, #ffffff);
            box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
            z-index: 10001;
            display: none;
            overflow: hidden;
        }
        
        .zoom-thumbnail.active {
            display: block;
        }
        
        .zoom-thumbnail img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
        
        .zoom-thumbnail-indicator {
            position: absolute;
            border: 2px solid #ff4444;
            background: rgba(255, 68, 68, 0.2);
            pointer-events: none;
            box-sizing: border-box;
        }
        
        @media screen and (max-width: 1024px) {
            .zoom-thumbnail {
                width: 100px;
                height: 100px;
                bottom: 12px;
                right: 12px;
            }
        }
        
        .product-image-carousel-detail .image-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: none;
            color: #666;
            width: auto;
            height: auto;
            border-radius: 0;
            display: flex !important;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            font-size: 32px;
            padding: 15px 12px;
            font-weight: 300;
            opacity: 1 !important;
            transition: opacity 0.3s ease;
            border: none;
            outline: none;
            text-shadow: none;
            z-index: 200 !important;
            visibility: visible !important;
            pointer-events: auto !important;
        }
        
        .product-image-carousel-detail:hover .image-nav {
            opacity: 1 !important;
        }
        
        .product-image-carousel-detail .image-nav.prev {
            left: 10px;
        }
        
        .product-image-carousel-detail .image-nav.next {
            right: 10px;
        }
        
        .product-image-carousel-detail .image-slide-container {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            overflow: hidden;
        }
        
        .product-image-carousel-detail .image-slide-wrapper {
            position: relative;
            width: 100%;
            height: 100%;
            display: block;
            transform: none !important;
            transition: none !important;
        }
        
        .product-image-carousel-detail .image-slide-item {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            box-sizing: border-box;
            pointer-events: none;
        }
        
        .product-image-carousel-detail .image-slide-item.is-active {
            pointer-events: auto;
        }
        
        .product-image-carousel-detail .image-slide-item img {
            width: 88%;
            height: 88%;
            max-width: 100%;
            max-height: 100%;
            object-fit: contain;
            transition: opacity 0.18s ease;
        }
        
        @media (min-width: 1025px) {
            .product-detail-page--pdp2 .product-images-container {
                width: 100%;
                max-width: 100%;
            }
            .product-detail-page--pdp2 .product-detail-images {
                width: 100%;
                max-width: 100%;
            }
        }
        
        .top-specifications {
            display: flex;
            gap: 20px;
            margin-bottom: 30px;
            padding: 20px;
            background: linear-gradient(135deg, rgba(248, 249, 250, 0.7) 0%, rgba(245, 245, 245, 0.7) 100%);
            border-radius: 12px;
            border: 1px solid rgba(229, 231, 235, 0.6);
            box-shadow: none;
        }
        
        .top-spec {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 8px;
            flex: 1;
        }
        
        .top-spec svg {
            color: #2d2d2d;
        }
        
        .top-spec span {
            font-size: 0.9rem;
            color: #374151;
            text-align: center;
            font-weight: 500;
        }
        
        .variant-selector {
            margin-bottom: 25px;
        }
        
        .variant-label {
            font-size: 0.9rem;
            font-weight: 600;
            margin-bottom: 8px;
            color: #111827;
        }
        
        .variant-selected {
            font-weight: 700;
            color: #2d2d2d;
        }
        
        .variant-button input[type="radio"] {
            position: absolute;
            opacity: 0;
            pointer-events: none;
        }
        
        .variant-buttons-color {
            gap: 10px;
        }
        
        .variant-button-color.deep-blue {
            background: #1e3a5f;
        }
        
        .variant-button-color.silver {
            background: #c0c0c0;
        }
        
        .variant-button-color.cosmic-orange {
            background: #ff6b35;
        }
        
        .variant-button-color.black {
            background: #000;
        }
        
        .variant-button-color.white {
            background: #fff;
            border-color: #ccc;
        }
        
        .variant-button-color.space-gray {
            background: #4a4a4a;
        }
        
        .variant-button-color.gold {
            background: #ffd700;
        }
        
        .variant-button-color.pink {
            background: #ffb6c1;
        }
        
        .variant-button-color.blue {
            background: #007aff;
        }
        
        .variant-button-color.purple {
            background: #af52de;
        }
        
        .variant-button-color.green {
            background: #34c759;
        }
        
        .variant-button-color.red {
            background: #ff3b30;
        }
        
        .variant-button-color.yellow {
            background: #ffcc00;
        }

        /* PDP: варианты в стиле сайта (нейтральные границы, акцент #111 как у CTA и каталога) */
        .product-detail-page--pdp2 .variant-selector {
            display: grid;
            grid-template-columns: minmax(72px, 104px) minmax(0, 1fr);
            gap: 10px 20px;
            align-items: center;
            margin-bottom: 28px;
        }

        .product-detail-page--pdp2 .variant-label {
            margin-bottom: 0;
            line-height: 1.3;
        }

        .product-detail-page--pdp2 .variant-label-heading {
            display: block;
            font-size: 1rem;
            font-weight: 400;
            color: #111111;
            letter-spacing: -0.02em;
        }

        .product-detail-page--pdp2 .variant-buttons {
            gap: 10px;
            flex-wrap: nowrap;
            min-width: 0;
            overflow-x: auto;
            overflow-y: hidden;
            -webkit-overflow-scrolling: touch;
            overscroll-behavior-x: contain;
        }

        .product-detail-page--pdp2 .variant-buttons:not(.variant-buttons-color) .variant-button {
            position: relative !important;
            padding: 10px 16px !important;
            border: 1px solid #e5e7eb !important;
            border-radius: 6px !important;
            background: #ffffff !important;
            font-size: 0.875rem !important;
            font-weight: 500 !important;
            line-height: 1.25 !important;
            color: #374151 !important;
            box-shadow: none !important;
            min-height: 42px !important;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            transition: border-color 0.15s ease, color 0.15s ease, font-weight 0.15s ease !important;
            -webkit-tap-highlight-color: transparent;
        }

        .product-detail-page--pdp2 .variant-buttons:not(.variant-buttons-color) .variant-button:hover:not(.active) {
            border-color: rgba(45, 45, 45, 0.35) !important;
            border-width: 1px !important;
            background: #ffffff !important;
            color: #111827 !important;
            box-shadow: none !important;
        }

        .product-detail-page--pdp2 .variant-buttons:not(.variant-buttons-color) .variant-button.active {
            border: 2px solid #111111 !important;
            font-weight: 600 !important;
            color: #111111 !important;
            background: #ffffff !important;
            padding: 9px 15px !important;
        }

        .product-detail-page--pdp2 .variant-buttons:not(.variant-buttons-color) .variant-button.active:hover {
            border: 2px solid #111111 !important;
            background: #ffffff !important;
            color: #111111 !important;
            padding: 9px 15px !important;
        }

        /* Та же отделка при удержании на тач-устройстве */
        .product-detail-page--pdp2 .variant-buttons:not(.variant-buttons-color) .variant-button:active:not(.active) {
            border-color: rgba(45, 45, 45, 0.35) !important;
            border-width: 1px !important;
            background: #ffffff !important;
            color: #111827 !important;
        }

        .product-detail-page--pdp2 .variant-buttons:not(.variant-buttons-color) .variant-button.active:active {
            border: 2px solid #111111 !important;
            font-weight: 600 !important;
            color: #111111 !important;
            background: #ffffff !important;
            padding: 9px 15px !important;
        }

        .product-detail-page--pdp2 .variant-buttons.variant-buttons-color {
            gap: 14px;
            overflow-y: visible;
            padding: 6px 8px;
            box-sizing: border-box;
        }

        .product-detail-page--pdp2 .variant-buttons-color > .variant-button-color:first-child {
            margin-left: 2px;
            margin-top: 2px;
            margin-bottom: 2px;
        }

        .product-detail-page--pdp2 .variant-button-color {
            width: 32px !important;
            height: 32px !important;
            min-width: 32px !important;
            padding: 0 !important;
            border-radius: 50% !important;
            box-sizing: border-box;
            display: inline-flex !important;
            align-items: center !important;
            justify-content: center !important;
            flex-shrink: 0 !important;
            transform: none !important;
            transition: box-shadow 0.15s ease, border-color 0.15s ease;
            -webkit-tap-highlight-color: transparent;
        }

        .product-detail-page--pdp2 .variant-button-color:not(.active):not([data-dual-color="true"]) {
            border: 2px solid #e5e7eb !important;
        }

        .product-detail-page--pdp2 .variant-button-color:not(.active)[data-dual-color="true"] {
            box-shadow: 0 0 0 2px #e5e7eb !important;
        }

        .product-detail-page--pdp2 .variant-button-color:hover:not(.active) {
            transform: none !important;
            border-color: rgba(45, 45, 45, 0.35) !important;
        }

        .product-detail-page--pdp2 .variant-button-color:active:not(.active) {
            transform: none !important;
            border-color: rgba(45, 45, 45, 0.35) !important;
        }

        .product-detail-page--pdp2 .variant-button-color.active {
            transform: none !important;
            border: 2px solid transparent !important;
            box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #111111 !important;
        }

        .product-detail-page--pdp2 .variant-button-color.active:active {
            transform: none !important;
            border: 2px solid transparent !important;
            box-shadow: 0 0 0 2px #ffffff, 0 0 0 4px #111111 !important;
        }

        @media (max-width: 520px) {
            .product-detail-page--pdp2 .variant-selector {
                grid-template-columns: 1fr;
                gap: 8px;
                align-items: start;
            }
        }
        
        .product-detail-price {
            margin: 0 0 30px 0;
            padding: 0px 0;
        }
        
        .price-main {
            font-size: 2rem;
            font-weight: 700;
            color: #111827;
        }
        
        .price-old {
            font-size: 1.2rem;
            color: #9ca3af;
            text-decoration: line-through;
            margin-left: 15px;
        }

        #detail-discount {
            position: relative;
            top: -2px;
        }
        
        .product-detail-actions {
            margin: 20px 0;
        }
        
        .product-detail-links {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 8px 16px;
            margin-top: 16px;
            margin-bottom: 0;
        }
        
        .product-detail-links a {
            font-size: 0.8125rem;
            color: #374151;
            text-decoration: none;
        }
        
        .product-detail-links a:hover {
            color: #111827;
            text-decoration: underline;
        }
        
        .product-detail-links .link-sep {
            color: rgba(55, 65, 81, 0.4);
            font-size: 0.75rem;
            user-select: none;
        }
        
        @media (min-width: 1025px) {
            .product-detail-links:not(.product-detail-links--aux) {
                display: none !important;
            }
        }
        @media (min-width: 1025px) and (max-width: 1280px) {
            .product-detail-links--aux {
                display: flex !important;
                flex-wrap: wrap;
                align-items: center;
                gap: 6px;
            }
        }
        
        .btn-add-to-cart-detail {
            width: 100%;
            padding: 12px 20px;
            background: #4a4a4a;
            color: white;
            border: none;
            border-radius: 10px;
            font-size: 0.95rem;
            font-weight: 600;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            transition: all 0.2s ease;
            box-shadow: 0 2px 10px rgba(74, 74, 74, 0.2);
            position: relative;
        }
        
        .btn-add-to-cart-detail:hover {
            background: #3a3a3a;
            box-shadow: 0 4px 15px rgba(74, 74, 74, 0.3);
        }

        /* Страница товара, мобилы: полноширинная CTA как на референсе, палитра сайта (после базовых правил — перекрывает #4a4a4a) */
        @media (max-width: 1024px) {
            .btn-add-to-cart-detail {
                padding: 18px 26px;
                min-height: 56px;
                border-radius: 6px;
                font-size: 1rem;
                font-weight: 700;
                letter-spacing: 0.03em;
                gap: 10px;
                line-height: 1.35;
                background: #2d2d2d;
                color: #fff;
                box-shadow: 0 4px 16px rgba(45, 45, 45, 0.22);
            }
            .btn-add-to-cart-detail:hover,
            .btn-add-to-cart-detail:active {
                background: #1f1f1f;
                color: #fff;
                box-shadow: 0 4px 18px rgba(0, 0, 0, 0.18);
            }
            .product-detail-page--pdp2 .btn-add-to-cart-detail {
                background: #111827;
            }
            .product-detail-page--pdp2 .btn-add-to-cart-detail:hover,
            .product-detail-page--pdp2 .btn-add-to-cart-detail:active {
                background: #000;
            }
        }
        
        .btn-add-to-cart-detail svg {
            width: 18px;
            height: 18px;
            transition: opacity 0.16s ease;
        }
        
        .btn-add-to-cart-detail svg.hide-icon {
            opacity: 0;
        }
        
        .btn-add-to-cart-detail-text {
            transition: opacity 0.32s cubic-bezier(0.4, 0, 0.2, 1), transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        .btn-add-to-cart-detail-text.fade-out {
            opacity: 0;
            transform: translateY(3px);
        }
        
        .btn-add-to-cart-detail-text.fade-in {
            opacity: 1;
            transform: translateY(0);
        }
        
        .btn-add-to-cart-detail-text.show-checkmark {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            width: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        
        .btn-add-to-cart-detail-text.show-checkmark svg {
            display: block;
        }

        .add-to-cart-btn--qty-mode,
        .btn-add-to-cart-detail.add-to-cart-btn--qty-mode {
            cursor: default;
            box-sizing: border-box;
        }
        .btn-add-to-cart-detail.add-to-cart-btn--qty-mode .btn-add-to-cart-detail-text,
        .add-to-cart-btn.add-to-cart-btn--qty-mode .add-to-cart-btn-text {
            position: static;
            left: auto;
            top: auto;
            transform: none;
            width: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .add-to-cart-btn--transitioning {
            transition: background 0.32s ease, box-shadow 0.32s ease;
        }
        .add-to-cart-btn-qty {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: clamp(18px, 4vw, 28px);
            width: 100%;
            min-height: 24px;
            opacity: 1;
            transform: translateY(0) scale(1);
            transition: opacity 0.42s cubic-bezier(0.4, 0, 0.2, 1), transform 0.42s cubic-bezier(0.4, 0, 0.2, 1);
        }
        .add-to-cart-btn-qty.is-entering {
            opacity: 0;
            transform: translateY(6px) scale(0.97);
        }
        .add-to-cart-btn-qty-minus,
        .add-to-cart-btn-qty-plus {
            appearance: none;
            -webkit-appearance: none;
            background: transparent;
            border: none;
            border-radius: 0;
            color: inherit;
            width: auto;
            height: auto;
            min-width: 24px;
            padding: 2px 4px;
            font-size: 1.375rem;
            line-height: 1;
            font-weight: 300;
            letter-spacing: 0.02em;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            opacity: 0.88;
            transition: opacity 0.2s ease, transform 0.2s ease;
        }
        .add-to-cart-btn-qty-minus:hover,
        .add-to-cart-btn-qty-plus:hover:not(:disabled) {
            background: transparent;
            opacity: 1;
            transform: scale(1.06);
        }
        .add-to-cart-btn-qty-minus:active,
        .add-to-cart-btn-qty-plus:active:not(:disabled) {
            transform: scale(0.96);
            opacity: 0.75;
        }
        .add-to-cart-btn-qty-plus:disabled {
            opacity: 0.35;
            cursor: not-allowed;
        }
        .add-to-cart-btn-qty-value {
            min-width: 1.25rem;
            text-align: center;
            font-size: 1rem;
            font-weight: 600;
            line-height: 1;
            letter-spacing: -0.01em;
        }
        .products-grid .add-to-cart-btn.add-to-cart-btn--qty-mode {
            padding-left: 16px !important;
            padding-right: 16px !important;
        }
        .products-grid .add-to-cart-btn-qty {
            gap: clamp(16px, 3.5vw, 24px);
        }
        .products-grid .add-to-cart-btn-qty-minus,
        .products-grid .add-to-cart-btn-qty-plus {
            min-width: 22px;
            font-size: 1.25rem;
        }
        
        .product-detail-description,
        .product-detail-specifications {
            margin-top: 20px;
            padding-top: 30px;
            border-top: 1px solid rgba(229, 231, 235, 0.6);
        }

        .pdp-panels .product-detail-description,
        .pdp-panels .product-detail-specifications {
            margin-top: 0;
            padding-top: 0;
            border-top: none;
        }

        .pdp-panels .lp-fullwidth .lp-container {
            padding-top: 0;
            padding-left: 0;
            padding-right: 0;
        }
        
        .product-detail-description h3,
        .product-detail-specifications h3 {
            font-size: 1.5rem;
            font-weight: 700;
            margin-bottom: 15px;
            color: #111827;
        }
        
        .product-detail-description p {
            color: #374151;
            line-height: 1.6;
            font-size: 1rem;
        }
        
        .product-detail-description p.pdp-full-desc {
            font-size: 1.125rem;
            line-height: 1.65;
        }
        
        .specifications-list {
            display: flex;
            flex-direction: column;
            gap: 0;
        }
        
        .spec-item {
            display: grid;
            grid-template-columns: minmax(160px, 46%) minmax(0, 1fr);
            align-items: baseline;
            column-gap: 20px;
            padding: 12px 0;
            border-bottom: 1px solid rgba(229, 231, 235, 0.4);
        }
        
        .spec-key {
            font-weight: 600;
            color: #374151;
            min-width: 0;
        }
        
        .spec-value {
            color: #6b7280;
            text-align: right;
            min-width: 0;
            justify-self: end;
        }
        
        .product-detail-specifications .spec-item {
            grid-template-columns: minmax(180px, 48%) minmax(0, 1fr);
            column-gap: 24px;
        }

        .product-detail-specifications .spec-value {
            text-align: right;
            justify-self: end;
        }

        @media (min-width: 1025px) {
            .product-detail-specifications .specifications-list {
                display: grid;
                grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
                column-gap: 48px;
            }

            .product-detail-specifications .spec-item {
                grid-template-columns: minmax(140px, 46%) minmax(0, 1fr);
                column-gap: 16px;
            }
        }
        
        /* Стили для раздела преимуществ */
        .product-benefits-section {
            margin-top: 60px;
            padding-top: 60px;
            border-top: 1px solid rgba(229, 231, 235, 0.6);
        }
        
        .whoop-benefits-in-desc {
            margin-top: 28px;
            padding-top: 28px;
        }
        
        .pdp-panels .whoop-benefits-in-desc .benefits-header {
            margin-bottom: 28px;
        }
        
        @media (max-width: 1024px) {
            .pdp-whoop-benefits--desktop-only {
                display: none !important;
            }
        }
        
        .benefits-header {
            text-align: center;
            margin-bottom: 50px;
        }
        
        .benefits-title {
            font-size: 2rem;
            font-weight: 700;
            color: #111827;
            margin-bottom: 20px;
            line-height: 1.2;
        }
        
        .benefits-subtitle {
            font-size: 1.125rem;
            color: #6b7280;
            line-height: 1.6;
            max-width: 800px;
            margin: 0 auto;
        }
        
        .benefits-cards-container {
            overflow-x: auto;
            -webkit-overflow-scrolling: touch;
            padding-bottom: 20px;
        }
        
        .benefits-cards {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
            gap: 24px;
            max-width: 1400px;
            margin: 0 auto;
        }
        
        .benefit-card {
            background: transparent;
            border-radius: 16px;
            padding: 20px;
            box-shadow: none;
            transition: all 0.3s ease;
            border: none;
        }
        
        .benefit-card:hover {
            transform: translateY(-4px);
        }
        
        .benefit-icon {
            width: 100%;
            height: 360px;
            border-radius: 12px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 16px;
            overflow: hidden;
            background: transparent;
        }
        
        .benefit-icon img {
            width: 100%;
            height: 100%;
            object-fit: contain;
        }
        
        .benefit-card-title {
            font-size: 1.125rem;
            font-weight: 600;
            color: #111827;
            margin-bottom: 8px;
            line-height: 1.4;
        }
        
        .benefit-card-text {
            font-size: 0.9375rem;
            color: #6b7280;
            line-height: 1.5;
        }
        
        @media screen and (max-width: 1024px) {
            .benefits-title {
                font-size: 1.75rem;
            }
            
            .benefits-subtitle {
                font-size: 1rem;
                padding: 0 20px;
            }
            
            .benefits-cards {
                grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
                gap: 20px;
                padding: 0 20px;
            }
            
            .benefit-card {
                padding: 16px;
            }
        }
        
        @media screen and (max-width: 640px) {
            .product-benefits-section {
                margin-top: 40px;
                padding-top: 40px;
            }
            
            .benefits-header {
                margin-bottom: 30px;
            }
            
            .benefits-title {
                font-size: 1.5rem;
                margin-bottom: 16px;
            }
            
            .benefits-subtitle {
                font-size: 0.9375rem;
            }
            
            .benefits-cards {
                grid-template-columns: 1fr;
                gap: 16px;
                padding: 0;
            }
            
            .benefit-card {
                padding: 16px;
            }
            
            .benefit-icon {
                height: 280px;
                margin-bottom: 12px;
            }
            
            .benefit-card-title {
                font-size: 1rem;
            }
            
            .benefit-card-text {
                font-size: 0.875rem;
            }
        }
        
        /* Блок аксессуаров для iPhone */
        .accessories-section {
            margin-top: 60px;
            padding: 60px 40px;
            border-radius: 16px;
            text-align: left;
            box-shadow: none;
            position: relative;
            overflow: hidden;
            display: flex;
            justify-content: flex-end;
        }
        
        .accessories-section::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background-image: url('https://store.storeimages.cdn-apple.com/1/as-images.apple.com/is/aalp-magsafe-strap-header-202509?wid=2880&hei=960&fmt=png-alpha&.v=Mm9DK3AvM1grOWszVnpva1dlSzNtV3R0b05sQ1NuV1p4c3RIT0dCTUxaZ1RxYlRNdkVncHhLL2gwSGxuVWk0TnV5NVU0QmM2b3hmeWJWTTVtN1o5ZmxuM1RUbEtLZ0RVenJDc2UxZ2xVSGQrYWpGdS9XeFgvbS9ITnNYOEhYaG4');
            background-size: cover;
            background-position: center 10%;
            background-repeat: no-repeat;
            z-index: 0;
        }
        
        .accessories-section::after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: transparent;
            z-index: 1;
        }
        
        .accessories-content {
            position: relative;
            z-index: 2;
            max-width: 40%;
            text-align: center;
        }
        
        .accessories-section > * {
            position: relative;
            z-index: 2;
        }
        
        .accessories-subtitle {
            font-size: 0.875rem;
            font-weight: 600;
            color: #d6a569;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            margin-bottom: 12px;
        }
        
        .accessories-title {
            font-size: 2rem;
            font-weight: 700;
            color: #111827;
            margin-bottom: 16px;
            line-height: 1.2;
        }
        
        .accessories-description {
            font-size: 1rem;
            color: #6b7280;
            margin-bottom: 32px;
            line-height: 1.6;
            max-width: 600px;
        }
        
        .accessories-button {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 14px 32px;
            background: linear-gradient(135deg, #4a4a4a 0%, #3a3a3a 100%);
            color: white;
            border: none;
            border-radius: 12px;
            font-size: 1rem;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s ease;
            text-decoration: none;
            box-shadow: 0 4px 12px rgba(74, 74, 74, 0.3);
        }
        
        .accessories-button:hover {
            transform: translateY(-2px);
            box-shadow: 0 6px 20px rgba(74, 74, 74, 0.4);
        }
        
        .accessories-button:active {
            transform: translateY(0);
        }
        
        .accessories-button svg {
            width: 20px;
            height: 20px;
            stroke: currentColor;
        }
        
        .accessories-image-mobile {
            display: none;
        }
        
        .accessories-mobile-img {
            width: 100%;
            height: auto;
            display: block;
        }
        
        @media (max-width: 1024px) {
            .accessories-section {
                margin-top: 40px;
                padding: 24px 0;
                display: flex;
                flex-direction: column;
                background: #F5F5F7;
            }
            
            .accessories-section::before {
                display: none;
            }
            
            .accessories-section::after {
                display: none;
            }
            
            .accessories-content {
                max-width: 100%;
                padding: 0 24px;
                margin-bottom: 0;
                order: 1;
                text-align: center;
            }
            
            .accessories-image-mobile {
                display: block;
                width: 100%;
                margin-top: 0;
                order: 2;
                overflow: hidden;
                height: 300px;
            }
            
            .accessories-mobile-img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                object-position: 25% 20%;
            }
            
            .accessories-title {
                font-size: 1.5rem;
            }
            
            .accessories-description {
                font-size: 0.9375rem;
                margin-bottom: 24px;
            }
            
            .accessories-button {
                padding: 12px 24px;
                font-size: 0.9375rem;
            }
        }
        
        /* Блок сравнения AirPods */
        .lp-why {
            margin-top: 60px;
            padding: 40px 20px;
            background: #ffffff;
            border-radius: 16px;
        }
        
        .lp-why.cf::before,
        .lp-why.cf::after {
            content: "";
            display: table;
        }
        
        .lp-why.cf::after {
            clear: both;
        }
        
        .lp-why__subtitle {
            font-size: 0.875rem;
            font-weight: 600;
            color: #86868b;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            text-align: center;
            margin-bottom: 12px;
        }
        
        .lp-why__title {
            font-size: 2rem;
            font-weight: 500;
            color: #111827;
            text-align: center;
            margin-bottom: 40px;
            line-height: 1.2;
        }
        
        .lp-why-group {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 30px;
            max-width: 1400px;
            margin: 0 auto;
        }
        
        .lp-why-item {
            display: flex;
            gap: 20px;
            align-items: flex-start;
        }
        
        .lp-why-item__icon {
            flex-shrink: 0;
            width: 60px;
            height: 60px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .lp-why-item__icon img {
            width: 100%;
            height: auto;
            object-fit: contain;
        }
        
        .lp-why-item__text {
            flex: 1;
        }
        
        .lp-why-item__title {
            font-size: 1.25rem;
            font-weight: 600;
            color: #111827;
            margin-bottom: 8px;
            line-height: 1.3;
        }
        
        .lp-why-item__descr {
            font-size: 1rem;
            color: #374151;
            line-height: 1.5;
        }
        
        @media (max-width: 1024px) {
            .lp-why {
                margin-top: 40px;
                padding: 24px 16px;
            }
            
            .lp-why__title {
                font-size: 1.5rem;
                margin-bottom: 30px;
            }
            
            .lp-why-group {
                grid-template-columns: 1fr;
                gap: 24px;
            }
            
            .lp-why-item {
                flex-direction: column;
                gap: 12px;
                text-align: center;
            }
            
            .lp-why-item__icon {
                width: 50px;
                height: 50px;
                margin: 0 auto;
            }
            
            .lp-why-item__title {
                font-size: 1.1rem;
            }
            
            .lp-why-item__descr {
                font-size: 0.9rem;
            }
        }
        
        .lp-fullwidth {
            width: 100%;
            margin: 0;
            padding: 0;
        }
        
        .lp-fullwidth--black {
            background: #ffffff;
        }
        
        .lp-fullwidth--darkgray {
            background: var(--header-surface-bg, #ffffff);
            border-radius: 18px;
        }
        
        .lp-billboard {
            position: relative;
            width: 100%;
            margin: 0 auto;
        }
        
        .lp-billboard__img {
            width: 100%;
            display: block;
        }
        
        .lp-billboard__img img {
            width: 100%;
            height: auto;
            display: block;
        }
        
        .lp-container {
            max-width: 1400px;
            margin: 0 auto;
            padding: 60px 20px;
        }
        
        .lp-container--mid {
            max-width: 1400px;
            margin: 0 auto;
            border-radius: 0 0 18px 18px;
            font-family: 'Graphik-Medium-Cy', sans-serif;
            font-weight: 550;
            font-size: 40px;
        }
        
        .lp-container.cf::before,
        .lp-container.cf::after {
            content: "";
            display: table;
        }
        
        .lp-container.cf::after {
            clear: both;
        }
        
        .lp-unitgroup {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 20px;
            margin-bottom: 20px;
        }
        
        .lp-unitgroup:has(.lp-unit--pro-camera) {
            grid-template-columns: repeat(3, 1fr);
        }
        
        .lp-unitgroup:has(.lp-unit--power) {
            grid-template-columns: repeat(3, 1fr);
        }
        
        .lp-unitgroup:has(.lp-unit--ios) {
            grid-template-columns: repeat(3, 1fr);
        }
        
        .lp-unit {
            position: relative;
            display: flex;
            flex-direction: column;
        }
        
        .lp-unit--column {
            flex-direction: column;
        }
        
        .lp-unit--mid {
            grid-column: span 1;
        }
        
        .lp-unit--midfull {
            grid-column: span 1;
        }
        
        .lp-unit--ios {
            grid-column: span 2;
            align-self: stretch;
            display: flex;
        }
        
        .lp-unit--ios .lp-unit__wrapper {
            display: flex;
            flex-direction: column;
            height: 100%;
        }
        
        .lp-unit--features-group {
            grid-column: span 1;
            align-self: stretch;
            display: flex;
            flex-direction: column;
            height: 100%;
        }
        
        .lp-unit--pro-camera {
            grid-column: span 2;
        }
        
        .lp-unit--front-camera {
            grid-column: span 1;
            align-self: stretch;
            display: flex;
        }
        
        .lp-unit--front-camera .lp-unit__wrapper {
            display: flex;
            flex-direction: column;
            height: 100%;
        }
        
        .lp-unit--power {
            grid-column: span 2;
            align-self: stretch;
            display: flex;
        }
        
        .lp-unit--power .lp-unit__wrapper {
            display: flex;
            flex-direction: column;
            height: 100%;
        }
        
        .lp-unit--chip {
            grid-column: span 1;
            align-self: stretch;
            display: flex;
        }
        
        .lp-unit--chip .lp-unit__wrapper {
            display: flex;
            flex-direction: column;
            height: 100%;
        }
        
        .lp-unit--small {
            grid-column: span 1;
        }
        
        .lp-unit--esim .lp-unit__wrapper,
        .lp-unit--storage .lp-unit__wrapper {
            max-width: 100%;
            margin: 0 auto;
            display: flex;
            flex-direction: column;
            justify-content: center;
            flex: 1;
            padding: 50px 40px;
        }
        
        .lp-unit__wrapper {
            padding: 40px;
            background: #eeeeee;
            border-radius: 18px;
        }
        
        .lp-unit__title {
            font-size: 22px;
            font-weight: 550;
            font-family: 'Graphik-Medium-Cy', sans-serif;
            color: #111827;
            line-height: 23px;
            margin-bottom: 20px;
            text-align: center;
        }
        
        .lp-unit__img {
            width: 100%;
            margin-top: auto;
        }
        
        .lp-unit__img img {
            width: 100%;
            height: auto;
            display: block;
        }
        
        .lp-unit__footernote {
            display: flex;
            gap: 20px;
            margin-top: 20px;
            padding-top: 20px;
            border-top: 1px solid rgba(0, 0, 0, 0.1);
        }
        
        .lp-unit__footernote-item {
            font-size: 0.875rem;
            color: #666666;
        }
        
        .lp-unit--features-group {
            display: grid;
            grid-template-columns: 1fr;
            gap: 12px;
            flex: 1;
        }
        
        .lp-unit--features-group > .lp-unit {
            flex: 1;
            display: flex;
        }
        
        .lp-unit--features-group > .lp-unit .lp-unit__wrapper {
            flex: 1;
            display: flex;
            flex-direction: column;
        }
        
        .lp-unit--features {
            background: transparent;
            border-radius: 8px;
            padding: 16px;
            box-shadow: none;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .lp-unit--features .lp-unit__wrapper {
            padding: 0;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            width: 100%;
            background: #eeeeee;
            border-radius: 18px;
        }
        
        .lp-unit--features .lp-unit__img {
            max-width: 60px;
            margin: 0 auto 12px;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        
        .lp-unit--features .lp-unit__img img {
            max-width: 100%;
            height: auto;
        }
        
        .lp-unit--features .lp-unit__title {
            text-align: center;
        }
        
        .lp-power {
            display: flex;
            gap: 40px;
            justify-content: center;
            margin-top: 40px;
            padding: 40px 20px;
        }
        
        .lp-power-item {
            text-align: center;
        }
        
        .lp-power-item__caption {
            font-size: 0.7rem;
            color: #666666;
            margin-bottom: 8px;
        }
        
        .lp-power-item__title {
            font-size: 2rem;
            font-weight: 600;
            color: #111827;
            line-height: 1;
            margin-bottom: 8px;
        }
        
        .lp-fullwidth--features {
            background: #ffffff;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        
        .lp-features-container {
            margin-top: 0;
            padding: 60px 20px;
            background: transparent;
            border-radius: 0;
            display: flex;
            flex-direction: column;
            align-items: center;
        }
        
        .lp-featuresHead__title {
            color: #111827;
        }
        
        .lp-featuresHead__descr {
            color: #666666;
        }
        
        .lp-features-item {
            background: #eeeeee;
        }
        
        .lp-features-item__descr {
            color: #374151;
        }
        
        .lp-features-item__title {
            color: #111827;
        }
        
        .lp-features-container.cf::before,
        .lp-features-container.cf::after {
            content: "";
            display: table;
        }
        
        .lp-features-container.cf::after {
            clear: both;
        }
        
        .lp-featuresHead {
            text-align: center;
            margin: 0 auto 40px;
            max-width: 100%;
        }
        
        .lp-featuresHead__title {
            font-size: 3rem;
            font-weight: 500;
            color: #111827;
            margin: 0 auto 8px;
            line-height: 1.2;
            text-align: center;
        }
        
        .lp-featuresHead__descr {
            font-size: 1.4rem;
            color: #86868b;
            text-align: center;
        }
        
        .lp-features-itemgroup {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 20px;
            max-width: 1400px;
            margin: 0 auto;
        }
        
        .lp-features-item {
            position: relative;
            background: #eeeeee;
            border-radius: 12px;
            padding: 24px;
            display: flex;
            flex-direction: column;
            align-items: center;
            justify-content: center;
            text-align: center;
            min-height: 200px;
        }
        
        .lp-features-item--colcenter {
            grid-column: span 1;
        }
        
        .lp-features-item__wrapper {
            width: 100%;
            text-align: center;
            display: flex;
            flex-direction: column;
            align-items: center;
        }
        
        .lp-features-item__title {
            font-size: 2rem;
            font-weight: 600;
            color: #111827;
            margin: 12px 0;
            line-height: 1.2;
        }
        
        .lp-features-item__descr {
            font-size: 1.3rem;
            color: #374151;
            line-height: 1.5;
            text-align: center;
        }
        
        .lp-features__img {
            margin-top: 16px;
            width: 100%;
            max-width: 200px;
            margin-left: auto;
            margin-right: auto;
        }
        
        .lp-features__img img {
            width: 100%;
            height: auto;
            object-fit: contain;
        }
        
        .lp-features__icontitle {
            display: inline-block;
            vertical-align: middle;
            margin-left: 8px;
        }
        
        .lp-features__icontitle img {
            width: auto;
            height: 1.2em;
            vertical-align: middle;
        }
        
        @media (max-width: 1024px) {
            .lp-features-itemgroup {
                grid-template-columns: repeat(2, 1fr);
            }
        }
        
        @media (max-width: 1024px) {
            .lp-container {
                padding: 40px 16px;
            }
            
            .lp-unitgroup {
                grid-template-columns: 1fr;
                gap: 30px;
            }
            
            .lp-unit__wrapper {
                padding: 30px 20px;
            }
            
            .lp-unit__title {
                font-size: 22px;
                line-height: 23px;
            }
            
            .lp-unit--features-group {
                gap: 10px;
            }
            
            .lp-unit--features {
                padding: 12px;
            }
            
            .lp-unit--features .lp-unit__img {
                max-width: 50px;
            }
            
            .lp-power {
                flex-direction: column;
                gap: 30px;
                padding: 30px 20px;
            }
            
            .lp-power-item__title {
                font-size: 1.75rem;
            }
            
            .lp-features-container {
                margin-top: 0;
                padding: 40px 16px;
            }
            
            .lp-featuresHead__title {
                font-size: 1.5rem;
            }
            
            .lp-features-itemgroup {
                grid-template-columns: 1fr;
                gap: 16px;
            }
            
            .lp-features-item {
                min-height: 180px;
                padding: 20px;
            }
            
            .lp-features-item__title {
                font-size: 1.5rem;
            }
            
            .lp-features-item__descr {
                font-size: 0.9rem;
            }
            
            .lp-unit--esim .lp-unit__wrapper,
            .lp-unit--storage .lp-unit__wrapper {
                padding: 40px 30px;
                min-height: 250px;
            }
            
            .lp-fullwidth--darkgray {
                border-radius: 12px;
                margin: 0 16px;
            }
            
            .lp-fullwidth--black.lp-fullwidth--features {
                margin: 0 16px;
            }
            
            .lp-container--mid {
                padding: 0 16px;
                border-radius: 0 0 12px 12px;
            }
            
            .lp-container--mid .lp-unitgroup {
                grid-template-columns: 1fr !important;
            }
            
            .lp-container--mid .lp-unit--pro-camera,
            .lp-container--mid .lp-unit--power,
            .lp-container--mid .lp-unit--ios {
                grid-column: span 1 !important;
            }
            
            .lp-container--mid .lp-unit--front-camera,
            .lp-container--mid .lp-unit--chip,
            .lp-container--mid .lp-unit--features-group {
                grid-column: span 1 !important;
            }
            
            .lp-unitgroup:has(.lp-unit--pro-camera),
            .lp-unitgroup:has(.lp-unit--power),
            .lp-unitgroup:has(.lp-unit--ios) {
                grid-template-columns: 1fr !important;
            }
        }
        
        .lp-compare {
            margin-top: 60px;
            padding: 40px 20px;
            background: #ffffff;
            border-radius: 16px;
        }
        
        .lp-compare.cf {
            margin-top: 0;
        }
        
        .lp-compare-wrapper {
            background: transparent;
        }
        
        .lp-compare-swipe-hint {
            display: none;
        }
        
        .lp-compare.cf::before,
        .lp-compare.cf::after {
            content: "";
            display: table;
        }
        
        .lp-compare.cf::after {
            clear: both;
        }
        
        .lp-compare__subtitle {
            font-size: 0.875rem;
            font-weight: 600;
            color: #d6a569;
            text-transform: uppercase;
            letter-spacing: 0.5px;
            text-align: center;
            margin-bottom: 12px;
        }
        
        .lp-compare__title {
            font-size: 2rem;
            font-weight: 500;
            color: #111827;
            text-align: center;
            margin-bottom: 40px;
            line-height: 1.2;
        }
        
        .lp-compare-rowgroup {
            display: flex;
            border-bottom: 1px solid #e5e7eb;
            padding: 20px 0;
        }
        
        .lp-compare-rowgroup:last-child {
            border-bottom: none;
        }
        
        .lp-compare-rowgroup--head {
            background: #fff;
            border-radius: 12px 12px 0 0;
            padding: 20px;
            margin: 0 -20px 0 -20px;
            border-bottom: 2px solid #e5e7eb;
        }
        
        .lp-compare-column {
            flex: 1;
            padding: 0 15px;
            text-align: center;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
        }
        
        .lp-compare-column--table {
            flex: 0 0 200px;
            text-align: left;
            align-items: flex-start;
        }
        
        .lp-compare-column--default {
            opacity: 0.5;
        }
        
        .lp-compare-column__head {
            font-size: 1.1rem;
            font-weight: 500;
            color: #111827;
            line-height: 1.3;
        }
        
        .lp-compare-column__devices {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 12px;
        }
        
        .lp-compare-column__img {
            width: 100%;
            max-width: 170px;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        
        .lp-compare-column__img img {
            width: 100%;
            height: auto;
            object-fit: contain;
        }
        
        .lp-compare-column__color {
            display: flex;
            gap: 6px;
            justify-content: center;
            flex-wrap: wrap;
        }
        
        .lp-compare-column__color-item {
            width: 20px;
            height: 20px;
            border-radius: 50%;
            border: 1px solid rgba(0, 0, 0, 0.1);
        }
        
        .lp-compare-column__features {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 8px;
            min-height: 60px;
            justify-content: center;
        }
        
        .lp-compare-column__icon {
            width: 80px;
            height: 80px;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        
        .lp-compare-column__icon img {
            width: 100%;
            height: auto;
            object-fit: contain;
        }
        
        .lp-compare-column__caption {
            font-size: 0.875rem;
            color: #374151;
            line-height: 1.4;
            text-align: center;
        }
        
        .lp-compare-column__value {
            font-size: 1.25rem;
            font-weight: 600;
            color: #111827;
            margin-bottom: 4px;
        }
        
        @media (max-width: 1024px) {
            .lp-compare-column--mobile:not(.lp-compare-column--table) {
                display: none;
            }
        }
        
        @media (min-width: 1025px) {
            .lp-compare-column--mobile {
                display: flex;
            }
        }
        
        @media (max-width: 1024px) {
            .lp-compare {
                margin-top: 40px;
                padding: 24px 0;
            }
            
            .lp-compare.cf::before,
            .lp-compare.cf::after {
                content: "";
                display: table;
            }
            
            .lp-compare.cf::after {
                clear: both;
            }
            
            .lp-compare__subtitle,
            .lp-compare__title {
                padding: 0 16px;
            }
            
            .lp-compare__title {
                font-size: 1.5rem;
                margin-bottom: 30px;
            }
            
            .lp-compare-wrapper {
                position: relative !important;
                background: transparent !important;
                overflow: visible !important;
                max-width: 100% !important;
                width: 100% !important;
                margin: 0 !important;
            }
            
            .lp-compare-swipe-hint {
                display: flex !important;
                align-items: center !important;
                gap: 6px !important;
                padding: 8px 11px !important;
                font-size: 0.8125rem !important;
                font-weight: 600 !important;
                color: #0071e3 !important;
                background: rgba(255, 255, 255, 0.97) !important;
                border-radius: 0 0 0 8px !important;
                box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
            }
            
            .lp-compare-swipe-hint svg {
                width: 15px !important;
                height: 15px !important;
                flex-shrink: 0 !important;
            }
            
            .lp-container--compare {
                overflow-x: auto !important;
                -webkit-overflow-scrolling: touch;
                scroll-snap-type: x proximity;
                scrollbar-width: none;
                -ms-overflow-style: none;
                padding: 0 !important;
                margin: 0 -16px !important;
                width: calc(100% + 32px);
                position: relative;
            }
            
            .lp-container--compare::-webkit-scrollbar {
                display: none;
            }
            
            /* Градиент справа отключён — обёртка прозрачная */
            .lp-compare-wrapper::after {
                display: none !important;
            }
            
            .lp-compare-rowgroup {
                scroll-snap-align: start;
            }
            
            .lp-compare-rowgroup {
                padding: 15px 0 !important;
                min-width: max-content !important;
                display: flex !important;
                width: max-content !important;
            }
            
            .lp-compare-rowgroup--head {
                padding: 15px 0 !important;
                margin: 0 !important;
            }
            
            .lp-compare-column {
                padding: 0 16px !important;
                flex: 0 0 200px !important;
                min-width: 200px !important;
                max-width: 200px !important;
            }
            
            .lp-compare-column--table {
                flex: 0 0 200px !important;
                min-width: 200px !important;
                max-width: 200px !important;
            }
            
            .lp-compare-column__head {
                font-size: 0.9rem;
            }
            
            .lp-compare-column__img {
                max-width: 120px;
            }
            
            .lp-compare-column__icon {
                width: 60px;
                height: 60px;
            }
            
            .lp-compare-column__caption {
                font-size: 0.8rem;
            }
            
            .lp-compare-column__value {
                font-size: 1.1rem;
            }
        }
        
        .sr-only {
            position: absolute;
            width: 1px;
            height: 1px;
            padding: 0;
            margin: -1px;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border-width: 0;
        }
        
        @media (max-width: 1024px) {
            .container {
                padding: 10px;
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-detail-page {
                width: 100%;
                max-width: 100%;
                padding: 0;
                margin: 0;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-detail-content {
                grid-template-columns: 1fr;
                gap: 20px;
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-detail-images {
                position: relative;
                top: 0;
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-detail-images-sticky {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
            }
            
            .product-images-container {
                flex-direction: column;
                gap: 12px;
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-thumbnails-carousel {
                display: flex;
                flex-direction: row;
                width: 100%;
                max-width: 100%;
                max-height: 80px;
                overflow-x: auto;
                overflow-y: hidden;
                padding-bottom: 8px;
                gap: 8px;
                box-sizing: border-box;
            }
            
            .thumbnails-wrapper {
                flex-direction: row;
                gap: 8px;
            }
            
            .thumbnail-item {
                width: 70px;
                height: 70px;
                flex-shrink: 0;
            }
            
            .product-detail-title {
                font-size: 1.5rem;
                font-weight: 500;
                word-wrap: break-word;
                overflow-wrap: break-word;
                letter-spacing: -0.02em;
            }
            
            .product-detail-carousel-brand {
                top: 10px;
                right: 10px;
            }
            
            .product-detail-carousel-brand img {
                height: 18px;
                max-width: 26px;
            }
            
            .top-specifications {
                flex-wrap: wrap;
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
            }
            
            .product-image-carousel-detail {
                max-width: 100%;
                width: 100%;
                box-sizing: border-box;
            }
            
            /* Колонка на мобиле: flex: 1 1 0 + min-height:0 у карусели давали схлопывание высоты */
            .product-images-container .product-image-carousel-detail {
                flex: 0 0 auto;
                min-height: auto;
                align-self: stretch;
            }
            
            .product-detail-info {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-detail-info > * {
                max-width: 100%;
                box-sizing: border-box;
                word-wrap: break-word;
                overflow-wrap: break-word;
            }
            
            .btn-add-to-cart-detail {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
            }
            
            .product-description,
            .product-specifications,
            .product-description-spoiler,
            .product-specifications-spoiler,
            .top-specifications,
            table {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: auto;
            }

            .product-variants {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: visible;
            }

            .product-detail-recommendations {
                width: 100%;
                max-width: 100%;
                box-sizing: border-box;
                overflow-x: hidden;
            }
            
            .product-image-carousel-detail .image-nav {
                width: 36px;
                height: 36px;
                font-size: 24px;
            }
            
            .product-image-carousel-detail .image-nav.prev {
                left: 10px;
            }
            
            .product-image-carousel-detail .image-nav.next {
                right: 10px;
            }
        }
        
        .low-stock-badge {
            position: absolute;
            top: 8px;
            left: 8px;
            right: auto;
            padding: 5px 8px;
            border-radius: 3px;
            font-size: 0.625rem;
            font-weight: 500;
            line-height: 1.2;
            letter-spacing: 0;
            z-index: 10;
            box-shadow: none;
            pointer-events: none;
            border: 1px solid transparent;
        }
        .low-stock-badge--last {
            background: #fff7ed;
            color: #c2410c;
            border-color: #ffedd5;
        }
        .low-stock-badge--out {
            background: #eceff3;
            color: #374151;
            border-color: #d1d5db;
            font-weight: 600;
        }
        @media (max-width: 1024px) {
            .low-stock-badge {
                top: 6px;
                left: 6px;
                padding: 3px 6px;
                border-radius: 3px;
                font-size: 0.5625rem;
                line-height: 1.15;
            }
        }
        
        .notification {
            position: fixed;
            top: 20px;
            left: 50%;
            transform: translateX(-50%);
            background: linear-gradient(135deg, #0f172a 0%, #1e3a5f 50%, #1e40af 100%);
            border-radius: 16px;
            padding: 22px 28px;
            box-shadow: 0 8px 32px rgba(15, 23, 42, 0.45), 0 2px 8px rgba(0,0,0,0.2);
            z-index: 10000;
            min-width: 300px;
            max-width: 90vw;
            animation: slideInDown 0.35s ease-out;
            border: 1px solid rgba(255, 255, 255, 0.12);
            overflow: hidden;
        }
        .notification::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            height: 3px;
            border-radius: 16px 16px 0 0;
        }
        .notification.success::before {
            background: linear-gradient(90deg, #10b981, #34d399, #10b981);
        }
        .notification.error::before {
            background: linear-gradient(90deg, #ef4444, #f87171, #ef4444);
        }
        
        .notification.success {
            border-top: none;
        }
        
        .notification.error {
            border-top: none;
        }
        
        .notification-header {
            display: flex;
            align-items: center;
            gap: 12px;
            margin-bottom: 8px;
        }
        
        .notification-icon {
            width: 28px;
            height: 28px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }
        
        .notification.success .notification-icon {
            background: rgba(16, 185, 129, 0.2);
            color: #34d399;
        }
        
        .notification.error .notification-icon {
            background: rgba(239, 68, 68, 0.2);
            color: #f87171;
        }
        
        .notification-title {
            font-size: 1rem;
            font-weight: 700;
            color: #f1f5f9;
            flex: 1;
            letter-spacing: -0.01em;
        }
        
        .notification-message {
            font-size: 0.875rem;
            color: rgba(203, 213, 225, 0.9);
            line-height: 1.5;
            margin-top: 4px;
        }
        
        .notification-close {
            position: absolute;
            top: 12px;
            right: 12px;
            background: rgba(255, 255, 255, 0.08);
            border: 1px solid rgba(255, 255, 255, 0.1);
            cursor: pointer;
            color: rgba(203, 213, 225, 0.7);
            padding: 5px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 8px;
            transition: all 0.2s;
        }
        
        .notification-close:hover {
            background: rgba(255, 255, 255, 0.15);
            color: #f1f5f9;
        }
        
        @keyframes slideInDown {
            from {
                transform: translateX(-50%) translateY(-120%);
                opacity: 0;
            }
            to {
                transform: translateX(-50%) translateY(0);
                opacity: 1;
            }
        }
        
        @keyframes slideOutUp {
            from {
                transform: translateX(-50%) translateY(0);
                opacity: 1;
            }
            to {
                transform: translateX(-50%) translateY(-120%);
                opacity: 0;
            }
        }
        
        .notification.hiding {
            animation: slideOutUp 0.3s ease-out forwards;
        }
        
        .product-description {
            color: #666;
            font-size: 0.9rem;
            line-height: 1.4;
        }
        
        .loading {
            text-align: center;
            padding: 40px;
            color: #333;
            font-size: 1.2rem;
        }
        .page-loading {
            display: flex;
            align-items: center;
            justify-content: center;
            height: 260px;
            position: relative;
        }
        .page-loading .spinner {
            width: 40px;
            height: 40px;
            border: 2px solid rgba(0, 0, 0, 0.12);
            border-top-color: rgba(0, 0, 0, 0.45);
            border-radius: 50%;
            animation: spin2 0.9s linear infinite;
        }
        @keyframes spin2 {
            0% { transform: rotate(0deg); }
            100% { transform: rotate(360deg); }
        }
        
        .error {
            text-align: center;
            padding: 40px;
            color: #333;
            background: rgba(231, 76, 60, 0.1);
            border-radius: 15px;
            margin: 20px 0;
        }
        
        .no-products {
            text-align: center;
            padding: 40px;
            color: #333;
            font-size: 1.1rem;
        }
        
        /* Стили для карусели изображений */
        .product-image-carousel {
            position: relative;
            width: 100%;
            height: 300px;
            overflow: hidden;
            border-radius: 15px;
            padding: 5%;
            box-sizing: border-box;
            background: var(--header-surface-bg, #ffffff);
        }
        
        .product-img {
            width: 90%;
            height: 90%;
            object-fit: contain;
            border-radius: 15px;
            margin: 5%;
            transition: opacity 0.2s ease-in-out;
            -webkit-user-select: none;
            user-select: none;
            -webkit-user-drag: none;
            -moz-user-drag: none;
            -ms-user-drag: none;
            user-drag: none;
        }
        
        /* Защита изображений товаров: запрет копирования URL и открытия в новом окне */
        .product-image-carousel img,
        .product-image-carousel-detail img,
        .product-images-container img,
        .product-img-detail,
        .image-slide-item img,
        .thumbnail-item img,
        .product-detail-images img,
        .product-detail-recommendation-image,
        .cart-item-image,
        .cart-recommendation-image,
        .home-recommendation-image,
        .home-discount-image {
            -webkit-user-select: none;
            user-select: none;
            -webkit-user-drag: none;
            -moz-user-drag: none;
            -ms-user-drag: none;
            user-drag: none;
        }
        
        /* Увеличенные изображения для Apple Watch S11 Titanium (но не Sport Band) */
        .product-card[data-model*="Apple Watch S11"]:not([data-model*="Sport Band"]) .product-img,
        .product-card[data-model*="Apple Watch S11"]:not([data-model*="Sport Band"]) .product-image-carousel .product-img,
        .product-card[data-model*="Apple Watch S11"]:not([data-model*="Sport Band"]) .product-image-carousel img,
        [data-model*="Apple Watch S11"]:not([data-model*="Sport Band"]) .product-img {
            width: 110% !important;
            height: 110% !important;
            margin: -5% !important;
            max-width: none !important;
            max-height: none !important;
        }
        
        .product-card[data-model*="Apple Watch S11"]:not([data-model*="Sport Band"]) .product-image-carousel {
            overflow: visible !important;
        }
        
        /* Немного уменьшенные изображения для Apple Watch S11 Sport Band */
        .product-card[data-model*="Apple Watch S11"][data-model*="Sport Band"] .product-img,
        .product-card[data-model*="Apple Watch S11"][data-model*="Sport Band"] .product-image-carousel .product-img,
        .product-card[data-model*="Apple Watch S11"][data-model*="Sport Band"] .product-image-carousel img,
        [data-model*="Apple Watch S11"][data-model*="Sport Band"] .product-img {
            width: 90% !important;
            height: 90% !important;
            margin: 5% 5% 5% 5% !important;
            max-width: none !important;
            max-height: none !important;
            transform: translateY(-4%) !important;
        }
        
        .image-placeholder {
            width: 90%;
            height: 90%;
            margin: 5%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1rem;
            background: #ffffff;
            border-radius: 15px;
        }
        
        .loading-placeholder {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 20px;
            height: 20px;
            margin: 0;
            background: transparent;
            animation: spin 1.5s linear infinite;
            display: none; /* по умолчанию скрыт, показываем через JS */
            align-items: center;
            justify-content: center;
        }
        
        .loading-placeholder img {
            display: none;
        }
        
        @keyframes spin {
            0% { transform: translate(-50%, -50%) rotate(0deg); }
            100% { transform: translate(-50%, -50%) rotate(360deg); }
        }
        
        .image-indicators {
            display: none !important;
        }
        
        .indicator {
            width: 3px;
            height: 3px;
            border-radius: 50%;
            background: rgba(150, 150, 150, 0.6);
            cursor: default;
            transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
            border: 1px solid rgba(200, 200, 200, 0.3);
            pointer-events: none;
        }
        
        .indicator.active {
            width: 8px;
            height: 8px;
            background: rgba(60, 60, 60, 0.9);
            border: 1px solid rgba(40, 40, 40, 0.5);
            transform: scale(1.2);
            box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
        }
        
        .image-nav {
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
            background: none;
            color: #666;
            width: auto;
            height: auto;
            border-radius: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            font-size: 32px;
            padding: 15px 12px;
            font-weight: 300;
            opacity: 0;
            transition: opacity 0.3s ease;
            border: none;
            outline: none;
            text-shadow: none;
            z-index: 10;
        }
        
        .product-image-carousel:hover .image-nav {
            opacity: 1;
        }
        
        .image-nav.prev {
            left: 10px;
        }
        
        .image-nav.next {
            right: 10px;
        }

        /* Стили для анимации слайда изображений */
        .product-image-carousel {
            position: relative;
        }
        
        .image-slide-container {
            position: relative;
            width: 100%;
            height: 100%;
            overflow: hidden;
        }
        
        /* Кадры наложены друг на друга — без горизонального «листания», только смена через opacity */
        .image-slide-wrapper {
            position: relative;
            width: 100%;
            height: 100%;
            display: block;
            transform: none !important;
            transition: none !important;
        }
        
        .image-slide-item {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            display: flex;
            align-items: center;
            justify-content: center;
            box-sizing: border-box;
            pointer-events: none;
        }
        
        .image-slide-item.is-active {
            pointer-events: auto;
        }
        
        .image-slide-item img {
            width: 90%;
            height: 90%;
            object-fit: contain;
            border-radius: 10px;
            transition: opacity 0.18s ease;
        }
        
        
        @media (max-width: 1024px) {
            .container {
                padding: 15px;
            }
            
            .header h1 {
                font-size: 2rem;
            }
            
            .logo {
                width: 40px;
                height: 40px;
            }
            
            .categories {
                grid-template-columns: repeat(2, 1fr);
            }
            
            .products-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .products-grid:not(.individual-mode) {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }
            
            .products-grid.individual-mode {
                grid-template-columns: repeat(2, 1fr);
                gap: 0;
            }
            
            .products-grid.individual-mode .product-name {
                font-size: 0.95rem;
            }
            
            .product-image {
                height: 250px;
            }
            
            .product-image-carousel {
                height: 250px;
            }
            
            .product-img {
                width: 92%;
                height: 92%;
                margin: 4%;
            }
            
            /* Улучшения для свайпа на мобильных устройствах */
            .product-image-carousel {
                touch-action: pan-x pan-y;
                -webkit-overflow-scrolling: touch;
            }
            
            .image-nav {
                display: none !important; /* Скрываем стрелки на мобильных */
            }
        }
        
        @media (max-width: 480px) {
            .product-image {
                height: 220px;
            }
            
            .product-image-carousel {
                height: 220px;
            }
            
            .product-img {
                width: 94%;
                height: 94%;
                margin: 3%;
            }
            
            .lp-fullwidth--darkgray {
                border-radius: 8px;
                margin: 0 8px;
            }
            
            .lp-fullwidth--black.lp-fullwidth--features {
                margin: 0 8px;
            }
            
            .lp-container--mid {
                padding: 0 8px;
                border-radius: 0 0 8px 8px;
            }
            
            .lp-container--mid .lp-unit__wrapper {
                padding: 20px 16px;
            }
            
            .lp-featuresHead__title {
                font-size: 2rem;
            }
            
            .lp-featuresHead__descr {
                font-size: 1.1rem;
            }
            
            .lp-features-item__descr {
                font-size: 1rem;
            }
            
            .lp-unit--esim .lp-unit__wrapper,
            .lp-unit--storage .lp-unit__wrapper {
                padding: 35px 25px;
                min-height: 220px;
            }
        }
        
        /* Cart Styles */
        .cart-icon-btn {
            position: fixed;
            top: 20px;
            right: 20px;
            left: auto;
            background: var(--header-surface-bg, #ffffff);
            color: #333;
            opacity: 0;
            pointer-events: none;
            border: 1px solid #e5e7eb;
            border-radius: 50%;
            width: 56px;
            height: 56px;
            padding: 0;
            font-size: 0;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 1000;
            box-shadow: 0 4px 12px rgba(0,0,0,0.15);
            transition: all 0.3s ease;
        }
        
        .cart-icon-btn:hover {
            background: #f9fafb;
            transform: translateY(-1px);
            box-shadow: 0 4px 12px rgba(0,0,0,0.15);
        }
        
        .cart-icon-btn svg {
            width: 24px;
            height: 24px;
            stroke: #374151;
        }
        
        .cart-icon-btn span:not(.cart-badge) {
            display: none;
        }
        
        .cart-badge {
            background: #FF3B30;
            color: white;
            border-radius: 50%;
            width: 20px;
            height: 20px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 0.7rem;
            font-weight: bold;
            position: absolute;
            top: -4px;
            right: -4px;
            border: 2px solid white;
        }
        
        /* Catalog Floating Button */
        .catalog-icon-btn {
            position: fixed;
            top: 20px;
            left: 20px;
            right: auto;
            background: var(--header-surface-bg, #ffffff);
            color: #333;
            opacity: 0;
            pointer-events: none;
            border: 1px solid #e5e7eb;
            border-radius: 50%;
            width: 56px;
            height: 56px;
            padding: 0;
            font-size: 0;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            z-index: 1000;
            box-shadow: 0 4px 12px rgba(0,0,0,0.15);
            transition: all 0.3s ease;
        }
        
        .catalog-icon-btn:hover {
            background: #f9fafb;
            transform: translateY(-1px);
            box-shadow: 0 4px 12px rgba(0,0,0,0.15);
        }
        
        .catalog-icon-btn svg {
            width: 24px;
            height: 24px;
            stroke: #374151;
        }
        
        .catalog-icon-btn.visible {
            opacity: 1 !important;
            pointer-events: auto !important;
        }
        
        /* Скрываем кнопку каталога на десктопе */
        @media screen and (min-width: 1025px) {
            .catalog-icon-btn {
                display: none !important;
                opacity: 0 !important;
                pointer-events: none !important;
            }
            
            .catalog-icon-btn.visible {
                display: none !important;
                opacity: 0 !important;
                pointer-events: none !important;
            }
        }
        
        .cart-modal {
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: rgba(0,0,0,0.5);
            z-index: 2000;
            overflow-y: auto;
            opacity: 0;
            pointer-events: none;
            transition: opacity 0.3s ease;
            display: flex;
            align-items: flex-start;
            justify-content: center;
            padding: 20px;
        }
        
        .cart-modal.active {
            opacity: 1;
            pointer-events: auto;
        }
        
        .cart-container {
            background: var(--header-surface-bg, #ffffff);
            border-radius: 15px;
            width: 95%;
            max-width: 900px;
            margin: 20px auto;
            padding: 30px 30px 50px 30px;
            display: flex;
            gap: 30px;
            flex-direction: row;
            max-height: 90vh;
            overflow-y: auto;
            overflow-x: hidden;
            scrollbar-width: none; /* Firefox */
            -ms-overflow-style: none; /* IE and Edge */
            transform: scale(0.95) translateY(-20px);
            opacity: 0;
            transition: transform 0.3s ease, opacity 0.3s ease;
            font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
        }
        
        .cart-modal.active .cart-container {
            transform: scale(1) translateY(0);
            opacity: 1;
        }
        
        .cart-container::-webkit-scrollbar {
            display: none; /* Chrome, Safari, Opera */
        }
        
        .cart-form-section {
            flex: 1;
            min-width: 320px;
            display: flex;
            flex-direction: column;
            gap: 20px;
        }
        
        .cart-items-section {
            flex: 1;
            min-width: 320px;
            display: flex;
            flex-direction: column;
            gap: 20px;
        }

        /* Пустая корзина: единый блок на всю ширину, без дубля заголовка секции */
        .cart-container--empty {
            flex-direction: column;
            align-items: stretch;
        }

        .cart-container--empty .cart-form-section {
            display: none !important;
        }

        .cart-container--empty .cart-items-section {
            flex: 1 1 auto;
            min-width: 0;
            width: 100%;
        }

        .cart-container--empty .cart-items-section .cart-title-wrap {
            display: none;
        }

        .cart-empty-state {
            width: 100%;
            box-sizing: border-box;
            margin: 0 auto;
            padding: 32px 16px 40px;
                display: flex;
                flex-direction: column;
            align-items: center;
            text-align: center;
            background: #fff;
            border-radius: 0;
        }

        .cart-empty-state__icon {
            width: 64px;
            height: 64px;
            margin-bottom: 12px;
            color: #6b7280;
        }

        .cart-empty-state__icon svg {
                width: 100%;
            height: 100%;
            display: block;
        }

        .cart-empty-state__title {
            margin: 0 0 8px;
            font-size: 1.1rem;
            font-weight: 600;
            color: #111827;
            line-height: 1.3;
        }

        .cart-empty-state__lead {
            margin: 0 0 24px;
            max-width: 340px;
            font-size: 0.95rem;
            line-height: 1.4;
            color: #6b7280;
            font-weight: 400;
        }

        /* Как «В корзину» на десктопе (#111111) */
        .cart-empty-state__btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
                box-sizing: border-box;
            width: 100%;
            max-width: 320px;
            padding: 15px 30px;
            border: none;
            border-radius: 6px;
            font-size: 0.95rem;
            font-weight: 600;
            font-family: inherit;
            cursor: pointer;
            color: #fff;
            background: #111111;
            transition: background 0.2s ease, color 0.2s ease;
            -webkit-tap-highlight-color: transparent;
        }

        .cart-empty-state__btn:hover:not(:disabled) {
            background: #1a1a1a;
        }

        .cart-empty-state__btn:active:not(:disabled) {
            background: #0a0a0a;
        }

        /* /order/* — шаги и stepper на всех ширинах */
        #desktopCheckoutFlow[hidden] {
            display: none !important;
        }

        section.desktop-cart-page:has(#desktopCheckoutSuccess:not([hidden])) #desktopCheckoutFlow {
            display: none !important;
        }

        #desktopCheckoutFlow[data-desktop-checkout-step="3"] .desktop-cart-page__layout,
        #desktopCheckoutFlow[data-desktop-checkout-step="3"] .desktop-cart-page__recommendations-full {
            display: none !important;
        }

        #desktopCheckoutFlow[data-desktop-checkout-step="2"] #desktopCartBrowseWrap {
            display: none !important;
        }

        /* Рекомендации были внутри browse — на шаге 2 browse скрыт, слот выносим отдельно */
        #desktopCheckoutFlow[data-desktop-checkout-step="2"] #desktopCartRecommendationsSlot,
        #desktopCheckoutFlow[data-desktop-checkout-step="3"] #desktopCartRecommendationsSlot {
            display: none !important;
        }

        #desktopCheckoutFlow[data-desktop-checkout-step="1"] #desktopCartFormSlot .cart-form-section {
            display: none !important;
        }

        #desktopCheckoutFlow[data-desktop-checkout-step="1"] #desktopCartAsideStep1 {
            display: block !important;
        }

        #desktopCheckoutFlow[data-desktop-checkout-step="2"] #desktopCartAsideStep1 {
            display: none !important;
        }

        section.desktop-cart-page #desktopCheckoutFlow {
            display: flex;
            flex-direction: column;
            align-items: stretch;
        }

        section.desktop-cart-page #desktopCheckoutFlow > .desktop-cart-page__layout {
                margin-top: 0;
        }

        section.desktop-cart-page #desktopCheckoutFlow > .desktop-cart-page__recommendations-full {
            width: 100%;
            box-sizing: border-box;
            flex-shrink: 0;
        }

        .checkout-stepper {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
            gap: 8px;
            width: 100%;
            margin-bottom: 20px;
            box-sizing: border-box;
        }

        #checkoutStepperNav[hidden] {
            display: none !important;
        }

        .checkout-stepper__connector {
            flex: 1;
            height: 2px;
            background: transparent;
            margin-top: 15px;
            min-width: 8px;
        }

        .checkout-stepper__item {
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 8px;
            flex: 0 0 auto;
            width: 88px;
            background: transparent;
                border: none;
            padding: 0;
            cursor: default;
            color: inherit;
            font: inherit;
        }

        button.checkout-stepper__item--clickable {
            cursor: pointer;
        }

        button.checkout-stepper__item--clickable:hover .checkout-stepper__bubble {
            box-shadow: 0 0 0 2px rgba(17, 24, 39, 0.12);
        }

        .checkout-stepper__bubble {
            width: 32px;
            height: 32px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 14px;
            font-weight: 600;
            background: transparent;
            color: #6b7280;
            transition: background 0.2s ease, color 0.2s ease;
        }

        .checkout-stepper__item--past .checkout-stepper__bubble {
            background: #111827;
            color: #fff;
        }

        .checkout-stepper__item--current .checkout-stepper__bubble {
            background: #111827;
            color: #fff;
        }

        .checkout-stepper__item--muted .checkout-stepper__bubble {
            background: #e5e7eb;
            color: #9ca3af;
        }

        .checkout-stepper__item--current .checkout-stepper__label {
                color: #111827;
            font-weight: 500;
        }

        .checkout-stepper__label {
            font-size: 11px;
            line-height: 1.25;
            color: #6b7280;
            text-align: center;
        }

        .desktop-cart-aside-next {
            margin-top: 0;
            padding-top: 14px;
            border-top: 1px solid #e5e7eb;
        }

        .desktop-cart-proceed-btn {
            width: 100%;
            justify-content: center;
            padding: 16px 20px !important;
            font-size: 16px !important;
            font-weight: 600 !important;
            margin-top: 0 !important;
            background: #111111 !important;
            color: #ffffff !important;
            border: none !important;
            box-shadow: none !important;
        }

        .desktop-cart-proceed-btn:hover:not(:disabled) {
            background: #1a1a1a !important;
            color: #ffffff !important;
            transform: none !important;
            box-shadow: none !important;
        }

        .desktop-cart-proceed-btn:active:not(:disabled) {
            background: #0a0a0a !important;
            color: #ffffff !important;
        }

        .desktop-cart-proceed-btn:disabled {
            background: #9ca3af !important;
            color: #ffffff !important;
            cursor: not-allowed !important;
        }

        .desktop-cart-aside-help {
            margin-top: 22px;
            padding-top: 22px;
            border-top: 1px solid #e5e7eb;
            text-align: center;
            box-sizing: border-box;
        }

        .desktop-cart-page .cart-total > .desktop-cart-aside-help {
            margin-top: 16px;
            padding-top: 16px;
        }

        .desktop-cart-aside-help__lead {
            margin: 0 0 18px;
            font-size: 15px;
                font-weight: 600;
            color: #111827;
            letter-spacing: -0.02em;
            line-height: 1.35;
        }

        .desktop-cart-aside-help__circles {
            display: flex;
            align-items: center;
            justify-content: center;
            gap: clamp(16px, 4vw, 26px);
            margin: 0 0 14px;
        }

        .desktop-cart-aside-help__bubble {
            flex-shrink: 0;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            text-decoration: none;
            box-sizing: border-box;
            color: #374151;
            background: transparent;
            padding: 0;
            border: 0;
        }

        .desktop-cart-aside-help__bubble svg {
                display: block;
            width: 20px;
            height: 20px;
        }

        .desktop-cart-aside-help__bubble--max img {
            width: 20px;
            height: 20px;
            object-fit: contain;
                display: block;
        }

        .desktop-cart-aside-help__tel-display {
            margin: 0;
        }

        .desktop-cart-aside-help__tel-link {
            font-size: 18px;
            font-weight: 500;
            letter-spacing: -0.03em;
            text-decoration: none;
            transition: opacity 0.15s ease;
        }

        .desktop-cart-aside-help__tel-link:hover {
            opacity: 0.82;
        }

        .desktop-cart-aside-help__tel-muted {
            color: #9ca3af;
                font-weight: 400;
            }

        .desktop-cart-aside-help__tel-main {
                color: #111827;
            font-weight: 500;
        }

        .desktop-cart-aside-help__mailto {
            margin: 14px 0 0;
            font-size: 13px;
        }

        .desktop-cart-aside-help__mailto a {
            color: #6b7280;
            font-weight: 500;
            text-decoration: underline;
            text-underline-offset: 3px;
        }

        .desktop-cart-aside-help__mailto a:hover {
            color: #111827;
        }

        /* Рекомендации в полноэкранной корзине — те же стили, что на десктопе (все ширины) */
            .desktop-cart-page .cart-recommendations {
                margin-top: 0;
                padding: clamp(8px, 2vw, 22px) clamp(16px, 4vw, 40px) clamp(16px, 4vw, 40px);
                border-top: none;
                background: #fff;
                box-sizing: border-box;
            }

            .desktop-cart-page .cart-recommendations-list {
                overflow: hidden;
            }

            .desktop-cart-page .cart-recs-with-arrows {
                gap: 8px;
            }

            .desktop-cart-page .cart-recommendations--product-detail .cart-recommendations-title {
                font-size: 1.4rem;
                font-weight: 700;
                color: #111827;
            }

            .desktop-cart-page .cart-recommendations-list.product-detail-recommendations-list {
                max-width: 100%;
            }

            .desktop-cart-page .cart-recommendations-list .product-detail-recommendations-slider#cartRecommendationsSlider {
                transition: transform 0.4s ease;
            }

            .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendations-slide {
                display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            grid-auto-rows: auto;
                gap: 0;
                align-items: stretch;
                border-left: 1px solid #eaeaea;
                border-top: 1px solid #eaeaea;
                border-radius: 6px;
                overflow: hidden;
                background: #fff;
                box-sizing: border-box;
            }

            @media (max-width: 1024px) {
                .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendations-slide {
                    grid-template-columns: repeat(2, minmax(0, 1fr));
                }

                .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendation-item--cart .product-detail-recommendation-price {
                    flex-direction: column;
                    align-items: flex-start;
                    gap: 2px;
                    max-width: 100%;
                }

                .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendation-item--cart .product-detail-recommendation-price .old-price {
                    order: -1;
                    font-size: 0.75rem;
                    white-space: normal;
                }

                .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendation-item--cart .product-detail-recommendation-price .current-price {
                    font-size: 1rem;
                }
            }

            .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendation-item--cart {
                border: none;
                border-right: 1px solid #eaeaea;
                border-bottom: 1px solid #eaeaea;
                border-radius: 0;
                background: #fff;
                box-shadow: none;
                box-sizing: border-box;
                display: flex;
                flex-direction: column;
                height: 100%;
                min-height: 0;
                align-items: stretch;
            }

            .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendation-item--cart:hover {
                background: #fff;
                transform: none;
                box-shadow: none;
                border-right-color: #eaeaea;
                border-bottom-color: #eaeaea;
                border-left: none;
                border-top: none;
            }

            .desktop-cart-page .cart-recommendation-item {
                background: #fff;
                border-radius: 6px;
                padding: 18px;
                border: 1px solid #eaeaea;
                flex-direction: column;
                align-items: stretch;
                gap: 12px;
                height: 100%;
                min-height: 0;
                position: relative;
                box-sizing: border-box;
                box-shadow: none;
                transition: none;
            }

            .desktop-cart-page .cart-recommendations:not(.cart-recommendations--product-detail) .cart-recommendations-slide {
                gap: 0;
                border: 1px solid #eaeaea;
                border-radius: 6px;
                overflow: hidden;
                box-sizing: border-box;
            }

            .desktop-cart-page .cart-recommendations:not(.cart-recommendations--product-detail) .cart-recommendations-slide .cart-recommendation-item {
                border-radius: 0;
                border: none;
                border-bottom: 1px solid #eaeaea;
            }

            .desktop-cart-page .cart-recommendations:not(.cart-recommendations--product-detail) .cart-recommendations-slide .cart-recommendation-item:last-child {
                border-bottom: none;
            }

            .desktop-cart-page .cart-recommendation-image {
                width: 100%;
                height: 160px;
                border-radius: 6px;
                background: #fff;
                padding: 12px;
                box-sizing: border-box;
            }

            .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendation-item--cart .product-detail-recommendation-image {
                width: 100%;
                max-width: 100%;
                height: 96px;
                max-height: 96px;
                padding: 4px;
                box-sizing: border-box;
                border-radius: 6px;
            }

            .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendation-item--cart .product-detail-recommendation-name {
                font-size: 0.875rem;
                font-weight: 500;
                color: #111827;
                line-height: 1.25;
                overflow-wrap: anywhere;
                word-break: break-word;
                text-align: left;
                display: -webkit-box;
                -webkit-line-clamp: 3;
                -webkit-box-orient: vertical;
                overflow: hidden;
                white-space: normal;
                text-overflow: ellipsis;
            }

            .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendation-item--cart .product-detail-recommendation-name.product-detail-recommendation-name-multiline {
                display: block;
                -webkit-line-clamp: unset;
                overflow: visible;
            }

            .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendation-item--cart .product-detail-recommendation-price {
                justify-content: flex-start;
                margin-top: auto;
            }

            .desktop-cart-page .cart-recommendations--product-detail .product-detail-recommendation-item--cart .cart-recommendation-add-btn {
                padding: 6px 8px;
                font-size: 0.875rem;
                font-weight: 600;
            }

            .desktop-cart-page .product-detail-recommendation-item--cart {
                position: relative;
                align-items: stretch;
            }

            .desktop-cart-page .product-detail-recommendation-item--cart .product-detail-recommendation-info {
                text-align: left;
                align-items: flex-start;
                flex: 1 1 auto;
                display: flex;
                flex-direction: column;
                min-height: 0;
            }

            .desktop-cart-page .product-detail-recommendation-item--cart .product-detail-recommendation-name {
                text-align: left;
            }

            .desktop-cart-page .product-detail-recommendation-badge {
                position: absolute;
                top: 12px;
                right: 12px;
                z-index: 2;
                background: linear-gradient(135deg, #ff3b30 0%, #ff2d55 100%);
                color: #fff;
                padding: 3px 8px;
                border-radius: 8px;
                font-size: 11px;
                font-weight: 600;
            }

            .desktop-cart-page .product-detail-recommendation-item--cart .cart-recommendation-add-btn {
                width: 100%;
                margin-top: 8px;
                padding: 10px 14px;
                border-radius: 999px;
                font-size: 0.875rem;
                font-weight: 600;
                background: #111827;
                color: #fff;
                border: none;
            }

            .desktop-cart-page .cart-recommendation-info {
                gap: 8px;
                flex: 1 1 auto;
                display: flex;
                flex-direction: column;
                min-height: 0;
            }

            .desktop-cart-page .cart-recommendation-name {
                font-size: 14px;
                line-height: 1.3;
                font-weight: 500;
            }

            .desktop-cart-page .cart-recommendation-price {
                font-family: inherit;
                font-size: 16px;
                font-weight: 600;
                color: #111827;
                letter-spacing: -0.01em;
                margin-top: auto;
                line-height: 1.2;
            }

            .desktop-cart-page .cart-recommendation-old-price {
                font-size: 14px;
                color: #6b7280;
                text-decoration: line-through;
                margin-left: 8px;
                font-weight: 400;
            }

            .desktop-cart-page .cart-recommendation-badge {
                position: absolute;
                top: 12px;
                right: 12px;
                background: linear-gradient(135deg, #ff3b30 0%, #ff2d55 100%);
                color: white;
                padding: 3px 8px;
                border-radius: 12px;
                font-family: inherit;
                font-size: 11px;
                font-weight: 600;
                z-index: 2;
                box-shadow: 0 2px 8px rgba(255, 59, 48, 0.3);
            }

            .desktop-cart-page .cart-recommendation-add-btn {
                width: 100%;
                align-self: stretch;
                box-sizing: border-box;
                margin-top: 4px;
                background: #111827;
                color: #fff;
                border: none;
                border-radius: 999px;
            }

        /* order/complete — все ширины */
            .desktop-checkout-success {
                width: 100%;
                max-width: 1400px;
                margin: 0 auto;
                padding: 24px 20px 56px;
                box-sizing: border-box;
                text-align: left;
                font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            }

            .desktop-checkout-success__grid {
                display: grid;
                grid-template-columns: minmax(0, 1fr) 360px;
                gap: 28px 32px;
                align-items: start;
            }

            .desktop-checkout-success__h1 {
                margin: 0 0 12px;
                font-size: 32px;
                line-height: 1.15;
                font-weight: 600;
                color: #111827;
                letter-spacing: -0.03em;
            }

            .desktop-checkout-success__lead {
                margin: 0 0 24px;
                font-size: 15px;
                line-height: 1.55;
                color: #6b7280;
                max-width: 640px;
            }

            .desktop-checkout-success__order-row {
                display: flex;
                flex-wrap: wrap;
                align-items: baseline;
                justify-content: space-between;
                gap: 12px 20px;
                margin-bottom: 28px;
                padding-bottom: 20px;
                border-bottom: 1px solid #e5e7eb;
            }

            .desktop-checkout-success__order-num {
                display: inline-flex;
                align-items: center;
                gap: 10px;
                font-size: 16px;
                color: #111827;
            }

            .desktop-checkout-success__order-num strong {
                font-weight: 600;
            }

            .desktop-checkout-success__order-date {
                font-size: 15px;
                color: #6b7280;
                margin-left: auto;
            }

            .desktop-checkout-success__icon-btn {
                display: inline-flex;
                align-items: center;
                justify-content: center;
                width: 36px;
                height: 36px;
                padding: 0;
                border: 1px solid #e5e7eb;
                border-radius: 6px;
                background: #fff;
                color: #374151;
                cursor: pointer;
                transition: background 0.15s ease, border-color 0.15s ease;
            }

            .desktop-checkout-success__icon-btn:hover {
                background: #f9fafb;
                border-color: #d1d5db;
            }

            .desktop-checkout-success__triple {
                display: grid;
                grid-template-columns: repeat(3, minmax(0, 1fr));
                gap: 20px 24px;
                margin-bottom: 28px;
            }

            .desktop-checkout-success__col-title {
                font-size: 13px;
                font-weight: 600;
                text-transform: uppercase;
                letter-spacing: 0.04em;
                color: #9ca3af;
                margin: 0 0 10px;
            }

            .desktop-checkout-success__col-body {
                font-size: 15px;
                line-height: 1.5;
                color: #374151;
            }

            .desktop-checkout-success__col-body p {
                margin: 0 0 8px;
            }

            .desktop-checkout-success__col-body p:last-child {
                margin-bottom: 0;
            }

            .desktop-checkout-success__col-muted {
                font-size: 13px;
                color: #6b7280;
                margin-top: 6px;
            }

            .desktop-checkout-success__linkish {
                margin-top: 12px;
                padding: 0;
                border: none;
                background: none;
                font-size: 14px;
                font-weight: 500;
                color: #111827;
                text-decoration: underline;
                text-underline-offset: 3px;
                cursor: pointer;
                font-family: inherit;
            }

            .desktop-checkout-success__linkish:hover {
                color: #000;
            }

            .desktop-checkout-success__map-wrap {
                margin-top: 8px;
            }

            .desktop-checkout-success__map-title {
                font-size: 15px;
                font-weight: 600;
                color: #111827;
                margin: 0 0 12px;
            }

            .desktop-checkout-success__map-frame {
                width: 100%;
                height: 280px;
                border: 1px solid #e5e7eb;
                border-radius: 6px;
                display: block;
                overflow: hidden;
                box-sizing: border-box;
            }

            .desktop-checkout-success__map-link {
                display: inline-block;
                margin-top: 10px;
                font-size: 13px;
                color: #2563eb;
                text-decoration: none;
            }

            .desktop-checkout-success__map-link:hover {
                text-decoration: underline;
            }

            .desktop-checkout-success__aside-note {
                font-size: 13px;
                line-height: 1.45;
                color: #9ca3af;
                margin-bottom: 14px;
            }

            .desktop-checkout-success__aside-btns {
                display: flex;
                flex-direction: column;
                gap: 10px;
                margin-bottom: 20px;
            }

            .desktop-checkout-success__btn {
                width: 100%;
                padding: 14px 18px;
                border-radius: 6px;
                font-size: 15px;
                font-weight: 600;
                cursor: pointer;
                border: none;
                font-family: inherit;
                letter-spacing: -0.01em;
                transition: background 0.2s ease, border-color 0.2s ease, opacity 0.2s ease;
                box-sizing: border-box;
            }

            .desktop-checkout-success__btn--dark {
                background: #111111;
                color: #fff;
            }

            .desktop-checkout-success__btn--dark:hover {
                background: #1f2937;
            }

            .desktop-checkout-success__btn--ghost {
                background: #fff;
                color: #111827;
                border: 1px solid #e5e7eb;
            }

            .desktop-checkout-success__btn--ghost:hover {
                background: #f9fafb;
            }

            .desktop-checkout-success__summary {
                background: #fff;
                border: 1px solid #e5e7eb;
                border-radius: 6px;
                padding: 18px 18px 16px;
                margin-bottom: 16px;
            }

            .desktop-checkout-success__summary-row {
                display: flex;
                justify-content: space-between;
                align-items: baseline;
                font-size: 14px;
                color: #4b5563;
                margin-bottom: 10px;
            }

            .desktop-checkout-success__summary-row span:last-child {
                font-variant-numeric: tabular-nums;
            }

            .desktop-checkout-success__summary-total {
                display: flex;
                justify-content: space-between;
                align-items: center;
                margin-top: 14px;
                padding-top: 14px;
                border-top: 1px solid #e5e7eb;
                font-size: 17px;
                font-weight: 600;
                color: #111827;
            }

            .desktop-checkout-success__teaser {
                background: #f3f4f6;
                border: 1px solid #e5e7eb;
                border-radius: 6px;
                padding: 16px;
                font-size: 13px;
                line-height: 1.45;
                color: #6b7280;
            }

            .desktop-checkout-success__teaser strong {
                color: #111827;
                font-weight: 600;
            }

            @media (max-width: 1100px) {
                .desktop-checkout-success__grid {
                    grid-template-columns: minmax(0, 1fr);
                }

                .desktop-checkout-success__aside {
                    order: 2;
                    max-width: 480px;
                }

                .desktop-checkout-success__triple {
                    grid-template-columns: minmax(0, 1fr);
                }

                .desktop-checkout-success__order-date {
                    margin-left: 0;
                    width: 100%;
                }
        }

        @media (max-width: 1024px) {
            .checkout-stepper__item {
                width: 72px;
            }

            .checkout-stepper__bubble {
                width: 28px;
                height: 28px;
                font-size: 14px;
            }

            .checkout-stepper__connector {
                margin-top: 13px;
                min-width: 4px;
            }

            .checkout-stepper__label {
                font-size: 10px;
            }

            .desktop-cart-page {
                display: block;
                max-width: 1400px;
                margin: 0 auto;
                padding: 10px 10px 32px;
                background: #ffffff;
                box-shadow: 0 0 0 100vmax #ffffff;
                clip-path: inset(0 -100vmax);
                font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
            }

            .desktop-cart-page__layout {
                display: flex;
                flex-direction: column;
                gap: 10px;
                align-items: stretch;
            }

            .desktop-cart-page__main {
                display: flex;
                flex-direction: column;
                gap: 10px;
                min-width: 0;
            }

            .desktop-cart-page__aside {
                position: static;
                align-self: stretch;
                min-width: 0;
            }

            .desktop-cart-page .cart-form-section,
            .desktop-cart-page .cart-items-section {
                padding: 16px 12px;
                background: #fff;
                box-sizing: border-box;
            }

            .desktop-cart-page .cart-items-section > .cart-title-wrap {
                display: none !important;
            }

            .desktop-cart-page .cart-total {
                padding: 16px 12px 24px;
                background: #fff;
                box-sizing: border-box;
            }

            .desktop-cart-page .desktop-cart-page__recommendations-full {
                margin-top: 8px;
                background: #fff;
                box-sizing: border-box;
            }

            .desktop-cart-page__masthead {
                max-width: 1400px;
                margin: 0 auto;
                padding: 0 2px 6px;
            }

            .desktop-cart-page__title-row {
                margin-bottom: 12px;
            }

            .desktop-cart-page__h1 {
                font-size: 22px;
                line-height: 1.15;
                font-weight: 600;
                letter-spacing: -0.03em;
            }

            .desktop-cart-page__title-sub-line {
                font-size: 14px;
            }

            .desktop-cart-page--empty .cart-empty-state {
                min-height: 260px;
                padding: 28px 0 40px;
            }

            .desktop-cart-page--empty .desktop-cart-page__aside {
                display: none !important;
            }

            .desktop-cart-page--empty #desktopCartFormSlot .cart-form-section {
                display: none !important;
            }

            .desktop-cart-page--empty .cart-items-section .cart-title-wrap {
                display: none;
            }

            /* Этап 1 (/order/cart): товары и «Итого» на узкой ширине */
            .desktop-cart-page #desktopCartBrowseWrap {
                min-width: 0;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-items-list {
                gap: 0;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-item {
                display: grid;
                grid-template-columns: 76px minmax(0, 1fr);
                column-gap: 12px;
                align-items: start;
                padding: 14px 0;
                background: transparent;
                border-radius: 0;
                border: none;
                border-bottom: 1px solid #f1f5f9;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-item:first-child {
                padding-top: 0;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-item-image {
                width: 76px;
                height: 76px;
                grid-column: 1;
                grid-row: 1;
                align-self: start;
                padding: 0;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-item-info {
                grid-column: 2;
                grid-row: 1;
                min-width: 0;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-item-main {
                display: flex;
                flex-direction: row;
                align-items: flex-start;
                justify-content: space-between;
                gap: 10px;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-item-left {
                min-width: 0;
                flex: 1;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-item-name {
                font-size: 0.9375rem;
                line-height: 1.35;
                font-weight: 600;
                color: #111827;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-item-price-qty {
                flex-direction: column;
                align-items: flex-end;
                justify-content: flex-start;
                gap: 8px;
                min-width: 0;
                width: auto;
                flex-shrink: 0;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-item-line-totals {
                align-items: flex-end;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-item-price-qty .qty-controls {
                margin-left: 0;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .cart-items-list .clear-cart-btn {
                margin-top: 8px;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .desktop-cart-page__aside .cart-total {
                margin-top: 0;
                padding-top: 0;
                border-top: none;
                gap: 14px;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .desktop-cart-page__aside .cart-total::before {
                content: "Итого";
                display: block;
                margin: 0 0 12px;
                color: #111827;
                font-size: 20px;
                line-height: 1.2;
                font-weight: 600;
                letter-spacing: -0.02em;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .desktop-cart-page__aside .cart-total-final {
                margin-bottom: 8px;
                padding-top: 10px;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .desktop-cart-page__aside .cart-total-price {
                font-size: 1.75rem;
                font-weight: 600;
                letter-spacing: -0.03em;
                line-height: 1.1;
            }

            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="1"] .desktop-cart-aside-help,
            .desktop-cart-page #desktopCheckoutFlow[data-desktop-checkout-step="2"] .desktop-cart-aside-help {
                display: block !important;
            }

            .desktop-checkout-success__aside .desktop-cart-aside-help {
                margin-top: 22px;
                padding-top: 22px;
            }

            .desktop-cart-page #promoCodeInputSection > div:first-of-type {
                display: flex !important;
                flex-wrap: wrap !important;
                gap: 10px !important;
                align-items: stretch !important;
            }

            .desktop-cart-page #promoCodeInput {
                flex: 1 1 120px !important;
                min-width: 0 !important;
                min-height: 48px !important;
                padding: 0 14px !important;
                font-size: 15px !important;
                border-radius: 4px !important;
                border: 1px solid #d1d5db !important;
                box-sizing: border-box !important;
            }

            .desktop-cart-page #promoCodeBtn {
                min-width: 120px !important;
                min-height: 48px !important;
                padding: 0 18px !important;
                background: #111827 !important;
                color: #fff !important;
                border: none !important;
                border-radius: 4px !important;
                font-size: 15px !important;
                font-weight: 600 !important;
                font-family: inherit !important;
                cursor: pointer !important;
                white-space: nowrap !important;
                box-sizing: border-box !important;
            }

            .desktop-cart-page #promoCodeBtn:hover:not(:disabled) {
                background: #0f172a !important;
            }

            .desktop-checkout-success {
                padding: 16px 12px 40px;
            }

            .desktop-checkout-success__h1 {
                font-size: 24px;
            }
        }

        @media (min-width: 1025px) {
            .desktop-cart-page {
                display: block;
                max-width: 1400px;
                margin: 0 auto;
                padding: 36px 20px 64px;
                background: #ffffff;
                box-shadow: 0 0 0 100vmax #ffffff;
                clip-path: inset(0 -100vmax);
                font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
                -webkit-font-smoothing: antialiased;
                -moz-osx-font-smoothing: grayscale;
            }

            .desktop-cart-page__layout {
                display: grid;
                grid-template-columns: minmax(0, 1fr) 380px;
                column-gap: 20px;
                row-gap: 10px;
                align-items: start;
            }

            .desktop-cart-page--empty .desktop-cart-page__layout {
                grid-template-columns: minmax(0, 1fr);
            }

            .desktop-cart-page--empty .desktop-cart-page__aside {
                display: none !important;
            }

            .desktop-cart-page--empty #desktopCartFormSlot .cart-form-section {
                display: none !important;
            }

            .desktop-cart-page--empty .desktop-cart-page__main {
                grid-column: 1 / -1;
            }

            .desktop-cart-page--empty .cart-items-section .cart-title-wrap {
                display: none;
            }

            .desktop-cart-page--empty .cart-empty-state {
                min-height: 360px;
                justify-content: center;
                padding: 48px 0 64px;
                background: transparent;
            }

            .desktop-cart-page .cart-empty-state__title {
                font-size: 24px;
                font-weight: 400;
                line-height: 1.2;
                margin-bottom: 10px;
            }

            .desktop-cart-page .cart-empty-state__lead {
                font-size: 16px;
                line-height: 1.25;
                margin-bottom: 28px;
            }

            .desktop-cart-page .cart-empty-state__btn {
                max-width: 360px;
            }

            .desktop-cart-page__main {
                display: flex;
                flex-direction: column;
                gap: 10px;
                min-width: 0;
            }

            .desktop-cart-page__aside {
                position: sticky;
                top: calc(var(--header-desktop-offset, 96px) + 16px);
                align-self: start;
                min-width: 0;
            }

            .desktop-cart-page .cart-form-section,
            .desktop-cart-page .cart-items-section {
                min-width: 0;
                width: 100%;
                background: #fff;
                border-radius: 0;
                padding: 40px;
                box-sizing: border-box;
            }

            .desktop-cart-page .cart-total {
                margin-top: 0;
                padding: 40px 40px 52px;
                border: none;
                border-radius: 0;
                background: #fff;
                box-shadow: none;
            }

            /* Явный порядок: иначе order: 0 по умолчанию ломает порядок (примечание уезжало вверх) */
            .desktop-cart-page .cart-total > .promo-code-section {
                order: 1;
            }

            .desktop-cart-page .cart-total > .cart-total-item:not(.cart-total-final) {
                order: 2;
            }

            .desktop-cart-page .cart-total > .cart-total-final {
                order: 3;
            }

            .desktop-cart-page .cart-total > .cart-total-note {
                order: 4;
            }

            .desktop-cart-page .cart-total > .desktop-cart-aside-help {
                order: 5;
            }

            .desktop-cart-page .cart-total > .desktop-cart-aside-next {
                order: 6;
            }

            .desktop-cart-page .cart-total > .cart-recommendations {
                order: 7;
            }

            .desktop-cart-page .desktop-cart-page__recommendations-full {
                margin-top: 12px;
            }

            .desktop-cart-page .cart-total::before {
                content: "Итого";
                display: block;
                margin: 0 0 18px;
                color: #111827;
                font-size: 24px;
                line-height: 1.2;
                font-weight: 400;
            }

            .desktop-cart-page .cart-total-item:not(.cart-total-final) {
                position: relative;
                display: grid;
                grid-template-columns: max-content max-content;
                justify-content: space-between;
                margin-bottom: 12px;
                z-index: 0;
            }

            .desktop-cart-page .cart-total-item:not(.cart-total-final)::before {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                bottom: 5px;
                z-index: -1;
                height: 1px;
                background-image: linear-gradient(to right, #d1d5db 33%, transparent 0);
                background-position: bottom;
                background-size: 4px 1px;
                background-repeat: repeat-x;
            }

            .desktop-cart-page .cart-total-label,
            .desktop-cart-page .cart-total-value {
                background: #fff;
                font-size: 16px;
            }

            .desktop-cart-page .cart-total-label {
                padding-right: 8px;
            }

            .desktop-cart-page .cart-total-value {
                padding-left: 8px;
                color: #111827;
                font-weight: 600;
            }

            .desktop-cart-page .cart-total-note {
                margin: 6px 0 14px !important;
            }

            .desktop-cart-page .cart-total-final {
                display: block;
                margin: 0 0 0;
                padding: 0 0 0;
                border-top: none;
                border-bottom: none;
            }

            .desktop-cart-page .cart-total-final .cart-total-label {
                display: block;
                margin-bottom: 3px;
                padding: 0;
                color: #4b5563;
                font-size: 16px;
                font-weight: 400;
            }

            .desktop-cart-page .cart-total-price {
                font-size: 44px;
                line-height: 1;
                font-weight: 600;
                color: #111827;
                letter-spacing: -0.04em;
            }

            .desktop-cart-page .cart-title-wrap {
                margin-bottom: 20px;
            }

            .desktop-cart-page .cart-recommendations-title,
            .desktop-cart-page .cart-title {
                margin: 0 0 20px;
                color: #111827;
                font-size: 24px;
                line-height: 1.2;
                font-weight: 400;
            }

            .desktop-cart-page .cart-title-wrap .cart-title {
                margin-bottom: 0;
            }

            .desktop-cart-page .cart-title-count {
                color: #6b7280;
                font-weight: 400;
            }

            .desktop-cart-page .cart-title-sub {
                margin-top: 6px;
                font-size: 16px;
                line-height: 1.25;
                color: #6b7280;
            }

            .desktop-cart-page .cart-items-list {
                gap: 0;
            }

            .desktop-cart-page .cart-item {
                display: grid;
                grid-template-columns: 100px minmax(0, 1fr) max-content;
                column-gap: 20px;
                align-items: center;
                min-height: 148px;
                padding: 24px 0;
                border-top: 1px solid #f1f5f9;
                border-radius: 0;
            }

            .desktop-cart-page .cart-item:first-child {
                border-top: none;
                padding-top: 0;
            }

            .desktop-cart-page .cart-item-image {
                width: 100px;
                height: 100px;
                padding: 0;
                grid-column: 1;
            }

            .desktop-cart-page .cart-item-info {
                display: block;
                min-width: 0;
                grid-column: 2 / 4;
            }

            .desktop-cart-page .cart-item-main {
                display: grid;
                grid-template-columns: minmax(0, 1fr) max-content;
                gap: 20px;
                align-items: center;
            }

            .desktop-cart-page .cart-item-left {
                max-width: none;
            }

            .desktop-cart-page .cart-item-name {
                margin: 0 0 5px;
                color: #111827;
                font-size: 16px;
                line-height: 1.35;
                font-weight: 600;
                letter-spacing: -0.015em;
            }

            .desktop-cart-page .cart-item-prices-under {
                margin-top: 6px;
            }

            .desktop-cart-page .cart-item-price-under {
                font-size: 16px;
                letter-spacing: -0.02em;
            }

            .desktop-cart-page .cart-item-price-under-suffix {
                font-size: 14px;
                color: #9ca3af;
            }

            .desktop-cart-page .cart-item-price-old-under {
                font-size: 14px;
            }

            .desktop-cart-page .cart-item-line-old-total {
                font-size: 14px;
                color: #9ca3af;
            }

            .desktop-cart-page .cart-item-line-old-total s {
                color: #9ca3af;
            }

            .desktop-cart-page .cart-item-specs {
                color: #9ca3af;
                font-size: 14px;
            }

            .desktop-cart-page .cart-item-price-qty {
                min-width: 150px;
                align-items: flex-end;
                gap: 12px;
            }

            .desktop-cart-page .cart-item-price {
                font-size: 16px;
                font-weight: 600;
            }

            .desktop-cart-page .cart-item-line-total {
                font-size: 16px;
                font-weight: 600;
                letter-spacing: -0.02em;
            }

            .desktop-cart-page .qty-controls {
                border-radius: 999px;
                padding: 4px 8px;
                border-color: #e5e7eb;
            }

            .desktop-cart-page .clear-cart-btn {
                font-size: 15px;
                font-weight: 500;
                letter-spacing: -0.01em;
                padding: 10px 0;
                text-decoration: none;
            }

            .desktop-cart-page .clear-cart-btn:hover {
                background: transparent !important;
                color: #111827 !important;
                text-decoration: none;
            }

            .desktop-cart-page .cart-buttons-row {
                display: flex;
                flex-direction: column;
                gap: 10px;
                width: 100%;
                margin-top: 4px;
            }

            .desktop-cart-page .cart-buttons-row .cart-submit-btn {
                flex: none;
                width: 100%;
                min-height: 52px;
                border-radius: 6px;
                font-size: 16px;
                font-weight: 600;
                margin-top: 0;
                transform: none;
                box-shadow: none;
            }

            .desktop-cart-page #promoCodeInputSection > div:first-of-type {
                display: flex !important;
                gap: 10px !important;
                align-items: stretch !important;
            }

            .desktop-cart-page #promoCodeInput {
                flex: 1 !important;
                min-width: 0 !important;
                min-height: 48px !important;
                padding: 0 14px !important;
                font-size: 15px !important;
                border-radius: 4px !important;
                border: 1px solid #d1d5db !important;
                box-sizing: border-box !important;
            }

            .desktop-cart-page #promoCodeBtn {
                min-width: 132px !important;
                min-height: 48px !important;
                padding: 0 22px !important;
                background: #111827 !important;
                color: #fff !important;
                border: none !important;
                border-radius: 4px !important;
                font-size: 15px !important;
                font-weight: 600 !important;
                font-family: inherit !important;
                letter-spacing: -0.01em;
                cursor: pointer !important;
                white-space: nowrap !important;
                box-sizing: border-box !important;
                transition: background 0.2s ease, opacity 0.2s ease;
            }

            .desktop-cart-page #promoCodeBtn:hover:not(:disabled) {
                background: #0f172a !important;
            }

            .desktop-cart-page .cart-items-section > .cart-title-wrap {
                display: none !important;
            }

            .desktop-cart-page__masthead {
                max-width: 1400px;
                margin: 0 auto;
                padding: 0 20px 8px;
            }

            .desktop-cart-page__title-row {
                display: flex;
                align-items: baseline;
                justify-content: space-between;
                flex-wrap: wrap;
                gap: 8px 20px;
                margin-bottom: 20px;
            }

            .desktop-cart-page__h1 {
                margin: 0;
                color: #111827;
                font-size: 32px;
                line-height: 1.15;
                font-weight: 600;
                letter-spacing: -0.03em;
            }

            .desktop-cart-page__h1 .desktop-cart-page__masthead-count {
                color: #6b7280;
                font-weight: 400;
                font-size: 0.75em;
            }

            .desktop-cart-page__title-sub-line {
                margin: 4px 0 0;
                font-size: 16px;
                line-height: 1.25;
                color: #6b7280;
                font-weight: 400;
            }

            .checkout-stepper {
                margin-bottom: 28px;
            }

            .checkout-stepper__connector {
                min-width: 12px;
            }
        }

        #cartModal #desktopCartAsideStep1 {
            display: none !important;
        }
        
        .cart-close-btn {
            position: absolute;
            top: 15px;
            right: 15px;
            background: #f3f4f6;
            border: none;
            border-radius: 50%;
            width: 40px;
            height: 40px;
            font-size: 24px;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.3s ease;
        }
        
        .cart-close-btn:hover {
            background: #e5e7eb;
            transform: rotate(90deg);
        }
        
        .cart-title-wrap {
            margin-bottom: 16px;
        }

        .cart-title-wrap .cart-title {
            margin-bottom: 0;
        }
        
        .cart-title {
            font-size: 1.1rem;
            font-weight: 600;
            margin-bottom: 16px;
            color: #111827;
        }

        .cart-title-count {
            color: #6b7280;
            font-weight: 400;
        }

        .cart-title-sub {
            margin: 6px 0 0;
            font-size: 0.95rem;
            line-height: 1.3;
            color: #6b7280;
            font-weight: 400;
        }
        
        .form-group {
            display: flex;
            flex-direction: column;
            gap: 0;
            margin-bottom: 16px;
        }
        
        .form-group:last-of-type {
            margin-bottom: 0;
        }
        
        .form-group input,
        .form-group textarea,
        .form-group select:not(.form-select) {
            padding: 12px;
            border: 1px solid #d1d5db;
            border-radius: 8px;
            font-size: 1rem;
            transition: border-color 0.3s ease;
            width: 100%;
            font-family: inherit;
            background: var(--header-surface-bg, #ffffff);
        }
        
        .form-group input::placeholder,
        .form-group textarea::placeholder {
            color: #9ca3af;
            opacity: 1;
        }
        
        .form-group input:focus,
        .form-group textarea:focus,
        .form-group select:not(.form-select):focus {
            outline: none;
            border-color: #2d2d2d;
        }
        
        .form-group textarea {
            resize: none;
            min-height: 60px;
        }

        .address-suggest-wrap {
            position: relative;
            width: 100%;
        }

        .address-suggest-wrap #customerAddress {
            width: 100%;
            box-sizing: border-box;
        }

        .address-suggest-dropdown {
            display: none;
            position: absolute;
            left: 0;
            right: 0;
            top: 100%;
            margin-top: 4px;
            background: #fff;
            border: 1px solid #e5e7eb;
            border-radius: 8px;
            box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1);
            max-height: 240px;
            overflow-y: auto;
            z-index: 2000;
        }

        .address-suggest-dropdown.is-open {
            display: block;
        }

        .address-suggest-hint {
            padding: 8px 12px 4px;
            font-size: 0.75rem;
            color: #6b7280;
        }

        .address-suggest-item {
            padding: 10px 12px;
            font-size: 0.875rem;
            line-height: 1.35;
            cursor: pointer;
            color: #111827;
            border-bottom: 1px solid #f3f4f6;
        }

        .address-suggest-item:last-child {
            border-bottom: none;
        }

        .address-suggest-item:hover,
        .address-suggest-item.active {
            background: #f9fafb;
        }
        
        .form-group select {
            color: #111827;
        }
        
        .form-group select:invalid {
            color: #9ca3af;
        }
        
        .form-group select option {
            color: #111827;
        }
        
        .form-group select option:first-child {
            color: #9ca3af;
        }
        
        .delivery-slot-btn {
            padding: 10px 16px;
            border: 1px solid #d1d5db;
            border-radius: 4px;
            background: #fff;
            color: #374151;
            font-size: 0.9rem;
            cursor: pointer;
            transition: border-color 0.2s, background 0.2s, color 0.2s;
        }
        .delivery-slot-btn:hover {
            border-color: #2d2d2d;
            background: #f9fafb;
        }
        .delivery-slot-btn.active {
            border-color: #2d2d2d;
            background: #2d2d2d;
            color: #fff;
        }
        
        .delivery-date-slot-wrap {
            max-width: 100%;
            min-width: 0;
            overflow: hidden;
        }
        .delivery-date-slot-wrap #deliverySlotButtons {
            min-width: 0;
            max-width: 100%;
        }
        
        .form-group-title {
            font-weight: 600;
            color: #374151;
            font-size: 0.95rem;
            margin-bottom: 12px;
            display: block;
        }
        
        .form-select {
            padding: 12px 44px 12px 12px;
            border: 1px solid #d1d5db;
            border-radius: 8px;
            font-size: 1rem;
            transition: border-color 0.3s ease;
            width: 100%;
            font-family: inherit;
            background-color: white;
            background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%23374151' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: right 12px center;
            background-size: 16px 16px;
            cursor: pointer;
            appearance: none;
            -webkit-appearance: none;
            -moz-appearance: none;
            color: #111827;
            font-weight: 500;
        }
        
        .form-select:hover {
            border-color: #9ca3af;
        }
        
        .form-select:focus {
            border-color: #2d2d2d;
            box-shadow: 0 0 0 3px rgba(45, 45, 45, 0.1);
        }
        
        .form-select:invalid {
            color: #9ca3af;
        }
        
        .form-select option {
            color: #111827;
            padding: 8px;
            background: var(--header-surface-bg, #ffffff);
        }
        
        .form-select option:first-child {
            color: #9ca3af;
        }
        
        .shipping-switch {
            display: flex;
            gap: 12px;
            margin-top: 8px;
        }
        
        .shipping-option {
            flex: 1;
            cursor: pointer;
            position: relative;
        }
        
        .shipping-option input[type="radio"] {
            position: absolute;
            opacity: 0;
            width: 1px;
            height: 1px;
            margin: 0;
            padding: 0;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border: 0;
        }
        
        .shipping-label {
            display: flex;
            align-items: center;
            gap: 8px;
            padding: 12px 16px;
            border: 2px solid #e5e7eb;
            border-radius: 8px;
            transition: all 0.3s ease;
            background: var(--header-surface-bg, #ffffff);
        }
        
        .shipping-option input[type="radio"]:checked + .shipping-label {
            border-color: #2d2d2d;
            background: #f5f5f5;
        }
        
        .shipping-icon {
            width: 18px;
            height: 18px;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }
        
        .shipping-icon svg {
            width: 100%;
            height: 100%;
            stroke: currentColor;
            fill: none;
        }
        
        .shipping-text {
            font-weight: 500;
            color: #374151;
        }
        
        .shipping-options-list {
            display: flex;
            flex-direction: column;
            gap: 8px;
            margin-top: 8px;
        }
        
        .shipping-option-item {
            cursor: pointer;
            position: relative;
        }
        
        .shipping-option-item input[type="radio"] {
            position: absolute;
            opacity: 0;
            width: 1px;
            height: 1px;
            margin: 0;
            padding: 0;
            overflow: hidden;
            clip: rect(0, 0, 0, 0);
            white-space: nowrap;
            border: 0;
        }
        
        .shipping-option-box {
            padding: 10px 12px;
            border: 2px solid #e5e7eb;
            border-radius: 8px;
            transition: all 0.3s ease;
            background: var(--header-surface-bg, #ffffff);
            display: flex;
            flex-direction: column;
            gap: 4px;
        }
        
        .shipping-option-item input[type="radio"]:checked + .shipping-option-box {
            border-color: #2d2d2d;
            background: rgba(45, 45, 45, 0.03);
        }
        
        .shipping-option-title {
            font-weight: 600;
            color: #111827;
            font-size: 0.9rem;
        }
        
        .shipping-option-desc {
            font-size: 0.8rem;
            color: #6b7280;
        }
        
        .shipping-option-price {
            font-size: 0.8rem;
            color: #2d2d2d;
            font-weight: 600;
            margin-top: 2px;
        }

        /*
         * Форма оформления в корзине — Inter, более «квадратные» поля (скругления ~4–6px), бордер #E0E0E0.
         * Область: только .cart-form-section (+ кнопки внутри #cartForm).
         */
        .cart-form-section {
            font-family: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
        }

        .cart-form-section > .cart-title {
            font-size: 1.375rem;
            font-weight: 600;
            color: #111111;
            letter-spacing: -0.02em;
            margin-bottom: 8px;
        }

        /* Плавающие подписи: текст не пропадает — уменьшается и смещается вверх */
        .cart-form-section .cart-float-field {
            position: relative;
            display: block;
            width: 100%;
            box-sizing: border-box;
        }

        .cart-form-section .cart-float-field textarea {
            resize: vertical;
        }

        .cart-form-section .cart-float-field input::placeholder,
        .cart-form-section .cart-float-field textarea::placeholder {
            color: transparent;
            opacity: 1;
        }

        .cart-form-section .cart-float-field label {
            position: absolute;
            left: 16px;
            right: 44px;
            top: 50%;
            transform: translateY(-50%);
            font-size: 0.9375rem;
            line-height: 1.25;
            font-weight: 400;
            color: #a3a3a3;
            pointer-events: none;
            transition: transform 0.2s ease, font-size 0.2s ease, color 0.2s ease, top 0.2s ease;
            transform-origin: left center;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            z-index: 1;
        }

        .cart-form-section .cart-float-field input:focus + label,
        .cart-form-section .cart-float-field input:not(:placeholder-shown) + label,
        .cart-form-section .cart-float-field textarea:focus + label,
        .cart-form-section .cart-float-field textarea:not(:placeholder-shown) + label {
            top: 10px;
            transform: translateY(0);
            font-size: 0.6875rem;
            font-weight: 500;
            color: #737373;
            letter-spacing: -0.01em;
            right: auto;
            max-width: calc(100% - 28px);
        }

        /* Дата доставки: иконка календаря */
        .cart-form-section .cart-float-field--datepicker label {
            right: 40px;
        }

        .cart-form-section .cart-float-field--datepicker svg.cart-float-datepicker-icon {
            position: absolute;
            right: 12px;
            top: 50%;
            transform: translateY(-50%);
            width: 18px;
            height: 18px;
            pointer-events: none;
            color: #6b7280;
            z-index: 3;
        }


        .cart-form-section .form-group.cart-contact-row {
            flex-direction: row;
            flex-wrap: wrap;
            gap: 10px 12px;
        }

        .cart-form-section .form-group.cart-contact-row > .cart-float-field {
            flex: 1 1 0;
            min-width: 0;
            width: auto;
            box-sizing: border-box;
        }

        .cart-form-section .form-group-title {
            font-family: inherit;
            font-weight: 600;
            font-size: 1rem;
            color: #111111;
            margin-bottom: 12px;
        }

        .cart-form-section .form-group input,
        .cart-form-section .form-group textarea,
        .cart-form-section .form-group select:not(.form-select) {
            border-radius: 4px;
            border: 1px solid #e0e0e0;
            padding: 14px 16px;
            font-size: 0.9375rem;
            font-weight: 400;
            color: #111111;
        }

        .cart-form-section .form-group textarea {
            border-radius: 4px;
        }

        .cart-form-section .form-group input::placeholder,
        .cart-form-section .form-group textarea::placeholder {
            color: #a3a3a3;
        }

        .cart-form-section .form-group .cart-float-field input,
        .cart-form-section .form-group .cart-float-field textarea {
            padding: 22px 16px 11px;
            font-size: 0.9375rem;
            font-weight: 400;
            color: #111111;
            border-radius: 4px;
            border: 1px solid #e0e0e0;
        }

        /* Одна строка по высоте, как у поля «Адрес доставки»; при необходимости можно растянуть */
        .cart-form-section .form-group .cart-float-field textarea {
            min-height: 3.25rem;
            padding: 22px 16px 11px;
            line-height: 1.25;
            resize: vertical;
            overflow-y: auto;
            box-sizing: border-box;
        }

        .cart-form-section .form-group .cart-float-field--datepicker input {
            padding-right: 42px;
        }

        .cart-form-section .form-group .cart-float-field input::placeholder,
        .cart-form-section .form-group .cart-float-field textarea::placeholder {
            color: transparent;
            opacity: 1;
        }

        .cart-form-section .form-group input:focus,
        .cart-form-section .form-group textarea:focus,
        .cart-form-section .form-group select:not(.form-select):focus {
            border-color: #111111;
            box-shadow: 0 0 0 1px #111111;
        }

        .cart-form-section .cart-float-field.cart-float-field--error input,
        .cart-form-section .cart-float-field.cart-float-field--error textarea {
            border-color: #ea580c;
            box-shadow: 0 0 0 1px #ea580c;
        }
        .cart-form-section .cart-float-field.cart-float-field--error input:focus,
        .cart-form-section .cart-float-field.cart-float-field--error textarea:focus {
            border-color: #111111;
            box-shadow: 0 0 0 1px #111111;
        }

        .cart-form-section .form-select {
            border-radius: 4px;
            border: 1px solid #e0e0e0;
            padding: 14px 44px 14px 16px;
            font-size: 0.9375rem;
            font-weight: 500;
        }

        .cart-form-section .form-select:focus {
            border-color: #111111;
            box-shadow: 0 0 0 1px #111111;
        }

        .cart-form-section .shipping-label {
            border-radius: 4px;
            border: 1px solid #e0e0e0;
            padding: 14px 16px;
        }

        .cart-form-section .shipping-option input[type="radio"]:checked + .shipping-label {
            border-width: 2px;
            border-color: #000000;
            background: #ffffff;
            box-shadow: none;
        }

        .cart-form-section .shipping-text {
            font-weight: 600;
            color: #111111;
            font-size: 0.9375rem;
        }

        .cart-form-section .shipping-option-box {
            border-radius: 6px;
            border: 1px solid #e0e0e0;
            padding: 16px;
        }

        .cart-form-section .shipping-option-item input[type="radio"]:checked + .shipping-option-box {
            border-width: 2px;
            border-color: #000000;
            background: #ffffff;
        }

        .cart-form-section .shipping-option-title {
            font-weight: 600;
            font-size: 0.9375rem;
            color: #111111;
        }

        .cart-form-section .shipping-option-desc {
            font-size: 0.8125rem;
            line-height: 1.45;
            color: #737373;
        }

        .cart-form-section .shipping-option-price {
            font-size: 0.9375rem;
            font-weight: 600;
            color: #111111;
            line-height: 1.35;
        }

        .cart-form-section .shipping-option-price strong {
            font-weight: 700;
            color: #111111;
        }

        .cart-form-section .shipping-option-price .shipping-price-struck {
            color: #a3a3a3;
            font-weight: 500;
            margin-right: 0.35em;
        }

        .cart-form-section .shipping-option-price .shipping-price-free-label {
            color: #059669;
            font-weight: 600;
        }

        .cart-form-section .shipping-option-price .shipping-price-paid-hint {
            color: #6b7280;
            font-weight: 500;
            font-size: 0.8125rem;
        }

        .cart-form-section .pickup-address {
            border-radius: 6px;
            border: 1px solid #e0e0e0;
            font-weight: 500;
            font-size: 0.875rem;
        }

        .cart-form-section .address-suggest-dropdown {
            border-radius: 4px;
            border: 1px solid #e0e0e0;
        }

        .cart-form-section .delivery-slot-btn {
            border-radius: 4px;
            border: 1px solid #e0e0e0;
            font-family: inherit;
            font-weight: 500;
        }

        .cart-form-section .delivery-slot-btn.active {
            background: #111111;
            border-color: #111111;
            color: #fff;
        }

        .payment-options-list {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            gap: 8px;
            margin-top: 8px;
        }

        .payment-options-list .shipping-option-item {
            min-width: 0;
            height: 100%;
        }

        .payment-options-list .shipping-option-box {
            height: 100%;
            min-height: 100%;
            box-sizing: border-box;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            padding: 12px 10px;
        }

        .payment-options-list .shipping-option-title {
            font-size: 0.875rem;
            line-height: 1.35;
        }

        .payment-option-item--disabled {
            cursor: not-allowed;
            pointer-events: none;
        }

        .payment-option-box--disabled {
            border-color: #e5e7eb !important;
            background: #f9fafb !important;
            opacity: 0.78;
        }

        .payment-option-item--disabled .shipping-option-title {
            color: #9ca3af;
        }

        .payment-option-muted {
            font-weight: 400;
            color: #9ca3af;
            font-size: 0.92em;
        }

        .cart-form-section .cart-submit-btn {
            font-family: inherit;
            background: #111111;
            color: #ffffff;
            border: none;
            border-radius: 6px;
            padding: 16px 24px;
            font-size: 1rem;
            font-weight: 600;
            letter-spacing: -0.01em;
            margin-top: 8px;
        }

        .cart-form-section .cart-submit-btn:hover {
            background: #1a1a1a;
            transform: none;
            box-shadow: none;
        }

        .cart-form-section .cart-submit-btn:disabled {
            background: #d4d4d4;
            color: #737373;
        }

        .cart-form-section .cart-consent-text {
            font-size: 0.75rem;
            line-height: 1.45;
            color: #a3a3a3;
            text-align: center;
        }

        .cart-form-section .cart-buttons-row + div {
            font-size: 0.8125rem;
            line-height: 1.5;
            color: #737373;
        }
        
        .pickup-address {
            padding: 16px;
            background: #f9fafb;
            border: 1px solid #e5e7eb;
            border-radius: 5px;
            font-weight: 500;
            color: #111827;
            margin-top: 8px;
        }
        
        .pickup-hours {
            margin-top: 8px;
            font-size: 0.9rem;
            color: #6b7280;
        }
        
        .cart-items-list {
            display: flex;
            flex-direction: column;
            gap: 10px;
        }
        
        
        .cart-recommendations-title {
            font-size: 1rem;
            font-weight: 600;
            color: #111827;
            margin-bottom: 12px;
        }
        
        .cart-recommendations-list {
            position: relative;
            overflow: hidden;
            padding-top: 3px;
        }

        .cart-recs-with-arrows {
            display: flex;
            align-items: center;
            gap: 6px;
            width: 100%;
        }

        .cart-recs-with-arrows__viewport {
            flex: 1;
            min-width: 0;
            overflow: hidden;
        }

        .cart-recs-nav {
            flex-shrink: 0;
            display: flex;
            align-items: center;
            justify-content: center;
            min-width: 32px;
            min-height: 32px;
            padding: 6px;
            border: none;
            border-radius: 0;
            background: transparent;
            color: #111827;
            cursor: pointer;
            box-sizing: border-box;
            transition: color 0.2s ease, opacity 0.2s ease;
        }

        .cart-recs-nav:hover:not(:disabled):not(.cart-recs-nav--disabled) {
            color: #374151;
        }

        .cart-recs-nav:disabled,
        .cart-recs-nav.cart-recs-nav--disabled {
            opacity: 0.35;
            cursor: not-allowed;
        }

        .cart-recs-nav__icon {
            display: block;
        }
        
        .cart-recommendations-slider {
            display: flex;
            transition: transform 0.3s ease;
        }
        
        .cart-recommendations-slide {
            min-width: 100%;
            display: flex;
            flex-direction: column;
            gap: 10px;
        }

        /* Общая рамка: карточки без зазора, только общие линии (режим модалки, не product-detail) */
        .cart-recommendations:not(.cart-recommendations--product-detail) .cart-recommendations-slide {
            gap: 0;
            border: 1px solid #eaeaea;
            border-radius: 6px;
            overflow: hidden;
            box-sizing: border-box;
        }

        .cart-recommendations:not(.cart-recommendations--product-detail) .cart-recommendations-slide .cart-recommendation-item {
            border-radius: 0;
            border: none;
            border-bottom: 1px solid #eaeaea;
        }

        .cart-recommendations:not(.cart-recommendations--product-detail) .cart-recommendations-slide .cart-recommendation-item:last-child {
            border-bottom: none;
        }
        
        .cart-recommendations-dots {
            display: flex;
            justify-content: center;
            gap: 8px;
            margin-top: 12px;
        }
        
        .cart-recommendations-dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: rgba(17, 24, 39, 0.2);
            cursor: pointer;
            transition: all 0.2s ease;
        }
        
        .cart-recommendations-dot.active {
            background: #111827;
            width: 24px;
            border-radius: 4px;
        }
        
        .cart-recommendation-item {
            display: flex;
            align-items: stretch;
            gap: 10px;
            padding: 16px;
            background: #fff;
            border: 1px solid #eaeaea;
            border-radius: 6px;
            transition: none;
            box-sizing: border-box;
        }
        
        .cart-recommendation-image {
            width: 50px;
            height: 50px;
            object-fit: contain;
            border-radius: 6px;
            flex-shrink: 0;
            align-self: flex-start;
            background: var(--header-surface-bg, #ffffff);
            padding: 3px;
        }
        
        .cart-recommendation-info {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 4px;
            min-width: 0;
            min-height: 0;
        }
        
        .cart-recommendation-name {
            font-size: 0.875rem;
            font-weight: 500;
            color: #111827;
            line-height: 1.3;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }
        .cart-recommendation-name.cart-recommendation-name-multiline {
            white-space: normal;
            text-overflow: clip;
        }
        
        .cart-recommendation-price {
            display: flex;
            flex-wrap: wrap;
            align-items: baseline;
            gap: 4px 6px;
            font-size: 1rem;
            font-weight: 600;
            color: #2d2d2d;
            line-height: 1.25;
            margin-top: auto;
            max-width: 100%;
        }

        .cart-recommendation-current-price {
            flex-shrink: 0;
        }

        .cart-recommendation-old-price {
            font-size: 0.75rem;
            color: #6b7280;
            text-decoration: line-through;
            font-weight: 400;
        }
        
        .cart-recommendation-add-btn {
            padding: 5px 10px;
            background: #111827;
            color: white;
            border: none;
            border-radius: 999px;
            font-size: 0.875rem;
            font-weight: 500;
            cursor: pointer;
            transition: background 0.2s ease;
            white-space: nowrap;
            align-self: flex-end;
        }
        
        .cart-recommendation-add-btn:hover {
            background: #1f2937;
        }
        
        .cart-recommendation-add-btn:active {
            background: #030712;
        }
        
        .cart-item {
            display: flex;
            gap: 10px;
            padding: 8px;
            background: #fff;
            border-radius: 8px;
            border: none;
        }
        
        .cart-item-image {
            width: 60px;
            height: 60px;
            object-fit: contain;
            border-radius: 6px;
            flex-shrink: 0;
            background: #fff;
            padding: 3px;
        }
        
        .cart-item-info {
            flex: 1;
            display: flex;
            flex-direction: column;
            gap: 6px;
        }
        
        .cart-item-main {
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 12px;
        }
        
        .cart-item-left {
            flex: 1;
            min-width: 0;
            display: flex;
            flex-direction: column;
            gap: 4px;
            max-width: calc(100% - 120px);
        }
        
        .cart-item-name {
            font-size: 1rem;
            font-weight: 600;
            color: #111827;
            word-wrap: break-word;
            word-break: break-word;
            line-height: 1.4;
        }

        .cart-item-prices-under {
            display: flex;
            flex-wrap: wrap;
            align-items: baseline;
            gap: 6px 10px;
            margin-top: 2px;
        }

        .cart-item-price-under {
            font-size: 1rem;
            font-weight: 600;
            color: #111827;
        }

        .cart-item-price-under-suffix {
            font-size: 0.875rem;
            font-weight: 400;
            color: #6b7280;
            margin-left: -4px;
        }

        .cart-item-price-old-under {
            font-size: 0.875rem;
            font-weight: 400;
            color: #6b7280;
            text-decoration: none;
        }

        .cart-item-price-old-under,
        .cart-item-line-old-total s {
            text-decoration: line-through;
            text-decoration-thickness: 1px;
            text-underline-offset: 2px;
        }

        .cart-item-line-totals {
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            gap: 2px;
        }

        .cart-item-line-old-total {
            font-size: 0.875rem;
            font-weight: 400;
            color: #9ca3af;
            line-height: 1.2;
        }

        .cart-item-line-old-total s {
            color: #9ca3af;
        }
        
        .cart-item-specs {
            font-size: 0.875rem;
            color: #6b7280;
            line-height: 1.3;
        }
        
        .cart-item-price-qty {
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            gap: 8px;
            flex-shrink: 0;
            min-width: 100px;
        }
        
        .cart-item-price-per-unit {
            font-size: 0.875rem;
            font-weight: 400;
            color: #6b7280;
        }
        
        .cart-item-price {
            font-size: 1rem;
            font-weight: 600;
            color: #111827;
        }

        .cart-item-line-total {
            font-size: 1rem;
            font-weight: 600;
            color: #111827;
            text-align: right;
        }
        
        .qty-controls {
            display: flex;
            align-items: center;
            gap: 8px;
            background: var(--header-surface-bg, #ffffff);
            border: 1px solid #d1d5db;
            border-radius: 6px;
            padding: 4px;
            margin-left: auto;
        }
        
        .qty-btn {
            background: none;
            border: none;
            width: 24px;
            height: 24px;
            cursor: pointer;
            font-size: 1rem;
            color: #374151;
            display: flex;
            align-items: center;
            justify-content: center;
            transition: all 0.2s ease;
        }
        
        .qty-btn:hover {
            background: #f3f4f6;
            border-radius: 4px;
        }
        
        .qty-value {
            width: 18px;
            height: 18px;
            text-align: center;
            font-weight: 300;
            font-size: 0.75rem;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        
        .cart-item-remove {
            background: #fee2e2;
            color: #dc2626;
            border: none;
            padding: 8px 15px;
            border-radius: 6px;
            cursor: pointer;
            font-size: 0.9rem;
            transition: all 0.2s ease;
        }
        
        .cart-item-remove:hover {
            background: #fecaca;
        }
        
        .cart-total {
            margin-top: 20px;
            padding-top: 20px;
            border-top: 2px solid #e5e7eb;
            display: flex;
            flex-direction: column;
            gap: 12px;
        }
        
        .promo-code-section {
            order: 1;
        }
        
        .cart-recommendations {
            margin-top: 0;
            padding-top: 20px;
            border-top: 1px solid #e5e7eb;
            order: 2; /* В десктопной версии после промокода */
        }
        
        .cart-total-item:not(.cart-total-final) {
            order: 3;
        }
        
        .cart-total-final {
            order: 4; /* Итого после всех в десктопе */
        }

        .cart-total > .cart-total-note {
            order: 5;
        }

        .cart-total > .desktop-cart-aside-help {
            order: 6;
        }

        .cart-total > .desktop-cart-aside-next {
            order: 7;
        }
        
        @media (max-width: 1024px) {
            .cart-recommendations {
                order: 10; /* В мобильной версии после Итого */
            }
            
            .cart-total-final {
                order: 4; /* Итого перед рекомендациями в мобильной версии */
            }

            .cart-recommendation-price {
                flex-direction: column;
                align-items: flex-start;
                gap: 2px;
            }

            .cart-recommendation-old-price {
                order: -1;
            }
        }
        
        .cart-total-item {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }
        
        .cart-total-label {
            font-size: 0.9rem;
            font-weight: 500;
            color: #6b7280;
        }
        
        .cart-total-value {
            font-size: 0.9rem;
            font-weight: 500;
            color: #111827;
        }
        
        .cart-total-final {
            margin-top: 4px;
            margin-bottom: 20px;
            padding-top: 12px;
            border-top: 1px solid #e5e7eb;
        }
        
        .cart-total-final .cart-total-label {
            font-size: 1rem;
            font-weight: 600;
            color: #111827;
        }
        
        .cart-total-price {
            font-size: 1.1rem;
            font-weight: 700;
            color: #2d2d2d;
        }

        .cart-submit-btn {
            background: #4a4a4a;
            color: white;
            border: none;
            padding: 15px 30px;
            border-radius: 6px;
            font-size: 0.95rem;
            font-weight: 400;
            cursor: pointer;
            transition: background 0.2s ease, color 0.2s ease;
            width: 100%;
            margin-top: 20px;
        }
        
        .cart-submit-btn:hover:not(:disabled) {
            background: #3a3a3a;
            transform: none;
            box-shadow: none;
        }
        
        .cart-submit-btn:disabled {
            background: #9ca3af;
            cursor: not-allowed;
            transform: none;
        }
        
        .clear-cart-btn {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            margin: 0;
            padding: 8px 0;
            background: transparent;
            color: #6b7280;
            border: none;
            border-radius: 0;
            font-size: 0.875rem;
            font-weight: 500;
            font-family: inherit;
            line-height: 1.3;
            cursor: pointer;
            transition: color 0.15s ease;
            white-space: nowrap;
            text-decoration: none;
            -webkit-tap-highlight-color: transparent;
        }

        .clear-cart-btn__icon {
            flex-shrink: 0;
            display: block;
            color: currentColor;
            opacity: 0.95;
        }

        .clear-cart-btn:hover {
            background: transparent;
            color: #111827;
            text-decoration: none;
        }
        
        .cart-consent-text {
            font-size: 0.75rem;
            color: #9ca3af;
            text-align: center;
            margin-top: 12px;
            margin-bottom: 20px;
            line-height: 1.4;
        }
        
        .add-to-cart-btn {
            padding: 5px 10px;
            border: 1px solid rgba(45, 45, 45, 0.3);
            background: var(--header-surface-bg, #ffffff);
            border-radius: 18px;
            font-size: 0.75rem;
            cursor: pointer;
            transition: all 0.2s ease;
            white-space: nowrap;
            min-width: 100px;
            width: 100px;
            text-align: center;
            color: #333;
            font-weight: 500;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 4px;
        }
        
        .add-to-cart-btn:hover {
            border-color: #4a4a4a;
            background: #f5f5f5;
        }
        
        .add-to-cart-btn:active {
            background: #4a4a4a;
            color: white;
            border-color: #4a4a4a;
        }
        
        .add-to-cart-btn {
            position: relative;
        }
        
        .add-to-cart-btn-text {
            transition: opacity 0.32s cubic-bezier(0.4, 0, 0.2, 1), transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);
        }
        
        .add-to-cart-btn-text.fade-out {
            opacity: 0;
            transform: translateY(3px);
        }
        
        .add-to-cart-btn-text.fade-in {
            opacity: 1;
            transform: translateY(0);
        }
        
        .add-to-cart-btn-text.show-checkmark {
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            width: 100%;
            display: flex;
            justify-content: center;
            align-items: center;
        }
        
        .add-to-cart-btn-text.show-checkmark svg {
            display: block !important;
            width: 22px !important;
            height: 22px !important;
            min-width: 22px !important;
            opacity: 1 !important;
            flex-shrink: 0;
        }
        
        .add-to-cart-btn:not(.btn-product-inquiry) > svg,
        .btn-add-to-cart-detail:not(.btn-product-inquiry) > svg {
            display: none;
        }
        
        .add-to-cart-btn svg {
            transition: opacity 0.16s ease;
        }
        
        .add-to-cart-btn > svg.hide-icon {
            opacity: 0;
        }
        
        @media (max-width: 1024px) {
            .cart-container {
                flex-direction: column;
                padding: 20px;
            }
            
            .cart-form-section {
                min-width: 100%;
                order: 2;
            }
            
            .cart-items-section {
                min-width: 100%;
                order: 1;
            }
            
            .cart-icon-btn {
                bottom: 20px;
                left: 20px;
                width: 52px;
                height: 52px;
            }
            
            .cart-icon-btn svg {
                width: 24px;
                height: 24px;
            }
            
            .catalog-icon-btn {
                top: 16px;
                right: 20px;
                left: auto;
                bottom: auto;
                width: 52px;
                height: 52px;
            }
            
            .catalog-icon-btn svg {
                width: 24px;
                height: 24px;
            }
            
            .cart-form-section .delivery-date-slot-wrap {
                max-width: 100%;
                box-sizing: border-box;
            }
            .cart-form-section .form-group {
                min-width: 0;
                max-width: 100%;
            }

            .cart-form-section .form-group.cart-contact-row {
                flex-direction: column;
                gap: 10px;
            }

            .cart-form-section .form-group.cart-contact-row > .cart-float-field {
                width: 100%;
                flex: none;
            }
        }

        @media (max-width: 1024px) {
            /* Запас под фиксированную панель: иначе последние строки футера остаются под nav */
            html {
                scroll-padding-bottom: calc(68px + env(safe-area-inset-bottom, 0px));
            }
            body {
                padding-bottom: calc(68px + env(safe-area-inset-bottom, 0px));
            }

            .container {
                padding-bottom: calc(env(safe-area-inset-bottom) + 84px);
            }

            .mobile-bottom-nav {
                position: fixed;
                left: 0;
                right: 0;
                bottom: 0;
                display: flex;
                align-items: center;
                justify-content: space-around;
                gap: 4px;
                padding: 8px 10px calc(8px + env(safe-area-inset-bottom));
                background: rgba(255, 255, 255, 0.98);
                border-top: 1px solid #e5e7eb;
                box-shadow: 0 -4px 14px rgba(0, 0, 0, 0.08);
                z-index: 1600;
                backdrop-filter: blur(6px);
            }

            .mobile-bottom-nav__item {
                position: relative;
                min-width: 0;
                flex: 1;
                border: none;
                background: transparent;
                color: #4b5563;
                display: flex;
                flex-direction: column;
                align-items: center;
                justify-content: center;
                gap: 4px;
                padding: 6px 4px;
                border-radius: 10px;
                font-size: 0.7rem;
                font-weight: 600;
                cursor: pointer;
                -webkit-tap-highlight-color: transparent;
            }

            .mobile-bottom-nav__item svg {
                width: 20px;
                height: 20px;
                stroke: currentColor;
            }

            .mobile-bottom-nav__item:active {
                background: #f3f4f6;
                color: #111827;
            }

            .mobile-bottom-nav__badge {
                position: absolute;
                top: 2px;
                right: calc(50% - 20px);
                background: #ef4444;
                color: #fff;
                border-radius: 999px;
                min-width: 16px;
                height: 16px;
                padding: 0 4px;
                display: none;
                align-items: center;
                justify-content: center;
                font-size: 0.65rem;
                line-height: 1;
                border: 2px solid #fff;
            }

            .messenger-picker-overlay {
                display: block;
                position: fixed;
                inset: 0;
                background: transparent;
                z-index: 1998;
                opacity: 0;
                visibility: hidden;
                transition: visibility 0.2s ease;
                pointer-events: none;
            }
            .messenger-picker-overlay.is-open {
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
            }
            .messenger-picker-sheet {
                display: block;
                position: fixed;
                left: 12px;
                right: 12px;
                bottom: calc(72px + env(safe-area-inset-bottom));
                background: #ebebed;
                border: none;
                border-radius: 18px;
                box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1), 0 2px 8px rgba(0, 0, 0, 0.05);
                z-index: 1999;
                opacity: 0;
                transform: translateY(12px) scale(0.98);
                visibility: hidden;
                transition: opacity 0.28s cubic-bezier(0.4, 0, 0.2, 1), transform 0.28s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.28s ease;
                padding: 14px 12px 12px;
            }
            .messenger-picker-sheet.is-open {
                opacity: 1;
                visibility: visible;
                transform: translateY(0) scale(1);
            }
            .messenger-picker-title {
                font-size: 0.8125rem;
                color: #6b7280;
                margin: 0 4px 12px;
                font-weight: 500;
                letter-spacing: -0.01em;
            }
            .messenger-picker-btn {
                width: 100%;
                border: none;
                background: #f5f5f7;
                border-radius: 14px;
                padding: 14px 16px;
                display: flex;
                align-items: center;
                gap: 12px;
                color: #111827;
                font-size: 0.9375rem;
                font-weight: 500;
                cursor: pointer;
                box-shadow: none;
                transition: background 0.15s ease, transform 0.15s ease;
            }
            .messenger-picker-btn + .messenger-picker-btn {
                margin-top: 8px;
            }
            .messenger-picker-btn:active {
                background: #efeff2;
                transform: scale(0.99);
            }
            .messenger-picker-btn svg {
                width: 22px;
                height: 22px;
                flex-shrink: 0;
                color: #111827;
            }
            .messenger-picker-btn img {
                width: 22px;
                height: 22px;
                flex-shrink: 0;
                object-fit: contain;
            }

            .messenger-picker-btn--callback {
                background: #f5f5f7;
            }

            .messenger-picker-btn--callback:active {
                background: #efeff2;
            }

            a.messenger-picker-btn--tel {
                text-decoration: none;
                color: inherit;
                -webkit-tap-highlight-color: transparent;
            }

            .messenger-picker-btn__col {
                display: flex;
                flex-direction: column;
                align-items: flex-start;
                gap: 2px;
                min-width: 0;
                flex: 1;
                text-align: left;
            }

            .messenger-picker-btn__row-title {
                font-size: 0.9375rem;
                font-weight: 500;
                color: #111827;
            }

            .messenger-picker-btn__row-num {
                font-size: 0.875rem;
                font-weight: 500;
                color: #2563eb;
                letter-spacing: -0.01em;
            }

        }

        /* Десктоп: плавающая связь — кнопка + карточка с Telegram и MAX */
        .desktop-contact-overlay,
        .desktop-contact-widget {
            display: none;
        }

        @media (min-width: 1025px) {
            .desktop-contact-overlay {
                display: block;
                position: fixed;
                inset: 0;
                z-index: 8500;
                background: rgba(0, 0, 0, 0.35);
                backdrop-filter: blur(3px);
                -webkit-backdrop-filter: blur(3px);
                opacity: 0;
                visibility: hidden;
                pointer-events: none;
                transition: opacity 0.2s ease, visibility 0.2s ease;
            }

            .desktop-contact-overlay.is-open {
                opacity: 1;
                visibility: visible;
                pointer-events: auto;
            }

            .desktop-contact-widget {
                display: flex;
                flex-direction: column-reverse;
                align-items: flex-end;
                gap: 12px;
                position: fixed;
                right: 26px;
                bottom: 28px;
                z-index: 8510;
                font-family: inherit;
                /* Чтобы абсолютная панель позиционировалась от виджета; без лишней высоты под скрытую панель */
                width: auto;
                height: auto;
                max-width: none;
            }

            /* Панель вне потока flex: visibility:hidden не убирает элемент из раскладки —
               иначе получается невидимый блок ~320×…px над кнопкой и он перехватывает клики по футеру */
            .desktop-contact-panel {
                position: absolute;
                right: 0;
                left: auto;
                top: auto;
                bottom: calc(56px + 12px);
                width: min(320px, calc(100vw - 52px));
                background: #fff;
                border: 1px solid #e5e7eb;
                border-radius: 18px;
                box-shadow: 0 12px 32px rgba(0, 0, 0, 0.12), 0 2px 8px rgba(0, 0, 0, 0.06);
                opacity: 0;
                visibility: hidden;
                transform: translateY(10px);
                transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s ease;
                overflow: hidden;
                pointer-events: none;
                z-index: 2;
            }

            .desktop-contact-panel.is-open {
                opacity: 1;
                visibility: visible;
                transform: translateY(0);
                pointer-events: auto;
            }

            .desktop-contact-panel__top {
                display: flex;
                align-items: flex-start;
                justify-content: space-between;
                gap: 12px;
                padding: 16px 16px 12px;
            }

            .desktop-contact-panel__brand {
                display: flex;
                align-items: flex-start;
                gap: 10px;
                min-width: 0;
            }

            .desktop-contact-panel__logo {
                flex-shrink: 0;
                width: 40px;
                height: 40px;
                border-radius: 10px;
                object-fit: cover;
                display: block;
                box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12);
            }

            .desktop-contact-panel__title {
                margin: 0;
                font-size: 1.05rem;
                font-weight: 700;
                color: #111827;
                line-height: 1.2;
            }

            .desktop-contact-panel__subtitle {
                margin: 4px 0 0;
                font-size: 0.8125rem;
                line-height: 1.35;
                font-weight: 400;
                color: #6b7280;
            }

            .desktop-contact-panel__close {
                flex-shrink: 0;
                width: 32px;
                height: 32px;
                border: none;
                border-radius: 10px;
                background: transparent;
                color: #6b7280;
                cursor: pointer;
                display: flex;
                align-items: center;
                justify-content: center;
                transition: background 0.15s ease, color 0.15s ease;
            }

            .desktop-contact-panel__close:hover {
                background: #f3f4f6;
                color: #111827;
            }

            .desktop-contact-panel__close svg {
                width: 18px;
                height: 18px;
                stroke: currentColor;
            }

            .desktop-contact-panel__divider {
                height: 1px;
                margin: 0 16px;
                background: rgba(45, 45, 45, 0.1);
            }

            .desktop-contact-panel__body {
                padding: 14px 16px 18px;
            }

            .desktop-contact-card-title {
                margin: 0 0 4px;
                font-size: 0.9375rem;
                font-weight: 700;
                color: #111827;
            }

            .desktop-contact-card-note {
                margin: 0 0 14px;
                font-size: 0.8125rem;
                line-height: 1.4;
                color: #6b7280;
            }

            .desktop-contact-messengers {
                display: flex;
                gap: 10px;
                flex-wrap: wrap;
            }

            .desktop-contact-msg {
                flex: 1;
                min-width: calc(50% - 5px);
                border: none;
                border-radius: 0;
                padding: 6px 4px;
                background: transparent;
                cursor: pointer;
                text-align: center;
                transition: opacity 0.15s ease;
                font-family: inherit;
                -webkit-appearance: none;
                appearance: none;
                display: flex;
                flex-direction: column;
                align-items: center;
                gap: 8px;
            }

            .desktop-contact-msg:hover {
                opacity: 0.85;
            }

            .desktop-contact-msg:active {
                opacity: 0.72;
            }

            .desktop-contact-msg:focus-visible {
                outline: 2px solid #2d2d2d;
                outline-offset: 3px;
                border-radius: 8px;
            }

            .desktop-contact-msg-icon {
                width: 56px;
                height: 56px;
                margin: 0;
                border-radius: 0;
                display: flex;
                align-items: center;
                justify-content: center;
                overflow: visible;
            }

            .desktop-contact-msg-icon--tg {
                background: transparent;
                color: #229ed9;
            }

            .desktop-contact-msg-icon--tg svg {
                width: 36px;
                height: 36px;
                fill: currentColor;
                display: block;
            }

            .desktop-contact-msg-icon--max {
                padding: 0;
                background: transparent;
            }

            .desktop-contact-msg-icon--max img {
                width: 36px;
                height: 36px;
                object-fit: contain;
                display: block;
            }

            .desktop-contact-msg-label {
                font-size: 0.8125rem;
                font-weight: 600;
                color: #374151;
            }

            .desktop-contact-fab {
                position: relative;
                z-index: 3;
                width: 56px;
                height: 56px;
                border-radius: 50%;
                border: 1px solid rgba(0, 0, 0, 0.08);
                background: #2d2d2d;
                color: #fff;
                cursor: pointer;
                display: flex;
                align-items: center;
                justify-content: center;
                box-shadow: 0 4px 14px rgba(0, 0, 0, 0.2), 0 2px 6px rgba(0, 0, 0, 0.08);
                transition: transform 0.18s ease, box-shadow 0.18s ease, background 0.18s ease;
            }

            .desktop-contact-fab:hover {
                background: #252525;
                transform: scale(1.03);
                box-shadow: 0 6px 20px rgba(0, 0, 0, 0.24), 0 2px 8px rgba(0, 0, 0, 0.1);
            }

            .desktop-contact-fab svg {
                width: 26px;
                height: 26px;
                display: block;
            }
        }


        /* Мобилка: CTA в карточке товара (детальная) и в сетке каталога */
        @media (max-width: 1024px) {
            .btn-add-to-cart-detail,
            .btn-add-to-cart-detail.btn-product-inquiry,
            .product-detail-page--pdp2 .btn-add-to-cart-detail {
                padding: 18px 26px !important;
                min-height: 56px !important;
                border-radius: 6px !important;
                gap: 10px !important;
                line-height: 1.35 !important;
                letter-spacing: 0.03em !important;
            }

            .products-grid .add-to-cart-btn,
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn,
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn,
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn,
            .products-grid .add-to-cart-btn.btn-product-inquiry,
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn.btn-product-inquiry,
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn.btn-product-inquiry,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry,
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry {
                padding: 18px 24px !important;
                min-height: 56px !important;
                border-radius: 6px !important;
                gap: 10px !important;
                font-size: 1rem !important;
                font-weight: 700 !important;
                line-height: 1.35 !important;
                letter-spacing: 0.03em !important;
            }

            /* Каталог: «Оставить заявку» — цвет как .btn-add-to-cart-detail.btn-product-inquiry в деталке */
            .products-grid .add-to-cart-btn.btn-product-inquiry,
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn.btn-product-inquiry,
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn.btn-product-inquiry,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry,
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry {
                background: #1e3a5f !important;
                color: #fff !important;
                border: none !important;
                box-shadow: none !important;
                font-size: 0.875rem !important;
                font-weight: 600 !important;
                line-height: 1.25 !important;
                letter-spacing: -0.01em !important;
            }

            .products-grid .add-to-cart-btn.btn-product-inquiry:hover,
            .products-grid .add-to-cart-btn.btn-product-inquiry:active,
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn.btn-product-inquiry:hover,
            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn.btn-product-inquiry:active,
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn.btn-product-inquiry:hover,
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn.btn-product-inquiry:active,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry:hover,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry:active,
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry:hover,
            .products-grid.search-results-grid.individual-mode .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry:active,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry:hover,
            .products-grid.search-results-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn.btn-product-inquiry:active {
                background: #152a45 !important;
                color: #fff !important;
            }

            .products-grid .add-to-cart-btn.btn-product-inquiry .add-to-cart-btn-text {
                font-size: inherit !important;
                line-height: inherit !important;
                color: inherit !important;
            }
        }

        /* Touch: iOS/Android keep :hover after tap — reset unless device has real hover */
        @media (hover: none) {
            .catalog-dropdown-item:hover,
            .catalog-dropdown-back:hover,
            .catalog-dropdown-close:hover,
            .catalog-dropdown-search__trigger:hover,
            .header-mobile-search__trigger:hover,
            .quick-menu-item:hover:not(.is-active),
            .filter-btn:hover:not(.active),
            .hierarchy-filters .filter-btn:hover:not(.active),
            .catalog-filters-drawer .catalog-filters-accordion .filter-btn:hover:not(.active),
            .catalog-local-filter-option:hover,
            .catalog-local-filter-more:hover,
            .variant-btn:hover:not(.active),
            .product-variants .variant-button:hover:not(.active),
            .subcategory-item:hover,
            .subcategory-card:hover,
            .subcategories-grid .subcategory-card:hover,
            .brand-item:hover,
            .category-card:hover,
            .breadcrumb-link:hover,
            .mobile-bottom-nav__item:hover,
            .catalog-level2-card:hover,
            .catalog-dropdown-item-desktop:hover,
            .catalog-mega-menu-item:hover,
            .catalog-level2-list__item:hover,
            .search-autocomplete-item:hover,
            .search-action-btn:hover,
            .search-icon-btn:hover,
            .cfa-head:hover,
            .catalog-filters-drawer__close:hover,
            .catalog-filters-drawer__apply:hover,
            .catalog-filters-drawer__reset:hover,
            .spoiler-header:hover {
                background: inherit;
                background-color: inherit;
                color: inherit;
                transform: none;
                box-shadow: none;
                font-weight: inherit;
            }

            .catalog-dropdown-item:hover,
            .catalog-dropdown-item--sub:hover {
                background: transparent;
            }

            .quick-menu-item:hover:not(.is-active) {
                background: transparent;
                color: #4b5563;
            }

            .filter-btn:hover:not(.active),
            .hierarchy-filters .filter-btn:hover:not(.active) {
                background: #f2f2f5;
                color: #3a3a3c;
            }

            .variant-btn:hover:not(.active):not(.color-btn),
            .product-variants .variant-button:hover:not(.active):not(.variant-button-color) {
                border-color: rgba(45, 45, 45, 0.3);
                box-shadow: none;
                background: var(--header-surface-bg, #ffffff);
                color: #374151;
            }

            /* Мобильный поиск: на таче не должно быть визуального «hover» при тапе/удержании */
            .search-assist-mobile .search-assist-chip:hover,
            .search-assist-mobile .search-assist-chip:active,
            .search-assist-mobile .search-assist-chip:focus,
            .search-assist-mobile .search-assist-chip:focus-visible,
            .search-assist-mobile .search-assist-history-item:hover,
            .search-assist-mobile .search-assist-history-item:active,
            .search-assist-mobile .search-assist-history-item:focus,
            .search-assist-mobile .search-assist-history-item:focus-visible {
                background: #f2f2f7 !important;
                color: #1d1d1f !important;
                opacity: 1 !important;
                transform: none !important;
                box-shadow: none !important;
                outline: none !important;
                border: none !important;
            }

            .mobile-search-results__category:hover,
            .mobile-search-results__category:active,
            .mobile-search-results__category:focus,
            .mobile-search-results__category:focus-visible {
                background: transparent !important;
                outline: none !important;
                box-shadow: none !important;
                border: none !important;
                border-bottom: 1px solid #f0f0f0 !important;
                border-bottom-color: #f0f0f0 !important;
            }

            .mobile-search-results__category:hover .mobile-search-results__category-name,
            .mobile-search-results__category:active .mobile-search-results__category-name {
                color: #000 !important;
            }

            .mobile-search-results__category:hover .mobile-search-results__category-count,
            .mobile-search-results__category:active .mobile-search-results__category-count {
                color: #86868b !important;
            }

            .mobile-search-results__product:hover,
            .mobile-search-results__product:active,
            .mobile-search-results__product:focus,
            .mobile-search-results__product:focus-visible,
            .mobile-search-product-card:hover,
            .mobile-search-product-card:active,
            .mobile-search-product-card:focus,
            .mobile-search-product-card:focus-visible {
                background: #fff !important;
                opacity: 1 !important;
                transform: none !important;
                box-shadow: none !important;
                outline: none !important;
                -webkit-tap-highlight-color: transparent !important;
                border-top: none !important;
                border-left: none !important;
                border-right: 1px solid #eaeaea !important;
                border-bottom: 1px solid #eaeaea !important;
                border-right-color: #eaeaea !important;
                border-bottom-color: #eaeaea !important;
            }

            .mobile-search-results__product:hover .mobile-search-results__product-name,
            .mobile-search-results__product:active .mobile-search-results__product-name,
            .mobile-search-product-card:hover .mobile-search-product-card__name,
            .mobile-search-product-card:active .mobile-search-product-card__name {
                color: #1d1d1f !important;
            }

            .mobile-search-results__more:hover,
            .mobile-search-results__more:active,
            .mobile-search-results__more:focus,
            .mobile-search-results__more:focus-visible {
                background: #f2f2f7 !important;
                color: #0071e3 !important;
                outline: none !important;
                box-shadow: none !important;
                border: none !important;
            }

            .mobile-search-results__chip:hover,
            .mobile-search-results__chip:active,
            .mobile-search-results__chip:focus,
            .mobile-search-results__chip:focus-visible {
                background: #f2f2f7 !important;
                color: #1d1d1f !important;
                outline: none !important;
                box-shadow: none !important;
                border: none !important;
            }

            .search-assist-section__clear:hover,
            .search-assist-section__clear:active,
            .search-assist-section__clear:focus,
            .search-assist-section__clear:focus-visible {
                background: none !important;
                color: #0071e3 !important;
                outline: none !important;
                box-shadow: none !important;
                border: none !important;
            }

            .mobile-search-sheet .search-autocomplete-item:hover,
            .mobile-search-sheet .search-autocomplete-item:active,
            .mobile-search-sheet .search-autocomplete-item:focus,
            .mobile-search-sheet .search-autocomplete-item:focus-visible {
                background: transparent !important;
                outline: none !important;
                box-shadow: none !important;
                border: none !important;
                border-bottom: 1px solid rgba(45, 45, 45, 0.05) !important;
                border-bottom-color: rgba(45, 45, 45, 0.05) !important;
            }

            .subcategory-card:hover::before {
                opacity: 0;
            }

            /* На тач-устройствах не показываем визуальный отклик при «захвате»
               карточек и кнопок в поиске: ни системного нажатия, ни выделения текста,
               ни фокусной обводки, ни iOS callout на картинках. */
            .search-assist-chip,
            .search-assist-history-item,
            .search-assist-row,
            .search-assist-section__clear,
            .mobile-search-results__chip,
            .mobile-search-results__product,
            .mobile-search-results__category,
            .mobile-search-results__more,
            .mobile-search-product-card,
            .search-autocomplete-item,
            .search-assist-chip *,
            .search-assist-history-item *,
            .search-assist-row *,
            .mobile-search-results__product *,
            .mobile-search-results__category *,
            .mobile-search-results__more *,
            .mobile-search-product-card *,
            .search-autocomplete-item * {
                -webkit-tap-highlight-color: transparent !important;
                -webkit-touch-callout: none !important;
                -webkit-user-select: none !important;
                user-select: none !important;
            }
            .search-assist-chip,
            .search-assist-history-item,
            .search-assist-row,
            .search-assist-section__clear,
            .mobile-search-results__chip,
            .mobile-search-results__product,
            .mobile-search-results__category,
            .mobile-search-results__more,
            .mobile-search-product-card,
            .search-autocomplete-item {
                -webkit-appearance: none;
                appearance: none;
                touch-action: manipulation;
            }
            .mobile-search-results__product img,
            .mobile-search-product-card img,
            .search-autocomplete-item img {
                -webkit-user-drag: none;
                pointer-events: none;
            }
            .search-assist-chip:focus,
            .search-assist-history-item:focus,
            .search-assist-row:focus,
            .search-assist-section__clear:focus,
            .mobile-search-results__chip:focus,
            .mobile-search-results__product:focus,
            .mobile-search-results__category:focus,
            .mobile-search-results__more:focus,
            .mobile-search-product-card:focus,
            .mobile-search-product-card:focus-visible,
            .search-autocomplete-item:focus,
            .search-autocomplete-item:focus-visible {
                outline: none !important;
                box-shadow: none !important;
            }
        }

        /* Мобильный search sheet и catalog search: без обводки при удержании */
        @media (max-width: 1024px) {
            .mobile-search-sheet button,
            .catalog-search-panel button {
                -webkit-appearance: none;
                appearance: none;
                outline: none;
                box-shadow: none;
                -webkit-tap-highlight-color: transparent;
                -webkit-focus-ring-color: transparent;
                touch-action: manipulation;
            }

            .mobile-search-sheet .search-autocomplete-item {
                -webkit-tap-highlight-color: transparent;
                -webkit-touch-callout: none;
                touch-action: manipulation;
            }

            .mobile-search-sheet .mobile-search-product-card,
            .mobile-search-sheet .mobile-search-product-card:hover,
            .mobile-search-sheet .mobile-search-product-card:active,
            .mobile-search-sheet .mobile-search-product-card:focus,
            .mobile-search-sheet .mobile-search-product-card:focus-visible,
            .catalog-search-panel .mobile-search-product-card,
            .catalog-search-panel .mobile-search-product-card:hover,
            .catalog-search-panel .mobile-search-product-card:active,
            .catalog-search-panel .mobile-search-product-card:focus,
            .catalog-search-panel .mobile-search-product-card:focus-visible,
            .mobile-search-sheet .mobile-search-results__product,
            .mobile-search-sheet .mobile-search-results__product:hover,
            .mobile-search-sheet .mobile-search-results__product:active,
            .mobile-search-sheet .mobile-search-results__product:focus,
            .mobile-search-sheet .mobile-search-results__product:focus-visible,
            .catalog-search-panel .mobile-search-results__product,
            .catalog-search-panel .mobile-search-results__product:hover,
            .catalog-search-panel .mobile-search-results__product:active,
            .catalog-search-panel .mobile-search-results__product:focus,
            .catalog-search-panel .mobile-search-results__product:focus-visible {
                outline: none !important;
                box-shadow: none !important;
                -webkit-tap-highlight-color: transparent !important;
                border-top: none !important;
                border-left: none !important;
                border-right: 1px solid #eaeaea !important;
                border-bottom: 1px solid #eaeaea !important;
                border-right-color: #eaeaea !important;
                border-bottom-color: #eaeaea !important;
                background: #fff !important;
            }

            .mobile-search-sheet .mobile-search-results__category,
            .mobile-search-sheet .mobile-search-results__category:hover,
            .mobile-search-sheet .mobile-search-results__category:active,
            .mobile-search-sheet .mobile-search-results__category:focus,
            .mobile-search-sheet .mobile-search-results__category:focus-visible,
            .catalog-search-panel .mobile-search-results__category,
            .catalog-search-panel .mobile-search-results__category:hover,
            .catalog-search-panel .mobile-search-results__category:active,
            .catalog-search-panel .mobile-search-results__category:focus,
            .catalog-search-panel .mobile-search-results__category:focus-visible {
                outline: none !important;
                box-shadow: none !important;
                background: transparent !important;
                border: none !important;
                border-bottom: 1px solid #f0f0f0 !important;
                border-bottom-color: #f0f0f0 !important;
            }

            .mobile-search-sheet .search-assist-chip,
            .mobile-search-sheet .search-assist-chip:hover,
            .mobile-search-sheet .search-assist-chip:active,
            .mobile-search-sheet .search-assist-chip:focus,
            .mobile-search-sheet .search-assist-chip:focus-visible,
            .mobile-search-sheet .search-assist-history-item,
            .mobile-search-sheet .search-assist-history-item:hover,
            .mobile-search-sheet .search-assist-history-item:active,
            .mobile-search-sheet .search-assist-history-item:focus,
            .mobile-search-sheet .search-assist-history-item:focus-visible,
            .catalog-search-panel .search-assist-chip,
            .catalog-search-panel .search-assist-chip:hover,
            .catalog-search-panel .search-assist-chip:active,
            .catalog-search-panel .search-assist-chip:focus,
            .catalog-search-panel .search-assist-chip:focus-visible,
            .catalog-search-panel .search-assist-history-item,
            .catalog-search-panel .search-assist-history-item:hover,
            .catalog-search-panel .search-assist-history-item:active,
            .catalog-search-panel .search-assist-history-item:focus,
            .catalog-search-panel .search-assist-history-item:focus-visible,
            .mobile-search-sheet .mobile-search-results__chip,
            .mobile-search-sheet .mobile-search-results__chip:hover,
            .mobile-search-sheet .mobile-search-results__chip:active,
            .mobile-search-sheet .mobile-search-results__chip:focus,
            .mobile-search-sheet .mobile-search-results__chip:focus-visible,
            .catalog-search-panel .mobile-search-results__chip,
            .catalog-search-panel .mobile-search-results__chip:hover,
            .catalog-search-panel .mobile-search-results__chip:active,
            .catalog-search-panel .mobile-search-results__chip:focus,
            .catalog-search-panel .mobile-search-results__chip:focus-visible {
                outline: none !important;
                box-shadow: none !important;
                border: none !important;
                background: #f2f2f7 !important;
                color: #1d1d1f !important;
            }

            .mobile-search-sheet .mobile-search-results__more,
            .mobile-search-sheet .mobile-search-results__more:hover,
            .mobile-search-sheet .mobile-search-results__more:active,
            .mobile-search-sheet .mobile-search-results__more:focus,
            .mobile-search-sheet .mobile-search-results__more:focus-visible,
            .catalog-search-panel .mobile-search-results__more,
            .catalog-search-panel .mobile-search-results__more:hover,
            .catalog-search-panel .mobile-search-results__more:active,
            .catalog-search-panel .mobile-search-results__more:focus,
            .catalog-search-panel .mobile-search-results__more:focus-visible {
                outline: none !important;
                box-shadow: none !important;
                border: none !important;
                background: #f2f2f7 !important;
                color: #0071e3 !important;
            }

            .mobile-search-sheet .search-assist-section__clear,
            .mobile-search-sheet .search-assist-section__clear:hover,
            .mobile-search-sheet .search-assist-section__clear:active,
            .mobile-search-sheet .search-assist-section__clear:focus,
            .mobile-search-sheet .search-assist-section__clear:focus-visible,
            .catalog-search-panel .search-assist-section__clear,
            .catalog-search-panel .search-assist-section__clear:hover,
            .catalog-search-panel .search-assist-section__clear:active,
            .catalog-search-panel .search-assist-section__clear:focus,
            .catalog-search-panel .search-assist-section__clear:focus-visible {
                outline: none !important;
                box-shadow: none !important;
                border: none !important;
                background: none !important;
                color: #0071e3 !important;
            }

            .mobile-search-sheet .search-autocomplete-item,
            .mobile-search-sheet .search-autocomplete-item:hover,
            .mobile-search-sheet .search-autocomplete-item:active,
            .mobile-search-sheet .search-autocomplete-item:focus,
            .mobile-search-sheet .search-autocomplete-item:focus-visible {
                outline: none !important;
                box-shadow: none !important;
                background: transparent !important;
                border: none !important;
                border-bottom: 1px solid rgba(45, 45, 45, 0.05) !important;
                border-bottom-color: rgba(45, 45, 45, 0.05) !important;
            }
        }

        /* Touch/mobile: без обводки при удержании — все кликабельные элементы */
        @media (hover: none), (max-width: 1024px) {
            html {
                -webkit-tap-highlight-color: transparent;
            }

            :where(
                a,
                button,
                summary,
                label[for],
                [role="button"],
                [role="link"],
                [role="tab"],
                [onclick],
                .search-autocomplete-item,
                input[type="button"],
                input[type="submit"],
                input[type="reset"]
            ):not(textarea):not(select):not([contenteditable="true"]) {
                -webkit-tap-highlight-color: transparent !important;
                -webkit-touch-callout: none;
                -webkit-focus-ring-color: transparent;
            }

            :where(
                a,
                button,
                summary,
                label[for],
                [role="button"],
                [role="link"],
                [role="tab"],
                [onclick],
                .search-autocomplete-item,
                input[type="button"],
                input[type="submit"],
                input[type="reset"]
            ):is(:focus, :focus-visible, :active) {
                outline: none !important;
                box-shadow: none !important;
            }

            button,
            input[type="button"],
            input[type="submit"],
            input[type="reset"] {
                -webkit-appearance: none;
                appearance: none;
                touch-action: manipulation;
            }

            /* Grid-карточки с border-right/bottom — не темнеть при удержании */
            :where(
                .product-card,
                .individual-product-card,
                .home-discount-item,
                .home-recommendation-item,
                .mobile-search-product-card,
                .mobile-search-results__product
            ):is(:hover, :active, :focus, :focus-visible) {
                border-top: none !important;
                border-left: none !important;
                border-right: 1px solid #eaeaea !important;
                border-bottom: 1px solid #eaeaea !important;
                border-right-color: #eaeaea !important;
                border-bottom-color: #eaeaea !important;
            }

            /* Карусель брендов */
            .brands-carousel-item:is(:hover, :active, :focus, :focus-visible),
            .brands-carousel-arrow:is(:hover, :active, :focus, :focus-visible) {
                outline: none !important;
                box-shadow: none !important;
            }

            .brands-carousel-item:hover img,
            .brands-carousel-item:active img {
                opacity: 0.92;
                filter: grayscale(1);
            }

            /* Главная: суперцены, бестселлеры, блог, промо */
            :where(
                .home-discount-item,
                .home-recommendation-item,
                .home-tech-blog-card,
                .home-discounts-nav,
                .home-recommendations-nav,
                .home-discounts-dot,
                .home-recommendations-dot,
                .promo-carousel-indicator,
                .promo-banner
            ):is(:hover, :active, :focus, :focus-visible) {
                outline: none !important;
                box-shadow: none !important;
            }

            .home-discount-item:hover .home-discount-image,
            .home-discount-item:active .home-discount-image,
            .home-recommendation-item:hover .home-recommendation-image,
            .home-recommendation-item:active .home-recommendation-image {
                transform: none;
            }
        }

        /* ═══ Карточки каталога, категорий и главной: телефон + планшет ═══ */
        @media (max-width: 1024px) {
            .products-grid {
                --card-image-height: 250px;
                --card-info-padding: 12px;
                --card-name-size: 0.875rem;
                --card-brand-size: 0.78rem;
                --card-price-size: 1.15rem;
                --card-old-price-size: 0.85rem;
                --card-out-of-stock-size: 0.95rem;
                --card-discount-size: 10px;
                --card-btn-font-size: 0.9375rem;
                --card-btn-min-height: 48px;
                --card-btn-padding-y: 12px;
                --card-btn-padding-x: 14px;
                --card-variant-label-size: 0.7rem;
                --card-variant-btn-size: 0.72rem;
                --card-variant-btn-padding: 5px 8px;
                --card-low-stock-size: 0.5625rem;
                --card-img-scale: 92%;
                --card-img-margin: 4%;
            }

            .products-grid .product-image,
            .products-grid .product-image-carousel {
                height: var(--card-image-height);
            }

            .products-grid .product-img,
            .products-grid .image-slide-item img {
                width: var(--card-img-scale);
                height: var(--card-img-scale);
                margin: var(--card-img-margin);
            }

            .products-grid .product-card .product-info,
            .products-grid .individual-product-card .product-info {
                padding: var(--card-info-padding);
            }

            .products-grid:not(.individual-mode) .product-card .product-name,
            .products-grid.individual-mode .individual-product-card .product-name {
                font-size: var(--card-name-size);
                line-height: 1.3;
                margin-bottom: 6px;
                display: -webkit-box;
                -webkit-line-clamp: 2;
                -webkit-box-orient: vertical;
                overflow: hidden;
            }

            .products-grid .product-card .product-brand,
            .products-grid .individual-product-card .product-brand {
                font-size: var(--card-brand-size);
                margin-bottom: 8px;
            }

            .products-grid .product-card .product-info .product-price .current-price,
            .products-grid .product-card .current-price {
                font-size: var(--card-price-size);
            }

            .products-grid .product-card .product-info .product-price .old-price,
            .products-grid .product-card .old-price {
                font-size: var(--card-old-price-size);
            }

            .products-grid .product-card .product-info .product-price .discount,
            .products-grid.individual-mode .individual-product-card .product-info-sidebar .product-price .discount {
                font-size: var(--card-discount-size);
            }

            .products-grid .price-out-of-stock {
                font-size: var(--card-out-of-stock-size);
            }

            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price .current-price,
            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price.product-price-with-discount .product-price-row .current-price {
                font-size: var(--card-price-size);
            }

            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price .old-price,
            .products-grid.individual-mode:not(.search-results-grid) .individual-product-card .product-info-sidebar .product-price.product-price-with-discount .product-price-row .old-price {
                font-size: var(--card-old-price-size);
            }

            .products-grid:not(.individual-mode) .product-card .add-to-cart-wrapper .add-to-cart-btn,
            .products-grid.individual-mode .individual-product-card .add-to-cart-btn,
            .products-grid.individual-mode.individual-mode-few .individual-product-card .product-info-sidebar .add-to-cart-btn {
                font-size: var(--card-btn-font-size) !important;
                min-height: var(--card-btn-min-height) !important;
                padding: var(--card-btn-padding-y) var(--card-btn-padding-x) !important;
            }

            .products-grid .product-card .product-variants .variant-group label {
                font-size: var(--card-variant-label-size);
            }

            .products-grid .product-card .product-variants .variant-buttons .variant-btn:not(.color-btn) {
                font-size: var(--card-variant-btn-size);
                padding: var(--card-variant-btn-padding);
            }

            .products-grid .low-stock-badge {
                font-size: var(--card-low-stock-size);
            }

            .mobile-search-product-card {
                padding: var(--card-info-padding);
            }

            .mobile-search-product-card__image,
            .mobile-search-results__product-image {
                height: clamp(120px, 28vw, 132px);
            }

            .mobile-search-product-card__name,
            .mobile-search-results__product-name {
                font-size: clamp(13px, 3.2vw, 15px);
            }

            .mobile-search-product-card__price,
            .mobile-search-results__product-price {
                font-size: clamp(15px, 3.6vw, 17px);
            }

            .mobile-search-product-card__old-price {
                font-size: clamp(11px, 2.6vw, 12px);
            }
        }

        @media (min-width: 481px) and (max-width: 1024px) {
            .products-grid {
                --card-image-height: clamp(260px, 34vw, 300px);
                --card-info-padding: clamp(14px, 2.2vw, 18px);
                --card-name-size: clamp(0.95rem, 2.1vw, 1.08rem);
                --card-brand-size: clamp(0.82rem, 1.6vw, 0.9rem);
                --card-price-size: clamp(1.2rem, 2.8vw, 1.35rem);
                --card-old-price-size: clamp(0.88rem, 1.8vw, 0.98rem);
                --card-out-of-stock-size: clamp(0.95rem, 2vw, 1.05rem);
                --card-discount-size: 11px;
                --card-btn-font-size: clamp(0.95rem, 1.8vw, 1.05rem);
                --card-btn-min-height: clamp(48px, 6vw, 54px);
                --card-btn-padding-y: clamp(12px, 1.6vw, 14px);
                --card-btn-padding-x: clamp(14px, 2.2vw, 18px);
                --card-variant-label-size: clamp(0.72rem, 1.4vw, 0.78rem);
                --card-variant-btn-size: clamp(0.74rem, 1.5vw, 0.8rem);
                --card-variant-btn-padding: clamp(5px, 1vw, 7px) clamp(8px, 1.6vw, 11px);
                --card-low-stock-size: clamp(0.5625rem, 1.2vw, 0.625rem);
                --card-img-scale: 93%;
                --card-img-margin: 3.5%;
            }

            .categories .category-icon {
                width: clamp(100px, 20vw, 132px);
                height: clamp(100px, 20vw, 132px);
            }

            .categories .category-name {
                font-size: clamp(0.88rem, 1.8vw, 1rem) !important;
            }

            .categories .category-count {
                font-size: clamp(0.75rem, 1.5vw, 0.85rem) !important;
            }

            .category-card {
                padding: clamp(10px, 2vw, 16px) clamp(14px, 2.5vw, 20px) clamp(14px, 2.5vw, 20px) clamp(14px, 2.5vw, 20px) !important;
            }

            .subcategories-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .subcategory-card {
                padding: clamp(16px, 2.5vw, 22px) clamp(12px, 2vw, 18px);
            }

            .subcategory-card .subcategory-icon {
                font-size: clamp(2rem, 4.5vw, 2.4rem);
                margin-bottom: clamp(0.65rem, 1.5vw, 0.85rem);
            }

            .subcategory-card .subcategory-name {
                font-size: clamp(0.92rem, 1.8vw, 1.05rem);
            }

            .subcategory-card .subcategory-count {
                font-size: clamp(0.72rem, 1.4vw, 0.78rem);
            }

            .home-mobile-airy-carousel .home-discounts-title,
            .home-mobile-airy-carousel .home-recommendations-title {
                font-size: clamp(22px, 3.2vw, 28px);
            }

            .home-mobile-airy-carousel .home-discount-item,
            .home-mobile-airy-carousel .home-recommendation-item {
                padding: clamp(12px, 2vw, 16px);
            }

            .home-mobile-airy-carousel .home-discount-image,
            .home-mobile-airy-carousel .home-recommendation-image {
                height: clamp(140px, 20vw, 168px);
            }

            .home-mobile-airy-carousel .home-discount-name,
            .home-mobile-airy-carousel .home-recommendation-name {
                font-size: clamp(15px, 2.2vw, 17px);
            }

            .home-mobile-airy-carousel .home-discount-price,
            .home-mobile-airy-carousel .home-recommendation-price {
                font-size: clamp(17px, 2.4vw, 19px);
            }

            .home-mobile-airy-carousel .home-discount-old-price,
            .home-mobile-airy-carousel .home-recommendation-old-price {
                font-size: clamp(12px, 1.8vw, 13px);
            }

            .mobile-search-product-card__image,
            .mobile-search-results__product-image {
                height: clamp(140px, 18vw, 168px);
            }

            .mobile-search-product-card__name,
            .mobile-search-results__product-name {
                font-size: clamp(14px, 1.8vw, 16px);
            }

            .mobile-search-product-card__price,
            .mobile-search-results__product-price {
                font-size: clamp(16px, 2vw, 18px);
            }
        }

        @media (max-width: 480px) {
            .products-grid {
                --card-image-height: 220px;
                --card-info-padding: 10px;
                --card-name-size: 0.8125rem;
                --card-brand-size: 0.72rem;
                --card-price-size: 1.05rem;
                --card-old-price-size: 0.78rem;
                --card-out-of-stock-size: 0.88rem;
                --card-discount-size: 9px;
                --card-btn-font-size: 0.875rem;
                --card-btn-min-height: 46px;
                --card-btn-padding-y: 11px;
                --card-btn-padding-x: 12px;
                --card-variant-label-size: 0.65rem;
                --card-variant-btn-size: 0.68rem;
                --card-variant-btn-padding: 4px 7px;
                --card-img-scale: 94%;
                --card-img-margin: 3%;
            }

            .categories .category-icon {
                width: 76px;
                height: 76px;
            }

            .home-mobile-airy-carousel .home-discount-image,
            .home-mobile-airy-carousel .home-recommendation-image {
                height: 120px;
            }

            .home-mobile-airy-carousel .home-discount-name,
            .home-mobile-airy-carousel .home-recommendation-name {
                font-size: 14px;
            }

            .home-mobile-airy-carousel .home-discount-price,
            .home-mobile-airy-carousel .home-recommendation-price {
                font-size: 16px;
            }
        }
      