@font-face {
  font-family: Geist;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/_next/static/_vinext_fonts/geist-8ac0455e797f/geist-98bbbccb.woff2") format("woff2");
}

@font-face {
  font-family: "Geist Mono";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/_next/static/_vinext_fonts/geist-mono-00e989178794/geist-mono-013b2f2f.woff2") format("woff2");
}

body {
  --font-geist-sans: Geist, Arial, sans-serif;
  --font-geist-mono: "Geist Mono", monospace;
}

.scenario-quote {
  margin: 24px 0 32px;
  padding: 8px 0 8px 22px;
  font: 20px/1.72 Georgia, serif;
}

.scenario-quote span {
  display: block;
  font: 11px/1.6 Geist, Arial, sans-serif;
  letter-spacing: .12em;
  color: var(--muted);
  margin-bottom: 8px;
}

.figure-storyboard {
  max-width: 640px;
  margin-left: auto;
  margin-right: auto;
}

.prose strong {
  font-weight: 600;
}

.architecture-figure > a:focus-visible {
  outline: 3px solid var(--ink);
  outline-offset: 5px;
  border-radius: 22px;
}

@media (prefers-reduced-motion: reduce) {
  .reading-progress {
    animation: none;
    display: none;
  }

  html {
    scroll-behavior: auto;
  }
}

.hero { padding-bottom: 48px; }
.benchmark-intro {
  width: 100%; max-width: 1040px; margin: 0 auto 32px;
  padding: 0 clamp(24px, 5vw, 64px);
}
.benchmark-intro .prose p:last-child { margin-bottom: 0; }
.benchmark-intro .prose .benchmark-guide {
  color: var(--muted); font: 14px/1.6 Geist, Arial, sans-serif;
}
.benchmark-figure {
  width: 100%; max-width: 1040px; margin: 0 auto;
  padding: 0 clamp(24px, 5vw, 64px);
}
.benchmark-figure figcaption {
  margin-top: 14px; color: var(--muted); font: 13px/1.5 Geist, Arial, sans-serif;
}
.benchmark-figure figcaption a { text-decoration: underline; text-underline-offset: 3px; }
