/* 
*   Kevin Powell
*   https://youtu.be/cCAtD_BAHNw 
*/
@layer reset {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  :root {
    interpolate-size: allow-keywords;
  }

  * {
    margin: 0;
    padding: 0;
    font: inherit;
    /* Get rid of all font sizes and heights */
  }

  html {
    color-scheme: dark light;
    hanging-punctuation: first last;
    /* Not supported in Chrome */
  }

  body {
    min-height: 100vh;
  }

  /* Media responsive */
  img,
  picture,
  svg,
  video {
    display: block;
    max-width: 100%;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    text-wrap: balance;
  }

  ul,
  ol {
    list-style: none;
  }

  p {
    max-width: 75ch;
    text-wrap: pretty;
    /* Prevents orphans on lines */
  }

  @media (prefers-reduced-motion: no-preference) {
    :has(:target) {
      scroll-behavior: smooth;
      scroll-padding-top: 3rem;
    }
  }
}