/* GENESIS v3-sub — typographic unification for sub-pages (2026-06-10).
   Loads AFTER each sub-page's own styles. Brings the v3 type system
   (Geist/Geist Mono) + interaction polish without touching layout. */
@font-face {
  font-family: 'Geist';
  src: url('/static/brand/fonts/Geist-Variable.woff2') format('woff2');
  font-weight: 100 900; font-display: swap;
}
@font-face {
  font-family: 'Geist Mono';
  src: url('/static/brand/fonts/GeistMono-Variable.woff2') format('woff2');
  font-weight: 100 900; font-display: swap;
}
body {
  font-family: 'Geist', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
h1, h2, h3, h4 { letter-spacing: -0.02em; }
code, pre, .mono { font-family: 'Geist Mono', ui-monospace, monospace; }
::selection { background: rgba(0,191,255,0.35); color: #fff; }
:focus-visible { outline: 2px solid #00BFFF; outline-offset: 2px; }

/* QA sweep 2026-06-11: portfolio header rendered near-black ink on navy
   (1.05:1) and the green "New" tag sat at 3.3:1. Force readable values. */
.site-header, .site-header a, .site-header .brand,
.site-nav, .site-nav a { color: #FFFFFF !important; }
.site-nav a:hover { color: #00F0FF !important; }
.tag.tag-new { color: #04785E !important; }
