*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:var(--type-body);color:var(--text-body);background:var(--surface-page);letter-spacing:var(--ls-body);text-wrap:pretty;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6{margin:0;color:var(--text-strong)}
h1{font:var(--type-display);letter-spacing:var(--ls-display)}
h2{font:var(--type-h2);letter-spacing:var(--ls-heading)}
h3{font:var(--type-h3);letter-spacing:var(--ls-heading)}
p{margin:0}
a{color:var(--text-link);text-decoration:none;transition:var(--t-control)}
a:hover{color:var(--text-link-hover)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}
code,kbd,samp{font-family:var(--font-mono)}
::selection{background:var(--teal-200);color:var(--graphite-950)}
.sz-eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-brand)}
.sz-container{max-width:var(--container-max);margin:0 auto;padding-inline:var(--gutter)}
@keyframes sz-reveal-up{from{opacity:0;transform:translateY(var(--reveal-y))}to{opacity:1;transform:none}}
@keyframes sz-scan{0%{transform:translateY(-100%)}100%{transform:translateY(100%)}}
@keyframes sz-hairline{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}
@keyframes sz-pulse-ring{0%{box-shadow:0 0 0 0 rgba(56,164,159,.45)}70%{box-shadow:0 0 0 14px rgba(56,164,159,0)}100%{box-shadow:0 0 0 0 rgba(56,164,159,0)}}
