/* Carrossel automático das fotos PNG transparentes dos produtos em promoção
   (faixa azul da home). Marquee contínuo em CSS puro, sem dependência de JS. */

.fort-promo-slider {
    --fort-promo-item-size: 150px;
    --fort-promo-gap: 28px;
    --fort-promo-duration: 30s;
    position: relative;
    width: 100%;
    overflow: hidden;
    /* desvanece nas bordas para sumir suave dentro da faixa azul */
    -webkit-mask-image: linear-gradient(
        to right, transparent 0, #000 6%, #000 94%, transparent 100%);
    mask-image: linear-gradient(
        to right, transparent 0, #000 6%, #000 94%, transparent 100%);
}

.fort-promo-slider__track {
    display: flex;
    align-items: center;
    gap: var(--fort-promo-gap);
    width: max-content;
    animation: fort-promo-marquee var(--fort-promo-duration) linear infinite;
    will-change: transform;
}

/* pausa ao passar o mouse */
.fort-promo-slider:hover .fort-promo-slider__track {
    animation-play-state: paused;
}

.fort-promo-slider__item {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--fort-promo-item-size);
    height: var(--fort-promo-item-size);
    transition: transform .25s ease;
}

/* chip branco arredondado: a foto original (JPG) fica dentro, sem recorte */
.fort-promo-slider__media {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    background: #fff;
    border-radius: 12px;
    padding: 10px;
    box-sizing: border-box;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .35);
    overflow: hidden;
}

/* marca SOBRE a foto (canto superior) — gruda no produto, não fica lateral */
.fort-promo-slider__brand {
    position: absolute;
    bottom: 4px;
    left: 4px;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid rgba(0, 0, 0, .08);
    border-radius: 4px;
    padding: 2px 4px;
    max-width: 55%;
}

.fort-promo-slider__brand .fort-promo-slider__brand-img,
.fort-promo-slider__brand img {
    display: block;
    max-width: 48px;
    max-height: 16px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.fort-promo-slider__item:hover {
    transform: translateY(-4px) scale(1.04);
}

.fort-promo-slider__img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    mix-blend-mode: multiply; /* funde o fundo branco do JPG no chip branco */
}

/* desloca exatamente metade do trilho (lista duplicada) = loop perfeito */
@keyframes fort-promo-marquee {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}

@media (max-width: 768px) {
    .fort-promo-slider {
        --fort-promo-item-size: 96px;
        --fort-promo-gap: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .fort-promo-slider__track {
        animation: none;
        flex-wrap: wrap;
        justify-content: center;
    }
}
