*,
*::before,
*::after{
  box-sizing:border-box
}

html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  tab-size:2
}

body{
  margin:0
}

main{
  display:block
}

img,
picture,
video,
canvas,
svg{
  display:block;
  max-width:100%
}

input,
button,
textarea,
select{
  font:inherit;
  color:inherit
}

button,
select{
  text-transform:none
}

button,
[type="button"],
[type="reset"],
[type="submit"]{
  -webkit-appearance:button
}

[type="search"]{
  -webkit-appearance:textfield;
  outline-offset:-2px
}

::-webkit-search-decoration{
  -webkit-appearance:none
}

::-webkit-file-upload-button{
  -webkit-appearance:button;
  font:inherit
}

textarea{
  resize:vertical
}

fieldset{
  margin:0;
  padding:0;
  border:0;
  min-width:0
}

legend{
  padding:0
}

p,
h1,
h2,
h3,
h4,
h5,
h6{
  margin:0
}

ul,
ol{
  margin:0;
  padding:0;
  list-style:none
}

a{
  color:inherit;
  text-decoration:none
}

hr{
  height:0;
  color:inherit;
  border:0;
  border-top:1px solid rgba(0,0,0,.1)
}

table{
  border-collapse:collapse;
  border-color:inherit
}

abbr[title]{
  text-decoration:underline dotted
}

b,
strong{
  font-weight:bolder
}

small{
  font-size:80%
}

sub,
sup{
  font-size:75%;
  line-height:0;
  position:relative;
  vertical-align:baseline
}

sub{
  bottom:-.25em
}

sup{
  top:-.5em
}

:focus{
  outline:none
}

:focus-visible{
  outline:2px solid currentColor;
  outline-offset:2px
}

@media (prefers-reduced-motion: reduce){
  *,
  *::before,
  *::after{
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
    scroll-behavior:auto !important;
  }
}