.modal {
display: none;
position: fixed;
z-index: 8887;
left: 0; top: 0;
width: 100%; height: 100%;
overflow: auto;
background-color: rgba(0, 0, 0, 0.6);
transition: all 1s ease-in-out;
}
.modal-content {
background: #FFF;
width: 90vw; height: 80vh;
padding: 40px 4%;
overflow-y: auto;
/*max-width: 500px;
max-height: 400px;*/
position: absolute;
top: 50%; left: 50%;
transform: translate(-50%, -50%);
animation: show 0.6s linear 0s;
filter: drop-shadow(0px 2px 6px #777);
}

.modal-top{
display: inline-block;
position: absolute;
right: 2.5vw; top: 6.5vh;
z-index: 8888;
}
.modal-close{
display: block;
position: relative;
width: 50px; height: 50px;
background: #00a0e9;
}
.modal-close::before, .modal-close::after {
content: "";
position: absolute;
top: 50%; left: 50%;
width: 2px; height: 24px;
background: #fff;
}
.modal-close::before { transform: translate(-50%,-50%) rotate(45deg); }
.modal-close::after { transform: translate(-50%,-50%) rotate(-45deg); }
.modal-close:hover, .modal-close:focus { text-decoration: none; cursor: pointer; }

@keyframes show{
from{ opacity: 0; }
to{ opacity: 1; }
}

@media screen and (max-width: 640px){
.modal-content{ height: 75vh; }
.modal-top{ top: 10vh; right: 0; }
.modal-close{ width: 40px; height:40px; }
}


#video_imp .modal-container,
#implantastic .modal-container{
position: relative;
height: 0;
padding-top: 56.25%;
}
#video_imp .modal-container iframe,
#implantastic .modal-container iframe{
position: absolute;
top: 0; left: 0;
width: 100%; height: 100%;
}

#video_imp .modal-container h4,
#implantastic .modal-container h4{
margin-top: 24px;
margin-bottom: 0;
}
#video_imp .modal-container h4 span,
#implantastic .modal-container h4 span{
margin-right: .25em;
}
#video_imp .modal-container h4 + p,
#implantastic .modal-container h4 + p{
padding-bottom: 40px;
margin-left: 32px;
margin-top: 8px;
}

@media screen and (max-width: 640px){
#video_imp .modal-container h4 + p,
#implantastic .modal-container h4 + p{ margin-left: 24px; }
}