@media screen and (max-width: 960px){
    #header .logo-holder{
        width: 100%;
        position: relative;
    }
    #header .menu{ display: block; }
    #header .nav-holder{ display: none; }

    #slide .item .container .viable{ width: 100%; }
    #slide .item .container .nonviable{ display: none; }

    #slide .item .title{ font-size: 1.5em; }
    #slide .item .description{
        --max-lines: 5;
        --responsivelh: 1.5em;

        font-size: 0.9em;
        max-height: calc(var(--responsivelh) * var(--max-lines));
        position: relative;
        overflow: hidden;
    }
    /* #slide .item .description:before{
        position: absolute;
        content: "...";
        bottom: -30px;
        left: 0;
    } */
    /* #slide .item .description:after{
        content: "";
        position: absolute;
        right: 0;
        width: 1rem;
        height: 1rem;
        background: transparent;
    } */

    .ondntv .programs .program{ flex: 0 0 130px; }
    .htimeline .program .hour{ font-size: 1.5em; }
    .htimeline .program .details h3{ font-size: 1.0em; }
    .broadcasts .owl-carousel .owl-stage-outer{ height: auto; }
    .broadcasts .programs .owl-item:nth-child(even){ transform: translateX(0); }
    .broadcasts .program:before{ display: none; }

    .blockbusters .infos .top img{ width: 70px; }
    .blockbusters .infos h3{ font-size: 1.3em; }
    .blockbusters .vignettes{ flex-direction: column; row-gap: 15px; }
    .blockbusters .vignette{ width: 100%; height: 150px; }
    .blockbusters .vignette img{
        width: 100%;
        height: 100%;

        object-fit: cover;
        object-position: center;
    }

    .section.live{ padding-top: 45px; }
    .live .top{
        flex-direction: column;
        padding: 0;
    }
    .live .top .left{
        width: 100%;
        align-items: center;
        padding-right: 0;
    }
    .live .top .left img{ width: 100px; }
    .live .top .left h3{
        text-align: center;
        font-size: 1.3em;
    }
    .live .top .right{ width: 100%; margin-top: 30px; }
    .live .bottom{ margin-top: 30px; flex-wrap: wrap; justify-content: center; }
    .live .bottom > div{ width: 50%; }

    .testimony .item{ margin-bottom: 25px; }

    footer{ margin-top: 200px; }
    footer .prefooter{
        top: -160px;
        flex-direction: column;
    }
    footer .prefooter a{ margin-top: 15px; }
    .footer .bloc{ margin-bottom: 30px; }
    .footer .bloc.socials h3{
        text-align: left;
    }
    .footer .bloc.socials > ul{ justify-content: flex-start; }
    footer .goup{
        bottom: 15%;
        left: 90%;
    }
    footer .madeby{ bottom: 45px; }

    .blocs, .team{ padding: 20px 0; }
    .blocs .title, .team .title{ width: 100%; }

    .programmes .categories{
        padding: 0 15px;
        flex-wrap: wrap;
    }
    .programmes .list .item{ width: 100%; }

    .programme .related .list{ flex-wrap: wrap; row-gap: 15px; }
    .programme .list .item{ width: calc(calc(100% / 2) - 15px); }
}
