.et-footer-v2 {
  --ft-bg:#00217D;
  --ft-fg:#ffffff;
  --ft-accent:#F7D303;
  --ft-font:'Onest',system-ui,sans-serif;
  --ft-fs:15px;
  --ft-lh:25px;
  --ft-max:1680px;
  --ft-horizontal-gap:clamp(40px,6vw,160px);
  --ft-menu-item-gap:18px;
  --ft-divider-side-gap:24px;
  background:var(--ft-bg);
  color:var(--ft-fg);
  font-family:var(--ft-font);
  font-size:var(--ft-fs);
  line-height:var(--ft-lh);
  padding:48px 0 0;
}

.et-footer-v2 .et-footer-inner {
  max-width:var(--ft-max);
  margin-inline:auto;
  padding-inline:clamp(18px,4.8vw,72px);
  display:flex;
  flex-direction:column;
  gap:46px;
  box-sizing:border-box;
}

@media (min-width: 992px) {
  .et-footer-v2 .et-footer-inner {
    width: calc(100% - (2 * var(--et-adaptive-gutter)));
    max-width: none;
    padding-inline: 0;
  }
}

.et-footer-v2 .et-footer-top-logo img {
  max-width:140px;
  height:auto;
  display:block;
}

.et-footer-v2 .et-footer-body {
  display:grid;
  grid-template-columns: minmax(320px, 1fr) minmax(300px, auto);
  gap:var(--ft-horizontal-gap);
  align-items:start;
}

@media (max-width:860px){
  .et-footer-v2 .et-footer-body {
    grid-template-columns: 1fr;
    gap:40px;
  }
}

.et-footer-v2 .et-footer-body-col { position:relative; }

.et-footer-v2 .et-footer-details { margin:0 0 24px; }
.et-footer-v2.has-social .et-footer-details { margin-bottom:18px; }
.et-footer-v2.no-social  .et-footer-details { margin-bottom:24px; }
.et-footer-v2 .et-footer-details p {
  margin:0 0 6px;
  font-weight:400;
  color:#fff;
}
.et-footer-v2 .et-footer-details a {
  color:#fff;
  text-decoration:none;
}

.et-footer-v2 .et-footer-details .etf-email a {
  position:relative;
  display:inline-block;
}
.et-footer-v2 .et-footer-details .etf-email a::after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-4px;
  height:2px;
  background:#ffffff;
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .25s ease;
  border-radius:2px;
  pointer-events:none;
}
.et-footer-v2 .et-footer-details .etf-email a:hover,
.et-footer-v2 .et-footer-details .etf-email a:focus-visible {
  color:#fff;
  text-decoration:none;
}
.et-footer-v2 .et-footer-details .etf-email a:hover::after,
.et-footer-v2 .et-footer-details .etf-email a:focus-visible::after {
  transform:scaleX(1);
}

.et-footer-social-list {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.et-footer-details + .et-footer-social .et-footer-social-list { margin-top:12px; }

.et-footer-v2 .btn-social {
  width:44px;
  height:44px;
  border-radius:50%;
  border:2px solid #FFFFFF;
  background:transparent;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  transition:background .18s, border-color .18s, transform .18s, color .18s;
  color:#FFFFFF;
}
.et-footer-v2 .btn-social svg {
  width:24px;
  height:24px;
  fill:currentColor;
  color:currentColor;
}
.et-footer-v2 .btn-social:hover,
.et-footer-v2 .btn-social:focus-visible {
  background:#FFFFFF;
  border-color:#FFFFFF;
  color:#00217D;
  transform:translateY(-2px);
}
.et-footer-v2 .btn-social:active { transform:translateY(0); }

.et-footer-v2 .et-footer-menus {
  display:flex;
  align-items:flex-start;
  gap:0;
  
}

.et-footer-v2 .et-footer-menu {
  display:flex;
  flex-direction:column;
  gap:var(--ft-menu-item-gap);
  min-width:80px;
  align-items:flex-start;
}

.et-footer-v2 .et-footer-menu a {
  color:#fff;
  font-size:15px;
  line-height:25px;
  font-weight:400;
  position:relative;
  display:inline-block;
  text-decoration:none;
  transition:color .2s ease;
  word-break:break-word;
}
.et-footer-v2 .et-footer-menu a::after {
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-4px;
  height:2px;
  background:#ffffff;
  transform:scaleX(0);
  transform-origin:center;
  transition:transform .25s ease;
  border-radius:2px;
  pointer-events:none;
}
.et-footer-v2 .et-footer-menu a:hover,
.et-footer-v2 .et-footer-menu a:focus-visible {
  color:#fff;
  text-decoration:none;
}
.et-footer-v2 .et-footer-menu a:hover::after,
.et-footer-v2 .et-footer-menu a:focus-visible::after {
  transform:scaleX(1);
}

.et-footer-v2 .et-footer-menu-divider {
  width:1px;
  background:rgba(255,255,255,0.34);
  align-self:stretch;
  flex-shrink:0;
  margin:0 var(--ft-divider-side-gap);
}

@media (max-width:860px){
  .et-footer-v2 .et-footer-menus {
    display:grid;
    grid-template-columns:repeat(2,minmax(120px,1fr));
    column-gap:48px;
    row-gap:28px;
  }
  .et-footer-v2 .et-footer-menu-divider {
    display:none;
  }
  .et-footer-v2 .et-footer-menu {
    min-width:0;
    gap:18px;
  }
}

@media (max-width:520px){
  .et-footer-v2 .et-footer-menus {
    column-gap:32px;
    row-gap:24px;
  }
  .et-footer-v2 .btn-social { width:40px; height:40px; }
  .et-footer-v2 .et-footer-menu a::after,
  .et-footer-v2 .et-footer-details .etf-email a::after { bottom:-3px; }
}

/* Footer copy row */
.et-footer-v2 .et-footer-copy {
  margin-top:46px;
  border-top:1px solid rgba(255,255,255,0.25);
  font-size:15px;
  line-height:25px;
  padding:18px 0 24px;
  max-width:var(--ft-max);
  margin-left:auto;
  margin-right:auto;
  padding-inline:clamp(18px,4.8vw,72px);
  color:#fff;
  font-weight:400;
}

/* Wide screens: align content like .et-footer-inner (left gutter),
   keep a full-bleed top border, and align text to the left. */
@media (min-width: 992px) {
  .et-footer-v2 .et-footer-copy {
    /* align content like .et-footer-inner */
    width: calc(100% - (2 * var(--et-adaptive-gutter)));
    max-width: none;
    padding-inline: 0;
    margin-left: var(--et-adaptive-gutter);
    margin-right: var(--et-adaptive-gutter);

    /* left-align the span text */
    text-align: left;

    /* set up full-bleed border using a pseudo element */
    position: relative;
    border-top: 0;
  }
  .et-footer-v2 .et-footer-copy::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    transform: translateX(-50%);
    border-top: 1px solid rgba(255,255,255,0.25);
    pointer-events: none;
  }
}

@media (max-width:520px){
  .et-footer-v2 .et-footer-copy {
    font-size:14px;
    line-height:22px;
    padding-top:16px;
    margin-top:38px;
  }
}

.et-footer-v2 .btn-social:focus-visible {
  outline:2px solid #FFFFFF;
  outline-offset:2px;
}

@media (prefers-reduced-motion:reduce) {
  .et-footer-v2 .btn-social,
  .et-footer-v2 .btn-social:hover,
  .et-footer-v2 .btn-social:focus-visible,
  .et-footer-v2 .et-footer-menu a::after,
  .et-footer-v2 .et-footer-details .etf-email a::after {
    transition:none;
  }
}