﻿/* =================================================
   GLOBAL VIDEO PAGE STYLING
================================================= */

body {
    background: #f7f7f9;
}

/* =================================================
   MOBILE VIDEO FEED
================================================= */

@media (max-width:768px) {

    .mobile-feed {
        height: 100dvh;
        overflow-y: scroll;
        scroll-snap-type: y mandatory;
        -webkit-overflow-scrolling: touch;
    }

    .video-item {
        height: 100dvh;
        scroll-snap-align: start;
        position: relative;
        background: #000;
    }

    .video-player {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    /* gradient overlay for readability */

    .video-item::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 35%;
        background: linear-gradient( to top, rgba(0,0,0,.75), rgba(0,0,0,.25), transparent );
    }

    .video-info {
        position: absolute;
        bottom: 90px;
        left: 16px;
        right: 16px;
        z-index: 2;
        color: #fff;
        font-size: 14px;
        line-height: 1.5;
        text-shadow: 0 2px 6px rgba(0,0,0,.6);
    }

        .video-info p {
            margin: 0;
        }

    /* hide desktop grid */

    .desktop-grid {
        display: none;
    }
}


/* =================================================
   DESKTOP VIDEO GRID
================================================= */

@media (min-width:769px) {

    .mobile-feed {
        display: none;
    }

    .desktop-grid {
        display: block;
    }

    /* page title */

    .videos-title {
        font-size: 26px;
        letter-spacing: -0.3px;
    }

    /* card */

    .video-card {
        background: #fff;
        border-radius: 14px;
        overflow: hidden;
        border: 1px solid #eee;
        transition: all .25s ease;
        box-shadow: 0 4px 14px rgba(0,0,0,.05);
    }

        .video-card:hover {
            transform: translateY(-4px);
            box-shadow: 0 10px 30px rgba(0,0,0,.08);
        }

    /* video wrapper */

    .video-wrapper {
        position: relative;
        width: 100%;
        padding-top: 56.25%;
        background: #000;
    }

        .video-wrapper video {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
        }

    /* description */

    .video-card-body {
        padding: 14px 16px;
    }

    .video-description {
        font-size: 14px;
        color: #555;
        margin: 0;
        line-height: 1.5;
    }
}


/* =================================================
   RESPONSIVE IMPROVEMENTS
================================================= */

@media (max-width:480px) {

    .video-info {
        font-size: 13px;
    }
}
