@font-face {
  font-family: Inter;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/inter_regular.woff2") format("woff2");
}
@font-face {
  font-family: Inter;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/inter_semibold.woff2") format("woff2");
}
@font-face {
  font-family: Inter;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/inter_bold.woff2") format("woff2");
}
@font-face {
  font-family: Inter;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/inter_extrabold.woff2") format("woff2");
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; scroll-padding-top: calc(var(--header-height) + 16px); scroll-padding-bottom: calc(var(--footer-height) + 16px); }
body { margin: 0; }
h1, h2, h3, h4, h5, h6, p, ul, ol, dl, dd, figure, blockquote { margin: 0; }
ul, ol { padding: 0; list-style: none; }
img, video, svg { max-width: 100%; }
img, video { height: auto; }
img, video, svg { vertical-align: middle; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; }
table { border-collapse: collapse; border-spacing: 0; }
hr { border: 0; border-top: 1px solid var(--line); margin: 1.6em 0; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition: none !important; }
}
