/*car animation*/
#moving-car {
    transition: transform 0.1s ease-out;
    will-change: transform;
}

/* Train Animation */
.train-container {
    overflow-x: hidden;
    position: relative;
    width: 100vw;
    margin-left: -150px;   
    padding-left: 0;
    padding-right: 0;
}

.train-wrapper {
    display: inline-block;
    white-space: nowrap;
    will-change: transform;
    transition: transform 0.05s linear; 
}

.train-img {
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

/* Street animation */
.street-container {
    position: relative;
    margin-top: auto;
    width: 100vw;
    left: 50%;
    transform: translateX(-50%);
    overflow: hidden;
    line-height: 0;
}

.street-wrapper {
    display: flex;
    align-items: flex-start;
    width: 100%;
}

.street-wrapper img {
    flex: 1;
    min-width: 0;
    height: auto;
    display: block;
    margin-right: -1px;
}

.car-wrapper-top, .car-wrapper-bottom {
    position: absolute;
    left: 0;
    width: 100vw;
    height: 0px;
    pointer-events: none;
    z-index: 10;
}