﻿.tm-carousel {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
}

.tm-viewport {
    overflow: hidden;
    width: 100%;
}

.tm-track {
    display: flex;
    transition: transform .35s ease;
    will-change: transform;
}

.tm-item {
    flex: 0 0 calc(100% / 4); /* must match ItemsPerPage */
    padding: 0 12px;
    box-sizing: border-box;
}

    /* make images visible and consistent */
    .tm-item img {
        width: 100%;
        height: auto;
        display: block;
    }

/* buttons */
.tm-btn {
    border: none;
    background: rgba(255,255,255,.12);
    color: #fff;
    width: 44px;
    height: 44px;
    border-radius: 10px;
    cursor: pointer;
}

    .tm-btn:hover {
        background: rgba(255,255,255,.20);
    }

/* responsive */
@media (max-width: 992px) {
    .tm-item {
        flex-basis: calc(100% / 2);
    }
}

@media (max-width: 576px) {
    .tm-item {
        flex-basis: 100%;
    }
}
