/* Minimal reset. Browsers apply a default 8px margin to <body> — left
   unreset, it was throwing off every pixel-exact measurement the Hero
   scroll animation relies on (js/main.js measures real rendered
   positions via getBoundingClientRect(), so an 8px phantom offset here
   propagated straight into the full-bleed/navbar-alignment math). */
* {
  box-sizing: border-box;
}

body {
  margin: 0;
}
