*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);background:var(--bg);color:var(--ink);font-size:clamp(16px,1.1vw,17px);line-height:1.55;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{display:block;max-width:100%}
svg:has(>use){aspect-ratio:1/1;height:auto;flex:none}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 clamp(16px,4vw,64px)}
:focus-visible{outline:3px solid var(--accent-2);outline-offset:3px;border-radius:6px}
/* [hidden] must always win over component display rules (e.g. inline-grid badges) */
[hidden]{display:none!important}
