/* base.css — reset, typography, layout primitives, spacing tokens */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
:root{
  /* Spacing tokens (8px scale + 4px micro) */
  --space-1:4px;
  --space-2:8px;
  --space-3:12px;
  --space-4:16px;
  --space-5:24px;
  --space-6:32px;
  --space-7:48px;
  --space-8:64px;
  --space-9:96px;

  /* Legacy alias variables (keeps existing CSS stable) */
  --primary:var(--brand);
  --primary-dark:var(--brand-2);
  --primary-light:var(--surface);
  /* NOTE: do NOT redeclare --text/--bg/--border/--bg-alt/--success here */
  --text-light:var(--muted);
}
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
}
img,video,iframe,embed,object{max-width:100%;height:auto}
section[id]{scroll-margin-top:120px}
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible{
  outline:2px solid var(--brand);
  outline-offset:2px;
}


/* Layout stability */
html { scrollbar-gutter: stable; }
html, body { overflow-x: hidden; }
