#footer .footer__main {
  color: var(--bs-body-color);
  background: #fff;
  border-top: 1px solid var(--bs-border-color);
}
#footer .footer-block__title {
  position: relative;
  padding-bottom: .5rem;
  margin-bottom: 1rem;
  font-size: 1.125rem;
  font-weight: 700;
  color: var(--bs-primary);
}
#footer .footer-block__title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: min(100%, 10rem);
  height: 2px;   
  background: var(--bs-accent, var(--bs-primary));
}
#footer .footer-block__title .stretched-link,
#footer .footer-block .footer-block__title a { color: var(--bs-primary); }
:where(#footer) .footer-block a,
:where(#footer) .footer__main .copyright,
:where(#footer) .footer__main .copyright a { color: var(--bs-body-color); }
:where(#footer) .footer-block a:hover,
:where(#footer) .footer-block a:focus-visible,
:where(#footer) .footer__main .copyright a:hover { color: var(--bs-link-color); }
#footer .footer-block__list a { padding-block: .2rem; font-size: .9375rem; }
#footer .ps-contactinfo__infos { margin-bottom: .5rem; font-size: .9375rem; line-height: 1.7; color: var(--bs-body-color); }
#footer .ps-contactinfo__phone,
#footer .ps-contactinfo__email { display: flex; align-items: center; gap: .5rem; margin-bottom: .25rem; font-size: .9375rem; }
#footer .ps-contactinfo .material-icons { font-size: 1.125rem; color: var(--bs-primary); }
#footer .footer__main .abc-footer__link { color: var(--bs-gray-600); }
#footer .footer__main .abc-footer__link:hover { color: var(--bs-link-color); }
#footer .footer__main-bottom { color: var(--bs-body-color); }
.ps-socialfollow ul { gap: .75rem !important; }
.ps-socialfollow a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  padding: 0 !important;
  color: #fff;
  background: var(--bs-gray-600);
  border-radius: 50%;
  transition: transform .2s, box-shadow .2s;
}
.ps-socialfollow a[href*="facebook."] { background: #1877f2; }
.ps-socialfollow a[href*="tiktok."] { background: #000; }
.ps-socialfollow a[href*="youtube."] { background: #ff0000; }
.ps-socialfollow a[href*="pinterest."] { background: #e60023; }
.ps-socialfollow a[href*="instagram."] { background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fd5949 45%, #d6249f 60%, #285aeb 90%); }
.ps-socialfollow a:hover,
.ps-socialfollow a:focus-visible { color: #fff; transform: translateY(-2px); box-shadow: 0 3px 8px rgba(0, 0, 0, .18); }
.ps-socialfollow svg { width: 1.25rem; height: 1.25rem; }
#footer .abgr-widget {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: .5rem .75rem;
  max-width: 18rem;
  padding: .875rem 1rem;
  font-size: .875rem;
  color: var(--bs-gray-600);
  background: #fff;
  border: 1px solid var(--bs-border-color);
  border-radius: .5rem;
  box-shadow: 0 1px 3px rgba(0, 0, 0, .06);
  opacity: 1;
}
#footer .abgr-widget__logo { height: 1.25rem; top: 0; }
#footer .abgr-widget__score { justify-self: start; gap: .5rem; }
#footer .abgr-widget__value { font-size: 1.25rem; font-weight: 700; color: var(--bs-body-color); }
#footer .abgr-widget__stars { font-size: 1rem; }
#footer .abgr-widget__meta {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: .5rem .75rem;
}
#footer .abgr-widget__count { opacity: 1; }
#footer .abgr-widget__button {
  display: inline-block;
  padding: .3rem .875rem;
  font-weight: 600;
  color: var(--bs-link-color);
  text-decoration: none;
  border: 1px solid var(--bs-link-color);
  border-radius: 999px;
  transition: background-color .2s, color .2s;
}
#footer .abgr-widget__button::before { display: none; }
#footer .abgr-widget__button:hover,
#footer .abgr-widget__button:focus-visible { color: #fff; background: var(--bs-link-color); }
#footer .abgr-widget--contact { margin-top: 1rem; }
@media (max-width: 767.98px) { #footer .abgr-widget--contact { display: none; } }
@media (min-width: 768px) { body:has(.abgr-widget--contact) #footer .abgr-widget--footer { display: none; } }
#footer .abgr-widget--footer { margin: 0 auto 1.25rem; text-align: left; }
#footer .abgr-widget--footer .abgr-widget__count::before { display: none; }
@media (max-width: 767.98px) {
  #footer .footer-block__title { margin-bottom: .5rem; border-bottom: 1px solid var(--bs-border-color); }
  #footer .footer-block__title::after { bottom: -1px; }
}
