.footer {
  width: 100%;
  height: 45vh;
  overflow: hidden;
  color-scheme: light;
  background-color: rgba(13, 3, 4, 0.8);
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: 1fr auto;
  grid-template-rows: 1fr auto;
}

.footer-wrap {
  width: 50dvw;
  margin: 0 auto;
  padding: 5dvh 0 5dvh;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2fr;
  grid-template-columns: 1fr 2fr;
}

.footer-logo {
  height: 11dvh;
}

.social-list {
  text-align: left;
  margin: 2vh 0;
}

.social-item {
  display: inline-block;
  padding: 2vh;
}

.social-link {
  font-size: 1.2em;
  color: #fff;
}

.rotate:hover {
  -webkit-transform: rotate(360deg);
      -ms-transform: rotate(360deg);
          transform: rotate(360deg);
  -webkit-transition: -webkit-transform 0.5s ease-in-out;
  transition: -webkit-transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
}

.contact-module {
  text-align: right;
  color: #fff;
}

.contact-item {
  padding: 1vh 0 1vh 0;
}

.contact-title {
  padding: 1vh 0 2vh 0;
  font-size: 2em;
  text-transform: uppercase;
}

.contact-subtitle {
  font-size: 1.5em;
}

.contact-subtitle-h4 {
  font-size: 1.3em;
}

.footer-data-link, .fa-font-fadvis {
  font-size: 1.2em;
  color: #fff;
}

.footer-copyright {
  font-size: 1.1em;
  color: #fff;
  background-color: rgba(0, 0, 0, 0.3);
  padding: 2vh 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.footer-copyright-wrap {
  width: 50dvw;
  margin: 0 auto;
  text-align: right;
}