@media screen and (max-width: 640px) {
    .box-player {
        position: relative;
        z-index: 10;
        clear: both;
        height: 60vh;
    }

    #player {
        position: relative;
        height: 100%;
    }
}

.pagination {
    display: block;
    width: 100%;
    text-align: center;
}

.pagination ul {
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    padding-left: 0;
    margin: 20px auto;
}

.pagination ul li {
    margin: 0;
}

/* Owl already sizes each slot; the card must fill that slot at every breakpoint. */
.list-films #film_related .owl-item .item,
.list-films #film_hot .owl-item .item {
    float: none;
    width: calc(100% - 8px);
    height: auto;
    margin: 0 4px;
}

.list-films #film_related .item .img-film,
.list-films #film_hot .item .img-film {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1.42;
    object-fit: cover;
}

.list-films #film_related .item .text a,
.list-films #film_hot .item .text a {
    display: block;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
