/* Minimal element defaults so every consuming surface starts on-brand. */
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{margin:0;font-family:var(--font-body);font-size:var(--text-md);font-weight:var(--weight-regular);line-height:var(--leading-body);color:var(--text-primary);background:var(--surface-page)}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:var(--weight-black);line-height:var(--leading-display);letter-spacing:var(--tracking-display);text-transform:uppercase;margin:0;text-wrap:balance}
h1{font-size:var(--text-5xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}
p{margin:0 0 var(--space-4);text-wrap:pretty}
a{color:var(--text-link);text-decoration-color:color-mix(in oklch,var(--text-link) 40%,transparent);text-underline-offset:3px}
a:hover{color:var(--text-link-hover);text-decoration-color:currentColor}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;box-shadow:var(--focus-ring)}
strong,b{font-weight:var(--weight-bold)}
small{font-size:var(--text-sm)}
::selection{background:var(--luz-yellow-500);color:var(--luz-blue-900)}
