/* Sidfot - se anmärkning i footer.php om att ingen sidfot finns i
   prototyperna. Byggd av samma tokens som resten av temat. */

.ff-footer {
  background: var(--ff-dark);
  color: rgba(255, 255, 255, 0.82);
  margin-top: 40px;
}
.ff-footer__inner {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1fr;
  gap: 32px;
  padding-top: 48px;
  padding-bottom: 32px;
}
.ff-footer .ff-logo__img,
.ff-footer .ff-logo__text { height: 40px; filter: brightness(0) invert(1); }
.ff-footer .ff-logo__text { filter: none; color: #fff; font-size: 20px; }
.ff-footer__tagline { font-size: 14px; color: rgba(255, 255, 255, 0.65); max-width: 32ch; }
.ff-footer__col { display: flex; flex-direction: column; gap: 10px; }
.ff-footer__heading {
  font-family: var(--ff-font-mono);
  word-spacing: -0.2em;
  font-size: 12px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.55);
  margin: 0 0 4px;
}
.ff-footer__col a { color: rgba(255, 255, 255, 0.82); font-size: 14px; }
.ff-footer__col a:hover { color: var(--ff-green-light); }
.ff-footer__legal {
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  padding: 18px 32px;
  font-size: 12px;
  color: rgba(255, 255, 255, 0.5);
}

@media (max-width: 1023px) {
  .ff-footer__inner { grid-template-columns: 1fr 1fr; padding: 32px 14px; min-width: 0; max-width: 100%; }
  .ff-footer__legal { padding: 16px 14px; min-width: 0; max-width: 100%; }
}
