*, *::before, *::after { box-sizing: border-box; }
/* text-size-adjust: 100% stops iOS Safari from auto-inflating ("boosting")
   blocks of body text. Without it, the mobile demo-window miniatures (shrunk
   via `zoom`) had their long script paragraphs blown back up past their
   shrunken line-boxes, so the lines overlapped — while short UI labels, which
   iOS never boosts, stayed clean. Also keeps every designed layout at the size
   we set it. */
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; }
img { display: block; max-width: 100%; }
a { text-decoration: none; color: inherit; }
button { font: inherit; }
ul { margin: 0; padding: 0; list-style: none; }
