@media all and (min-width : 500px) {
    @document url(http://www.w3.org/),
                   url-prefix(http://www.w3.org/Style/),
                   domain(mozilla.org),
                   regexp("https:.*")
    {
        @supports ( (perspective: 10px) or (-moz-perspective: 10px) or (-webkit-perspective: 10px) or (-ms-perspective: 10px) or (-o-perspective: 10px) ) {
            @-o-keyframes slidein {
                from :blub {
                    margin-left : 100%;
                    width: 300%
                }
      
                75% {
                    font-size:300%;
                    margin-left:25%;
                    width:150%;
                }
      
                to {
                    margin-left:0%;
                    width:100%;
                }
            }

            @page :last {
                margin : 3in;
            }
        }
    }
}
