/* Keep Bitrix edit-area wrappers inside fixed grid items. */
.main-complexes {
    grid-template-columns: minmax(0, 1fr);
}

.main-complexes .main-complexes__banner-slot,
.main-complexes .main-complexes__catalog-slot,
.main-complexes .main-complexes__catalog-layout {
    min-width: 0;
    max-width: 100%;
}

.main-complexes .main-complexes__catalog-layout {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    row-gap: 16px;
}

.main-complexes .main-complexes__slider {
    grid-row: 1;
    min-width: 0;
}

.main-complexes .main-complexes__more,
.main-complexes .main-complexes__navigation {
    grid-row: 2;
}

@media (min-width: 1000px) {
    .main-complexes .main-complexes__catalog-layout {
        row-gap: 0;
    }

    .main-complexes .main-complexes__navigation {
        grid-row: 1;
    }
}

/* The menu keeps its grid area when Bitrix adds an edit-area wrapper. */
.header-main__menu-slot {
    grid-area: menu;
    min-width: 0;
}

@media (max-width: 999.98px) {
    .header-main__menu-slot {
        display: none;
    }
}

/* Place stable footer slots in the grid, outside Bitrix edit areas. */
.footer > .footer__slot {
    min-width: 0;
}

@media (min-width: 1000px) {
    .footer > .footer__slot--banner {
        grid-area: 1 / 1 / 7 / 2;
    }

    .footer > .footer__slot--catalog {
        grid-area: 1 / 2 / 4 / 3;
    }

    .footer > .footer__slot--training {
        grid-area: 1 / 3 / 2 / 4;
    }

    .footer > .footer__slot--specialists {
        grid-area: 2 / 3 / 3 / 4;
    }

    .footer > .footer__slot--community {
        grid-area: 3 / 3 / 5 / 4;
    }

    .footer > .footer__slot--about {
        grid-area: 1 / 4 / 4 / 5;
    }

    .footer > .footer__slot--button {
        grid-area: 4 / 4 / 5 / 5;
        align-self: end;
        justify-self: end;
    }

    .footer > .footer__slot--agreement {
        grid-column: 2 / 5;
    }

    .footer > .footer__slot--disclaimer {
        grid-area: 6 / 2 / 7 / 5;
    }

    .footer > .footer__slot--payment {
        grid-area: 6 / 2 / 7 / 5;
        justify-self: end;
    }
}
