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

li { list-style: none; }

a { text-decoration: none; }

a,
img,
time,
span,
input,
label,
select,
button,
textarea,
ion-icon { display: block; }

input,
button,
select,
textarea {
  background: none;
  border: none;
  font: inherit;
}

button,
select { cursor: pointer; }

input,
textarea { width: 100%; }

ion-icon { pointer-events: none; }

:is(a, button, select) {
  outline-color: var(--scarlet);
  outline-offset: 3px;
}

::selection {
  background: var(--color-primary);
  color: var(--bg-primary);
}

html {
  font-family: var(--ff-roboto);
  scroll-behavior: smooth;
}

body {
  background: var(--bg-primary);
  transition: var(--transition-1);
}

body.active { overflow: hidden; }