/* ============================================================
   MOBILE.CSS — Super Adaptive Mobile Styles
   Подключается ПОСЛЕДНИМ, перебивает всё из styles.min.css
   ============================================================ */

/* Скрытие мобильного поиска на десктопе */
.mobile-search-overlay {
    display: none;
}

@media (max-width: 768px) {
    .mobile-search-overlay {
        display: flex;
        /* Показываем на мобильных, но оно скрыто через transform/visibility внутри */
    }
}

@media (max-width: 768px) {

    /* ══════════════════════════════════════
       ГЛОБАЛЬНЫЕ СБРОСЫ
    ══════════════════════════════════════ */
    html,
    body {
        overflow-x: hidden !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    *,
    *::before,
    *::after {
        box-sizing: border-box !important;
    }

    .container {
        padding: 0 16px !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    /* ══════════════════════════════════════
       TOP BAR — скрыть
    ══════════════════════════════════════ */
    .top-bar {
        display: none !important;
    }

    /* ══════════════════════════════════════
       ШАПКА
    ══════════════════════════════════════ */
    .pro-header {
        padding: 10px 0 !important;
        position: sticky !important;
        top: 0 !important;
        z-index: 1000 !important;
        width: 100% !important;
        background: #fff !important;
        box-shadow: 0 2px 16px rgba(0, 0, 0, 0.06) !important;
        border-bottom: none !important;
    }

    .header-main-row {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .header-left {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        flex: 1 1 auto !important;
        min-width: 0 !important;
        overflow: hidden !important;
    }

    .burger-menu {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        border-radius: var(--radius-card-sm) !important;
        background: #f1f5f9 !important;
        border: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 16px !important;
        color: #0f172a !important;
        cursor: pointer !important;
        flex-shrink: 0 !important;
        padding: 0 !important;
    }

    .catalog-label,
    .logo-slogan,
    .cart-label {
        display: none !important;
    }

    .logo-wrapper {
        min-width: 0 !important;
        overflow: hidden !important;
    }

    .logo {
        font-size: 15px !important;
        font-weight: 800 !important;
        white-space: nowrap !important;
        text-decoration: none !important;
        display: block !important;
    }

    .search-bar {
        display: none !important;
    }

    .header-actions {
        display: flex !important;
        align-items: center !important;
        gap: 6px !important;
        flex-shrink: 0 !important;
    }

    .header-actions .action-item,
    .header-actions .mobile-search-trigger,
    .header-actions .theme-toggle-btn,
    .header-actions #open-cart {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        border-radius: var(--radius-card-sm) !important;
        background: #f1f5f9 !important;
        border: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 16px !important;
        color: #0f172a !important;
        cursor: pointer !important;
        text-decoration: none !important;
        padding: 0 !important;
        flex-shrink: 0 !important;
        position: relative !important;
    }

    body.dark-mode .pro-header {
        background: #0f172a !important;
    }

    body.dark-mode .header-actions .theme-toggle-btn {
        background: rgba(255, 255, 255, 0.05) !important;
        color: #ff4d30 !important;
    }

    .header-actions #open-cart {
        background: #fff5f3 !important;
        color: #ff4d30 !important;
    }

    .cart-icon-wrapper {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        background: transparent !important;
        border-radius: 0 !important;
    }

    #cart-count {
        position: absolute !important;
        top: -6px !important;
        right: -6px !important;
        background: #ff4d30 !important;
        color: #fff !important;
        font-size: 9px !important;
        font-weight: 800 !important;
        width: 16px !important;
        height: 16px !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1 !important;
    }

    .mobile-only {
        display: flex !important;
    }

    .desktop-only {
        display: none !important;
    }

    #layout-scaler-container {
        display: none !important;
    }

    /* ══════════════════════════════════════
       ГЕРОЙ — ПОЛНОЭКРАННЫЙ, ПРЕМИАЛЬНЫЙ
    ══════════════════════════════════════ */
    .hero-section {
        padding: 0 !important;
        margin-bottom: 0 !important;
        overflow: hidden !important;
        min-height: 100vh !important;
        min-height: 100svh !important;
        height: auto !important;
        display: flex !important;
        align-items: center !important;
        position: relative !important;
        background: #020617 !important;
    }

    /* Анимированная сетка и градиенты */
    .hero-section::before {
        content: '' !important;
        position: absolute !important;
        inset: 0 !important;
        background:
            radial-gradient(ellipse 600px 600px at 80% 20%, rgba(255, 77, 48, 0.25) 0%, transparent 70%),
            radial-gradient(ellipse 500px 500px at 10% 80%, rgba(59, 130, 246, 0.18) 0%, transparent 70%),
            linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
            linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px) !important;
        background-size: 100% 100%, 100% 100%, 30px 30px, 30px 30px !important;
        z-index: 1 !important;
        animation: gridMove 20s linear infinite !important;
    }

    @keyframes gridMove {
        0% {
            background-position: 0 0, 0 0, 0 0, 0 0;
        }

        100% {
            background-position: 0 0, 0 0, 30px 30px, 30px 30px;
        }
    }

    .hero-section::after {
        content: '' !important;
        position: absolute !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        height: 150px !important;
        background: linear-gradient(to top, #0f172a, transparent) !important;
        z-index: 2 !important;
        pointer-events: none !important;
    }

    .hero-section>.container {
        display: flex !important;
        align-items: center !important;
        min-height: 100vh !important;
        min-height: 100svh !important;
        padding: 60px 16px 80px !important;
    }

    .hero-container-flex {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        text-align: center !important;
        gap: 0 !important;
        padding: 0 !important;
        width: 100% !important;
        position: relative !important;
        z-index: 3 !important;
    }

    .hero-image-wrapper,
    .hero-floating-circle {
        display: none !important;
    }

    .hero-content {
        animation: heroReveal 1s cubic-bezier(0.19, 1, 0.22, 1) forwards !important;
        width: 100% !important;
        background: rgba(15, 23, 42, 0.5) !important;
        backdrop-filter: blur(20px) !important;
        -webkit-backdrop-filter: blur(20px) !important;
        padding: 40px 24px 80px !important;
        border-radius: var(--radius-card-lg) !important;
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        box-shadow: 0 20px 50px rgba(0, 0, 0, 0.4) !important;
    }

    @keyframes heroReveal {
        0% {
            opacity: 0;
            transform: translateY(40px);
        }

        100% {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .hero-badge {
        display: inline-flex !important;
        align-items: center !important;
        margin: 0 auto 24px !important;
        font-size: 11px !important;
        font-weight: 800 !important;
        padding: 8px 18px !important;
        border-radius: 50px !important;
        background: rgba(255, 77, 48, 0.12) !important;
        color: #ff8c30 !important;
        border: 1px solid rgba(255, 77, 48, 0.25) !important;
        backdrop-filter: blur(8px) !important;
        letter-spacing: 0.8px !important;
        text-transform: uppercase !important;
        animation: badgePulse 3s ease-in-out infinite !important;
    }

    @keyframes badgePulse {

        0%,
        100% {
            box-shadow: 0 0 0 0 rgba(255, 77, 48, 0.2);
            transform: scale(1);
        }

        50% {
            box-shadow: 0 0 0 10px rgba(255, 77, 48, 0);
            transform: scale(1.02);
        }
    }

    .hero-title {
        font-size: 34px !important;
        font-weight: 900 !important;
        line-height: 1.1 !important;
        margin-bottom: 20px !important;
        letter-spacing: -1.2px !important;
        color: #fff !important;
        text-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
    }

    .hero-title span {
        display: inline !important;
        background: linear-gradient(135deg, #ff4c30, #ff8c30) !important;
        -webkit-background-clip: text !important;
        -webkit-text-fill-color: transparent !important;
        filter: drop-shadow(0 0 10px rgba(255, 76, 48, 0.3)) !important;
    }

    .hero-subtitle {
        font-size: 15px !important;
        line-height: 1.6 !important;
        margin: 0 auto 36px !important;
        opacity: 0.7 !important;
        max-width: 340px !important;
        color: #94a3b8 !important;
        font-weight: 500 !important;
    }

    .hero-actions {
        display: flex !important;
        flex-direction: column !important;
        gap: 14px !important;
        width: 100% !important;
        max-width: 340px !important;
        margin: 0 auto !important;
    }

    .btn-hero {
        padding: 18px 24px !important;
        border-radius: 16px !important;
        font-size: 14px !important;
        font-weight: 800 !important;
        letter-spacing: 0.5px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 10px !important;
        text-transform: uppercase !important;
        transition: all 0.3s ease !important;
        width: 100% !important;
        text-decoration: none !important;
    }

    .btn-hero.btn-primary {
        position: relative !important;
        overflow: hidden !important;
        background: linear-gradient(135deg, #ff4c30, #ff6a30) !important;
        box-shadow: 0 10px 30px rgba(255, 77, 48, 0.4) !important;
        color: #fff !important;
    }

    .btn-hero.btn-primary::after {
        content: '' !important;
        position: absolute !important;
        top: -50% !important;
        left: -150% !important;
        width: 200% !important;
        height: 200% !important;
        background: linear-gradient(to right, transparent, rgba(255, 255, 255, 0.3), transparent) !important;
        transform: rotate(45deg) !important;
        animation: shimmer 4s infinite !important;
    }

    @keyframes shimmer {
        0% {
            left: -150%;
        }

        100% {
            left: 150%;
        }
    }

    .btn-hero.btn-outline {
        background: rgba(255, 255, 255, 0.05) !important;
        border: 1px solid rgba(255, 255, 255, 0.1) !important;
        backdrop-filter: blur(12px) !important;
        color: #fff !important;
    }

    /* Scroll indicator */
    .hero-scroll-indicator {
        position: absolute !important;
        bottom: 30px !important;
        left: 50% !important;
        transform: translateX(-50%) !important;
        z-index: 10 !important;
        width: 28px !important;
        height: 48px !important;
        border: 2px solid rgba(255, 255, 255, 0.2) !important;
        border-radius: 14px !important;
        display: flex !important;
        align-items: flex-start !important;
        justify-content: center !important;
        padding-top: 8px !important;
    }

    .hero-scroll-indicator span {
        width: 4px !important;
        height: 10px !important;
        background: rgba(255, 255, 255, 0.6) !important;
        border-radius: 2px !important;
        animation: scrollBounce 2s ease-in-out infinite !important;
    }

    /* ── Hero Contacts Mobile Fix ── */
    .hero-quick-contacts {
        display: flex !important;
        flex-direction: column !important;
        gap: 15px !important;
        align-items: center !important;
        text-align: center !important;
        margin-top: 25px !important;
        padding-top: 25px !important;
        border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
    }

    .hero-q-item {
        white-space: nowrap !important;
        font-size: 14px !important;
        letter-spacing: 0.5px !important;
        justify-content: center !important;
    }

    @media (min-width: 480px) {
        .hero-quick-contacts {
            flex-direction: row !important;
            flex-wrap: wrap !important;
            gap: 30px !important;
        }
    }



    /* ══════════════════════════════════════
       КАТАЛОГ
    ══════════════════════════════════════ */
    .catalog-section {
        padding: 24px 0 32px !important;
    }

    /* Фильтры-пилюли категорий — 3 колонки для гармонии */
    #category-filters,
    .category-filters {
        display: grid !important;
        grid-template-columns: repeat(3, 1fr) !important;
        gap: 8px !important;
        margin-bottom: 16px !important;
        width: 100% !important;
    }

    #category-filters .filter-btn,
    .category-filters .filter-btn,
    #category-filters button,
    .category-filters button {
        width: 100% !important;
        text-align: center !important;
        justify-content: center !important;
        padding: 10px 8px !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        border-radius: var(--radius-card-sm) !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        box-sizing: border-box !important;
        line-height: 1.2 !important;
    }

    .catalog-layout {
        display: block !important;
        grid-template-columns: unset !important;
        gap: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 12px !important;
    }

    .filter-sidebar {
        display: none;
    }

    .catalog-main {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !important;
    }

    /* Уведомление о ценах */
    .price-notice-banner {
        font-size: 11px !important;
        padding: 10px 12px !important;
        border-radius: 10px !important;
        margin-bottom: 12px !important;
        line-height: 1.4 !important;
        gap: 8px !important;
    }

    .price-notice-banner i {
        font-size: 14px !important;
        flex-shrink: 0 !important;
    }

    /* ТУЛБАР */
    .catalog-toolbar {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        flex-wrap: nowrap !important;
        gap: 8px !important;
        width: 100% !important;
        margin-bottom: 12px !important;
        padding-bottom: 10px !important;
        border-bottom: 1px solid #e2e8f0 !important;
        overflow: hidden !important;
    }

    .toolbar-left {
        font-size: 13px !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
        color: #64748b !important;
    }

    .per-page-selector {
        display: flex !important;
        align-items: center !important;
        gap: 4px !important;
    }

    .per-page-selector .selector-label {
        display: none !important;
    }

    .per-page-options {
        gap: 2px !important;
        padding: 2px !important;
        border-radius: 8px !important;
    }

    .per-page-btn {
        width: 30px !important;
        height: 26px !important;
        font-size: 11px !important;
    }

    .toolbar-right {
        display: flex !important;
        align-items: center !important;
        gap: 6px !important;
        flex-shrink: 0 !important;
    }

    .view-toggles {
        display: flex !important;
        gap: 4px !important;
    }

    .view-btn {
        width: 30px !important;
        height: 30px !important;
        min-width: 30px !important;
        padding: 0 !important;
        font-size: 12px !important;
        border-radius: 6px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Скрываем лишние переключатели на мобилках */
    #btn-grid,
    #btn-grid-4,
    #btn-grid-5 {
        display: none !important;
    }

    /* СЕТКА ТОВАРОВ */
    #products-container,
    #main-product-grid,
    .products-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
        width: 100% !important;
        overflow: hidden !important;
    }

    /* Принудительно 2 колонки для всех сеток на мобилках */
    .products-grid.grid-view,
    .products-grid.grid-2-view,
    .products-grid.grid-4-view,
    .products-grid.grid-5-view {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    /* Список — всегда в одну колонку */
    .products-grid.list-view {
        grid-template-columns: minmax(0, 1fr) !important;
    }

    /* ══════════════════════════════════════
       КАРТОЧКА ТОВАРА — идеальная гармония
    ══════════════════════════════════════ */
    .product-card {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        text-align: center !important;
        padding: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow: hidden !important;
        height: auto !important;
        min-height: unset !important;
        border-radius: var(--radius-card) !important;
        background: transparent !important;
        border: 1px solid rgba(226, 232, 240, 0.6) !important;
        transition: none !important;
    }

    .product-card:hover {
        transform: none !important;
        box-shadow: none !important;
    }

    .card-img {
        width: 100% !important;
        height: 120px !important;
        margin: 0 0 8px 0 !important;
        padding: 10px !important;
        flex-shrink: 0 !important;
        border-radius: var(--radius-card-sm) !important;
        background: var(--light-bg) !important;
        /* MATCH SITE BACKGROUND FOR BLENDING */
    }

    .card-img img {
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        mix-blend-mode: multiply !important;
        filter: brightness(1.05) contrast(1.05) !important;
    }

    /* Скрываем Quick View на мобильных */
    .quick-view-overlay {
        display: none !important;
    }

    .card-info {
        display: flex !important;
        flex-direction: column !important;
        flex: 1 1 auto !important;
        width: 100% !important;
        padding: 0 !important;
        text-align: center !important;
        overflow: hidden !important;
    }

    .card-info h3 {
        font-size: 12px !important;
        line-height: 1.3 !important;
        height: 32px !important;
        max-height: 32px !important;
        overflow: hidden !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        white-space: normal !important;
        word-break: break-word !important;
        margin: 0 0 6px 0 !important;
        font-weight: 700 !important;
    }

    /* СКРЫВАЕМ описание на мобильных — ключевое для чистоты */
    .card-product-desc,
    .card-info p:not(.card-price):not(.price-notice),
    .card-info>p,
    .card-product-desc *,
    .card-product-desc h2,
    .card-product-desc h3,
    .card-product-desc h4,
    .card-product-desc div,
    .card-product-desc span,
    .card-product-desc ul,
    .card-product-desc li {
        display: none !important;
        max-height: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
        font-size: 0 !important;
        line-height: 0 !important;
        visibility: hidden !important;
        height: 0 !important;
    }

    .card-price {
        font-size: 15px !important;
        font-weight: 800 !important;
        margin: auto 0 4px 0 !important;
        white-space: nowrap !important;
        text-align: center !important;
    }

    .price-notice {
        display: none !important;
    }

    .card-qty-wrapper {
        display: flex !important;
        flex-direction: column !important;
        gap: 5px !important;
        width: 100% !important;
        margin: 6px 0 0 0 !important;
        padding: 0 !important;
        align-items: stretch !important;
    }

    .qty-ctrl {
        display: flex !important;
        align-items: center !important;
        width: 100% !important;
        height: 32px !important;
        border-radius: var(--radius-card-sm) !important;
        overflow: hidden !important;
        border: 1px solid #e2e8f0 !important;
        background: #f8fafc !important;
    }

    .qty-ctrl button {
        width: 30px !important;
        min-width: 30px !important;
        height: 32px !important;
        font-size: 16px !important;
        padding: 0 !important;
        flex-shrink: 0 !important;
        background: transparent !important;
        border: none !important;
        cursor: pointer !important;
    }

    .qty-ctrl span {
        flex: 1 !important;
        text-align: center !important;
        font-size: 13px !important;
        font-weight: 700 !important;
    }

    .btn-card {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 34px !important;
        padding: 0 8px !important;
        font-size: 10px !important;
        font-weight: 700 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        border-radius: var(--radius-card-sm) !important;
        gap: 5px !important;
        cursor: pointer !important;
        text-transform: uppercase !important;
        letter-spacing: 0.3px !important;
    }

    .btn-card i {
        font-size: 10px !important;
    }

    .btn-card span,
    .btn-card .btn-text {
        overflow: hidden !important;
        text-overflow: ellipsis !important;
        white-space: nowrap !important;
    }

    /* ПАГИНАЦИЯ */
    .pagination-container {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        margin: 24px 0 !important;
        padding: 0 10px !important;
        width: 100% !important;
    }

    .page-btn {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        border-radius: 12px !important;
        border: 1px solid #e2e8f0 !important;
        background: #fff !important;
        color: #0f172a !important;
        font-size: 14px !important;
        font-weight: 700 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        padding: 0 !important;
        flex-shrink: 0 !important;
        transition: all 0.2s ease !important;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05) !important;
    }

    .page-btn.active {
        background: linear-gradient(135deg, #ff4d30 0%, #ff8c30 100%) !important;
        border-color: #ff4d30 !important;
        color: #fff !important;
        box-shadow: 0 4px 12px rgba(255, 77, 48, 0.3) !important;
    }

    .page-btn:disabled {
        opacity: 0.3 !important;
        background: #f1f5f9 !important;
        border-color: #e2e8f0 !important;
    }

    .page-dots {
        color: #94a3b8 !important;
        font-size: 16px !important;
        font-weight: 800 !important;
        padding: 0 4px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* ══════════════════════════════════════
       АНАЛОГИ — чистая мобильная секция
    ══════════════════════════════════════ */
    .analogs-section {
        padding: 36px 0 !important;
        overflow: hidden !important;
    }

    .analogs-inner {
        display: flex !important;
        flex-direction: column !important;
        grid-template-columns: unset !important;
        gap: 20px !important;
        text-align: center !important;
        overflow: hidden !important;
        width: 100% !important;
    }

    .analogs-image-stack {
        display: none !important;
    }

    .analogs-text {
        width: 100% !important;
        overflow: hidden !important;
    }

    .analogs-text h2 {
        font-size: 22px !important;
        font-weight: 800 !important;
        margin-bottom: 10px !important;
    }

    .analogs-text p {
        font-size: 13px !important;
        line-height: 1.6 !important;
        margin-bottom: 16px !important;
        padding: 0 !important;
        overflow: hidden !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 3 !important;
        line-clamp: 3 !important;
        -webkit-box-orient: vertical !important;
    }

    /* Бегущая строка брендов */
    .brands-ticker-wrapper {
        overflow: hidden !important;
        width: 100% !important;
        margin-bottom: 4px !important;
    }

    .brand-logo {
        font-size: 11px !important;
        letter-spacing: 0.5px !important;
        white-space: nowrap !important;
        flex-shrink: 0 !important;
        opacity: 0.45 !important;
    }

    /* Stat-боксы — равные, гармоничные */
    .analogs-stats {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
        width: 100% !important;
    }

    .stat-box {
        min-width: 0 !important;
        max-width: none !important;
        padding: 20px 14px !important;
        border-radius: 16px !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }

    .stat-box strong {
        display: block !important;
        font-size: 28px !important;
        font-weight: 900 !important;
        margin-bottom: 6px !important;
        line-height: 1 !important;
    }

    .stat-box span {
        font-size: 10px !important;
        line-height: 1.3 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
    }

    /* ══════════════════════════════════════
       SOLUTIONS — горизонтальный скролл
    ══════════════════════════════════════ */
    .solutions-section {
        padding: 36px 0 !important;
    }

    .solutions-section .section-header h2 {
        font-size: 22px !important;
        margin-bottom: 8px !important;
    }

    .solutions-section .section-header {
        margin-bottom: 20px !important;
        text-align: center !important;
    }

    .solutions-section .section-header p {
        font-size: 13px !important;
    }

    .solutions-grid {
        display: flex !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        gap: 12px !important;
        padding: 4px 16px 16px !important;
        margin: 0 -16px !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        grid-template-columns: unset !important;
    }

    .solutions-grid::-webkit-scrollbar {
        display: none !important;
    }

    .solution-item {
        flex: 0 0 260px !important;
        scroll-snap-align: start !important;
        max-width: 260px !important;
        height: 280px !important;
        border-radius: 20px !important;
        background: #0f172a !important;
    }

    .solution-overlay {
        padding: 20px !important;
        background: linear-gradient(to top, rgba(15, 23, 42, 0.95) 0%, rgba(15, 23, 42, 0.6) 60%, transparent 100%) !important;
    }

    .solution-overlay h3 {
        font-size: 16px !important;
        margin-bottom: 6px !important;
        font-weight: 800 !important;
    }

    .solution-overlay p {
        font-size: 12px !important;
        line-height: 1.4 !important;
        opacity: 0.85 !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2 !important;
        line-clamp: 2 !important;
        -webkit-box-orient: vertical !important;
        overflow: hidden !important;
    }

    .solution-tag {
        margin-bottom: 8px !important;
        padding: 4px 10px !important;
        font-size: 9px !important;
    }

    /* ══════════════════════════════════════
       EXPERTS — горизонтальный скролл
    ══════════════════════════════════════ */
    .experts-section {
        padding: 36px 0 !important;
    }

    .experts-section .section-header h2 {
        font-size: 22px !important;
        margin-bottom: 8px !important;
    }

    .experts-section .section-header {
        margin-bottom: 20px !important;
    }

    .experts-section .section-header p {
        font-size: 13px !important;
    }

    .experts-grid {
        display: flex !important;
        overflow-x: auto !important;
        scroll-snap-type: x mandatory !important;
        gap: 12px !important;
        padding: 4px 16px 20px !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
        margin: 0 -16px !important;
    }

    .experts-grid::-webkit-scrollbar {
        display: none !important;
    }

    .expert-card {
        flex: 0 0 260px !important;
        max-width: 260px !important;
        scroll-snap-align: start !important;
        padding: 18px !important;
        gap: 12px !important;
        border-radius: var(--radius-card-lg) !important;
        flex-direction: column !important;
        text-align: center !important;
        align-items: center !important;
    }

    .expert-avatar {
        width: 64px !important;
        height: 64px !important;
        border-width: 3px !important;
    }

    .expert-info {
        text-align: center !important;
    }

    .expert-info h3 {
        font-size: 15px !important;
        margin-bottom: 2px !important;
        white-space: nowrap !important;
    }

    .expert-info .role {
        font-size: 10px !important;
        margin-bottom: 10px !important;
    }

    .expert-contact {
        gap: 6px !important;
        display: flex !important;
        flex-direction: column !important;
    }

    .contact-link {
        font-size: 11px !important;
        text-align: center !important;
    }

    /* ══════════════════════════════════════
       TECH HUB — 2x2 сетка
    ══════════════════════════════════════ */
    .tech-hub-section {
        padding: 36px 0 !important;
    }

    .tech-hub-section .section-header h2 {
        font-size: 22px !important;
    }

    .tech-hub-section .section-header p {
        font-size: 13px !important;
    }

    .tech-hub-section .section-header {
        margin-bottom: 20px !important;
    }

    .tech-resources-grid,
    .tech-hub-grid {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
    }

    .tech-card {
        padding: 16px !important;
        border-radius: 14px !important;
    }

    .tech-card h3,
    .tech-card h4 {
        font-size: 13px !important;
        margin-bottom: 6px !important;
    }

    .tech-card p {
        font-size: 11px !important;
        line-height: 1.4 !important;
    }

    .tech-icon {
        width: 40px !important;
        height: 40px !important;
        border-radius: 12px !important;
        margin-bottom: 10px !important;
    }

    .tech-icon i {
        font-size: 16px !important;
    }

    .tech-link {
        font-size: 11px !important;
        margin-top: 10px !important;
    }

    /* ══════════════════════════════════════
       СЕКЦИИ "В РАЗРАБОТКЕ" — скрыть
    ══════════════════════════════════════ */
    .delivery-map-section,
    .partners-section,
    #delivery-map-section,
    #partners-section {
        display: none !important;
    }

    /* ══════════════════════════════════════
       ФУТЕР — чистый, компактный
    ══════════════════════════════════════ */
    .pro-footer,
    footer {
        padding: 36px 0 90px !important;
        /* extra внизу для bottom-nav */
    }

    .footer-grid {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 20px !important;
        margin-bottom: 24px !important;
    }

    .footer-col:first-child {
        grid-column: 1 / -1 !important;
    }

    .footer-col h4,
    .footer-col h5 {
        font-size: 13px !important;
        margin-bottom: 12px !important;
    }

    .footer-col ul li {
        margin-bottom: 8px !important;
        font-size: 12px !important;
    }

    .footer-col p {
        font-size: 12px !important;
        line-height: 1.5 !important;
    }

    .footer-bottom {
        padding: 16px 0 !important;
    }

    .footer-bottom p {
        font-size: 10px !important;
        text-align: center !important;
    }

    .footer-logo {
        font-size: 16px !important;
    }

    .social-links {
        margin-top: 12px !important;
    }

    .social-links a {
        width: 36px !important;
        height: 36px !important;
        font-size: 14px !important;
    }

    /* ══════════════════════════════════════
       ХЛЕБНЫЕ КРОШКИ
    ══════════════════════════════════════ */
    .breadcrumb-list {
        flex-wrap: wrap !important;
        font-size: 12px !important;
        gap: 2px !important;
    }

    /* ══════════════════════════════════════
       СКРЫТЬ ДУБЛИ — scroll-to-top, social sidebar
    ══════════════════════════════════════ */
    .scroll-to-top {
        display: none !important;
    }

    .social-floating-sidebar {
        display: none !important;
    }

    /* ══════════════════════════════════════
       WHATSAPP ВИДЖЕТ — скрыть отдельную кнопку
       (есть в нижней панели и в pro-wa-widget)
    ══════════════════════════════════════ */
    .mobile-wa-widget {
        display: none !important;
    }

    /* ══════════════════════════════════════
       PRO WA WIDGET (Эксперт) — компактный
    ══════════════════════════════════════ */
    .pro-wa-widget {
        bottom: 66px !important;
        right: 10px !important;
        left: 10px !important;
        width: auto !important;
        max-width: none !important;
        padding: 6px 10px 6px 6px !important;
        border-radius: 12px !important;
        gap: 6px !important;
        box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1) !important;
        background: rgba(255, 255, 255, 0.97) !important;
        backdrop-filter: blur(10px) !important;
        -webkit-backdrop-filter: blur(10px) !important;
        z-index: 1500 !important;
        /* Lowered so it goes UNDER the cart sidebar (z: 2000) */
    }

    .wa-manager-photo {
        width: 28px !important;
        height: 28px !important;
        flex-shrink: 0 !important;
    }

    .wa-text {
        flex: 1 !important;
        min-width: 0 !important;
        overflow: hidden !important;
    }

    .wa-text h5 {
        font-size: 11px !important;
        margin-bottom: 0 !important;
        white-space: nowrap !important;
        overflow: hidden !important;
        text-overflow: ellipsis !important;
    }

    .wa-text p {
        font-size: 10px !important;
        line-height: 1.2 !important;
        min-height: 14px !important;
        max-height: 14px !important;
        overflow: hidden !important;
        white-space: nowrap !important;
        text-overflow: ellipsis !important;
        display: block !important;
    }

    .wa-badge {
        font-size: 7px !important;
        padding: 1px 5px !important;
        border-radius: 6px !important;
        display: none !important;
    }

    .wa-close {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        font-size: 9px !important;
        position: absolute !important;
        top: -6px !important;
        right: -6px !important;
        background: #fff !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 50% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        box-shadow: 0 1px 4px rgba(0, 0, 0, 0.08) !important;
        z-index: 1 !important;
        color: #0f172a !important;
        /* Made the X visible */
    }

    /* ══════════════════════════════════════
       НИЖНЯЯ ПАНЕЛЬ (BOTTOM NAV) — идеальная гармония
    ══════════════════════════════════════ */
    .mobile-bottom-nav {
        display: flex !important;
        position: fixed !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        height: 60px !important;
        background: #fff !important;
        border-top: 1px solid #f1f5f9 !important;
        z-index: 9999 !important;
        justify-content: space-around !important;
        align-items: center !important;
        padding: 0 !important;
        padding-bottom: env(safe-area-inset-bottom) !important;
        box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.06) !important;
    }

    .mobile-bottom-nav .nav-item {
        flex: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 3px !important;
        color: #94a3b8 !important;
        text-decoration: none !important;
        background: none !important;
        border: none !important;
        padding: 4px 0 !important;
        font-family: inherit !important;
        transition: color 0.2s ease !important;
        position: relative !important;
    }

    .mobile-bottom-nav .nav-item i {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 28px !important;
        height: 28px !important;
        font-size: 16px !important;
        border-radius: 8px !important;
        background: transparent !important;
        transition: all 0.2s ease !important;
        margin-bottom: 0 !important;
    }

    .mobile-bottom-nav .nav-item span {
        font-size: 9px !important;
        font-weight: 600 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.3px !important;
        opacity: 0.8 !important;
        white-space: nowrap !important;
    }

    .mobile-bottom-nav .nav-item.active i,
    .mobile-bottom-nav .nav-item:active i {
        color: #ff4d30 !important;
        background: transparent !important;
        transform: none !important;
        box-shadow: none !important;
    }

    .mobile-bottom-nav .nav-item.active span,
    .mobile-bottom-nav .nav-item:active span {
        color: #ff4d30 !important;
        opacity: 1 !important;
    }

    .mobile-bottom-nav .nav-item.active,
    .mobile-bottom-nav .nav-item:active {
        color: #ff4d30 !important;
    }

    /* Корзина — такая же как остальные, без акцента */
    .mobile-bottom-nav .nav-item--cart {
        color: #94a3b8 !important;
    }

    .mobile-bottom-nav .nav-item--cart i {
        background: transparent !important;
        color: inherit !important;
        width: 28px !important;
        height: 28px !important;
        border-radius: 8px !important;
        font-size: 16px !important;
    }

    .mobile-bottom-nav .nav-item--cart:active {
        color: #ff4d30 !important;
    }

    .mobile-bottom-nav .nav-item--cart:active i {
        background: transparent !important;
        color: #ff4d30 !important;
        transform: none !important;
    }

    .cart-badge-container {
        position: relative !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    #mobile-cart-count {
        position: absolute !important;
        top: -6px !important;
        right: -10px !important;
        background: #ff4d30 !important;
        color: #fff !important;
        font-size: 9px !important;
        font-weight: 800 !important;
        min-width: 16px !important;
        height: 16px !important;
        border-radius: 8px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        border: 2px solid #fff !important;
        padding: 0 3px !important;
    }

    /* Кнопка наверх — без особого стиля */
    .nav-item--top {
        opacity: 0.7 !important;
    }

    /* Фильтры - показываем на страницах с каталогом */
    #mobile-filter-nav-btn {
        display: none !important;
    }

    /* Отображаем на всех основных товарных страницах */
    body.is-catalog #mobile-filter-nav-btn,
    body.layout-standard #mobile-filter-nav-btn,
    body[class*="category"] #mobile-filter-nav-btn,
    body[class*="series"] #mobile-filter-nav-btn,
    body[class*="landing"] #mobile-filter-nav-btn {
        display: flex !important;
    }

    /* Стили для активного состояния фильтров */
    .filter-sidebar.active {
        display: block !important;
        visibility: visible !important;
        left: 0 !important;
    }

    .sidebar-overlay.active {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* ══════════════════════════════════════
       SEO LANDING TEXT — мобильная адаптация
    ══════════════════════════════════════ */
    .seo-landing-text {
        padding: 30px 0 !important;
    }

    .seo-content-wrapper {
        font-size: 13px !important;
        line-height: 1.7 !important;
    }

    .seo-content-wrapper h2 {
        font-size: 18px !important;
    }

    .seo-content-wrapper h3 {
        font-size: 16px !important;
    }

    /* ══════════════════════════════════════
       МЕГА-МЕНЮ (КАТАЛОГ + ФИЛЬТРЫ) — мобильная версия
    ══════════════════════════════════════ */

    /* Overlay */
    .mega-menu-overlay {
        z-index: 99999 !important;
    }

    /* Сам контейнер — ПОЛНОЭКРАННЫЙ */
    .mega-menu-catalog {
        position: fixed !important;
        top: 0 !important;
        left: -100% !important;
        width: 100% !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: none !important;
        z-index: 100000 !important;
        background: #fff !important;
        transition: left 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        display: block !important;
        padding: 0 !important;
        box-shadow: none !important;
        border-radius: 0 !important;
    }

    .mega-menu-catalog.active {
        left: 0 !important;
        top: 0 !important;
    }

    .mega-menu-catalog>.container {
        padding: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
    }

    /* Шапка с табами */
    .mega-menu-header {
        position: sticky !important;
        top: 0 !important;
        background: #fff !important;
        z-index: 10 !important;
        padding: 14px 16px !important;
        margin-bottom: 0 !important;
        border-bottom: 1px solid #f1f5f9 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 12px !important;
    }

    .mega-menu-header h3 {
        display: none !important;
    }

    /* Табы «Каталог / Фильтры» */
    .mobile-menu-tabs {
        display: flex !important;
        background: #f1f5f9 !important;
        padding: 4px !important;
        border-radius: 12px !important;
        flex: 1 !important;
        margin-right: 0 !important;
        gap: 0 !important;
    }

    .menu-tab {
        flex: 1 !important;
        padding: 10px 12px !important;
        border: none !important;
        background: transparent !important;
        border-radius: 10px !important;
        font-size: 13px !important;
        font-weight: 700 !important;
        color: #64748b !important;
        cursor: pointer !important;
        text-align: center !important;
        transition: all 0.25s ease !important;
        line-height: 1.2 !important;
        white-space: nowrap !important;
    }

    .menu-tab.active {
        background: #fff !important;
        color: #ff4d30 !important;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
    }

    /* Кнопка закрытия X */
    .mega-menu-close {
        width: 40px !important;
        height: 40px !important;
        min-width: 40px !important;
        flex-shrink: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #f1f5f9 !important;
        border: none !important;
        border-radius: 10px !important;
        font-size: 16px !important;
        color: #0f172a !important;
        cursor: pointer !important;
        padding: 0 !important;
    }

    /* КАТАЛОГ — одноколоночный список */
    .mega-menu-grid {
        display: none !important;
        padding: 16px !important;
        grid-template-columns: 1fr !important;
    }

    .mega-menu-grid.active {
        display: block !important;
    }

    .mega-menu-column {
        margin-bottom: 24px !important;
        border-bottom: 1px solid #f1f5f9 !important;
        padding-bottom: 20px !important;
    }

    .mega-menu-column:last-child {
        border-bottom: none !important;
        margin-bottom: 80px !important;
        /* space for bottom-nav */
    }

    .mega-menu-column h4 {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        font-size: 14px !important;
        font-weight: 800 !important;
        color: #0f172a !important;
        margin-bottom: 12px !important;
        padding-bottom: 10px !important;
        border-bottom: 2px solid #ff4d30 !important;
        text-transform: none !important;
    }

    .mega-menu-column h4 i {
        font-size: 16px !important;
        color: #ff4d30 !important;
        width: 28px !important;
        text-align: center !important;
    }

    .mega-menu-section {
        margin-bottom: 0 !important;
    }

    .mega-menu-section ul {
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    .mega-menu-section ul li {
        margin-bottom: 0 !important;
    }

    .mega-menu-section ul li a {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 12px 14px !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        color: #334155 !important;
        text-decoration: none !important;
        border-radius: 10px !important;
        transition: background 0.2s ease !important;
        border-left: none !important;
    }

    .mega-menu-section ul li a::after {
        content: '›' !important;
        font-size: 18px !important;
        color: #cbd5e1 !important;
        font-weight: 300 !important;
    }

    .mega-menu-section ul li a:hover,
    .mega-menu-section ul li a:active {
        background: #f8fafc !important;
        color: #ff4d30 !important;
        padding-left: 14px !important;
    }

    .mega-menu-section ul li a:hover::after,
    .mega-menu-section ul li a:active::after {
        color: #ff4d30 !important;
    }

    /* ФИЛЬТРЫ — чистый одноколоночный layout */
    /* КРИТИЧНО: .mobile-only{display:flex!important} конфликтует — перебиваем */
    .filter-sidebar-clone,
    #mobile-filters-placeholder,
    .mobile-only.filter-sidebar-clone,
    div#mobile-filters-placeholder.mobile-only.filter-sidebar-clone,
    div.mobile-only.filter-sidebar-clone[style] {
        display: none !important;
        padding: 16px !important;
    }

    /* Показываем только когда JS добавит .active — УЛЬТРА-специфичный */
    div#mobile-filters-placeholder.mobile-only.filter-sidebar-clone.active,
    div.filter-sidebar-clone.active,
    #mobile-filters-placeholder.active {
        display: block !important;
    }

    .filter-sidebar-clone .no-filters-msg,
    #mobile-filters-placeholder .no-filters-msg {
        padding: 60px 20px !important;
        text-align: center !important;
        color: #94a3b8 !important;
        font-size: 14px !important;
        line-height: 1.6 !important;
    }

    .filter-sidebar-clone .no-filters-msg i,
    #mobile-filters-placeholder .no-filters-msg i {
        font-size: 36px !important;
        color: #cbd5e1 !important;
        margin-bottom: 16px !important;
    }

    /* Фильтр-блоки (клонированные из sidebar) */
    .filter-sidebar-clone .filter-block,
    #mobile-filters-placeholder .filter-block {
        margin-bottom: 20px !important;
        padding-bottom: 16px !important;
        border-bottom: 1px solid #f1f5f9 !important;
    }

    .filter-sidebar-clone .filter-block:last-child,
    #mobile-filters-placeholder .filter-block:last-child {
        border-bottom: none !important;
        margin-bottom: 80px !important;
    }

    .filter-sidebar-clone .filter-block h2,
    #mobile-filters-placeholder .filter-block h2 {
        font-size: 13px !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.8px !important;
        color: #0f172a !important;
        margin-bottom: 12px !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        cursor: pointer !important;
    }

    .filter-sidebar-clone .filter-block h2::after,
    #mobile-filters-placeholder .filter-block h2::after {
        content: '▾' !important;
        font-size: 12px !important;
        color: #94a3b8 !important;
        margin-left: auto !important;
    }

    /* Фильтр-опции — ОДНА КОЛОНКА, без обрезания текста */
    .filter-sidebar-clone .filter-options,
    #mobile-filters-placeholder .filter-options {
        display: flex !important;
        flex-direction: column !important;
        gap: 6px !important;
    }

    /* Radio / Checkbox items */
    .filter-sidebar-clone .filter-radio,
    .filter-sidebar-clone .filter-checkbox,
    #mobile-filters-placeholder .filter-radio,
    #mobile-filters-placeholder .filter-checkbox {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 11px 14px !important;
        background: #f8fafc !important;
        border-radius: 10px !important;
        cursor: pointer !important;
        transition: background 0.15s ease !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    .filter-sidebar-clone .filter-radio:active,
    .filter-sidebar-clone .filter-checkbox:active,
    #mobile-filters-placeholder .filter-radio:active,
    #mobile-filters-placeholder .filter-checkbox:active {
        background: #f1f5f9 !important;
    }

    .filter-sidebar-clone .filter-radio input,
    .filter-sidebar-clone .filter-checkbox input,
    #mobile-filters-placeholder .filter-radio input,
    #mobile-filters-placeholder .filter-checkbox input {
        width: 18px !important;
        height: 18px !important;
        flex-shrink: 0 !important;
        accent-color: #ff4d30 !important;
        margin: 0 !important;
    }

    .filter-sidebar-clone .filter-radio span,
    .filter-sidebar-clone .filter-checkbox span,
    #mobile-filters-placeholder .filter-radio span,
    #mobile-filters-placeholder .filter-checkbox span {
        font-size: 13px !important;
        font-weight: 600 !important;
        color: #334155 !important;
        white-space: normal !important;
        word-break: break-word !important;
        overflow: visible !important;
        text-overflow: unset !important;
        line-height: 1.3 !important;
    }

    /* ══════════════════════════════════════
       КОРЗИНА (САЙДБАР) — мобильная адаптация
    ══════════════════════════════════════ */
    #cart-sidebar {
        width: 100% !important;
        max-width: 100% !important;
        right: -100% !important;
    }

    #cart-sidebar.active {
        right: 0 !important;
    }

    .cart-header {
        padding: 14px 16px !important;
    }

    .cart-body {
        padding: 12px 16px !important;
    }

    .cart-footer {
        padding: 20px 16px 100px !important;
        /* Еще больше отступа для iPhone Safe Area и Bottom Nav */
        background: #fff !important;
        position: relative !important;
        z-index: 10 !important;
    }

    .cart-footer .checkout-btn {
        margin-bottom: 12px !important;
    }

    .cart-footer .btn-continue-shopping {
        margin-bottom: 20px !important;
    }

    /* ══════════════════════════════════════
       МОБИЛЬНЫЕ ФИЛЬТРЫ — новая система
    ══════════════════════════════════════ */

    /* Секция фильтра */
    .mobile-filter-section {
        padding: 0 16px !important;
        margin-bottom: 20px !important;
    }

    .mobile-filter-section:last-of-type {
        margin-bottom: 100px !important;
        /* space for sticky button */
    }

    /* Заголовок секции */
    .mobile-filter-title {
        font-size: 11px !important;
        font-weight: 800 !important;
        color: #94a3b8 !important;
        text-transform: uppercase !important;
        letter-spacing: 1.2px !important;
        padding: 14px 0 10px !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        border-bottom: 1px solid #f1f5f9 !important;
        margin-bottom: 8px !important;
    }

    .mobile-filter-title i {
        font-size: 12px !important;
        color: #cbd5e1 !important;
    }

    /* Контейнер опций */
    .mobile-filter-options {
        display: flex !important;
        flex-direction: column !important;
        gap: 2px !important;
    }

    .mobile-filter-scrollable {
        max-height: 280px !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    /* Radio-элементы (Категория / Серия) */
    .mobile-filter-item {
        display: flex !important;
        align-items: center !important;
        gap: 12px !important;
        padding: 13px 14px !important;
        border-radius: 10px !important;
        cursor: pointer !important;
        transition: all 0.15s ease !important;
        position: relative !important;
        color: #334155 !important;
        font-size: 14px !important;
        font-weight: 500 !important;
    }

    .mobile-filter-item input {
        display: none !important;
    }

    .mobile-filter-item span {
        flex: 1 !important;
        font-size: 14px !important;
        font-weight: 500 !important;
        color: #334155 !important;
        line-height: 1.3 !important;
    }

    .mobile-filter-item i.fa-check {
        font-size: 14px !important;
        color: transparent !important;
        transition: color 0.2s ease !important;
    }

    .mobile-filter-item:active {
        background: #f8fafc !important;
    }

    .mobile-filter-item.selected {
        background: #fff7ed !important;
    }

    .mobile-filter-item.selected span {
        color: #0f172a !important;
        font-weight: 700 !important;
    }

    .mobile-filter-item.selected i.fa-check {
        color: #ff4d30 !important;
    }

    /* Checkbox-чипы (Тип, Ступени и т.д.) */
    .mobile-filter-chip {
        display: inline-flex !important;
        align-items: center !important;
        gap: 8px !important;
        padding: 9px 14px !important;
        margin: 3px 4px 3px 0 !important;
        background: #f8fafc !important;
        border: 1.5px solid #e2e8f0 !important;
        border-radius: 20px !important;
        cursor: pointer !important;
        transition: all 0.2s ease !important;
        white-space: nowrap !important;
    }

    .mobile-filter-chip input {
        display: none !important;
    }

    .mobile-filter-chip span {
        font-size: 13px !important;
        font-weight: 600 !important;
        color: #475569 !important;
        line-height: 1 !important;
    }

    .mobile-filter-chip:active {
        transform: scale(0.96) !important;
    }

    .mobile-filter-chip.selected {
        background: #ff4d30 !important;
        border-color: #ff4d30 !important;
    }

    .mobile-filter-chip.selected span {
        color: #fff !important;
    }

    /* Чипы — горизонтальная раскладка */
    .mobile-filter-section:has(.mobile-filter-chip) .mobile-filter-options {
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 0 !important;
    }

    /* Кнопки action — sticky внизу */
    .mobile-filter-actions {
        position: sticky !important;
        bottom: 0 !important;
        left: 0 !important;
        right: 0 !important;
        background: #fff !important;
        padding: 12px 16px !important;
        border-top: 1px solid #f1f5f9 !important;
        box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.06) !important;
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        z-index: 20 !important;
        margin: 0 -16px !important;
    }

    .mobile-filter-apply {
        width: 100% !important;
        padding: 15px 20px !important;
        background: linear-gradient(135deg, #ff4d30, #e63e20) !important;
        color: #fff !important;
        border: none !important;
        border-radius: 12px !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 8px !important;
        transition: all 0.2s ease !important;
        box-shadow: 0 4px 15px rgba(255, 77, 48, 0.3) !important;
        font-family: inherit !important;
    }

    .mobile-filter-apply:active {
        transform: scale(0.97) !important;
        box-shadow: 0 2px 8px rgba(255, 77, 48, 0.4) !important;
    }

    .mobile-filter-apply i {
        font-size: 14px !important;
    }

    .mobile-filter-reset {
        width: 100% !important;
        padding: 12px 20px !important;
        background: transparent !important;
        color: #64748b !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 10px !important;
        font-size: 13px !important;
        font-weight: 600 !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        transition: all 0.2s ease !important;
        font-family: inherit !important;
    }

    .mobile-filter-reset:active {
        background: #f8fafc !important;
    }

}

/* ══════════════════════════════════════
   ОЧЕНЬ МАЛЕНЬКИЕ ЭКРАНЫ ≤ 380px
══════════════════════════════════════ */
@media (max-width: 380px) {
    .logo {
        font-size: 13px !important;
    }

    .container {
        padding: 0 12px !important;
    }

    .product-card {
        padding: 8px !important;
    }

    .card-img {
        height: 100px !important;
        padding: 8px !important;
    }

    .card-info h3 {
        font-size: 11px !important;
        height: 28px !important;
        max-height: 28px !important;
    }

    .card-price {
        font-size: 13px !important;
    }

    .btn-card {
        font-size: 9px !important;
        height: 30px !important;
    }

    .btn-hero {
        font-size: 12px !important;
        padding: 12px 16px !important;
    }

    .hero-title {
        font-size: 20px !important;
    }

    .hero-subtitle {
        font-size: 12px !important;
    }

    .footer-grid {
        grid-template-columns: 1fr !important;
    }

    /* Фильтры — 2 колонки на маленьких */
    #category-filters,
    .category-filters {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    /* Stat-боксы */
    .stat-box strong {
        font-size: 24px !important;
    }

    .stat-box {
        padding: 16px 10px !important;
    }

    /* Solutions/Experts cards */
    .solution-item {
        flex: 0 0 230px !important;
        max-width: 230px !important;
        height: 250px !important;
    }

    .expert-card {
        flex: 0 0 230px !important;
        max-width: 230px !important;
    }

    .tech-resources-grid,
    .tech-hub-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ══════════════════════════════════════
   MOBILE SEARCH OVERLAY
══════════════════════════════════════ */
@media (max-width: 768px) {
    .mobile-search-overlay {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #fff;
        z-index: 10000;
        display: flex;
        flex-direction: column;
        transform: translateY(100%);
        transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
        visibility: hidden;
    }

    .mobile-search-overlay.active {
        transform: translateY(0);
        visibility: visible;
    }

    .search-overlay-header {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 12px 16px;
        border-bottom: 1px solid #f1f5f9;
        background: #fff;
    }

    .search-input-wrapper {
        flex: 1;
        position: relative;
        display: flex;
        align-items: center;
        background: #f1f5f9;
        border-radius: 12px;
        padding: 0 14px;
    }

    .search-input-wrapper i {
        color: #94a3b8;
        font-size: 15px;
    }

    .search-input-wrapper input {
        width: 100%;
        border: none;
        background: transparent;
        padding: 12px 10px;
        font-size: 16px;
        font-family: inherit;
        outline: none;
    }

    .close-overlay {
        width: 40px;
        height: 40px;
        border: none;
        background: #f1f5f9;
        border-radius: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #0f172a;
        cursor: pointer;
        flex-shrink: 0;
    }

    .search-overlay-results {
        flex: 1;
        overflow-y: auto;
        padding: 12px 16px;
    }

    .search-overlay-results .search-item {
        display: flex;
        align-items: center;
        gap: 12px;
        padding: 10px;
        border-bottom: 1px solid #f8fafc;
        border-radius: 10px;
        animation: fadeIn 0.3s ease;
    }

    .search-overlay-results .search-item img {
        width: 48px;
        height: 48px;
        object-fit: contain;
        background: #f8fafc;
        border-radius: 8px;
    }

    .search-overlay-results .item-title {
        font-size: 14px;
        font-weight: 700;
        color: #0f172a;
        margin-bottom: 2px;
    }

    .search-overlay-results .item-meta {
        font-size: 12px;
        color: #64748b;
    }

    .search-overlay-results .no-results {
        text-align: center;
        padding: 40px 20px;
        color: #94a3b8;
        font-size: 14px;
    }

    @keyframes fadeIn {
        from {
            opacity: 0;
            transform: translateY(5px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }
}