/* Two Column — two colored columns with per-column bg + text colour.
   Content is anchored toward the centre divider (capped width + divider-side
   padding) so it stays together on wide screens; extra width becomes symmetric
   colour padding instead of an ever-growing centre gap. Figma node 380:162. */
.two-column {
    display: flex;
    flex-wrap: wrap;
}
.two-column__col {
    flex: 1 1 50%;
    min-width: 320px;
    padding: 92px 0;
    display: flex;
    align-items: center;
}
.two-column__col--left { justify-content: flex-end; }
.two-column__col--right { justify-content: flex-start; }
.two-column__inner {
    width: 100%;
    box-sizing: border-box;
}
.two-column__col--left .two-column__inner { max-width: 660px; padding: 0 93px 0 64px; }
.two-column__col--right .two-column__inner { max-width: 720px; padding: 0 64px 0 92px; }

.two-column__heading {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: clamp(64px, 9vw, 128px);
    line-height: 1;
    margin-bottom: 25px;
}
.two-column__body {
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    font-size: clamp(20px, 2.1vw, 30px);
    line-height: 1.25;
}
.two-column__col--right .two-column__body {
    font-size: clamp(22px, 2.5vw, 36px);
    margin-bottom: 26px;
}

.two-column__caption { display: block; }
.two-column__cap-primary {
    display: block;
    font-family: 'Poppins', sans-serif;
    font-weight: 700;
    color: #4C2160;
}
.two-column__cap-secondary {
    display: block;
    font-style: italic;
    font-size: 14px;
    color: #4C2160;
}

@media (max-width: 767px) {
    .two-column__col {
        flex: 1 1 100%;
        justify-content: flex-start;
        padding: 56px 0;
    }
    .two-column__col--left .two-column__inner,
    .two-column__col--right .two-column__inner { max-width: none; padding: 0 24px; }
}
