/* Shared multi-column site footer */
.site-footer{
  border-top:2px solid var(--line,#DDD8F2);
  padding:48px 0 28px;
  color:var(--ink-soft,#5A5380);
  font-size:.92rem;
  background:transparent;
}
.site-footer .wrap{
  max-width:1120px;
  margin:0 auto;
  padding:0 24px;
}
.site-footer .footer-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,2.2fr) minmax(0,1fr);
  gap:28px 24px;
  text-align:left;
}
.site-footer .footer-col-messengers ul{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 18px;
}
.site-footer .footer-col h3{
  font-family:'Fredoka',sans-serif;
  font-size:.95rem;
  font-weight:600;
  color:var(--ink,#2B2352);
  margin:0 0 12px;
}
.site-footer .footer-col ul{
  list-style:none;
  margin:0;
  padding:0;
}
.site-footer .footer-col li{margin:0 0 8px}
.site-footer .footer-col a,
.site-footer .footer-col button.linkish{
  color:var(--ink-soft,#5A5380);
  text-decoration:none;
  font-weight:700;
  background:none;
  border:none;
  padding:0;
  margin:0;
  font:inherit;
  font-weight:700;
  cursor:pointer;
  text-align:left;
}
.site-footer .footer-col a:hover,
.site-footer .footer-col button.linkish:hover{
  color:var(--ink,#2B2352);
}
.site-footer .footer-note{
  margin:28px 0 0;
  padding-top:20px;
  border-top:2px solid var(--line,#DDD8F2);
  font-size:.85rem;
  text-align:left;
}
@media (max-width:900px){
  .site-footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .site-footer .footer-col-messengers{grid-column:1 / -1}
}
@media (max-width:640px){
  .site-footer{padding:36px 0 24px}
  .site-footer .footer-grid{grid-template-columns:1fr;gap:22px}
  .site-footer .footer-col-messengers ul{grid-template-columns:1fr}
  .site-footer .footer-note{text-align:center}
}
