.snowflake {
    position: fixed;
    top: -10px;
    color: white;
    text-shadow: 0 0 5px #fff;
    border-radius: 50%;
    user-select: none;
    pointer-events: none;
    z-index: 0;
    animation-name: fall;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    will-change: transform, opacity;
}

@keyframes fall {
    to {
        transform: translateY(100vh);
    }
}

.stfn-hf-bg {
    position: relative;
    background-position: center top;
    text-align: center;
}

.stfn-hf-bg::before {
    mask-image: linear-gradient(to bottom, white 70%, transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom, white 70%, transparent 100%);
    background-image: url(../images/smf.png); /*snowm.png*/
    background-repeat: repeat-x;
    background-position: center top -2px;
    background-size: 300px auto;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.stfn-bg {
    position: relative;
    background-position: center top;
    text-align: center;
}

.stfn-bg::before {
    mask-image: linear-gradient(to bottom, white 70%, transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom, white 70%, transparent 100%);
    background-image: url(../images/smf.png); /*snowm.png*/
    background-repeat: repeat-x;
    background-position: center top -2px;
    background-size: 300px auto;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

/*.stfn-bg::after {
    *background-image: url(../images/sm2.png);
    background-image: url(../images/lamp.png);
    background-repeat: repeat-x;
    background-position: center top 20px;
    background-size: 100px auto;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    opacity: 0.95;
}*/

.logo-wrapper {
    position: relative;
}

.logo-wrapper::after {
    background-image: url(../images/santahat.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 130px auto;
    content: "";
    position: absolute;
    bottom: 65px;
    left: -5px;
    z-index: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    transform: rotate(15deg);
}

.logoText {
    position: relative;
}

.logoText::before {
    background-image: url(../images/lamp.png);
    background-repeat: repeat-x;
    background-position: center bottom;
    background-size: 150px auto;
    content: "";
    position: absolute;
    top: 12px;
    left: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}


.logoText::after {
    background-image: url(../images/santatree.png);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 220px auto;
    content: "";
    position: absolute;
    top: 12px;
    left: 300px;
    z-index: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

@media screen and (max-width: 768px) {
.logo-wrapper::after {
    background-size: 170px auto;
    bottom: 50px;
    left: -10px;
    transform: rotate(15deg);
}
.logoText::after {
    visiblity: hidden;
    display: none;
}
}