/* ///////////////
  Reset
  ////////////// */

/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* remove all margin and padding,
remove all default font sizes and font weights */
* {
  margin: 0;
  padding: 0;
  font: inherit;
}

/* set default to dark mode and follows the user preference */
/* html {
    color-scheme: dark light;
} */

/* set minimal height on the body */
body {
  min-height: 100vh;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
  /*
  padding: 0;
  font: inherit;
  */
  text-wrap: balance;
}

/* Remove defaults for ul with a class */
ul[class],
ol[class] {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Make images and videos responsive */
img,
picture,
svg,
video {
  max-width: 100%;
  display: block;
}

input,
textarea,
button,
select {
  font: inherit;
}

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

/* Baseline for default links */
a:not([class]) {
  /* Relatively sized thickness and offset */
  text-decoration-thickness: max(0.08em, 1px);
  text-underline-offset: 0.15em;
}

/* Scroll padding allowance below focused elements 
  to ensure they are clearly in view */
:focus {
  scroll-padding-block-end: 8vh;
}

/* a keyboard user who accesses elements through tabbing will see a visible focus style. */
:is(a, button, input, textarea, summary):focus-visible {
  --outline-size: max(2px, 0.15em);

  outline: var(--outline-width, var(--outline-size)) var(--outline-style, solid)
    var(--outline-color, currentColor);
  outline-offset: var(--outline-offset, var(--outline-size));
}

:is(a, button, input, textarea, summary):focus:not(:focus-visible) {
  outline: none;
}

/* Focus customizations */

.large-button {
  --outline-offset: -0.25em;
}

input {
  --outline-style: dashed;
  --outline-offset: max(1px, .07em);
}


/* Scroll padding allowance above anchor links */
:target {
  scroll-padding-block-start: 1rem;
}

/* ///////////////
  General Styling (fonts/colors of 'body', 'headings', 'section', etc.)
  ////////////// */

/* ///////////////
  General Layout
  ////////////// */
