/* Minimal base layer: body defaults + link colours so nothing falls back to
   browser blue. Deliberately small - components carry their own styling. */

body { margin: 0; font-family: var(--font-body); font-size: var(--text-base); line-height: var(--leading-24); color: var(--text-body); background: var(--surface-page); -webkit-font-smoothing: antialiased; text-wrap: pretty; }
h1, h2 { font-family: var(--font-display); font-weight: 400; margin: 0; }
h3, h4, h5, h6 { font-family: var(--font-body); font-weight: 700; margin: 0; }
p { margin: 0; }
a { color: var(--text-brand); text-decoration: none; transition: color var(--duration-fast) var(--ease-standard); }
a:hover { color: var(--orange-600); }
a:active { color: var(--orange-700); }
a:focus-visible { outline: none; box-shadow: var(--focus-ring); border-radius: var(--radius-sm); }
button, input, select, textarea { font: inherit; color: inherit; }
img { display: block; }
::selection { background: var(--surface-cream); color: var(--text-primary); }
