/* base.css - Minimal modern base + accessibility (updated for simplified header) */
*,
*::before,
*::after { 
  box-sizing: border-box; 
}

html { 
  -webkit-text-size-adjust: 100%; 
}

html, body { 
  height: 100%; 
}

body {
  margin: 0;
  font-family: var(--font-ui);
  font-size: var(--font-size-200);
  line-height: 1.55;
  color: var(--color-fg);
  background: var(--color-bg);
  /* Prevent body scroll when mobile menu is open */
  overflow-x: hidden;
}

img, svg, video, canvas { 
  display: block; 
  max-width: 100%; 
  height: auto; 
}

picture { 
  display: block; 
}

a { 
  color: inherit; 
  text-decoration-thickness: 1px; 
  text-underline-offset: 2px; 
}

a:hover { 
  text-decoration: underline; 
}

button, input, select, textarea { 
  font: inherit; 
  color: inherit; 
}

:focus-visible {
  outline: 2px solid var(--color-accent);
  outline-offset: 2px;
}

/* Utility: visually-hidden (screen-reader only) */
.sr-only {
  position: absolute !important;
  width: 1px; 
  height: 1px;
  padding: 0; 
  margin: -1px; 
  overflow: hidden; 
  clip: rect(0,0,0,0); 
  white-space: nowrap; 
  border: 0;
}