/*#intro {
    max-width: 40rem;
    margin: 1rem auto;
    text-align: center;
}
*/

#scrolly {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: none;
    padding: 1rem;
}

    #scrolly > * {
        -webkit-box-flex: 1;
        -ms-flex: 1;
        flex: 1;
    }

div.article {
    position: relative;
    padding: 0 1rem;
    width: 100%;
    max-width: 100%;
}

@media (min-width: 992px) {
    div.article {
        max-width: 50%;
    }
}

div.article {
    position: relative;
    padding-left: 30px; /* Adjust space for timeline */
}

    div.article::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 10px;
        left: .5rem;
        background-color: var(--branding-red);
    }

div.figure {
    position: -webkit-sticky;
    position: sticky;
    width: 100%;
    max-width: 50%;
    margin: 0;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    background-color: none;
    z-index: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

@media (min-width: 992px) {
    div.figure {
        display:  flex !important;
    }

}

div.figure > div {
    text-align: center;
    padding: 1rem;
    position: relative;
    color: #fff;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    /*//*/
    position: -webkit-sticky; /* For Safari */
    position: sticky;
    top: 0; /* Adjust based on your header size or desired offset */
    height: 100vh; /* Adjust if needed */
    display: flex;
    align-items: center; /* Centers the image vertically */
    justify-content: center; /* Centers the image horizontally */
}

    div.figure img {
        opacity: 0;
        max-width: 600px;
        width: 100%; 
        height: auto;
        transition: opacity .5s ease;
    }

.rightContent {
    font-size: 36px;
    text-align: left;
    display: flex;
    margin: 0;
}

div.figure > div img {
    position: absolute;
    left: calc(8%);
    top: 0;
}

.step {
    margin: 0 auto ;
    background-color: none;
    color: var(--body-color);
    padding: 1rem;
    display: flex;
    align-items: center;
}

@media (max-width: 991.98px) {

    .step:last-child {
        margin-bottom: 0;
    }

    .step.in-view {
        background-color: none;
        color: #3b3b3b;
    }

    .step div {
        max-width: 100%;
        margin: 0 0 0 1rem;
        padding-right: 0;
        padding-left: 0;
    }

    @media (min-width: 992px) {
        .step div {
            max-width: 80%;
            margin: 0 auto;
            padding-right: 2rem;
        }
    }

    .step h3 {
        font-size: 36px;
        font-weight: normal;
        text-align: left;
    }

    .step p {
        font-size: 19px;
        text-align: left;
        font-weight: normal;
    }
}


.scroll__graphic {
    position: sticky;
    top: 0;
    height: 100vh;
}

.step::before {
    content: '';
    position: absolute;
    left: calc(1px - 0.5rem  );
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: var(--branding-red);
}
