/*
 * Content Section Styles
 */
.content-section {
    position: relative;
}

.content-section .section-media {
    align-self: center;
    margin-left: auto;
    display: inline-grid;
    justify-content: flex-end;
}
.content-section .section-content:not(:has(.content-buttons)) :last-child {
    margin-bottom: 0;
}
.content-section .section-content:only-child {
    text-align: center;
    margin: auto;
}
.content-section .section-content:only-child .content-buttons {
    justify-content: center;
}

/* Purple Top Gradient Effect */
.content-section.purple-top-gradient {
    overflow: hidden;
}
.content-section.purple-top-gradient::before {
    content: '';
    position: absolute;
    top: -250px;
    left: -250px;
    width: 500px;
    height: 500px;
    background: radial-gradient(circle, rgba(148, 115, 249, 0.3) 0%, rgba(148, 115, 249, 0.15) 40%, rgba(255, 255, 255, 0) 70%);
    pointer-events: none;
    z-index: 1;
}
.content-section.purple-top-gradient .container {
    position: relative;
    z-index: 2;
}

/* SVG X Decoration - Left Side */
.content-section.svg-x-left {
    overflow: hidden;
}
.content-section.svg-x-left .svg-x-decoration {
    position: absolute;
    left: -200px;
    top: 50%;
    transform: translateY(-50%);
    width: 512px;
    height: 677px;
    pointer-events: none;
    z-index: 1;
    opacity: 0.7;
}
.content-section.svg-x-left .svg-x-decoration svg {
    width: 100%;
    height: 100%;
}
.content-section.svg-x-left .container {
    position: relative;
    z-index: 2;
}

@media (min-width: 992px) {
    .content-section .section-content {
        max-width: 770px;
    }
    .content-section.flip-media .section-media {
        order: -1;
        margin-left: unset;
        margin-right: auto;
        justify-content: left;
    }
}
@media (max-width: 991px) {
    .content-section.purple-top-gradient::before {
        top: -180px;
        left: -180px;
        width: 360px;
        height: 360px;
    }
    .content-section.svg-x-left .svg-x-decoration {
        left: -250px;
        width: 400px;
        height: 528px;
    }
    .content-section .section-media {
        margin: 22px 0 0;
        justify-content: center;
        order: 1;
    }
    .content-section .section-content {
        text-align: center;
    }
    .read-more-content + .content-buttons {
    padding-top: 15px;
    }
}
@media (max-width: 575px) {
    .content-section.purple-top-gradient::before {
        top: -120px;
        left: -120px;
        width: 240px;
        height: 240px;
    }
    .content-section.svg-x-left .svg-x-decoration {
        left: -280px;
        width: 350px;
        height: 462px;
    }
    .content-section .section-content br {
        display: none;
    }
}