.flex-content.banner {
    position: relative;
    /* padding: 13rem 0 2.5rem 0; */
    padding: 13rem 0 5rem 0;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.flex-content.banner:has([data-theme="dark"]) {
    background-color: var(--bs-primary);
}
.flex-content.banner:has([data-theme="dark"])::after {
    content: "";
    display: block;
    position: absolute;
    inset: 0;
    z-index: 2;
    pointer-events: none;
    background-image: linear-gradient(45deg, rgba(var(--bs-primary-rgb),.8) 0%, rgba(var(--bs-primary-rgb),1) 100%);
}
.flex-content.banner:has([data-theme="dark"]):has([data-bg="true"])::after {
    background-image: linear-gradient(to right, rgba(10,22,40,.95), rgba(10,22,40,.8), rgba(10,22,40,.6));
}

.main-body:has(.flex-content.intro) .flex-content.banner:has([data-theme="dark"]) {
    background: linear-gradient(90deg,rgba(0, 48, 107, 1) 50%, rgba(11, 65, 121, 1) 100%);
}
.main-body:has(.flex-content.intro) .flex-content.banner:has([data-theme="dark"])::after {
    display: none;
}

.flex-content.banner:has([data-theme="light"]) {
    background-color: var(--bs-light);
}

.flex-content.banner .bg {
    z-index: 1;
}
.flex-content.banner .container {
    position: relative;
    z-index: 3;
}

.flex-content.banner .main-title {
    line-height: 1;
}


.flex-content.banner:has([data-theme="dark"]) .text {
    color: #fff;
    max-width: 45rem;
}

.flex-content.banner .ctas {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    margin-top: 2rem;
}




.flex-content.banner:has([data-theme="dark"]) .badge {
    --modified-bg: color-mix(in srgb, var(--secondary-blue) 10%, transparent);
    --modified-border: color-mix(in srgb, var(--secondary-blue) 25%, transparent);
    background-color: var(--modified-bg);
    border: solid 1px var(--modified-border);
    color: var(--secondary-blue);
}
.flex-content.banner:has([data-theme="dark"]) .badge svg {
    width: 1rem;
    height: 1rem;
}