/* ==========================================================================
   Playlist Module
   ========================================================================== */
.playlist {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    max-width: 1200px;
}

.featured-video {
    max-width: 800px;
}

.featured-list {
    padding: 78px 0 0 20px;
    width: calc(100% - 800px);
}

.playlist h2 {
    text-align: center;
}

.playlist .files {
    text-align: center;
    margin: 12px;
}

.playlist-video {
    background-color: #ccc;
    height: auto;
    margin: 16px 0 28px;
    position: relative;
}

.playlist-video > div ~ div {
    display: none;
}

.playlist-video > div video {
    max-width: 100%;
}

.playlist-countdown {
    background-color: rgba(0,0,0,0.75);
    cursor: pointer;
    display: none;
    left: 0;
    min-height: 100%;
    min-width: 100%;
    position: absolute;
    top: 0;
    z-index: 1;
}

.count-next {
    color: #fff;
    height: 42px;
    left: 0;
    overflow: hidden;
    padding: 10px 18px;
    padding-bottom: 0;
    position: absolute;
    top: 0;
    z-index: 1;
}

.count-cancel {
    color: #fff;
    display: inline-block;
    font-weight: 600;
    left: 50%;
    letter-spacing: 1px;
    padding-top: 10px;
    position: absolute;
    text-align: center;
    text-transform: uppercase;
    top: calc(50% + 65px);
    -webkit-transform: translate(-50%,-50%);
    -moz-transform: translate(-50%,-50%);
    -o-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
    z-index: 1;
}

.other-videos-holder {
    position: relative;
}

.other-videos {
    display: flex;
    flex-wrap: wrap;
    height: 510px;
    justify-content: flex-start;
    overflow: auto;
}

.other-videos.resource-playlist {
    display: block;
}

.other-videos-title {
    /* background-color: #eee;  */
    /* border: 1px solid #ddd;  */
    /* border-bottom: none;     */
    cursor: pointer;
    display: none;
    font-size: 1.125rem;
    font-weight: 700;
    padding: 10px;
    position: relative;
}

.other-videos-total {
    /* background-color: #eee;  */
    /* border: 1px solid #ddd;  */
    /* border-top: none;        */
    cursor: pointer;
    font-size: 1.250rem;
    font-weight: 700;
    margin-bottom: 10px;
    padding: 0 10px 10px;
    position: relative;
}

.other-videos-title:after,
.other-videos-total:after {
    /* background-color: #0f0; */
    content: "\f078";
    display: none;
    font-family: "FontAwesome";
    height: 22px;
    position: absolute;
    right: 0;
    text-align: center;
    top: 27px;
    width: 50px;
}

.other-videos-title.opened:after,
.other-videos-total.opened:after {
    content: "\f077";
}

.other-videos-total:after {
    top: 0;
}

#interior a.video-item {
    color: #4c4c4c;
}

#interior a.video-item:hover {
    text-decoration: none;
}

.video-item {
    /* align-items: center;     */
    /* background-color: #eee;  */
    /* border: 1px solid #ddd;  */
    /* border-left: none;       */
    cursor: pointer;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin: 0 0 8px;
    -webkit-transition: background-color 0.2s ease-out;
    -moz-transition: background-color 0.2s ease-out;
    -ms-transition: background-color 0.2s ease-out;
    -o-transition: background-color 0.2s ease-out;
    transition: background-color 0.2s ease-out;
    width: 100%;
}

.video-item figure {
    background-color: rgba(0,0,0,0);
    border: 1px solid #999;
    position: relative;
    -webkit-transition: border 0.2s ease-out;
    -moz-transition: border 0.2s ease-out;
    -ms-transition: border 0.2s ease-out;
    -o-transition: border 0.2s ease-out;
    transition: border 0.2s ease-out;
    width: 122px;
}

.video-item figure > img {
    max-width: 100%;
    opacity: 0.70;
    -webkit-transition: opacity 0.2s ease-out;
    -moz-transition: opacity 0.2s ease-out;
    -ms-transition: opacity 0.2s ease-out;
    -o-transition: opacity 0.2s ease-out;
    transition: opacity 0.2s ease-out;
}

.video-item figure > img[src$="svg"] {
    left: 50%;
    opacity: 0;
    position: absolute;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: 40%;
    z-index: 1;
}

.video-item.current, .video-item:hover {
    /* background-color: #dedede; */
}

.video-item:hover figure,
.video-item.current figure {
    background-color: #000;
    border: 1px solid #222;
}

.video-item:hover figure > img,
.video-item.current figure > img {
    opacity: 0.3;
}

.video-item:hover figure > img[src$="svg"],
.video-item.current figure > img[src$="svg"] {
    display: none;
    opacity: 1;
}

.video-item span {
    color: #00a9e0;
    display: block;
    max-height: 44px;
    padding: 0 15px;
    overflow: hidden;
    width: calc(100% - 122px);
}

.video-item:visited span {
    color: #0389b4;
}

.video-item:hover span {
    text-decoration: underline;
}

.related-playlists {
    background-color: #eee;
    margin: 50px 0 -30px;
}

.related-subtitle {
    margin: 0 auto;
    max-width: 1300px;
    padding: 20px 20px 0;
    position: relative;
}

.related-subtitle > div {
    position: absolute;
    right: 18px;
    top: 40px;
    z-index: 1;
}

/* ==========================================================================
   Playlist Video Countdown Timer
   ========================================================================== */
@-webkit-keyframes l-rotate {
    0% { -webkit-transform: rotate(0deg); }
    50% { -webkit-transform: rotate(-180deg); }
    100% { -webkit-transform: rotate(-180deg); }
}

@-webkit-keyframes r-rotate {
    0% { -webkit-transform: rotate(0deg); }
    50% { -webkit-transform: rotate(0deg); }
    100% { -webkit-transform: rotate(-180deg); }
}

@-webkit-keyframes fadeout {
    0% { opacity: 1; }
    100% { opacity: 0.5; }
}

.center {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.circle {
    cursor: pointer;
    width: 100px;
    height: 100px;
    border-radius: 999px;
    box-shadow: inset 0 0 0 10px rgba(255, 255, 255, 0.5);
}

.circle.final {
    box-shadow: none;
}

.circle > img {
    display: none;
    height: 100px;
    width: 100px;
}

.l-half, .r-half {
    float: left;
    width: 50%;
    height: 100%;
    overflow: hidden;
}

.l-half:before, .r-half:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border: 10px solid #fff;
    -webkit-animation-duration: 5s;
    -webkit-animation-iteration-count: 1;
    -webkit-animation-timing-function: linear;
    -webkit-animation-fill-mode: forwards;
}

.l-half:before {
    border-right: none;
    border-top-left-radius: 999px;
    border-bottom-left-radius: 999px;
    -webkit-transform-origin: center right;
    -webkit-animation-name: l-rotate;
}

.r-half:before {
    border-left: none;
    border-top-right-radius: 999px;
    border-bottom-right-radius: 999px;
    -webkit-transform-origin: center left;
    -webkit-animation-name: r-rotate;
}

/* Timer */
.count {
    position: absolute;
    width: 100%;
    line-height: 100px;
    text-align: center;
    font-weight: 700;
    font-size: 30px;
    color: #fff;
    z-index: 2;
    -webkit-animation: fadeout 0.5s 21s 1 linear;
    -webkit-animation-fill-mode: forwards;
}

/* ==========================================================================
   ALL Media Queries
   ========================================================================== */
/* max-width 1250px, mobile styles */
@media only screen and (max-width: 78.125em) {
    .featured-video {
        max-width: 600px;
    }

    .featured-list {
        width: calc(100% - 600px);
    }
}

/* max-width 1024px, mobile styles */
@media only screen and (max-width: 64.000em) {
    #interior {
        padding: 85px 0 30px;
    }

    .playlist {
        padding: 0 20px;
    }
}

/* max-width 1023px, mobile styles */
@media only screen and (max-width: 63.938em) {
    .playlist {
        display: block;
    }

    .featured-video {
        max-width: none;
        width: 100%;
    }

    .featured-list {
        padding: 40px 0 0 0;
        width: 100%;
    }

    .other-videos-title:after,
    .other-videos-total:after {
        display: block; 
    }
}

/* max-width 767px */
@media only screen and (max-width: 47.9em) {

}

@media (max-width: 767px) and (min-width: 280px) and (-ms-high-contrast: none), (max-width: 767px) and (min-width: 280px) and (-ms-high-contrast: active) {
    .support-filter-btns {
        display: block;
    }

    .support-filter-btns li {
        margin: 0 0 15px;
        width: 100%;
    }
}

/* max-width 544px */
@media only screen and (max-width: 34em) {
    .count-cancel {
        top: calc(50% + 60px);
    }

    .video-item figure {
        width: 100px;
    }

    .video-item span {
        width: calc(100% - 100px);
    }
}