/* Typography — one family, fluid display sizes, generous body leading. */
:root{
--font-ui:'Outfit',system-ui,sans-serif;

--fs-display:clamp(2rem,calc(4vw + 1rem),3.5rem); /* @kind font */
--fs-h2:clamp(1.5rem,calc(2.5vw + 1rem),2.25rem); /* @kind font */
--fs-h3:clamp(1.25rem,calc(1.5vw + 1rem),1.5rem); /* @kind font */
--fs-body:clamp(1rem,calc(0.5vw + 0.95rem),1.125rem); /* @kind font */
--fs-small:0.9rem; /* @kind font */
--fs-caption:0.8rem; /* @kind font */

--lh-tight:1.2; /* @kind font */
--lh-body:1.65; /* @kind font */
--measure:65ch; /* @kind other */

--fw-light:300; /* @kind font */
--fw-regular:400; /* @kind font */
--fw-medium:500; /* @kind font */
--fw-semibold:600; /* @kind font */
--fw-bold:700; /* @kind font */

--ls-heading:-0.02em; /* @kind font */
--ls-eyebrow:0.1em; /* @kind font */

/* Semantic aliases */
--text-display:var(--fs-display); /* @kind font */
--text-section:var(--fs-h2); /* @kind font */
--text-card-title:var(--fs-h3); /* @kind font */
--text-copy:var(--fs-body); /* @kind font */
--text-meta:var(--fs-small); /* @kind font */
--text-label:var(--fs-caption); /* @kind font */
}
