/* PSC footer v1 (Claude, 14 Nov 2026): one footer for the forum, PSC Home and the videos site. A deep
   teal band in both looks, like the PSC bar at the top. */
.psc-footer {
  --pf-bg: #0a2125;
  --pf-line: #2a4642;
  --pf-text: #e6f4ed;
  --pf-muted: #b7c9c4;
  --pf-head: #c5e9d1;
  display: block;
  margin: 0;
  padding: 2.5rem max(1.25rem, env(safe-area-inset-right)) calc(1.25rem + env(safe-area-inset-bottom)) max(1.25rem, env(safe-area-inset-left));
  background: var(--pf-bg);
  border-top: 1px solid #354c4c;
  color: var(--pf-text);
  font: 400 .9rem/1.55 system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;
  text-align: start;
}
html[data-theme="light"] .psc-footer,
html[data-ips-scheme="light"] .psc-footer { --pf-bg: #0c3037; border-top-color: transparent; }
.psc-footer *,
.psc-footer *::before,
.psc-footer *::after { box-sizing: border-box; }
.psc-footer__inner {
  max-width: 74rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.4fr repeat(4, minmax(0, 1fr));
  gap: 2rem;
}
.psc-footer__brand { display: flex; align-items: flex-start; gap: .8rem; }
.psc-footer__brand img { display: block; width: 44px; height: 44px; flex: none; padding: 3px; border-radius: 11px; background: #e9eeea; }
.psc-footer__name { margin: 0; color: #fff; font: 700 1.05rem/1.25 Georgia, "Times New Roman", serif; }
.psc-footer__tag { margin: .25rem 0 0; color: var(--pf-muted); font-size: .85rem; }
.psc-footer__col h2 {
  margin: 0 0 .65rem;
  color: var(--pf-head);
  font: 750 .75rem/1.3 system-ui, -apple-system, "Segoe UI", Helvetica, Arial, sans-serif;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.psc-footer__col ul { display: grid; gap: .4rem; margin: 0; padding: 0; list-style: none; }
.psc-footer__col li { margin: 0; padding: 0; }
.psc-footer a { color: var(--pf-text); text-decoration: none; }
.psc-footer a:hover { color: #fff; text-decoration: underline; text-underline-offset: .25em; }
.psc-footer a:focus-visible { outline: 2px solid #f4d0a2; outline-offset: 2px; border-radius: 3px; }
.psc-footer__soon { color: var(--pf-muted); }
.psc-footer__base {
  max-width: 74rem;
  margin: 2rem auto 0;
  padding-top: 1rem;
  border-top: 1px solid var(--pf-line);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: .5rem 1rem;
  color: var(--pf-muted);
  font-size: .82rem;
}
.psc-footer__base p { margin: 0; }
@media (max-width: 60rem) {
  .psc-footer__inner { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.75rem 1.25rem; }
  .psc-footer__brand { grid-column: 1 / -1; }
}
@media (max-width: 40rem) {
  .psc-footer__inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media print { .psc-footer { display: none; } }
