/* ================================ STORY STYLE ================================ */
#story {
    margin-top: 12vh;
    min-height: auto !important;
    height: auto !important;
    justify-content: flex-start;
    padding-top: 2rem;
    padding-bottom: 2rem;
}

#story .two-columns {
    position: relative;
    display: flex;
    flex-direction: row;
    gap: 2rem;
    align-items: flex-start; /* TOP ALIGN */
    margin-bottom: 8vh;
}

.story-image, .story-text {
    flex: 1 1 0;
    position: static;
    margin: 0 2vw 0 2vw;
}

.story-image img { 
    width: 100%; 
    border-radius: 8px; 
}

.story-text {
    border: 1px solid var(--color-text);
    padding-top: 3rem;
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 2rem;
    border-radius: 8px;
    background: var(--color-bg);
    min-width: 300px;
    max-width: 650px;
    position: relative;
}

@media (max-width: 1100px) {
    .story-text::before {
        left: 50% !important;
        transform: translate(-50%, -50%) !important;
        text-align: center !important;
        width: auto !important;
        max-width: 90% !important;
        min-width: 0 !important;
        right: auto !important;
    }

    .story-text { position: relative !important; }
}

@media (max-width: 700px) {
    .story-text { 
    padding-top: 2.2rem !important;
    position: relative !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin-top: 0 !important;
    }
}

@media (max-width: 600px) {
    #story .two-columns {
        flex-direction: column !important;
        align-items: center !important;
    }
}