/* Corporate Content pages only - if nav and subsequent/only block of content are same color, then alternate */
body[class*='-cc']:has(header.mode--light > .page-navigation):has(#content-zone #main > a:first-child + div.mode--light:last-child) #content-zone #main > a:first-child + div.mode--light:last-child .section,
body[class*='-cc']:has(header.mode--light > .page-navigation):has(#content-zone #main > a:first-child + a + div.mode--light:last-child) #content-zone #main > a:first-child + a + div.mode--light:last-child .section {
    background: #edf0f3;
}

body[class*='-cc']:has(header.mode--dark > .page-navigation):has(#content-zone #main > a:first-child + div.mode--dark:last-child) #content-zone #main > a:first-child + div.mode--dark:last-child .section,
body[class*='-cc']:has(header.mode--dark > .page-navigation):has(#content-zone #main > a:first-child + a + div.mode--dark:last-child) #content-zone #main > a:first-child + a + div.mode--dark:last-child .section {
background: #fff;
}

/* Team Section bugs - overcoded */
.mode--light .section--team .container--title,
.mode--dark .section--team .container--title {
    background-color: initial;
}

body[class*='-cc']:has(header.mode--light > .page-navigation):has(#content-zone #main > a:first-child + div.mode--light:last-child) #content-zone #main > a:first-child + div.mode--light:last-child .section .section--team .container--content {
    padding: 25px;
}

/* Team Section - social icons */
.section--team-col .card--profile .container--card-title .card--social .social-icon-list {
    flex-wrap: wrap;
    justify-content: flex-start;
    row-gap: .5em;
    column-gap: .5em;
}

.section--team-col .card--profile .container--card-title .card--social .social-icon-list li {
    padding: 0 !important;
}

/* All Heroes */
@media only screen and (max-width: 768px) {
    div[class*='Hero-Banners'] br {
        display: none;
    }
}

/* Hero Banner 1 */
div[class*='Hero-Banners-B-H-T-OptCTA'] .container--content .text.text.text.text.text hgroup {
    flex: 1 0 50%;
}

div[class*='Hero-Banners-B-H-T-OptCTA'] .container--content .text.text.text.text.text hgroup:not(:has(.subtitle)) > .title {
    margin-bottom: 0 !important;
}

/* Hero Banner 3 (Light only) */
.Hero-Banners-B-V-T-OptCTA-Light .container--link-icon .container--icon svg {

    fill: #0e497b;
}

/* Singular Content 2 - If there is nothing more than Intro Container text */
div[class*='Singular-Content-H-M-1Col-Text'] .container--title:not(:has(+ .row > .container--content .custom-wysiwyg)) {
    padding-bottom: 0 !important;
}

/* If .title is the only content in Intro Container, kill margin */
.container--title:has(hgroup > h2.title:only-child):not(:has(.custom-wysiwyg *)) h2.title {
    margin-bottom: 0 !important;
}

/* Intro Container - remove bottom margin from last element in Message Field */
/* .container--title .custom-wysiwyg *:last-child {
    margin-bottom: 0 !important;
} */

/* Subtitle */
.subtitle:not(:empty) {
    display: block;
}

div[class^='mode--']:not([class*="Hero"]) hgroup:has(>.subtitle) {
    display: flex;
    flex-direction: column;
}

div[class^='mode--']:not([class*="Hero"]) hgroup:has(>.subtitle) > .subtitle {
    margin-bottom: 20px;
}

div[class^='mode--']:not([class*="Hero"]) hgroup:has(>.subtitle) > .title {
    order: -1;
    margin-bottom: 5px;
}

/* Text Banner 1 */
div[class*='Banner-Text-HeadingMessage'] .custom-wysiwyg > a.btn.link:only-child {
    margin-top: 0;
}

/* Text Banner 2 */
    /* make all text white when img bg is selected */
div[class*='Banner-Text-HeadingMessageQuote'] .background--media .custom-wysiwyg * {
    color: #fff;
}

/* Counting Numbers */
.mode--primary .section--counting-numbers-3col:not(.background--media) .container--content * {
    color: #fff;
}

/* Empty Accordion */
.accordion:empty {
    padding: 0;
    flex-grow: 1;
}

.accordion:empty:has(+ a.link) {
    padding: 5px 0;
}

/* Hero Banner 2 */
div[class*='Hero-Banners-FullWidthBanner-TextLeftBg'] .subtitle {
    display: block !important;
    color: #fff;
}

div[class*='Hero-Banners-FullWidthBanner-TextLeftBg'] hgroup:has(.subtitle) {
    display: flex;
    flex-direction: column;
}

div[class*='Hero-Banners-FullWidthBanner-TextLeftBg'] hgroup:has(.subtitle) > h2.title {
    order: -1;
}

/* Hero Subtitle */
.container--hero .subtitle:not(:has(+ a.btn)) {
    margin-bottom: 0;
}

/* Carousel 2 */
    /* If there's picture but no title, remove border bottom; if it also has no text reduce opacity of unselected images */
div[class*='Carousel-H-M-4Col-ImageAboveFullWidthText'] li.slick-slide:has(div.container--media:only-child).slick-current {
    border-bottom-width: 0 !important;
}

div[class*='Carousel-H-M-4Col-ImageAboveFullWidthText']:not([class*="primary"]):has(.container--tab) div.slick-track:not(:has(li.slick-slide>p[id^='title'] )) > li.slick-slide:not(.slick-current) > .container--media img {
    opacity: .35;
}
    

/* Carousel 3 */
div[class*='Carousel-H-M-4Col-ImageAboveText'] .container--text p,
div[class*='Carousel-H-M-4Col-ImageAboveText'] .container--text li {
    font-size: 1em;
}

div[class*='Carousel-H-M-4Col-ImageAboveText'] .container--title {
    padding-bottom: 0;
}

@media only screen and (max-width: 575px) {
    div[class*='Carousel-H-M-4Col-ImageAboveText'] .container--text p,
    div[class*='Carousel-H-M-4Col-ImageAboveText'] .container--text li {
        font-size: .875em;
    }
}

/* Carousel 5 */
@media (min-width: 768px) {
    .column-reverse .section--carousel-img-2col .container--content {
        padding-right: 50px;
        padding-left: 15px;
    }
}


/* Insights 2 */
div[class*='Insights-H-M-3ColGrid-ImageAboveText'] .section--insights .container--content .container--desc:not(:has(+ .btn)) {
    margin-bottom: .72em;
}

div[class*='Insights-H-M-3ColGrid-ImageAboveText'] .section--insights .container--content p {
    font-size: 1em;
}

.Insights-H-M-3ColGrid-ImageAboveText-Dark .container--content:has(a.btn:only-child) {
    background: initial !important;
}

.section--insights-3col > .container > .row div.col-md-4 .container--wrapper .container--content a.btn {
    align-self: center;

}

@media (max-width: 576px) {
    div[class*='Insights-H-M-3ColGrid-ImageAboveText'] .container--wrapper {
        padding-left: 15px;
        padding-right: 15px;
    }
}


/* Team Sections */
.section--team-col .card--profile .container--card-title {
    flex-grow: 1;
}

/* Highlights <li> font-size doesn't match <p> */
.section--highlights-icon-flip .container .grid .grid-item .overlay li,
.section--textBanner-cta-col > .container .row:not(.container--title) div[class*=col-] .container--content li {
    font-size: 1em;
}


@media (max-width: 767px) {
    .section--highlights-icon-flip .container .grid .grid-item .overlay li,
    .section--textBanner-cta-col > .container .row:not(.container--title) div[class*=col-] .container--content p {
        font-size: .875em;
    }
}

/* Highlights 2 - If there is no text on back of card, disable flip */
div[class*='Highlights-H-M-3Col-IconAboveText'] .inner-overlay:not(:has(.custom-wysiwyg)):not(:has(a.btn)) {
    display: none;
}

div[class*='Highlights-H-M-3Col-IconAboveText'] .grid-item:hover:not(:has(.custom-wysiwyg)):not(:has(a.btn)) .content-card {
    transform: initial !important;
    opacity: initial !important;
}

/* Highlights 3 */
div[class*='Highlights-H-M-3ColGrid-Images']:not([class*="primary"])  .section--highlights-img-cover .container.grid-container .grid .grid-item .overlay * {
    color: #fff;
}

div[class*='Highlights-H-M-3ColGrid-Images'] .grid-item:not(:hover) .overlay:not(:has(.inner-overlay > .title-col)) {
    background: initial !important;
}

div[class*='Highlights-H-M-3ColGrid-Images'] .grid-item .inner-overlay:has(a.link:only-child) {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

div[class*='Highlights-H-M-3ColGrid-Images'] .grid-item:hover .inner-overlay a.btn {
    margin: 15px auto 0;
}

div[class*='Highlights-H-M-3ColGrid-Images'] .text--center .grid-item:hover .inner-overlay a.btn {
    margin: 15px auto 0;
}

div[class*='Highlights-H-M-3ColGrid-Images'] .text--right .grid-item:hover .inner-overlay a.btn {
    margin: 15px 0 0 auto;
}

/* Insights 1 */
div[class*='Insights-H-M-2Col-ImageLeftOfText'] div[class*='col-'][class*='-6']:has(.row .col-md-5:empty):not(:has(div[class*='col-'][class*='-7'])) {
    background: initial;
}

/* Lead Gen */
.section--lead-form .container>.row>div[class*=col-]:first-of-type img {
    object-fit: initial;
    font-family: initial;
    height: initial;
}

.section--lead-form .container > .row > div[class*=col-]:last-of-type {
    min-height: initial;
}

.section--lead-form .container--btn {
    margin-top: 25px;
}

/* Singular Content 1 */
div[class*='Singular-Content-B-H-M-OptCTA'] > .section:not(:has(.container--title)) {
    padding-bottom: 0 !important;
}

/* Singular Content 2 */
div[class*='Singular-Content-H-M-1Col-Text'] .container--title:has( + div .container--content:empty) {
   padding-bottom: 0 !important;
}

/* Singular Content 6 */
div[class*='Singular-Content-H-M-OptCTA-I'].mode--light .section--textBanner-cta-img .container--title {
    padding-top: 0;
}

/* Singular Content 11 (Light only) */
div[class*='Singular-Content-I-H-M-OptCTA-Light'] .container--title {
    padding-bottom: 0;
}

/* Singular Content 13/15 */
@media (max-width: 767px) {
    div[class^='mode--']:not([class*="light"]) .section--textBanner-cta-2col-overlay.section--textBanner-cta-2col-img-tall .container--content {
        padding: 25px;
    }
}

/* Singular Content 7/9 && 12/14 */
    /* Allow for smaller images to be inserted */
div[class*='Singular-Content-Image']:not([class*="-Overlay-"]) .section--textBanner-cta-2col .container--media img {
    margin-left: auto;
    margin-right: auto;
    width: initial;
    display: block;
}

div[class*='Singular-Content-N-I']:not([class*="-O-"]) .section--textBanner-cta-2col-img-tall .container--media img {
    margin-left: auto;
    margin-right: auto;
    width: initial;
    display: block;
}



/* Accordion Headers */
.text--center .accordion .card-header button {
    padding-left: 0 !important;
    text-align: left !important;
}

/* Multi-Item Content 1 */
div[class*='Multi-Item-Content-H-M-1Col-Accordion'] .container--title:has(> .custom-wysiwyg:empty) {
    padding-bottom: 20px;
}

/* Multi-Item Content 5/7 */
div[class*='Multi-Item-Content-H-M-3Col']:not([class*='Image']) .container--content:not(:has(a.btn)):has(.custom-wysiwyg *) {
    padding-bottom: 0 !important;
}

.section--textBanner-cta-col > .container .row:not(.container--title) div[class*=col-] .container--content p {
    margin-bottom: .72em;
}

.section--textBanner-cta-col > .container .row:not(.container--title) div[class*=col-] .container--content > a.btn.link {
    margin-top: 20px;
}

.section--textBanner-cta-col > .container .row:not(.container--title) div[class*=col-] .container--content > a.link--styled.link {
    margin-top: 10px;
}
/* Singular Content 6/11 */
div[class*='Singular-Content-I-H-M-OptCTA'] .container--media img,
div[class*='Singular-Content-H-M-OptCTA-I'] .container--media img  {
    width: auto;
    margin: 0 auto;
    display: block;
}

/* Resources */
.mode--light .section--resources .container--content,
.mode--dark .section--resources .container--content,
.mode--primary .section--resources .container--content {
    background-color: initial;
}

/* SEQ1 bug */
.Sequential-Content-H-M-2Col-OTI-Primary .count {
    color: #ffb81c !important;
}

div[class*='Sequential-Content-H-M-2Col-OTI']:not([class*="primary"]) .count {
    color: #0e497b !important;
}

/* Ordered List (Matches Microsoft Word) */
.custom-wysiwyg ol > li > ol {
    list-style: lower-alpha;
}

.custom-wysiwyg ol > li > ol > li > ol {
    list-style-type: lower-roman;
}

/* Disclosure - if only text */
.custom-wysiwyg > p.disclaimer:only-child {
    margin-top: 20px;
}


/* Message Field text */
.custom-wysiwyg:not(:has( + a.link)) *:has(+ p:empty:last-child),
.custom-wysiwyg:not(:has( + a.link)) > *:last-child {
    margin-bottom: 0;
}

.custom-wysiwyg ol ol,
.custom-wysiwyg ol ul,
.custom-wysiwyg ul ol,
.custom-wysiwyg ul ul {
    margin-bottom: .72em;
}

.custom-wysiwyg ol li::marker {
    font-weight: 500;
}

/* Sequential Content 1 */
div[class*='Sequential-Content-H-M-2Col'] .container--media {
    margin-top: 1rem;
}

/* Tables */
.custom-wysiwyg table td {
    border: 1px solid black;
    padding: 5px 10px;
    margin-bottom: 10px;
}

.custom-wysiwyg table {
  width: auto !important;
    margin-bottom: 10px;
}

@media only screen and (max-width: 768px) {
  .custom-wysiwyg table *:not(h1):not(h2):not(h3):not(h4):not(h5) {
    font-size: .85rem;
  }
}

@media only screen and (max-width: 576px) {
  .custom-wysiwyg table *:not(h1):not(h2):not(h3):not(h4):not(h5) {
    font-size: .55rem;
  }

  .custom-wysiwyg table *:not(strong) {
    font-weight: 500;
  }

  .custom-wysiwyg table td {
    padding: 2.5px 5px;
  }
}

/* Format <hr> */
.custom-wysiwyg hr {
    margin: 20px 0;
}


/* Side-by-Side Videos */
    /* If no description text */
.section--video-library .container--content.custom-wysiwyg:not(:has(> *:not(:empty))) {
    padding-top: 0px;
}


/* Footer - if last Section is Primary */
#content-zone:has(main#main .mode--primary:last-child) + #footer-zone .alert.mode--primary > .alert--section {
    background: #edf0f3;
}

#content-zone:has(main#main .mode--primary:last-child) + #footer-zone .alert.mode--primary * {
    color: #4a4a4a;
}

#content-zone:has(main#main .mode--primary:last-child) + #footer-zone .alert.mode--primary a {
    color: #0e497b;
}

#content-zone:has(main#main .mode--primary:last-child) + #footer-zone #page--footer {
    background: #fff;
}