/* VnB Media | shared CSS. Tokens first, then base. Component CSS stays inside each Elementor HTML widget. */

:root {
  --vnb-bg: #fcfcfc;
  --vnb-ink: #111111;
  --vnb-grey: #8a8a8a;
  --vnb-orange: #F15623;
  /* Fonts are finalised later: change these two lines only. */
  --vnb-mono: 'Courier Prime', 'Courier New', Courier, monospace;
  --vnb-serif: 'Times New Roman', Times, serif;
  --vnb-bar-h: clamp(56px, 4vw, 80px);
}

/* Base */
html { scroll-behavior: auto; }
body {
  margin: 0;
  background: var(--vnb-bg);
  color: var(--vnb-ink);
  font-family: var(--vnb-mono);
  -webkit-font-smoothing: antialiased;
}
img, video { max-width: 100%; height: auto; }

/* Scroll reveal helper: add data-reveal to any element (used by custom.js) */
html.vnb-js [data-reveal] { opacity: 0; transform: translateY(24px); }
@media (prefers-reduced-motion: reduce) {
  html.vnb-js [data-reveal] { opacity: 1; transform: none; }
}
