@layer reset {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  * {
    margin: 0;
    padding: 0;
  }

  :root {
    interpolate-size: allow-keywords;
  }

  body {
    line-height: 1.5;
  }

  :where(img, picture, video, canvas, svg) {
    display: block;
    max-inline-size: 100%;
  }

  :where(input, button, textarea, select) {
    font: inherit;
    letter-spacing: inherit;
    word-spacing: inherit;
    color: currentColor;
  }

  :where(p, h1, h2, h3, h4, h5, h6) {
    overflow-wrap: break-word;
  }

  :where(ol, ul) {
    list-style: none;
  }

  :not([class]) {
    &:where(h1, h2, h3, h4, h5, h6) {
      margin-block: 0.75em;
      margin-trim: block;
      line-height: 1.25;
      text-wrap: balance;
      letter-spacing: -0.05ch;
    }

    &:where(p, ol, ul) {
      margin-block: 1em;
      margin-trim: block;
    }

    &:where(ol, ul) {
      padding-inline-start: 1.5em;
      list-style: revert;
    }

    &:where(li) {
      margin-block: 0.5em;
      margin-trim: block;
    }
  }
}
