.celtiis-trust {
    width: 100%;
    font-family: 'Gotham', sans-serif;
}

.celtiis-trust__logos {
    --celtiis-trust-gap: 24px;
    --celtiis-trust-card-radius: 8px;
    --celtiis-trust-card-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 1px 3px rgba(15, 23, 42, 0.06);
    --celtiis-trust-card-padding: 32px 28px;
    --celtiis-trust-card-bg: #ffffff;
}

.celtiis-trust__logos.is-grid {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
    gap: var(--celtiis-trust-gap);
}

/* Logo - carte blanche avec ombre douce */
.celtiis-trust__logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background: var(--celtiis-trust-card-bg);
    border-radius: var(--celtiis-trust-card-radius);
    padding: var(--celtiis-trust-card-padding);
    flex: 1 1 180px;
    min-width: 180px;
    transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1),
                box-shadow 0.25s ease;
}

.celtiis-trust__logo img {
    height: 42px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    display: block;
}

/* Niveaux de gris (option) */
.celtiis-trust.is-grayscale .celtiis-trust__logo img {
    filter: grayscale(1);
    opacity: 0.7;
    transition: filter 0.3s ease, opacity 0.3s ease;
}

.celtiis-trust.is-grayscale .celtiis-trust__logo:hover img {
    filter: grayscale(0);
    opacity: 1;
}

/* Défilement automatique (marquee) */
.celtiis-trust__logos.is-marquee {
    overflow: hidden;
    -webkit-mask-image: linear-gradient(
        90deg,
        transparent 0,
        transparent 2%,
        #000 10%,
        #000 90%,
        transparent 98%,
        transparent 100%
    );
            mask-image: linear-gradient(
        90deg,
        transparent 0,
        transparent 2%,
        #000 10%,
        #000 90%,
        transparent 98%,
        transparent 100%
    );
}

.celtiis-trust__track {
    display: flex;
    align-items: stretch;
    width: max-content;
    animation: celtiis-trust-scroll 30s linear infinite;
    will-change: transform;
}

.celtiis-trust__group {
    display: flex;
    flex: 0 0 auto;
    align-items: stretch;
    gap: var(--celtiis-trust-gap);
    padding-right: var(--celtiis-trust-gap);
}

/* En mode marquee, on garde la taille naturelle des cartes (pas de flex:1) */
.celtiis-trust__logos.is-marquee .celtiis-trust__logo {
    flex: 0 0 auto;
    min-width: 0;
}

.celtiis-trust__logos.is-marquee:hover .celtiis-trust__track {
    animation-play-state: paused;
}

@keyframes celtiis-trust-scroll {
    from { transform: translateX(0); }
    to   { transform: translateX(-25%); }
}

@media (prefers-reduced-motion: reduce) {
    .celtiis-trust__track {
        animation: none;
    }
}

/* Responsive */
@media (max-width: 991px) {
    .celtiis-trust__logos {
        --celtiis-trust-card-padding: 24px 20px;
        --celtiis-trust-gap: 16px;
    }
    .celtiis-trust__logo {
        flex: 1 1 calc(33% - 16px);
        min-width: 140px;
    }
}

@media (max-width: 767px) {
    .celtiis-trust__logos.is-grid {
        justify-content: center;
    }
    .celtiis-trust__logo {
        flex: 1 1 calc(50% - 16px);
        min-width: 120px;
    }
    .celtiis-trust__logo img {
        height: 32px;
    }
}
