footer section {
  display: flex;
  flex-wrap: wrap;
  color: var(--color-text);
}

footer section > * {
  padding-bottom: calc(var(--spacing-vertical) * 2);
  flex-basis: 100%;
}

footer a,
footer a:visited {
  color: var(--color-link);
}

footer p {
  padding: calc(var(--spacing-vertical) / 2) 0;
}

footer p:first-child {
  padding: 0;
  margin-top: var(--spacing-vertical);
}

footer h2 {
  margin: 0;
  font-size: 1rem;
}

footer h4,
footer .menu,
footer .textwidget,
footer .lmnhq_gutenberg_render {
  text-align: center;
}

footer .custom-html-widget {
  width: 100%;
  display: block;
  overflow: auto;
  text-align: center;
}

footer .custom-html-widget > a {
  display: inline-block;
  margin: 0 auto;
}

footer .menu li {
  display: inline-block;
  margin-left: calc(var(--spacing-horizontal) / 2);
}
footer .menu li:before {
  content: "•";
  margin-right: calc(var(--spacing-horizontal) / 2);
}

footer .menu li:first-of-type {
  margin-left: 0;
}

footer .menu li:first-of-type:before {
  content: "";
  margin-right: 0;
}

footer ul.wp-block-social-links {
  justify-content: center;
  margin-bottom: 0;
  margin-top: calc(var(--spacing-vertical) / 2);
}

footer ul {
  list-style-type: none;
  padding-left: 0;
}

footer > section > div {
  text-align: center;
}

@media (min-width: 45rem) {
  footer section {
    flex-wrap: nowrap;
    justify-content: space-between;
  }

  footer section > * {
    margin-top: 0;
    padding-bottom: 0;
    flex-basis: calc((100% - (var(--spacing-horizontal) * 2)) / 3);
  }
}

footer .hbspt-form {
  margin: 0 var(--spacing-horizontal);
}

footer .hbspt-form .actions {
  margin-top: 0;
  margin-bottom: 0;
}

footer h5 {
  margin-bottom: calc(var(--spacing-vertical) / 2);
}

footer .wp-block-image {
  margin-top: var(--spacing-vertical);
  margin-bottom: 0;
  font-size: var(--font-size-small);
  line-height: var(--line-height-small);
  text-align: center;
}

footer .widget_media_image {
  opacity: 0.7;
}

footer .widget_media_image:hover {
  opacity: 1;
}

footer .wp-block-image > a {
    max-width: 60%;
  display: block;
  overflow: auto;
  margin: 0 auto;
  text-decoration: none;
}

footer [class^="wp-image"] {
  width: 100%;
  float: left;
}

footer .wp-block-image figcaption {
  display: block;
  margin: calc(var(--spacing-vertical) / 2) 0 0 0;
  float: left;
  width: 100%;
}

footer .widget_block {
  overflow: auto;
  float:left;
  width: 100%;
}

footer .widget_block p {
  margin: 0;
  padding: 0;
}

footer figcaption a {
  color: var(--color-text);
  text-decoration: none;
}

footer figcaption a:hover {
  text-decoration: underline;
}

footer a.flag {
  margin: 0 auto;
  float: none;
}

.margin-top {
  margin-top: calc(var(--spacing-vertical) * 2) !important;
}