@charset "UTF-8";
/* ------------------------------------------------------------------------------------------ */
/* DO NOT EDIT GLOBAL.CSS!!
/* Use _custom.scss for custom styles, this is compiled by _index.scss into global.css
/* ------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------------------ */
:root {
  --small-gap: 1.6rem;
  --gap: 5rem;
  --big-gap: 6rem;
}

@media only screen and (min-width: 768px) {
  :root {
    --small-gap: 1.6rem;
    --gap: 5rem;
    --big-gap: 11rem;
  }
}
/* General */
h2 {
  font-size: 42px !important;
}

h3 {
  font-size: 30px !important;
}

.et_pb_row {
  width: 90%;
}

.et_pb_button {
  padding-top: 1vw;
  padding-bottom: 1vw;
}
.et_pb_button:hover {
  padding-top: 1vw !important;
  padding-bottom: 1vw !important;
  background-color: #1c3256 !important;
  border: 1px solid #fff !important;
  color: #fff !important;
}

/* Make buttons on cards full width if absolutely positioned. */
.container-bt-full {
  position: relative !important;
}
.container-bt-full .et_pb_button_module_wrapper, .container-bt-full .et_pb_button_module_wrapper .et_pb_button {
  width: 100%;
}

.bt-full {
  width: 100%;
  text-align: center;
}

.bt-wide {
  width: 100%;
  max-width: 300px;
  text-align: center;
}

/* Full-viewport iframe utility for maps and external embeds. */
.map-wrapper,
.iframe-fill-screen {
  position: relative;
  width: 100%;
  min-height: 100vh;
  min-height: 100dvh;
  overflow: hidden;
}

.map-wrapper iframe,
.iframe-fill-screen iframe,
iframe.iframe-fill-screen {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 100vh;
  min-height: 100dvh;
  border: 0;
}

.hover-white:hover,
body #page-container .et_pb_section .et_pb_button_0.hover-white:hover {
  color: #fff !important;
}

.flex-row-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.flex-col-center {
  display: flex;
  align-items: center;
  justify-content: center;
}

.mh-205 {
  min-height: 205px;
}

.entry-content ul {
  margin-left: 20px;
}

.entry-content ul li {
  margin-bottom: 20px;
}

ul.fa-check-list {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
}
ul.fa-check-list li {
  position: relative;
  padding-left: 1.75em;
}
ul.fa-check-list li::before {
  content: "\f00c";
  font-family: "Font Awesome 7 Pro";
  font-weight: 900;
  color: currentColor;
  position: absolute;
  top: 0.15em;
  left: 0;
  line-height: 1;
}

sup {
  font-size: 0.8rem;
}

/* Header / Menu */
.no-hero.et_secondary_nav_enabled #page-container #top-header,
.no-hero #main-header {
  background: #0f99d6 !important;
}

#top-menu .sub-menu {
  background-color: #eaecf5 !important;
}
#top-menu .sub-menu a {
  color: #1C3256 !important;
  font-size: 15px !important;
}

#et-top-navigation nav > ul > li > a {
  padding-bottom: 20px !important;
}

@media only screen and (max-width: 980px) {
  html.lvgea-mobile-menu-open,
  body.lvgea-mobile-menu-open {
    overflow: hidden;
    height: 100%;
  }
  body.lvgea-mobile-menu-open {
    position: fixed;
    width: 100%;
    left: 0;
    right: 0;
  }
  .mobile_nav .et_mobile_menu {
    max-height: calc(100vh - 126px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior: contain;
  }
  .header-wrapper .et_pb_row {
    display: flex;
    align-items: center;
    flex-direction: row;
    justify-content: center;
  }
  .header-wrapper .et_pb_row > .et_pb_column {
    width: 50% !important;
  }
  .header-wrapper .et_pb_row > .et_pb_column:first-child {
    margin-bottom: 0;
  }
  .header-wrapper .et_mobile_menu {
    position: fixed;
    top: 126px;
    left: 0;
    width: 100vw;
    padding: 40px 6px;
    background: #eaecf5 !important;
  }
  .header-wrapper .et_mobile_menu a {
    color: #1A1A1A;
  }
  .mobile_nav.opened .et_mobile_menu {
    display: block;
  }
  /* Styling for the default divi header / Menu */
  #main-header > .container {
    width: 100%;
    padding: 15px 5% 20px;
    margin-top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  #main-header > .container #logo {
    max-width: 158px;
    width: 100%;
    height: auto;
    max-height: 100%;
  }
  #main-header > .container #mobile_menu {
    background: #eaecf5 !important;
  }
  #main-header > .container #mobile_menu a {
    color: #1A1A1A;
  }
  #main-header > .container .logo_container {
    position: relative;
  }
  #main-header > .container .logo_container .logo_helper {
    display: none !important;
  }
  #main-header > .container #et-top-navigation {
    padding-top: 10px !important;
  }
  #main-header > .container #et-top-navigation .mobile_menu_bar {
    padding-bottom: 0;
  }
  #main-header > .container #et-top-navigation .mobile_menu_bar:after, #main-header > .container #et-top-navigation .mobile_menu_bar:before {
    color: #ffffff !important;
  }
  #main-header > .container #et-top-navigation #et_mobile_nav_menu {
    padding-left: 20px;
  }
  #main-header > .container #et-top-navigation #mobile_menu {
    top: 80px;
  }
}
/* Div Counter hacks */
/* add content before number counter value */
.pd-counter-before.hash-symbol .percent-value:before {
  content: "#";
}

/* add content after number counter value */
.pd-counter-after.mplus .percent-value:after {
  content: "M+";
}

.pd-counter-after.plus .percent-value:after {
  content: "+";
}

/* add content before and after number counter value */
.pd-counter-both .percent-value:before {
  content: "XXX";
}

.pd-counter-both .percent-value:after {
  content: "XXX";
}

/* Bio cards */
.bio-card__title {
  font-size: 36px !important;
  font-weight: 800 !important;
  color: #1C3256 !important;
  line-height: 38px;
  padding-bottom: 10px;
}

.bio-card__position {
  font-size: 26px !important;
  line-height: 30px;
  font-weight: 400 !important;
  color: #0F99D6 !important;
}

/* Bio pages */
.bio-title {
  margin-bottom: 30px;
}

.bio-contact {
  padding-bottom: 4px;
}

.bio-full-text {
  margin-top: 40px;
}

/* Contact forms */
.gfield input, .nf-field-element input {
  padding: 20px !important;
  font-size: 16px !important;
}

.gform-button, .gform_button {
  padding: 22px !important;
  font-size: 16px !important;
  cursor: pointer;
  background-color: #0f99d6;
  border: none;
  color: #fff;
}

.gform_confirmation_message {
  color: #FFF !important;
}

.gfield--type-html h3 {
  margin-top: 30px;
}

.gform_submission_error {
  font-size: 18px !important;
}

.gform_confirmation_wrapper .gform_confirmation_message {
  color: #000 !important;
  font-weight: bold !important;
}

.sign-up-form .nf-form-fields-required, .sign-up-form label {
  display: none;
}

input.ninja-forms-field[type=submit] {
  padding: 20px 3vw !important;
  font-size: 16px !important;
  cursor: pointer;
  background-color: #0f99d6;
  border: none;
  color: #fff;
}

.nf-field-element h3 {
  margin-top: 30px;
}

.nf-form-fields-required {
  display: none;
}

/* footer */
.et-l--footer {
  font-size: 15px;
}
.et-l--footer a {
  color: #fff !important;
}

/* investor directory */
.pd-directory-container {
  padding-left: 0 !important;
}

/* PD stats table plugin customization */
:root {
  --pd-stats-blue: #2a6ebb;
  --pd-stats-dark: #303030;
  --pd-stats-mid: #666666;
  --pd-stats-light: #f5f7fa;
  --pd-stats-border: #e0e0e0!important;
  --pd-stats-row-border: #e0e0e0!important;
  --pd-stats-header-bg: #f6f5f4;
  --pd-stats-title-bg: #f5f5f4;
}

.pd_stats_table.alt-rows .pd-stats-table tbody tr:nth-child(even) > th,
.pd_stats_table.alt-rows .pd-stats-table tbody tr:nth-child(even) > td,
.pd-stats-table.alt-rows .pd-stats-table tbody tr:nth-child(even) > th,
.pd-stats-table.alt-rows .pd-stats-table tbody tr:nth-child(even) > td {
  background-color: rgba(15, 153, 214, 0.08) !important;
}
.pd_stats_table.alt-rows .pd-responsive-table-mobile__item:nth-child(even),
.pd-stats-table.alt-rows .pd-responsive-table-mobile__item:nth-child(even) {
  background-color: rgba(15, 153, 214, 0.08);
}

.pd-stats-table__table {
  border: 1px solid #e1e1e1 !important;
}

/* Color utilities */
.dark,
.text-dark {
  color: #1A1A1A !important;
}

.primary,
.text-primary {
  color: #1C3256 !important;
}

.secondary,
.text-secondary {
  color: #f7e36e !important;
}

.light-blue,
.text-light-blue {
  color: #0f99d6 !important;
}

.grey,
.text-grey {
  color: #3C4050 !important;
}

.light-grey,
.text-light-grey {
  color: #eaecf5 !important;
}

.gold,
.text-gold {
  color: #cfa041 !important;
}

.blue,
.text-blue {
  color: #255f84 !important;
}

.blue-tert,
.text-blue-tert {
  color: #6aa6b4 !important;
}

.orange,
.text-orange {
  color: #c65a28 !important;
}

.bg-dark {
  background-color: #1A1A1A !important;
}

.bg-primary {
  background-color: #1C3256 !important;
}

.bg-secondary {
  background-color: #f7e36e !important;
}

.bg-light-blue {
  background-color: #0f99d6 !important;
}

.bg-grey {
  background-color: #3C4050 !important;
}

.bg-light-grey {
  background-color: #eaecf5 !important;
}

.bg-gold {
  background-color: #cfa041 !important;
}

.bg-blue {
  background-color: #255f84 !important;
}

.bg-blue-tert {
  background-color: #6aa6b4 !important;
}

.bg-orange {
  background-color: #c65a28 !important;
}

/* icons */
.icon-blue-reg {
  color: #0f99d6;
  font-size: 60px;
}

/* posts */
.post-header .et_pb_title_meta_container {
  margin-bottom: 40px;
}
.post-header .et_pb_title_featured_container {
  padding-bottom: 40px;
}

.lv-post-body > .et-l--post > .et_builder_inner_content > .et_pb_section {
  padding-top: 0;
}
.lv-post-body > .et-l--post > .et_builder_inner_content > .et_pb_section > .et_pb_row {
  padding: 0;
  width: 100%;
}

/* search results */
.search-results-container.et_pb_posts .et_pb_post {
  margin-bottom: 60px;
  border-bottom: 1px solid #f1f1f1;
  padding-bottom: 60px;
}
.search-results-container.et_pb_posts .et_pb_post a img {
  width: 100%;
}

/*
  This mixin can be used to set the object-fit:
  @include object-fit(contain);
  or object-fit and object-position:
  @include object-fit(cover, top);
*/
.featured-card {
  position: relative;
  color: #fff;
  height: 100%;
  display: block;
}
.featured-card__image {
  position: relative;
}
.featured-card__image {
  margin-bottom: 0;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  font-size: 0;
}
.featured-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  font-family: "object-fit: cover; object-position: center";
}
.featured-card__content {
  position: relative;
  padding: 20px 67px 20px 20px;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  z-index: 1;
  background: rgba(0, 0, 0, 0.35);
}
@media only screen and (max-width: 767px) {
  .featured-card__content {
    min-height: 120px;
  }
}
@media only screen and (min-width: 768px) {
  .featured-card__content {
    padding: 24px 67px 30px 24px;
  }
}
.featured-card__content:after {
  content: "";
  position: absolute;
  right: 32px;
  width: 24px;
  height: 12px;
  bottom: 37px;
  background: url("../img/icons/arrow-green.svg") 50% 50% no-repeat;
  background-size: contain;
  transform: translateX(-20px);
  transition: all 0.35s ease-in-out;
  opacity: 0;
}
.featured-card__title {
  font: 800 20px/1.24 "Outfit", sans-serif;
  text-transform: uppercase;
  margin-bottom: 0;
  color: inherit;
  transition: all 0.35s ease-in-out;
}
.featured-card__text {
  max-width: 356px;
  margin-top: 5px;
}
.featured-card:hover {
  color: #f7e36e;
  text-decoration: none;
}
.featured-card:hover .featured-card__content:after {
  transform: translateX(0);
  opacity: 1;
}

.has-l-margin-bottom {
  margin-bottom: 30px;
}
@media only screen and (min-width: 768px) {
  .has-l-margin-bottom {
    margin-bottom: 55px;
  }
}

@media only screen and (max-width: 767px) {
  .featured-grid {
    display: flex;
    flex-direction: column;
    grid-gap: 24px;
  }
}
@media only screen and (min-width: 768px) {
  .featured-grid {
    position: relative;
    display: grid;
    grid-gap: 24px;
    width: 100%;
    grid-template-columns: 2fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    grid-template-areas: "news1 news2 news3" "news1 news2 news4";
  }
  .featured-grid__item {
    position: relative;
    z-index: 1;
  }
  .featured-grid__item:nth-child(n+5) {
    display: none;
  }
  .featured-grid__item:nth-child(1) {
    grid-area: news1;
  }
  .featured-grid__item:nth-child(2) {
    grid-area: news2;
  }
  .featured-grid__item:nth-child(2) .featured-card__text {
    display: none;
  }
  .featured-grid__item:nth-child(3) {
    grid-area: news3;
  }
  .featured-grid__item:nth-child(3) .featured-card__text {
    display: none;
  }
  .featured-grid__item:nth-child(4) {
    grid-area: news4;
  }
  .featured-grid__item:nth-child(4) .featured-card__text {
    display: none;
  }
}

.featured-grid.featured-grid--archive {
  display: grid;
  gap: 24px;
  height: auto;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: none;
  grid-template-areas: none;
}
@media only screen and (min-width: 768px) {
  .featured-grid.featured-grid--archive {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 981px) {
  .featured-grid.featured-grid--archive {
    grid-template-columns: repeat(var(--lvgea-featured-grid-columns, 4), minmax(0, 1fr));
  }
}
.featured-grid.featured-grid--archive .featured-grid__item {
  min-width: 0;
  grid-area: auto;
}
.featured-grid.featured-grid--archive .featured-grid__item:nth-child(n+5) {
  display: block;
}
.featured-grid.featured-grid--archive .featured-grid__item:nth-child(1), .featured-grid.featured-grid--archive .featured-grid__item:nth-child(2), .featured-grid.featured-grid--archive .featured-grid__item:nth-child(3), .featured-grid.featured-grid--archive .featured-grid__item:nth-child(4) {
  grid-area: auto;
}
.featured-grid.featured-grid--archive .featured-grid__item:nth-child(2) .featured-card__text, .featured-grid.featured-grid--archive .featured-grid__item:nth-child(3) .featured-card__text, .featured-grid.featured-grid--archive .featured-grid__item:nth-child(4) .featured-card__text {
  display: block;
}

.featured-card--archive-grid {
  aspect-ratio: 1/1;
  overflow: hidden;
}
.featured-card--archive-grid .featured-card__content {
  min-height: 0;
  padding: 18px 56px 18px 18px;
}
@media only screen and (min-width: 768px) {
  .featured-card--archive-grid .featured-card__content {
    padding: 22px 60px 22px 22px;
  }
}
.featured-card--archive-grid .featured-card__content:after {
  right: 22px;
  bottom: 26px;
}
.featured-card--archive-grid .featured-card__title {
  font-size: clamp(18px, 1.4vw, 22px);
}

.lvgea-recent-posts-grid__actions {
  margin-top: 102px;
  text-align: center;
}

.lvgea-recent-posts-grid__load-more {
  min-width: 220px;
}

.lvgea-recent-posts-grid__load-more[aria-busy=true] {
  cursor: progress;
  opacity: 0.72;
  pointer-events: none;
}

.lvgea-recent-posts-grid__status {
  margin-top: 14px;
  color: #1C3256;
  font-size: 14px;
  text-align: center;
}
.lvgea-recent-posts-grid__status:empty {
  display: none;
}

.featured-card--single {
  margin-left: -30px;
  margin-right: -30px;
}
@media only screen and (min-width: 768px) {
  .featured-card--single {
    height: 452px;
  }
}
@media (min-width: 1200px) {
  .featured-card--single {
    margin-left: calc((100vw - 1140px) / -2);
    margin-right: calc((100vw - 1140px) / -2);
  }
}
.featured-card--single .featured-card__content {
  padding-left: 30px;
  padding-right: 70px;
  min-height: 256px;
}
.featured-card--single .featured-card__content > * {
  max-width: 420px;
}
@media (min-width: 1200px) {
  .featured-card--single .featured-card__content {
    padding-left: calc((100vw - 1140px) / 2);
    padding-right: calc((100vw - 1140px) / 2);
  }
}
.featured-card--single .featured-card__content:after {
  right: 30px;
}
@media (min-width: 1200px) {
  .featured-card--single .featured-card__content:after {
    right: calc((100vw - 1140px) / 2);
  }
}
.featured-card--single .featured-card__text {
  display: block;
}

/* Logo Ticker (CSS-only, Divi) */
.sm-logo-ticker {
  /* Ticker sizing */
  --sm-logo-h: 70px; /* desktop logo height */
  --sm-gap: 76px; /* space between logos */
  --sm-vpad: 24px; /* vertical breathing room */
  position: relative;
  overflow: hidden;
  min-height: calc(var(--sm-logo-h) + var(--sm-vpad) * 2);
  padding: var(--sm-vpad) 0;
}

@media (max-width: 767px) {
  .sm-logo-ticker {
    --sm-logo-h: 64px;
    --sm-gap: 42px;
    --sm-vpad: 16px;
  }
}
/* Tracks (rows) */
.sm-logo-ticker .sm-logo-ticker__track {
  position: absolute;
  left: 0;
  top: 50%;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  width: max-content;
  margin: 0 !important;
  padding: 0 !important;
  max-width: none !important;
}

/* Track contents (column) */
.sm-logo-ticker .sm-logo-ticker__track .et_pb_column {
  float: none !important;
  width: auto !important;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: var(--sm-gap);
  margin: 0 !important;
  padding: 0 !important;
  min-width: 117vw;
}

.sm-logo-ticker .sm-logo-ticker__track .et_pb_module,
.sm-logo-ticker .sm-logo-ticker__track .et_pb_image {
  flex: 0 0 auto;
  margin: 0 !important;
}

.sm-logo-ticker .sm-logo-ticker__track .et_pb_image img {
  display: block;
  height: var(--sm-logo-h);
  width: auto;
  max-width: none;
}

.sm-logo-ticker .sm-logo-ticker__track--1 {
  animation: sm-logo-ticker-row1 30s linear infinite;
}

.sm-logo-ticker .sm-logo-ticker__track--2 {
  animation: sm-logo-ticker-row2 30s linear infinite;
  padding-left: 30px !important;
}

@keyframes sm-logo-ticker-row1 {
  from {
    transform: translate3d(0, -50%, 0);
  }
  to {
    transform: translate3d(-100%, -50%, 0);
  }
}
@keyframes sm-logo-ticker-row2 {
  from {
    transform: translate3d(100%, -50%, 0);
  }
  to {
    transform: translate3d(0, -50%, 0);
  }
}
.sm-logo-ticker:hover .sm-logo-ticker__track {
  animation-play-state: paused;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee {
  overflow: hidden;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee .sm-logo-ticker__marquee {
  position: relative;
  padding: var(--sm-vpad) 0;
  overflow: hidden;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee .sm-logo-ticker__marquee-track {
  display: flex;
  flex-wrap: nowrap;
  width: max-content;
  will-change: transform;
  backface-visibility: hidden;
  /* Animation is enabled only after JS has measured widths and fonts are ready.
     This avoids stutters caused by late font swapping / text reflow. */
  animation: none;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee.sm-logo-ticker--marquee-ready .sm-logo-ticker__marquee-track {
  animation-name: sm-logo-ticker-marquee;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  animation-duration: var(--sm-ticker-speed, 40000ms);
}

/* One group of items (duplicated back-to-back for seamless wrap) */
.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee .sm-logo-ticker__marquee-group {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: var(--sm-gap);
  flex: 0 0 auto;
}

/* Explicit spacer between group1 and group2 (keeps seam gap exact) */
.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee .sm-logo-ticker__marquee-spacer {
  flex: 0 0 auto;
  width: var(--sm-gap);
}

/* Reuse existing slide styling (logo sizing + max width safety) for marquee items.
   The marquee items are the original Divi modules (blurbs/images). */
.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee .et_pb_module,
.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee .et_pb_image {
  flex: 0 0 auto;
  margin: 0 !important;
  overflow: hidden;
  max-width: var(--sm-logo-max-w);
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee img {
  display: block;
  max-height: var(--sm-logo-h);
  max-width: 100%;
  height: auto;
  width: auto;
  object-fit: contain;
}

/* Pause on hover (default ON; can disable with sm-logo-ticker--no-pause) */
.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee:not(.sm-logo-ticker--no-pause):hover .sm-logo-ticker__marquee-track {
  animation-play-state: paused;
}

/* Direction: default is RIGHT -> LEFT. Add sm-logo-ticker--ltr for LEFT -> RIGHT */
.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee.sm-logo-ticker--ltr .sm-logo-ticker__marquee-track {
  animation-direction: reverse;
}

@keyframes sm-logo-ticker-marquee {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(calc(-1 * var(--sm-marquee-shift, var(--sm-marquee-group-w, 1000px))), 0, 0);
  }
}
@media (prefers-reduced-motion: reduce) {
  .sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--marquee .sm-logo-ticker__marquee-track {
    animation: none !important;
    transform: none !important;
  }
}
.sm-logo-ticker.sm-logo-ticker--js {
  /* reuse existing CSS vars for consistency */
  --sm-logo-h: 70px;
  --sm-logo-max-w: 260px; /* prevents wide wordmarks from overlapping neighbors */
  --sm-gap: 76px;
  --sm-vpad: 24px;
  /* lower = faster (duration) */
  --sm-ticker-speed: 40000ms;
  overflow: hidden;
}

@media (max-width: 767px) {
  .sm-logo-ticker.sm-logo-ticker--js {
    --sm-logo-h: 64px;
    --sm-gap: 42px;
    --sm-vpad: 16px;
  }
}
/* Swiper container injected by JS */
.sm-logo-ticker.sm-logo-ticker--js .sm-logo-ticker__swiper {
  position: relative;
  padding: var(--sm-vpad) 0;
}

/* Make the track a single horizontal row */
.sm-logo-ticker.sm-logo-ticker--js .sm-logo-ticker__wrapper {
  align-items: stretch;
  display: flex; /* fallback if Swiper CSS fails to load */
  gap: var(--sm-gap);
  /* Reduce jitter on long-running transforms */
  will-change: transform;
  backface-visibility: hidden;
}

/* Each slide sizes to its content so Swiper marquee can be continuous */
.sm-logo-ticker.sm-logo-ticker--js .sm-logo-ticker__slide {
  width: auto; /* key for slidesPerView: 'auto' */
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  /* Spacing is handled by wrapper gap so it works in both LTR/RTL and with Swiper */
  margin: 0 !important;
  /* Prevent a very wide logo from visually bleeding into the next slide */
  overflow: hidden;
  max-width: var(--sm-logo-max-w);
}

/* Direction

   Default is RIGHT -> LEFT (normal Swiper LTR behavior).
   If you want LEFT -> RIGHT, add row class: sm-logo-ticker--ltr
   (we flip direction using RTL mode on the Swiper element).
*/
.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--ltr .sm-logo-ticker__swiper {
  direction: rtl;
}

/* Logo image sizing: supports either Blurb image or Image module */
.sm-logo-ticker.sm-logo-ticker--js .sm-logo-ticker__slide img {
  display: block;
  /* Let logos scale naturally and allow Divi max-width settings to work.
     We cap height for consistency across a ticker instance. */
  max-height: var(--sm-logo-h);
  max-width: 100%;
  height: auto;
  width: auto;
  object-fit: contain;
}

/* Blurb layout: logo on top, optional text underneath, centered */
.sm-logo-ticker.sm-logo-ticker--js .et_pb_blurb {
  margin: 0 !important;
}

.sm-logo-ticker.sm-logo-ticker--js .et_pb_blurb .et_pb_main_blurb_image {
  margin-bottom: 12px;
}

.sm-logo-ticker.sm-logo-ticker--js .et_pb_blurb .et_pb_blurb_container {
  text-align: center;
}

/* Common: hide blurb title if empty without leaving spacing */
.sm-logo-ticker.sm-logo-ticker--js .et_pb_blurb h4:empty {
  display: none;
}

/* NOTE: We intentionally do NOT force max-width:none on modules here.
   That was preventing Divi design settings (max width, etc.) from working.
   If a specific page needs full-bleed modules, do it with a page-specific class. */
/* Sizing helper classes (editors can add these to the row)
   Example: Row class: "sm-logo-ticker sm-logo-ticker--h-60 sm-logo-ticker--gap-40" */
.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--h-40 {
  --sm-logo-h: 40px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--h-50 {
  --sm-logo-h: 50px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--h-60 {
  --sm-logo-h: 60px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--h-70 {
  --sm-logo-h: 70px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--h-80 {
  --sm-logo-h: 80px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--h-90 {
  --sm-logo-h: 90px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--h-100 {
  --sm-logo-h: 100px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--gap-20 {
  --sm-gap: 20px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--gap-30 {
  --sm-gap: 30px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--gap-40 {
  --sm-gap: 40px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--gap-60 {
  --sm-gap: 60px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--gap-80 {
  --sm-gap: 80px;
}

/* Max width helper classes (prevents long wordmarks from overlapping neighbors) */
.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--maxw-160 {
  --sm-logo-max-w: 160px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--maxw-200 {
  --sm-logo-max-w: 200px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--maxw-240 {
  --sm-logo-max-w: 240px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--maxw-260 {
  --sm-logo-max-w: 260px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--maxw-300 {
  --sm-logo-max-w: 300px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--maxw-360 {
  --sm-logo-max-w: 360px;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--maxw-420 {
  --sm-logo-max-w: 420px;
}

/* Speed helper classes (lower duration = faster movement) */
.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--speed-slow {
  --sm-ticker-speed: 60000ms;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--speed-normal {
  --sm-ticker-speed: 40000ms;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--speed-fast {
  --sm-ticker-speed: 28000ms;
}

.sm-logo-ticker.sm-logo-ticker--js.sm-logo-ticker--speed-xfast {
  --sm-ticker-speed: 18000ms;
}

@media (prefers-reduced-motion: reduce) {
  /* If the user prefers reduced motion, JS won’t init, but this is an extra safety net */
  .sm-logo-ticker.sm-logo-ticker--js .sm-logo-ticker__wrapper {
    transition: none !important;
  }
}
.testimonial-slider.testimonial-slider--js {
  --lvgea-testimonial-slider-control-size: 46px;
  --lvgea-testimonial-slider-dot-size: 12px;
  --lvgea-testimonial-slider-spacing: 24px;
  --lvgea-testimonial-slider-transition: 420ms;
}
.testimonial-slider.testimonial-slider--js .et_pb_column {
  float: none;
  width: 100%;
  margin-right: 0;
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider {
  position: relative;
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__viewport {
  overflow: hidden;
  touch-action: pan-y;
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__track {
  display: flex;
  align-items: stretch;
  transition: transform var(--lvgea-testimonial-slider-transition) ease;
  will-change: transform;
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__slide {
  flex: 0 0 100%;
  min-width: 100%;
  margin-bottom: 0 !important;
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__slide.et_pb_testimonial {
  margin-bottom: 0 !important;
  background: #fff;
  box-shadow: 0 18px 40px rgba(28, 50, 86, 0.08);
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin-top: var(--lvgea-testimonial-slider-spacing);
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__button,
.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__dot {
  appearance: none;
  border: 0;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease, opacity 0.2s ease, transform 0.2s ease;
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: var(--lvgea-testimonial-slider-control-size);
  height: var(--lvgea-testimonial-slider-control-size);
  border: 2px solid #1C3256;
  border-radius: 999px;
  background: transparent;
  color: #1C3256;
  font-size: 32px;
  line-height: 1;
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__button:hover,
.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__button:focus-visible {
  background: #1C3256;
  color: #fff;
  transform: translateY(-1px);
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__dot {
  width: var(--lvgea-testimonial-slider-dot-size);
  height: var(--lvgea-testimonial-slider-dot-size);
  border-radius: 999px;
  background: rgba(28, 50, 86, 0.2);
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__dot:hover,
.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__dot:focus-visible,
.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__dot.is-active {
  background: #0f99d6;
}

.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__button:focus-visible,
.testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__dot:focus-visible {
  outline: 2px solid #0f99d6;
  outline-offset: 2px;
}

@media only screen and (max-width: 767px) {
  .testimonial-slider.testimonial-slider--js {
    --lvgea-testimonial-slider-control-size: 40px;
    --lvgea-testimonial-slider-spacing: 18px;
  }
  .testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__controls {
    gap: 14px;
  }
  .testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__slide.et_pb_testimonial {
    padding: 32px 24px 24px;
  }
  .testimonial-slider.testimonial-slider--js .et_pb_testimonial .et_pb_testimonial_portrait {
    float: none;
    display: block;
    margin: 0 auto 20px;
  }
  .testimonial-slider.testimonial-slider--js .et_pb_testimonial .et_pb_testimonial_description {
    margin-left: 0 !important;
    text-align: center;
  }
}
@media (prefers-reduced-motion: reduce) {
  .testimonial-slider.testimonial-slider--js .lvgea-testimonial-slider__track {
    transition-duration: 0.01ms;
  }
}
