.bg-cover-scroll {
    display: block;
    position: relative;
}
.bg-cover-scroll * {
    z-index: 1;
    position: relative;
}

.card-b .card {
    height: 100%;
    max-width: 390px;
    margin: auto;
}
.card {
    position: relative;
    background-color: #FFF;
    -webkit-box-shadow: -1px -4px 38px -2px rgba(0, 0, 0, 0.20);
    -moz-box-shadow: -1px -4px 38px -2px rgba(0, 0, 0, 0.20);
    box-shadow: -1px -4px 38px -2px rgba(0, 0, 0, 0.20);
}
.acard .card::after {
    content: '';
    position: absolute;
    display: block;
    transition: opacity 0.2s ease-in-out;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    opacity: 0;
    -webkit-box-shadow: -1px -4px 38px -2px rgba(0, 0, 0, 0.20);
    -moz-box-shadow: -1px -4px 38px -2px rgba(0, 0, 0, 0.20);
    box-shadow: -1px -4px 38px -2px rgba(0, 0, 0, 0.20);
}
.acard .card:hover::after {
    opacity: 1;
}

.acard .card:hover .fa {
    animation: tranimation .3s;
}

@keyframes tranimation {
    0% {
        color: #fff;
        opacity: 0;
        transform: translateX(-30px);
    }
    100% {
    }
}

/* layers */

.layer-sh-v:after {
    position: absolute;
    content: "";
    width: 60%;
    height: 100%;
    background: linear-gradient(to left, #111112, transparent);
    display: block;
    z-index: 9;
    top: 0;
    right: 0;
    opacity: 1;
}

.layer-sh-v2:after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(9,5,19,1) 0%,rgba(9,5,19,0) 33%,rgba(9,5,19,0) 50%,rgba(9,5,19,0) 76%,rgba(9,5,19,1) 100%);
    display: block;
    z-index: 9;
    top: 0;
    left: 0;
    opacity: 1;
}

.layer-custom:after {
    opacity: 0.4;
}
.layer-custom-b {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.layer-custom-4 {
    opacity: 0.2;
    background: bottom center no-repeat;
    background-size: contain;
}
.layer-custom-3 {
    background: rgb(153,212,224); /* Old browsers */
    background: -moz-linear-gradient(-45deg, rgba(153,212,224,1) 0%, rgba(119,189,88,1) 100%);
    background: -webkit-linear-gradient(-45deg, rgba(153,212,224,1) 0%,rgba(119,189,88,1) 100%);
    background: linear-gradient(135deg, rgba(153,212,224,1) 0%, rgba(153,212,224,1) 50%, rgba(119,189,88,1) 100%);
       
    background: linear-gradient(135deg, rgba(153,212,224,1) 0%, #5db19ffc 50%, rgba(119,189,88,1) 100%);
    opacity: 0.95;
    -webkit-mask-image: -webkit-gradient(linear, left bottom, right top, from(rgba(0,0,0,0.1)), color-stop(0.25, rgba(0,0,0,0.75)), color-stop(0.5, black), color-stop(0.67, black), color-stop(0.85, rgba(0,0,0,0.9)), to(rgba(0,0,0,0.85)));
}
.layer-custom-5 {
    background: top right no-repeat;
    background-size: contain;
}
.layer-custom-6 {
    background: -moz-linear-gradient(top, rgba(125,185,232,0) 0%, rgba(0,0,0,0.6) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(125,185,232,0) 0%,rgba(0,0,0,0.6) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(125,185,232,0) 0%,rgba(0,0,0,0.6) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

@media only screen and (min-width: 1200px) {
    .sb-hd {
        display: block!important;
        height: 21px!important;
    }
}

/* text */
.text-darkgrey, a.text-darkgrey:hover, a.text-darkgrey:visited{
	color: #1e1e23;
}
.text-grey, a.text-grey:hover, a.text-grey:visited{
	color: #999999;
}
.text-white, a.text-white:hover, a.text-white:visited{
	color: #FFF !important;
}
.text-black, a.text-black:hover, a.text-black:visited{
	color: #24282D;
}

/* video link */

.videoLink {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 508px;
}
.videoLink span {
    display: block;
    position: relative;
    height: 100%;
    overflow: hidden;
    width: 100%;
    top: 0;
}
.videoLink video {
    height: 100%;
    width:auto;
    position:absolute;
    left:0;
}
.videoLink span:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
    background: -moz-linear-gradient(left, rgba(30,30,35,1) 0%, rgba(30,30,35,0) 25%, rgba(30,30,35,0) 75%, rgba(30,30,35,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(30,30,35,1) 0%,rgba(30,30,35,0) 25%,rgba(30,30,35,0) 75%,rgba(30,30,35,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(30,30,35,1) 0%,rgba(30,30,35,0) 25%,rgba(30,30,35,0) 75%,rgba(30,30,35,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.videoLink span:after {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\f01d";
    position: absolute;
    left: 50%;
    top: 50%;
    color: white;
    font-size: 2.6em;
    opacity: 0.7;
    transform: translate(-50%, -50%);
}

/*STRATE PROFESSIONNELS */
.bg-professionnels{
	background-image: url('/CMS/uploads/FR/images/pages/homepage-rzf/background-pro-1.jpg');
}

/*STRATE STORES*/
.bg-magasins{
	background: url('/CMS/uploads/FR/images/pages/homepage-rzf/location-background.jpg');
	background-size: cover;
}

/* Securite predictive */

#alert-secu .vis-col {
    min-height:340px;
    order:2;
    align-items: center;
    justify-content: center;
}
.bg-special {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    background-size: cover;
    background-repeat: no-repeat;
}
.sticky-alert {
    width: 180px;
    position: fixed;
    z-index: 999;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background-color: #1E1E23;
}
.sticky-alert a {
    text-decoration: none!important;
}
.sticky-alert .small {
    line-height: 1.3em;
    display: block;
}

@media screen and (min-width: 768px) {
    #alert-secu .vis-col {
        justify-content: flex-end;
    }
    .bg-special {
        left: 50%;
    }
    .layer-sh-v2:after {
        background: linear-gradient(to right, rgba(9,5,19,1) 0%,rgba(9,5,19,0) 33%,rgba(9,5,19,0) 50%,rgba(9,5,19,0) 100%);
        opacity: 1;
    }
    .pt-sm-5, .py-sm-5 {
        padding-top: 5rem!important;
    }
}

/* ULYS */

.btn-coyote.btn-ulys{
   background-image: linear-gradient(120deg, #eb9b3f 0%, #ffcd19 100%);
   border:none;
   color:#fff;
}
.btn-coyote.btn-ulys:hover, .btn-coyote.btn-ulys:focus, .btn-coyote.btn-ulys:hover, .btn-coyote.btn-ulys:active{
   background-image: linear-gradient(120deg, #eb9b3f 0%, #ffcd19 100%)!important;
   border:none;
   color:#fff;
}
@media (min-width: 992px) {
.ulys-bg {
    background: #fff center right no-repeat;
    background-size: contain;
    position: relative;
}
}

/* SLICK press slide v2 */

.slick-slide {
    margin: 0px 20px;
}

.slick-slide img {
    width: 100%;
}

.slick-slider
{
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
            user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;
    display: block;
}
.slick-track:before,
.slick-track:after
{
    display: table;
    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;
    height: auto;
    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}

#videoDiv {
padding:0;
height:620px;
}
#videoBlock {
position:relative;
}
#videoBlock video {
margin-left:-15%;
}

.play-icon {
    font-size: 1.6em;
    vertical-align: bottom;
}
/*
body.modal-open .main-m-ctn {
    padding-right: 0;
}
*/
/*modal fullscreen */
.modal.modal-fullscreen {
    top: 50px;
}
.modal.modal-fullscreen .modal-dialog,
.modal.modal-fullscreen .modal-content {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.modal.modal-fullscreen .modal-dialog {
  margin: 0;
  width: 100%;
  animation-duration:0.6s;
}
.modal.modal-fullscreen .modal-content {
  border: none;
  -moz-border-radius: 0;
  border-radius: 0;
  -webkit-box-shadow: inherit;
  -moz-box-shadow: inherit;
  -o-box-shadow: inherit;
  box-shadow: inherit;
  /* change bg color below */
 /* background:#1abc9c; */
}
.modal.modal-fullscreen.force-fullscreen {
  /* Remove the padding inside the body */
}
.modal.modal-fullscreen.force-fullscreen .modal-body {
  padding: 0;
}
.modal.modal-fullscreen.force-fullscreen .modal-header,
.modal.modal-fullscreen.force-fullscreen .modal-footer {
  left: 0;
  position: absolute;
  right: 0;
}
.modal.modal-fullscreen.force-fullscreen .modal-header {
  top: 0;
}
.modal.modal-fullscreen.force-fullscreen .modal-footer {
  bottom: 0;
}
.modal.modal-fullscreen .modal-footer {
  border-top: 1px solid #1E1E23;
}
.modal.modal-fullscreen .modal-footer button {
    background: #000;
    border-color: #1E1E23;
    color: #fff;
}

.footerInfos a {
color:#64e61e;
}

.intro {
    padding: 0 1.4rem;
    margin-bottom: 2.6rem;
    font-size: 1.4rem;
    text-transform: uppercase;
    line-height: 1.6rem;
}
@media only screen and (min-width: 1200px) {
    .intro {
        font-size: 1.8rem;
        line-height: 2.3rem;
    }
}
.intro:not(.nbr) {
    border-left: 1px solid #64E61E;
}
p.intro { 
    display: inline-block;
}
.intro p:not([class]) {
    font-size: 1.6rem;
}
.r-bn a img {
    max-width: 60px;
    max-height: 60px;
}
.spe-vd-bg {
    background: -moz-linear-gradient(left, rgba(30,30,35,0.92) 0%, rgba(30,30,35,1) 50%, rgba(30,30,35,1) 100%);
    background: -webkit-linear-gradient(left, rgba(30,30,35,0.92) 0%,rgba(30,30,35,1) 50%,rgba(30,30,35,1) 100%);
    background: linear-gradient(to right, rgba(30,30,35,0.92) 0%,rgba(30,30,35,1) 50%,rgba(30,30,35,1) 100%);
}
.app-bg {
    background: #FFF url(/CMS/uploads/FR/images/pages/homepage-rzf/produit-2_V2.png) right bottom no-repeat;
    background-size: 28rem;
}
@media only screen and (max-width: 991px) {
    .app-bg {
        background-size: 24rem;
    }
}
@media only screen and (max-width: 767px) {
    .app-bg {
        background-size: 28%;
    }
}
.layer-sh-v:after {
    position: absolute;
    content:"";
    width:60%;
    height:100%;
    background: linear-gradient(to left, #262629, transparent);
    display: block;
    z-index: 9;
    top: 0;
    right:0;
    opacity: .5;
}
@media only screen and (min-width: 992px) {
    .limitation-bg {
        background: #fff url(/CMS/uploads/FR/images/pages/homepage-rzf/limitation-1.jpg) center right no-repeat;
        background-size: contain;
    }
}

.layer-custom, .layer-custom * {
    position: relative;
    z-index: 1;
}
.layer-custom:before {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    opacity: .2;
    z-index: 0;
    background-image: linear-gradient(to right top, #071323, #004265, #007887, #00ae72, #52de14);
}
.layer-custom:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    z-index: 0;
    opacity: .9;
    background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(30,30,35,0.9) 100%);
    background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(30,30,35,0.9) 100%);
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(30,30,35,0.9) 100%);
}

/* hp app */

.bg-txt-tr {
    display: inline-block;
    background: transparent;
    color: rgba(255, 255, 255, .8);
    letter-spacing: -3px;
    text-shadow: rgba(255, 255, 255, 0.5) 1px 0px 0px;
}
.bg-txt-tr-cv {
    color: rgba(255, 255, 255, .5);
    background: url(/CMS/uploads/FR/images/pages/homepage/bg_soldes_winter.jpg) no-repeat fixed;
    background-position: center bottom;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    -webkit-text-fill-color: rgba(255, 255, 255, .5);
    -webkit-background-clip: text;
}
.bg-txt-tr.green {
    color: rgba(100, 230, 30, .35);
    -webkit-text-fill-color: rgba(100, 230, 30, .35);
}
.bg-txt-tr.green2 {
    color: rgba(100, 230, 30, .55);
    -webkit-text-fill-color: rgba(100, 230, 30, .55);
}
.bg-txt-tr.red {
    -webkit-text-fill-color: rgba(250, 0, 60, .25);
}
.bg-img-url {
    background: url(/CMS/uploads/FR/images/pages/app_new/hero-app-2.jpg) no-repeat fixed;
    background-position: center bottom;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
}

a.acard {
    text-decoration: none;
    color: inherit;
}

@media only screen and (max-width: 991px) {
    .bg-img-url {
       background-attachment: scroll;
    }
}
.layer-custom-2 {
    background: -moz-linear-gradient(-45deg, rgba(31,63,89,0) 0%, rgba(31,63,89,0.85) 33%, rgba(31,63,89,1) 66%, rgba(30,30,35,0.99) 100%);
    background: -webkit-linear-gradient(-45deg, rgba(31,63,89,0) 0%,rgba(31,63,89,0.85) 33%,rgba(31,63,89,1) 66%,rgba(30,30,35,0.99) 100%);
    background: linear-gradient(135deg, rgba(31,63,89,0) 0%,rgba(31,63,89,0.85) 33%,rgba(31,63,89,1) 66%,rgba(30,30,35,0.99) 100%);
    position: absolute;
    opacity: .10;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.layer-custom-2.loader {
    background: -moz-linear-gradient(left, rgba(17, 18, 19, 0) 0%, rgba(49, 52, 56, 0.85) 33%, rgb(47, 52, 62) 66%, rgb(33, 35, 39) 100%);
    background: -webkit-linear-gradient(left,rgba(17, 18, 19, 0) 0%, rgba(49, 52, 56, 0.85) 33%, rgb(47, 52, 62) 66%, rgb(33, 35, 39) 100%);
    background: linear-gradient(to right, rgba(17, 18, 19, 0) 0%, rgba(49, 52, 56, 0.85) 33%, rgb(47, 52, 62) 66%, rgb(33, 35, 39) 100%);
    position: absolute;
    opacity: 1;
    height: 100%;
    width: 300%;
    left: 100%;
    opacity: 0;
    animation-name: load1;
    animation-duration: 2.1s;
    z-index: 99;
}
@keyframes load1 {
    0%   {left: -200%;opacity: 1;}
    50%   {left: -200%;opacity: 1;}
    100% {left: 100%;opacity: 0;}
}
.app-vs-block {
    transform: scale(1);
    animation-name: load2;
    animation-duration: 2.5s;
}
@keyframes load2 {
    0%   {transform: scale(.8);}
    50%   {transform: scale(.8);}
    100% {transform: scale(1);}
}
.logo-loader {
    display: block; 
    position: absolute;
    left: -50%;
    top: 50%;
    margin-left: -57px;
    margin-top: -14px;
    opacity: 0;
    z-index: 99;
    animation-name: load3;
    animation-duration: 2.1s;
}
@keyframes load3 {
    0%   {opacity: 1;left: 50%;}
    30%   {opacity: 1;}
    70% {opacity: 0;left: 50%;}
    100% {opacity: 0;left: -50%;}
}
.app-vs {
    max-height: 260px;
}

.pt {
    line-height: 1em;
}
.pt1 {
    font-size: 6.2em;
    margin-left: -0.01em;
}
.pt2 {
    font-size: 4.3em;
}
.pt3 {
    font-size: 2.5em;
}

.pt-res {
    font-size: .8em;
}

@media screen and (min-width: 992px) {
    .app-vs-block {
        position: absolute;
    }
    .pt1 {
        font-size: 8.2em;
        margin-top: -0.1em;
        margin-left: -0.02em;
    }
    .pt2 {
        font-size: 5.6em;
        margin-left: -0.02em;
    }
    .pt3 {
        font-size: 3.23em;
        margin-left: 0.01em;
    }
    .app-vs {
        max-height: 600px;
    }
    
    .pt-res {
        font-size: 1em;
    }

}

.trafficBg, .trafficBg:after {
    position: absolute;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.trafficBg {
    background: url(/CMS/uploads/FR/videos/VIDEO_TRAFIC_poster.jpg);
    background-size: auto 100%;
    background-position: right;
}
.trafficBg:after {
    content: "";
    background: -moz-linear-gradient(left, rgba(30,30,35,1) 40%, rgba(30,30,35,0) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(30,30,35,1) 40%,rgba(30,30,35,0) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(30,30,35,1) 40%,rgba(30,30,35,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
#trafficBg_vid {
    position: absolute;
    right: 0;
    top: 0%;
    height: 100%;
}

@media screen and (min-width: 992px) {
    .roads {
        background: url('/CMS/uploads/FR/images/pages/homepage-rzf/roads.svg');
        background-repeat: no-repeat;
        background-position-x: right;
    }
}
.car1 {
    position: absolute;
    top: 173px;
    left: 171px;
    width: 30px;
    height: 20px;
    background: url("/CMS/uploads/FR/images/pages/homepage-rzf/car_right.svg") no-repeat;
    background-size: contain;
}
.car2 {
    position: absolute;
    top: 59px;
    left: 140px;
    width: 25px;
    height: 18px;
    background: url("/CMS/uploads/FR/images/pages/homepage-rzf/red_car.svg") no-repeat;
    background-size: contain;
}
.car_move {
    transition:transform 4s ease;
    z-index:5;
}
.car_move.moved {
    transform: translate(111px, -60px);
}
.car_move_2 {
    transition:transform 3s ease;
    z-index:6;
}
.car_move_2.moved {
    transform: translate(-85px, -49px);
}
.paneld {
    position: absolute;
    top: 53px;
    left: 191px;
    width: 75px;
    height: 67px;
    background: url("/CMS/uploads/FR/images/pages/homepage-rzf/panel_danger.svg") no-repeat;
    background-size: contain;
}
.panel_blink {
    z-index:7;
    transition: transform .6s ease;
    -webkit-transform: scale(1);
       -moz-transform: scale(1);
        -ms-transform: scale(1);
         -o-transform: scale(1);
            transform: scale(1);
}
.panel_blink.moved {
    animation-name: blink;
    animation-duration: 1s;
    animation-iteration-count: 7;
}
@keyframes blink {
    0% {
        -webkit-transform: scale(1);
   -moz-transform: scale(1);
    -ms-transform: scale(1);
     -o-transform: scale(1);
        transform: scale(1);
    }
    49% {
        -webkit-transform: scale(0.8);
   -moz-transform: scale(0.8);
    -ms-transform: scale(0.8);
     -o-transform: scale(0.8);
        transform: scale(0.8);
    }
    99% {
           -webkit-transform: scale(1);
   -moz-transform: scale(1);
    -ms-transform: scale(1);
     -o-transform: scale(1);
        transform: scale(1);
    }
}

@media screen and (max-width: 1199px) {
    .car1 {
        left: 71px;
    }
    .car2 {
        left: 40px;
    }
    .paneld {
        left: 91px;  
    }
}

@media screen and (min-width: 1200px) {
.snw {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  opacity: .8;
  -webkit-filter: blur(2px);
-moz-filter: blur(2px);
-o-filter: blur(2px);
-ms-filter: blur(2px);
filter: blur(2px);
}

.snw-layer {
  position: absolute;
  left: -100px;
  right: -100px;
  -webkit-animation: wind 5s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite alternate;
          animation: wind 5s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite alternate;
  -webkit-perspective: 100px;
          perspective: 100px;
  -webkit-transform: translateX(-50px);
      -ms-transform: translateX(-50px);
          transform: translateX(-50px);
}

.snw-fall {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2000px;
  background: url(/CMS/uploads/FR/images/pages/homepage/app/snow-light.png);
  -webkit-animation: fall 10s linear infinite;
          animation: fall 10s linear infinite;
}

.snw-layer:nth-child(1) {
  -webkit-animation-duration: 35s;
          animation-duration: 35s;
}

.snw-layer:nth-child(1) .snw-fall {
  background: url(/CMS/uploads/FR/images/pages/homepage/app/snow-blur.png);
  -webkit-transform: translateZ(25px);
          transform: translateZ(25px);
  -webkit-animation-name: fallblur;
          animation-name: fallblur;
  width: 4000px;
  left: -2000px;
}

.snw-layer:nth-child(2) {
    opacity: 0.6;
  -webkit-animation: wind 5s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite alternate;
          animation: wind 5s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite alternate;
}

.snw-layer:nth-child(2) .snw-fall {
  background: url(/CMS/uploads/FR/images/pages/homepage/app/snow-medium.png);
  -webkit-animation-duration: 20s;
          animation-duration: 20s;
}

.snw-fall:nth-child(3) {
    opacity: 0.4;
  -webkit-animation-duration: 10s;
          animation-duration: 10s;
  background-size: 250px;
}

.snw-fall:nth-child(2) {
  -webkit-animation-duration: 16s;
          animation-duration: 16s;
  background-size: 500px;
}

.snw-layer:nth-child(4) .snw-fall {
  -webkit-animation-duration: 5s;
          animation-duration: 5s;
  -webkit-transform: translateZ(50px);
          transform: translateZ(50px);
  -webkit-animation-name: falllight;
          animation-name: falllight;
}
}

@-webkit-keyframes fall {
  from {
    -webkit-transform: translateY(-1000px);
            transform: translateY(-1000px);
  }
}

@keyframes fall {
  from {
    -webkit-transform: translateY(-1000px);
            transform: translateY(-1000px);
  }
}

@-webkit-keyframes falllight {
  from {
    -webkit-transform: translateY(-1000px) translateZ(50px);
            transform: translateY(-1000px) translateZ(50px);
  }
}

@keyframes falllight {
  from {
    -webkit-transform: translateY(-1000px) translateZ(50px);
            transform: translateY(-1000px) translateZ(50px);
  }
}

@-webkit-keyframes fallblur {
  from {
    -webkit-transform: translateY(-1000px) translateZ(25px);
            transform: translateY(-1000px) translateZ(25px);
  }
}

@keyframes fallblur {
  from {
    -webkit-transform: translateY(-1000px) translateZ(25px);
            transform: translateY(-1000px) translateZ(25px);
  }
}

@-webkit-keyframes wind {
  to {
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
  }
}

@keyframes wind {
  to {
    -webkit-transform: translateX(50px);
            transform: translateX(50px);
  }
}

.transition {
    background-image: url(/CMS/uploads/FR/images/pages/homepage/raod-dawn.jpg);
}

@media screen and (min-width: 768px) {

.fadeinfrb1 {
    transform: scale(1.1) translate(40px, 0);
    animation-name: fadeinfrb1;
    animation-duration: 2s;
    position: relative;
    z-index: 4;
}

 .fadeinfrb2 {
    transform: scale(1.1) translate(-40px, 0);
    animation-name: fadeinfrb2;
    animation-duration: 2.6s;
    position: relative;
    z-index: 5;
}
 .fadeinfrb3 {
    transform: scale(1.1) translate(-5px, -50px);
    animation-name: fadeinfrb3;
    animation-duration: 2.3s;
    position: relative;
    z-index: 5;
}

.typewriter {
  overflow: hidden; /* Ensures the content is not revealed until the animation */
  white-space: nowrap; /* Keeps the content on a single line */
  margin: 0 auto; /* Gives that scrolling effect as the typing happens */
  letter-spacing: .1em; /* Adjust as needed */
  animation: 
    typing 6s steps(29, end),
    blink-caret 1s step-end infinite;
}


}

@keyframes fadeinfrb1 {
    0%   {transform: translate(0, 80px);opacity: 0.5;}
    50%   {transform: translate(0, 80px);opacity: 0.5;}
    100% {}
}
@keyframes fadeinfrb2 {
    0%   {transform: scale(.9) translate(0, 120px);opacity: 0;}
    50%   {transform: scale(.9) translate(0, 120px);opacity: 0;}
    100% {}
}
@keyframes fadeinfrb3 {
    0%   {transform: scale(.9) translate(0, 120px);opacity: 0;}
    50%   {transform: scale(.9) translate(0, 120px);opacity: 0;}
    100% {}
}

/* The typing effect */
@keyframes typing {
  0% { width: 0 }
  30% { width: 0 }
  100% { width: 100% }
}