*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  min-height: 100%;
  line-height: 1.5;
  text-rendering: optimizeSpeed;
  margin: 0;
}

html {
  height: 100%;
  -webkit-text-size-adjust: 100%;
  font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';
}

html,
html:focus-within,
:has(:target) {
  scroll-behavior: smooth;
}

input,
textarea,
select,
button,
optgroup {
  font: inherit;
  vertical-align: middle;
  margin: 0;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button {
  cursor: pointer;
}

/* button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button;
} */

img,
picture {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  font-style: italic;
}

a {
  vertical-align: baseline;
  text-decoration: none;
  color: inherit;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Убираем внутренние отступы слева тегам списков, у которых есть атрибут class */
:where(ul, ol):where([class]) {
  padding-left: 0;
}

:where(ul[class]) {
  list-style: none;
  margin: 0;
}

:where(blockquote, figure):where([class]) {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin-block: 0;
}

p {
  --paragraphMarginBottom: 18px;
  margin-block: 0;
}

p:where(:not([class]):not(:last-child)) {
  margin-bottom: var(--paragraphMarginBottom);
}

hr {
  height: 0;
  color: inherit;
}

abbr[title],
dfn[title] {
  text-decoration: underline dotted;
  cursor: help;
}

:where(dd[class]) {
  margin-left: 0;
}

:where(fieldset[class]) {
  margin-left: 0;
  padding: 0;
  border: none;
}

b,
strong {
  font-weight: 700;
}

small {
  font-size: 80%;
}

/*Приводим к единому цвету svg-элементы*/
svg *[fill] {
  fill: currentColor
}

svg *[stroke] {
  stroke: currentColor
}

/*Чиним баг задержки смены цвета при взаимодействии с svg-элементам и*/
svg * {
  transition-property: fill, stroke;
}

code,
kbd,
samp,
pre {
  font-family: ui-monospace, SFMono-Regular, Consolas, 'Liberation Mono', Menlo, monospace;
  font-size: 1em;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  text-indent: 0;
  border-color: inherit;
}

:-moz-ui-invalid {
  box-shadow: none;
}

progress {
  vertical-align: baseline;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

[type='search'] {
  /* -webkit-appearance: textfield; */
  outline-offset: -2px;
}

::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

summary {
  display: list-item;
}

/* ::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

:-moz-focusring {
	outline: 1px dotted ButtonText;
} */


/* Удаляем все анимации и переходы для людей, которые предпочитают их не использовать */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto;
  }

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}