@-webkit-keyframes upOpacity { 
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-moz-keyframes upOpacity {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@-ms-keyframes upOpacity {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes upOpacity {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}



@-webkit-keyframes downOpacity {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@-moz-keyframes downOpacity {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@-ms-keyframes downOpacity {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

@keyframes downOpacity {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}








@-webkit-keyframes starsOpacity {
    0% {
        opacity: .15;
    }

    100% {
        opacity: 1;
    }
}

@-moz-keyframes starsOpacity {
    0% {
        opacity: .15;
    }

    100% {
        opacity: 1;
    }
}

@-ms-keyframes starsOpacity {
    0% {
        opacity: .15;
    }

    100% {
        opacity: 1;
    }
}

@keyframes starsOpacity {
    0% {
        opacity: .15;
    }

    100% {
        opacity: 1;
    }
}









@-webkit-keyframes moonRise {
    0% {
		top: 100%;
		transform: translateY(-100%);
    }

    100% {
		top: 30%;
		transform: translateY(-45%);
    }
}

@-moz-keyframes moonRise {
    0% {
		top: 100%;
		transform: translateY(-100%);
    }

    100% {
		top: 30%;
		transform: translateY(-45%);
    }
}

@-ms-keyframes moonRise {
    0% {
		top: 100%;
		transform: translateY(-100%);
    }

    100% {
		top: 30%;
		transform: translateY(-45%);
    }
}

@keyframes moonRise {
    0% {
		top: 100%;
		transform: translateY(-100%);
    }

    100% {
		top: 30%;
		transform: translateY(-45%);
    }
}






body.light .scenario--dark-night,
body.light .bottom-mask--night,
body.dark .scenario--dark-day,
body.dark .bottom-mask--day {
    display: none
}



.scenario-wrap {
	height: 100vh;
	width: 100%;
	position: relative;
	overflow-y: hidden;
}

.scenario--dark-night {
	background-color: #081824;
}

.scenario--light-night {
	background-color: #081824;
}

.scenario,
.gradient,
.stars,
.clouds-wrap,
.clouds {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}

.mountains-wrap {
	position: relative;
	z-index: 6;
	height: 100%;
	bottom: -8%
}

.mountains,
.mountains-hidden,
.mountains__bg {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}

.mountains__bg--moondown {
	opacity: 1;

    animation-name: downOpacity;
    animation-duration: 1.7s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
    animation-delay: 2s;
}


.mountains__bg--moondown,
.mountains__bg--hidden-night {
   	background: url(../images/mountains-dark-night.png) center center / contain;

}

.mountains__bg--moonup {
	opacity: 0;

    animation-name: upOpacity;
    animation-duration: 1.6s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-timing-function: linear;
    animation-fill-mode: forwards;
    animation-delay: 2.8s;

	background: url(../images/mountains-light-night.png) center center / contain;
}

.gradient {
    z-index: 1;
    opacity: 0;
    margin-top: -5%;

    animation-name: upOpacity;
    animation-duration: 1.7s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
    animation-delay: 2.7s;
}


.gradient--night {
    background: #375a6c;
    background: -moz-radial-gradient(60% center, ellipse cover, #375a6c 0%, #081824 100%);
    background: -webkit-radial-gradient(60% center, ellipse cover, #375a6c 0%, #081824 100%);
    background: radial-gradient(ellipse at 60% center, #375a6c 0%, #081824 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#375a6c', endColorstr='#081824', GradientType=1);
    background-repeat: no-repeat;
}


.stars {
    background: url(../images/stars.png) repeat top center;
    z-index: 2;

    animation-name: starsOpacity;
    animation-duration: 1.5s;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
}

.moon {
	max-width: 145px;
	max-height: 145px;
	border-radius: 50%;
	background-color: #FBF5B1;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 3;
	left: 55%;
	transform: translateX(-55%);
	top: 100%;

    animation-name: moonRise;
    animation-duration: 1.7s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
    animation-delay: 2s;
}

.mountains-hidden {
	z-index: 4
}

.mountains {
	z-index: 5
}





/*--------------------------------------------
DAY
--------------------------------------------*/
.scenario--dark-day {
    background: #9ed9f8;
    background: -moz-linear-gradient(top, #9ed9f8 0%, #e4ccc5 35%);
    background: -webkit-linear-gradient(top, #9ed9f8 0%,#e4ccc5 35%);
    background: linear-gradient(to bottom, #9ed9f8 0%,#e4ccc5 35%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#9ed9f8', endColorstr='#e4ccc5',GradientType=0 );
}

.scenario--light-day {
    background-color: #E4CCC5;
}

.mountains__bg--sundown,
.mountains__bg--hidden-day {
    background: url(../images/mountains-dark-day.png) center center / cover no-repeat;
}

.mountains__bg--sunup {
    opacity: 0;

    animation-name: upOpacity;
    animation-duration: 2.5s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-timing-function: linear;
    animation-fill-mode: forwards;
    animation-delay: 2s;

    background: url(../images/mountains-light-day.png) center center / cover no-repeat;
}

.gradient--day {
    background-color: #c4e2f6;
}




@-webkit-keyframes move-clouds-back {
    from {background-position:0 0;}
    to {background-position:10000px 0;}
}

@-moz-keyframes move-clouds-back {
    from {background-position:0 0;}
    to {background-position:10000px 0;}
}

@-ms-keyframes move-clouds-back {
    from {background-position: 0;}
    to {background-position:10000px 0;}
}

@keyframes move-clouds-back {
    from {background-position:0 0;}
    to {background-position:10000px 0;}
}




.clouds-wrap {
    opacity: 0;
    z-index: 5;

    animation-name: upOpacity;
    animation-duration: 3s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
    animation-delay: 5s;
}

.clouds {
    background:transparent url(../images/clouds.png) center center / contain repeat-x;
    z-index:3;
    margin-top: 20px;

    animation-name: move-clouds-back;
    animation-duration: 300s;
    animation-iteration-count: infinite;
    animation-direction: normal;
    animation-timing-function: linear;
}

.sun {
    max-width: 145px;
    max-height: 145px;
    border-radius: 50%;
    background-color: #fff17a;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 3;
    left: 55%;
    transform: translateX(-55%);
    top: 100%;

    animation-name: moonRise;
    animation-duration: 1.7s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-timing-function: ease-out;
    animation-fill-mode: forwards;
    animation-delay: 2s;
}







@-webkit-keyframes shine {
    0% {
        width: 0;
    }

    100% {
        width: 100px;
    }
}

@-moz-keyframes shine {
    0% {
        width: 0;
    }

    100% {
        width: 100px;
    }
}

@-ms-keyframes shine {
    0% {
        width: 0;
    }

    100% {
        width: 100px;
    }
}

@keyframes shine {
    0% {
        width: 0;
    }

    100% {
        width: 100px;
    }
}



@-webkit-keyframes fallingStar { /* Chrome, Safari */
    0% {width:250px; opacity: .2}
    50% {width: 125px; opacity: .5}
    100% {width:0; opacity: 0}
}
@-moz-keyframes fallingStar { /* FF */
    0% {width:250px; opacity: .2}
    50% {width: 125px; opacity: .5}
    100% {width:0; opacity: 0}
}
@-ms-keyframes fallingStar { /* Opera */
    0% {width:250px; opacity: .2}
    50% {width: 125px; opacity: .5}
    100% {width:0; opacity: 0}
}
@keyframes fallingStar {
    0% {width:250px; opacity: .2}
    50% {width: 125px; opacity: .5}
    100% {width:0; opacity: 0}
}


.falling-star {
    opacity: 0;
    position: absolute;
    right: 15%;
    top: 15%;
    z-index: 6;
    width: 250px;
    height: 1px;
    background-color: white;
    transform: rotate(20deg);
    transform-origin: 100% 100%;

    animation-name: fallingStar;
    animation-duration: .3s;
    animation-iteration-count: 1;
    animation-direction: normal;
    animation-timing-function: ease-out;
    animation-fill-mode: none;
    animation-delay: 6s;
}

.bottom-mask {
    position: absolute;
    bottom: 0;
    left: 0; right: 0;
    z-index: 4;
    height: 100px;
}

.bottom-mask--night,
body.dark .section {
    background-color: #191d28;
}

.bottom-mask--day,
body.light .section {
    background-color: #00443b;
}









@media only screen and (max-width: 767px) {
    .bottom-mask {
        height: 50px;
    }

    .falling-star {
        right: 5%;
        top: 10%;
        width: 100px;
    }
}


@media only screen and (max-width: 479px) {
    .moon,
    .sun {
        width: 100px;
        height: 100px
    }

    .scenario-wrap {
        height: 100vh;
    }	.clouds {

    margin-top: 100px;

}
}

@media only screen and (min-width: 480px) and (max-width: 599px) {
    .moon,
    .sun {
        width: 100px;
        height: 100px
    }

    .scenario-wrap {
        height: 100vh;
    }
	
		.clouds {

    margin-top: 100px;

}

}

@media only screen and (min-width: 599px) and (max-width: 767px) {
    .moon,
    .sun {
        width: 100px;
        height: 100px
    }

    .scenario-wrap {
        height: 90vh;
    }
}

@media only screen and (min-width: 768px) and (max-width: 992px) {
    .moon,
    .sun {
        width: 100px;
        height: 100px
    }

    .scenario-wrap {
        height: 100vh;
    }

    .bottom-mask {
        height: 70px;
    }

    .falling-star {
        right: 5%;
        top: 10%;
        width: 100px;
    }
}
