/* There are multiple ways to place your actual background image.  For this one, we're using a body::before psuedo element. */
+body::before {
  +background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/299775/snowbanner.jpg);
  background-size: 100%;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
}

/* Our subreddit has two sections for snow so we select the last two blockquotes. */
.side .md > blockquote:nth-last-of-type(-n+2) {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  overflow: hidden;
  height: 100%;
  
  z-index: -1;
  pointer-events: none;
		
  -webkit-border-radius: 70px 30px 0px 0px;
  -moz-border-radius: 70px 30px 0px 0px;
  -ms-border-radius: 70px 30px 0px 0px;
  border-radius: 70px 30px 0px 0px;
}



/* For markdown only. Hides the divider I use to prevent markdown combining the blockquotes.  */
.side .md > blockquote:nth-last-of-type(2) + hr {
  display: none;
}

/* Our subreddit has a blurred background for the submenu, so we add a second container with a blurred snow to match. */
+.side .md > blockquote:nth-last-of-type(2) {
  top: 192px;
  height: 50px;
  z-index: 2;

  /* for Codepen, place background manually. */
  +background-image: url('https://s3-us-west-2.amazonaws.com/s.cdpn.io/299775/snowbanner-blur.jpg');
  background-size: 100%;
  background-position: 0 -192px;
  border-top:1px solid rgba(255,255,255,.1);
  box-shadow: 0 -1px 2px rgba(0,0,0,.15);
}

.side .md > blockquote:nth-last-of-type(-n+2) ul {
  width: calc(100% - -100px);
  height: 292px;
  
  position: absolute;
  top: -50px;
  left: -50px;
  overflow: hidden;
  margin: 0;
  padding: 0;
  font-size: 0;
  list-style: none;
  perspective: 300px;
  animation: sway 20s ease infinite alternate;
}

/* Give the snow a bit of nonlinear movement in each direction. */
@keyframes sway {
  25% {
    transform: translate(50px, 0);
  }
  50% {
    transform: translate(-50px, 0);
  }
  75% {
    transform: translate(25px, 0);
  }
  100% {
    transform: translate(-50px, 0);
  }
}

.side .md > blockquote:nth-last-of-type(-n+2) li {
  display: block;
  background-image: url(%%snow%%);
  
  /* outside reddit need actual file */
  background-image: url(../gfx/XPoCf2QaBwJR3QOQW4GSSWG8pX-aBflYmRBngkuLgJQ.png);
  
  height: 1200px;
  
  
  top: -150px;
  
  left: -50%;
  min-width: 2400px;
  width: 200vw;
  transform: translateX(-600px) translateY(-600px);
  background-repeat: repeat;
  animation: snowfall 10s linear infinite;
  position: absolute;
  overflow: hidden;
}

.side .md > blockquote:nth-last-of-type(2) li {
  background-image: url(%%snow-blur%%);

  /* outside reddit need actual file */
  background-image: url('../gfx/UdBoXjTeS-Pq1UMLnt8pi9Lt5JuQ3fcvdYRWkfBF1t0.png');
}

.side .md > blockquote:nth-last-of-type(-n+2) li:nth-child(2) {
  animation-name: snowfallX;
  background-position: 50px 50px;
  transform: translateX(-600px) translateY(-600px) translateZ(250px);
  opacity: .5;
}

.side .md > blockquote:nth-last-of-type(-n+2) li:nth-child(3) {
  animation-name: snowfallZ;
  background-position: 100px 100px;
  transform: translateX(-600px) translateY(-600px) translateZ(150px);
}

.side .md > blockquote:nth-last-of-type(-n+2) li:nth-child(4) {
  animation-name: snowfallY;
  
  /* Adjust a little bit for the zoom out of perspective */
  margin-left: 200px;
  background-position: 150px 150px;
  transform: translateX(-600px) translateY(-600px) translateZ(-150px);
}

@keyframes snowfall {
  to {
    transform: none;
  }
}

@keyframes snowfallZ {
  to {
    transform: translateZ(150px);
  }
}

@keyframes snowfallX {
  to {
    transform: translateZ(250px);
  }
}

@keyframes snowfallY {
  to {
    transform: translateZ(-150px);
  }
}


/* --------------------------- */


/* Codepen specific styling. You may or may not need the padding/margin/border resets. */
/*body,*/
blockquote,
ul,
li {
  padding: 0;
  margin: 0;
  border: 0;
}

+body {
  min-width: 1335px;
  position: relative;
  overflow: hidden;
}

/* I removed the fullscreen button.

.side.fullscreen .md > blockquote:nth-last-of-type(2) {
  display: none;
}

.side.fullscreen .md > blockquote:nth-last-of-type(-n+2){
  height: calc(100% + 900px);
}

.side.fullscreen .md > blockquote:nth-last-of-type(-n+2) ul {
  height: calc(100% + 900px);
}

.side.fullscreen .md > blockquote:nth-last-of-type(-n+2) li {
  height: calc(100% + 900px);
  top: -25%;
} */