/* =============================================================================
   NEXUS — Reset
   Normalises the box model, strips inherited defaults the design system
   redefines, and removes nothing the browser gives us for free (semantics,
   focus, form behaviour).
   ========================================================================== */

@layer reset {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    tab-size: 4;
  }

  body,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6,
  p,
  figure,
  blockquote,
  dl,
  dd,
  fieldset,
  legend {
    margin: 0;
  }

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    font-size: inherit;
    font-weight: inherit;
    text-wrap: balance;
  }

  p,
  li,
  dd,
  figcaption {
    text-wrap: pretty;
  }

  ul[role="list"],
  ol[role="list"] {
    padding-inline-start: 0;
    list-style: none;
  }

  fieldset {
    padding: 0;
    border: 0;
  }

  legend {
    padding: 0;
  }

  a {
    color: inherit;
    text-decoration-thickness: max(0.06em, 1px);
    text-underline-offset: 0.18em;
  }

  img,
  picture,
  video,
  canvas,
  svg,
  iframe {
    display: block;
    max-width: 100%;
  }

  img,
  video {
    height: auto;
  }

  svg {
    fill: currentcolor;
  }

  input,
  button,
  textarea,
  select {
    font: inherit;
    color: inherit;
    letter-spacing: inherit;
  }

  button {
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
  }

  textarea {
    resize: vertical;
  }

  table {
    border-collapse: collapse;
    border-spacing: 0;
  }

  hr {
    border: 0;
    block-size: 1px;
    background-color: var(--color-border);
  }

  [hidden] {
    display: none !important;
  }
}
