.site-footer.shared-footer {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 40px 0 28px;
  border-top: 1px solid rgba(255, 255, 255, .16);
  color: rgba(255, 255, 255, .88);
  background: #3f1c62;
  font-family: var(--body, Arial, sans-serif);
}

.site-footer.shared-footer::after { content: none; }

.shared-footer *,
.shared-footer *::before,
.shared-footer *::after { box-sizing: border-box; }

.shared-footer a { color: inherit; text-decoration: none; }

.shared-footer__waves {
  display: none;
}

.shared-footer__waves path {
  fill: none;
  stroke: rgba(255, 255, 255, .12);
  stroke-width: 1;
  vector-effect: non-scaling-stroke;
}

.shared-footer__waves path:nth-child(even) { stroke: rgba(255, 255, 255, .07); }

.shared-footer__inner {
  position: relative;
  z-index: 2;
  width: min(calc(100% - 48px), 1180px);
  margin: 0 auto;
}

.shared-footer__grid {
  display: grid;
  grid-template-columns: 1.45fr 1fr 1fr 1fr 1.12fr;
  gap: 28px;
}

.shared-footer__column { display: flex; flex-direction: column; gap: 12px; }
.shared-footer__brand img { display: block; width: 122px; height: auto; margin-bottom: 14px; }
.shared-footer__brand p { max-width: 250px; margin: 0; color: rgba(255, 255, 255, .86); font-size: .86rem; line-height: 1.65; }
.shared-footer__title { margin-bottom: 2px; color: #fff; font-family: var(--heading, Arial, sans-serif); font-size: 1rem; font-weight: 700; }
.shared-footer__links { display: grid; gap: 8px; }
.shared-footer__links a { color: rgba(255, 255, 255, .86); }
.shared-footer__links a:hover,
.shared-footer__meta a:hover { color: #fff; }

.shared-footer__social { display: flex; gap: 14px; margin-top: 6px; }
.shared-footer__social a { display: inline-flex; align-items: center; justify-content: center; color: #fff; }
.shared-footer__social svg { width: 18px; height: 18px; flex: 0 0 auto; }

.shared-footer__meta {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 16px;
  margin-top: 30px;
  padding: 20px 0 0;
  border-top: 1px solid rgba(255, 255, 255, .26);
  color: rgba(255, 255, 255, .68);
  font-size: .92rem;
}

.shared-footer__meta-links { display: inline-flex; align-items: center; gap: 12px; }

@media (max-width: 1100px) {
  .shared-footer__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
  .site-footer.shared-footer { padding: 40px 0 28px; }
  .shared-footer__inner { width: min(calc(100% - 48px), 1180px); }
  .shared-footer__grid { grid-template-columns: 1fr; }
  .shared-footer__meta { align-items: flex-start; flex-direction: column; }
  .shared-footer__meta-links { flex-wrap: wrap; }
}
