.modal {
    display: none;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(45, 45, 45, .98);
    overflow-y: scroll;
    z-index: 1000;
    color: #FFFFFF;
    font-family: "DM Sans", sans-serif !important;
}

.modal .modal-content {
    background: transparent;
    margin: 120px auto;
    padding: 20px;
    width: 60%;
}

.modal .close {
    margin-right: 15px;
    margin-top: 55px;
    color: #FFFFFF;
    float: right;
    font-size: 50px;
}

.modal .block {
    padding-left: 50px;
    padding-right: 50px;
    margin-bottom: 30px;
}

.modal .block.border-bottom {
    border-bottom: 1px solid hsla(0, 0%, 100%, .3) !important;
}

.modal .block h3 {
    margin-bottom: 50px;
}

.modal .close:hover,
.modal .close:focus {
    text-decoration: none;
    cursor: pointer;
}

.modal h3 {
    text-align: left;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
}

.modal h3 span {
    font-size: 18px;
    text-align: left;
    line-height: 1.4;
    font-weight: 700;
}

.modal i.television {
    background-image: url('../svg/tv_icon_white.svg');
}

.modal .device,
.modal .list {
    display: flex;
}

.modal .device,
.modal .list,
.modal .element {
    color: hsla(0, 0%, 100%, .6);
    font-size: 12px;
}

.modal .device {
    float: left;
    margin-right: 60px;
    padding-bottom: 30px;
}


.modal .element img {
    height: 20px;
}

.modal .element a,
.modal .element a:hover,
.modal .element a:visited,
.modal .element a:focus {
    text-decoration: none;
    color: #a5c441;
    cursor: pointer;
}

.modal ul li.row {
    float: left;
    display: inline-block;
    text-align: left;
    margin-right: 30px;
    width: 150px;
}

.modal ul.row {
    display: inline-flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-top: 0;
}

.modal ul.column li {
    display: block;
    text-align: left;
}

.modal ul.column li:first-of-type {
    margin-bottom: 15px;
}

.modal ul.column li:last-of-type {
    margin-bottom: 30px;
}

.modal .block .column.final {
    padding-left: 60px;
}

.modal span.small-device-list {
    background-image: url('../png/device-list.png');
    background-repeat: no-repeat;
    background-size: 145px 300px;
    display: flex;
}

.modal .apple-tv {
    background-position: 0 0;
    height: 20px;
    width: 40px;
}

.modal .roku {
    background-position: 0 -120px;
    height: 18px;
    width: 62px;
}

.modal .android-tv {
    background-position: 0 -180px;
    height: 17px;
    width: 93px;
}

.modal .fire-tv {
    background-position: 0 -210px;
    height: 18px;
    width: 69px;
}

.chromecast {
    background-position: 0 -30px;
    height: 29px;
    width: 147px;
}

.modal .apple {
    background-position: 0 -90px;
    height: 19px;
    width: 87px;
}

.modal .android {
    background-position: 0 -150px;
    height: 16px;
    width: 74px;
}

.modal .ipad {
    background-position: 0 -60px;
    height: 18px;
    width: 58px;
}

@media (min-width: 1292px) {
    .modal .modal-content {
        width: 70%;
    }
}

@media (min-width: 1112px) and (max-width: 1291px) {
    .modal .modal-content {
        width: 80%;
    }
}

@media (max-width: 1111px) {
    .modal .modal-content {
        width: 90%;
    }
}

@media (max-width: 789px) {
    .modal .block .column.final {
        padding-left: 20px;
    }

    .modal .block .column.final {
        display: block;
    }

    .modal .element ul {
        padding-left: 0;
    }

    .modal ul li.row {
        margin-right: 0;
        width: 120px;
    }
}

@media (max-width: 594px) {
    .modal .list {
        display: block;
    }

    .modal ul.row.final {
        display: contents;
    }

    .modal .block .column.final {
        padding-left: 0;
    }

    .modal .block.final .device {
        margin-right: 300px;
    }
}
