/*** ИНИЦИАЛИЗАЦИЯ ТЕГОВ ***/
html, body {
    margin: 0;
    padding: 0;
    cursor: default;
    overflow-x: hidden;
}
body {
    min-height: 100vh;
    min-width: 320px;
}

@media ( max-width: 320px ) {
    body {
        overflow-x: auto;
    }
}

h1, h2, h3, h4, h5, h6 {
    font-size: inherit;
    font-weight: inherit;
}

a, a:focus {
	text-decoration: none;
	outline: none;
    color: inherit;
    cursor: pointer;
}

img, picture {
    display: block;
    width: 100%;
    max-width: 100%;
    height: 100%;
    max-height: 100%;
    object-fit: contain;
}

input, input:focus,
textarea, textarea:focus {
    font-size: inherit;
}

input[type="submit"] {
    cursor: pointer;
}

/*** БАЗОВЫЕ СВОЙТСВА ***/
*, ::after, ::before {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    cursor: inherit;
    outline: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -moz-tap-highlight-color: rgba(0, 0, 0, 0);
}

.system {
	display: none !important;
}

.hide, [btd-hide] {
	display: none !important;
}

.clear-both {
    clear: both;
}

.r-fill {
	position: relative;
}
.a-fill {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
    z-index: 100;
}
.f-fill {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.no-select,
.no-select *,
.no-select ::before,
.no-select ::after {
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

.float-left, .float-left-img img {
    float: left;
    margin-right: 2.5em;
    margin-bottom: 2.5em;
}
.float-right, .float-right-img img {
    float: right;
    margin-left: 2.5em;
    margin-bottom: 2.5em;
}

@media ( max-width: 768px ) {
    .float-align, .float-align * {
        float: none !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/*** ОСНОВНОЙ ПОТОК ***/
.main-flow, .sub-flow > *, .flow-left, .sub-flow-left > * {
    padding-left: var(--btd-main-flow-indent);
}
.main-flow, .sub-flow > *, .flow-right, .sub-flow-right > * {
    padding-right: var(--btd-main-flow-indent);
}

.out-flow:not( .flow-left ) {
	padding-left: 0;
}
.out-flow:not( .flow-right ) {
	padding-right: 0;
}

@media ( max-width: 991px ) {
    .out-flow,
    .out-flow.flow-left:not( .flow-left-mobile ), .out-flow.sub-flow-left:not( .sub-flow-left-mobile ) > *,
    .out-flow.flow-right:not( .flow-left-mobile ), .out-flow.sub-flow-right:not( .sub-flow-left-mobile ) > * {
        padding-left: 0;
        padding-right: 0;
    }

    .flow-align, .flow-align-sub > * {
        padding-left: var(--btd-main-flow-indent) !important;
        padding-right: var(--btd-main-flow-indent) !important;
    }

    .main-flow-mobile, .sub-flow-mobile > *, .flow-left-mobile, .sub-flow-left-mobile > * {
        padding-left: var(--btd-main-flow-indent);
    }
    .main-flow-mobile, .sub-flow-mobile > *, .flow-right-mobile, .sub-flow-right-mobile > * {
        padding-right: var(--btd-main-flow-indent);
    }
}

/*** ПОЛОСА ПРОКРУТКИ ***/
* {
    scrollbar-width: thin;
    scrollbar-color: var(--btd-scrollbar-thumb-color) var(--btd-scrollbar-track-color);
}
*::-webkit-scrollbar {
    height: var(--btd-scrollbar-height);
    width: var(--btd-scrollbar-width);
}
textarea::-webkit-scrollbar {
    height: var(--btd-scrollbar-textarea-height);
    width: var(--btd-scrollbar-textarea-width);
}
*::-webkit-scrollbar-track {
    background: var(--btd-scrollbar-track-color);
}
*::-webkit-scrollbar-thumb {
    background-color: var(--btd-scrollbar-thumb-color);
    border: none;
}

@media ( max-width: 768px ) {
    *::-webkit-scrollbar {
        height: var(--btd-scrollbar-height-small);
        width: var(--btd-scrollbar-width-small);
    }
}

/*** ШРИФТ ***/
/*
    font-size: calc( (100vw - 320px) * (16 - 12) / (1920 - 320) + 12px );
    font-size: max( 12px, min( calc( (100vw - 320px) * (16 - 12) / (1920 - 320) + 12px), 16px ) );
    font-size: clamp( 12px, (100vw - 320px) * (16 - 12) / (1920 - 320) + 12px, 16px );
*/
html, body {
    font-size: calc( (100vw - var(--btd-font-size-width-min-unit)) * (var(--btd-font-size-max) - var(--btd-font-size-min)) / (var(--btd-font-size-width-max) - var(--btd-font-size-width-min)) + var(--btd-font-size-min-unit) );
    font-size: max( var(--btd-font-size-min-unit), min( calc( (100vw - var(--btd-font-size-width-min-unit)) * (var(--btd-font-size-max) - var(--btd-font-size-min)) / (var(--btd-font-size-width-max) - var(--btd-font-size-width-min)) + var(--btd-font-size-min-unit)), var(--btd-font-size-max-unit) ) );
    font-size: clamp( var(--btd-font-size-min-unit), (100vw - var(--btd-font-size-width-min-unit)) * (var(--btd-font-size-max) - var(--btd-font-size-min)) / (var(--btd-font-size-width-max) - var(--btd-font-size-width-min)) + var(--btd-font-size-min-unit), var(--btd-font-size-max-unit) );
}