/*
 * Styles for Section 2 (Corrected Vertical Layout)
 */

/* 1. Main section container now stacks and aligns content to the top-left */
#section2 {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 8vh;
    padding: 10vh 8vw; /* Updated to 7vh top padding */
    background-color: #dfedf1;
    overflow: hidden; /* Keep overflow hidden on the section */
}



/* --- Top Text Block --- */
#section2 .mask-container {
    max-width: 80ch;
    overflow: hidden;
}

#section2 .content-wrapper {
    transform: translateX(-101%);
    transition: transform 0.9s cubic-bezier(0.2, 1, 0.3, 1);
}

#section2.active .content-wrapper {
    transform: translateX(0);
}

#section2 .section-title {
    font-family: "Josefin Sans", sans-serif;
    letter-spacing: -2px;
    font-weight: 900;
    font-size: 5vw;
    color: #354747;
    line-height: 1.1;
    margin: 0;
    text-align: left;
}

#section2 .section-paragraph {
    font-family: "Josefin Slab", serif;
    font-size: 1.1rem;
    line-height: 1.6;
    color: #354747;
    margin-top: 25px;
    text-align: left;
    max-width: 700px;
}


/* --- Marquee Styles --- */
.marquee-container {
    width: 60vw;
    display: flex;
    flex-direction: column;
    gap: 30px;
    overflow-x: hidden; /* Clip the overflowing rows horizontally */
    transform: translateY(-30px);
}

.marquee-row {
    display: flex;
    flex-shrink: 0;
    width: fit-content;
    will-change: transform;
}

.marquee-row img {
    height: 140px;
    margin: 15px 20px;
    flex-shrink: 0;
    opacity: 0.7;
}


/* --- Responsive Styling --- */
@media screen and (max-width: 780px) {
    #section2 {
        gap: 5vh; /* Reduce gap on smaller screens */
    }
    #section2 .section-title {
        max-width: 300px; 
        font-size: 8vw;
    }
    #section2 .section-paragraph {
        max-width: 400px;
        font-size: 0.9rem;
    }
    .marquee-container{
        width: 85vw;
    }
    .marquee-row img {
    height: 80px;
    margin: 8px 8px;
    flex-shrink: 0;
    opacity: 0.7;
    }
}