/*
 * Старые страницы на шаблоне gardista — Bootstrap ядра (/bitrix/js/ui/bootstrap4/css/bootstrap.min.css), который старый шаблон грузил на всех страницах.
 * Файл собирает local/tools/legacy-css.js — руками не править, правку внести в исходник и пересобрать.
 */

/* Сброс базы нового шаблона (template_styles.css) внутри старой страницы: у неё свои правила ниже */
:where(.site-main--legacy) img,
:where(.site-main--legacy) svg {
    display: revert;
    max-width: revert;
}

:where(.site-main--legacy) ul,
:where(.site-main--legacy) ol {
    list-style: revert;
}

:where(.site-main--legacy) a {
    color: revert;
}

:where(.site-main--legacy) button {
    font: revert;
    color: revert;
}

:where(.site-main--legacy) address {
    font-style: revert;
}

:where(.site-main--legacy) *,
:where(.site-main--legacy) *::before,
:where(.site-main--legacy) *::after {
    box-sizing: border-box;
}

:where(.site-main--legacy) {
    margin: 0;
    font-family: var(--bs-font-sans-serif);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

:where(.site-main--legacy) [tabindex="-1"]:focus:not(:focus-visible) {
    outline: 0 !important;
}

:where(.site-main--legacy) hr {
    margin: 1rem 0;
    color: inherit;
    background-color: currentColor;
    border: 0;
    opacity: .25;
}

:where(.site-main--legacy) hr:not([size]) {
    height: 1px;
}

:where(.site-main--legacy) h1,
.h1,
:where(.site-main--legacy) h2,
.h2,
:where(.site-main--legacy) h3,
.h3,
:where(.site-main--legacy) h4,
.h4,
:where(.site-main--legacy) h5,
.h5,
:where(.site-main--legacy) h6,
.h6 {
    margin-top: 0;
    margin-bottom: .5rem;
    font-weight: 500;
    line-height: 1.2;
}

:where(.site-main--legacy) h1,
.h1 {
    font-size: calc(1.375rem + 1.5vw);
}

@media (min-width:1200px) {
    :where(.site-main--legacy) h1,
    .h1 {
        font-size: 2.5rem;
    }
}

:where(.site-main--legacy) h2,
.h2 {
    font-size: calc(1.325rem + 0.9vw);
}

@media (min-width:1200px) {
    :where(.site-main--legacy) h2,
    .h2 {
        font-size: 2rem;
    }
}

:where(.site-main--legacy) h3,
.h3 {
    font-size: calc(1.3rem + 0.6vw);
}

@media (min-width:1200px) {
    :where(.site-main--legacy) h3,
    .h3 {
        font-size: 1.75rem;
    }
}

:where(.site-main--legacy) h4,
.h4 {
    font-size: calc(1.275rem + 0.3vw);
}

@media (min-width:1200px) {
    :where(.site-main--legacy) h4,
    .h4 {
        font-size: 1.5rem;
    }
}

:where(.site-main--legacy) h5,
.h5 {
    font-size: 1.25rem;
}

:where(.site-main--legacy) h6,
.h6 {
    font-size: 1rem;
}

:where(.site-main--legacy) p {
    margin-top: 0;
    margin-bottom: 1rem;
}

:where(.site-main--legacy) abbr[title],
:where(.site-main--legacy) abbr[data-original-title] {
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
}

:where(.site-main--legacy) address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}

:where(.site-main--legacy) ol,
:where(.site-main--legacy) ul {
    padding-left: 2rem;
}

:where(.site-main--legacy) ol,
:where(.site-main--legacy) ul,
:where(.site-main--legacy) dl {
    margin-top: 0;
    margin-bottom: 1rem;
}

:where(.site-main--legacy) ol ol,
:where(.site-main--legacy) ul ul,
:where(.site-main--legacy) ol ul,
:where(.site-main--legacy) ul ol {
    margin-bottom: 0;
}

:where(.site-main--legacy) dt {
    font-weight: 700;
}

:where(.site-main--legacy) dd {
    margin-bottom: .5rem;
    margin-left: 0;
}

:where(.site-main--legacy) blockquote {
    margin: 0 0 1rem;
}

:where(.site-main--legacy) b,
:where(.site-main--legacy) strong {
    font-weight: bolder;
}

:where(.site-main--legacy) small,
.small {
    font-size: .875em;
}

:where(.site-main--legacy) mark {
    padding: .2em;
    background-color: #fcf8e3;
}

:where(.site-main--legacy) sub,
:where(.site-main--legacy) sup {
    position: relative;
    font-size: .75em;
    line-height: 0;
    vertical-align: baseline;
}

:where(.site-main--legacy) sub {
    bottom: -.25em;
}

:where(.site-main--legacy) sup {
    top: -.5em;
}

:where(.site-main--legacy) a {
    color: #0d6efd;
    text-decoration: underline;
}

:where(.site-main--legacy) a:hover {
    color: #024dbc;
}

:where(.site-main--legacy) a:not([href]):not([class]),
:where(.site-main--legacy) a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none;
}

:where(.site-main--legacy) pre,
:where(.site-main--legacy) code,
:where(.site-main--legacy) kbd,
:where(.site-main--legacy) samp {
    font-family: var(--bs-font-monospace);
    font-size: 1em;
}

:where(.site-main--legacy) pre {
    display: block;
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    font-size: .875em;
    -ms-overflow-style: scrollbar;
}

:where(.site-main--legacy) pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal;
}

:where(.site-main--legacy) code {
    font-size: .875em;
    color: #d63384;
    word-wrap: break-word;
}

:where(.site-main--legacy) a>code {
    color: inherit;
}

:where(.site-main--legacy) kbd {
    padding: .2rem .4rem;
    font-size: .875em;
    color: #fff;
    background-color: #212529;
    border-radius: .2rem;
}

:where(.site-main--legacy) kbd kbd {
    padding: 0;
    font-size: 1em;
    font-weight: 700;
}

:where(.site-main--legacy) figure {
    margin: 0 0 1rem;
}

:where(.site-main--legacy) img,
:where(.site-main--legacy) svg {
    vertical-align: middle;
}

:where(.site-main--legacy) table {
    caption-side: bottom;
    border-collapse: collapse;
}

:where(.site-main--legacy) caption {
    padding-top: .5rem;
    padding-bottom: .5rem;
    color: #6c757d;
    text-align: left;
}

:where(.site-main--legacy) th {
    text-align: inherit;
    text-align: -webkit-match-parent;
}

:where(.site-main--legacy) thead,
:where(.site-main--legacy) tbody,
:where(.site-main--legacy) tfoot,
:where(.site-main--legacy) tr,
:where(.site-main--legacy) td,
:where(.site-main--legacy) th {
    border-color: inherit;
    border-style: solid;
    border-width: 0;
}

:where(.site-main--legacy) label {
    display: inline-block;
}

:where(.site-main--legacy) button {
    border-radius: 0;
}

:where(.site-main--legacy) button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color;
}

:where(.site-main--legacy) input,
:where(.site-main--legacy) button,
:where(.site-main--legacy) select,
:where(.site-main--legacy) optgroup,
:where(.site-main--legacy) textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

:where(.site-main--legacy) button,
:where(.site-main--legacy) input {
    overflow: visible;
}

:where(.site-main--legacy) button,
:where(.site-main--legacy) select {
    text-transform: none;
}

:where(.site-main--legacy) [role="button"] {
    cursor: pointer;
}

:where(.site-main--legacy) select {
    word-wrap: normal;
}

:where(.site-main--legacy) [list]::-webkit-calendar-picker-indicator {
    display: none;
}

:where(.site-main--legacy) button,
:where(.site-main--legacy) [type="button"],
:where(.site-main--legacy) [type="reset"],
:where(.site-main--legacy) [type="submit"] {
    -webkit-appearance: button;
}

:where(.site-main--legacy) button:not(:disabled),
:where(.site-main--legacy) [type="button"]:not(:disabled),
:where(.site-main--legacy) [type="reset"]:not(:disabled),
:where(.site-main--legacy) [type="submit"]:not(:disabled) {
    cursor: pointer;
}

:where(.site-main--legacy) ::-moz-focus-inner {
    padding: 0;
    border-style: none;
}

:where(.site-main--legacy) textarea {
    resize: vertical;
}

:where(.site-main--legacy) fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

:where(.site-main--legacy) legend {
    float: left;
    width: 100%;
    padding: 0;
    margin-bottom: .5rem;
    font-size: calc(1.275rem + 0.3vw);
    line-height: inherit;
    white-space: normal;
}

@media (min-width:1200px) {
    :where(.site-main--legacy) legend {
        font-size: 1.5rem;
    }
}

:where(.site-main--legacy) legend+* {
    clear: left;
}

:where(.site-main--legacy) ::-webkit-datetime-edit-fields-wrapper,
:where(.site-main--legacy) ::-webkit-datetime-edit-text,
:where(.site-main--legacy) ::-webkit-datetime-edit-minute,
:where(.site-main--legacy) ::-webkit-datetime-edit-hour-field,
:where(.site-main--legacy) ::-webkit-datetime-edit-day-field,
:where(.site-main--legacy) ::-webkit-datetime-edit-month-field,
:where(.site-main--legacy) ::-webkit-datetime-edit-year-field {
    padding: 0;
}

:where(.site-main--legacy) ::-webkit-inner-spin-button {
    height: auto;
}

:where(.site-main--legacy) [type="search"] {
    outline-offset: -2px;
    -webkit-appearance: textfield;
}

:where(.site-main--legacy) ::-webkit-search-decoration {
    -webkit-appearance: none;
}

:where(.site-main--legacy) ::-webkit-color-swatch-wrapper {
    padding: 0;
}

:where(.site-main--legacy) ::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button;
}

:where(.site-main--legacy) output {
    display: inline-block;
}

:where(.site-main--legacy) iframe {
    border: 0;
}

:where(.site-main--legacy) summary {
    display: list-item;
    cursor: pointer;
}

:where(.site-main--legacy) progress {
    vertical-align: baseline;
}

:where(.site-main--legacy) [hidden] {
    display: none !important;
}

.img-fluid {
    max-width: 100%;
    height: auto;
}

.figure {
    display: inline-block;
}

:where(.site-main--legacy) .container,
.container-fluid {
    width: 100%;
    padding-right: 1rem;
    padding-left: 1rem;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width:576px) {
    :where(.site-main--legacy) .container {
        max-width: 540px;
    }
}

@media (min-width:768px) {
    :where(.site-main--legacy) .container {
        max-width: 720px;
    }
}

@media (min-width:992px) {
    :where(.site-main--legacy) .container {
        max-width: 960px;
    }
}

@media (min-width:1200px) {
    :where(.site-main--legacy) .container {
        max-width: 1140px;
    }
}

@media (min-width:1400px) {
    :where(.site-main--legacy) .container {
        max-width: 1320px;
    }
}

.row {
    --bs-gutter-x: 1.5rem;
    --bs-gutter-y: 0;
    display: flex;
    flex: 1 0 100%;
    flex-wrap: wrap;
    margin-top: calc(var(--bs-gutter-y) * -1);
    margin-right: calc(var(--bs-gutter-x) / -2);
    margin-left: calc(var(--bs-gutter-x) / -2);
}

.row>* {
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x) / 2);
    padding-left: calc(var(--bs-gutter-x) / 2);
    margin-top: var(--bs-gutter-y);
}

.col {
    flex: 1 0 0;
}

.row-cols-1>* {
    flex: 0 0 auto;
    width: 100%;
}

.col-6 {
    flex: 0 0 auto;
    width: 50%;
}

.col-12 {
    flex: 0 0 auto;
    width: 100%;
}

.g-4 {
    --bs-gutter-x: 1.5rem;
}

.g-4 {
    --bs-gutter-y: 1.5rem;
}

@media (min-width:576px) {
    .col-sm-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-sm-4 {
        flex: 0 0 auto;
        width: 33.333333%;
    }
    .col-sm-5 {
        flex: 0 0 auto;
        width: 41.666667%;
    }
    .col-sm-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-sm-7 {
        flex: 0 0 auto;
        width: 58.333333%;
    }
    .col-sm-8 {
        flex: 0 0 auto;
        width: 66.666667%;
    }
    .col-sm-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-sm-10 {
        flex: 0 0 auto;
        width: 83.333333%;
    }
    .col-sm-12 {
        flex: 0 0 auto;
        width: 100%;
    }
}

@media (min-width:768px) {
    .row-cols-md-2>* {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-md-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-md-4 {
        flex: 0 0 auto;
        width: 33.333333%;
    }
    .col-md-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-md-8 {
        flex: 0 0 auto;
        width: 66.666667%;
    }
    .col-md-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-md-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-md-2 {
        margin-left: 16.666667%;
    }
}

@media (min-width:992px) {
    .row-cols-lg-3>* {
        flex: 0 0 auto;
        width: 33.333333%;
    }
    .col-lg-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-lg-4 {
        flex: 0 0 auto;
        width: 33.333333%;
    }
    .col-lg-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-lg-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .offset-lg-3 {
        margin-left: 25%;
    }
}

.table {
    --bs-table-bg: transparent;
    --bs-table-accent-bg: transparent;
    --bs-table-striped-color: #212529;
    --bs-table-striped-bg: rgba(0,0,0,0.05);
    --bs-table-active-color: #212529;
    --bs-table-active-bg: rgba(0,0,0,0.1);
    --bs-table-hover-color: #212529;
    --bs-table-hover-bg: rgba(0,0,0,0.075);
    width: 100%;
    margin-bottom: 1rem;
    color: #212529;
    vertical-align: top;
    border-color: #dee2e6;
}

.table>:not(caption)>*>* {
    padding: .5rem .5rem;
    background-color: var(--bs-table-bg);
    background-image: linear-gradient(var(--bs-table-accent-bg),var(--bs-table-accent-bg));
    border-bottom-width: 1px;
}

.table>tbody {
    vertical-align: inherit;
}

.table>thead {
    vertical-align: bottom;
}

.table>:not(:last-child)>:last-child>* {
    border-bottom-color: currentColor;
}

.table-bordered>:not(caption)>* {
    border-width: 1px 0;
}

.table-bordered>:not(caption)>*>* {
    border-width: 0 1px;
}

.table-light {
    --bs-table-bg: #f8f9fa;
    --bs-table-striped-bg: #edeef0;
    --bs-table-striped-color: #212529;
    --bs-table-active-bg: #e3e4e5;
    --bs-table-active-color: #212529;
    --bs-table-hover-bg: #e8e9ea;
    --bs-table-hover-color: #212529;
    color: #212529;
    border-color: #e3e4e5;
}

.form-label {
    margin-bottom: .5rem;
}

.col-form-label {
    padding-top: calc(0.375rem + 1px);
    padding-bottom: calc(0.375rem + 1px);
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1.5;
}

.form-text {
    margin-top: .25rem;
    font-size: .875em;
    color: #6c757d;
}

.form-control {
    display: block;
    width: 100%;
    min-height: calc(1.5em + 0.75rem + 2px);
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid #ced4da;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: .25rem;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

@media (prefers-reduced-motion:reduce) {
    .form-control {
        transition: none;
    }
}

.form-control:focus {
    color: #495057;
    background-color: #fff;
    border-color: #8bbafe;
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(13,110,253,0.25);
}

.form-control::-webkit-input-placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control::-moz-placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control::-ms-input-placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control::placeholder {
    color: #6c757d;
    opacity: 1;
}

.form-control:disabled,
.form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1;
}

.form-select {
    display: block;
    width: 100%;
    height: calc(1.5em + 0.75rem + 2px);
    padding: .375rem 1.75rem .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    vertical-align: middle;
    background-color: #fff;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right .75rem center;
    background-size: 16px 12px;
    border: 1px solid #ced4da;
    border-radius: .25rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.form-select:focus {
    border-color: #8bbafe;
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(13,110,253,0.25);
}

.form-select:focus::-ms-value {
    color: #495057;
    background-color: #fff;
}

.form-select[multiple],
.form-select[size]:not([size="1"]) {
    height: auto;
    padding-right: .75rem;
    background-image: none;
}

.form-select:disabled {
    color: #6c757d;
    background-color: #e9ecef;
}

.form-select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #495057;
}

.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.75em;
    margin-bottom: .125rem;
}

.form-check .form-check-input {
    float: left;
    margin-left: -1.75em;
}

.form-check-input {
    width: 1.25em;
    height: 1.25em;
    margin-top: .125em;
    vertical-align: top;
    background-color: #fff;
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: 1px solid rgba(0,0,0,0.25);
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    -webkit-print-color-adjust: exact;
    color-adjust: exact;
    transition: background-color .15s ease-in-out,background-position .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

@media (prefers-reduced-motion:reduce) {
    .form-check-input {
        transition: none;
    }
}

.form-check-input[type="checkbox"] {
    border-radius: .25em;
}

.form-check-input[type="radio"] {
    border-radius: 50%;
}

.form-check-input:active {
    -webkit-filter: brightness(90%);
    filter: brightness(90%);
}

.form-check-input:focus {
    border-color: #8bbafe;
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(13,110,253,0.25);
}

.form-check-input:checked {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.form-check-input:checked[type="checkbox"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}

.form-check-input:checked[type="radio"] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e");
}

.form-check-input[type="checkbox"]:indeterminate {
    background-color: #0d6efd;
    border-color: #0d6efd;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}

.form-check-input:disabled {
    pointer-events: none;
    -webkit-filter: none;
    filter: none;
    opacity: .5;
}

.form-check-input[disabled] ~ .form-check-label,
.form-check-input:disabled ~ .form-check-label {
    opacity: .5;
}

.input-group {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    width: 100%;
}

.input-group>.form-control,
.input-group>.form-select {
    position: relative;
    flex: 1 1 auto;
    width: 1%;
    min-width: 0;
}

.input-group>.form-control:focus,
.input-group>.form-select:focus {
    z-index: 3;
}

.input-group .btn {
    position: relative;
    z-index: 2;
}

.input-group .btn:focus {
    z-index: 3;
}

.input-group-text {
    display: flex;
    align-items: center;
    padding: .375rem .75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    color: #495057;
    text-align: center;
    white-space: nowrap;
    background-color: #e9ecef;
    border: 1px solid #ced4da;
    border-radius: .25rem;
}

.input-group>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),
.input-group>.dropdown-toggle:nth-last-child(n+3) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group>:not(:first-child):not(.dropdown-menu) {
    margin-left: -1px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.btn {
    display: inline-block;
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: .375rem .75rem;
    font-size: 1rem;
    border-radius: .25rem;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}

@media (prefers-reduced-motion:reduce) {
    .btn {
        transition: none;
    }
}

.btn:hover {
    color: #212529;
}

.btn:focus {
    outline: 0;
    box-shadow: 0 0 0 .2rem rgba(13,110,253,0.25);
}

.btn:disabled,
.btn.disabled,
fieldset:disabled .btn {
    pointer-events: none;
    opacity: .65;
}

.btn-primary {
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.btn-primary:hover {
    color: #fff;
    background-color: #025ce2;
    border-color: #0257d5;
}

.btn-primary:focus {
    color: #fff;
    background-color: #025ce2;
    border-color: #0257d5;
    box-shadow: 0 0 0 .2rem rgba(49,132,253,0.5);
}

.btn-primary:active,
.btn-primary.active,
.show>.btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #0257d5;
    border-color: #0252c9;
}

.btn-primary:active:focus,
.btn-primary.active:focus,
.show>.btn-primary.dropdown-toggle:focus {
    box-shadow: 0 0 0 .2rem rgba(49,132,253,0.5);
}

.btn-primary:disabled,
.btn-primary.disabled {
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.btn-outline-secondary {
    color: #6c757d;
    border-color: #6c757d;
}

.btn-outline-secondary:hover {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
}

.btn-outline-secondary:focus {
    box-shadow: 0 0 0 .2rem rgba(108,117,125,0.5);
}

.btn-outline-secondary:active,
.btn-outline-secondary.active,
.btn-outline-secondary.dropdown-toggle.show {
    color: #fff;
    background-color: #6c757d;
    border-color: #6c757d;
}

.btn-outline-secondary:active:focus,
.btn-outline-secondary.active:focus,
.btn-outline-secondary.dropdown-toggle.show:focus {
    box-shadow: 0 0 0 .2rem rgba(108,117,125,0.5);
}

.btn-outline-secondary:disabled,
.btn-outline-secondary.disabled {
    color: #6c757d;
    background-color: transparent;
}

.btn-link {
    font-weight: 400;
    color: #0d6efd;
    text-decoration: underline;
}

.btn-link:hover {
    color: #024dbc;
}

.btn-link:disabled,
.btn-link.disabled {
    color: #6c757d;
}

.btn-lg {
    padding: .5rem 1rem;
    font-size: 1.25rem;
    border-radius: .3rem;
}

.btn-sm {
    padding: .25rem .5rem;
    font-size: .875rem;
    border-radius: .2rem;
}

.fade {
    transition: opacity .15s linear;
}

@media (prefers-reduced-motion:reduce) {
    .fade {
        transition: none;
    }
}

.fade:not(.show) {
    opacity: 0;
}

.dropdown {
    position: relative;
}

.dropdown-toggle {
    white-space: nowrap;
}

.dropdown-toggle::after {
    display: inline-block;
    margin-left: .255em;
    vertical-align: .255em;
    content: "";
    border-top: .3em solid;
    border-right: .3em solid transparent;
    border-bottom: 0;
    border-left: .3em solid transparent;
}

.dropdown-toggle:empty::after {
    margin-left: 0;
}

.dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    min-width: 10rem;
    padding: .5rem 0;
    margin: .125rem 0 0;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    list-style: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0,0,0,0.15);
    border-radius: .25rem;
}

.dropdown-menu[x-placement^="top"],
.dropdown-menu[x-placement^="right"],
.dropdown-menu[x-placement^="bottom"],
.dropdown-menu[x-placement^="left"] {
    right: auto;
    bottom: auto;
}

.dropdown-menu.show {
    display: block;
}

.nav {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}

.nav-link {
    display: block;
    padding: .5rem 1rem;
    text-decoration: none;
    transition: color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out;
}

@media (prefers-reduced-motion:reduce) {
    .nav-link {
        transition: none;
    }
}

.nav-link.disabled {
    color: #6c757d;
    pointer-events: none;
    cursor: default;
}

.nav-tabs {
    border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-link {
    margin-bottom: -1px;
    border: 1px solid transparent;
    border-top-left-radius: .25rem;
    border-top-right-radius: .25rem;
}

.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
    border-color: #e9ecef #e9ecef #dee2e6;
}

.nav-tabs .nav-link.disabled {
    color: #6c757d;
    background-color: transparent;
    border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
    color: #495057;
    background-color: #fff;
    border-color: #dee2e6 #dee2e6 #fff;
}

.nav-tabs .dropdown-menu {
    margin-top: -1px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.nav-pills .nav-link {
    border-radius: .25rem;
}

.nav-pills .nav-link.active,
.nav-pills .show>.nav-link {
    color: #fff;
    background-color: #0d6efd;
}

.tab-content>.tab-pane {
    display: none;
}

.tab-content>.active {
    display: block;
}

.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #fff;
    background-clip: border-box;
    border: 1px solid rgba(0,0,0,0.125);
    border-radius: .25rem;
}

.card>hr {
    margin-right: 0;
    margin-left: 0;
}

.card>.list-group {
    border-top: inherit;
    border-bottom: inherit;
}

.card>.list-group:first-child {
    border-top-width: 0;
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
}

.card>.list-group:last-child {
    border-bottom-width: 0;
    border-bottom-right-radius: calc(0.25rem - 1px);
    border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-body {
    flex: 1 1 auto;
    padding: 1rem 1rem;
}

.card-title {
    margin-bottom: .5rem;
}

.card-text:last-child {
    margin-bottom: 0;
}

.card-img-top {
    width: 100%;
}

.card-img-top {
    border-top-left-radius: calc(0.25rem - 1px);
    border-top-right-radius: calc(0.25rem - 1px);
}

.breadcrumb {
    display: flex;
    flex-wrap: wrap;
    padding: .5rem 1rem;
    margin-bottom: 1rem;
    list-style: none;
    background-color: #e9ecef;
    border-radius: .25rem;
}

.pagination {
    display: flex;
    padding-left: 0;
    list-style: none;
}

.alert {
    position: relative;
    padding: 1rem 1rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: .25rem;
}

.alert-heading {
    color: inherit;
}

.alert-link {
    font-weight: 700;
}

.alert-dismissible {
    padding-right: 3.5rem;
}

.alert-dismissible .close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 1rem 1rem;
    color: inherit;
}

.alert-primary {
    color: #073984;
    background-color: #cfe2ff;
    border-color: #bbd6fe;
}

.alert-primary .alert-link {
    color: #042454;
}

.alert-secondary {
    color: #383d41;
    background-color: #e2e3e5;
    border-color: #d6d8db;
}

.alert-secondary .alert-link {
    color: #202326;
}

.alert-success {
    color: #155724;
    background-color: #d4edda;
    border-color: #c3e6cb;
}

.alert-success .alert-link {
    color: #0b2e13;
}

.alert-info {
    color: #0c5460;
    background-color: #d1ecf1;
    border-color: #bee5eb;
}

.alert-info .alert-link {
    color: #062c33;
}

.alert-warning {
    color: #856404;
    background-color: #fff3cd;
    border-color: #ffeeba;
}

.alert-warning .alert-link {
    color: #533f03;
}

.alert-danger {
    color: #721c24;
    background-color: #f8d7da;
    border-color: #f5c6cb;
}

.alert-danger .alert-link {
    color: #491217;
}

.alert-light {
    color: #818182;
    background-color: #fefefe;
    border-color: #fdfdfe;
}

.alert-light .alert-link {
    color: #686868;
}

.alert-dark {
    color: #1b1e21;
    background-color: #d6d8d9;
    border-color: #c6c8ca;
}

.alert-dark .alert-link {
    color: #040505;
}

.list-group {
    display: flex;
    flex-direction: column;
    padding-left: 0;
    margin-bottom: 0;
    border-radius: .25rem;
}

.list-group-item {
    position: relative;
    display: block;
    padding: .5rem 1rem;
    text-decoration: none;
    background-color: #fff;
    border: 1px solid rgba(0,0,0,0.125);
}

.list-group-item:first-child {
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}

.list-group-item:last-child {
    border-bottom-right-radius: inherit;
    border-bottom-left-radius: inherit;
}

.list-group-item.disabled,
.list-group-item:disabled {
    color: #6c757d;
    pointer-events: none;
    background-color: #fff;
}

.list-group-item.active {
    z-index: 2;
    color: #fff;
    background-color: #0d6efd;
    border-color: #0d6efd;
}

.list-group-item+.list-group-item {
    border-top-width: 0;
}

.list-group-item+.list-group-item.active {
    margin-top: -1px;
    border-top-width: 1px;
}

.list-group-flush {
    border-radius: 0;
}

.list-group-flush>.list-group-item {
    border-width: 0 0 1px;
}

.list-group-flush>.list-group-item:last-child {
    border-bottom-width: 0;
}

.close {
    font-size: calc(1.275rem + 0.3vw);
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    opacity: .5;
}

@media (min-width:1200px) {
    .close {
        font-size: 1.5rem;
    }
}

.close:hover {
    color: #000;
    text-decoration: none;
}

.close:hover,
.close:focus {
    opacity: .75;
}

.close:disabled,
.close.disabled {
    pointer-events: none;
}

button.close {
    padding: 0;
    background-color: transparent;
    border: 0;
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1050;
    display: none;
    width: 100%;
    height: 100%;
    overflow: hidden;
    outline: 0;
}

.modal-dialog {
    position: relative;
    width: auto;
    margin: .5rem;
    pointer-events: none;
}

.modal.fade .modal-dialog {
    transition: transform .3s ease-out;
    transform: translate(0,-50px);
}

@media (prefers-reduced-motion:reduce) {
    .modal.fade .modal-dialog {
        transition: none;
    }
}

.modal.show .modal-dialog {
    transform: none;
}

.modal-content {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    pointer-events: auto;
    background-color: #fff;
    background-clip: padding-box;
    border: 1px solid rgba(0,0,0,0.2);
    border-radius: .3rem;
    outline: 0;
}

.modal-header {
    display: flex;
    flex-shrink: 0;
    align-items: flex-start;
    justify-content: space-between;
    padding: 1rem 1rem;
    border-bottom: 1px solid #dee2e6;
    border-top-left-radius: calc(0.3rem - 1px);
    border-top-right-radius: calc(0.3rem - 1px);
}

.modal-header .close {
    padding: 1rem 1rem;
    margin: -1rem -1rem -1rem auto;
}

.modal-title {
    margin-bottom: 0;
    line-height: 1.5;
}

.modal-body {
    position: relative;
    flex: 1 1 auto;
    padding: 1rem;
}

@media (min-width:576px) {
    .modal-dialog {
        max-width: 500px;
        margin: 1.75rem auto;
    }
}

.tooltip {
    position: absolute;
    z-index: 1070;
    display: block;
    margin: 0;
    font-family: var(--bs-font-sans-serif);
    font-style: normal;
    font-weight: 400;
    line-height: 1.5;
    text-align: left;
    text-align: start;
    text-decoration: none;
    text-shadow: none;
    text-transform: none;
    letter-spacing: normal;
    word-break: normal;
    word-spacing: normal;
    white-space: normal;
    line-break: auto;
    font-size: .875rem;
    word-wrap: break-word;
    opacity: 0;
}

.tooltip.show {
    opacity: .9;
}

.tooltip .tooltip-arrow {
    position: absolute;
    display: block;
    width: .8rem;
    height: .4rem;
}

.tooltip .tooltip-arrow::before {
    position: absolute;
    content: "";
    border-color: transparent;
    border-style: solid;
}

.tooltip-inner {
    max-width: 200px;
    padding: .25rem .5rem;
    color: #fff;
    text-align: center;
    background-color: #000;
    border-radius: .25rem;
}

.clearfix::after {
    display: block;
    clear: both;
    content: "";
}

.embed-responsive {
    position: relative;
    width: 100%;
}

.embed-responsive::before {
    display: block;
    content: "";
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.embed-responsive-16by9::before {
    padding-top: 56.25%;
}

.sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
}

.d-none {
    display: none !important;
}

.d-block {
    display: block !important;
}

.d-flex {
    display: flex !important;
}

.position-relative {
    position: relative !important;
}

.border {
    border: 1px solid #dee2e6 !important;
}

.border-left {
    border-left: 1px solid #dee2e6 !important;
}

.w-100 {
    width: 100% !important;
}

.h-100 {
    height: 100% !important;
}

.flex-wrap {
    flex-wrap: wrap !important;
}

.align-items-center {
    align-items: center !important;
}

.order-1 {
    order: 1 !important;
}

.order-2 {
    order: 2 !important;
}

.m-0 {
    margin: 0 !important;
}

.mt-2 {
    margin-top: .5rem !important;
}

.mt-3 {
    margin-top: 1rem !important;
}

.mb-1 {
    margin-bottom: .25rem !important;
}

.mb-2 {
    margin-bottom: .5rem !important;
}

.mb-3 {
    margin-bottom: 1rem !important;
}

.mb-4 {
    margin-bottom: 1.5rem !important;
}

.mb-5 {
    margin-bottom: 3rem !important;
}

.p-0 {
    padding: 0 !important;
}

.p-2 {
    padding: .5rem !important;
}

.p-3 {
    padding: 1rem !important;
}

.pt-2 {
    padding-top: .5rem !important;
}

.pt-3 {
    padding-top: 1rem !important;
}

.pb-0 {
    padding-bottom: 0 !important;
}

.pb-2 {
    padding-bottom: .5rem !important;
}

.text-left {
    text-align: left !important;
}

.text-right {
    text-align: right !important;
}

.text-center {
    text-align: center !important;
}

.text-primary {
    color: #0d6efd !important;
}

.text-dark {
    color: #343a40 !important;
}

.text-muted {
    color: #6c757d !important;
}

.bg-light {
    background-color: #f8f9fa !important;
}

.rounded {
    border-radius: .25rem !important;
}

.visible {
    visibility: visible !important;
}

@media (min-width:576px) {
    .d-sm-none {
        display: none !important;
    }
}

@media (min-width:768px) {
    .d-md-block {
        display: block !important;
    }
    .order-md-1 {
        order: 1 !important;
    }
    .order-md-2 {
        order: 2 !important;
    }
}

@media (min-width:992px) {
    .d-lg-block {
        display: block !important;
    }
}
