.zafinEmmRates {
  box-shadow: none;
  border-radius: 1rem;
  background-color: #fff;
  position: relative;
  bottom: 0
}
.zafinEmmRates:has(>.banner-optimal-blue) {
  top: 20px;
  bottom: auto
}
.zafinEmmRates .zem-error-container {
  display: none;
  margin-bottom: 1.5rem
}
.zafinEmmRates .zem-error-container .zem-error-container-wrapper {
  background-color: #ffe9ea;
  padding: 1rem;
  border-top: .25rem solid #cf2a36;
  border-radius: .25rem
}
.zafinEmmRates .zem-error-container .zem-error-container-wrapper .zem-error-header-wrapper {
  gap: .75rem;
  padding-bottom: .25rem
}
.zafinEmmRates .zem-error-container .zem-error-container-wrapper .zem-error-icon-bg {
  background: url(../../../../../../../etc.clientlibs/usbank/clientlibs/clientlib-site/resources/images/svg/icon_alert-triangle-red.svg) 0 .125rem/1.25rem no-repeat;
  width: 1.25rem;
  height: 1.25rem
}
.zafinEmmRates .zem-error-container .zem-error-container-wrapper .zem-error-content-body {
  margin-left: 1.5rem
}
.zafinEmmRates .zem-error-container .zem-error-container-wrapper .zem-error-content-body .zem-error-content-body-text {
  margin: 0
}
.zafinEmmRates .zafinEmmTable {
  width: 22rem;
  border-radius: 1rem;
  box-shadow: 0 24px 48px -12px rgba(0,0,0,.2)
}
.zafinEmmRates .table-headline {
  padding: 1.5rem;
  background: #001e79;
  border-radius: 1rem 1rem 0 0;
  text-align: center
}
.zafinEmmRates .table-headline .table-headline-text {
  color: #fff;
  margin-bottom: 0
}
.zafinEmmRates .table-body {
  padding: 1.5rem
}
.zafinEmmRates .hlbcob-rate-container,
.zafinEmmRates .table-body .z-emm-rates {
  align-items: center
}
.zafinEmmRates .table-body .z-emm-rates p {
  margin-bottom: 1rem
}
.zafinEmmRates .table-body .z-emm-rates .zemm-rate-value {
  font-family: Circular,Arial,Helvetica,sans-serif;
  font-size: 4.625rem;
  font-weight: 700;
  line-height: 4rem;
  color: #001e79
}
.zafinEmmRates .table-body .z-emm-rates .zemm-rate-type {
  color: #001e79;
  display: inline
}
.zafinEmmRates .banner-optimal-blue .table-headline {
  background: #003cc8
}
.zafinEmmRates .banner-optimal-blue .table-headline div,
.zafinEmmRates .banner-optimal-blue .table-headline p,
.zafinEmmRates .banner-optimal-blue .table-headline span {
  margin-bottom: 0
}
.zafinEmmRates .hlbcob-rate-container .hlbcob-rate-apr {
  align-items: baseline;
  margin-bottom: .5rem
}
.zafinEmmRates .hlbcob-rate-container .hlbcob-num {
  margin-bottom: 0;
  font-size: 3.75rem
}
.zafinEmmRates .hlbcob-rate-container .hlbcob-rate-apr-text {
  font-size: 1.25rem;
  margin-left: .5rem;
  margin-bottom: 0
}
.zafinEmmRates .hlbcob-table-disclaimer .caption {
  font-weight: 400
}
.banner_rates .zafinEmmRates {
  position: absolute;
  box-shadow: 0 24px 48px -12px rgba(0,0,0,.2);
  z-index: 9
}
.banner_rates .zafinEmmRates .zafinEmmTable {
  width: auto;
  box-shadow: none
}
@media only screen and (max-width:41.9375rem) {
  .zafinEmmRates .zafinEmmTable {
    width: auto
  }
  .zafinEmmRates .hlbcob-rate-container .hlbcob-num {
    font-size: 3.5rem
  }
  .banner_rates .zafinEmmRates {
    position: relative
  }
}
@media (max-width:65.9375rem) {
  .banner_rates .zafinEmmRates:has(>.banner-optimal-blue) {
    position: relative
  }
}
@media screen and (min-width:42rem) and (max-width:74rem) {
  .zafinEmmRates .table-body {
    text-align: center
  }
}
@media (min-width:42rem) {
  .zafinEmmRates:has(>.banner-optimal-blue) {
    max-width: 22rem
  }
  .banner_rates .zafinEmmRates .banner-optimal-blue .zafinEmmTable {
    max-width: 22rem
  }
}
.z-emm-rates .skeleton {
  width: 20rem;
  display: inline-block;
  height: 4rem
}