/* base.css — language-agnostic common styles shared by all pages.
   Font values are intentionally absent here; fonts-<lang>.css defines
   --font-display / --font-body / --font-mono and this file only
   references them by name. */

:root {
  --bg: #fcfbf8;
  --bg-elevated: #f7f4ed;
  --bg-card: #faf8f1;
  --border: #d3cfc0;
  --border-strong: #a8a394;
  --text: #1a1714;
  --text-muted: #6b665e;
  --text-dim: #9a948a;
  --accent: #F26522;           /* Signal orange — preserved across themes */
  --accent-dim: #a84518;
  --warn: #ff6b4a;
  --section-pad: clamp(5rem, 10vh, 9rem);
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
/* Offset anchor scroll so top nav doesn't cover section headings */
section[id] { scroll-margin-top: calc(var(--nav-height, 60px) + 24px); }

/* ============ FOOTER (identical across all pages) ============ */
footer {
  padding: 3rem 0 1.5rem;
  background: var(--bg);
}
.footer-main {
  display: grid;
  grid-template-columns: 1fr auto auto;
  gap: 5rem;
  margin-bottom: 2rem;
}
.footer-brand p {
  color: var(--text-muted);
  font-size: 0.9rem;
  margin-top: 1rem;
  max-width: 30ch;
  line-height: 1.55;
}
.footer-col {
  min-width: 140px;
  text-align: start;
}
.footer-col h4 {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--text-muted);
  margin-bottom: 1.25rem;
  font-weight: 500;
}
.footer-col ul { list-style: none; }
.footer-col li { margin-bottom: 0.6rem; }
.footer-col a {
  color: var(--text);
  opacity: 0.7;
  text-decoration: none;
  font-size: 0.875rem;
  transition: opacity 0.2s;
}
.footer-col a:hover { opacity: 1; }
.footer-bottom {
  border-top: 1px solid var(--border);
  padding-top: 1.25rem;
  display: flex;
  justify-content: space-between;
  color: var(--text-dim);
  font-family: var(--font-mono);
  font-size: 0.75rem;
  letter-spacing: 0.05em;
}

@media (max-width: 600px) {
  .footer-main { grid-template-columns: 1fr; gap: 2rem; }
  .footer-col { min-width: 0; }
  .footer-bottom { flex-direction: column; gap: 0.5rem; text-align: center; }
}
