.video {
    background-color: black;
}

.video .section {
    max-width: 90rem;
    padding-left: 1.125rem;
    padding-right: 1.125rem;
    padding-bottom: 1.25rem;
}

.video .section.extra-info {
    padding-top: 3rem;
    background-color: #1a1a1a;
}

.video .section.extra-info > div > div > p:last-of-type {
    margin-top: 0;
}

.video .section.extra-info > div > div > p:first-of-type {
    font-family: 'Akzidenz-Grotesk Pro Regular', sans-serif;
    font-size: .875rem;
    margin-bottom: 0;
    padding-bottom: 0;
    line-height: 1.625rem;
}

.video .section.extra-info div > div > p:first-of-type,
.video .section.extra-info div > div > p > a {
    color: var(--color-medium-gray);
}

.video .section.episodes {
    padding-top: 3.5625rem;
}

.video .section.episodes > div {
    letter-spacing: .05em;
}

.video .section.episodes > div h2 {
    font-family: 'Akzidenz-Grotesk Pro Regular', sans-serif;
}

.video .section.episodes > div > a {
    display: flex;
    font-size: 1rem;
    font-family: 'Akzidenz-Grotesk Pro Regular', sans-serif;
    border: 1px solid var(--color-white);
    justify-content: center;
    padding: 1rem;

}

.video .section.episodes > div > a::after {
    content: "";
    width: 0.625rem;
    height: 0.625rem;
    border-left: 0.125rem solid white;
    border-bottom: 0.125rem solid white;
    transform: rotate(-135deg);
    display: inline-block;
    margin-left: 0.25rem;
    margin-top: 0.45rem;
}

.video h1 {
    font-family: 'Akzidenz-Grotesk Pro Bold', sans-serif;
    font-size: 1.125rem;
    text-transform: uppercase;
}

.video a.show-name  {
    color: var(--color-red);
    text-transform: uppercase;
    font-family: "Akzidenz-Grotesk Pro Regular", serif;
}

.video a.show-name:focus:not(:hover) {
    color: var(--link-light-color);
}

.video span {
    font-family: 'Akzidenz-Grotesk Pro Regular', sans-serif;
    font-size: 0.875rem;
}

.video img {
    width: 9.75rem;
}

.video .placeholder-wrap img{
    width: 100%;
}


.video main .cards-wrapper .loading-skeleton .row,
.video .cards li {
    width: calc(50% - 0.5rem);
    background-color: transparent;
    border: none;
}

.video .cards {
    font-size: 1rem;
    color: var(--color-medium-gray);
}

.video .cards p.author {
    font-size: .75rem;
}

.video main .cards-wrapper .loading-skeleton,
.video .cards ul {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: center;
}

@media (max-width: 768px) {
    .video .cards ul {
        padding-inline-start: 0;
    }
}

.video .cards li {
    width: calc(50% - 0.5rem);
}

.video .cards .author a {
    color: var(--color-medium-gray);
}

.video .cards .cards-card-body {
    margin: 0;
}

.video .cards .cards-card-body h3 a {
    color: white;
    font-family: 'Akzidenz-Grotesk Pro Bold', sans-serif;
    font-size: 1rem;
}

.video .cards li .description p {
    display: none;
}

.video .video-subtitle {
    display: flex;
    column-gap: 24px;
}

.video .video-subtitle img {
    display: none;
}


.video .video-subtitle h3 {
    font-family: 'Akzidenz-Grotesk Pro Bold', sans-serif;
}

.video .video-subtitle p {
    margin: 0;
    font-size: 0.875rem;
    color: var(--color-medium-gray);
}

.video .cards > ul > li img {
    aspect-ratio: 16 / 9;
}

.video .jwplayer-wrapper {
    margin-bottom: 1rem;
    aspect-ratio: 16 / 9;
}

.video main .embed {
    max-width: unset;
    margin: unset;
}

.video main .cards-wrapper .loading-skeleton .row .left {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.video main .cards-wrapper .loading-skeleton .row .left .loading {
    height: 100%;
}

.video main .cards-wrapper .loading-skeleton .row .right .by-line {
    width: 100%;
    color: transparent;
}

@media(min-width: 769px) {
    .video h1 {
        font-size: 2rem;
    }

    .video .video-subtitle img {
        display: block;
        border-right: var(--color-red) 0.25rem solid;
    }

    .video .section {
        padding-left: 2.5rem;
        padding-right: 2.5rem;
    }

    .video .section.extra-info {
        margin: 0;
        max-width: 100%;
    }

    .video .section.extra-info > div {
        /*
         TODO this is a hack to make the text align
         with the video, implement uniformly for all sections
        */
        max-width: 90rem;
        padding-left: 2.5rem;
        padding-right: 2.5rem;
        padding-bottom: 1.25rem;
        position: relative;
        margin: auto;
    }

    .video .cards li .description  {
        font-size: 1.25rem;
        line-height: 130%;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        line-clamp: 3;
        text-overflow: ellipsis;
        overflow: hidden;
    }

    .video .section.episodes > div {
        display: flex;
        flex-wrap: wrap;
    }

    .video .section.episodes > div > a {
        border: none;
        margin-left: auto;
        color: white;
    }

    .video .section.episodes > div > a:hover {
        text-decoration: none;
    }

    .video .section.episodes > div > div.cards-wrapper {
        order: 3;
        flex-basis: 100%;
    }

    .video main .cards-wrapper .loading-skeleton,
    .video .cards ul {
        justify-content: normal;
    }

    .video main .cards-wrapper .loading-skeleton .row,
    .video .cards li {
        width: 17.4375rem;
    }

    .video .cards p.author {
        font-size: 1rem;
    }
}

@media(max-width: 430px) {
    .video .section.extra-info {
        padding-top: 1.5rem;
    }
}
