body{margin:0;background:var(--surface-page);color:var(--text-primary);font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,.ld-display{font-family:var(--font-display);margin:0;text-wrap:balance}
h1{font-size:var(--text-h1);line-height:var(--lh-h1);letter-spacing:var(--ls-h1);font-weight:600}
h2{font-size:var(--text-h2);line-height:var(--lh-h2);letter-spacing:var(--ls-h2);font-weight:500}
.ld-display{font-size:var(--text-display);line-height:var(--lh-display);letter-spacing:var(--ls-display);font-weight:600}
h3,h4,h5,h6{font-family:var(--font-structure);margin:0}
h3{font-size:var(--text-h3);line-height:var(--lh-h3);letter-spacing:var(--ls-h3);font-weight:700}
h4{font-size:var(--text-h4);line-height:var(--lh-h4);font-weight:600}
h5{font-size:var(--text-h5);line-height:1.35;font-weight:600}
h6{font-size:var(--text-h6);line-height:1.4;font-weight:600}
p{margin:0 0 var(--para-space);max-width:var(--measure);text-wrap:pretty}
a{color:var(--link);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:var(--border-strong);transition:color var(--duration-fast) var(--ease-out),text-decoration-color var(--duration-fast) var(--ease-out)}
a:hover{color:var(--link-hover);text-decoration-color:var(--link-hover)}
.ld-eyebrow{font-family:var(--font-structure);font-size:var(--text-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;font-weight:600;color:var(--text-brass)}
::selection{background:var(--accent-soft)}
