/****************************************
* Footer
****************************************/

footer {
  background: #494847;
}

footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6 {
  color: #FFFFFF;
  font: normal normal 28px/1.2em 'Nexa';
  text-transform: none;
  letter-spacing: 0px;
  text-shadow: none;
  text-align: center;
}

footer p,
footer li,
footer a[href^=tel] {
  color: #FFFFFF;
  font-size: 16px;
  text-align: center;
}

footer a {
  color: #E8E4CE;
  font-size: 16px;
  text-align: center;
}

footer a:hover,
footer a:active {
  color: #C4C0A8;
}

footer hr {
  border: none;
  border-top: 1px solid #787777;
}

footer .button {
  background: #E8E4CE;
  color: #494847;
}

footer .button:hover {
  background: #C4C0A8;
  color: #494847;
}

footer .contact-us {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 1rem;
}

footer ul.schools {
  column-count: 1;
}

footer h3.center {
  text-align: center;
}

footer ul.schools li {
  margin-bottom: .5rem;
  text-align: center;
}

footer .button + .button {
  margin: 0;
}

footer .contact-us {
  margin-bottom: 2rem;
  text-align: center;
}

.contact-us h3,
.contact-us strong {
  margin-top: auto;
  margin-bottom: auto;
}

footer .contact-us a[href^=tel] {
  font-size: 19px;
}

footer .contact-us .button {
  width: calc(100% - 1rem);
  white-space: nowrap;
}

footer div > hr:nth-of-type(2) {
  margin-bottom: 2rem;
}

footer .seal {
  position: relative;
}

footer .seal .overlay {
  position: absolute;
  top: 181px;
  left: 50%;
  transform: translateX(-50%);
}

footer .seal img {
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  margin: -1.25rem auto 0 auto;
  max-width: 288px;
}

footer .seal a {
  background-color: #494847;
  padding: .75rem;
  color: #C4C0A8;
}

footer .seal a:hover {
  background-color: #C4C0A8;
  padding: .75rem;
  color: #494847;
}

@media (min-width: 600px) {
  footer ul.schools {
    column-count: 2;
  }
}

@media (min-width: 800px) {
  footer .contact-us {
    grid-template-columns: 1fr 1fr;
  }

  footer .phone {
    grid-column-start: 1;
    grid-column-end: 3;
  }
}


@media (min-width: 925px) {
  footer ul.schools {
    column-count: 3;
  }
}

@media (min-width: 1000px) {
  footer .contact-us {
    grid-template-columns: 1fr 1fr 1fr;
    justify-items: center;
    align-items: center;
  }

  footer .phone {
    grid-column-start: auto;
    grid-column-end: auto;
  }
}

@media (min-width: 1400px) {
  footer > .grid {
    grid-template-columns: 8fr 2fr;
  }
}