*,*::before,*::after{box-sizing:border-box}
body{margin:0;font-family:var(--font-body);font-size:var(--text-body);line-height:var(--leading-relaxed);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5{font-family:var(--font-display);color:var(--text-heading);font-weight:var(--weight-semibold);line-height:var(--leading-snug);margin:0 0 var(--space-4)}
h1{font-size:var(--text-h1);line-height:var(--leading-tight)}h2{font-size:var(--text-h2)}h3{font-size:var(--text-h3)}h4{font-size:var(--text-h4)}h5{font-size:var(--text-h5)}
p{margin:0 0 var(--space-4);max-width:var(--measure-prose);text-wrap:pretty}
a{color:var(--link);text-decoration:none;border-bottom:1px solid rgba(1,105,110,.35);transition:var(--transition-control)}
a:hover{color:var(--link-hover);border-bottom-color:var(--ink-900)}
:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}
code,kbd{font-family:var(--font-mono);font-size:.92em}
.oh-overline{font-family:var(--font-sans);font-size:var(--text-micro);font-weight:var(--weight-medium);letter-spacing:var(--tracking-overline);text-transform:uppercase;color:var(--text-accent)}
.oh-wordmark{font-family:var(--font-wordmark);font-weight:var(--weight-regular);letter-spacing:var(--tracking-wordmark);text-transform:uppercase;color:var(--ink-900)}
