/* Base styles: owned by the Lead Developer */
body { font-family: var(--font-body); color: var(--color-text); background: var(--color-bg); line-height: 1.6; }
a { color: var(--color-accent); }
a:focus-visible { outline: 3px solid var(--color-accent); outline-offset: 2px; }
.skip-link { position: absolute; left: -999px; }
.skip-link:focus { left: var(--space); top: var(--space); background: var(--color-bg); padding: .5rem; }
.lead { font-size: 1.15rem; }

/* Content components */
h1, h2 { font-family: var(--font-display); line-height: var(--leading-tight); color: var(--color-navy); }
h1 { font-size: var(--text-2xl); }
h2 { font-size: var(--text-xl); margin: var(--space-5) 0 var(--space-2); }
.hero { display: block; margin: var(--space-5) 0; border-radius: var(--radius-md); }
section + section { margin-top: var(--space-4); }
/* Cards, timeline and filters are styled in layout.css */
