@font-face {
    font-family: "Beaufort for LOL Heavy";
    src: url("https://nimrus.ru/fonts/BeaufortforLOL-Heavy.woff") format("woff");
    font-weight: normal;
}

@font-face {
    font-family: "Beaufort for LOL Heavy Italic";
    src: url("https://nimrus.ru/fonts/BeaufortforLOL-HeavyItalic.woff") format("woff");
    font-weight: normal;
    font-style: normal;
}

@counter-style lvls { 
    system: numeric;
    symbols: "0" "1" "2" "3" "4" "5" "6" "7" "8" "9";
    prefix: "Уровень ";
    suffix: " ";
}

@counter-style subs { 
    system: numeric;
    symbols: "0" "3" "7" "11" "15";
    prefix: "Уровень ";
    suffix: " ";
}
@counter-style subs-mini { 
    system: numeric;
    symbols: "0" "3" "7" "11" "15";
    suffix: ". ";
}
.subs {
    list-style: subs-mini;
    margin-bottom: 0;
}
.lvls {
    margin-bottom: 0;
}

.lvls-out {
    margin-left: -2rem !important;
} .subs-out {
    margin-left: -2rem !important;
}

/* Стили для экранов шириной 768px и выше */

@media (min-width: 768px) {
.lvls {
    list-style: lvls;
    padding: 0 50px 0 100px;
    column-gap: 100px !important;
} .lvls::column {
    padding: 0 50px 0 100px;
} .subs {
    list-style: subs;
    padding: 0 50px 0 100px;
    column-gap: 100px !important;
} .two-cols {
    column-count: 2;
    column-gap: 1rem;
} .border-md {
    border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
} .lvls-out {
    margin-left: -100px !important;
} .subs-out {
    margin-left: -100px !important;
    margin-right: -50px !important;
}
@media (min-width: 1200px) {
    .two-cols-xl {
        column-count: 2;
        column-gap: 1rem;
    }
    .border-xl {
        border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;
    }
}
}

.no-break-inside {
    break-inside: avoid;
}

.centered {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

::marker {
    font-style: italic;
    color: var(--bs-secondary-color)
}

p {
    text-align: justify;
    text-align-last: left;
}

.condensed {
    font-family: "Roboto Condensed", sans-serif;
} .beaufort {
    font-family: "Beaufort for LOL Heavy Italic", serif;
    font-variant: small-caps;
} .nbeaufort {
    font-family: "Beaufort for LOL Heavy", serif;
    font-variant: small-caps;
} 

.arrow svg {
    transition: transform 0.35s ease;
}
.arrow[aria-expanded="true"] svg {
    transform: rotate(90deg);
}

.text-justify {
    text-align: justify;
    text-align-last: left;
} .text-center {
    text-align: center;
    text-align-last: center;
}

.dm:not(.dm-clean)::after {
    content: " (ГМ)";
    font-size: 0.9em;
    color: var(--bs-secondary-color);
}

.bd-callout {
    --bs-link-color-rgb: var(--bd-callout-link);
    --bs-code-color: var(--bd-callout-code-color);
    padding: 1.25rem;
    margin-top: 1.25rem;
    margin-bottom: 1.25rem;
    color: var(--bd-callout-color, inherit);
    background-color: var(--bd-callout-bg, var(--bs-gray-100));
    border-left: .25rem solid var(--bd-callout-border, var(--bs-gray-300))
}

.bd-callout h4 {
    margin-bottom: .25rem
}

.bd-callout>:last-child {
    margin-bottom: 0
}

.bd-callout+.bd-callout {
    margin-top: -.25rem
}

.bd-callout .highlight {
    background-color: #0000000d
}

.bd-callout-info {
    --bd-callout-color: var(--bs-info-text-emphasis);
    --bd-callout-bg: var(--bs-info-bg-subtle);
    --bd-callout-border: var(--bs-info-border-subtle)
}

.bd-callout-warning {
    --bd-callout-color: var(--bs-warning-text-emphasis);
    --bd-callout-bg: var(--bs-warning-bg-subtle);
    --bd-callout-border: var(--bs-warning-border-subtle)
}

.bd-callout-danger {
    --bd-callout-color: var(--bs-danger-text-emphasis);
    --bd-callout-bg: var(--bs-danger-bg-subtle);
    --bd-callout-border: var(--bs-danger-border-subtle)
}

.callout {
    padding: 1.25rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;
    border-radius: 1rem;
    corner-shape: scoop;
} .scoop {
    corner-shape: scoop;
}

.diamond {
    display: flex;
    justify-content: center;
    text-align: center;
    text-align-last: center;
    corner-shape: bevel;
    border-radius: 100px / 50px;
    padding: 0.5rem;
    padding-left: 3rem;
    padding-right: 3rem;
    margin-left: -1.5rem;
    margin-right: -1.5rem;
}
.indent {
    text-indent: 1rem;
}
html {
    scroll-behavior: smooth;
}

h3, h2, h1, div  {
    scroll-margin-top:1em;
}