/*
 * Carrossel de produtos (usado só na Home) — mantém a linha completa de
 * produtos em uma única seção compacta, avançando sozinho, em vez da grade
 * longa que ocupava várias telas de rolagem.
 */

.carrossel {
    display: flex;
    align-items: center;
    gap: var(--espaco-2);
    margin-top: var(--espaco-3);
}

.carrossel__viewport {
    overflow: hidden;
    flex: 1;
    min-width: 0;
}

.carrossel__trilha {
    display: flex;
    gap: var(--espaco-4);
    list-style: none;
    padding: 0;
    margin: 0;
    transition: transform 500ms ease;
}

@media (prefers-reduced-motion: reduce) {
    .carrossel__trilha {
        transition: none;
    }
}

.carrossel__item {
    flex: 0 0 100%;
    min-width: 0;
}

.carrossel__item .card-produto {
    height: 100%;
}

@media (min-width: 640px) {
    .carrossel__item {
        flex-basis: calc((100% - var(--espaco-4)) / 2);
    }
}

@media (min-width: 1024px) {
    .carrossel__item {
        flex-basis: calc((100% - (2 * var(--espaco-4))) / 3);
    }
}

@media (min-width: 1280px) {
    .carrossel__item {
        flex-basis: calc((100% - (3 * var(--espaco-4))) / 4);
    }
}

.carrossel__seta {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid var(--cor-cinza-borda);
    background: var(--cor-branco);
    color: var(--cor-azul-marinho);
    cursor: pointer;
    transition: background var(--transicao-padrao), color var(--transicao-padrao), border-color var(--transicao-padrao);
}

.carrossel__seta:hover {
    background: var(--cor-azul-marinho);
    color: var(--cor-branco);
    border-color: var(--cor-azul-marinho);
}

.carrossel__indicadores {
    display: flex;
    justify-content: center;
    gap: var(--espaco-1);
    margin-top: var(--espaco-4);
}

.carrossel__indicador {
    width: 8px;
    height: 8px;
    padding: 0;
    border: none;
    border-radius: 50%;
    background: var(--cor-cinza-borda);
    cursor: pointer;
    transition: background var(--transicao-padrao);
}

.carrossel__indicador--ativo {
    background: var(--cor-azul-marinho);
}
