footer { opacity: 1; padding: 28px 60px; border-top: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.ft-l { font-family: 'Space Mono', monospace; font-size: 9px; letter-spacing: 0.18em; text-transform: uppercase; color: var(--dim); }
.ft-r { font-family: 'Space Grotesk', sans-serif; font-weight: 300; font-size: 14px; color: var(--dim); }
.ft-c { font-family: 'Space Mono', monospace; font-size: 9px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--muted); }

/* Work item thumbnail placeholder */
.wi-thumb {
  width: 96px; height: 72px; border-radius: 12px; flex-shrink: 0;
  background: linear-gradient(135deg, var(--bg3), var(--bg2));
  border: 1px solid var(--line2);
  display: flex; align-items: center; justify-content: center;
  font-family: 'Bebas Neue', sans-serif; font-size: 22px; letter-spacing: 0.05em;
  color: var(--dim); overflow: hidden; transition: border-color 0.35s, color 0.35s;
}
.work-item:hover .wi-thumb { border-color: var(--dim); color: var(--muted); }
.wi-thumb img { width: 100%; height: 100%; object-fit: cover; }

/* Cursor fallback if JS init fails or on touch */
html.cursor-fallback .custom-cursor { display: none !important; }
html.cursor-fallback body, html.cursor-fallback a, html.cursor-fallback button, html.cursor-fallback .toggle, html.cursor-fallback .work-item { cursor: auto !important; }
