body.site {
  color: #333;
  font-family: Arial, Helvetica, sans-serif;
}

.fa {
  font-family: Arial, Helvetica, sans-serif !important;
  font-style: normal;
}

.fa-bars::before {
  content: "\2630";
}

.fa-remove::before {
  content: "\00d7";
}

.fa-phone::before {
  content: "\260e";
}

.fa-envelope::before {
  content: "\2709";
}

.fa-facebook::before {
  content: "f";
  font-weight: 700;
}

.fa-twitter::before {
  content: "\1d54f";
}

.fa-google-plus::before {
  content: "G+";
  font-weight: 700;
}

.fa-linkedin-square::before {
  content: "in";
  font-weight: 700;
}

.sp-module ul > li > a::before {
  display: inline-block;
  width: 6px;
  height: 10px;
  margin-right: 8px;
  background-color: currentColor;
  content: "";
  vertical-align: -1px;
  -webkit-mask: url("../images/menu-chevron.svg") center / contain no-repeat;
  mask: url("../images/menu-chevron.svg") center / contain no-repeat;
}

#sp-bottom.archive-gallery-section {
  padding: 60px 0;
  background: #f5f5f5;
}

.archive-gallery-section h2 {
  margin: 0 0 2rem;
  color: #57a79e;
  text-align: center;
}

.archive-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 1rem;
}

.archive-gallery-item {
  display: block;
  overflow: hidden;
  background: #fff;
  color: #333;
  text-align: center;
}

.archive-gallery-item img {
  display: block;
  width: 100%;
  height: 240px;
  object-fit: cover;
  transition: transform 180ms ease;
}

.archive-gallery-item:hover img,
.archive-gallery-item:focus img {
  transform: scale(1.03);
}

.archive-gallery-item span {
  display: block;
  padding: 0.75rem;
}

.archive-footer {
  padding: 1.5rem;
  color: #777;
  font-size: 0.9rem;
  text-align: center;
}

.archive-footer a {
  color: inherit;
}

@media (max-width: 900px) {
  #sp-bottom.archive-gallery-section {
    padding: 45px 0;
  }
}

@media (max-width: 600px) {
  #sp-bottom.archive-gallery-section {
    padding: 30px 0;
  }
}
