.content h1:has(+ .catalog-page) { margin-bottom: 32px; }
.catalog-title-row { display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-bottom: 36px; }
.catalog-title-row .breadcrumbs { margin: 0; flex-shrink: 0; }
.catalog-title-row .catalog-section-title { font: 400 40px/1.15 Manrope,sans-serif !important; color: #22272d; letter-spacing: 4px; text-transform: uppercase; text-align: right; margin: 0; overflow-wrap: anywhere; }
@media (min-width: 1025px) {
  .content > .container:has(.catalog-title-row) { padding-left: 32px; padding-right: 32px; }
  .content .catalog-page { display: grid; grid-template-columns: minmax(260px,327px) minmax(0,1fr); gap: 24px; border: 0; border-radius: 0; overflow: visible; }
  .content .catalog-page > .catalog-page__aside { width: auto; min-width: 0; padding: 0; border: 1px solid #f2f0f0; border-radius: 10px; }
  .content .catalog-page > .catalog-page__body { width: auto; min-width: 0; max-width: none; margin: 0; border: 0; }
  .catalog-page .catalog-filter__content { gap: 0; }
  .catalog-page .catalog-filter__header { padding: 20px 20px 0; margin: 0 0 30px; }
  .catalog-page .catalog-filter__title { font: 400 20px/15px Unbounded,sans-serif; }
  .catalog-page .catalog-filter__rows { padding: 0 20px; }
  .catalog-page .catalog-filter__scroll-content { gap: 30px; }
  .catalog-page .catalog-filter__item { display: block; padding: 0; margin: 0; }
  .catalog-page .catalog-filter__item-more { margin-top: 15px; }
  .catalog-page .catalog-filter .ui-range { display: block; padding: 0; gap: 0; }
  .catalog-page .catalog-filter__item-caption { font: 400 14px/11px Unbounded,sans-serif; margin-bottom: 15px; }
  .catalog-page .catalog-page__head { border: 1px solid #f2f0f0; border-radius: 10px; min-height: 55px; padding: 10px 20px; margin-bottom: 10px; gap: 16px; }
  .catalog-page .catalog-page__head .pagination { min-width: 0; overflow-x: auto; scrollbar-width: none; }
  .catalog-page .catalog-page__head .pagination__list { flex-wrap: nowrap; gap: 5px; }
  .catalog-page .catalog-page__head .pagination__item { flex-shrink: 0; }
  .catalog-page .catalog-page__head .pagination__link:not(.pagination__link--next) { min-width: 32px; height: 32px; font: 400 14px/1.25 Manrope,sans-serif; border-radius: 4px; }
  .catalog-page .ui-sort { flex-shrink: 0; }
  .catalog-page .ui-sort__trigger { min-width: 192px; text-align: left; }
  .catalog-page .ui-sort__dropdown { min-width: 192px; }
  .content .catalog-page .catalog-page__list { row-gap: 50px; }
  .content .catalog-page .product-card__figure { height: 363px; aspect-ratio: auto; }
  .content .catalog-page .product-card__pagination { top: 120px; right: 6px; width: 44px; gap: 10px; }
  .catalog-page .product-card__pagination-item { width: 44px; height: 44px; border-radius: 6px; }
}
@media (max-width: 767px) {
  .catalog-title-row { display: flex; flex-direction: column; align-items: flex-start; gap: 30px; margin-bottom: 32px; }
  .catalog-title-row .catalog-section-title { text-align: left; margin: 0; }
}
.catalog-filter .js-filter-range, .catalog-filter .noUi-target { display: none !important; }
.catalog-filter [hidden] { display: none !important; }
.catalog-filter .ui-range__inputs { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; }
.catalog-filter .ui-range__input-holder { display: flex; flex-direction: column; gap: 4px; border: 0; padding: 0; background: none; min-width: 0; }
.catalog-filter .ui-range__input-label { position: static; display: block; transform: none; font: 400 14px/16px Manrope,sans-serif; color: #a1a0ac; }
.catalog-filter .ui-range__input { width: 100%; height: 44px; border: 1px solid #dddde3; border-radius: 5px; padding: 12px; background: #fff; font: 400 15px/20px Manrope,sans-serif; }
.catalog-page .ui-sort__text { display: none; }
.catalog-page .ui-sort__trigger { background: #f5f5f5; border-radius: 8px; padding: 6px 34px 6px 38px; min-height: 32px; color: #22272d; font: 400 15px/20px Manrope,sans-serif; }
.catalog-page .ui-sort__trigger::before { content: ''; position: absolute; left: 14px; top: 8px; width: 16px; height: 16px; background: url('/assets/images/catalog-ui/sort.svg') center no-repeat; }
.catalog-tools { display: none; }
.catalog-tools__sort-select { display: none; }
.catalog-page .ui-sort__dropdown { left: auto; right: 0; max-width: calc(100vw - 32px); }
.catalog-filter-dialog { border: 0; padding: 24px 22px; border-radius: 10px; background: #f5f5f5; color: #22272d; width: 408px; max-width: 100%; max-height: calc(100dvh - 40px); overflow: auto; }
.catalog-filter-dialog::backdrop { background: rgba(0,0,0,.4); }
.catalog-filter-dialog, .catalog-filter-dialog * { box-sizing: border-box; }
.catalog-filter-dialog .catalog-filter__block { transform: none !important; transition: none !important; min-width: 0 !important; }
.catalog-filter-dialog .catalog-filter { min-width: 0 !important; }
.catalog-filter-dialog .catalog-filter, .catalog-filter-dialog .catalog-filter__block { pointer-events: auto !important; }
.catalog-filter-dialog-open { overflow: hidden; }
.catalog-filter-dialog__close { position: absolute; right: 10px; top: 10px; width: 40px; height: 40px; border: 0; border-radius: 50%; background: #fff url('/assets/images/catalog-ui/close.svg') center no-repeat; cursor: pointer; z-index: 2; }
.catalog-filter-dialog .catalog-filter { position: static !important; display: block !important; visibility: visible !important; opacity: 1 !important; transform: none !important; width: 100% !important; height: auto !important; padding: 0; background: none; }
.catalog-filter-dialog .catalog-filter__block,.catalog-filter-dialog .catalog-filter__content,.catalog-filter-dialog .catalog-filter__rows,.catalog-filter-dialog .catalog-filter__scroll,.catalog-filter-dialog .catalog-filter__scroll-content { position: static; display: block; width: 100%; height: auto; max-height: none; overflow: visible; padding: 0; background: none; }
.catalog-filter-dialog .catalog-filter__header { padding: 0 44px 0 0; margin-bottom: 40px; }
.catalog-filter-dialog .catalog-filter__title { font: 500 20px/1.2 Unbounded,sans-serif; }
.catalog-filter-dialog .catalog-filter__close { display: none; }
.catalog-filter-dialog .catalog-filter__item { padding: 0; margin: 0 0 30px; }
.catalog-filter-dialog [hidden] { display: none !important; }
.catalog-filter-dialog:not([data-mode=all]) .catalog-filter__item-caption { display: none; }
.catalog-filter-dialog:not([data-mode=all]) .catalog-filter__footer { display: none; }
.catalog-filter-dialog:not([data-mode=all]) .catalog-filter__item { margin-bottom: 0; }
.catalog-filter-dialog .catalog-filter__footer { position: static; padding: 0; margin-top: 20px; background: none; }
.catalog-filter-dialog[data-mode=all] { height: calc(100dvh - 164px); overflow: hidden; }
.catalog-filter-dialog[data-mode=all] .catalog-filter,
.catalog-filter-dialog[data-mode=all] .catalog-filter__block { height: 100% !important; }
.catalog-filter-dialog[data-mode=all] .catalog-filter__content { display: flex; flex-direction: column; height: 100%; }
.catalog-filter-dialog[data-mode=all] .catalog-filter__header { flex-shrink: 0; margin-bottom: 24px; }
.catalog-filter-dialog[data-mode=all] .catalog-filter__rows { min-height: 0; overflow: auto; flex: 1; }
.catalog-filter-dialog[data-mode=all] .catalog-filter__footer { flex-shrink: 0; display: flex; gap: 10px; margin-top: 16px; }
.catalog-filter-dialog[data-mode=all] .catalog-filter__footer > [data-catalog-filter-action] { flex: 1; min-width: 0; padding: 10px; }
@media (767px < width <= 1024px) {
  .catalog-filter-dialog[data-mode=all] { position: fixed; inset: 0 0 0 auto; margin: 0; width: 408px; height: 100dvh; max-height: 100dvh; border-radius: 0; padding: 24px 22px; }
  .catalog-filter-dialog[data-mode=all] .catalog-filter__content { gap: 0; }
  .catalog-filter-dialog[data-mode=all] .catalog-filter__header { margin-bottom: 40px; }
  .catalog-filter-dialog[data-mode=all] .catalog-filter__title { line-height: 15px; }
  .catalog-filter-dialog[data-mode=all] .catalog-filter__item { display: block; margin: 0 0 40px; }
  .catalog-filter-dialog[data-mode=all] .catalog-filter__item-caption { font: 400 14px/11px Unbounded,sans-serif; margin-bottom: 15px; }
  .catalog-filter-dialog[data-mode=all] .ui-range { display: block; padding: 0; gap: 0; }
  .catalog-filter-dialog[data-mode=all] .catalog-filter__item-more { margin-top: 15px; }
  .catalog-filter-dialog[data-mode=all] .catalog-filter-dialog__close { right: 20px; }
  .catalog-filter-dialog[data-mode=all] .catalog-filter__rows { overscroll-behavior: contain; }
}
.catalog-page .catalog-page__list { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px 18px; border: 0; }
.catalog-page .catalog-page__list-elem { border: 0; min-width: 0; }
.catalog-page .product-card { border: 0; position: relative; margin: 0; width: 100%; height: auto; }
.catalog-page .product-card__elem { grid-template-rows: auto auto; height: auto; }
.catalog-page .product-card__link { display: block; position: relative; padding: 0; }
.catalog-page .product-card__top { position: absolute; top: 10px; left: 10px; right: 10px; width: auto; z-index: 1; padding: 0; gap: 6px; }
.catalog-page .product-card__article,.catalog-page .product-card__count { background: #f5f5f5; border-radius: 4px; padding: 2px 8px; color: #22272d; font: 400 10px/14px Manrope,sans-serif; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; min-width: 0; }
.catalog-page .product-card__figure { border: 1px solid #f2f0f0; border-radius: 10px; padding: 0; overflow: hidden; aspect-ratio: 304 / 363; height: auto; }
.catalog-page .product-card__figure img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: contain; }
.catalog-page .product-card__caption { margin: 8px 0 0; padding: 0; height: 20px; min-height: 0; font: 400 14px/20px Manrope,sans-serif; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.catalog-page .product-card__bottom { border: 0; padding: 10px 0 0 !important; min-height: 0 !important; height: auto; gap: 8px; }
.catalog-page .product-card__price-new { font: 400 15px/1.4 Unbounded,sans-serif; }
.catalog-page .product-card__btn { width: 40px; min-width: 40px; height: 40px; min-height: 40px; padding: 0; font-size: 0; border-radius: 6px; background: #ff5100 url('/assets/images/catalog-ui/bag.svg') center no-repeat; }
.catalog-page .product-card__pagination { top: 48px; bottom: auto; }
.catalog-page .product-card__actions { flex: 0 0 auto; width: auto; }
.catalog-page .product-card__actions .product-card__btn { width: 40px; min-width: 40px; max-width: 40px; font-size: 0 !important; }
@media (max-width: 1024px) {
  .content .catalog-page { display: flex; flex-direction: column; border: 0; }
  .content .catalog-page > .catalog-page__aside { display: none; }
  .content .catalog-page > .catalog-page__body { width: 100%; max-width: none; margin: 0; border: 0; }
  .catalog-tools { display: flex; align-items: center; justify-content: space-between; border: 1px solid #f2f0f0; border-radius: 10px; padding: 10px 20px; margin-bottom: 10px; gap: 12px; }
  .catalog-tools__controls { display: flex; gap: 18px; align-items: center; min-width: 0; }
  .catalog-tools .ui-sort__list { display: block; }
  .catalog-tools__button { position: relative; border: 0; border-radius: 8px; background: #f5f5f5; color: #22272d; padding: 6px 34px 6px 14px; font: 400 15px/20px Manrope,sans-serif; white-space: nowrap; }
  .catalog-tools__button::after { content: ''; position: absolute; right: 10px; top: 7px; width: 18px; height: 18px; background: url('/assets/images/catalog-ui/arrow.svg') center no-repeat; transform: rotate(90deg); }
  .catalog-tools__all { color: white; padding: 6px 14px 6px 40px; background: linear-gradient(105deg,#ff0000,#ffb41d); }
  .catalog-tools__all::after { left: 14px; width: 18px; height: 18px; transform: none; background-image: url('/assets/images/catalog-ui/filter.svg'); }
  .catalog-tools__button.is-active { color: white; background-color: #ff5100; }
  .catalog-page .catalog-page__head { padding: 10px; border: 1px solid #f2f0f0; border-radius: 10px; margin-bottom: 10px; }
  .catalog-page .catalog-page__list { grid-template-columns: repeat(3,minmax(0,1fr)); }
}
.catalog-page .ui-sort__trigger { position: relative; white-space: nowrap; }
.catalog-page .ui-sort__trigger::after { content: ''; position: absolute; right: 10px; top: 7px; width: 18px; height: 18px; margin: 0; border: 0; background: url('/assets/images/catalog-ui/arrow.svg') center no-repeat; transform: rotate(90deg); }
.catalog-page .ui-sort__trigger svg { display: none; }
.catalog-page .ui-sort__trigger::after { mask: none !important; -webkit-mask: none !important; transform: rotate(90deg) !important; }
.catalog-page .ui-sort.is-catalog-sort-open .ui-sort__trigger { background-color: #ff5100; color: #fff; }
.catalog-page .ui-sort.is-catalog-sort-open .ui-sort__trigger::before { filter: brightness(0) invert(1); }
.catalog-page .ui-sort.is-catalog-sort-open .ui-sort__trigger::after { transform: rotate(-90deg) !important; filter: brightness(0) invert(1); }
.catalog-page .ui-sort__dropdown { display: none !important; width: max-content; min-width: 160px; padding: 4px; background: #fff; border: 0; border-radius: 6px; box-shadow: 0 6px 20px #22272d1a; z-index: 110; }
.catalog-page .ui-sort.is-catalog-sort-open .ui-sort__dropdown { display: block !important; visibility: visible; opacity: 1; transform: none; pointer-events: auto; }
.catalog-page .ui-sort__content { margin: 0; padding: 0; list-style: none; display: block; opacity: 1; transform: none; box-shadow: none; }
.catalog-page .product-card__price-new .rub::before { font-size: inherit; font-weight: inherit; }
.catalog-page .ui-sort__item { margin: 0; padding: 0; }
.catalog-page .ui-sort__link { display: block; padding: 10px 12px; border-radius: 4px; color: #22272d; font: 400 12px/1.4 Manrope,sans-serif; white-space: nowrap; }
.catalog-page .ui-sort__link:hover,.catalog-page .ui-sort__link--current { color: #ff5100; background: #ffebe2; }
@media (max-width: 1024px) {
  .catalog-tools .ui-sort__dropdown { position: fixed; left: var(--sort-left); top: var(--sort-top); right: auto; bottom: auto; }
  .catalog-tools__controls { overflow-x: auto; scrollbar-width: none; }
  .catalog-tools__controls::-webkit-scrollbar { display: none; }
  .catalog-tools__controls > * { flex-shrink: 0; }
  .catalog-tools__all { flex-shrink: 0; }
  .catalog-page .catalog-page__head { min-width: 0; overflow: hidden; }
  .catalog-page .catalog-page__head .pagination { display: block !important; width: 100%; overflow-x: auto; scrollbar-width: none; }
  .catalog-page .catalog-page__head .pagination__list { display: flex !important; flex-wrap: nowrap; justify-content: flex-start; gap: 6px; }
  .catalog-page .catalog-page__head .pagination__item { flex-shrink: 0; }
  .catalog-page .catalog-page__head:not(:has(.pagination__link)) { display: none; }
  .catalog-tools__button.is-active::after { filter: brightness(0) invert(1); transform: rotate(-90deg); }
}
@media (max-width: 767px) {
  .catalog-section-title { font: 400 40px/1 Manrope,sans-serif !important; letter-spacing: 4px; text-transform: uppercase; margin-bottom: 32px; }
  .content .catalog-page { margin-left: -6px; margin-right: -6px; width: calc(100% + 12px); }
  .catalog-tools { gap: 12px; }
  .catalog-tools__all { font-size: 16px; }
  .catalog-page .product-card__top { top: auto; bottom: 34px; left: 10px; right: 52px; flex-direction: column-reverse; align-items: flex-start; gap: 4px; }
  .catalog-page .product-card__article,.catalog-page .product-card__count { font-size: 8px; line-height: 11px; padding: 2px 8px; max-width: 100%; }
  .catalog-page .product-card__caption { display: block; margin-top: 12px; height: 18px; font-size: 10px; line-height: 18px; white-space: nowrap; }
  .catalog-page .product-card__bottom { padding-top: 6px !important; }
  .catalog-page .product-card__price-new { font-size: 13px; }
  .catalog-page .product-card { container-type: inline-size; }
  .catalog-page .product-card__actions { position: absolute; top: calc(100cqw * 219 / 174 - 40px); right: 12px; z-index: 2; }
  .catalog-page .product-card__quantity { background: #fff; border-radius: 5px; }
  .catalog-page .product-card__pagination { display: flex; top: 4px; left: 50%; right: auto; transform: translateX(-50%); flex-direction: row; width: auto; max-width: calc(100% - 20px); gap: 4px; }
  .catalog-page .product-card__pagination-item { width: 6px; height: 6px; border-radius: 50%; border: 1px solid #dddde3; background: #fff; }
  .catalog-page .product-card__pagination-item.active { background: #ff5100; border-color: #ff5100; }
  .catalog-page .product-card__pagination-item img { display: none; }
}
@media (max-width: 767px) {
  .catalog-tools { flex-direction: column; align-items: stretch; padding: 10px; }
  .catalog-tools__all { text-align: left; min-height: 36px; }
  .catalog-tools__controls { gap: 12px; overflow-x: auto; padding-bottom: 2px; }
  .catalog-tools__controls > * { flex-shrink: 0; }
  .catalog-filter-dialog { position: fixed; inset: auto 0 0; margin: 0; width: 100%; max-width: none; max-height: calc(100dvh - 164px); padding: 20px 10px 30px; border-radius: 10px 10px 0 0; }
  .catalog-filter-dialog[data-mode=all] { height: calc(100dvh - 164px); }
  .catalog-page .catalog-page__list { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 26px 4px; }
  .catalog-page .product-card__figure { aspect-ratio: 174 / 219; }
  .catalog-page .product-card__btn { width: 32px; min-width: 32px; height: 32px; min-height: 32px; }
  .catalog-page .product-card__actions .product-card__btn { width: 32px; min-width: 32px; max-width: 32px; }
  .catalog-page .catalog-page__head:has(.pagination:empty) { display: none; }
}
