/*
 * Vitrine rotativa de candidatos (mod_politica_candidatos).
 *
 * A altura do slide é fixada em `aspect-ratio` porque os itens trocam sozinhos: sem altura
 * estável, cada candidato de foto ligeiramente diferente empurraria o conteúdo abaixo do
 * módulo a cada rotação.
 */

.mod-politica-candidatos {
    background: var(--bs-tertiary-bg, #f8f9fa);
    border-radius: .5rem;
    overflow: hidden;
}

.mod-politica-candidatos-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .25rem;
    padding: 1rem .75rem 1.5rem;
    text-align: center;
    text-decoration: none;
    color: inherit;
}

.mod-politica-candidatos-item:hover .mod-politica-candidatos-nome,
.mod-politica-candidatos-item:focus-visible .mod-politica-candidatos-nome {
    text-decoration: underline;
}

.mod-politica-candidatos-foto {
    width: 100%;
    max-width: 12.5rem;
    aspect-ratio: 4 / 5;
    object-fit: cover;
    border-radius: .35rem;
    background: var(--bs-secondary-bg, #e9ecef);
}

.mod-politica-candidatos-nome {
    margin-top: .5rem;
    font-weight: 700;
    font-size: 1.05rem;
    line-height: 1.2;
}

.mod-politica-candidatos-cargo {
    font-size: .85rem;
    color: var(--bs-secondary-color, #6c757d);
    text-transform: uppercase;
    letter-spacing: .03em;
}

.mod-politica-candidatos-local {
    font-size: .85rem;
    color: var(--bs-secondary-color, #6c757d);
}

/* Os controles do Bootstrap são brancos; sobre fundo claro eles somem. */
.mod-politica-candidatos .carousel-control-prev-icon,
.mod-politica-candidatos .carousel-control-next-icon {
    filter: invert(1) grayscale(100%);
}
