#SummerContainer 
{
    position: fixed;
    width: calc(100% - 100px);
    height: 100vh;
    z-index:1; 
    pointer-events:none;
}
#SummerContainer > div 
{
    position: absolute;
    width: 50px;
    height: 50px;
    
    /* We use the following properties to apply the fade and drop animations to each Summer.
       Each of these properties takes two values. These values respectively match a setting
       for fade and drop.
    */
    -webkit-animation-iteration-count: infinite, infinite;
    -webkit-animation-direction: normal, normal;
    -webkit-animation-timing-function: linear, ease-in;
}

/* This CSS rule is applied to all img elements directly inside div elements which are
   directly inside the SummerContainer div. In other words, it matches the 'img' elements
   inside the SummerDivs which are created in the createASummer() function.
*/
#SummerContainer > div > img {
     position: absolute;
     width: 50px;
     height: 50px;

    /* We use the following properties to adjust the clockwiseSpin or counterclockwiseSpinAndFlip
       animations on each Summer.
       The createASummer function in the Summer.js file determines whether a Summer has the 
       clockwiseSpin or counterclockwiseSpinAndFlip animation.
    */
     -webkit-animation-iteration-count: infinite;
     -webkit-animation-direction: alternate;
     -webkit-animation-timing-function: ease-in-out;
     -webkit-transform-origin: 30% -100%;
}


/* Hides a Summer towards the very end of the animation */
@-webkit-keyframes fade
{
    /* Show a Summer while into or below 95 percent of the animation and hide it, otherwise */
    0%   { opacity: 1; }
    95%  { opacity: 1; }
    100% { opacity: 0; }
}


/* Makes a Summer fall from -300 to 600 pixels in the y-axis */
@-webkit-keyframes drop
{
    /* Move a Summer to -300 pixels in the y-axis at the start of the animation */
    0%   { -webkit-transform: translate(-50px, -50px); }
    /* Move a Summer to 600 pixels in the y-axis at the end of the animation */
    100% { -webkit-transform: translate(0px, 100vh); }
}

/* Rotates a Summer from -50 to 50 degrees in 2D space */
@-webkit-keyframes clockwiseSpin
{
    /* Rotate a Summer by -50 degrees in 2D space at the start of the animation */
    0%   { -webkit-transform: rotate(-50deg); }
    /*  Rotate a Summer by 50 degrees in 2D space at the end of the animation */
    100% { -webkit-transform: rotate(50deg); }
}


/* Flips a Summer and rotates it from 50 to -50 degrees in 2D space */
@-webkit-keyframes counterclockwiseSpinAndFlip 
{
    /* Flip a Summer and rotate it by 50 degrees in 2D space at the start of the animation */
    0%   { -webkit-transform: scale(-1, 1) rotate(50deg); }
    /* Flip a Summer and rotate it by -50 degrees in 2D space at the end of the animation */
    100% { -webkit-transform: scale(-1, 1) rotate(-50deg); }
}