:root {
  --void: #050506;
  --ivory: #FAFAFA;
  --ivory-2: #F3F3F1;
  --mute: #6B6B72;
  --mute-d: #55555C;
  --line: rgba(5,5,6,.12);
  --display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;
  --serif: ui-serif, Georgia, "Times New Roman", serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
body {
  margin: 0;
  background: var(--ivory);
  color: var(--void);
  font: 17px/1.7 var(--serif);
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; }
h1, h2, h3 { font-family: var(--display); margin: 0; letter-spacing: -.02em; font-weight: 600; text-wrap: balance; }
p { margin: 0 0 1.1rem; }

.bar {
  border-bottom: 1px solid var(--line);
  background: var(--ivory);
  position: sticky; top: 0; z-index: 5;
}
.bar-inner {
  max-width: 46rem; margin-inline: auto; padding: 1.1rem 20px;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
}
.mark { font: 600 1.1rem var(--display); text-decoration: none; letter-spacing: -.02em; }
.bar-nav { display: flex; gap: 1.4rem; font: 500 .84rem var(--display); }
.bar-nav a { text-decoration: none; color: var(--mute-d); border-bottom: 1px solid transparent; padding-bottom: 2px; }
.bar-nav a:hover, .bar-nav a[aria-current] { color: var(--void); border-bottom-color: var(--void); }

.wrap { max-width: 40rem; margin-inline: auto; padding: 3.5rem 20px 5rem; }
.eyebrow {
  display: inline-flex; align-items: center; gap: .55rem;
  font: 600 .7rem/1 var(--display); letter-spacing: .18em; text-transform: uppercase;
  color: var(--mute); margin-bottom: 1rem;
}
.eyebrow::before { content: ""; width: 20px; height: 1px; background: currentColor; opacity: .6; }
h1 { font-size: clamp(1.9rem, 4.6vw, 2.6rem); line-height: 1.08; margin-bottom: .6rem; }
.stamp {
  display: block; font: 500 .82rem/1.5 var(--display); color: var(--mute);
  margin-bottom: 2.4rem; padding-bottom: 1.6rem; border-bottom: 1px solid var(--line);
}
h2 { font-size: 1.05rem; margin: 2.1rem 0 .6rem; }
h2:first-of-type { margin-top: 0; }
p, li { font-size: .98rem; color: #2B2A28; }
li { margin-bottom: .5rem; }
ul, ol { padding-left: 1.3rem; margin: 0 0 1.1rem; }
strong { font-weight: 600; }
a.inline { text-decoration: underline; text-underline-offset: 2px; }

.hub-grid { display: grid; gap: 1rem; margin-top: 2rem; }
.hub-card {
  display: block; text-decoration: none; color: inherit;
  border: 1px solid var(--line); border-radius: 14px; padding: 1.5rem 1.6rem;
  background: var(--ivory-2);
}
.hub-card h2 { margin: 0 0 .4rem; font-size: 1.15rem; }
.hub-card p { margin: 0; color: var(--mute-d); font-size: .92rem; }
.hub-card .go { display: block; margin-top: .8rem; font: 600 .78rem var(--display); color: var(--void); }

.foot {
  border-top: 1px solid var(--line); margin-top: 3rem; padding-top: 1.6rem;
  font: 500 .82rem var(--display); color: var(--mute);
}
.foot a { text-decoration: underline; text-underline-offset: 2px; }
