/* ============================================================
   HUB Systems - base: design tokens, reset, root elements
   Load order: base → layout → components → pages
   ============================================================ */
:root {
  --green: #7bc043;
  --green-light: #99ca46;
  --green-deep: #3e7a1a;
  --green-dim: rgba(123, 192, 67, 0.12);
  --bg: #f7f8f3;
  --bg2: #ffffff;
  --line: #dde4d8;
  --line-soft: #e7ece2;
  --text: #1c2622;
  --muted: #5e6e66;
  --tint: #f4f8f1;
  --on-green: #10160c; /* text on solid green */
  --dark-muted: #9fb0a6; /* body text on dark sections */
  --dark-soft: #b9c4bc; /* ledes on dark sections */
  --dark-dim: #8e9c93; /* footer text */
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
::selection {
  background: var(--text);
  color: var(--green-light);
}
html {
  scroll-behavior: smooth;
}
body {
  font-family: "Inter", sans-serif;
  background: var(--bg);
  color: var(--text);
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
img {
  max-width: 100%;
}
a {
  text-decoration: none;
  color: inherit;
}
.wrap {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 32px;
}
/* reveal hidden state applies ONLY after JS confirms GSAP+ScrollTrigger (progressive enhancement) */
body.motion-ready [data-rv],
body.motion-ready [data-split] {
  opacity: 0;
}
