/* Logo Banner Wrapper */
.logo-banner-wrapper {
    width: 100%;
    background: #ffffff;
    padding: 1.5rem 0;
    /* Equal padding top and bottom */
    overflow: hidden;
    position: relative;
    border-bottom: 5px solid #162cac;
    /* Blue line at the bottom */
    z-index: 10;
    display: flex;
    align-items: center;
}

/* Gradient Masks to fade edges */
.logo-banner-wrapper::before,
.logo-banner-wrapper::after {
    content: "";
    position: absolute;
    top: 0;
    width: 150px;
    height: 100%;
    z-index: 2;
    pointer-events: none;
}

.logo-banner-wrapper::before {
    left: 0;
    background: linear-gradient(to right, #ffffff, transparent);
}

.logo-banner-wrapper::after {
    right: 0;
    background: linear-gradient(to left, #ffffff, transparent);
}

/* The Scrolling Track */
.logo-banner-track {
    display: flex;
    width: fit-content;
    animation: scrollLogos 40s linear infinite;
    align-items: center;
}

/* Pause animation on hover */
.logo-banner-wrapper:hover .logo-banner-track {
    animation-play-state: paused;
}

/* Individual Logo Items */
.logo-banner-item {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    width: auto; /* Let it grow naturally */
    margin: 0 40px;
    position: relative;
    flex-shrink: 0; /* Never squish */
}

.logo-banner-item img {
    height: 45px !important; /* Strict uniform height */
    width: auto !important;
    max-width: none !important; /* Overrides any Tailwind reset */
    max-height: none !important;
    object-fit: contain;
    /* No filters - Original Colors */
    transition: transform 0.3s ease;
    transform: translateZ(0);
}

/* Animation Keyframes */
@keyframes scrollLogos {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

/* Mobile Adjustments */
@media (max-width: 768px) {
    .logo-banner-wrapper {
        padding: 1rem 0;
    }

    .logo-banner-item {
        height: 50px;
        width: auto;
        margin: 0 25px;
    }

    .logo-banner-item img {
        height: 35px !important; /* Mobile uniform height */
        width: auto !important;
    }

    .logo-banner-wrapper::before,
    .logo-banner-wrapper::after {
        width: 50px;
    }
}