.noscroll {
    overflow: hidden;
}
    /* Video Modal
-----------------------------------------*/
.video-modal,
.video-modal .overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 3000;
}

.video-modal {
    overflow: hidden;
    position: fixed;
    opacity: 0.0;

    -webkit-transform: translate(500%, 0%);
    transform: translate(500%, 0%);

    -webkit-transition: -webkit-transform 0s linear 0s;
    transition: transform 0s linear 0s;


    /* using flexbox for vertical centering */

    /* Flexbox display */
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;

    /* Vertical alignment */
    -webkit-box-align: center;
    -moz-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;

    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

.video-modal .overlay {
    z-index: 0;
    background: rgba(0,0,0, 0.82);
    /* overlay color */

    opacity: 0.0;

    -webkit-transition: opacity 0.2s ease-out 0.05s;
    transition: opacity 0.2s ease-out 0.05s;
}


.video-modal-content {
    position: relative;
    top: auto;
    right: auto;
    bottom: auto;
    left: auto;
    z-index: 1;

    margin: 0 auto;

    overflow-y: visible;

    background: #000;

    width: calc(100% - 12em);
    height: 0;
    padding-top: calc((100% - 12em) * 0.5625);
    /* 16:9 calc */
}

/* Scaling to fit within the current Viewport size:
When viewport aspect ratio is greater than 16:9
work off the height instead of the width for calc */
@media (min-aspect-ratio: 16/9) {
    .video-modal-content {
        width: 0;
        height: calc(100vh - 10em);
        padding-top: 0;
        padding-left: calc((100vh - 10em) * 1.7778);
        /* 16:9 calc */
    }
}

/* Mobile Layout Tweaks - side margins reduced */
@media (max-width: 640px) {
    .video-modal-content {
        width: calc(100% - 1em);
        padding-top: calc((100% - 1em) * 0.5625);
        /* 16:9 calc */
    }
}

/* modal close button */
.close-video-modal {
    display: block;
    position: absolute;
    right: 0;
    top: -24px;
    text-decoration: none;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    width: 20px;
    height: 20px;
    background: url('data:image/svg+xml,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve" width="24" height="24"><g id="icon-x-close"><path fill="%23ffffff" d="M30.3448276,31.4576271 C29.9059965,31.4572473 29.4852797,31.2855701 29.1751724,30.980339 L0.485517241,2.77694915 C-0.122171278,2.13584324 -0.104240278,1.13679247 0.52607603,0.517159487 C1.15639234,-0.102473494 2.17266813,-0.120100579 2.82482759,0.477288136 L31.5144828,28.680678 C31.9872448,29.1460053 32.1285698,29.8453523 31.8726333,30.4529866 C31.6166968,31.0606209 31.0138299,31.4570487 30.3448276,31.4576271 Z" id="Shape"></path><path fill="%23ffffff" d="M1.65517241,31.4576271 C0.986170142,31.4570487 0.383303157,31.0606209 0.127366673,30.4529866 C-0.12856981,29.8453523 0.0127551942,29.1460053 0.485517241,28.680678 L29.1751724,0.477288136 C29.8273319,-0.120100579 30.8436077,-0.102473494 31.473924,0.517159487 C32.1042403,1.13679247 32.1221713,2.13584324 31.5144828,2.77694915 L2.82482759,30.980339 C2.51472031,31.2855701 2.09400353,31.4572473 1.65517241,31.4576271 Z" id="Shape"></path></g></svg>') no-repeat center;
    background-size: 16px;
}
.close-video-modal:hover {
    background: url('data:image/svg+xml,<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0" y="0" viewBox="0 0 32 32" style="enable-background:new 0 0 32 32;" xml:space="preserve" width="24" height="24"><g id="icon-x-close"><path fill="%23ffffff" d="M30.3448276,31.4576271 C29.9059965,31.4572473 29.4852797,31.2855701 29.1751724,30.980339 L0.485517241,2.77694915 C-0.122171278,2.13584324 -0.104240278,1.13679247 0.52607603,0.517159487 C1.15639234,-0.102473494 2.17266813,-0.120100579 2.82482759,0.477288136 L31.5144828,28.680678 C31.9872448,29.1460053 32.1285698,29.8453523 31.8726333,30.4529866 C31.6166968,31.0606209 31.0138299,31.4570487 30.3448276,31.4576271 Z" id="Shape"></path><path fill="%23ffffff" d="M1.65517241,31.4576271 C0.986170142,31.4570487 0.383303157,31.0606209 0.127366673,30.4529866 C-0.12856981,29.8453523 0.0127551942,29.1460053 0.485517241,28.680678 L29.1751724,0.477288136 C29.8273319,-0.120100579 30.8436077,-0.102473494 31.473924,0.517159487 C32.1042403,1.13679247 32.1221713,2.13584324 31.5144828,2.77694915 L2.82482759,30.980339 C2.51472031,31.2855701 2.09400353,31.4572473 1.65517241,31.4576271 Z" id="Shape"></path></g></svg>') no-repeat center;
    background-size: 16px;
}

/* set the iframe element to stretch to fit its parent element */
iframe#youtube {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;

    background: #000;
    box-shadow: 0px 2px 16px rgba(0, 0, 0, 0.5);
}

/* show the modal:
add class to the body to reveal */
.show-video-modal .video-modal {
    opacity: 1.0;

    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
}

.show-video-modal .video-modal .overlay {
    opacity: 1.0;
}

.show-video-modal .video-modal-content {
    transform: translate(0%, 0%);
    -webkit-transform: translate(0%, 0%);
}
