.ng-catalog { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 32px; margin-bottom: 60px; align-items: start; }
.ng-catalog__content, .ng-catalog__sidebar { min-width: 0; }
.ng-catalog__sections { border: 1px solid #e5e5e5; border-radius: 4px; margin-bottom: 20px; background: #fff; }
.ng-catalog__sections summary { cursor: pointer; padding: 20px; font-weight: 600; color: #333; }
.ng-catalog__sections nav { padding: 0 12px 12px; }
.ng-catalog__section-link { display: flex; gap: 10px; justify-content: space-between; padding: 9px 8px 9px calc(8px + var(--section-depth, 0) * 12px); color: #555; font-size: 14px; line-height: 1.45; }
.ng-catalog__section-link span { color: #999; flex-shrink: 0; }
.ng-catalog__section-link.is-current { color: var(--theme-base-color, #b62910); font-weight: 600; background: #f8f8f8; border-radius: 4px; }
body.theme-dark .ng-catalog__sections { background: var(--black_bg_black, #1b1b1b); border-color: var(--stroke_black, #3a3a3a); }
body.theme-dark .ng-catalog__sections summary { color: var(--white_text_black, #fff); }
body.theme-dark .ng-catalog__section-link { color: var(--basic_text_black, #ccc); }
body.theme-dark .ng-catalog__section-link.is-current { background: var(--card_bg_black, #232323); color: var(--white_text_black, #fff); }
body.theme-dark .ng-catalog__section-link:hover { color: var(--white_text_black, #fff); background: var(--card_bg_black, #232323); }
.ng-catalog .filter-panel__filter, .ng-catalog .controls-linecount { display: none; }
.ng-catalog .filter-panel { margin-bottom: 24px; }
.ng-catalog__sidebar .bx_filter { display: block; width: 100%; }
.ng-catalog__sidebar .bx_filter .slide-block__body { display: block; }
.ng-catalog__sidebar .bx_filter .bx_filter_parameters_box { width: 100%; float: none; }
.ng-catalog__sidebar .bx_filter .svg-close { display: none; }
.ng-catalog__content > h2 { margin-top: 0; font-size: 26px; }
/* Own scope: never change the existing /product/ grids or promo filters. */
#main .ng-catalog .catalog-block .grid-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
#main .ng-catalog .catalog-block .grid-list__item { width: auto; min-width: 0; margin: 0; }
#main .ng-catalog .catalog-block .grid-list > .grid-list__item { width: 100% !important; }
.ng-catalog .catalog-block__info-title { overflow-wrap: anywhere; }
@media (max-width: 1199px) {
    .ng-catalog { grid-template-columns: 240px minmax(0, 1fr); gap: 24px; }
    #main .ng-catalog .catalog-block .grid-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
    .ng-catalog { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    .ng-catalog .filter-panel { flex-wrap: wrap; gap: 16px; }
    .ng-catalog .filter-panel__part-right { display: block; }
    .ng-catalog .controls-view:not(.controls-linecount) { display: flex; }
    .ng-catalog__section-link { min-height: 44px; align-items: center; }
}
@media (max-width: 480px) {
    #main .ng-catalog .catalog-block .grid-list { grid-template-columns: minmax(0, 1fr); }
}
