*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface-page);color:var(--text-body);font:var(--type-body);letter-spacing:var(--tracking-body);text-wrap:pretty;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{margin:0;color:var(--text-strong);letter-spacing:var(--tracking-heading)}
h1{font:var(--type-h1)}h2{font:var(--type-h2)}h3{font:var(--type-h3)}h4{font:var(--type-h4)}
p{margin:0}
a{color:var(--text-link);text-decoration:none;transition:color var(--dur-fast) var(--ease-out)}
a:hover{color:var(--text-link-hover)}
img{display:block;max-width:100%}
button{font-family:inherit}
:focus-visible{outline:var(--border-focus);outline-offset:2px}
::selection{background:var(--ember-500);color:var(--ink-1000)}
.bl-grid-bg{background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:var(--grid-size) var(--grid-size)}
.bl-on-light{background:var(--surface-inverse);color:var(--text-inverse-body)}
.bl-on-light h1,.bl-on-light h2,.bl-on-light h3,.bl-on-light h4{color:var(--text-inverse-strong)}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
