/* HTML5 display definitions */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

/* Set the default font size and family */
html {
  font-size: 16px;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

/* Remove margins, padding, and borders from all elements */
*,
*:before,
*:after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Remove list styles */
ul,
ol,
dl {
  list-style: none;
}

/* Remove text indentation from paragraphs */
p {
  text-indent: 0;
}

/* Set images to be scalable */
img {
  max-width: 100%;
  height: auto;
}

/* Remove default table styles */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* Reset form element properties */
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  color: inherit;
  outline: none;
}

/* Remove link underlines */
a {
  color: #212529;
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

/* Add focus visibility */
:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

@media screen and (max-width: 1640px) {
  html,
  body {
    font-size: 14px;
  }
}

@media screen and (max-width: 768px) {
  html,
  body {
    font-size: 12px;
  }
}
