/*! 04/15/2024 Copyright 2024 USAA. All Rights Reserved. */
.card-icon {
    font-size: 48px;
    width: 48px;
    margin-bottom: 2px;
    line-height: 55px;
}

/* .callout .callout-icon .callout-icon-image {
    height: 48px;
    filter: brightness(1.49) contrast(0.6) hue-rotate(-12deg);
} */

.banner-content.callout .callout-icon {
    margin-left: 36px;
    border-right: none;
}

.banner-content.callout .callout-icon .callout-icon-image {
    width: 60px;
}

.cdo .fifty-fifty-wrapping-image {
    /* padding-top: 272px; */
}

.cdo .fifty-fifty-image.image-desktop {
    height: 100%;
}

.table-footnote {
    margin-left: 32px;
    margin-top: 24px;
}

.cdo .cdo-accordion .accordion-section :last-child.accordion-row.bg-white {
    box-shadow: 0 3px 2px -2px #d9d9d8;
}

.cdo .cdo-accordion .accordion-section .accordion-row.bg-white {
    border-left: 1px solid #d0cfce;
    border-right: 1px solid #d0cfce;
}

.sup-holder {
    white-space: nowrap;
}

.article-cards .card .card-img-wrap {
    aspect-ratio: 259/170;
}

.article-cards .card .card-label {
    min-height: 62px;
}

.bank-links-farm .link-farm-links-wrapper {
    display: flex;
    flex-wrap: wrap;
    margin-top: 40px;
    row-gap: 64px;
}

.bank-links-farm .link-farm {
    flex-basis: 100%;
    display: flex;
    flex-wrap: wrap;
    column-gap: 100px;
    row-gap: 64px;
}

.bank-links-farm .link-farm-category li {
    margin-top: 12px;
}

.flex-order-1 {
    order: 1;
}

.flex-order-2 {
    order: 2;
}

.flex-order3 {
	order: 3;
}

.cdo .card-pack.left-card-pack {
    justify-content: left;
}

.cdo .card-pack.three-pack .card.card-naked:first-child {
    padding-left: 24px;
    width: calc((100% / 3) - 7px);
}

.cdo .card-pack.three-pack .card.card-naked:nth-child(2) {
    width: calc((100% / 3) + 14px);
}

.cdo .card-pack.three-pack .card.card-naked:last-child {
    padding-right: 24px;
    width: calc((100% / 3) - 7px);
}

.cdo .card-pack.three-pack .card.card-naked.card-desktop:first-child {
    padding-left: 2px;
}

.cdo .card-pack.three-pack .card.card-naked.card-desktop:nth-child(2) {
    padding-left: 25px;
    padding-right: 30px;
}

.cdo .card-pack.two-pack .card-naked:nth-child(2) {
    border-right: 0;
}

.cdo .btn-link {
    font-family: "Gotham Narrow", Arial, sans-serif;
    font-weight: 400;
    font-size: 1em;
    line-height: 24px;
}

/* .cdo .block-wrapper .cta-link {
    font-size: 22px;
    line-height: 32px;
} */

.cdo .glossary-close {
    opacity: 1;
    text-decoration: underline;
}

/*.cdo .modal-bottom-close {
    font-size: 0.9em;
    font-weight: 700;
    position: absolute;
    left: 50% !important;
    text-align: center;
    width: 15em;
    margin: -9999px 0 0 -7.5em;
    z-index: 99999;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-top: 0;
    height: 2em;
}

.cdo .modal-bottom-close:focus {
    margin-top: 0;
    text-decoration: none !important;
}*/

.cdo .banner .banner-img {
    width: 100%;
    height: 100%;
}

.cdo .banner.slim .banner-img {
    aspect-ratio: 503/334;
}

.cdo .banner.slim .banner-content {
    padding: 32px 64px;
}

.cdo .banner.slim .banner-sub-heading,
.cdo .banner.slim .banner-sub-info {
    max-width: 900px;
}

.cdo .banner.calendar .banner-content {
    padding: 72px 0 72px 62px;
}

.cdo .banner.calendar .banner-sub-heading {
    font-size: 45px;
}

.cdo .image-mobile {
    display: none;
}

.mobile-app-section .banner-img {
    aspect-ratio: 417/454;
    max-width: 417px;
    height: 100%;
    width: 100%;
}

/* START OF A/B TESTS */
.cdo .banner.banner-fifty-fifty.bg-white .banner-content {
    width: 68%;
    padding-top: 35px;
    padding-bottom: 32px;
}

.cdo .banner.banner-fifty-fifty.slim.bg-white .banner-content {
    width: 78%;
	padding-bottom: 64px;
}

.banner-reveille-border {
    height: 6px;
    background: linear-gradient(270deg, #FAC705 0%, #FFFFFF 100%);
}

.banner-reveille-border-shifted {
    height: 6px;
    background: linear-gradient(270deg, #FAC705 0%, #FFFFFF 70%);
}

.offer-slim-callout {
    padding: 12px 64px 0;
}

.offer-tall-callout,
.offer-slim-callout .banner-callout {
    display: flex;
    /* align-items: center; */
    background: #E6F1FA;
}

.offer-tall-callout .banner-callout {
    flex: 1;
}

.offer-tall-callout .banner-image {
    position: relative;
    margin: 27px 0 20px 40px;
    height: 8.1em;
}

.offer-tall-callout img.offer-image.image-desktop {
    height: auto;
    width: 209px;
}

.offer-tall-callout img.offer-image.image-mobile {
    width: auto;
    height: 179px;
}

.offer-slim-callout .callout-content {
    display: contents;
}

.offer-tall-callout .callout-content {
    padding: 56px 56px 56px 22px;
}

.offer-slim-callout .offer-desktop {
    margin-top: 4px;
}

.offer-slim-callout .offer-mobile {
    display: none;
}

.offer-slim-callout .offer-banner {
    width: 7.375em;
    height: auto;
}

.offer-slim-callout .offer-banner-mobile {
    display: none;
    color: #12395B;
    font-family: 'Gotham Narrow', Arial, sans-serif;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 19px;
    position: relative;
    overflow: hidden;
    z-index: 0;
    flex: 1;
}

.offer-tall-callout .offer-banner {
    position: absolute;
    top: 85px;
    left: -6%;
    height: auto;
    width: 9.6875em;
}

.offer-slim-callout .banner-dollar {
    color: #12395B;
    font-family: "Gotham XNarrow", "Gotham Narrow", Arial, sans-serif;
    font-size: 37px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 27px;
}

.offer-tall-callout .banner-dollar {
    font-size: 31px;
    line-height: 27px;
}

.offer-slim-callout .banner-dollar {
    display: none;
}

.offer-tall-callout .offer-headline,
.offer-slim-callout .offer-headline {
    color: #12395B;
    font-family: "Gotham Narrow";
    font-size: 24px;
    font-weight: 500;
    letter-spacing: 0;
    line-height: 32px;
}

.offer-slim-callout .offer-headline {
    padding: 8px 16px 8px 16px;
    flex: 7;
}

.offer-tall-callout .body-copy {
    display: inline-block;
    margin-bottom: 0;
}

.offer-tall-callout .offer-cta,
.offer-slim-callout .offer-cta {
    color: #00668A;
    font-family: "Gotham Narrow";
    font-size: 16px;
    font-weight: 300;
    letter-spacing: 0;
    line-height: 24px;
    padding-left: 0;
    display: inline-block;
}

.offer-slim-callout .offer-cta {
    padding: 12px 28px 12px 0;
    text-align: right;
    min-width: 125px;
    flex: 1;
    align-self: center;
}
h2.slim-banner-sub-heading {
    font-size: 38px;
    line-height: 52px;
    width: 100%;
    font-weight: 500;
    margin-bottom: 36px;
	max-width: unset;
}

.slim-banner-sub-heading.offer-banner {
    z-index: 0;
    display: inline-block;
    position: relative;
    overflow: hidden;
    text-transform: uppercase;
    font-size: 29px;
    font-weight: bold;
    padding: 8px 1.5em 8px 14px;
    min-width: 160px;
    margin-bottom: 12px;
}

.offer-slim-callout .offer-banner-mobile:before,
.offer-slim-callout .offer-banner-mobile:after,
.slim-banner-sub-heading.offer-banner:before,
.slim-banner-sub-heading.offer-banner:after {
    content: "";
    position: absolute;
    z-index: -1;
    left: 0;
    right: 0;
    height: 100%;
    background: #FAC705;
}

.offer-slim-callout .offer-banner-mobile:before,
.slim-banner-sub-heading.offer-banner:before {
    top: 0;
    transform: skew(-45deg);
    transform-origin: top;
}

.offer-slim-callout .offer-banner-mobile:after,
.slim-banner-sub-heading.offer-banner:after {
    bottom: 0;
    transform: skew(45deg);
    transform-origin: bottom;
}

.cdo .card-pack .bg-reveille {
    background-color: #E6F1FA;
    border-bottom: 6px solid #FAC705;
}

.cdo .card-pack.two-pack .bg-reveille {
    min-height: 250px;
}


.cdo .card-pack .bg-reveille.step-card {
    background-color: white;
    border: 1px solid #12395B;
    padding-top: 34px;
}

.cdo .card-pack .bg-reveille .card-header .h6 {
    font-family: 'Gotham Narrow', Arial, sans-serif;
    font-size: 18px;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 24px;
    text-align: left;
}

.cdo .card-pack .bg-reveille.step-card::before {
    content: '';
    width: 90px;
    border-top: 8px solid #FAC705;
    left: calc(50% - 90px/2);
    position: absolute;
    top: 21px;
}

.cdo .card-pack .bg-reveille .step-card-heading {
    margin-bottom: 22px;
}

/* END OF A/B TESTS */

/* FUNDING OFFER */
.banner-img.banner-fade {
    -webkit-mask-image: linear-gradient(263.88deg, #FFFFFF 60%, rgba(255, 255, 255, 0) 75%);
    mask-image: linear-gradient(263.88deg, #FFFFFF 60%, rgba(255, 255, 255, 0) 75%);
}

.banner-img.banner-slim-fade {
    -webkit-mask-image: linear-gradient(263.88deg, #FFFFFF 50%, rgba(255, 255, 255, 0) 70%);
    mask-image: linear-gradient(263.88deg, #FFFFFF 60%, rgba(255, 255, 255, 0) 100%);
}

.cdo .funding-offer .banner-image {
    position: relative;
    flex: 0 0 168px;
    margin-right: 32px;
}

.cdo .funding-offer .banner-image .ribbon {
    top: -32px;
    position: absolute;
    width: 168px;
    height: 168px;
}

.cdo .funding-offer .callout-title {
    color: #003A5E;
}

.cdo .funding-offer .cta-btn.cta-md {
    min-width: 115px;
    padding: 14px 14px;
}

.cdo .funding-offer .callout-body {
    display: contents;
}

.funding-woman-img {
    display: none;
}

.cdo .card-pack.two-pack .card:where(:not(:nth-child(3), :nth-child(4))) {
    margin-bottom: 32px;
}
.cdo .card-pack.accounts .card-label {
    font-size: 18px;
    font-weight: 500;
}

.cdo .card-pack.two-pack .body-copy {
    font-size: 15px;
}
.callout .callout-icon.lt-blue .callout-icon-image {
    filter: brightness(0) saturate(100%) invert(41%) sepia(18%) saturate(849%) hue-rotate(154deg) brightness(90%) contrast(88%);
}
.cdo .callout.lt-blue {
    background-color: #E6F1FA !important;
}
.cdo .card-pack.two-pack .card {
    margin-bottom: 48px;
    margin-left: 30px;
    width: calc(50% - 15px);
}
.cdo .banner .banner-img-wrap {
    width: 50%;
}
.cdo .card-pack.three-pack.side-icon .card.card-naked {
    border-right: none;
    padding-left: 0;
    padding-right: 30px;
    width: calc(100% / 3);
}
.cdo .card-pack.side-icon .card-header {
    display: flex;
    flex-direction: row;
}
.cdo .card-pack.side-icon .card-header .card-icon {
    width: 48px;
    position: relative;
}
.cdo .card-pack.side-icon .card-header .card-right {
    text-align: left;
	padding-left: 15px;
}
.cdo .card-pack.side-icon .card-header .card-right .card-label {
    margin-top: 0;
}
.cdo .card-pack.side-icon .side-icon-img {
    margin-right: 10px;
    flex: 0 0 48px;
}
.cdo .card-pack.side-icon .side-icon-img.guage {
    flex: 0 0 56px;
}
.cdo .card-pack.side-icon .card-header .side-icon-img.guage .card-icon {
    width: 56px;
    height: 56px;
    top: -15px;
}
.cdo .card-pack.side-icon .side-icon-img.transfer {
    flex: 0 0 56px;
}
.cdo .card-pack.side-icon .card-header .side-icon-img.transfer .card-icon {
    width: 56px;
    height: 56px;
    top: -3px;
}
.cdo .card-pack.side-icon .card-header .card-right .card-label {
    margin-top: 0;
    font-size: 20px;
    line-height: 20px;
    color: #12395B;
    font-weight: 500;
}
.cdo .card-pack.three-pack .card {
    overflow: hidden;
}
.cdo .section-heading:not(:last-child), .cdo .section-sub-heading:not(:last-child) {
    margin-bottom: 32px;
}
.cdo .banner.banner-functional .banner-sub-heading {
     margin-bottom: 42px;
}

.cdo .section-header {
    max-width: 970px;
}
.cdo .savings .modal-footer {
    margin: 0px 24px;
}
.cdo .savings .tableheading {
    font-family: "Gotham Narrow", Arial, sans-serif;
    font-weight: 400;
    font-size: 1em;
    line-height: 24px;
    color: #3e4042;
    margin-bottom: 12px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 0 4px;
    flex-wrap: wrap;
  }
  
  .cdo .savings .tableheading .body-copy {
    width: 100%;
  }
  
  .cdo .savings .tableheading .tableheading-left {
    font-weight: 500;
    text-align: left;
    width: 50%;
    padding-right: 12px;
  }
  
  .cdo .savings .tableheading .tableheading-right {
    text-align: right;
    width: 50%;
    padding-left: 12px;
  }
  
  .cdo .savings .table-td {
    padding-top: 12px;
    padding-bottom: 12px;
  }
  
  .cdo .savings .modal-body {
    background-color: #ececeb;
  }
  
  .cdo .savings table {
    margin-bottom: 30px;
  }

  .cdo .modal-container {
    min-width: unset;
  }

.cdo .popover.width{
    max-width: 900px;
}
.banner-ribbon {
  z-index: 0;
  display: inline-block;
  position: relative;
  overflow: hidden;
  font-size: 14px;
  font-weight: 900;
  padding: 0 2em 0 30px;
  font-family: "Gotham Narrow", Arial, sans-serif;
  padding-left:6px;
  padding-right:15px;
}

.banner-ribbon:before,
.banner-ribbon:after {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0;
  right: 0;
  height: 100%;
  background: #FAC705;
}

.banner-ribbon:before {
  top: 0;
  transform: skew(-45deg);
  transform-origin: top;
}

.banner-ribbon:after {
  bottom: 0;
  transform: skew(45deg);
  transform-origin: bottom;
}

.cdo .ribbon-desc {
  font-family: "Gotham Narrow", Arial, sans-serif;
  font-weight: 400;
  font-size: 1em;
  line-height: 24px;
  color: #12395B;
  margin-top: 12px;
  margin-bottom: 32px;
}
.cdo .fifty-fifty-wrapping-text {
    width: 50%;
    padding: 64px;
}
.ribbon-offer {
    font-size: 46px;
    font-weight: 500;
    padding: 0 2em 0 64px;
    margin-right: 8px;
    margin-left: -64px;
    line-height: normal;
 }
.banner-img.banner-fade-img {
    -webkit-mask-image: linear-gradient(263.88deg, #FFFFFF 50%, rgba(255, 255, 255, 0) 100%);
    mask-image: linear-gradient(268.88deg, #FFFFFF 50%, rgba(255, 255, 255, 0) 100%);
}
.cdo .text-black {
    color: #000000 !important
}
.cdo .modal-bottom-close {
    font-size: 0.9em;
    font-weight: 700;
    position: absolute;
    left: 50% !important;
    text-align: center;
    width: 15em;
    margin: -9999px 0 0 -7.5em;
    z-index: 99999;
    background: #fff;
    border: 1px solid #e5e5e5;
    border-top: 0;
    height: 2em;
}

.cdo .modal-bottom-close:focus {
    margin-top: 0;
    text-decoration: none !important;
}

.cdo .fifty-fifty.ladder {
    background-color: #ffff;
}
.cdo .fifty-fifty-image {
    height: 100%;
	width: 100%;
}

.cdo .combo-offer {
	padding: 0px;
}

.cdo .banner .hero-banner {
    width: 50%;
}
.cdo .fifty-fifty-wrapping-text .reach-card{
    width: calc(50% - 15px);
    padding: 64px;
	padding-right: 12px;
}
.cdo .card-pack-horizontal.side-icon .card.card-naked {
    border-right: none; 
	padding-left: 0px;
}