/* 01 BASE: tokens, reset, type, buttons */
* { box-sizing: border-box; margin: 0; padding: 0; }
  :root {
    --bg: #fff;
    --ink: #000;
    --muted: #555;
    --line: #e8e8e8;
    --sans: "Satoshi", -apple-system, "Segoe UI", Roboto, sans-serif;
    --mono: "IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;
  }
  html { scroll-behavior: smooth; }
  /* anchored targets must clear the 76px floating bar on jump */
  section[id], div[id] { scroll-margin-top: 96px; }
  body {
    font-family: var(--sans);
    background: var(--bg);
    color: var(--ink);
    font-size: 17px;
    line-height: 1.6;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
  }
  main { overflow-x: hidden; width: 100%; max-width: 100%; }
  img { max-width: 100%; display: block; }
  a { color: inherit; text-decoration: none; }
  ul { list-style: none; }
  .wrap { max-width: 1280px; margin: 0 auto; padding: 0 32px; }
  .mono {
    font-family: var(--mono);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.12em;
    text-transform: uppercase;
  }

