body {
    background: linear-gradient(to top bottom, rgba(255 255 255) 0%, rgba(144 139 137) 100%);
    background: -o-linear-gradient(to top bottom, rgba(255 255 255) 0%, rgba(144 139 137) 100%);
    background: -ms-linear-gradient(to top bottom, rgba(255 255 255) 0%, rgba(144 139 137) 100%);
    background: -moz-linear-gradient(to top bottom, rgba(255 255 255) 0%, rgba(144 139 137) 100%);
    background: -webkit-linear-gradient(to top bottom, rgba(255 255 255) 0%, rgba(144 139 137) 100%);
    font-family: Arial, sans-serif;
    margin: 0;
    padding: 0;
}

div.wallpaper {
    background-image: url('wallpaper.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 100vh;
    margin: auto;
    
    -webkit-animation: fadein 2s; /* Safari, Chrome and Opera > 12.1 */
       -moz-animation: fadein 2s; /* Firefox < 16 */
        -ms-animation: fadein 2s; /* Internet Explorer */
         -o-animation: fadein 2s; /* Opera < 12.1 */
            animation: fadein 2s;
}

@media (max-width: 768px) {
    div.wallpaper {
        max-width: 100vw;
        margin: 20vh auto;
    }
}

@media (max-width: 480px) {
    div.wallpaper {
        max-width: 100vw;
        top: 0;
    }
}

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

/* Firefox < 16 */
@-moz-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Internet Explorer */
@-ms-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Opera < 12.1 */
@-o-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}