.jf-journey-final-scene {
    position: relative;
    aspect-ratio: 1440 / 563;
    overflow: hidden;
    isolation: isolate;
}

.jf-journey-final-scene__fallback,
.jf-journey-final-scene__vector {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

.jf-journey-final-scene__fallback {
    z-index: 0;
}

.jf-journey-final-scene__fallback img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: fill;
}

.jf-journey-final-scene__vector {
    z-index: 1;
    visibility: hidden;
}

.jf-journey-final-scene__vector svg {
    width: 100%;
    height: 100%;
    display: block;
}

.jf-journey-final-scene.is-vector-ready .jf-journey-final-scene__vector {
    visibility: visible;
}

.jf-journey-final-scene.is-vector-ready .jf-journey-final-scene__fallback {
    visibility: hidden;
}

.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-aircraft,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-jet-stream,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-jet-stream-return,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-helicopter,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-cloud-right-2,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-cloud-left-2,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-cloud-right-1,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-cloud-left-1,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-red-ball,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-palm-tree,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-water {
    will-change: transform;
}

.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-jet-stream,
.jf-journey-final-scene.is-motion-enabled.is-in-view .jf-scene-jet-stream-return {
    will-change: transform, opacity;
}

.jf-journey-final-scene.is-motion-enabled .jf-scene-aircraft {
    transform: translateX(-1224px) scaleX(1);
    transform-box: fill-box;
    transform-origin: center;
}

.jf-journey-final-scene.is-motion-enabled .jf-scene-jet-stream,
.jf-journey-final-scene.is-motion-enabled .jf-scene-jet-stream-return {
    fill: #C5E3EF;
    opacity: 0;
    transform-box: fill-box;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 34%, #000 100%);
    mask-image: linear-gradient(to right, transparent 0%, #000 34%, #000 100%);
}

.jf-journey-final-scene.is-motion-enabled .jf-scene-jet-stream {
    transform: translateX(-650px) scaleX(0);
    transform-origin: left center;
}

.jf-journey-final-scene.is-motion-enabled .jf-scene-jet-stream-return {
    transform: translate(650px, 78px) scaleX(0);
    transform-origin: right center;
    -webkit-mask-image: linear-gradient(to left, transparent 0%, #000 34%, #000 100%);
    mask-image: linear-gradient(to left, transparent 0%, #000 34%, #000 100%);
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-aircraft {
    animation: jf-scene-aircraft-cross 18s linear infinite paused;
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-jet-stream {
    animation: jf-scene-jet-stream-outbound 18s linear infinite paused;
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-jet-stream-return {
    animation: jf-scene-jet-stream-return 18s linear infinite paused;
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-helicopter {
    animation: jf-scene-helicopter-drift 12s linear infinite paused;
    transform-box: fill-box;
    transform-origin: center;
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-cloud-right-2 {
    animation: jf-scene-cloud-right-2 18s 0.4s ease-in-out infinite alternate paused;
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-cloud-left-2 {
    animation: jf-scene-cloud-left-2 22s 1.1s ease-in-out infinite alternate paused;
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-cloud-right-1 {
    animation: jf-scene-cloud-right-1 26s 0.7s ease-in-out infinite alternate paused;
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-cloud-left-1 {
    animation: jf-scene-cloud-left-1 31s 1.6s ease-in-out infinite alternate paused;
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-red-ball {
    animation: jf-scene-ball-pass 4.8s linear infinite paused;
    transform-box: fill-box;
    transform-origin: center;
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-palm-tree {
    animation: jf-scene-palm-sway 5.8s 0.8s ease-in-out infinite paused;
    transform-box: fill-box;
    transform-origin: 50% 100%;
}

.jf-journey-final-scene.is-motion-enabled.has-entered .jf-scene-water {
    animation: jf-scene-water-shift 7.2s 1.4s ease-in-out infinite paused;
    transform-box: fill-box;
    transform-origin: center;
}

.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-aircraft,
.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-jet-stream,
.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-jet-stream-return,
.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-helicopter,
.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-cloud-right-2,
.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-cloud-left-2,
.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-cloud-right-1,
.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-cloud-left-1,
.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-red-ball,
.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-palm-tree,
.jf-journey-final-scene.is-motion-enabled.has-entered.is-in-view .jf-scene-water {
    animation-play-state: running;
}

@keyframes jf-scene-aircraft-cross {
    0% { transform: translate(-1224px, 0) scaleX(1); }
    40% { transform: translate(581px, 0) scaleX(1); }
    45% { transform: translate(640px, 0) scaleX(1); }
    48% { transform: translate(640px, 78px) scaleX(0); }
    50% { transform: translate(640px, 78px) scaleX(-1); }
    90% { transform: translate(-1165px, 78px) scaleX(-1); }
    95% { transform: translate(-1224px, 78px) scaleX(-1); }
    98% { transform: translate(-1224px, 0) scaleX(0); }
    100% { transform: translate(-1224px, 0) scaleX(1); }
}

@keyframes jf-scene-jet-stream-outbound {
    0% {
        opacity: 0;
        transform: translateX(-650px) scaleX(0);
    }
    2%, 42% { opacity: 0.82; }
    40%, 48% { transform: translateX(-650px) scaleX(3.2); }
    48%, 100% { opacity: 0; }
}

@keyframes jf-scene-jet-stream-return {
    0%, 50% {
        opacity: 0;
        transform: translate(650px, 78px) scaleX(0);
    }
    52%, 92% { opacity: 0.82; }
    90%, 98% { transform: translate(650px, 78px) scaleX(3.2); }
    98%, 100% { opacity: 0; }
}

@keyframes jf-scene-helicopter-drift {
    0% { transform: translate(-90px, 2px) scaleX(-1); }
    46% { transform: translate(150px, -7px) scaleX(-1); }
    48% { transform: translate(155px, -7px) scaleX(0); }
    50% { transform: translate(150px, -7px) scaleX(1); }
    96% { transform: translate(-90px, 2px) scaleX(1); }
    98% { transform: translate(-95px, 2px) scaleX(0); }
    100% { transform: translate(-90px, 2px) scaleX(-1); }
}

@keyframes jf-scene-cloud-right-2 {
    from { transform: translateX(0); }
    to { transform: translateX(-1.2vw); }
}

@keyframes jf-scene-cloud-left-2 {
    from { transform: translateX(0); }
    to { transform: translateX(1.4vw); }
}

@keyframes jf-scene-cloud-right-1 {
    from { transform: translateX(0); }
    to { transform: translateX(-0.9vw); }
}

@keyframes jf-scene-cloud-left-1 {
    from { transform: translateX(0); }
    to { transform: translateX(1.1vw); }
}

@keyframes jf-scene-ball-pass {
    0% { transform: translate(-6px, 47px) rotate(0); }
    6.25% { transform: translate(15px, 28px) rotate(22.5deg); }
    12.5% { transform: translate(36px, 15px) rotate(45deg); }
    18.75% { transform: translate(57px, 8px) rotate(67.5deg); }
    25% { transform: translate(78px, 7px) rotate(90deg); }
    31.25% { transform: translate(99px, 12px) rotate(112.5deg); }
    37.5% { transform: translate(121px, 22px) rotate(135deg); }
    43.75% { transform: translate(142px, 39px) rotate(157.5deg); }
    50% { transform: translate(163px, 61px) rotate(180deg); }
    56.25% { transform: translate(142px, 39px) rotate(202.5deg); }
    62.5% { transform: translate(121px, 22px) rotate(225deg); }
    68.75% { transform: translate(99px, 12px) rotate(247.5deg); }
    75% { transform: translate(78px, 7px) rotate(270deg); }
    81.25% { transform: translate(57px, 8px) rotate(292.5deg); }
    87.5% { transform: translate(36px, 15px) rotate(315deg); }
    93.75% { transform: translate(15px, 28px) rotate(337.5deg); }
    100% { transform: translate(-6px, 47px) rotate(360deg); }
}

@keyframes jf-scene-palm-sway {
    0%, 100% { transform: rotate(0); }
    35% { transform: rotate(1.25deg); }
    70% { transform: rotate(-1deg); }
}

@keyframes jf-scene-water-shift {
    0%, 100% { transform: translateX(0) scaleX(1); }
    50% { transform: translateX(0.2vw) scaleX(1.01); }
}

@media (prefers-reduced-motion: reduce) {
    .jf-journey-final-scene .jf-scene-plane,
    .jf-journey-final-scene .jf-scene-aircraft,
    .jf-journey-final-scene .jf-scene-jet-stream,
    .jf-journey-final-scene .jf-scene-jet-stream-return,
    .jf-journey-final-scene .jf-scene-helicopter,
    .jf-journey-final-scene .jf-scene-cloud-right-2,
    .jf-journey-final-scene .jf-scene-cloud-left-2,
    .jf-journey-final-scene .jf-scene-cloud-right-1,
    .jf-journey-final-scene .jf-scene-cloud-left-1,
    .jf-journey-final-scene .jf-scene-red-ball,
    .jf-journey-final-scene .jf-scene-palm-tree,
    .jf-journey-final-scene .jf-scene-water {
        animation: none !important;
        transform: none !important;
        will-change: auto;
    }

    .jf-journey-final-scene .jf-scene-jet-stream {
        opacity: 1 !important;
        -webkit-mask-image: none !important;
        mask-image: none !important;
    }

    .jf-journey-final-scene .jf-scene-jet-stream-return {
        display: none !important;
    }
}
