/**
 * Footer Styling (Responsive/Adaptive)
 */

a,
a:focus,
a:active,
a:hover {
  color: #ffffff;
  color: inherit;
  text-decoration: none;
}

footer:not(.article-footer) {
  font-family: var(--pt-sans);
  font-style: normal;
  font-weight: 400;
}

footer:not(.article-footer) {
  background-color: var(--theme-color);
  color: var(--color-white);
  overflow: hidden;
  padding-left: 20vw !important;
}

footer:not(.article-footer) p,
footer:not(.article-footer) * p,
footer:not(.article-footer) a,
footer:not(.article-footer) * a {
  font: normal normal 13px 'Open Sans', sans-serif !important;
  color: inherit;
  line-height: 50px !important;
}

footer:not(.article-footer) p {
  margin-bottom: 0 !important;
}

footer:not(.article-footer) .row {
  align-self: center;
  margin-top: 0.5rem;
  margin-bottom: 0;
}

footer .address-operating-times {
  padding: calc(0.5 * (60px - 36px)) 0;
}

footer .footer-social-media {
  margin: 0 0.309rem;
  padding-top: 10px;
  padding-bottom: 10px;
}

footer .footer-social-media:last-child {
  margin-right: 0 !important;
}

footer .footer-social-media i.fa,
.footer-social-media i.fa,
.social-media i.fa {
  width: 40px;
  height: 40px;
  padding: 0;
  margin: 0;
  border-radius: 50%;
  background-color: #ffffff;
  color: var(--theme-color);
  line-height: 40px !important;
  text-align: center;
}

footer:not(.article-footer) .custom-container p,
footer:not(.article-footer) .custom-container p * {
  font: normal normal 14px/18px 'PT Sans', sans-serif;
  letter-spacing: calc(1em * (20 / 1000));
  margin-bottom: 0;
}

footer:not(.article-footer) br {
  display: none;
}

.hidden-important {
  display: none !important;
}

footer:not(.article-footer) p span,
footer:not(.article-footer) * p span,
footer:not(.article-footer) * span {
  line-height: 45px !important;
}

footer .footer-links>* {
  line-height: 50px;
  justify-content: flex-start;
}

footer>div>div>div>div.col-12.col-xl-auto.footer-links.px-lg-3.px-0.pb-sm-5.pb-0.pb-lg-0>div>div:nth-child(3)>span {
  visibility: hidden
}

@media only screen and (max-width: 1280px) {
  footer:not(.article-footer) p,
  footer:not(.article-footer) * p,
  footer:not(.article-footer) a,
  footer:not(.article-footer) * a {
    font-size: 15px !important;
    line-height: 40px;
  }
  footer .footer-links>div,
  footer * p {
    justify-content: center !important;
    max-height: 50px;
  }
}

@media only screen and (max-width: 992px) {
  footer .footer-links>* {
    justify-content: center;
  }

  footer .footer-links .col-auto:last-child {
    line-height: 45px;
  }

  footer:not(.article-footer) {
    padding-left: 15px !important;
    padding-right: 15px !important;
    max-width: 100vw;
    width: 100%;
  }

  footer:not(.article-footer),
  footer:not(.article-footer) * {
    line-height: initial !important;
  }

  footer .footer-links>* {
    line-height: initial !important;
  }

  footer:not(.article-footer) p {
    line-height: initial !important;
  }

  footer:not(.article-footer) br {
    display: block;
  }

  .hidden-lg {
    display: none;
  }

}

@media only screen and (max-width: 768px) {
  footer:not(.article-footer) br {
    display: block;
    line-height: 1.618 !important;
  }

  footer:not(.article-footer) {
    min-height: unset !important;
    max-height: unset !important;
    height: auto !important;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  footer:not(.article-footer) .footer-links .last-link {
    line-height: 45px !important;
  }

  footer:not(.article-footer) .footer-links>div {
    max-height: 10px;
  }

  footer:not(.article-footer) .custom-container * {
    line-height: 22px !important;
    letter-spacing: calc(1em * (60 / 1000));
  }

  footer:not(.article-footer) .custom-container p {
    padding: 0;
  }

  footer:not(.article-footer) p,
  footer:not(.article-footer) * p,
  footer:not(.article-footer) a,
  footer:not(.article-footer) * a {
    line-height: 40px !important;
  }

  footer:not(.article-footer) p,
  footer:not(.article-footer) * p,
  footer:not(.article-footer) a,
  footer:not(.article-footer) * a {
    line-height: 26px !important;
    margin-bottom: 1rem !important;
  }

  footer .footer-links>div {
    max-height: 30px;
  }

}

@media only screen and (max-width: 576px) {

  a.first-link {
    line-height: initial !important;
  }

  footer:not(.article-footer) p,
  footer:not(.article-footer) * p,
  footer:not(.article-footer) a,
  footer:not(.article-footer) * a {
    font-size: 14px !important;
    line-height: 40px;
  }


}