/* ============================================================================
   The site footer (partial/footer.html) — every ordinary page; the IDE and a
   game's play page leave it out. The logo reuses the header's .brand rules
   (global.css); everything else is here.
   ============================================================================ */

.site-footer {
  position: relative;
  z-index: 40;
  border-top: 3px solid var(--color-line);
  background: var(--header-glass);
  backdrop-filter: blur(4px);
}

/* The logo column, then the three link columns — capped at the page's own width. */
.footer-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr));
  gap: 32px;
  max-width: 1140px;
  margin: 0 auto;
  padding: 40px 22px 32px;
}

/* ---- the brand side ---- */
.footer-brand .brand { display: inline-flex; }
.footer-slogan {
  margin: 18px 0 6px;
  font-family: var(--font-display);
  font-size: 11px;
  line-height: 1.7;
  color: var(--color-text);
}
.footer-slogan-hit { color: var(--color-green); }
.footer-blurb {
  max-width: 320px;
  margin: 0;
  font-size: 19px;
  line-height: 1.3;
  color: var(--color-muted);
}

/* ---- the link columns ---- */
.footer-h {
  margin: 4px 0 16px;
  font-family: var(--font-display);
  font-size: 10px;
  letter-spacing: 1px;
  color: var(--color-pink-light);
}
.footer-links {
  margin: 0;
  padding: 0;
  list-style: none;
}
.footer-links li { margin: 0 0 10px; }
/* A link, or the guest's MAKE A GAME button dressed as one. */
.footer-link {
  padding: 0;
  font-family: var(--font-body);
  font-size: 20px;
  color: var(--color-text-dim);
  text-decoration: none;
  background: none;
  border: 0;
  cursor: pointer;
}
.footer-link:hover,
.footer-link:focus-visible { color: var(--color-cyan); }

/* ---- the bottom strip ---- */
.footer-bottom {
  max-width: 1140px;
  margin: 0 auto;
  padding: 16px 22px 22px;
  border-top: 1px solid var(--color-line);
  font-size: 18px;
  color: var(--color-faint);
}
.footer-copy { margin: 0; }

/* Tablet: the logo takes a row of its own, the three columns sit under it. */
@media (max-width: 760px) {
  .footer-inner { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .footer-brand { grid-column: 1 / -1; }
}
/* Phone: everything stacks. */
@media (max-width: 560px) {
  .footer-inner { grid-template-columns: 1fr; gap: 24px; padding: 32px 16px 24px; }
  .footer-bottom { padding: 14px 16px 20px; }
}
