/* Peace of Mind's integrated footer. Scoped to its reviewed site design. */
.site-footer.pom-footer {
  background: #12364d;
  color: #e6eff5;
  padding: 64px 0 0;
  font: 400 15px/1.6 "DM Sans", Arial, sans-serif;
  scroll-margin-top: calc(var(--header, 0px) + 24px);
}
.pom-footer .pom-footer__inner {
  width: min(1312px, calc(100% - 96px));
  margin-inline: auto;
}
.pom-footer .pom-footer__columns {
  display: grid;
  grid-template-columns: minmax(280px, 1.55fr) repeat(3, minmax(0, 1fr));
  gap: 48px;
  padding-bottom: 48px;
}
.pom-footer .pom-footer__brand { min-width: 0; }
.pom-footer .pom-footer__logo { display: block; width: 230px; max-width: 100%; }
.pom-footer .pom-footer__logo img { width: 100%; height: auto; }
.pom-footer .pom-footer__tagline { margin: 22px 0 16px; color: #d6e4ee; }
.pom-footer .pom-footer__contact { font-style: normal; font-size: 14px; }
.pom-footer .pom-footer__contact a { display: flex; align-items: center; min-height: 44px; width: fit-content; max-width: 100%; overflow-wrap: anywhere; }
.pom-footer .pom-footer__contact span { display: block; margin-top: 4px; color: #d6e4ee; }
.pom-footer .pom-footer__nav { display: block; min-width: 0; padding-top: 10px; }
.pom-footer .pom-footer__nav h2 {
  margin: 0 0 14px;
  color: #fff9e6;
  font: 600 14px/1.5 "DM Sans", Arial, sans-serif;
  letter-spacing: .01em;
}
.pom-footer .pom-footer__nav ul { display: block; margin: 0; padding: 0; list-style: none; }
.pom-footer .pom-footer__nav li { margin: 0; padding: 0; }
.pom-footer .pom-footer__nav li > a { display: flex; align-items: center; min-height: 44px; padding: 9px 0; font-size: 15px; line-height: 1.6; }
.pom-footer a { color: #e6eff5; text-decoration: none; text-underline-offset: 5px; }
.pom-footer a:hover { color: #fff9e6; text-decoration: underline; }
.pom-footer a:focus-visible { outline: 2px solid #fff9e6; outline-offset: 4px; border-radius: 2px; }
.pom-footer .pom-footer__nav a.pom-footer__quote { color: #fff9e6; font-weight: 600; gap: 10px; }
.pom-footer .footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 24px;
  margin: 0;
  padding: 20px 0;
  border-top: 1px solid #7592a5;
  color: #d6e4ee;
  font: 400 12px/1.6 "DM Sans", Arial, sans-serif;
}
.pom-footer .footer-bottom p { margin: 0; }
.pom-footer .footer-bottom a { display: inline-flex; align-items: center; gap: 5px; min-height: 44px; }
.pom-footer .footer-bottom strong { font-weight: 500; }
.pom-footer .footer-bottom .icon { width: 14px; height: 14px; }
@media (max-width: 1100px) {
  .pom-footer .pom-footer__inner { width: calc(100% - 64px); }
  .pom-footer .pom-footer__columns { grid-template-columns: minmax(250px, 1.4fr) repeat(3, minmax(0, 1fr)); gap: 28px; }
}
@media (max-width: 900px) {
  .pom-footer .pom-footer__columns { grid-template-columns: 1.2fr 1fr; gap: 36px 56px; }
}
@media (max-width: 600px) {
  .site-footer.pom-footer { padding-top: 40px; }
  .pom-footer .pom-footer__inner { width: calc(100% - 48px); }
  .pom-footer .pom-footer__columns { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px 24px; padding-bottom: 32px; }
  .pom-footer .pom-footer__brand { grid-column: 1 / -1; }
  .pom-footer .pom-footer__logo { width: 210px; }
  .pom-footer .pom-footer__nav { padding-top: 0; }
  .pom-footer .pom-footer__nav h2 { margin-bottom: 10px; }
  .pom-footer .pom-footer__nav li > a { font-size: 14px; }
  .pom-footer .pom-footer__company { grid-column: 1 / -1; padding-top: 26px; border-top: 1px solid #496b80; }
  .pom-footer .pom-footer__company ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 24px; }
  .pom-footer .footer-bottom { flex-direction: row; gap: 8px 16px; padding: 20px 0 16px; }
  .pom-footer .footer-bottom p { flex-basis: 100%; }
}
@media (max-width: 359px) {
  .pom-footer .pom-footer__columns { grid-template-columns: 1fr; }
  .pom-footer .pom-footer__company ul { grid-template-columns: 1fr; }
}
@media print { .site-footer.pom-footer { display: none; } }
