/* ===== КАРУСЕЛЬ ЛОГОТИПОВ ===== */
.logo-carousel-container {
    width: 100%;
    overflow: hidden;
    background: #ffffff;
    position: relative;
}

.logo-carousel-wrapper {
    position: relative;
    max-width: 1800px;
    margin: 0 auto;
    padding: 0;
}

/* Градиентные маски */
.logo-carousel-fade {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100px;
    pointer-events: none;
    z-index: 10;
}

.logo-carousel-fade.left {
    left: 0;
    background: linear-gradient(to right, 
        rgba(255, 255, 255, 1) 0%, 
        rgba(255, 255, 255, 0.9) 30%, 
        rgba(255, 255, 255, 0) 100%);
}

.logo-carousel-fade.right {
    right: 0;
    background: linear-gradient(to left, 
        rgba(255, 255, 255, 1) 0%, 
        rgba(255, 255, 255, 0.9) 30%, 
        rgba(255, 255, 255, 0) 100%);
}

/* Трек карусели */
.logo-carousel-track {
    display: flex;
    gap: var(--gap, 0);
    animation: logoCarouselSlide var(--speed, 30s) linear infinite;
    will-change: transform;
    padding: 0;
    min-width: max-content;
}

/* Анимация */
@keyframes logoCarouselSlide {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(calc(-50% - var(--gap, 0) / 2));
    }
}

/* Пауза при наведении */
.logo-carousel-container.pause-on-hover:hover .logo-carousel-track {
    animation-play-state: paused;
}

/* Элементы карусели */
.logo-carousel-item {
    flex: 0 0 var(--slide-width, 16.666%);
    max-width: 300px;
    min-width: 200px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.3s ease;
}


/* Внутренний контейнер */
.logo-item-inner {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}


/* Изображение логотипа */
.logo-image {
    width: 100%;
    height: var(--logo-height, 100px);
    max-height: 160px;
    object-fit: contain;
    filter: grayscale(100%);
    transition: all 0.4s ease;
}
.entry-content img.logo-image  {
    margin: 0;
    border-radius: 0;
}
.logo-carousel-item:hover .logo-image {
    filter: none;
}

/* ===== АДАПТИВНОСТЬ ===== */

/* Планшеты */
@media (max-width: 1200px) {
    
    .logo-carousel-fade {
        width: 80px;
    }

    
    .logo-carousel-item {
        max-width: 250px;
        min-width: 180px;
    }
}

/* Маленькие планшеты */
@media (max-width: 992px) {
    
    .logo-carousel-track {
        --slide-width: 25% !important; /* 4 видимых слайда */
    }
    
    .logo-carousel-item {
        max-width: 220px;
        min-width: 160px;
    }
    
}

/* Телефоны горизонтально */
@media (max-width: 768px) {

    
    .logo-carousel-fade {
        width: 60px;
    }
    
    .logo-carousel-track {
        --slide-width: 33.333% !important; /* 3 видимых слайда */
    }
    
    .logo-carousel-item {
        max-width: 180px;
        min-width: 140px;
    }
    
}

/* Телефоны вертикально */
@media (max-width: 576px) {
    
    .logo-carousel-fade {
        width: 40px;
    }
    
    .logo-carousel-track {
        --slide-width: 50% !important; /* 2 видимых слайда */
        gap: 15px !important;
    }
    
    .logo-carousel-item {
        max-width: 150px;
        min-width: 120px;
    }
}

/* Очень маленькие телефоны */
@media (max-width: 400px) {
    .logo-carousel-track {
        --slide-width: 100% !important; /* 1 видимый слайд */
    }
    
    .logo-carousel-item {
        max-width: 200px;
        min-width: 180px;
    }
}