.footer {
  position: relative;
  font-size: 90%;
}
.footer__content {
  line-height: 0;
  position: relative;
  padding-top: 3em;
  padding-bottom: 3em;
  color: #FFF;
  text-shadow: 0 -1px 0 rgba(0, 0, 10, 0.15);
  text-align: justify;
}
.footer .footer__content:first-child {
  padding-top: 3em;
  padding-bottom: 3em;
  position: relative;
}
.footer .footer__content:first-child:after {
  content: '';
  display: inline-block;
  width: 100%;
}
.footer__list {
  display: inline-block;
  vertical-align: top;
}
.footer__content ul li {
  opacity: 0.8;
}
.footer__list a,
.footer__list a:link,
.footer__list a:visited,
.footer__list a:active {
  color: #FFF;
	text-decoration: none;
}
.footer__content ul li:first-child {
  font-weight: 500;
  font-size: 105%;
  margin-bottom: 0.5em;
}
.footer__content ul li:hover,
.footer__content ul li:first-child {
  opacity: 1;
}
.footer__legals p {
  font-size: 85%;
  line-height: 1.5em;
  color: rgba(255,255,255,0.6);
  margin-bottom: 1.5em;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}
.footer__legals p a {
  color: rgba(255,255,255,0.6);
}
.footer__legals p:last-child {
  margin-bottom: 0;
}
.footer__legals span.footer__copyright {
  color: rgba(255,255,255,0.85);
  float: right;
  font-weight: 500;
}
.footer__sub {
  z-index: 5;
  position: relative;
  display: block;
  width: 100%;
  padding-top: 1.75em;
  padding-bottom: 1.75em;
}
.footer__sub .toolbar__rhs,
.footer__sub .toolbar__lhs {
  display: inline-block;
}
.footer__sub .toolbar__rhs {
  float: right;
}
.footer__sub .icon-only i {
  font-size: 1.25em;
  line-height: 2.2em;
  vertical-align: middle;
}
.footer__sub:before,
.footer__sub:after {
  content: " ";
  display: table;
}
.footer__sub:after {
  clear: both;
}
@media screen and (max-width: 340px) {
  .footer__sub .button {
    font-weight: 600;
    font-size: 1.1em;
    padding: 0 1.2em;
  }
  .footer__sub .button.icon-only {
    padding: 0;
  }
}

.footer:before {
  height: 3px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  background: #3a82cb;
  background: -moz-linear-gradient(45deg, #3a82cb 0%, #01a7a1 100%);
  background: -webkit-gradient(linear, left bottom, right top, color-stop(0%,#3a82cb), color-stop(100%,#01a7a1));
  background: -webkit-linear-gradient(45deg, #3a82cb 0%,#01a7a1 100%);
  background: -o-linear-gradient(45deg, #3a82cb 0%,#01a7a1 100%);
  background: -ms-linear-gradient(45deg, #3a82cb 0%,#01a7a1 100%);
  background: linear-gradient(45deg, #3a82cb 0%,#01a7a1 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3a82cb', endColorstr='#01a7a1',GradientType=1 );
}
