body{margin:0;background:var(--surface-page);color:var(--text-body);font-family:var(--font-sans-ui);font-size:var(--text-body-md);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--font-serif-display);color:var(--text-title);font-weight:var(--weight-regular);letter-spacing:var(--tracking-title);margin:0}
h1{font-size:var(--text-title-1);line-height:var(--leading-snug)}
h2{font-size:var(--text-title-2);line-height:var(--leading-snug)}
h3{font-size:var(--text-title-3);line-height:var(--leading-snug)}
p{margin:0 0 var(--space-4);text-wrap:pretty}
a{color:var(--text-accent);text-decoration:none;border-bottom:1px solid color-mix(in oklab,currentColor 35%,transparent);transition:var(--transition-control)}
a:hover{color:var(--pf-olive);border-bottom-color:currentColor}
code,pre{font-family:var(--font-mono);font-size:.92em}
.pf-eyebrow{font-family:var(--font-sans-ui);font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--text-muted);font-weight:var(--weight-semibold)}
.pf-prose{font-family:var(--font-serif-reading);font-size:var(--text-prose-md);line-height:var(--leading-relaxed);letter-spacing:var(--tracking-reading);color:var(--text-body);max-width:var(--measure-prose)}
.pf-prose p{margin:0 0 var(--space-5)}
.pf-prose em{font-style:italic}
.pf-quote{font-family:var(--font-serif-reading);font-style:italic;font-weight:500;font-size:var(--text-title-3);line-height:var(--leading-normal);color:var(--text-title)}
.pf-display{font-family:var(--font-serif-display);font-size:var(--text-display-1);line-height:var(--leading-tight);letter-spacing:var(--tracking-display);color:var(--text-title)}
*:focus-visible{outline:none;box-shadow:var(--ring-focus);border-radius:var(--radius-xs)}
