.site-footer {
  background-color: #001970;
  color: #fff;
}
html.color-contrast .site-footer {
  background-color: #000;
}
.site-footer a {
  color: #fff;
}

.site-footer__upper {
  padding-bottom: 1.6666666667rem;
  padding-top: 1.6666666667rem;
  border-bottom: 2px solid #fff;
}
@media (min-width: 48em) {
  .site-footer__upper {
    align-items: center;
    display: flex;
  }
}

.site-footer__lower {
  padding-bottom: 1rem;
  padding-top: 1rem;
}
@media (min-width: 48em) {
  .site-footer__lower {
    align-items: center;
    display: flex;
  }
}

.site-footer__contact .contact-title {
  color: #fff;
  font-size: 1.1111111111rem;
  margin: 0;
}
.site-footer__contact .contact-address {
  font-size: 0.6666666667rem;
  line-height: 1.5;
  margin: 0;
}
.site-footer__contact .contact-address > span {
  display: block;
}
@media (max-width: 47.9375em) {
  .site-footer__contact {
    margin-bottom: 1rem;
  }
}
@media (min-width: 48em) {
  .site-footer__contact {
    margin-right: auto;
  }
}

.site-footer__newsletter .newsletter {
  margin: 1rem 0 0;
}
@media (min-width: 48em) {
  .site-footer__newsletter .newsletter {
    margin: 0 0 0 2rem;
  }
}

.footer__logo {
  margin: 0 0 1rem;
  width: 11.1111111111rem;
}
.footer__logo > img {
  display: block;
  height: auto;
  width: 100%;
}
@media (min-width: 48em) {
  .footer__logo {
    margin: 0 2rem 0 0;
  }
}

.menu--social {
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}
.menu--social .menu__item {
  padding-left: 0.5rem;
  padding-right: 0.5rem;
}
.menu--social .menu__link {
  text-decoration: none;
}
.menu--social .menu__link > svg {
  height: 1.1111111111rem;
  width: 1.1111111111rem;
  transition: fill 0.2s ease-in-out 0s;
  fill: #fff;
}
.menu--social .menu__link:hover > svg, .menu--social .menu__link:focus > svg {
  fill: #ffd100;
}

.menu--footer {
  list-style: none;
  margin: 0;
  padding: 0;
}
.menu--footer .menu__item {
  margin-right: 2rem;
}
.menu--footer .menu__link {
  font-size: 0.6666666667rem;
}
.menu--footer a.menu__link {
  transition: color 0.2s ease-in-out 0s;
}
.menu--footer a.menu__link:hover, .menu--footer a.menu__link:focus {
  color: #ffd100;
  text-decoration: underline;
}
@media (min-width: 37.5em) {
  .menu--footer {
    display: flex;
  }
}

#block-footer-menu.visually-hidden {
  margin: -1px;
}
