/* ==========================================================================
   SITE FOOTER — styles for the footer that footer.js draws on every page
   ========================================================================== */
.footer-divider { position: relative; height: 7px; margin-top: 56px; margin-bottom: 26px; }
.footer-divider::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 2.5px; background: var(--ink); }
.footer-divider::after { content: ""; position: absolute; top: 5.5px; left: 0; right: 0; height: 1px; background: var(--rule-strong); }
.site-footer { padding: 0 0 40px; display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; gap: 12px; }
.footer-name { font-family: "Playfair Display", serif; font-size: 21px; font-weight: 700; letter-spacing: -0.5px; }
.footer-meta { font-family: "DM Mono", monospace; font-size: 10px; color: var(--grey-faint); text-align: right; line-height: 2; letter-spacing: 0.04em; text-transform: uppercase; }
/* THE DESKS ROW — a short line in the paper's voice, then the desks as
   proper links: serif, ink, a copper rule under each, 44px tap targets
   from padding the negative margins hand back. */
.site-nav { text-align: center; padding: 26px 0 0; }
.site-nav-lead { margin: 0 0 6px; font-family: "Source Serif 4", Georgia, serif; font-style: italic; font-size: 15px; color: var(--grey); }
.site-nav-desks { display: flex; flex-wrap: wrap; justify-content: center; gap: 0 22px; }
.site-nav-desk {
  display: inline-block; padding: 11px 2px; margin: -1px 0 -1px;
  font-family: "Source Serif 4", Georgia, serif; font-size: 17px; font-weight: 600; line-height: 22px;
  color: var(--ink); text-decoration: none; border-bottom: 1.5px solid rgba(var(--copper-rgb), 0.55);
  transition: color 0.15s ease, border-color 0.15s ease;
}
.site-nav-desk:hover { color: var(--copper); border-bottom-color: var(--copper); }
.site-nav-desk:focus-visible, .site-nav-today:focus-visible { outline: 2px solid var(--copper); outline-offset: 2px; border-radius: 3px; }
.site-nav-today {
  display: inline-flex; align-items: center; min-height: 44px; margin-top: 10px; padding: 0 6px;
  font-family: "DM Mono", monospace; font-size: 11px; letter-spacing: 0.04em; text-transform: uppercase;
  color: var(--copper); text-decoration: none;
}
.site-nav-today:hover { text-decoration: underline; }
.footer-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; position: relative; }
.footer-btn { font-family: "DM Mono", monospace; font-size: 10px; letter-spacing: 0.04em; color: var(--ink); background: none; border: 1px solid var(--rule-strong); border-radius: 20px; padding: 6px 12px; cursor: pointer; display: inline-flex; align-items: center; gap: 5px; transition: background 0.15s, border-color 0.15s; }
.footer-btn:hover { border-color: var(--ink); background: rgba(var(--ink-rgb), 0.05); }
.ios-install-tip { position: absolute; bottom: 100%; left: 0; margin-bottom: 8px; background: var(--ink); color: var(--ground); font-family: "DM Mono", monospace; font-size: 9px; line-height: 1.5; padding: 8px 12px; border-radius: 4px; white-space: nowrap; z-index: 5; }
.footer-copied { font-family: "DM Mono", monospace; font-size: 10px; letter-spacing: 0.03em; text-transform: uppercase; color: var(--blue); }
