:root{
--font-sans:"Geist","Suisse Intl","Neue Montreal",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
--font-mono:"Geist Mono","IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
/* fluid scale: mobile → desktop, capped per spec (display max 64) */
--text-display:clamp(36px,26px + 2.6vw,56px); /* @kind other */
--text-hero:clamp(34px,24px + 2.6vw,60px); /* @kind other */
--text-h1:clamp(28px,22px + 1.8vw,46px); /* @kind other */
--text-h2:clamp(24px,19px + 1.3vw,38px); /* @kind other */
--text-h3:clamp(18px,15px + .8vw,26px); /* @kind other */
--text-card:clamp(18px,16px + .4vw,22px); /* @kind other */
--text-body-lg:17px;
--text-body:16px;
--text-small:14px;
--text-meta:11px;
--text-mono:11px;
--weight-regular:400;
--weight-medium:500;
--weight-semibold:600;
--weight-bold:700;
--leading-tight:1.04;
--leading-heading:1.1;
--leading-snug:1.3;
--leading-body:1.55;
--tracking-display:-0.032em;
--tracking-heading:-0.022em;
--tracking-body:-0.005em;
--tracking-mono:0.08em;
--tracking-wordmark:0.16em;
--measure:36em;
}
