/* reset.css — minimal, modern */
*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
html { -webkit-text-size-adjust: 100%; }
body { min-height: 100vh; }
img, video, svg { display: block; max-width: 100%; height: auto; }
/* <picture> ist nur die Hülle für AVIF/WebP-Quellen: das <img> bleibt im Layout, als wäre es direktes Kind */
picture { display: contents; }
source { display: none; } /* sonst wird <source> in Grid/Flex zum eigenen Element */
input, button, textarea, select { font: inherit; color: inherit; }
p, h1, h2, h3, h4 { overflow-wrap: break-word; }
ul[class], ol[class] { list-style: none; padding: 0; }
button { background: none; border: none; cursor: pointer; padding: 0; }
a { color: inherit; }
:target { scroll-margin-block: 5ex; }
