/*.bx-area-block,*/
/*[id^="bx_incl_area"] { display: contents; }*/
/*main > .bx-area-block,*/
/*main > [id^="bx_incl_area"] { display: block; }*/
/*main.inner > .bx-area-block,*/
/*main.inner > [id^="bx_incl_area"] { display: flex; flex-direction: column; gap: inherit; }*/
/*main > .bx-area-block:not(:has(> :not([hidden], script, style, link, .bx-component-panel))),*/
/*main > [id^="bx_incl_area"]:not(:has(> :not([hidden], script, style, link, .bx-component-panel))) { display: contents; }*/
/*.bx-component-panel,*/
/*.bx-panel,*/
/*.bx-core-editor-panel { position: absolute; z-index: 60; }*/


@font-face {
    font-family: 'Myriad Pro';
    src: url('../fonts/MyriadPro-Light.woff2') format('woff2'), url('../fonts/MyriadPro-Light.otf') format('opentype');
    font-weight: 300;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: 'Myriad Pro';
    src: url('../fonts/MyriadPro-Regular.woff2') format('woff2'), url('../fonts/MyriadPro-Regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: 'Myriad Pro';
    src: url('../fonts/MyriadPro-Semibold.woff2') format('woff2'), url('../fonts/MyriadPro-Semibold.otf') format('opentype');
    font-weight: 600;
    font-style: normal;
    font-display: swap
}

@font-face {
    font-family: 'Myriad Pro';
    src: url('../fonts/MyriadPro-Bold.woff2') format('woff2'), url('../fonts/MyriadPro-Bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
    font-display: swap
}

:root {
    --white: #fdfffe;
    --orange: #e77c1c;
    --error: #e5272e;
    --card: rgba(26, 35, 63, .98);
    --card-gradient: linear-gradient(85.83deg, rgba(5, 10, 27, .8) .44%, rgba(14, 38, 62, .8) 99.79%);
    --radius: .625rem;
    --font: 'Myriad Pro', 'MyriadPro-Regular', 'Source Sans 3', 'Segoe UI', Arial, sans-serif
}

*, *::before, *::after {
    box-sizing: border-box
}

html {
    font-size: clamp(10.66px, calc(100vw / 120), 32px);
    scroll-behavior: smooth
}

body {
    margin: 0;
    background-color: #050b1c;
    background-image: linear-gradient(rgba(4, 9, 24, .69), rgba(4, 9, 24, .69)), url('../img/bg-1.jpg'), url('../img/bg-2.jpg'), url('../img/bg-3.jpg');
    background-repeat: no-repeat;
    background-position: 0 0, 0 0, 0 124.105rem, 0 248.21rem;
    background-size: 100% 100%, 100% 124.105rem, 100% 124.105rem, 100% 124.105rem;
    color: var(--white);
    font-family: var(--font);
    font-size: 1rem;
    line-height: 1.2;
    -webkit-font-smoothing: antialiased;
    overflow-x: hidden
}

@keyframes space-drift {
    from {
        transform: translate3d(0, 0, 0) scale(1.06)
    }
    to {
        transform: translate3d(-1.8%, -1.2%, 0) scale(1.11)
    }
}

@keyframes space-twinkle {
    0%, 100% {
        opacity: .38
    }
    50% {
        opacity: .58
    }
}

h1, h2, h3, p, ul, dl, dd, figure {
    margin: 0
}

ul {
    padding: 0;
    list-style: none
}

a {
    color: inherit;
    text-decoration: none;
    transition: color .2s ease
}

a:hover, a:focus-visible {
    color: var(--orange)
}

img {
    display: block;
    max-width: 100%;
    height: auto
}

button {
    font-family: inherit;
    color: inherit
}

input {
    font-family: inherit
}

:focus-visible {
    outline: 2px solid var(--orange);
    outline-offset: 3px
}

.h1 {
    font-size: 3.75rem;
    line-height: 3.75rem;
    font-weight: 400;
    color: var(--white)
}

.visually-hidden {
    position: absolute !important;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    white-space: nowrap;
    border: 0
}

.skip-link {
    position: absolute;
    top: -6rem;
    left: 1rem;
    z-index: 100;
    padding: .625rem 1.125rem;
    background: var(--orange);
    color: var(--white);
    border-radius: var(--radius);
    transition: top .2s ease
}

.skip-link:focus {
    top: .75rem;
    color: var(--white)
}

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: none;
    width: 18.75rem;
    height: 3.75rem;
    padding: 0 1.25rem;
    border: 0;
    border-radius: var(--radius);
    background: var(--orange);
    color: #fff;
    font-size: 1.25rem;
    line-height: 1.875rem;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
    cursor: pointer;
    transition: background-color .2s ease
}

.btn[hidden] {
    display: none
}

.btn:hover, .btn:focus-visible {
    background: #f18f34;
    color: #fff
}

.br-mobile {
    display: none
}

.btn--wide {
    width: 23.125rem
}

.socials {
    display: flex;
    flex: none
}

.socials__link {
    display: block;
    background-repeat: no-repeat
}

.socials--header {
    width: 6.25rem;
    height: 1.25rem
}

.socials--header .socials__link {
    width: 3.125rem;
    height: 1.25rem;
    background-image: url('../img/socials-header.svg');
    background-size: 6.25rem 1.25rem
}

.socials--header .socials__link--2 {
    background-position: -3.125rem 0
}

.socials--footer {
    width: 6.75rem;
    height: 1.875rem
}

.socials--footer .socials__link {
    width: 3.375rem;
    height: 1.875rem;
    background-image: url('../img/socials-footer.svg');
    background-size: 6.75rem 1.875rem
}

.socials--footer .socials__link--2 {
    background-position: -3.375rem 0
}

.socials__link {
    transition: background-image .15s ease, opacity .2s ease
}

.socials--header .socials__link:hover, .socials--header .socials__link:focus-visible {
    background-image: url('../img/socials-header-orange.svg')
}

.socials--mobile .socials__link {
    width: 3.125rem;
    height: 1.25rem;
    background-image: url('../img/socials-header.svg');
    background-size: 6.25rem 1.25rem
}

.socials--mobile .socials__link--2 {
    background-position: -3.125rem 0
}

.socials--mobile .socials__link:hover {
    background-image: url('../img/socials-header-orange.svg')
}

.socials--footer .socials__link:hover {
    opacity: .75
}

.header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 30;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2.5rem;
    height: 6.25rem;
    padding: 1.25rem
}

.header__logos {
    display: flex;
    align-items: center;
    gap: 2.5rem;
    flex: none
}

.header__logo-rkc {
    height: 4.361rem;
    width: auto
}

.header__logo-rkm {
    position: relative;
    display: block;
    width: 3.68rem;
    height: 2.925rem;
    flex: none
}

.header__logo-rkm-mark {
    position: absolute;
    top: 0;
    left: 0;
    width: 3.68rem;
    height: 2.349rem
}

.header__logo-rkm-text {
    position: absolute;
    top: 2.588rem;
    left: 0;
    width: 3.679rem;
    height: .337rem
}

.header__main {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: .75rem
}

.header__row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 3rem
}

.header__row--bottom {
    align-items: flex-end
}

.header__title {
    font-size: 1.625rem;
    line-height: 2.25rem;
    text-transform: uppercase;
    white-space: nowrap
}

.header__divider {
    height: 1px;
    background: rgba(253, 255, 254, .8)
}

.header__aside {
    display: flex;
    align-items: center;
    gap: 2.5rem;
    flex: none
}

.search {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .5rem;
    width: 10.927rem;
    height: 2.031rem;
    border-bottom: 1px solid var(--white);
    transition: width .35s cubic-bezier(.4, 0, .2, 1), border-color .2s ease
}

.search:hover, .search:focus-within {
    border-bottom-color: var(--orange)
}

.search.is-open {
    width: 28.638rem
}

.search__input {
    flex: 1;
    min-width: 0;
    padding: 0 .25rem;
    background: transparent;
    border: 0;
    outline: none;
    color: var(--white);
    font-size: 1rem
}

.search__input::placeholder {
    color: var(--white);
    opacity: .7
}

.search__toggle {
    flex: none;
    box-sizing: content-box;
    width: 1.438rem;
    height: 1.375rem;
    padding: .5rem;
    margin: -.5rem;
    background: url('../img/icon-search.svg') no-repeat center / contain content-box;
    border: 0;
    cursor: pointer;
    transition: opacity .2s ease
}

.search__toggle:hover, .search__toggle:focus-visible {
    background-image: url('../img/icon-search-orange.svg');
    opacity: 1
}

.search--menu {
    width: 31px;
    align-self: flex-end;
    border-bottom-color: transparent
}

.search--menu:hover, .search--menu:focus-within {
    border-bottom-color: transparent
}

.search--menu.is-open {
    width: 100%;
    border-bottom-color: var(--white)
}

.search--menu.is-open:hover, .search--menu.is-open:focus-within {
    border-bottom-color: var(--orange)
}

.mainnav {
    min-width: 0
}

.mainnav__list {
    display: flex;
    align-items: center;
    gap: 3.125rem;
    white-space: nowrap
}

.mainnav__link {
    font-size: 1.125rem;
    line-height: 1.375rem;
    text-transform: uppercase;
    color: var(--white)
}

.mainnav__link.is-active {
    color: var(--orange)
}

.lang {
    position: relative;
    flex: none
}

.lang__btn {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: 0;
    background: transparent;
    border: 0;
    color: var(--white);
    font-size: 1.25rem;
    line-height: 1.25rem;
    cursor: pointer;
    transition: color .2s ease
}

.lang__btn:hover, .lang__btn:focus-visible {
    color: var(--orange)
}

.lang__btn:hover .lang__arrow, .lang__btn:focus-visible .lang__arrow {
    background-image: url('../img/lang-arrow-orange.svg')
}

body:not(.page-home) .lang__btn:hover .lang__arrow, body:not(.page-home) .lang__btn:focus-visible .lang__arrow {
    content: url('../img/lang-arrow-orange.svg')
}

.lang__arrow {
    display: block;
    width: .5rem;
    height: .3125rem;
    background: url('../img/lang-arrow.svg') no-repeat center / contain;
    transition: transform .2s ease
}

.lang__btn[aria-expanded="true"] .lang__arrow {
    transform: rotate(180deg)
}

.lang__list {
    position: absolute;
    top: calc(100% + .625rem);
    right: 0;
    z-index: 20;
    min-width: 4.875rem;
    background: #101a35;
    border: 1px solid rgba(253, 255, 254, .18);
    border-radius: .1875rem;
    overflow: hidden
}

.lang__option {
    display: block;
    width: 100%;
    padding: .5625rem .875rem;
    background: transparent;
    border: 0;
    color: var(--white);
    font-size: 1rem;
    text-align: left;
    cursor: pointer
}

.lang__option:hover {
    background: rgba(253, 255, 254, .1)
}

.lang__option.is-active {
    background: var(--orange)
}

.burger {
    display: none
}

.mobilemenu {
    color: var(--white)
}

.mobilemenu[hidden] {
    display: none
}

@keyframes fade-in {
    from {
        opacity: 0;
        transform: translateY(.5rem)
    }
    to {
        opacity: 1;
        transform: none
    }
}

.footer {
    display: flex;
    flex-direction: column;
    gap: 2.1875rem;
    padding: 5rem 3.75rem
}

.footer__top {
    display: grid;
    grid-template-columns:1fr auto 1fr;
    align-items: start;
    gap: 4rem
}

.footer__col--inner {
    justify-self: end
}

.footer__contacts-menu {
    display: flex;
    gap: 5rem
}

.footer__col {
    display: flex;
    flex-direction: column;
    gap: 1.875rem
}

.footer__col--contacts {
    width: 19.8125rem
}

.footer__col--menu {
    width: 14.1875rem
}

.footer__title {
    font-size: 1.625rem;
    line-height: 1.875rem;
    font-weight: 300;
    color: var(--orange);
    text-transform: uppercase
}

.footer__col--contacts .footer__title + * {
    margin-top: 0
}

.footer__block {
    display: flex;
    flex-direction: column;
    gap: .625rem
}

.footer__col--contacts {
    gap: 1.25rem
}

.footer__col--contacts > .footer__title {
    margin-bottom: .625rem
}

.footer__caption {
    font-size: 1rem;
    font-weight: 400;
    line-height: normal
}

.footer__row {
    display: flex;
    align-items: flex-start;
    gap: .875rem;
    font-size: 1rem;
    line-height: normal
}

.footer__icon {
    flex: none;
    width: 1.5rem;
    height: auto
}

.footer__row a {
    color: var(--white)
}

.footer__row a:hover {
    color: var(--orange)
}

.footer__list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: normal
}

.footer__inner-cols {
    display: flex;
    gap: 5rem
}

.footer__list--policy {
    gap: 0;
    color: var(--orange)
}

.footer__list--policy a {
    color: var(--orange)
}

.footer__list--policy a:hover {
    text-decoration: underline
}

.footer__logos {
    display: flex;
    align-items: center;
    align-self: start;
    gap: 2.5rem;
    flex: none
}

.footer__logo-rkc {
    width: 5.625rem;
    height: 7.268rem;
    object-fit: contain
}

.footer__logo-rkm {
    position: relative;
    display: block;
    width: 6.117rem;
    height: 4.863rem
}

.footer__logo-rkm-mark {
    position: absolute;
    top: 0;
    left: 0;
    width: 6.117rem;
    height: 3.905rem
}

.footer__logo-rkm-text {
    position: absolute;
    top: 4.303rem;
    left: 0;
    width: 6.115rem;
    height: .56rem
}

.footer__bottom {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: normal
}

.footer__dev[href]:hover, .footer__dev[href]:focus-visible {
    color: var(--orange);
    text-decoration: underline
}

.page-light {
    background: #edf1f7;
    color: #0a1226
}

.page-light .header {
    position: static;
    background: #0a1226;
    color: var(--white)
}

.page-light .footer {
    background: #0a1226 url('../img/footer-space.jpg') no-repeat center top / cover;
    color: var(--white);
    border-top: 0
}

/*.bx-area-block, [id^="bx_incl_area"] {*/
/*    display: contents*/
/*}*/

/*main > .bx-area-block, main > [id^="bx_incl_area"] {*/
/*    display: block*/
/*}*/

main.inner > .bx-area-block, main.inner > [id^="bx_incl_area"] {
    display: flex;
    flex-direction: column;
    gap: inherit
}

.contacts > [id^="bx_incl_area"],
.contacts__info > [id^="bx_incl_area"] {
    display: contents
}

/*main > .bx-area-block:not(:has(>:not([hidden],script,style,link,.bx-component-panel))), main > [id^="bx_incl_area"]:not(:has(>:not([hidden],script,style,link,.bx-component-panel))) {*/
/*    display: contents*/
/*}*/

/*.bx-component-panel, .bx-panel, .bx-core-editor-panel {*/
/*    position: absolute;*/
/*    z-index: 60*/
/*}*/

.inner {
    display: flex;
    flex-direction: column;
    gap: 3.125rem;
    padding: 2.1875rem 0 6.25rem
}

body.inner {
    display: block;
    min-height: 0;
    padding: 0
}

.breadcrumbs {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0 .875rem;
    padding: 0 3.75rem;
    font-size: 1.125rem;
    text-transform: uppercase
}

.breadcrumbs__link {
    color: rgba(10, 18, 38, .5)
}

.breadcrumbs__link:hover {
    color: var(--orange)
}

.breadcrumbs__sep {
    width: 1.587rem;
    height: 1px;
    background: rgba(10, 18, 38, .5)
}

.breadcrumbs__current {
    color: var(--orange)
}

.inner__title {
    padding: 0 3.75rem;
    font-size: 3.75rem;
    line-height: 3.75rem;
    font-weight: 400;
    color: #0a1226
}

.cards {
    display: grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    align-items: stretch;
    gap: 1.25rem;
    padding: 0 3.75rem
}

.card {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    border: 1px solid var(--orange);
    border-radius: var(--radius)
}

.card__photo {
    display: block;
    height: 24.375rem;
    border-radius: var(--radius) var(--radius) 0 0;
    overflow: hidden
}

.card__photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s ease
}

.card__photo:hover img, .card__photo:focus-visible img {
    transform: scale(1.05)
}

.card__body {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    align-items: center;
    justify-content: space-between;
    gap: 2.5rem;
    padding: .625rem 2.5rem 1.875rem
}

.card__title {
    flex: 1 1 0;
    margin: 0;
    font-size: 2rem;
    line-height: 2.25rem;
    font-weight: 600;
    text-transform: uppercase;
    color: #0a1226;
    overflow-wrap: normal;
    hyphens: manual
}

.card__title--narrow {
    max-width: 13.9375rem
}

.card__btn {
    flex: none;
    width: auto;
    height: 3.75rem;
    padding: 0 4.375rem;
    font-weight: 600
}

.cards--four {
    grid-template-columns:repeat(4, minmax(0, 1fr))
}

.card--compact .card__body {
    padding: .625rem 2.5rem 1.875rem
}

.card--compact .card__title {
    font-size: 2rem;
    line-height: 2.25rem
}

.card__arrow {
    flex: none;
    display: block;
    width: 3.75rem;
    height: 3.75rem;
    border-radius: var(--radius);
    background: var(--orange) url('../img/icon-arrow.svg') no-repeat center / 100% 100%;
    transition: background-color .2s ease, transform .15s ease
}

.card__arrow:hover {
    background-color: #f18f34
}

.card__arrow:active {
    transform: translateY(1px)
}

@media (max-width: 1279px) {
    html {
        font-size: 16px
    }

    body {
        background-image: linear-gradient(rgba(4, 9, 24, .69), rgba(4, 9, 24, .69)), url('../img/bg-1.jpg');
        background-position: 0 0, 0 0;
        background-size: 100% 100%, 100% auto;
        background-repeat: no-repeat, repeat-y
    }

    .h1 {
        font-size: 2rem;
        line-height: 1.15
    }

    .header {
        height: auto;
        padding: .75rem 1rem;
        gap: clamp(.75rem, 1.6vw, 1.5rem);
        align-items: center
    }

    .header__main {
        display: flex;
        gap: .5rem
    }

    .header__row {
        gap: clamp(.75rem, 2vw, 2rem)
    }

    .header__logo-rkc {
        height: 2.75rem
    }

    .header__logo-rkm {
        width: 2.875rem;
        height: 2.29rem
    }

    .header__logo-rkm-mark {
        width: 2.875rem;
        height: 1.835rem
    }

    .header__logo-rkm-text {
        top: 2.02rem;
        width: 2.875rem;
        height: .263rem
    }

    .header__title {
        font-size: clamp(11px, 1.35vw, 17px);
        line-height: 1.3;
        white-space: nowrap
    }

    .header__aside {
        gap: clamp(.625rem, 1.4vw, 1.25rem);
        margin-left: auto
    }

    .mainnav__list {
        gap: clamp(6px, 1.15vw, 18px)
    }

    .mainnav__link {
        font-size: clamp(9.5px, 1.15vw, 14px);
        line-height: 1.2
    }

    .socials--header {
        width: 4.375rem;
        height: .875rem
    }

    .socials--header .socials__link {
        width: 2.1875rem;
        height: .875rem;
        background-size: 4.375rem .875rem
    }

    .socials--header .socials__link--2 {
        background-position: -2.1875rem 0
    }

    .lang__btn {
        font-size: .875rem;
        line-height: 1
    }

    .search {
        height: 1.5rem
    }

    .search.is-open .search__input {
        width: clamp(6rem, 14vw, 14rem)
    }

    .search__toggle {
        width: 1.125rem;
        height: 1.0625rem;
        padding: .375rem;
        margin: -.375rem
    }

    .mainnav {
        display: none
    }

    .burger {
        order: -1;
        display: block;
        box-sizing: content-box;
        width: 24px;
        height: 16px;
        padding: 12px;
        border: 0;
        background: url('../img/m-burger.svg') no-repeat center / contain content-box;
        cursor: pointer;
        transition: opacity .2s ease
    }

    .burger:hover, .burger:focus-visible {
        opacity: .6
    }

    .burger__line {
        display: none
    }

    .mobilemenu {
        position: fixed;
        inset: 0;
        z-index: 60;
        display: flex;
        flex-direction: column;
        gap: .5rem;
        padding: 1.5rem;
        background: rgba(8, 13, 30, .97);
        overflow-y: auto
    }

    .mobilemenu__close {
        align-self: flex-start;
        width: 2.75rem;
        height: 2.75rem;
        background: transparent;
        border: 1px solid rgba(253, 255, 254, .4);
        border-radius: .25rem;
        color: var(--white);
        font-size: 1.625rem;
        line-height: 1;
        cursor: pointer
    }

    .mobilemenu__list a {
        display: block;
        padding: .8125rem 0;
        font-size: 1.0625rem;
        text-transform: uppercase;
        border-bottom: 1px solid rgba(253, 255, 254, .12)
    }

    .socials--mobile {
        margin-top: 1.5rem
    }

    .btn {
        width: 18.75rem;
        max-width: 100%;
        height: 3rem;
        font-size: .9375rem
    }

    .btn--wide {
        width: 23.125rem;
        max-width: 100%
    }

    .footer {
        padding-left: 1rem;
        padding-right: 1rem
    }

    .footer {
        padding-top: 2.5rem;
        padding-bottom: 1.5rem;
        gap: 1.5rem
    }

    .footer__top {
        flex-direction: row;
        align-items: flex-start;
        gap: 1.25rem
    }

    .footer__contacts-menu {
        flex-direction: row;
        gap: 1.25rem
    }

    .footer__col {
        gap: 1rem
    }

    .footer__col--contacts {
        width: auto;
        flex: 0 1 15rem;
        gap: .875rem
    }

    .footer__col--menu {
        width: auto;
        flex: 0 1 9rem
    }

    .footer__title {
        font-size: .9375rem;
        line-height: 1.3
    }

    .footer__caption, .footer__list {
        font-size: 14px
    }

    .footer__row {
        font-size: .75rem
    }

    .footer__row {
        gap: .625rem
    }

    .footer__icon {
        width: 1rem
    }

    .socials--footer {
        width: 4.5rem;
        height: 1.25rem
    }

    .socials--footer .socials__link {
        width: 2.25rem;
        height: 1.25rem;
        background-size: 4.5rem 1.25rem
    }

    .socials--footer .socials__link--2 {
        background-position: -2.25rem 0
    }

    .footer__list {
        gap: .625rem
    }

    .footer__inner-cols {
        gap: 1.25rem
    }

    .footer__logos {
        flex: 0 0 auto;
        gap: 1rem
    }

    .footer__logo-rkc {
        width: 3rem;
        height: 3.875rem
    }

    .footer__logo-rkm {
        width: 3.5rem;
        height: 2.8rem
    }

    .footer__logo-rkm-mark {
        width: 3.5rem;
        height: 2.234rem
    }

    .footer__logo-rkm-text {
        top: 2.46rem;
        width: 3.5rem;
        height: .32rem
    }

    .footer__bottom {
        flex-direction: row;
        gap: 1rem;
        font-size: 14px
    }

    .inner {
        gap: 2rem;
        padding: 1.5rem 0 3rem
    }

    .breadcrumbs {
        gap: 0 .625rem;
        padding: 0 1rem;
        font-size: .8125rem
    }

    .breadcrumbs__sep {
        width: 1.125rem
    }

    .inner__title {
        padding: 0 1rem;
        font-size: 2rem;
        line-height: 1.15
    }

    .cards {
        gap: 1rem;
        padding: 0 1rem
    }

    .cards--four {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .card--compact .card__body {
        min-height: 0;
        padding: 1.25rem
    }

    .card--compact .card__title {
        font-size: 1.5rem;
        line-height: 1.3
    }

    .card__arrow {
        width: 3rem;
        height: 3rem
    }

    .card__photo {
        height: 15rem
    }

    .card__body {
        min-height: 0;
        gap: 1.25rem;
        padding: 1.25rem
    }

    .card__title, .card__title--narrow {
        max-width: none;
        font-size: 1.25rem;
        line-height: 1.35
    }

    .card__btn {
        width: auto;
        max-width: none;
        height: 3rem;
        padding: 0 1.5rem;
        font-size: .8125rem
    }
}

@media (max-width: 1279px) {
    .header {
        position: absolute;
        align-items: flex-start;
        gap: 0;
        height: 60.5px;
        padding: 14.7px 20px 0;
        border-bottom: 0
    }

    .header::after {
        content: '';
        position: absolute;
        left: 0;
        right: 0;
        top: 65.7px;
        height: 1px;
        background: var(--white)
    }

    .header__logos {
        order: -1;
        gap: 10px;
        margin-left: 25.9px;
        height: 31px;
        align-items: flex-start
    }

    .header__logo-rkc {
        width: 24px;
        height: 31px;
        object-fit: contain
    }

    .header__logo-rkm {
        width: 39px;
        height: 31px
    }

    .header__logo-rkm-mark {
        top: 0;
        width: 39px;
        height: 24.9px
    }

    .header__logo-rkm-text {
        top: 27.4px;
        width: 39px;
        height: 3.6px
    }

    body:not(.page-home) .header__logo-rkm-mark {
        content: url('../img/m-roscosmos-mark.svg')
    }

    body:not(.page-home) .header__logo-rkm-text {
        content: url('../img/m-roscosmos-text.svg')
    }

    .header__main, .header__row, .header__row--bottom, .header__aside {
        display: contents
    }

    .header__title {
        order: 0;
        display: block;
        width: 137.4px;
        margin: 1.6px 0 0 10px;
        font-size: 12px;
        line-height: 15px;
        white-space: normal
    }

    .header .header__search, .header__divider, .mainnav, .socials--header {
        display: none
    }

    .lang {
        order: 1;
        margin: 8.5px 0 0 auto
    }

    .lang__btn {
        gap: 6px;
        font-size: 14px;
        line-height: 14px
    }

    .lang__arrow {
        width: 8px;
        height: 5px
    }

    .burger {
        order: -2;
        display: block;
        box-sizing: content-box;
        width: 18px;
        height: 12px;
        padding: 16px 13px;
        margin: -6.5px -13px 0;
        border: 0;
        background: url('../img/m-burger.svg') no-repeat center / contain content-box
    }

    .burger__line {
        display: none
    }

    .search--menu {
        height: 40px
    }

    .search--menu .search__input {
        font-size: 16px
    }

    .search--menu .search__toggle {
        width: 20px;
        height: 19px;
        padding: 8px;
        margin: -8px
    }
}

@media (min-width: 768px) and (max-width: 1279px) {
    .header__title {
        width: auto;
        white-space: nowrap;
        font-size: 18px;
        line-height: 22px;
        align-self: center;
        margin: 0 0 14.7px 10px
    }
}

@media (max-width: 767px) {
    html {
        font-size: 16px
    }

    body {
        background-color: #050a1b;
        background-image: url('../img/m-bg-space.jpg');
        background-position: left top;
        background-size: 768px 1903px;
        background-repeat: repeat-y
    }

    .mobilemenu {
        position: fixed;
        inset: 0;
        z-index: 60;
        display: flex;
        flex-direction: column;
        gap: 8px;
        padding: 76px 20px 20px;
        background: #080d1e;
        overflow-y: auto
    }

    .mobilemenu__close {
        position: absolute;
        top: 18px;
        left: 17px;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 24px;
        height: 24px;
        padding: 0;
        background: transparent;
        border: 0;
        color: var(--white);
        font-size: 26px;
        line-height: 1;
        cursor: pointer
    }

    .mobilemenu__close:hover {
        color: var(--orange)
    }

    .mobilemenu__list a {
        display: block;
        padding: 12px 0;
        font-size: 14px;
        line-height: 16px;
        text-transform: uppercase;
        border-bottom: 1px solid rgba(253, 255, 254, .12)
    }

    .socials--mobile {
        margin-top: 20px
    }

    .btn {
        width: 100%;
        max-width: none;
        height: 48px;
        padding: 0 16px;
        font-size: 14px;
        line-height: 20px;
        font-weight: 700;
        border-radius: 10px
    }

    .btn--wide {
        width: 100%
    }

    .h1 {
        font-size: 32px;
        line-height: 35px
    }

    .br-mobile {
        display: inline
    }

    .nowrap-mobile {
        white-space: nowrap
    }

    .footer {
        padding: 40px 20px;
        gap: 35px
    }

    .footer__top {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        gap: 40px
    }

    .footer__col--inner {
        justify-self: auto
    }

    .footer__logos {
        order: -1;
        align-self: center;
        justify-content: center;
        gap: 40px
    }

    .footer__logo-rkc {
        width: 78px;
        height: 100px
    }

    .footer__logo-rkm {
        width: 106px;
        height: 85px
    }

    .footer__logo-rkm-mark {
        width: 106px;
        height: 68.1px
    }

    .footer__logo-rkm-text {
        top: 75.2px;
        width: 106px;
        height: 9.7px
    }

    body:not(.page-home) .footer__logo-rkm-mark {
        content: url('../img/m-footer-roscosmos-mark.svg')
    }

    body:not(.page-home) .footer__logo-rkm-text {
        content: url('../img/m-footer-roscosmos-text.svg')
    }

    .footer__contacts-menu {
        flex-direction: column;
        gap: 40px
    }

    .footer__col {
        gap: 20px
    }

    .footer__col--contacts, .footer__col--menu {
        width: 227px;
        max-width: 100%
    }

    .footer__title {
        font-size: 20px;
        line-height: 20px;
        font-weight: 600
    }

    .footer__caption {
        font-size: 14px;
        line-height: 16px
    }

    .footer__row {
        gap: 14px;
        font-size: 12px;
        line-height: 14px
    }

    .footer__icon {
        width: 20px
    }

    .socials--footer {
        width: 90px;
        height: 25px
    }

    .socials--footer .socials__link {
        width: 45px;
        height: 25px;
        background-size: 90px 25px
    }

    .socials--footer .socials__link--2 {
        background-position: -45px 0
    }

    .footer__list {
        gap: 10px;
        font-size: 14px;
        line-height: 16px
    }

    .footer__col--inner {
        gap: 30px
    }

    .footer__inner-cols {
        flex-direction: column;
        gap: 10px
    }

    .footer__list--policy {
        gap: 10px
    }

    .footer__bottom {
        flex-direction: column;
        gap: 20px;
        font-size: 14px;
        line-height: 16px
    }

    .page-light .header {
        height: 71px;
        padding-top: 20px
    }

    .page-light .header::after {
        display: none
    }

    .page-light .footer {
        background: #080f22 url('../img/m-footer-space.jpg') no-repeat center top / cover
    }

    .page-light .footer__logo-rkc {
        width: 62.222px;
        height: 80px
    }

    .page-light .footer__logo-rkm {
        width: 85px;
        height: 68px
    }

    .page-light .footer__logo-rkm-mark {
        width: 85px;
        height: 54.612px
    }

    .page-light .footer__logo-rkm-text {
        top: 60.211px;
        width: 85px;
        height: 7.789px
    }
}

@media (max-width: 767px) {
    .inner {
        gap: 20px;
        padding: 40px 0 40px
    }

    .breadcrumbs {
        gap: 0 5px;
        padding: 0 20px;
        font-size: 10px
    }

    .breadcrumbs__sep {
        width: 10px
    }

    .inner__title {
        padding: 0 20px;
        font-size: 32px;
        line-height: 1.1
    }

    .cards {
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap: 10px;
        padding: 0 20px;
        align-items: stretch
    }

    .card {
        gap: 10px
    }

    .card__photo {
        height: 120px
    }

    .card__body {
        flex: 1;
        flex-direction: column;
        flex-wrap: nowrap;
        align-items: stretch;
        justify-content: space-between;
        gap: 10px;
        min-height: 110px;
        padding: 10px
    }

    .card__title, .card__title--narrow {
        flex: none;
        max-width: none;
        font-size: 15px;
        line-height: 1.2
    }

    .cards--four {
        grid-template-columns:repeat(2, minmax(0, 1fr))
    }

    .card--compact .card__body {
        min-height: 0;
        padding: 10px;
        gap: 10px
    }

    .card--compact .card__title {
        font-size: 15px;
        line-height: 1.2
    }

    .card--compact .card__body {
        flex-direction: column;
        align-items: flex-start;
        justify-content: space-between
    }

    .card__arrow {
        width: 36px;
        height: 36px
    }

    .card__btn {
        width: 100%;
        max-width: none;
        height: 36px;
        padding: 0 20px;
        font-size: 13px;
        font-weight: 600
    }
}

@media (prefers-reduced-motion: reduce) {
    html {
        scroll-behavior: auto
    }

    *, *::before, *::after {
        animation-duration: .001ms !important;
        transition-duration: .001ms !important
    }

    .search {
        transition-duration: .2s !important
    }
}

.inner--purchases {
    gap: 3.75rem;
    padding: 4.25rem 0 6.25rem
}

.tabs {
    container-type: inline-size;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    gap: 1.25rem;
    gap: 1.0417cqi;
    padding: 0 3.75rem
}

.tab {
    position: relative;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    justify-content: center;
    border: 0;
    font-family: inherit;
    cursor: pointer;
    margin-bottom: .9375rem;
    padding: 1.25rem 3.0625rem;
    padding: 1.25rem 2.5521cqi;
    background: #dce6f0;
    color: #0a1226;
    font-size: 1.25rem;
    font-size: 1.0417cqi;
    line-height: 1.2;
    font-weight: 600;
    text-transform: uppercase;
    text-align: center;
    white-space: nowrap;
    transition: background-color .2s ease, color .2s ease
}

.tab::after {
    content: '';
    position: absolute;
    top: calc(100% + .875rem);
    left: 0;
    right: 0;
    height: .125rem;
    border-radius: .0625rem;
    background: #dce6f0;
    transition: background-color .2s ease
}

.tab:hover, .tab:focus-visible {
    color: var(--orange)
}

.tab--active {
    background: var(--orange);
    color: #fff
}

.tab--active::after {
    background: var(--orange)
}

.tab--active:hover, .tab--active:focus-visible {
    background: #f18f34;
    color: #fff
}

.tab-panel {
    display: flex;
    flex-direction: column;
    gap: 3.75rem
}

.tab-panel[hidden] {
    display: none
}

.tab-panel--normative {
    margin-top: -2.5rem
}

.doc-list {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding: 0 3.75rem
}

.doc {
    display: flex;
    align-items: center;
    padding: 1.25rem 1.875rem;
    box-shadow: inset .375rem 0 0 var(--orange);
    border-radius: var(--radius);
    background-color: #fff
}

.doc[hidden] {
    display: none
}

.doc__main {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    gap: 1.25rem;
    min-width: 0;
    padding: .9375rem 0
}

.doc__format {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.125rem;
    height: 3.75rem;
    border-radius: .375rem;
    background-color: #dce6f0;
    font-size: .875rem;
    line-height: 1;
    font-weight: 600;
    text-transform: uppercase
}

.doc__title {
    margin: 0;
    min-width: 0;
    font-size: 1.25rem;
    line-height: 1.25rem;
    font-weight: 600;
    text-transform: uppercase;
    color: #0a1226
}

.doc__meta {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1.25rem;
    width: 40rem
}

.doc__date, .doc__size {
    font-size: 1.25rem;
    line-height: 1.25rem;
    color: rgba(10, 18, 38, .5);
    text-transform: uppercase;
    white-space: nowrap
}

.doc__dot {
    flex: none;
    width: .3125rem;
    height: .3125rem;
    border-radius: 50%;
    background-color: rgba(10, 18, 38, .5)
}

.doc__open {
    flex: none;
    width: 11rem;
    height: 2.5rem;
    border: 1px solid #0a1226;
    border-radius: var(--radius);
    opacity: .5;
    background: url('../img/icon-doc-open.svg') no-repeat center / 1.25rem 1.25rem;
    transition: opacity .2s ease
}

.doc__open:hover, .doc__open:focus-visible {
    opacity: 1
}

.doc[data-format="zip"] .doc__open, .doc[data-format="doc"] .doc__open, .doc[data-format="docx"] .doc__open, .doc[data-format="xls"] .doc__open, .doc[data-format="xlsx"] .doc__open {
    display: none
}

.doc__download {
    flex: none;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .625rem;
    height: 3rem;
    padding: 0 1.875rem;
    border: 1px solid var(--orange);
    border-radius: var(--radius);
    background-color: var(--orange);
    color: #fff;
    font-size: 1.25rem;
    line-height: 1.4;
    font-weight: 600;
    text-transform: uppercase;
    white-space: nowrap;
    transition: background-color .2s ease, border-color .2s ease
}

.doc__download::before {
    content: '';
    flex: none;
    width: 1.25rem;
    height: 1.25rem;
    background: url('../img/icon-download.svg') no-repeat center / contain
}

.doc__download:hover, .doc__download:focus-visible {
    background-color: #f18f34;
    border-color: #f18f34;
    color: #fff
}

.btn--load {
    align-self: center;
    width: auto;
    padding: 0 4.375rem;
    font-weight: 700
}

@media (max-width: 1279px) {
    .inner--purchases {
        gap: 2rem;
        padding: 2rem 0 3rem
    }

    .tab-panel {
        gap: 2rem
    }

    .tab-panel--normative {
        margin-top: 0
    }

    .doc-list {
        gap: 1rem;
        padding: 0 1rem
    }

    .doc {
        padding: 1rem 1.25rem
    }

    .doc__main {
        gap: 1rem;
        padding: .5rem 0
    }

    .doc__format {
        width: 2.75rem;
        height: 3.25rem;
        font-size: .75rem
    }

    .doc__title {
        font-size: 1.0625rem;
        line-height: 1.2
    }

    .doc__meta {
        width: auto;
        flex: 0 1 auto;
        gap: .75rem
    }

    .doc__date, .doc__size {
        font-size: .9375rem;
        line-height: 1.2
    }

    .doc__open {
        width: 4rem;
        height: 2.25rem;
        background-size: 1rem 1rem
    }

    .doc__download {
        height: 2.75rem;
        padding: 0 1.25rem;
        font-size: .9375rem
    }

    .doc__download::before {
        width: 1rem;
        height: 1rem
    }

    .tabs {
        flex-wrap: nowrap;
        gap: .625rem;
        padding: 0 1rem
    }

    .tab {
        flex: 1 1 0;
        min-width: 0;
        margin-bottom: 10px;
        padding: .75rem .625rem;
        font-size: .8125rem;
        white-space: normal
    }

    .tab::after {
        top: calc(100% + 9px);
        height: 2px
    }

    .btn--load {
        height: 2.75rem;
        padding: 0 2.5rem;
        font-size: .875rem
    }
}

@media (max-width: 767px) {
    .inner--purchases {
        gap: 20px;
        padding: 40px 0
    }

    .tab-panel {
        gap: 20px
    }

    .tab-panel--normative {
        margin-top: 0
    }

    .doc-list {
        gap: 10px;
        padding: 0 20px
    }

    .doc {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
        padding: 20px
    }

    .doc__main {
        align-items: normal;
        gap: 10px;
        padding: 0
    }

    .doc__format {
        width: 40px;
        height: 48px;
        font-size: 12px
    }

    .doc__title {
        font-size: 16px;
        line-height: 1.2;
        align-content: center
    }

    .doc__meta {
        width: auto;
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 10px
    }

    .doc__date, .doc__size {
        font-size: 12px;
        line-height: 1.2
    }

    .doc, .doc--slim {
        padding: 10px 20px
    }

    .doc__format {
        width: 36px;
        height: 36px;
        font-size: 12px
    }

    .doc__meta {
        flex-wrap: nowrap;
        gap: 10px
    }

    .doc__size {
        margin-right: auto
    }

    .doc__open {
        width: 36px;
        height: 36px;
        background-size: 16px 16px
    }

    .doc__download {
        flex: none;
        width: 36px;
        height: 36px;
        padding: 0;
        gap: 0;
        font-size: 0
    }

    .doc__download::before {
        width: 16px;
        height: 16px
    }

    .tabs {
        flex-wrap: nowrap;
        gap: 10px;
        padding: 0 20px;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none
    }

    .tabs::-webkit-scrollbar {
        display: none
    }

    .tab {
        flex: 0 0 auto;
        margin-bottom: 8px;
        padding: 12px 16px;
        font-size: 13px
    }

    .tab::after {
        top: calc(100% + 7px);
        height: 2px
    }

    .btn--load {
        align-self: stretch;
        width: auto;
        margin: 0 20px;
        height: 48px;
        padding: 0 20px;
        font-size: 14px
    }
}

.inner--product h1.inner__title {
    margin-top: .8125rem;
    margin-bottom: .5rem
}

@media (max-width: 1279px) {
    .inner--product h1.inner__title {
        margin-top: 0
    }

    .inner--product h1.inner__title {
        margin-bottom: 0
    }
}

@keyframes icon-shine {
    0% {
        filter: brightness(1) drop-shadow(0 0 0 rgba(231, 124, 28, 0))
    }
    50% {
        filter: brightness(1.4) drop-shadow(0 0 .75rem rgba(231, 124, 28, .6))
    }
    100% {
        filter: brightness(1) drop-shadow(0 0 0 rgba(231, 124, 28, 0))
    }
}

@keyframes border-sheen {
    0% {
        background-position: 200% 0;
        opacity: 0
    }
    18% {
        opacity: 1
    }
    82% {
        opacity: 1
    }
    100% {
        background-position: -100% 0;
        opacity: 0
    }
}

.inner--contacts {
    gap: 3.75rem;
    padding: 4.25rem 0 6.25rem
}

.inner__title--h2 {
    font-size: 3.125rem;
    line-height: 1.2
}

@media (max-width: 1279px) {
    .inner--contacts {
        gap: 2rem;
        padding: 2rem 0 3rem
    }

    .inner__title--h2 {
        font-size: 1.25rem;
        line-height: 1.2
    }
}

@media (max-width: 767px) {
    .inner--contacts {
        gap: 20px;
        padding: 40px 0
    }

    .inner__title--h2 {
        padding: 0 20px;
        font-size: 26px;
        line-height: 1.2
    }
}

.career__description h2 {
    margin: 0;
    font-size: 3.125rem;
    line-height: 1.2;
    font-weight: 400;
    color: #0a1226
}

.career__cards .card__photo--empty {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #dce6f0
}

.career__cards .card__photo--empty img {
    width: 3.125rem;
    height: 3.125rem;
    object-fit: contain
}

@media (max-width: 1279px) {
    .career__description h2 {
        font-size: 1.25rem;
        line-height: 1.2
    }
}

@media (max-width: 767px) {
    .career__description h2 {
        font-size: 26px;
        line-height: 1.2
    }

    .career__cards .card__photo--empty img {
        width: 48px;
        height: 48px
    }
}

.inner--work {
    gap: 3.75rem;
    padding: 4.25rem 0 6.25rem
}

.inner__lead {
    padding: 0 3.75rem;
    font-size: 1.625rem;
    line-height: 1.3;
    color: #0a1226
}

.inner__lead--text {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    font-size: 1.25rem;
    line-height: 1.7
}

.inner__lead--text > * {
    margin: 0
}

.inner__lead--text b, .inner__lead--text strong {
    font-weight: 600
}

.inner__lead--text h2, .inner__lead--text h3, .inner__lead--text h4 {
    font-size: inherit;
    line-height: inherit;
    font-weight: 600
}

.inner__lead--text ul, .inner__lead--text ol {
    padding-left: 1.875rem
}

.inner__lead--text li + li {
    margin-top: .25rem
}

.inner__lead--text li::marker {
    color: var(--orange)
}

.inner__lead--text a {
    color: var(--orange)
}

.inner__lead--text a:hover, .inner__lead--text a:focus-visible {
    color: #f18f34;
    text-decoration: underline
}

.inner__richtext {
    padding: 0 3.75rem;
    color: #0a1226;
    font-size: 1.25rem;
    line-height: 1.7
}

.inner__richtext > * + * {
    margin-top: 1.25rem
}

.inner__richtext b, .inner__richtext strong {
    font-weight: 600
}

.inner__richtext a {
    color: var(--orange)
}

.inner__richtext a:hover, .inner__richtext a:focus-visible {
    color: #f18f34;
    text-decoration: underline
}

.inner__richtext ul, .inner__richtext ol {
    padding-left: 1.875rem
}

.inner__richtext ul {
    list-style: disc
}

.inner__richtext ol {
    list-style: decimal
}

.inner__richtext li + li {
    margin-top: .25rem
}

.inner__richtext li::marker {
    color: var(--orange)
}

.inner__richtext table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
    border: 1px solid var(--orange);
    border-radius: var(--radius);
    background: transparent
}

.inner__richtext th, .inner__richtext td {
    width: auto;
    padding: 1.25rem;
    border: 0;
    border-top: 1px solid var(--orange);
    border-left: 1px solid var(--orange);
    vertical-align: top;
    overflow-wrap: break-word
}

.inner__richtext tr:first-child > * {
    border-top: 0
}

.inner__richtext tr > *:first-child {
    border-left: 0
}

.inner__richtext--tight {
    margin-top: -1.875rem
}

.cards--tight {
    margin-top: -1.875rem
}

.inner__title--tight {
    margin-top: -1.59375rem
}

.inner__richtext th {
    font-weight: 600
}

.inner__richtext td p, .inner__richtext th p {
    margin: 0
}

.inner__richtext td p + p, .inner__richtext th p + p {
    margin-top: .625rem
}

.btn--auto {
    width: auto;
    padding: 0 4.375rem;
    font-weight: 700
}

.page-light.is-modal-open {
    overflow: hidden
}

@media (max-width: 1279px) {
    .inner--work {
        gap: 2.5rem;
        padding: 2.5rem 0 3.75rem
    }

    .inner__lead {
        padding: 0 1rem;
        font-size: 1rem;
        line-height: 1.4
    }

    .inner__lead--text {
        gap: 1rem;
        font-size: 1rem;
        line-height: 1.4
    }

    .inner__richtext {
        padding: 0 1rem;
        font-size: 1rem;
        line-height: 1.4
    }

    .inner__richtext--tight {
        margin-top: -.75rem
    }

    .cards--tight {
        margin-top: -.75rem
    }

    .inner__title--tight {
        margin-top: 0
    }

    .inner__richtext th, .inner__richtext td {
        padding: 1rem
    }

    .btn--auto {
        padding: 0 2rem
    }
}

@media (max-width: 767px) {
    .inner--work {
        gap: 20px;
        padding: 40px 0
    }

    .inner__lead {
        padding: 0 20px;
        font-size: 14px;
        line-height: 1.3
    }

    .inner__lead--text {
        gap: 12px;
        font-size: 14px;
        line-height: 1.3
    }

    .inner__richtext {
        padding: 0 20px;
        font-size: 14px;
        line-height: 1.3
    }

    .inner__richtext--tight {
        margin-top: 0
    }

    .cards--tight {
        margin-top: 0
    }

    .inner__title--tight {
        margin-top: 0
    }

    .inner__richtext > * + * {
        margin-top: 12px
    }

    .inner__richtext table {
        display: block;
        overflow-x: auto;
        scrollbar-width: none
    }

    .inner__richtext table::-webkit-scrollbar {
        display: none
    }

    .inner__richtext tbody {
        display: table;
        width: 100%;
        min-width: 480px
    }

    .inner__richtext th, .inner__richtext td {
        padding: 10px;
        overflow-wrap: normal
    }

    .btn--auto {
        width: 100%;
        height: 48px;
        padding: 0 20px;
        font-size: 16px
    }
}

.doc--slim {
    align-items: center;
    padding: .625rem 1.875rem
}

.doc--slim .doc__main {
    align-items: center;
    padding: 0
}

.doc--slim .doc__open {
    width: 3.84375rem
}

@media (max-width: 1279px) {
    .doc--slim {
        padding: .625rem 1.25rem
    }
}

@media (max-width: 767px) {
    .doc--slim {
        align-items: stretch
    }

    .doc--slim .doc__main {
        align-items: normal
    }

    .doc--slim .doc__open {
        width: 36px
    }
}

.reveal {
    opacity: 0;
    transform: translateY(1.75rem);
    transition: opacity .6s ease, transform .6s ease;
    transition-delay: var(--reveal-delay, 0s);
    will-change: opacity, transform
}

.reveal.is-revealed {
    opacity: 1;
    transform: none;
    will-change: auto
}

.inner--realty, .inner--assets {
    gap: 3.75rem;
    padding: 4.25rem 0 6.25rem
}

.inner--realty .inner__lead, .inner--assets .inner__lead {
    font-size: 1.25rem;
    line-height: 1.7
}

.tabs--start {
    justify-content: flex-start
}

.tabs--start .tabs__tab {
    padding: 1.25rem 3.0625rem;
    font-size: 1.25rem
}

@media (max-width: 1279px) {
    .inner--realty, .inner--assets {
        gap: 2rem;
        padding: 2rem 0 3rem
    }

    .inner--realty .inner__lead, .inner--assets .inner__lead {
        font-size: 1rem;
        line-height: 1.4
    }

    .tabs--start {
        padding: 0 1rem
    }

    .tabs--start .tabs__tab {
        flex: 0 0 auto;
        padding: .75rem 1.5rem;
        font-size: .875rem
    }

    .tabs--years .tabs__tab {
        flex: 0 0 auto;
        padding: .875rem 1.5rem;
        font-size: 1rem;
        white-space: nowrap
    }
}

@media (max-width: 767px) {
    .inner--realty, .inner--assets {
        gap: 20px;
        padding: 40px 0 40px
    }

    .inner--realty .inner__lead, .inner--assets .inner__lead {
        font-size: 14px;
        line-height: 1.3
    }

    .tabs--start {
        padding: 0 20px
    }

    .tabs--start .tabs__tab {
        padding: 15px 20px;
        font-size: 14px;
        margin-bottom: 10px
    }

    .tabs--years .tabs__tab {
        margin-bottom: 10px;
        padding: 15px 20px;
        font-size: 14px
    }

    .tabs--start .tabs__tab::after {
        top: calc(100% + 8px)
    }

    .tabs--years .tabs__tab::after {
        top: calc(100% + 9px)
    }
}

.inner--object {
    gap: 3.75rem;
    padding: 4.25rem 0 6.25rem
}

.btn--trade {
    width: 100%;
    gap: .625rem
}

.btn--trade::after {
    content: '';
    flex: none;
    width: 1.25rem;
    height: 1.25rem;
    background: url(../img/icon-btn-arrow.svg) no-repeat center / 100% 100%
}

@media (max-width: 1279px) {
    .inner--object {
        gap: 2rem;
        padding: 2rem 0 3rem
    }
}

@media (max-width: 767px) {
    .inner--object {
        gap: 20px;
        padding: 40px 0 40px
    }

    .inner--object .inner__title--h2 {
        font-size: 28px;
        line-height: 1.1
    }
}

.inner--stub {
    gap: 1.875rem;
    padding: 4.25rem 0 6.25rem;
    min-height: 31.25rem
}

.inner--stub .breadcrumbs {
    margin-bottom: 1.875rem
}

.inner--stub .inner__lead {
    max-width: 50rem
}

@media (max-width: 1279px) {
    .inner--stub {
        gap: 1rem;
        padding: 2rem 0 3rem;
        min-height: 20rem
    }

    .inner--stub .breadcrumbs {
        margin-bottom: 1rem
    }
}

@media (max-width: 767px) {
    .inner--stub {
        gap: 16px;
        padding: 24px 0 40px;
        min-height: 0
    }

    .inner--stub .breadcrumbs {
        margin-bottom: 10px
    }
}

.inner--social .inner__title[id] {
    scroll-margin-top: 5rem
}

@media (max-width: 1279px) {
    .inner--social .inner__title[id] {
        scroll-margin-top: 4.25rem
    }

    .inner--social .inner__title--h2 {
        font-size: 1.625rem
    }
}

@media (max-width: 767px) {
    .inner--social .inner__title[id] {
        scroll-margin-top: 64px
    }
}

.inner--search {
    gap: 1.25rem;
    padding: 4.25rem 0 6.25rem
}

.inner--search .breadcrumbs, .inner--search .inner__title {
    padding-left: 3.75rem;
    padding-right: 3.75rem
}

.inner--search .inner__title {
    margin-top: 2.5rem
}

@media (max-width: 1279px) {
    .inner--search {
        padding: 2rem 0 3rem
    }

    .inner--search .breadcrumbs, .inner--search .inner__title {
        padding-left: 1rem;
        padding-right: 1rem
    }

    .inner--search .inner__title {
        margin-top: 1.5rem
    }
}

@media (max-width: 767px) {
    .inner--search {
        gap: 20px;
        padding: 40px 0 40px
    }

    .inner--search .breadcrumbs, .inner--search .inner__title {
        padding-left: 20px;
        padding-right: 20px
    }

    .inner--search .inner__title {
        margin-top: 0
    }
}

.inner--energy {
    gap: 0;
    padding: 2.1875rem 0 6.25rem
}

.inner--energy .inner__title {
    margin-top: 4.4375rem
}

.inner--energy .tabs {
    margin-top: 3.125rem
}

.inner--energy .tab-panel {
    margin-top: 3.125rem
}

.inner--energy .breadcrumbs, .inner--energy .inner__title, .inner--energy .tabs, .inner--energy .doc-list {
    padding-left: 3.75rem;
    padding-right: 3.75rem
}

.tab-panel--energy {
    gap: 0
}

@media (max-width: 1279px) {
    .inner--energy {
        gap: 2rem;
        padding: 1.5rem 0 3rem
    }

    .inner--energy .inner__title {
        margin-top: 0
    }

    .inner--energy .tabs, .inner--energy .tab-panel {
        margin-top: 0
    }

    .inner--energy .breadcrumbs, .inner--energy .inner__title, .inner--energy .tabs, .inner--energy .doc-list {
        padding-left: 1rem;
        padding-right: 1rem
    }
}

@media (max-width: 767px) {
    .inner--energy {
        gap: 20px;
        padding: 20px 0 40px
    }

    .inner--energy .inner__title {
        margin-top: 0
    }

    .inner--energy .tabs, .inner--energy .tab-panel {
        margin-top: 0
    }

    .inner--energy .breadcrumbs, .inner--energy .inner__title, .inner--energy .tabs, .inner--energy .doc-list {
        padding-left: 20px;
        padding-right: 20px
    }
}

a[href^="tel:"], a[href^="mailto:"] {
    cursor: pointer
}

a[href^="tel:"]:hover, a[href^="mailto:"]:hover, a[href^="tel:"]:focus-visible, a[href^="mailto:"]:focus-visible {
    color: var(--orange);
    text-decoration: underline;
    text-underline-offset: .2em
}

.footer a[href^="tel:"]:hover, .footer a[href^="mailto:"]:hover, .footer a[href^="tel:"]:focus-visible, .footer a[href^="mailto:"]:focus-visible {
    text-decoration: underline;
    text-underline-offset: .2em
}

@media (hover: none) {
    a[href^="tel:"], a[href^="mailto:"] {
        text-decoration: underline;
        text-underline-offset: .2em
    }
}

.inner--tcenter {
    gap: 3.75rem;
    padding: 4.25rem 0 6.25rem
}

@media (max-width: 1279px) {
    .inner--tcenter {
        gap: 2rem;
        padding: 2rem 0 3rem
    }
}

@media (max-width: 767px) {
    .inner--tcenter {
        gap: 20px;
        padding: 40px 0 40px
    }
}

.inner--news {
    gap: 2.5rem;
    padding: 2.5rem 0 5rem
}

.inner--news .breadcrumbs {
    padding: 0 3.75rem
}

.inner--news .btn--load {
    width: 18.75rem;
    padding: 0;
    margin-top: 2.5rem
}

.archive-link {
    flex: none;
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: .9375rem;
    height: 2.5rem;
    padding: 0 .6875rem;
    border-bottom: 2px solid var(--orange);
    color: var(--orange);
    font-size: 1.625rem;
    line-height: 1.875rem;
    font-weight: 700;
    text-transform: uppercase
}

.archive-link:hover, .archive-link:focus-visible {
    color: #f18f34;
    border-bottom-color: #f18f34
}

.archive-link__arrow {
    flex: none;
    width: 1.7678rem;
    height: 1.7678rem;
    background: url('../img/icon-arrow-corner-lg.svg') no-repeat center / 79.75% 79.75%;
    transform: rotate(45deg)
}

.title-link {
    color: inherit
}

.title-link:hover, .title-link:focus-visible {
    color: var(--orange)
}

.inner--ndetail {
    gap: 2.5rem
}

@media (max-width: 1279px) {
    .inner--news {
        gap: 2rem;
        padding: 2rem 0 3rem
    }

    .inner--news .btn--load {
        width: auto;
        padding: 0 2.5rem;
        margin-top: 0
    }

    .archive-link {
        height: 2rem;
        padding: 0 .5rem;
        gap: .5rem;
        font-size: 1rem;
        line-height: 1.25rem
    }

    .archive-link__arrow {
        width: 1.25rem;
        height: 1.25rem
    }

    .inner--ndetail {
        gap: 2rem
    }
}

@media (max-width: 767px) {
    .inner--news {
        gap: 20px;
        padding: 20px 0 40px
    }

    .inner--news .breadcrumbs {
        padding: 0 16px
    }

    .inner--news .btn--load {
        width: auto;
        margin: 20px 16px 0;
        padding: 0 20px
    }

    .archive-link {
        height: auto;
        padding: 0 0 3px;
        gap: 8px;
        border-bottom-width: 1px;
        font-size: 14px;
        line-height: 17px
    }

    .archive-link__arrow {
        width: 14.1px;
        height: 14.1px
    }

    .inner--ndetail {
        gap: 20px
    }
}

.inner--eo .card__title {
    font-size: 1.75rem;
    line-height: 2.125rem
}

@media (max-width: 1279px) {
    .inner--eo .card__title {
        font-size: 1.25rem;
        line-height: 1.3
    }
}

@media (max-width: 767px) {
    .inner--eo .card__title {
        font-size: 18px;
        line-height: 1.3
    }
}

@media (max-width: 359px) {
    .card__title, .card__title--narrow, .card--compact .card__title {
        font-size: 13px
    }

    .inner--eo .card__title {
        font-size: 16px
    }
}

.inner--stats {
    gap: 3.4375rem
}

.inner--stats .breadcrumbs, .inner--stats .inner__title {
    padding: 0 3.75rem
}

.inner--stats .inner__title {
    margin-bottom: 0
}

.tabs--half {
    justify-content: stretch
}

.tabs--half .tabs__tab {
    flex: 1 1 0;
    min-width: 0;
    padding: 1.25rem;
    font-size: 1.25rem;
    line-height: 1.2
}

@media (max-width: 1279px) {
    .inner--stats .breadcrumbs, .inner--stats .inner__title {
        padding: 0 1rem
    }
}

@media (max-width: 767px) {
    .inner--stats {
        gap: 20px
    }

    .inner--stats .breadcrumbs, .inner--stats .inner__title {
        padding: 0 20px
    }

    .tabs--half .tabs__tab {
        width: 100%;
        padding: 12px 15px;
        font-size: 14px
    }
}

.inner--coop h1.inner__title {
    margin-top: .2125rem
}

@media (min-width: 1280px) {
    .inner--kozlov h1.inner__title {
        margin-top: .2125rem
    }

    .inner--coop h1.inner__title, .inner--kozlov h1.inner__title {
        margin-bottom: -.745rem
    }
}

@media (max-width: 1279px) {
    .inner--coop h1.inner__title {
        margin-top: 0
    }
}

.inner--docs h1.inner__title {
    margin-top: 1.3375rem
}

@media (max-width: 1279px) {
    .inner--docs h1.inner__title {
        margin-top: 0
    }
}

@media (max-width: 767px) {
    .inner--docs .doc-list, .inner--kozlov .doc-list {
        gap: 20px
    }

    .inner--docs .doc__title, .inner--kozlov .doc__title {
        font-size: 14px;
        line-height: 1.3
    }

    .inner--docs .doc__date, .inner--docs .doc__size, .inner--kozlov .doc__date, .inner--kozlov .doc__size {
        font-size: 14px;
        line-height: 20px
    }

    .inner--docs .doc__main, .inner--kozlov .doc__main {
        gap: 20px
    }
}

.inner--lead {
    gap: 1.25rem
}

.inner--lead h1.inner__title {
    margin-top: 3.1875rem
}

@media (max-width: 1279px) {
    .inner--lead {
        gap: 2rem
    }

    .inner--lead h1.inner__title {
        margin-top: 0
    }
}

@media (max-width: 767px) {
    .inner--lead {
        gap: 20px
    }
}

.inner__title--sm {
    font-size: 3.225rem
}

@media (min-width: 1280px) {
    .inner__title--sm + .doc-list {
        margin-top: -1.25rem
    }
}

@media (max-width: 1279px) {
    .inner__title--sm {
        font-size: 1.72rem
    }
}

@media (max-width: 767px) {
    .inner__title--sm {
        font-size: 27.5px
    }
}

.inner--pgallery {
    gap: 3.75rem
}

.card__arrow--white {
    background-color: #fff;
    background-image: url('../img/icon-arrow-orange.svg')
}

.card__arrow--white:hover {
    background-color: #fdeee0
}

@media (max-width: 1279px) {
    .inner--pgallery {
        gap: 2rem
    }
}

@media (max-width: 767px) {
    .inner--pgallery {
        gap: 20px
    }

    .inner--pgallery .btn--load {
        font-size: 16px
    }
}

.inner--album {
    gap: 3.75rem
}

@media (max-width: 1279px) {
    .inner--album {
        gap: 2rem
    }
}

@media (max-width: 767px) {
    .inner--album {
        gap: 20px
    }

    .inner--album .btn--load {
        font-size: 16px
    }
}

.tabs.tabs--scroll {
    overflow: visible
}

.tabs__track {
    display: flex;
    flex: 1 1 auto;
    min-width: 0;
    gap: inherit;
    justify-content: inherit;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: .125rem;
    margin-bottom: -.125rem;
    scrollbar-width: none;
    overscroll-behavior-x: contain;
    --fade: 2.5rem;
    --fade-start: 0px;
    --fade-end: 0px;
    scroll-padding-inline: var(--fade)
}

.tabs__track::-webkit-scrollbar {
    display: none
}

.tabs--overflow .tabs__track {
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 var(--fade-start), #000 calc(100% - var(--fade-end)), transparent);
    mask-image: linear-gradient(90deg, transparent, #000 var(--fade-start), #000 calc(100% - var(--fade-end)), transparent)
}

.tabs__track--fade-start {
    --fade-start: var(--fade)
}

.tabs__track--fade-end {
    --fade-end: var(--fade)
}

.tabs__arrow {
    position: relative;
    flex: none;
    align-self: flex-start;
    width: 3.75rem;
    height: 3.75rem;
    padding: 0;
    border: 0;
    background: #dce6f0;
    color: #0a1226;
    cursor: pointer;
    transition: color .2s ease
}

.tabs__arrow[hidden] {
    display: none
}

.tabs__arrow::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: .75rem;
    height: .75rem;
    margin: -.375rem 0 0 -.375rem;
    border-top: .125rem solid currentColor;
    border-right: .125rem solid currentColor;
    transform: translateX(-.1875rem) rotate(45deg)
}

.tabs__arrow--prev::before {
    transform: translateX(.1875rem) rotate(-135deg)
}

.tabs__arrow:hover, .tabs__arrow:focus-visible {
    color: var(--orange)
}

.tabs__arrow:disabled {
    color: rgba(10, 18, 38, .25);
    cursor: default
}

@media (max-width: 1279px) {
    .tabs__arrow {
        width: 2.75rem
    }
}

@media (max-width: 767px) {
    .tabs__track {
        --fade: 24px
    }

    .tabs__arrow {
        width: 36px
    }

    .tabs__arrow::before {
        width: 9px;
        height: 9px;
        margin: -4.5px 0 0 -4.5px;
        border-width: 2px;
        transform: translateX(-2px) rotate(45deg)
    }

    .tabs__arrow--prev::before {
        transform: translateX(2px) rotate(-135deg)
    }
}

@media (max-width: 767px) {
    .inner__richtext--org table, .inner__richtext--org tbody, .inner__richtext--org tr, .inner__richtext--org td {
        display: block;
        width: auto;
        min-width: 0;
        overflow: visible
    }

    .inner__richtext--org td {
        border-left: 0
    }
}

@media (min-width: 1280px) {
    .card--compact .card__arrow {
        width: 3rem;
        height: 3rem
    }
}

@supports (text-box:trim-both cap alphabetic) {
    @media (min-width: 768px) {
        .card__title {
            text-box: trim-both cap alphabetic
        }
    }
}
/* Bitrix admin panel: не перекрывать мобильное меню */
body:has(#bx-panel) .mobilemenu {
    top: 57px;
}

