/*
размеры шрифтов четные
 */

@font-face {
    font-family: 'Roboto';
    src: url('../fonts/roboto-regular.eot');
    src: local('Roboto'), local('Roboto-Regular'),
    url('../fonts/roboto-regular.eot?#iefix') format('embedded-opentype'),
    url('../fonts/roboto-regular.woff2') format('woff2'),
    url('../fonts/roboto-regular.woff') format('woff'),
    url('../fonts/roboto-regular.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Roboto';
    src: url('../fonts/roboto-bold.eot');
    src: local('Roboto Bold'), local('Roboto-Bold'),
    url('../fonts/roboto-bold.eot?#iefix') format('embedded-opentype'),
    url('../fonts/roboto-bold.woff2') format('woff2'),
    url('../fonts/roboto-bold.woff') format('woff'),
    url('../fonts/roboto-bold.ttf') format('truetype');
    font-weight: bold;
    font-style: normal;
}

html {
    scroll-behavior: smooth;
    font-family: 'Roboto', system-ui;
    font-size: 16px; /* ROOT */
}

html * {
    line-height: 1.5em;
    font-family: 'Roboto', system-ui;
    box-sizing: border-box
}

html,
body {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    min-height: 100vh;
    background-color: #FFF;
}

body {
    color: #000;
    box-sizing: border-box;
    background-color: #FFF;
    overflow-y: scroll;
    font-size: 1rem
}

header,
footer,
nav,
article,
aside,
section,
main,
div,
p,
ul,
li {
    display: block;
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

li {
    display: list-item
}

dialog {
    max-width: none;
    max-height: none;
}

dialog,
fieldset {
    border: none;
    outline: none;
    padding: 0;
    margin: 0
}

a {
    color: #000;
    text-decoration: none
}

a:hover {
    color: darkgray;
}

table, tr, td, thead, tbody {
    padding: 0;
    margin: 0
}


table {
    width: 100%
}

input,
select,
textarea {
    margin: 0;
    padding: 0;
    border: 1px solid lightgray;
    outline: none;
    box-sizing: border-box;
    min-width: 0;
}


select {
    appearance: none;
    padding-right: 2em !important;
}

select:not([multiple]) {
    background-repeat: no-repeat;
    background-position: calc(100% - 8px) center;
    background-size: 1em auto;
    background-image: url('data:image/svg+xml,<%3Fxml version="1.0" encoding="utf-8"%3F><!-- Generator: Adobe Illustrator 27.9.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --><svg version="1.1" id="Слой_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 448 512" style="enable-background:new 0 0 448 512;" xml:space="preserve"><style type="text/css">.st0{fill:%23808080;}</style><path class="st0" d="M201.4,374.6c12.5,12.5,32.8,12.5,45.3,0l160-160c12.5-12.5,12.5-32.8,0-45.3s-32.8-12.5-45.3,0L224,306.7L86.6,169.4c-12.5-12.5-32.8-12.5-45.3,0s-12.5,32.8,0,45.3l160,160L201.4,374.6z"/></svg>');
}

select[multiple] {
    border-radius: 5px 0 0 5px;
    padding-right: 5px !important;
}

textarea,
input[type="text"],
input[type="number"],
input[type="password"],
input[type="email"],
select {
    padding: 5px 10px;
    border-radius: 5px;
    font-size: 1rem;
    min-width: 0
}

.btn,
.button,
input[type="button"],
input[type="submit"],
button {
    padding: .4em 2em;
    border-radius: 5px;
    color: #FFF;
    background-color: gray;
    text-align: center;
    font-weight: normal;
    border: none;
    outline: none;
    font-size: 1rem;
    transition: 0.2s;
    line-height: 1.2em
}

.btn:hover,
.button:hover,
input[type="button"]:hover,
input[type="submit"]:hover,
button:hover {
    opacity: .80;
    cursor: pointer;
    border: none
}

input[type='checkbox'] + span:before,
input[type='checkbox']:checked + span:before,
input[type='radio'] + span:before,
input[type='radio']:checked + span:before {
    content: '';
    z-index: 10;
    display: inline-block;
    width: 1.2em;
    height: 1.2em;
    flex: none;
    position: relative;
    background-size: contain !important;
}

input[type='checkbox'] + span {
    display: inline-flex;
    align-items: center;
    gap: .5em
}

input[type='radio'] + span {
    display: inline-flex;
    align-items: flex-start;
    gap: .5em
}

input[type='checkbox'] + span:before {
    background: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjwhLS0gVXBsb2FkZWQgdG86IFNWRyBSZXBvLCB3d3cuc3ZncmVwby5jb20sIEdlbmVyYXRvcjogU1ZHIFJlcG8gTWl4ZXIgVG9vbHMgLS0+Cjxzdmcgd2lkdGg9IjgwMHB4IiBoZWlnaHQ9IjgwMHB4IiB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+DQogICAgPHBhdGggZD0ibSAzIDAgYyAtMS42NDQ1MzEgMCAtMyAxLjM1NTQ2OSAtMyAzIHYgMTAgYyAwIDEuNjQ0NTMxIDEuMzU1NDY5IDMgMyAzIGggMTAgYyAxLjY0NDUzMSAwIDMgLTEuMzU1NDY5IDMgLTMgdiAtMTAgYyAwIC0xLjY0NDUzMSAtMS4zNTU0NjkgLTMgLTMgLTMgeiBtIDAgMiBoIDEwIGMgMC41NzAzMTIgMCAxIDAuNDI5Njg4IDEgMSB2IDEwIGMgMCAwLjU3MDMxMiAtMC40Mjk2ODggMSAtMSAxIGggLTEwIGMgLTAuNTcwMzEyIDAgLTEgLTAuNDI5Njg4IC0xIC0xIHYgLTEwIGMgMCAtMC41NzAzMTIgMC40Mjk2ODggLTEgMSAtMSB6IG0gMCAwIiBmaWxsPSIjMmUzNDM0IiBmaWxsLW9wYWNpdHk9IjAuMzQ5MDIiLz4NCjwvc3ZnPg==") 50% 50% no-repeat;
}

input[type='checkbox']:checked + span:before {
    background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4NCjwhLS0gVXBsb2FkZWQgdG86IFNWRyBSZXBvLCB3d3cuc3ZncmVwby5jb20sIEdlbmVyYXRvcjogU1ZHIFJlcG8gTWl4ZXIgVG9vbHMgLS0+Cjxzdmcgd2lkdGg9IjgwMHB4IiBoZWlnaHQ9IjgwMHB4IiB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+DQogICAgPHBhdGggZD0ibSAzIDAgYyAtMS42NDQ1MzEgMCAtMyAxLjM1NTQ2OSAtMyAzIHYgMTAgYyAwIDEuNjQ0NTMxIDEuMzU1NDY5IDMgMyAzIGggMTAgYyAxLjY0NDUzMSAwIDMgLTEuMzU1NDY5IDMgLTMgdiAtMTAgYyAwIC0xLjY0NDUzMSAtMS4zNTU0NjkgLTMgLTMgLTMgeiBtIDAgMiBoIDEwIGMgMC40MjE4NzUgMCAwLjc2NTYyNSAwLjIzNDM3NSAwLjkxNzk2OSAwLjU4NTkzOCBsIC0wLjY2Nzk2OSAwLjc1NzgxMiBsIC02LjI5Njg3NSA3LjE5NTMxMiBsIC0yLjI0NjA5NCAtMi4yNDYwOTMgYyAtMC4zOTA2MjUgLTAuMzkwNjI1IC0xLjAyMzQzNyAtMC4zOTA2MjUgLTEuNDE0MDYyIDAgcyAtMC4zOTA2MjUgMS4wMjczNDMgMCAxLjQxNzk2OSBsIDMgMyBjIDAuNDEwMTU2IDAuNDA2MjUgMS4wNzgxMjUgMC4zODY3MTggMS40NjA5MzcgLTAuMDUwNzgyIGwgNi4yNDYwOTQgLTcuMTM2NzE4IHYgNy40NzY1NjIgYyAwIDAuNTcwMzEyIC0wLjQyOTY4OCAxIC0xIDEgaCAtMTAgYyAtMC41NzAzMTIgMCAtMSAtMC40Mjk2ODggLTEgLTEgdiAtMTAgYyAwIC0wLjU3MDMxMiAwLjQyOTY4OCAtMSAxIC0xIHogbSAwIDAiIGZpbGw9IiMyZTM0MzYiLz4NCjwvc3ZnPg==') 50% 50% no-repeat;
}

input[type='checkbox'],
input[type='checkbox']:checked,
input[type="radio"],
input[type="radio"]:checked {
    display: none
}

input[type='checkbox']:invalid[required] + span {
    color: gray;
}


input[type="radio"] + span::before {
    background-color: black;
    border-radius: 50%;
}

input[type="radio"]:checked + span::before {
    background-color: gray
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: bold;
    line-height: 1.3em;
    text-align: left;
    margin: 0;
    padding: 0;
    overflow-wrap: break-word
}

h1 {
    font-size: 2.5rem
}

h2 {
    font-size: 2rem
}

h3 {
    font-size: 1.5rem
}

h4 {
    font-size: 1.25rem
}

h5 {
    font-size: 1rem
}

h6 {
    font-size: 1rem
}

hr {
    display: flex;
    width: 100%;
    height: 0;
    background: none;
    outline: none;
    border: none;
    border-top: 1px solid #ededed;
    margin: 0
}

._fill {
    flex: 1 1 0;
}

iframe {
    border: none !important;
    overflow: hidden !important
}

._flex-r {
    display: flex;
    flex-direction: row
}

._flex-c {
    display: flex;
    flex-direction: column
}

._flex-cc {
    justify-content: center;
    align-items: center
}

._flex-sc {
    justify-content: flex-start;
    align-items: center
}

._flex-ec {
    justify-content: flex-end;
    align-items: center
}

._flex-sb {
    justify-content: space-between;
}

._flex-ac {
    align-items: center;
}

._flex-w {
    flex-wrap: wrap
}

._flex-bl {
    justify-content: flex-start;
    align-items: baseline;
}


._flex-cbl {
    justify-content: center;
    align-items: baseline;
}

._flex-ebl {
    justify-content: flex-end;
    align-items: baseline;
}

._flex-rrc {
    flex-direction: row
}

._flex-rcr {
    flex-direction: column
}

._gap-none {
    gap: 0
}

._gap-xsmall {
    gap: 5px
}

._gap-small {
    gap: 10px
}

._gap-normal {
    gap: 20px
}

._gap-large {
    gap: 40px
}

._pr {
    padding-right: .5em
}

._pl {
    padding-left: .5em
}

._none {
    display: none !important;
}

._ellipsis {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis
}

._sticky {
    position: sticky
}

._relative {
    position: relative
}

._absolute {
    position: absolute
}

._static {
    position: static
}

._hidden {
    overflow: hidden !important;
}


._visible {
    overflow: visible !important;
}

._m-0 {
    margin: 0 !important
}

._mt-0 {
    margin-top: 0 !important
}

._mt-5 {
    margin-top: 5px !important
}

._mt-10 {
    margin-top: 10px !important
}

._mt-20 {
    margin-top: 20px !important
}

._mt-40 {
    margin-top: 40px !important
}

._mb-0 {
    margin-bottom: 0 !important
}

._mb-5 {
    margin-bottom: 5px !important
}

._mb-10 {
    margin-bottom: 10px !important
}

._mb-20 {
    margin-bottom: 20px !important
}

._mb-40 {
    margin-bottom: 40px !important
}

._mr-0 {
    margin-right: 0 !important
}

._mr-5 {
    margin-right: 5px !important
}

._mr-10 {
    margin-right: 10px !important
}

._mr-20 {
    margin-right: 20px !important
}

._mr-40 {
    margin-right: 40px !important
}

._ml-0 {
    margin-left: 0 !important
}

._ml-5 {
    margin-left: 5px !important
}

._ml-10 {
    margin-left: 10px !important
}

._ml-20 {
    margin-left: 20px !important
}

._ml-40 {
    margin-left: 40px !important
}

._capitalize {
    text-transform: capitalize
}

._lowercase {
    text-transform: lowercase
}

._br-5 {
    border-radius: 5px !important;
}

._br-10 {
    border-radius: 10px !important;
}

._img-cover {
    width: 100%;
    height: 100%;
    object-fit: cover
}

._wh-100 {
    width: 100%;
    height: 100%
}

._thin-scroll::-webkit-scrollbar {
    width: 6px
}

._thin-scroll::-webkit-scrollbar-track {
    background: lightgray
}

._thin-scroll::-webkit-scrollbar-thumb {
    background-color: darkgray;
    border-radius: 5px
}

._free-scroll {
    overflow-y: auto;
    scrollbar-width: none; /* Firefox */
}

._free-scroll::-webkit-scrollbar {
    display: none;
    width: 0 !important;
}

._cursor-default {
    cursor: default
}

._cursor-pointer {
    cursor: pointer
}

._decoration-none {
    text-decoration: none !important;
}

._lh-1 {
    line-height: 1em
}

._icon-small {
    width: .5em;
    height: .5em
}

._icon-normal {
    width: 1em;
    height: 1em
}

._icon-large {
    width: 1.5em;
    height: 1.5em
}

._icon-xlarge {
    width: 2em;
    height: 2em
}

._blink::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, #FFFFFF7F, transparent);
    z-index: 1;
    pointer-events: none
}

._blink:hover::before {
    left: 100%;
    transition: left 0.2s ease-in-out
}

._no-mark li {
    list-style-type: none !important
}

._counter-reset {
    counter-reset: section;
}

/* MEDIA */

@media screen and (max-width: 1024px) {
    ._flex-rrc {
        flex-direction: column
    }

    ._flex-rcr {
        flex-direction: row
    }
}