.progressive-media {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    width: 100%;
    height: 100%;
}
.progressive-media .progressive-media-aspect {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    overflow: hidden;
}
.progressive-media .progressive-media-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.progressive-media.progressive-media-image {
    margin: 0 auto;
}
.progressive-media.progressive-media-loaded.progressive-media-image .progressive-media-image-placeholder {
    visibility: hidden;
    opacity: 0;
}
.progressive-media .progressive-media-image-placeholder {
    opacity: 1;
    visibility: visible;
    -webkit-transition: visibility 400ms linear, opacity 400ms;
    -o-transition: visibility 400ms linear, opacity 400ms;
    transition: visibility 400ms linear, opacity 400ms;
}
.progressive-media .progressive-media-image-placeholder-edge {
    z-index: 2;
}
.progressive-media .progressive-media-image-original {
    z-index: 1;
}
.progressive-media .progressive-media-blur {
    z-index: 3;
    -webkit-filter: blur(12px);
    -moz-filter: blur(12px);
    -ms-filter: blur(12px);
    -o-filter: blur(12px);
    /* FF doesn't support blur filter, but SVG */
    filter: url("data:image/svg+xml;utf8,<svg height='0' xmlns='http://www.w3.org/2000/svg'><filter id='progressive-media-blur' x='-5%' y='-5%' width='110%' height='110%'><feGaussianBlur in='SourceGraphic' stdDeviation='12'/></filter></svg>#progressive-media-blur");
    filter: progid:DXImageTransform.Microsoft.Blur(PixelRadius = "12");
    filter: blur(12px);
}