/** NORMALIZE **/

*,
::before,
::after {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
}

/* @TODO use :focus-visible for keyboard focused outlines */

::before,
::after {
  text-decoration: inherit;
  vertical-align: inherit;
}

html {
  cursor: default;
  line-height: 1.5;
  -moz-tab-size: 4;
  tab-size: 4;
  -webkit-tap-highlight-color: transparent;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  word-break: break-word;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  -webkit-touch-callout: none;
  overflow-x: hidden;
}

a {
  color: inherit;
  background-color: transparent;
  text-decoration: none;
  -webkit-text-decoration-skip: objects;
}

button {
  color: inherit;
  font-family: inherit;
  overflow: hidden;
  text-transform: none;
  cursor: pointer;
  border: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  appearance: button;
}

[disabled] {
  cursor: not-allowed;
}

input {
  /* appearance: none; */
  font-family: inherit;
  /* -webkit-appearance: none;
  -moz-appearance: none; */
  overflow: visible;
}

select {
  text-transform: none;
}

textarea {
  font-family: inherit;
  overflow: auto;
  resize: vertical;
}

[type="search"] {
  -webkit-appearance: textfield;
  appearance: button;
  outline-offset: -2px;
}

::placeholder,
:-ms-input-placeholder,
::-ms-input-placeholder,
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.5;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

::-moz-focus-inner {
  border-style: none;
}

:-moz-ui-invalid {
  box-shadow: none;
}

:-ms-clear,
input::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}

hr {
  height: 0;
  overflow: visible;
}

nav ol,
nav ul {
  list-style: none;
}

/* ul,
ol {
  padding-left: 16px;
} */

b,
strong {
  font-weight: bolder;
}

img,
iframe {
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

table {
  border-collapse: collapse;
}

a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

