*,*::before,*::after{box-sizing:border-box;}
html,body{margin:0;padding:0;}

body{
  background:var(--c-canvas);
  color:var(--c-ink);
  font-family:var(--font-text);
  font-size:16px;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

h1{
  font-family:var(--font-display);
  font-weight:400;
  font-size:clamp(34px,5vw,60px);
  line-height:0.95;
  letter-spacing:0.5px;
  text-transform:uppercase;
  margin:0;
}

h2,h3{font-family:var(--font-text);font-weight:700;line-height:1.05;margin:0;color:var(--c-ink);}
h2{font-size:24px;}
h3{font-size:18px;}

a{color:var(--c-primary);text-decoration:none;transition:color .15s;}
a:hover{color:var(--c-link-hover);}

p{margin:0 0 12px;}
.muted{color:var(--c-ink-subtle);}
.small{font-size:12px;line-height:1.5;color:var(--c-ink-subtle);}

.eyebrow{
  font-family:var(--font-mono);font-size:12px;font-weight:700;
  letter-spacing:1.8px;text-transform:uppercase;color:var(--c-primary);
}
.mono{font-family:var(--font-mono);font-size:12px;letter-spacing:1px;}

code{
  font-family:var(--font-mono);font-size:12px;letter-spacing:0.5px;
  background:var(--c-surface-2);border:1px solid var(--c-hairline);
  padding:2px 6px;border-radius:var(--r-chip);color:var(--c-primary);
}
.pos{color:var(--c-success);}
.neg{color:var(--c-red);}

*::-webkit-scrollbar{width:10px;height:10px;}
*::-webkit-scrollbar-track{background:var(--c-canvas);}
*::-webkit-scrollbar-thumb{background:var(--c-surface-2);border-radius:var(--r-round);border:2px solid var(--c-canvas);}
*::-webkit-scrollbar-thumb:hover{background:var(--c-dim);}

::selection{background:var(--c-primary);color:var(--c-inverted);}

:focus-visible{outline:2px solid var(--c-focus);outline-offset:1px;}
