*,*::before,*::after{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
body{margin:0;background:var(--surface-page);color:var(--text-primary);font:var(--type-body);letter-spacing:var(--tracking-body)}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-display);letter-spacing:var(--tracking-heading);line-height:var(--leading-heading);margin:0;text-wrap:balance}
p{margin:0;text-wrap:pretty}
a{color:var(--text-link);text-decoration:none;transition:color var(--dur-fast) var(--ease-out-quart)}
a:hover{color:var(--text-link-hover)}
em,i{font-style:italic}
em,.tlf-accent{font-style:normal;font-weight:var(--weight-accent);color:color-mix(in oklab,currentColor 52%,transparent)}
.tlf-serif{font-family:var(--font-accent);font-style:italic;font-weight:400}
::selection{background:var(--clay-300);color:var(--ink-900)}
:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}
.tlf-eyebrow{font:var(--type-meta);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-secondary)}
.tlf-grain{position:relative;isolation:isolate}
.tlf-grain::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.07;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}
