/* ============================================================
   base.css — Reset en basisstijlen (dark editorial)
   ============================================================ */

*,
*::before,
*::after {
  box-sizing: border-box;
}

* { margin: 0; }

html {
  scroll-behavior: smooth;
  scroll-padding-top: 92px;   /* ankers stoppen netjes onder de vaste header */
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: var(--font-body);
  font-size: var(--fs-body);
  line-height: var(--lh-normal);
  color: var(--cream);
  background-color: var(--navy);      /* donkere basis */
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Tekstselectie in goud */
::selection {
  background: var(--gold);
  color: var(--navy);
}

img { max-width: 100%; display: block; }

/* Koppen krijgen het chique display-lettertype */
h1, h2, h3, h4 {
  font-family: var(--font-display);
  font-weight: 500;
  line-height: var(--lh-tight);
  color: var(--cream);
}

a { color: inherit; text-decoration: none; }

button, input, textarea, select { font: inherit; color: inherit; }

/* Duidelijke focusring voor toetsenbordgebruikers */
:focus-visible {
  outline: 2px solid var(--gold);
  outline-offset: 3px;
}

/* Respecteer voorkeur voor minder beweging: zet animaties uit */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
}
