.entity-carousal {
    display: flex;
    flex-direction: column;
    max-width: 100%;
    width: auto;
    gap: 1.5rem;
}

.entity-carousal-title {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    max-width: 100%;
}

.entity-carousal-buttons {
    display: flex;
    gap: 1rem;
    align-items: center;
}

.entity-carousal-container {
    width: 100%;
    overflow: hidden;
}

.entity-carousal-items {
    display: flex;
    width: 100%;
    max-width: 100%;
    gap: 1rem;
    transition: transform 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform: translateX(calc(-1 * var(--scroll-offset, 0) * (25% + 0.75rem)));
}

.entity-carousal-icon-button {
    background-color: white;
    cursor: pointer;
    border: 1px solid black;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}

.entity-carousal-icon-button img {
    height: 20px;
    width: 20px;
    text-align: center;
}

.entity-carousal-icon-button:hover {
    background-color: #eee;
}

.entity-carousal-icon-button-disabled {
    background-color: white;
    border: 1px solid #A5AFBB;
    width: 30px;
    height: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    cursor: not-allowed;
}

.entity-carousal-icon-button-disabled img {
    height: 20px;
    width: 20px;
    text-align: center;
}

/* Responsive carousel transforms */
@media (max-width: 1080px) {
    .entity-carousal-items {
        transform: translateX(calc(-1 * var(--scroll-offset, 0) * (33.33% + 0.67rem)));
    }
}

@media (max-width: 768px) {
    .entity-carousal-items {
        transform: translateX(calc(-1 * var(--scroll-offset, 0) * (50% + 0.5rem)));
    }
}