.footer {
  overflow: hidden;
  border: 0 !important;
  background: #173754 !important;
  color: #b7c8d8;
}

.footer:before,
.footer:after { display: none; }

.footer .footer-top { padding: 0 0 42px !important; }
.footer-service-bar {
  margin-bottom: 42px;
  padding: 24px 0;
  border-bottom: 1px solid rgba(218, 235, 248, .18);
}

.footer-service-eyebrow { display: none; }
.footer-service-copy { display: flex; align-items: baseline; gap: 16px; }
.footer-service-copy strong { color: #fff; font-size: 17px; font-weight: 700; }
.footer-service-copy span:last-child { color: #a9c0d3; font-size: 13px; }
.footer-service-phone { gap: 9px; color: #c9d8e6 !important; }
.footer-service-phone i { width: 32px; height: 32px; border-color: rgba(183, 213, 238, .42); color: #8ec4f3; }
.footer-service-phone span { color: #9bb3c8; font-size: 12px; }
.footer-service-phone b { color: #fff; font-size: 16px; }

.footer-main-grid { padding-bottom: 16px; }
.footer-brand-block { max-width: 340px; }
.footer .footer-brand-logo { width: 205px; max-height: 43px; margin-bottom: 16px; filter: brightness(0) invert(1); }
.footer-brand-block p { color: #aec1d1; font-size: 13px; line-height: 1.85; }
.footer-brand-meta { margin-top: 11px; }
.footer-brand-meta span { border-color: rgba(205, 224, 239, .22); color: #bfd0de; }
.footer-brand-meta i { color: #91c8f4; }
.footer-company-code { display: flex; align-items: baseline; gap: 9px; margin-top: 13px; color: #8fa9bd; font-size: 10px; }
.footer-company-code span { white-space: nowrap; }
.footer-company-code strong { color: #c2d3e0; font-size: 11px; font-weight: 600; letter-spacing: .45px; }

.footer .footer-title { margin-bottom: 16px; padding-bottom: 10px; color: #fff; font-size: 13px; font-weight: 700; }
.footer .footer-title:after { width: 20px; background: #7fb9e7; }
.footer .footer-link-2 li { margin-bottom: 8px; }
.footer .footer-link-2 li a { color: #b4c6d6; font-size: 12px; }
.footer .footer-link-2 li a:before { display: none; }
.footer .footer-link-2 li a:hover { color: #fff !important; }

.footer .footer-bottom { padding: 19px 0 21px; border-top: 1px solid rgba(218, 235, 248, .14); background: #112c47; }
.footer .footer-links-container,
.footer .footer-links-container a,
.footer .footer-icp { color: #91aabd; font-size: 11px; }
.footer .footer-icp { gap: 2px; }
.footer .footer-icp a,
.footer .footer-links-container a { color: #b5c8d7; }
.footer .footer-icp a:hover,
.footer .footer-links-container a:hover { color: #fff !important; }

@media (min-width: 1400px) {
  .footer .container { width: 80vw; max-width: none; }
}

@media (max-width: 767px) {
  .footer .footer-top { padding-bottom: 21px !important; }
  .footer-service-bar { align-items: center; flex-direction: row; gap: 12px; margin-bottom: 20px; padding: 18px 0; }
  .footer-service-copy { display: block; min-width: 0; flex: 1; }
  .footer-service-copy strong { display: block; margin-bottom: 3px; font-size: 14px; }
  .footer-service-copy span:last-child { display: block; overflow: hidden; color: #91a9c0; font-size: 10px; line-height: 1.4; text-overflow: ellipsis; white-space: nowrap; }
  .footer-service-phone { width: auto; padding: 7px 9px; flex: 0 0 auto; gap: 7px; border: 1px solid rgba(255, 255, 255, .13); border-radius: 4px; background: rgba(255, 255, 255, .045); }
  .footer-service-phone i { width: 24px; height: 24px; flex: 0 0 24px; border: 0; font-size: 12px; }
  .footer-service-phone span { display: none; }
  .footer-service-phone b { font-size: 13px; letter-spacing: 0; }
  .footer .footer-brand-logo { width: 188px; margin-bottom: 12px; }
  .footer-brand-block { padding-bottom: 15px; }
  .footer-brand-block p { font-size: 12px; line-height: 1.7; }
  .footer-brand-meta { margin-top: 10px; }
  .footer-main-grid { display: block !important; padding-bottom: 7px; }
  .footer-brand-block { display: flex; align-items: center; padding-bottom: 14px; margin-right: auto; margin-left: auto; flex-direction: column; text-align: center; }
  .footer .footer-brand-logo { margin-right: 0; margin-left: 0; object-position: center; transform: translateX(7px); }
  .footer-brand-block p { display: block; width: 100%; max-width: 335px; margin-right: auto; margin-left: auto; text-align: center; }
  .footer-brand-meta { display: flex; justify-content: center; }
  .footer-company-code { justify-content: center; margin-top: 11px; }
  .footer-collapse-item { display: none !important; }
  .footer .footer-bottom { padding: 16px 0 18px; }
  .footer .footer-icp > div:first-child { display: flex; align-items: flex-start; flex-direction: column; gap: 4px; }
  .footer .footer-icp > div:first-child a { display: block; }
  .footer .footer-icp > div:first-child .footer-legal-separator { display: none; }
}
