/* styles.css — финальная версия. Содержит только правила,
   реально используемые в шаблоне категории. Все скоупированы [data-aacat]. */

[data-aacat], [data-aacat] *::after, [data-aacat] *::before{
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
[data-aacat], [data-aacat], [data-aacat] div, [data-aacat] span, [data-aacat] h1, [data-aacat] h2, [data-aacat] p, [data-aacat] em, [data-aacat] img, [data-aacat] i, [data-aacat] ul, [data-aacat] li, [data-aacat] form, [data-aacat] label, [data-aacat] nav, [data-aacat] section, [data-aacat] video{
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
[data-aacat]{
  line-height: 1;
  font-family: inherit;
  overflow-x: hidden;
}
[data-aacat] nav, [data-aacat] section{
  display: block;
}
[data-aacat] nav ul{
  list-style: none;
}
[data-aacat] a{
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  color: inherit;
}
[data-aacat] input{
  vertical-align: middle;
}
[data-aacat] input, [data-aacat] button{
  font: inherit;
}
[data-aacat] a{
  text-decoration: none;
}
[data-aacat] .hidden{display: none !important;}
/* Меньше боковых полей на моб — на узких экранах 30px съедают пол-ширины. */
@media (max-width: 768px){
  [data-aacat] .container{ padding: 0 12px; }
}
@media (max-width: 480px){
  [data-aacat] .container{ padding: 0 8px; }
}
@-webkit-keyframes aacat-drop{
  0% {
    top: 5px;
    opacity: 0;
  }
  30% {
    top: 10px;
    opacity: 1;
  }
  100% {
    top: 25px;
    opacity: 0;
  }
}
@keyframes aacat-drop{
  0% {
    top: 5px;
    opacity: 0;
  }
  30% {
    top: 10px;
    opacity: 1;
  }
  100% {
    top: 25px;
    opacity: 0;
  }
}
@media (max-width: 600px){
[data-aacat] .container{
    padding: 0 15px;
  }
}
[data-aacat], [data-aacat] *::after, [data-aacat] *::before{
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
[data-aacat], [data-aacat], [data-aacat] div, [data-aacat] span, [data-aacat] h1, [data-aacat] h2, [data-aacat] p, [data-aacat] em, [data-aacat] img, [data-aacat] i, [data-aacat] ul, [data-aacat] li, [data-aacat] form, [data-aacat] label, [data-aacat] nav, [data-aacat] section, [data-aacat] video{
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
[data-aacat]{
  line-height: 1;
}
[data-aacat] nav, [data-aacat] section{
  display: block;
}
[data-aacat] nav ul{
  list-style: none;
}
[data-aacat] a{
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  color: inherit;
}
[data-aacat] input{
  vertical-align: middle;
}
[data-aacat] input, [data-aacat] button{
  font: inherit;
}
[data-aacat] a{
  text-decoration: none;
}
[data-aacat]{
  font-family: inherit;
  font-size: 16px;
  line-height: 150%;
  font-weight: 400;
  color: #3B3B3B;
}
[data-aacat] button{
  padding: 0;
  border: none;
  background-color: transparent;
  cursor: pointer;
}
[data-aacat] .main-layer{
  position: relative;
  z-index: 4;
  margin-top: 480px;
}
[data-aacat] .sub-links{
  background-color: #fff;
  padding: 56px 0;
}
[data-aacat] .sub-links__inner{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
[data-aacat] .sub-links__item{
  max-width: 412px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  border-radius: 16px;
  overflow: hidden;
  position: relative;
}
[data-aacat] .sub-links__item img{
  display: block;
  width: 100%;
}
[data-aacat] .sub-links .decor{
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 5px 8px;
  border-radius: 100px;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 100%;
}
[data-aacat] .sub-links__item-text{
  position: absolute;
  bottom: 12px;
  right: 12px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 4px;
  padding: 6px 6px 6px 12px;
  background: rgba(0, 0, 0, 0.4);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  border-radius: 100px;
}
[data-aacat] .sub-links__item-text span{
  color: #fff;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 16px;
  font-size: 16px;
}
[data-aacat] .form{
  height: 431px;
  position: relative;
  padding: 80px 0;
}
[data-aacat] .form--bg{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2;
  background-color: rgba(0, 0, 0, 0.7);
}
[data-aacat] .form--img{
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
[data-aacat] .form__content{
  position: relative;
  z-index: 3;
  max-width: 692px;
  margin: 0 auto;
}
[data-aacat] .form__content-title{
  text-align: center;
  color: #fff;
  font-size: 40px;
  font-weight: 600;
  line-height: 100%;
  margin-bottom: 40px;
}
[data-aacat] .form__content-text{
  margin-bottom: 40px;
  color: #fff;
  font-weight: 500;
  font-size: 18px;
  line-height: 125%;
}
[data-aacat] .form__input-box{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  margin-bottom: 24px;
}
[data-aacat] .form input{
  max-width: 342px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  background-color: #fff;
  border-radius: 16px;
  padding: 16px;
  border: none;
  outline: none;
}
[data-aacat] .form input::-webkit-input-placeholder{
  opacity: 0.6;
}
[data-aacat] .form input::-moz-placeholder{
  opacity: 0.6;
}
[data-aacat] .form input:-ms-input-placeholder{
  opacity: 0.6;
}
[data-aacat] .form input::-ms-input-placeholder{
  opacity: 0.6;
}
[data-aacat] .form input::placeholder{
  opacity: 0.6;
}
[data-aacat] .form__content-footer{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
[data-aacat] .form__btn{
  color: #fff;
  background-color: #705ABF;
  padding: 17px 40px;
  border-radius: 100px;
  font-size: 18px;
  font-weight: 500;
  line-height: 20px;
  border: 1px solid #705ABF;
  -webkit-transition: 0.25s;
  -o-transition: 0.25s;
  transition: 0.25s;
}
[data-aacat] .form__btn:hover{
  color: #705ABF;
  background-color: #fff;
}
[data-aacat] .form__footer-text{
  font-size: 13px;
  line-height: 125%;
  color: #fff;
  opacity: 0.8;
}
[data-aacat] .form__footer-text a{
  text-decoration: underline;
}
[data-aacat] .sections{
  background-color: #fff;
  padding: 80px 0;
}
[data-aacat] .sections__item{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 40px;
  margin-bottom: 56px;
}
[data-aacat] .sections__item-gallery{
  max-width: 614px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
[data-aacat] .sections__gallery-img1{
  width: 100%;
}
[data-aacat] .sections__gallery-img1 img{
  width: 100%;
  display: block;
}
[data-aacat] .sections__item-content{
  max-width: 614px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding-top: 40px;
}
[data-aacat] .sections__item-title{
  font-size: 32px;
  font-weight: 600;
  line-height: 100%;
  margin-bottom: 24px;
}
[data-aacat] .sections__item-text{
  margin-bottom: 16px;
}
[data-aacat] .sections__gallery-grid-img:first-child{
  grid-row-start: span 2;
}
[data-aacat] .sections__content-btn{
  color: #705ABF;
  font-weight: 500;
}
[data-aacat] .sections__item-gallery--grid1{
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  -ms-grid-rows: 224px 224px;
  grid-template-rows: 224px 224px;
  gap: 16px;
}
[data-aacat] .sections__item-gallery--grid1 .sections__gallery-grid-img:nth-child(1){
  grid-row-start: span 1;
}
[data-aacat] .sections__item-gallery--grid1 .sections__gallery-grid-img:nth-child(2){
  grid-row-start: span 2;
}
[data-aacat] .sections__item:last-child{
  margin-bottom: 0;
}
[data-aacat] .listing{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
[data-aacat] .listing__sidebar{
  padding: 20px;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
  border-radius: 16px;
  background-color: #fff;
}
[data-aacat] .listing__sidebar-container{
  max-width: 305px;
  min-width: 305px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
[data-aacat] .listing__sidebar-link{
  padding: 10px 0 10px 28px;
  display: block;
  line-height: 20px;
  position: relative;
}
[data-aacat] .listing__sidebar-link:hover{
  color: #705ABF;
}
[data-aacat] .listing .current-link{
  color: #705ABF;
}
[data-aacat] .listing__content{
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
[data-aacat] .listing__content-head{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  margin-bottom: 16px;
}
[data-aacat] .listing__filter{
  position: relative;
}
[data-aacat] .listing__filter-head{
  border-radius: 100px;
  background-color: #3B3B3B;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 12px 12px 12px 16px;
  cursor: pointer;
  max-width: 171px;
}
[data-aacat] .listing__filter-head span{
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 16px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
[data-aacat] .listing__items{
  display: -ms-grid;
  display: grid;
  gap: 35px 16px;
  -ms-grid-columns: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  margin-bottom: 32px;
  max-width: 929px;
}
[data-aacat] .listing__item{
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
}
[data-aacat] .listing__item-img img{
  display: block;
  width: 100%;
}
[data-aacat] .listing__item-content{
  padding: 16px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 12px;
  background-color: #fff;
}
[data-aacat] .listing__item-title{
  font-size: 16px;
  font-weight: 500;
  line-height: 125%;
  height: 40px;
  overflow: hidden;
}
[data-aacat] .listing__item-price{
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  gap: 4px;
}
[data-aacat] .listing__item-price span{
  line-height: 16px;
  font-size: 16px;
  font-weight: 600;
}
[data-aacat] .listing__item{
  position: relative;
}
[data-aacat] .listing__filter-content{
  background-color: #fff;
  -webkit-transition: 0.15s;
  -o-transition: 0.15s;
  transition: 0.15s;
  padding: 16px;
  border-radius: 16px;
  -webkit-box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.05), 0px 4px 40px 0px rgba(0, 0, 0, 0.15);
  box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.05), 0px 4px 40px 0px rgba(0, 0, 0, 0.15);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 12px;
  position: absolute;
  top: 48px;
  left: 0;
  z-index: 5;
  min-width: 260px;
  opacity: 0;
  -webkit-transform: translateY(-10px);
  -ms-transform: translateY(-10px);
  transform: translateY(-10px);
  visibility: hidden;
}
[data-aacat] .listing__filter-item{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
[data-aacat] .listing .filter-item__checkbox{
  width: 24px;
  height: 24px;
  border-radius: 50%;
  border: 2px solid #BDBDBD;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
[data-aacat] .listing .filter-item__text{
  font-size: 16px;
  font-weight: 400;
  line-height: 150%;
}
[data-aacat] .listing .filter-item--active .filter-item__checkbox{
  border-color: #705ABF;
}
[data-aacat] .listing .filter-item--active .filter-item__checkbox span{
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #705ABF;
}
[data-aacat] .listing__btn{
  display: block;
  max-width: 204px;
  padding: 16px 40px;
  border-radius: 100px;
  margin: 0 auto 20px;
  border: 2px solid #705ABF;
  font-size: 18px;
  font-weight: 500;
  line-height: 20px;
  white-space: nowrap;
  color: #705ABF;
  -webkit-transition: 0.15s;
  -o-transition: 0.15s;
  transition: 0.15s;
}
[data-aacat] .listing__btn:hover{
  color: #fff;
  background-color: #705ABF;
}
[data-aacat] .listing__pagination{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
[data-aacat] .listing__pagination .active-link{
  border-radius: 100px;
  background-color: #705ABF;
  color: #fff;
}
[data-aacat] .listing__pagination svg{
  display: block;
}
[data-aacat] .listing__pagination a{
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  max-width: 40px;
  height: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
[data-aacat] .listing__top{
  display: none;
}
@media (max-width: 1200px){
[data-aacat] .listing__sidebar-container{
    display: none;
  }
[data-aacat] .listing__top{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 8px;
    margin-bottom: 16px;
    /* position: relative обязателен — без него z-index ниже не работает,
       и дропдаун сортировки уходит под карточки листинга. */
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    z-index: 30;
  }
  /* Поднимаем сами выпадашки фильтра/сортировки внутри top-панели,
     базовый z-index: 5 слишком мал — на мобиле перекрывался карточками. */
[data-aacat] .listing__top .listing__filter-content,
[data-aacat] .listing__top .listing__filter-content1,
[data-aacat] .listing__top .listing__filter-content2{
    z-index: 100 !important;
  }
[data-aacat] .listing__top-link-item{
    position: relative;
    z-index: 1;
  }
[data-aacat] .listing__top-link-item.filter--open,
[data-aacat] .listing__top-link-item:hover{
    z-index: 5;
  }
[data-aacat] .listing__top-link{
    /* min-width: 40px;
    max-width: 40px; */
    position: relative;
    height: 40px;
    border-radius: 16px;
    background-color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
[data-aacat] .listing__top-link svg{
    display: block;
  }
[data-aacat] .listing__top-menu{
    border-radius: 16px;
    background-color: #fff;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    overflow-x: auto;
    max-width: calc(100vw - 30px - 80px - 16px);
  }
[data-aacat] .listing__top-menu::-webkit-scrollbar{
    width: 6px;
    height: 0px;
    visibility: hidden;
  }
[data-aacat] .listing__top-menu::-webkit-scrollbar-track{
    background-color: darkgrey;
    border-radius: 16px;
    overflow: hidden;
  }
[data-aacat] .listing__top-menu::-webkit-scrollbar-thumb{
    background-color: #000;
    border-radius: 16px;
  }
[data-aacat] .listing__menu-inner{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 16px;
    padding: 0 8px;
  }
[data-aacat] .listing .menu-inner__link{
    white-space: nowrap;
    padding: 10px 0;
    font-weight: 500;
  }
[data-aacat] .listing .menu-inner__link:first-child{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
  }
[data-aacat] .listing .menu-inner__link{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 4px;
  }
[data-aacat] .listing .menu-inner__link--active{
    color: #705ABF;
  }
}
@media (max-width: 991px){
[data-aacat] .main-layer{
    margin-top: 456px;
  }
[data-aacat] .sub-links{
    padding-top: 24px;
  }
[data-aacat] .sub-links .container{
    max-width: 991px;
    overflow-x: auto;
    padding-bottom: 15px;
  }
[data-aacat] .sub-links__item{
    min-width: 244px;
  }
[data-aacat] .sub-links__item .decor{
    top: 8px;
    left: 8px;
    font-size: 12px;
  }
[data-aacat] .sub-links__item-text{
    bottom: 8px;
    right: 8px;
  }
[data-aacat] .sub-links__item-text span{
    font-size: 12px;
    white-space: nowrap;
    font-weight: 500;
  }
[data-aacat] .form{
    padding-right: 15px;
    padding-left: 15px;
  }
[data-aacat] .form__content-text{
    text-align: center;
  }
[data-aacat] .sections__item{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
[data-aacat] .listing__filter{
    display: none;
  }
[data-aacat] .sub-links .container{
    padding: 0 15px 15px !important;
  }
}
@media (max-width: 768px){
[data-aacat] .listing__content-head{
    margin-bottom: 0;
  }
[data-aacat] .sub-links{
    padding: 24px 0!important;
  }
[data-aacat] .catalog{
    padding-top: 0 !important;
  }
[data-aacat] .sections{
    padding: 40px 0;
  }
[data-aacat] .sections__item-gallery--grid1{
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    -ms-grid-rows: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
  }
[data-aacat] .sections__item img{
    width: 100%;
    height: 100%;
  }
[data-aacat] .sections__item{
    gap: 24px;
    margin-bottom: 40px;
  }
[data-aacat] .sections__item:nth-child(3){
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
  }
[data-aacat] .sections__item-content{
    padding-top: 0;
  }
[data-aacat] .sections__item-title{
    font-size: 24px;
    margin-bottom: 16px;
  }
[data-aacat] .sections__item-text{
    font-size: 16px;
    margin-bottom: 12px;
  }
[data-aacat] .listing__items{
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
[data-aacat] .listing__item-content{
    padding: 12px 16px 16px 16px;
  }
[data-aacat] .listing__item-title{
    font-size: 14px;
    height: 36px;
    line-height: 125%;
  }
}
@media (max-width: 600px){
[data-aacat] .main-layer{
    margin-top: 376px;
  }
[data-aacat] .main-layer{
    margin-top: 350px;
  }
[data-aacat] .form{
    padding: 56px 15px;
    height: 460px;
  }
[data-aacat] .form__content-title{
    font-size: 28px;
    line-height: 100%;
    margin-bottom: 24px;
  }
[data-aacat] .form__content-text{
    font-size: 16px;
    margin-bottom: 24px;
  }
[data-aacat] .form__input-box{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
[data-aacat] .form input{
    max-width: 100%;
  }
[data-aacat] .form__content-footer{
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
  }
[data-aacat] .listing__items{
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 500px){
[data-aacat] .listing__items{
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
[data-aacat] .menu-inner__link{
    font-size: 14px;
  }
}
[data-aacat]::-webkit-scrollbar{
  width: 8px;
}
[data-aacat]::-webkit-scrollbar-track{
  background-color: rgb(212, 207, 207);
  border-radius: 5px;
}
[data-aacat]::-webkit-scrollbar-thumb{
  border-radius: 5px;
  background-color: #706EB8;
}
[data-aacat] .listing__sidebar-container{
  position: relative;
}
[data-aacat] .listing__sidebar{
  position: sticky;
  top: 90px;
}
@media (max-width: 600px){
[data-aacat] .listing__top-link-item{
    position: relative;
  }
[data-aacat] .listing .menu-inner__link:last-child{
    padding-right: 10px;
  }
[data-aacat] .listing__item-content{
    gap: 20px;
  }
}
[data-aacat] .listing__item-img img{
  display: block;
  width: 100%;
  height: 170px;
}
@media (max-width: 850px){
[data-aacat] .listing__item-img img{
    height: 155px;
  }
}
@media (max-width: 768px){
[data-aacat] .listing__item-img img{
    height: 95px;
  }
[data-aacat] .listing{
    margin-top: 0px;
  }
[data-aacat] .listing__top-link{
    min-height: 44px;
  }
}
@media (max-width: 500px){
[data-aacat] .listing__item-img img{
    height: 125px;
  }
}
@media (max-width: 450px){
[data-aacat] .listing__item-img img{
    height: 110px;
  }
}
[data-aacat] .container{
  position: relative;
}
[data-aacat] .filter-content2__btn-close{
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
}
[data-aacat] .filter-content2__items{
  margin-right: -15px;
  height: 250px;
  overflow-y: auto;
  padding-right: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
[data-aacat] .filter-content2__items::-webkit-scrollbar{
  width: 5px;
  border-radius: 4px;
}
[data-aacat] .filter-content2__items::-webkit-scrollbar-track{
  background-color: #E0E0E0;
  border-radius: 4px;
}
[data-aacat] .filter-content2__items::-webkit-scrollbar-thumb{
  background-color: #705ABF;
  border-radius: 4px;
}
[data-aacat] .section__textbox{
  height: 190px;
  transition: .15s;
  overflow: hidden;
}
[data-aacat] .section__textbox ul{
  margin-left: 20px;
  margin-top: 15px;
}
[data-aacat] .sections__gallery-grid-img{
  border-radius: 10px;
  overflow: hidden;
}
[data-aacat] .sections__gallery-img1{
  border-radius: 10px;
  overflow: hidden;
}
[data-aacat] button{
  padding: 0;
  cursor: pointer;
  background-color: transparent;
  border: none;
}
[data-aacat] .sections__gallery-img1 video{
  border-radius: 10px;
}
@media(max-width: 600px){
  [data-aacat] .product-recommend-slider-next {
    display: flex !important;
  }
}
@media (max-width: 768px){
[data-aacat] .sections__item:nth-child(even){
    flex-direction: column;
  }
[data-aacat] .sections__item:nth-child(3){
    flex-direction: column;
  }
}
[data-aacat] .listing__item{
  width: 100%;
  max-width: 299px;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
[data-aacat] .listing__item-img img{
  display: block;
  width: 100%;
}
[data-aacat] .listing__item-content{
  padding: 16px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 12px;
  flex-grow: 1;
  background-color: #fff;
}
[data-aacat] .listing__item-title{
  font-size: 16px;
  font-weight: 500;
  line-height: 125%;
  height: initial;
  margin-bottom: auto;
  overflow: hidden;
}
[data-aacat] .listing__item-price{
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  gap: 4px;
  line-height: 1;
}
[data-aacat] .listing__item-price span{
  line-height: 16px;
  font-size: 16px;
  font-weight: 400;
}
[data-aacat] .listing__item{
  position: relative;
}
@media (max-width: 768px){
[data-aacat] .listing__item{
    display: flex;
    flex-direction: column;
  }
[data-aacat] .listing__item-content{
    padding: 12px 16px;
    flex-grow: 1;
  }
}
[data-aacat] .sections__item:nth-child(even){
  flex-direction: row-reverse;
}
@media (max-width: 991px){
[data-aacat] .sections__item:nth-child(even){
    flex-direction: column;
  }
}
[data-aacat] .hidden{
  display: none !important;
}
@media(max-width: 768px){
[data-aacat] .video_ipad iframe {max-width: 370px;}
}
@media(max-width: 768px){
[data-aacat] .search__sidebar {
  background: #f2f2f2;
  padding-left: 23px;
  padding-bottom: 15px;
  }
  
[data-aacat] .listing__item-title {
    font-size: 14px;
    height: initial !important;
    line-height: 125%; 
    margin-bottom: auto;
}
[data-aacat] .catalog .top-links__item .text {
	font-size: 14px;
}

}
@media(min-width: 1400px){
[data-aacat] .job-new24 {
	display: flex;
    gap: 30px;
}
[data-aacat] .job-new24 h3{
	margin-bottom: 10px;
}

}
@media(max-width: 768px){
[data-aacat] .ploshadka_title_2024 {
	padding-top: 40px;
}
[data-aacat] .case-ploshadka {
	padding: 0 0 45px !important;
}
[data-aacat] .gallery-ploshadka video {
	     min-height: 300px;
    object-fit: cover;
	
}
[data-aacat] .hp-benefits-ploshadka {
	height: 360px;
}
}
@media(max-width: 768px){
  [data-aacat] .ploshadka_title_2024 {
      padding-top: 40px;
  }
  [data-aacat] .case-ploshadka {
      padding: 0 0 45px !important;
  }
  [data-aacat] .gallery-ploshadka video {
           min-height: 300px;
      object-fit: cover;

  }
  [data-aacat] .hp-benefits-ploshadka {
      height: 360px;
  }
}
[data-aacat] .main-layer{
  background-color: #fff;
  border-radius: 40px 40px 0 0;
}
[data-aacat] .sections__item-text p{
	margin-top: 10px;
}
@media(max-width: 768px){
  [data-aacat] .listing__item-video-item video {
    width: initial;
    height: 200px;
  }


  [data-aacat] .hp-new-offers__item-content {
    min-width: initial !important;
  }

  [data-aacat] .textBlock {
    display: flex;
    flex-direction: column;
    align-items: start;
  }

  [data-aacat] .textBlock ul {
    margin-left: 20px !important;
  }

  [data-aacat] .row-box {
    justify-content: center !important;
  }

  [data-aacat] .row-box .product-new__complect-articul {
    display: none;
  }
}
[data-aacat] .big_images_gallery img{
  height: 299px;
}
[data-aacat] .big_images_gallery{
  box-shadow: none;
}
[data-aacat] .big_images_gallery .listing__item-content{
  background-color: transparent;
  padding-bottom: 18px;
}
[data-aacat] .big_images_gallery .listing__item-img{
  border-radius: 16px;
  overflow: hidden;
}
[data-aacat] .big_images_gallery .listing__item-title{
  margin-bottom: 0;
}
@media (max-width: 768px){
[data-aacat] .big_images_gallery img{
    height: initial;
    width: 100%;
    margin: 0 auto;
    border-radius: 16px;
    transition: .25s;
  }
[data-aacat] .listing__items{
    gap: 15px;
  }
}
[data-aacat] .big_images_gallery{
  transition: .25s;
}
[data-aacat] .big_images_gallery .listing__item-img{
  transition: .25s;
}
@keyframes aacat-fadeIn{
  from {
      opacity: 0;
  }
  to {
      opacity: 1;
  }
}
[data-aacat] .big_images_gallery .listing__item-content{
  padding: 16px 8px 18px;
}
[data-aacat] .big_images_gallery:hover{
  box-shadow: none;
}
[data-aacat] .big_images_gallery .listing__item-img{
  transition: none;
}
@media (min-width: 768px){
[data-aacat] .big_images_gallery:hover .listing__item-img{
    visibility: hidden;
  }
[data-aacat] .big_images_gallery:hover .listing__item-content{
    opacity: 0;
  }
}
[data-aacat] .smart-captcha{
	width: 100%;
}
[data-aacat] .categ-wrapper{
  max-width: 1298px;
  margin: 0 auto 30px;
  padding: 0 16px;
}
[data-aacat] .categ-wrapper__slider-container{
  position: relative;
}
[data-aacat] .categ-wrapper__slider{
  overflow: hidden;
}
[data-aacat] .categ-wrapper .swiper-wrapper{
  height: initial !important;
}
[data-aacat] .categ-wrapper-slider-prev, [data-aacat] .categ-wrapper-slider-next{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #fff;
  cursor: pointer;
  box-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.05), 0px 4px 16px 0px rgba(0, 0, 0, 0.15);
}
[data-aacat] .categ-wrapper-slider-prev{
  position: absolute;
  z-index: 3;
  left: -20px;
  top: 50%;
  transform: translateY(-50%);
}
[data-aacat] .categ-wrapper-slider-prev svg{
  transform: rotate(180deg);
}
[data-aacat] .categ-wrapper-slider-next{
  position: absolute;
  z-index: 3;
  right: -20px;
  top: 50%;
  transform: translateY(-50%);
}
[data-aacat] .listing-row{
  display: flex;
  gap:  16px;
  padding: 20px 0 0;
  grid-column-start: span 3;
}
[data-aacat] .listing-row__item{
  border-radius: 16px;
  position: relative;
  max-width: 465px;
  flex-grow: 1;
  height: 158px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
[data-aacat] .listing-row__item::before{
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  background-color: rgba(0, 0, 0, 0.5); /* Затемнение (черный цвет с прозрачностью 50%) */
}
[data-aacat] .listing-row__item-title{
  font-size: 24px;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 125%;
  color: #fff;
  padding: 0 40px;
  position: relative;
  z-index: 3;
  text-align: center;
}
[data-aacat] .listing-row__item-clickable{
  display: flex;
  gap: 8px;
  align-items: center;
  cursor: pointer;
  flex-direction: column;
  position: relative;
  z-index: 3;
}
[data-aacat] .listing-row__item-clickable span{
  font-size: 24px;
  font-weight: 600;
  text-transform: uppercase;
  line-height: 125%;
  color: #fff;
  padding: 0 20px;
  text-align: center;
}
[data-aacat] .listing-row__item-clickable .icon{
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(255, 255, 255, 0.50);
}
[data-aacat] .listing-row__item-popup{
  position: fixed;
  z-index: 1000;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  backdrop-filter: blur(8px);
  background-color: #00000099;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .25s ease;
  opacity: 0;
  visibility: hidden;
}
/* Открытое состояние. Без [data-aacat]-префикса спецификация ниже базового
   [data-aacat] .listing-row__item-popup (0,2,0) → класс --show не побеждает,
   попап остаётся скрытым. Поэтому дублируем правило с тем же префиксом. */
[data-aacat] .listing-row__item-popup--show{
  opacity: 1;
  visibility: visible;
}
[data-aacat] .listing-row__item-popup-content{
  padding: 56px 40px 40px 40px;
  background-color: #fff;
  border-radius: 24px;
  position: relative;
  max-width: 476px;
}
[data-aacat] .listing-popup-close-btn{
  position: absolute;
  top: 0;
  right: 0;
  padding: 16px;
  cursor: pointer;
}
[data-aacat] .listing-row__item-popup img{
  width: 100;
  border-radius: 16px;
  margin-bottom: 32px;
}
[data-aacat] .listing-row__item-popup div{
  font-size: 28px;
  font-weight: 600;
  color: #3B3B3B;
  margin-bottom: 24px;
  line-height: 1;
}
[data-aacat] .listing-row__item-popup p{
  font-size: 16px;
  line-height: 125%;
  font-weight: 400 !important;
}
[data-aacat] .listing-row__item_video video{
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  width: 100%;
}
@media (max-width: 550px){
[data-aacat] .listing-row__item_video video{
    width: initial;
  }
[data-aacat] .listing-row{
    flex-direction: column;
    grid-column-start: span 2;
  }
[data-aacat] .categ-wrapper{
    margin-left: 0;
    margin-right: 0;
  }
[data-aacat] .categ-wrapper__slider{
    padding: 0 16px;
  }
[data-aacat] .categ-wrapper-slider-prev, [data-aacat] .categ-wrapper-slider-next{
    display: none;
  }
[data-aacat] .categ-wrapper{
    padding: 0;
  }
}
[data-aacat] p + ul{
  margin-left: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
[data-aacat] .sections__item-text a{
	color: #705ABF;
	text-decoration: underline;
}
[data-aacat] .listing__pagination{
  margin-top: 30px;
}
[data-aacat] .listing-row__item_video video{
  height: 100%;
  object-fit: cover;
}
@keyframes aacat-pulse{
  0%, 100% {
    transform: translateY(-50%) scale(1);
    opacity: 1;
  }
  50% {
    transform: translateY(-50%) scale(1.3);
    opacity: 0.6;
  }
}
@keyframes aacat-pulse{
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.25);
  }
  100% {
    transform: scale(1);
  }
}
[data-aacat] .smart-captcha-category{margin-bottom: 15px;}
[data-aacat] .form{    height: 512px;}
[data-aacat], [data-aacat] input, [data-aacat] button, [data-aacat] h1, [data-aacat] h2, [data-aacat] .page-title-local, [data-aacat] .sidebar-promo-card__title, [data-aacat] .sidebar-filter-group__title, [data-aacat] .listing__item-title, [data-aacat] .listing-row__item-title{
  font-family: inherit !important;
}
[data-aacat] h1, [data-aacat] h2, [data-aacat] .page-title-local{
  letter-spacing: -0.01em;
}
[data-aacat], [data-aacat] .main-layer, [data-aacat] .sub-links.catalog{ background: #f5f5f7 !important; }
[data-aacat] .catalog{
  background-color: #f5f5f7 !important;
  padding: 0 0 56px;
}
[data-aacat] .main-layer{ margin-top: 0 !important; padding-top: 120px; }
@media (max-width: 768px){
[data-aacat] .main-layer{ padding-top: 88px; }
}
[data-aacat] .page-title-local{
  font-family: inherit;
  font-size: 30px;
  font-weight: 600;
  line-height: 1.15;
  color: #3b3b3b;
  margin: 20px 0 0px;
  letter-spacing: -0.01em;
}
[data-aacat] .page-title-local__crumbs{
  font-size: 12px;
  line-height: 1;
  color: #b8b8b8;
  margin: 25px 0 8px;
}
[data-aacat] .page-title-local__crumbs a{ color: #b8b8b8; text-decoration: none; transition: color .15s ease; }
[data-aacat] .page-title-local__crumbs a:hover{ color: #705ABF; }
[data-aacat] .page-title-local__crumbs span + span::before{ content: "›"; margin: 0 6px; color: #d6d6da; }
@media (max-width: 768px){
[data-aacat] .page-title-local{ font-size: 30px; margin-bottom: 24px; }
[data-aacat] .page-title-local__crumbs{ font-size: 11px; margin: 16px 0 6px; }
}
[data-aacat] .listing__filter--sidebar{ margin: 12px 0 0; min-width: 0 !important; }
[data-aacat] .listing__filter--sidebar .listing__filter-head{
  max-width: none !important;
  background: #f5f5f7 !important;
  color: #1d1d1f !important;
  border: none !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  transition: background-color .15s ease;
}
[data-aacat] .listing__filter--sidebar .listing__filter-head:hover{ background: #eaeaec !important; }
[data-aacat] .listing__filter--sidebar .selected-value-text{ color: #1d1d1f !important; font-weight: 500; }
[data-aacat] .listing__filter--sidebar .listing__filter-head svg path{ stroke: #1d1d1f !important; }
[data-aacat] .catalog__listing, [data-aacat] .listing__content{ min-width: 0 !important; }
/* [data-aacat] .listing__content-head{ display: none !important; } -- отключено: показываем верхнюю панель сортировки */
[data-aacat] .catalog__listing.listing{ align-items: stretch !important; }
/* Прилипание .listing__sidebar-container: theia-sticky-sidebar.min.js (init в
   js/2024/index.js, additionalMarginTop: 120). НЕ переопределяем position
   принудительно — theia сама ставит inline. Если theia не сработает,
   ниже есть нативный fallback на .listing__sidebar { position: sticky } */
[data-aacat] .listing__sidebar-container{
  align-self: flex-start;
}
[data-aacat] .sidebar-inner{
  display: block;
  width: 100%;
  position: sticky;
  top: 100px;
  will-change: top;
}
[data-aacat] .sidebar-inner > *{ margin: 0 0 12px !important; display: block; }
[data-aacat] .sidebar-inner > *:last-child{ margin-bottom: 0 !important; }
[data-aacat] .listing__sidebar{
  background: #fff;
  padding: 8px;
  border-radius: 18px;
  /* position/top — НЕ задаём, чтобы theia-sticky-sidebar.min.js могла
     ставить inline position: fixed/absolute. Без !important. */
}
[data-aacat] .listing__sidebar--collapsed .listing__sidebar-link:nth-of-type(n+9){ display: none !important; }
[data-aacat] .listing__sidebar-link{
  display: block !important;
  padding: 10px 20px !important;
  margin: 0 !important;
  border-radius: 14px;
  line-height: 1.3 !important;
  color: #1d1d1f !important;
  font-size: 15px;
  font-weight: 400;
  transition: background-color .15s ease, color .15s ease;
}
[data-aacat] .listing__sidebar-link:hover{ background: #f5f5f7 !important; color: #1d1d1f !important; }
[data-aacat] .listing__sidebar-link.current-link{
  background: #F0EBFB !important;
  color: #705ABF !important;
  font-weight: 600;
}
[data-aacat] .sidebar-toggle{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  margin: 8px 0 4px;
  padding: 12px;
  background: transparent;
  border: none;
  border-radius: 10px;
  color: #705ABF;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  font-family: inherit;
  transition: background-color .15s ease;
}
[data-aacat] .sidebar-toggle:hover{ background: rgba(112, 90, 191, .08); }
[data-aacat] .sidebar-toggle__icon{ transition: transform .2s ease; color: currentColor; width: 14px; height: 14px; }
[data-aacat] .listing__sidebar:not(.listing__sidebar--collapsed) .sidebar-toggle__icon{ transform: rotate(180deg); }
[data-aacat] .listing__filter--sidebar{ margin: 0 0 12px !important; min-width: 0 !important; position: relative; z-index: 10; }
[data-aacat] .listing__filter--sidebar .listing__filter-content{ z-index: 100 !important; }
[data-aacat] .listing__filter--sidebar .listing__filter-head{
  max-width: none !important;
  background: #f5f5f7 !important;
  color: #1d1d1f !important;
  border: none !important;
  border-radius: 10px !important;
  padding: 11px 14px !important;
  transition: background-color .15s ease;
}
[data-aacat] .listing__filter--sidebar .listing__filter-head:hover{ background: #eaeaec !important; }
[data-aacat] .listing__filter--sidebar .selected-value-text{ color: #1d1d1f !important; font-weight: 500; font-size: 14px; }
[data-aacat] .listing__filter--sidebar .listing__filter-head svg path{ stroke: #1d1d1f !important; }
[data-aacat] .sidebar-filters-card{
  background: #fff;
  border-radius: 14px;
  padding: 16px;
}
[data-aacat] .sidebar-filter-group + .sidebar-filter-group{
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #f0f0f2;
}
[data-aacat] .sidebar-filter-group__title{
  font-size: 13px;
  font-weight: 600;
  color: #1d1d1f;
  margin-bottom: 10px;
}
[data-aacat] .sidebar-price-filter__inputs{
  display: flex;
  gap: 8px;
}
[data-aacat] .sidebar-price-filter__input{
  flex: 1 1 0;
  min-width: 0;
  max-height: 35px;
  box-sizing: border-box;
  padding: 7px 12px;
  border: 1.5px solid transparent;
  border-radius: 10px;
  font-size: 14px;
  color: #1d1d1f;
  background: #f5f5f7;
  font-family: inherit;
  -moz-appearance: textfield;
  transition: border-color .15s ease, background-color .15s ease;
}
[data-aacat] .sidebar-price-filter__input::placeholder{ color: #86868b; text-transform: none; }
[data-aacat] .sidebar-price-filter__input::-webkit-outer-spin-button, [data-aacat] .sidebar-price-filter__input::-webkit-inner-spin-button{ -webkit-appearance: none; margin: 0; }
[data-aacat] .sidebar-price-filter__input:focus{
  outline: none;
  border-color: #705ABF;
  background: #fff;
}
[data-aacat] .sidebar-check-list{
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-height: 240px;
  overflow-y: auto;
  padding-right: 6px;
  margin-right: -6px;
}
[data-aacat] .sidebar-check-list::-webkit-scrollbar{ width: 4px; }
[data-aacat] .sidebar-check-list::-webkit-scrollbar-thumb{ background: #d6d6da; border-radius: 2px; }
[data-aacat] .sidebar-check-list::-webkit-scrollbar-track{ background: transparent; }
[data-aacat] .sidebar-check{
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  user-select: none;
  font-size: 14px;
  color: #1d1d1f;
}
[data-aacat] .sidebar-check input{ position: absolute; opacity: 0; pointer-events: none; width: 0; height: 0; }
[data-aacat] .sidebar-check__box{
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border-radius: 7px;
  background: #f0f0f3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color .15s ease, box-shadow .15s ease;
}
[data-aacat] .sidebar-check__box::after{
  content: "";
  width: 10px;
  height: 6px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg) translate(1px, -1px);
  opacity: 0;
  transition: opacity .15s ease;
}
[data-aacat] .sidebar-check:hover .sidebar-check__box{ background: #e6e6ea; }
[data-aacat] .sidebar-check input:checked ~ .sidebar-check__box{
  background: #705ABF;
}
[data-aacat] .sidebar-check input:checked ~ .sidebar-check__box::after{ opacity: 1; }
[data-aacat] .sidebar-check input:focus-visible ~ .sidebar-check__box{ box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(112, 90, 191, .4); }
[data-aacat] .sidebar-color-dot{
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--c);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .08);
  display: inline-block;
}
[data-aacat] .sidebar-promo-card{
  background: #fff;
  border-radius: 14px;
  padding: 16px;
}
[data-aacat] .sidebar-promo-card__title{
  font-size: 15px;
  font-weight: 600;
  color: #3b3b3b;
  line-height: 1.25;
  margin: 0 0 12px;
  letter-spacing: -0.005em;
}
[data-aacat] .sidebar-promo-card__title--second{
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #f0f0f2;
}
[data-aacat] .sidebar-promo-card__chips{
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
[data-aacat] .sidebar-promo-card__chip{
  display: inline-block;
  padding: 7px 12px;
  border-radius: 8px;
  background: #f5f5f7;
  color: #5a5a5f !important;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  transition: background-color .15s ease, color .15s ease;
}
[data-aacat] .sidebar-promo-card__chip:hover{
  background: #eaeaec;
  color: #1d1d1f !important;
}
[data-aacat] .categ-wrapper.strip-variant--v1{
  display: flex !important;
  align-items: center;
  gap: 12px;
  overflow: visible !important;
}
[data-aacat] .categ-wrapper.strip-variant--v1 .categ-wrapper__slider{
  overflow: hidden;
}
[data-aacat] .categ-wrapper.strip-variant--v1 .categ-wrapper__slider-container{
  flex: 0 1 auto;
  min-width: 0;
  margin-left: auto;
  order: 2;
}
[data-aacat] .categ-wrapper.strip-variant--v1 .listing__filter--sidebar{
  flex: 0 0 auto;
  margin: 0 !important;
  width: auto;
  order: 1;
}
[data-aacat] .categ-wrapper.strip-variant--v1 .listing__filter--sidebar .listing__filter-head{
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  max-width: none !important;
  height: 40px !important;
  padding: 0 20px !important;
  background: transparent !important;
  border: 1.5px solid #d6d6da !important;
  border-radius: 100px !important;
  color: #1a1a1a !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  transition: border-color .15s ease, background-color .15s ease;
}
[data-aacat] .categ-wrapper.strip-variant--v1 .listing__filter--sidebar .listing__filter-head:hover{
  background: transparent !important;
  border-color: #705ABF !important;
  color: #705ABF !important;
}
[data-aacat] .categ-wrapper.strip-variant--v1 .listing__filter--sidebar .listing__filter-head:hover .selected-value-text{ color: #705ABF !important; }
[data-aacat] .categ-wrapper.strip-variant--v1 .listing__filter--sidebar .listing__filter-head:hover svg path{ stroke: #705ABF !important; }
[data-aacat] .categ-wrapper.strip-variant--v1 .listing__filter--sidebar .selected-value-text{
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #1a1a1a !important;
}
@media (max-width: 1200px){
[data-aacat] .categ-wrapper.strip-variant--v1 .listing__filter--sidebar{ display: none !important; }
}
[data-aacat] .listing__items{
  grid-template-columns: repeat(4, 1fr) !important;
  max-width: none !important;
}
[data-aacat] .listing__item-img{ aspect-ratio: 1 / 1; overflow: hidden; }
[data-aacat] .listing__item-title{
  font-size: 15px !important;
  font-weight: 400 !important;
  height: auto !important;
  min-height: 30px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden !important;
}
[data-aacat] .listing__item-price span{ font-size: 18px !important; font-weight: 500 !important; line-height: 16px !important; }
[data-aacat] .listing__item-content{ gap: 8px !important; }
[data-aacat] .price-currency{ font-style: normal; color: #b8b8b8; font-weight: 400; margin-left: 2px; }
[data-aacat] .listing__items .listing-row{ grid-column: 1 / -1 !important; display: flex !important; gap: 16px; }
[data-aacat] .listing__items .listing-row .listing-row__item{ max-width: none !important; flex: 1 1 0 !important; min-width: 0 !important; width: 0 !important; }
[data-aacat] .listing__item-img img{ height: 100% !important; width: 100% !important; object-fit: cover !important; }
@media (max-width: 1024px){
[data-aacat] .listing__items{ grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 768px){
[data-aacat] .listing__items{ grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 500px){
[data-aacat] .listing__items{ grid-template-columns: repeat(2, 1fr) !important; }
}
[data-aacat] .strip-variant{
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-sizing: border-box;
  overflow: hidden;
}
[data-aacat] .strip-variant .categ-wrapper__slider-container{ padding: 0; overflow: hidden; }
[data-aacat] .strip-variant .categ-wrapper__slider{ overflow: hidden; padding: 2px 0; }
[data-aacat] .strip-variant .swiper-wrapper{ align-items: center; }
[data-aacat] .strip-variant .categ-wrapper-slider-prev, [data-aacat] .strip-variant .categ-wrapper-slider-next{ display: none !important; }
[data-aacat] .strip-variant .categ-wrapper__slider-paginaiton{ display: none !important; }
@media (max-width: 768px){
[data-aacat] .strip-variant .categ-wrapper-slider-prev, [data-aacat] .strip-variant .categ-wrapper-slider-next{ display: none !important; }
}
@keyframes aacat-videoPulse{
  0%   { transform: scale(1);   opacity: .55; }
  70%  { transform: scale(1.9); opacity: 0;   }
  100% { transform: scale(1.9); opacity: 0;   }
}
[data-aacat] .sub-links{ background: transparent !important; padding: 32px 0 48px !important; }
[data-aacat] .sub-links__inner{ gap: 16px !important; }
[data-aacat] .sub-links__item{
  max-width: none !important;
  border-radius: 16px !important;
  aspect-ratio: 16 / 10;
  background: #fff;
  transition: transform .25s ease, box-shadow .25s ease;
}
[data-aacat] .sub-links__item::after{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.55) 100%);
  pointer-events: none;
  transition: opacity .25s ease;
}
[data-aacat] .sub-links__item:hover{ transform: translateY(-2px); box-shadow: 0 12px 28px rgba(20,20,23,.08); }
[data-aacat] .sub-links__item img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s ease;
}
[data-aacat] .sub-links__item:hover img{ transform: scale(1.04); }
[data-aacat] .sub-links .decor{
  top: 14px !important;
  left: 14px !important;
  padding: 6px 10px !important;
  background: rgba(255,255,255,.9) !important;
  color: #1d1d1f !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  border-radius: 100px !important;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  letter-spacing: 0;
}
[data-aacat] .sub-links__item-text{
  left: 18px !important;
  right: auto !important;
  bottom: 16px !important;
  padding: 0 !important;
  background: transparent !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
  border-radius: 0 !important;
  gap: 6px !important;
  z-index: 2;
}
[data-aacat] .sub-links__item-text span{
  text-transform: none !important;
  font-weight: 600 !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  color: #fff !important;
  text-shadow: 0 1px 12px rgba(0,0,0,.3);
  letter-spacing: -0.01em;
}
[data-aacat] .sub-links__item-text svg{
  width: 16px;
  height: 16px;
  opacity: .85;
  transition: transform .25s ease, opacity .25s ease;
}
[data-aacat] .sub-links__item:hover .sub-links__item-text svg{ transform: translateX(3px); opacity: 1; }
@media (max-width: 768px){
[data-aacat] .sub-links{ padding: 24px 0 32px !important; }
[data-aacat] .sub-links__inner{ flex-wrap: wrap; }
[data-aacat] .sub-links__item{ flex: 1 1 100% !important; aspect-ratio: 16 / 9; }
[data-aacat] .sub-links__item-text span{ font-size: 18px !important; }
}
[data-aacat] .form{
  height: auto !important;
  max-width: 1268px;
  margin: 40px auto !important;
  padding: 50px 56px !important;
  border-radius: 28px !important;
  overflow: hidden;
  position: relative;
  isolation: isolate;
  background:
    linear-gradient(115deg,
      #705ABF 0%,
      #9a7edd 18%,
      #c9a6f0 35%,
      #f2b807 52%,
      #c9a6f0 70%,
      #9a7edd 85%,
      #705ABF 100%) !important;
  background-size: 300% 300% !important;
  animation: aacat-formGradientApple 18s ease-in-out infinite !important;
}
[data-aacat] .form--img{ display: none !important; }
[data-aacat] .form--bg{ display: none !important; }
@keyframes aacat-formGradientApple{
  0%   { background-position:   0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position:   0% 50%; }
}
[data-aacat] .form__content{ position: relative; z-index: 2; }
[data-aacat] .form__content-title{
  color: #fff !important;
  text-align: left !important;
  font-size: 36px !important;
  font-weight: 600 !important;
  letter-spacing: -0.015em !important;
  margin-bottom: 10px !important;
}
[data-aacat] .form__content-text{
  color: rgba(255,255,255,.9) !important;
  font-weight: 400 !important;
  font-size: 17px !important;
  opacity: 1 !important;
  margin-bottom: 32px !important;
}
[data-aacat] .form input{
  background: rgba(255,255,255,.92) !important;
  color: #1d1d1f !important;
  border: 1px solid rgba(255,255,255,.6) !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  transition: background-color .2s ease, box-shadow .2s ease;
}
[data-aacat] .form input:focus{
  box-shadow: 0 0 0 3px rgba(255,255,255,.4);
}
[data-aacat] .form input::placeholder{ color: #9a99a3 !important; opacity: 1 !important; }
[data-aacat] .form__btn{
  background: #fff !important;
  color: #1d1d1f !important;
  border: 1px solid #fff !important;
  padding: 15px 34px !important;
  font-weight: 500 !important;
  border-radius: 100px !important;
}
[data-aacat] .form__btn:hover{
  background: #705ABF !important;
  border-color: #705ABF !important;
  color: #fff !important;
}
[data-aacat] .form__footer-text{ color: rgba(255,255,255,.8) !important; opacity: 1 !important; }
[data-aacat] .form__footer-text a{ color: #fff !important; text-decoration: none !important; border-bottom: 1px solid rgba(255,255,255,.5); }
@media (prefers-reduced-motion: reduce){
[data-aacat] .form{ animation: none !important; }
}
@media (max-width: 1024px){
[data-aacat] .form{ margin: 32px 24px !important; padding: 48px 32px !important; }
}
@media (max-width: 768px){
[data-aacat] .form{ margin: 24px 16px !important; padding: 36px 20px !important; border-radius: 20px !important; }
[data-aacat] .form__content-title{ font-size: 24px !important; }
[data-aacat] .form__content-text{ font-size: 15px !important; margin-bottom: 20px !important; }
[data-aacat] .form__input-box{ flex-direction: column; }
[data-aacat] .form input{ max-width: none !important; }
}
[data-aacat] .sections{ background: transparent !important; padding: 40px 0 56px !important; }
[data-aacat] .sections .container{
  max-width: 1200px;
  display: grid !important;
  grid-template-columns: minmax(280px, 380px) 1fr;
  column-gap: 48px;
  align-items: start;
}
[data-aacat] .sections__item{ display: contents !important; }
[data-aacat] .sections__item-gallery, [data-aacat] .sections__item-gallery-right-image, [data-aacat] .sections__item-gallery--grid1{ display: none !important; }
[data-aacat] .sections__item:first-child .sections__item-gallery{
  display: block !important;
  grid-column: 1;
  grid-row: 1 / span 999;
  position: sticky;
  top: 120px;
  align-self: start;
  max-width: none !important;
}
[data-aacat] .sections__item:first-child .sections__gallery-img1 img{
  width: 100%;
  display: block;
  border-radius: 20px;
  aspect-ratio: 4 / 5;
  object-fit: cover;
}
[data-aacat] .sections__item-content{
  grid-column: 2 !important;
  max-width: none !important;
  padding: 0 !important;
  border-top: 1px solid #e6e4ed;
}
[data-aacat] .sections__item:last-child .sections__item-content{ border-bottom: 1px solid #e6e4ed; }
[data-aacat] .sections__item-title{
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.005em;
  color: #1d1d1f;
  margin: 0 !important;
  padding: 22px 48px 22px 0 !important;
  cursor: pointer;
  position: relative;
  transition: color .2s ease;
  user-select: none;
}
[data-aacat] .sections__item-title::after{
  content: "";
  position: absolute;
  right: 4px;
  top: 50%;
  width: 12px;
  height: 12px;
  border-right: 1.8px solid currentColor;
  border-bottom: 1.8px solid currentColor;
  transform: translateY(-75%) rotate(45deg);
  transition: transform .3s ease;
  color: #9a99a3;
}
[data-aacat] .sections__item-title:hover{ color: #705ABF; }
[data-aacat] .section__textbox{
  height: auto !important;
  max-height: 0 !important;
  overflow: hidden !important;
  opacity: 0;
  transition: max-height .4s ease, opacity .3s ease;
}
[data-aacat] .sections__item-text{
  color: #3b3b3b !important;
  font-size: 15px;
  line-height: 1.6;
  padding: 0 48px 22px 0;
  margin: 0 !important;
}
[data-aacat] .sections__item-text p{ margin: 0 0 10px; color: #3b3b3b; }
[data-aacat] .sections__item-text p:last-child{ margin-bottom: 0; }
[data-aacat] .sections__item-text ul{ padding-left: 18px; margin: 6px 0 10px; }
[data-aacat] .sections__item-text li{ margin-bottom: 4px; color: #3b3b3b; }
[data-aacat] .sections__content-btn{ display: none !important; }
@media (max-width: 900px){
[data-aacat] .sections .container{
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
  }
[data-aacat] .sections__item:first-child .sections__item-gallery{
    grid-column: 1 !important;
    grid-row: auto !important;
    position: static !important;
    margin-bottom: 24px;
  }
[data-aacat] .sections__item:first-child .sections__gallery-img1 img{ aspect-ratio: 16 / 10; }
[data-aacat] .sections__item-content{ grid-column: 1 !important; }
}
@media (max-width: 768px){
[data-aacat] .sections{ padding: 16px 0 24px !important; }
[data-aacat] .sections__item-title{ font-size: 16px !important; padding: 18px 36px 18px 0 !important; }
[data-aacat] .sections__item-title::after{ width: 10px; height: 10px; }
[data-aacat] .sections__item-text{ font-size: 14px; padding-right: 36px; padding-bottom: 18px; }
}
[data-aacat] .hero-trust{ padding: 30px 0 35px; }
@media (max-width: 768px){
  [data-aacat] .hero-trust{ padding-top: 0 !important; }
}
[data-aacat] .hero-trust__grid{
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr) 260px;
  gap: 14px;
  align-items: stretch;
}
@media (max-width: 1024px){
[data-aacat] .hero-trust__grid{ grid-template-columns: 220px minmax(0, 1fr); }
[data-aacat] .hero-trust__side{ grid-column: 1 / -1; flex-direction: row; }
[data-aacat] .hero-trust__side > *{ flex: 1; }
}
@media (max-width: 640px){
[data-aacat] .hero-trust__grid{ grid-template-columns: 1fr; }
[data-aacat] .hero-trust__side{ flex-direction: column; }
}
[data-aacat] .hero-trust__video{
  position: relative;
  display: block;
  border-radius: 20px;
  overflow: hidden;
  background: #1a1a1a;
  text-decoration: none;
  /* ПК: фикс 280×190. На моб переопределяется через @media — там
     width:100% контейнера, высота пропорционально 280:190 ≈ 1.47:1. */
  width: 280px;
  height: 190px;
}
@media (max-width: 768px){
  [data-aacat] .hero-trust__video{
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 280 / 190 !important;
    max-height: none !important;
  }
}
[data-aacat] .hero-trust__video img, [data-aacat] .hero-trust__video-media{
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
  display: block;
  filter: brightness(.78) saturate(.95);
}
[data-aacat] .hero-trust__video:hover img, [data-aacat] .hero-trust__video:hover .hero-trust__video-media{ transform: scale(1.04); }
[data-aacat] .hero-trust__video::before{
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0) 55%, rgba(0,0,0,.45) 100%);
  z-index: 1;
}
[data-aacat] .hero-trust__play{
  position: absolute; left: 50%; top: 50%;
  transform: translate(-50%, -50%);
  width: 42px; height: 42px;
  border-radius: 50%;
  background: rgba(20,20,25,.38);
  border: 1px solid rgba(255,255,255,.18);
  display: flex; align-items: center; justify-content: center;
  -webkit-backdrop-filter: blur(12px) saturate(140%);
  backdrop-filter: blur(12px) saturate(140%);
  z-index: 2;
  transition: transform .2s ease, background .2s ease;
}
[data-aacat] .hero-trust__video:hover .hero-trust__play{
  transform: translate(-50%, -50%) scale(1.08);
  background: rgba(20,20,25,.55);
}
[data-aacat] .hero-trust__play svg{ width: 13px; height: 13px; color: #fff; margin-left: 1.5px; }
[data-aacat] .hero-trust__video-label{
  position: absolute;
  left: 14px; bottom: 12px;
  z-index: 2;
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: -0.003em;
  line-height: 1.2;
  max-width: calc(100% - 28px);
}
[data-aacat] .hero-trust__cases{
  position: relative;
  background: #fff;
  border-radius: 20px;
  padding: 14px 14px 14px 18px;
  min-height: 200px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow: hidden;
}
[data-aacat] .hero-trust__cases-arrow{
  position: absolute;
  top: 60%;
  transform: translateY(-50%);
  width: 34px; height: 34px;
  border-radius: 50%;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(0,0,0,.08);
  color: #1a1a1a;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  z-index: 5;
  opacity: 0;
  pointer-events: none;
  transition: opacity .18s ease, background .15s ease, transform .15s ease;
  box-shadow: 0 4px 14px rgba(0,0,0,.12);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  padding: 0;
  font-family: inherit;
}
[data-aacat] .hero-trust__cases:hover .hero-trust__cases-arrow:not([hidden]){
  opacity: 1;
  pointer-events: auto;
}
[data-aacat] .hero-trust__cases-arrow:hover{
  background: #fff;
  transform: translateY(-50%) scale(1.08);
}
[data-aacat] .hero-trust__cases-arrow:active{ transform: translateY(-50%) scale(.96); }
[data-aacat] .hero-trust__cases-arrow--prev{ left: 8px; }
[data-aacat] .hero-trust__cases-arrow--next{ right: 8px; }
[data-aacat] .hero-trust__cases-arrow svg{ width: 14px; height: 14px; }
[data-aacat] .hero-trust__cases-head{
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
}
[data-aacat] .hero-trust__cases-title{
  font-size: 15px; font-weight: 600; color: #3b3b3b;
  letter-spacing: -0.005em;
  text-decoration: none;
  display: inline-flex; align-items: center; gap: 4px;
  transition: color .15s ease;
}
[data-aacat] .hero-trust__cases-title:hover{ color: #705ABF; }
[data-aacat] .hero-trust__cases-title svg{ width: 12px; height: 12px; }
[data-aacat] .hero-trust__cases-meta{
  font-size: 12px; color: #8a8f9c;
}
[data-aacat] .hero-trust__cases-scroll{
  display: flex;
  gap: 8px;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  flex: 1;
  scroll-snap-type: x proximity;
  -webkit-overflow-scrolling: touch;
  cursor: grab;
  user-select: none;
  scroll-behavior: smooth;
}
[data-aacat] .hero-trust__cases-scroll::-webkit-scrollbar{ display: none; }
[data-aacat] .case-card{
  position: relative;
  flex: 0 0 auto;
  width: 130px;
  height: 100%;
  min-height: 130px;
  border-radius: 14px;
  overflow: hidden;
  text-decoration: none;
  scroll-snap-align: start;
  background: #f5f5f7;
}
[data-aacat] .case-card img{
  /* Картинка задаёт ширину case-card по своей пропорции:
     max-height ограничивает высоту, width:auto — ширина по intrinsic ratio. */
  width: auto;
  max-height: 130px;
  display: block;
  transition: transform .35s ease, filter .25s ease;
  filter: brightness(.82) saturate(.95);
}
[data-aacat] .case-card:hover img{ transform: scale(1.06); filter: brightness(.92) saturate(1); }
[data-aacat] .case-card::after{
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,.05) 0%, rgba(0,0,0,.15) 50%, rgba(0,0,0,.7) 100%);
}
[data-aacat] .case-card__title{
  position: absolute;
  left: 10px; right: 10px; bottom: 8px;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.003em;
  z-index: 1;
  /* Максимум 2 строки + многоточие. -webkit-line-clamp работает в Safari/Chrome,
     overflow:hidden + display:-webkit-box обязательны. */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  text-overflow: ellipsis;
}
[data-aacat] .hero-trust__side{
  display: flex; flex-direction: column; gap: 8px;
}
[data-aacat] .hero-trust__stat{
  background: #fff;
  border-radius: 14px;
  padding: 12px 14px;
  display: flex; align-items: center; gap: 10px;
  flex: 0 0 auto;
  text-decoration: none;
  color: inherit;
  transition: transform .15s ease, box-shadow .15s ease;
}
[data-aacat] a.hero-trust__stat{ cursor: pointer; }
[data-aacat] a.hero-trust__stat:hover{
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(112,90,191,.12);
}
[data-aacat] a.hero-trust__stat:hover .hero-trust__stat-icon{
  background: rgba(112,90,191,.18);
}
[data-aacat] .hero-trust__stat-icon{
  flex: 0 0 auto;
  width: 28px; height: 28px;
  border-radius: 50%;
  background: rgba(112,90,191,.1);
  color: #705ABF;
  display: flex; align-items: center; justify-content: center;
}
[data-aacat] .hero-trust__stat-icon svg{ width: 14px; height: 14px; }
[data-aacat] .hero-trust__stat-body{ display: flex; flex-direction: column; line-height: 1.2; min-width: 0; }
[data-aacat] .hero-trust__stat-num{
  font-size: 14px; font-weight: 600; color: #1a1a1a; letter-spacing: -0.003em;
}
[data-aacat] .hero-trust__stat-num em{ font-style: normal; font-weight: 400; color: #6b7280; }
[data-aacat] .hero-trust__stat-sub{
  font-size: 11.5px; color: #8a8f9c; margin-top: 1px; letter-spacing: -0.002em;
}
[data-aacat] .hero-trust__cta{
  padding: 14px 16px;
  background: #705ABF;
  color: #fff;
  border: none;
  border-radius: 14px;
  font-family: inherit;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: -0.003em;
  cursor: pointer;
  transition: background .15s ease, transform .1s ease;
  margin-top: auto;
}
[data-aacat] .hero-trust__cta:hover{ background: #5a47a3; }
[data-aacat] .hero-trust__cta:active{ transform: scale(.99); }
[data-aacat] .listing__item-img{
  position: relative;
  cursor: pointer;
}
[data-aacat] .listing__item-img img{
  -webkit-user-drag: none;
  user-select: none;
}
[data-aacat] .container{
  max-width: 1268px;
  margin: 0 auto;
  padding: 0 15px;
}
[data-aacat] .hero-trust__grid{
  align-items: start !important;
}
/* Дубликат правила .hero-trust__video удалён — все размеры заданы выше
   в базовом правиле + @media (max-width:768px). */
[data-aacat] .hero-trust__cases{
  /* Высота блока определяется содержимым: header (~28px) + case-card 130 +
     padding (14*2) + gap (10) ≈ 196-200px. Без aspect-ratio — иначе на
     ПК колонка широкая, 16:9 даёт 350px+ пустоты внизу. */
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding: 14px 14px 14px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  overflow: hidden !important;
}
[data-aacat] .hero-trust__cases-scroll{
  flex: 1 1 auto !important;
  min-height: 0 !important;
  gap: 8px !important;
}
/* case-card занимает 100% высоты scroll, но не выше 140px. Ширина
   определяется самой картинкой — image в height:100%/width:auto даёт
   intrinsic width, и case-card тянется под неё. На моб правила
   перебиваются явными w/h в @media (max-width:768px). */
[data-aacat] .hero-trust .hero-trust__cases .hero-trust__cases-scroll .case-card,
[data-aacat] .hero-trust__cases-scroll .case-card.case-card{
  width: 128px !important;
  height: 128px !important;
  min-width: 128px !important;
  max-width: 128px !important;
  min-height: 128px !important;
  max-height: 128px !important;
  aspect-ratio: 1 / 1 !important;
  flex: 0 0 128px !important;
  align-self: center !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 14px !important;
  background: #f5f5f7 !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
/* Картинка заполняет квадрат 128×128 целиком — обрезается по cover. */
[data-aacat] .hero-trust__cases-scroll .case-card img{
  width: 128px !important;
  height: 128px !important;
  max-width: 128px !important;
  max-height: 128px !important;
  object-fit: cover !important;
}


/* Хлебные крошки — стили как в макете */
[data-aacat] .breadcrumbs-cat{
  position: static !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 135px 0 8px !important;
}
[data-aacat] .breadcrumbs-cat__inner{
  position: static !important;
  background: transparent !important;
  display: inline;
  font-size: 12px;
  line-height: 1;
  color: #b8b8b8;
}
[data-aacat] .breadcrumbs-cat,
[data-aacat] .breadcrumbs-cat *{
  color: #b8b8b8 !important;
}
[data-aacat] .breadcrumbs-cat__link,
[data-aacat] .breadcrumbs-cat a{
  text-decoration: none;
  transition: color .15s ease;
}
[data-aacat] .breadcrumbs-cat__link:hover,
[data-aacat] .breadcrumbs-cat a:hover{
  color: #705ABF !important;
}
[data-aacat] .breadcrumbs-cat__inner span + span::before{
  content: "›";
  margin: 0 6px;
  color: #d6d6da;
}
@media (max-width: 768px){
  [data-aacat] .breadcrumbs-cat{ margin: 16px 0 6px !important; }
  [data-aacat] .breadcrumbs-cat__inner{ font-size: 11px; }
}
[data-aacat] .breadcrumbs-cat__inner{
  position: static !important;
  background: transparent !important;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  font-size: 13px;
  line-height: 1.4;
  color: #6b7280;
}
[data-aacat] .breadcrumbs-cat__link,
[data-aacat] .breadcrumbs-cat a{
  color: #6b7280;
  text-decoration: none;
  transition: color .15s ease;
}
[data-aacat] .breadcrumbs-cat__link:hover,
[data-aacat] .breadcrumbs-cat a:hover{
  color: #1a1a1a;
}
[data-aacat] .hero-trust__side{
  height: 190px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}
/* На моб trust-карточки переносятся JS-ом внутрь .hero-trust__video как
   .hero-trust__overlay (см. cat-2026-script.js → initTrustOverlay).
   .hero-trust__side при этом содержит только CTA-кнопку и становится
   тонкой полоской под видео. */
@media (max-width: 768px){
  [data-aacat] .hero-trust__side{
    height: auto !important;
    gap: 8px !important;
  }

  /* CTA «Оставить заявку» — на всю ширину, мягкое скругление, без тени */
  [data-aacat] .hero-trust__cta{
    padding: 12px 16px !important;
    font-size: 14px !important;
    border-radius: 14px !important;
    box-shadow: none !important;
    letter-spacing: -0.002em;
    width: 100% !important;
    flex: none !important;
  }

  /* Overlay-бейджи поверх видео — снизу, glass-effect (frosted) */
  [data-aacat] .hero-trust__video {
    position: relative;
  }
  [data-aacat] .hero-trust__overlay{
    position: absolute;
    left: 8px;
    right: 8px;
    bottom: 8px;
    display: flex;
    gap: 6px;
    pointer-events: none; /* видео-кнопка play остаётся кликабельной */
    z-index: 3;
  }
  /* Тёмные glass-таблетки с blur поверх видео. Ширина по контенту. */
  [data-aacat] .hero-trust__overlay .hero-trust__stat{
    flex: 0 0 auto;
    width: auto;
    min-width: 0;
    padding: 6px 10px !important;
    background: rgba(20, 20, 22, .55) !important;
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    backdrop-filter: blur(14px) saturate(140%);
    border: none !important;
    border-radius: 10px !important;
    gap: 10px !important;
    box-shadow: none !important;
    pointer-events: auto;
    color: #fff !important;
  }
  [data-aacat] .hero-trust__overlay .hero-trust__stat-icon{
    width: 20px !important;
    height: 20px !important;
    background: rgba(255, 255, 255, .14) !important;
    color: #fff !important;
  }
  [data-aacat] .hero-trust__overlay .hero-trust__stat-icon svg{
    width: 10px !important;
    height: 10px !important;
  }
  /* Только stroke в белый — fill оставляем оригинальный (none для галочки,
     иначе галочка превращается в закрашенный треугольник). */
  [data-aacat] .hero-trust__overlay .hero-trust__stat-icon svg path{
    stroke: #fff !important;
  }
  [data-aacat] .hero-trust__overlay .hero-trust__stat-num{
    font-size: 11.5px !important;
    line-height: 1.15 !important;
    color: #fff !important;
  }
  [data-aacat] .hero-trust__overlay .hero-trust__stat-num em{
    color: rgba(255, 255, 255, .7) !important;
  }
  [data-aacat] .hero-trust__overlay .hero-trust__stat-sub{
    font-size: 10px !important;
    line-height: 1.15 !important;
    color: rgba(255, 255, 255, .72) !important;
  }

  /* Подпись «Как мы работаем — за 90 секунд» под видео — на моб убираем,
     overlay-бейджи и так загружают зону под видео визуально. */
  [data-aacat] .hero-trust__video-label{
    display: none !important;
  }

  /* Скрываем стрелки навигации в кейсах — на моб свайп пальцем работает */
  [data-aacat] .hero-trust__cases-arrow{
    display: none !important;
  }
}
[data-aacat] .hero-trust__cta{
  margin-top: auto !important;
}

/* Sticky сайдбара — отключён, будет переделан на живом сайте.
   Оставляем только align-items на контейнере, чтобы flex-разметка не сбоила. */
[data-aacat] .catalog__listing.listing,
[data-aacat] .catalog__listing{
  align-items: flex-start !important;
}
[data-aacat] .sidebar-inner{
  position: static !important;
  top: auto !important;
}

/* Кнопка «Показать ещё» — display:block + центрирование */
[data-aacat] .listing__content .listing__btn,
[data-aacat] a.listing__btn.listing__btn {
  display: block !important;
  max-width: 204px !important;
  width: 204px !important;
  padding: 12px 28px !important;
  margin: 20px auto !important;
  font-size: 15px !important;
  text-align: center !important;
  box-sizing: border-box !important;
}

/* Компактный дропдаун-фильтр (По популярности и т.п.) */
[data-aacat] .listing__filter-content {
  padding: 6px !important;
  gap: 0 !important;
  border-radius: 12px !important;
}
[data-aacat] .listing__filter-item {
  gap: 8px !important;
  padding: 8px 10px !important;
  border-radius: 8px !important;
  cursor: pointer;
  transition: background .12s ease;
}
[data-aacat] .listing__filter-item:hover {
  background: #f5f5f7;
}
[data-aacat] .listing .filter-item__checkbox {
  width: 16px !important;
  height: 16px !important;
  border-width: 1.5px !important;
}
[data-aacat] .listing .filter-item--active .filter-item__checkbox span {
  width: 8px !important;
  height: 8px !important;
}
[data-aacat] .listing .filter-item__text {
  font-size: 14px !important;
  line-height: 1.3 !important;
}

/* ======== Whitelisted state-классы ========================================
   Эти классы добавляются JS-ом по клику/hover, в HTML их изначально нет —
   поэтому purger их выкинул. Восстанавливаем вручную. */

/* SEO-секции — раскрытие при клике на заголовок */
[data-aacat] .sections__item.is-open > .sections__item-content > .sections__item-title::after {
  transform: translateY(-25%) rotate(-135deg);
}
[data-aacat] .sections__item.is-open > .sections__item-content > .section__textbox {
  max-height: 2000px !important;
  opacity: 1 !important;
}

/* Дропдаун-фильтр (По популярности и т.п.) — раскрытие при hover/клике */
[data-aacat] .listing__filter:hover .listing__filter-content,
[data-aacat] .listing .filter--open .listing__filter-content {
  opacity: 1;
  transform: translateY(0);
  visibility: visible;
}
[data-aacat] .listing__filter:hover .listing__filter-head svg,
[data-aacat] .listing .filter--open .listing__filter-head svg {
  transform: rotate(180deg);
}
[data-aacat] .listing__filter:hover .listing__filter-head svg path,
[data-aacat] .listing .filter--open .listing__filter-head svg path {
  stroke: #705ABF;
}

/* Кнопка «Показать ещё» — точная ширина по исходнику */
[data-aacat] .listing__btn {
  display: block !important;
  max-width: 204px !important;
  width: auto !important;
  margin: 0 auto 20px !important;
}

/* Сайдбар-тоггл (Показать все / Свернуть) */
[data-aacat] .listing__sidebar--collapsed .listing__sidebar-link:nth-of-type(n+9) {
  display: none !important;
}

/* ==== Hover-галерея на карточках листинга (Авито-style) =================
   JS добавляет .hover-gallery__dots внутрь .listing__item-img при загрузке
   и листает фото при движении мыши. */
[data-aacat] .listing__item-img {
  position: relative !important;
  cursor: pointer;
}
[data-aacat] .listing__item-img img {
  -webkit-user-drag: none;
  user-select: none;
}
/* Пагинация-пилюля в левом верхнем углу карточки.
   Transition opacity убран: в Chrome при равной специфичности с правилом-источником
   transition застревает в начальном значении и .is-hovering не применяется. */
[data-aacat] .hover-gallery__dots {
  position: absolute;
  top: 8px;
  left: 8px;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 5px 8px;
  border-radius: 100px;
  background: rgba(0, 0, 0, .55);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  pointer-events: none;
  opacity: 0;
  z-index: 3;
}
[data-aacat] .listing__item-img.is-hovering .hover-gallery__dots {
  opacity: 1;
}
[data-aacat] .hover-gallery__dot {
  flex: 0 0 auto;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .5);
  transition: width .2s ease, background .15s ease;
}
[data-aacat] .hover-gallery__dot.is-active {
  width: 14px;
  height: 5px;
  border-radius: 100px;
  background: #fff;
}
@media (hover: none) {
  [data-aacat] .hover-gallery__dots { display: none; }
}

/* ==== Фикс «дыры при наведении» =========================================
   В исходнике .big_images_gallery:hover скрывает картинку (видимо там был
   другой механизм галереи). У нас своя hover-галерея — отключаем эти правила. */
[data-aacat] .big_images_gallery:hover .listing__item-img,
[data-aacat] .big_images_gallery:hover .listing__item-content {
  visibility: visible !important;
  opacity: 1 !important;
}

/* ==== Соотношение фото — квадрат, заполнение (cover) ===================
   Все карточки одинаковой высоты, фото заполняет весь блок без белых полей.
   Лишние края обрезаются (как на Wildberries / Озон / Авито). */
[data-aacat] .listing__item-img {
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  background: #f5f5f7;
  overflow: hidden;
}
[data-aacat] .listing__item-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block;
}

/* ==== Кнопка «Подробнее» — компактная пилюля в правом нижнем углу ===== */
[data-aacat] .listing__item-img::after {
  content: 'Подробнее →';
  position: absolute;
  right: 8px;
  bottom: 8px;
  background: #fff;
  color: #1d1d1f;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: -0.003em;
  padding: 5px 12px;
  border-radius: 100px;
  opacity: 0;
  transform: translateY(6px) scale(.94);
  transition:
    transform .3s cubic-bezier(.22, 1, .36, 1),
    opacity .2s ease;
  z-index: 3;
  pointer-events: none;
  white-space: nowrap;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .14);
}
[data-aacat] .listing__item:hover .listing__item-img::after {
  opacity: 1;
  transform: translateY(0) scale(1);
}
/* На тач-устройствах кнопка не нужна — там нет hover */
@media (hover: none) {
  [data-aacat] .listing__item-img::after { display: none; }
}

/* ==== Сброс верхнего «зазора» под шапку ===============================
   На исходном сайте у .main-layer стоял padding-top: 120px (компенсация
   под фиксированную шапку art-active24.ru). На целевом сайте такая шапка
   уже учтена в общем layout — этот padding не нужен. */
[data-aacat] .main-layer {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
@media (max-width: 768px) {
  [data-aacat] .main-layer {
    padding-top: 0 !important;
  }
}

/* Стили шапки и связанных элементов (header, header__inner, header-bot__links,
   qwerty-link, cart-header-link, logo, bot-bar) удалены — управляются
   в [[header_test-26]] на стороне CMS, чтобы не конфликтовать с глобальной
   шапкой и не вмешиваться в её логику. */

/* Wrapper для category_footer_content. Базовое [data-aacat] имеет
   overflow-x: hidden — это создаёт scroll-контейнер и ломает
   position: sticky на картинке слева. Здесь снимаем overflow,
   чтобы sticky-картинка прибивалась к viewport, а не к wrapper'у. */
[data-aacat].cfc-wrap{ overflow: visible !important; }


/* ============================================================================
   Карточки 2026 — клон правил .listing__item* для уникальных классов .aa-card*.
   Сгенерировано автоматически. Используется в шаблоне категории [data-aacat],
   куда выводит includes/_print_catalog_2026.php (PrintCatalog2026).
   ВАЖНО: правила-источники остаются на месте (для совместимости с остальными
   местами, где могут встречаться .listing__item* внутри [data-aacat]).
   ============================================================================ */

[data-aacat] .aa-cards{
  display: -ms-grid;
  display: grid;
  gap: 35px 16px;
  -ms-grid-columns: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr 1fr;
  margin-bottom: 32px;
  max-width: 929px;
}
[data-aacat] .aa-card{
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
}
[data-aacat] .aa-card__img img{
  display: block;
  width: 100%;
}
[data-aacat] .aa-card__content{
  padding: 16px 20px 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 12px;
}
[data-aacat] .aa-card__title{
  font-size: 16px;
  font-weight: 500;
  line-height: 125%;
  height: 40px;
  overflow: hidden;
}
[data-aacat] .aa-card__price{
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  gap: 4px;
}
[data-aacat] .aa-card__price span{
  line-height: 16px;
  font-size: 16px;
  font-weight: 600;
}
[data-aacat] .aa-card{
  position: relative;
}
@media (max-width: 768px){
  [data-aacat] .aa-cards{
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
[data-aacat] .aa-card__content{
    padding: 12px 16px 16px 16px;
  }
[data-aacat] .aa-card__title{
    font-size: 14px;
    height: 36px;
    line-height: 125%;
  }
}
@media (max-width: 600px){
  [data-aacat] .aa-cards{
    -ms-grid-columns: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (max-width: 500px){
  [data-aacat] .aa-cards{
    -ms-grid-columns: 1fr 1fr;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 600px){
  [data-aacat] .aa-card__content{
    gap: 20px;
  }
}
[data-aacat] .aa-card__img img{
  display: block;
  width: 100%;
  height: 170px;
}
@media (max-width: 850px){
  [data-aacat] .aa-card__img img{
    height: 155px;
  }
}
@media (max-width: 768px){
  [data-aacat] .aa-card__img img{
    height: 95px;
  }
}
@media (max-width: 500px){
  [data-aacat] .aa-card__img img{
    height: 125px;
  }
}
@media (max-width: 450px){
  [data-aacat] .aa-card__img img{
    height: 110px;
  }
}
[data-aacat] .aa-card{
  width: 100%;
  max-width: 299px;
  border-radius: 16px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
[data-aacat] .aa-card__img img{
  display: block;
  width: 100%;
}
[data-aacat] .aa-card__content{
  padding: 16px 20px 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 12px;
  flex-grow: 1;
}
[data-aacat] .aa-card__title{
  font-size: 16px;
  font-weight: 500;
  line-height: 125%;
  height: initial;
  margin-bottom: auto;
  overflow: hidden;
}
[data-aacat] .aa-card__price{
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
  gap: 4px;
  line-height: 1;
}
[data-aacat] .aa-card__price span{
  line-height: 16px;
  font-size: 16px;
  font-weight: 400;
}
[data-aacat] .aa-card{
  position: relative;
}
@media (max-width: 768px){
  [data-aacat] .aa-card{
    display: flex;
    flex-direction: column;
  }
[data-aacat] .aa-card__content{
    padding: 12px 16px;
    flex-grow: 1;
  }
}
@media(max-width: 768px){
  [data-aacat] .aa-card__title{
    font-size: 14px;
    height: initial !important;
    line-height: 125%; 
    margin-bottom: auto;
}
}
@media(max-width: 768px){
  [data-aacat] .aa-card-video-item video{
    width: initial;
    height: 200px;
  }
}
[data-aacat] .big_images_gallery .aa-card__content{
  background-color: transparent;
  padding-bottom: 18px;
}
[data-aacat] .big_images_gallery .aa-card__img{
  border-radius: 16px;
  overflow: hidden;
}
[data-aacat] .big_images_gallery .aa-card__title{
  margin-bottom: 0;
}
@media (max-width: 768px){
  [data-aacat] .aa-cards{
    gap: 15px;
  }
}
[data-aacat] .big_images_gallery .aa-card__img{
  transition: .25s;
}
[data-aacat] .big_images_gallery .aa-card__content{
  padding: 16px 8px 18px;
}
[data-aacat] .big_images_gallery .aa-card__img{
  transition: none;
}
@media (min-width: 768px){
  [data-aacat] .big_images_gallery:hover .aa-card__img{
    visibility: hidden;
  }
[data-aacat] .big_images_gallery:hover .aa-card__content{
    opacity: 0;
  }
}
[data-aacat], [data-aacat] input, [data-aacat] button, [data-aacat] h1, [data-aacat] h2, [data-aacat] .page-title-local, [data-aacat] .sidebar-promo-card__title, [data-aacat] .sidebar-filter-group__title, [data-aacat] .aa-card__title, [data-aacat] .listing-row__item-title{
  font-family: inherit !important;
}
[data-aacat] .aa-cards{
  grid-template-columns: repeat(4, 1fr) !important;
  max-width: none !important;
}
[data-aacat] .aa-card__img{ aspect-ratio: 1 / 1; overflow: hidden; }
[data-aacat] .aa-card__title{
  font-size: 15px !important;
  font-weight: 400 !important;
  height: auto !important;
  min-height: 30px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden !important;
}
[data-aacat] .aa-card__price span{ font-size: 18px !important; font-weight: 500 !important; line-height: 16px !important; }
[data-aacat] .aa-card__content{ gap: 8px !important; }
[data-aacat] .aa-cards .listing-row{ grid-column: 1 / -1 !important; display: flex !important; gap: 16px; }
[data-aacat] .aa-cards .listing-row .listing-row__item{ max-width: none !important; flex: 1 1 0 !important; min-width: 0 !important; width: 0 !important; }
[data-aacat] .aa-card__img img{ height: 100% !important; width: 100% !important; object-fit: cover !important; }
@media (max-width: 1024px){
  [data-aacat] .aa-cards{ grid-template-columns: repeat(3, 1fr) !important; }
}
@media (max-width: 768px){
  [data-aacat] .aa-cards{ grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 500px){
  [data-aacat] .aa-cards{ grid-template-columns: repeat(2, 1fr) !important; }
}
[data-aacat] .aa-card__img{
  position: relative;
  cursor: pointer;
}
[data-aacat] .aa-card__img img{
  -webkit-user-drag: none;
  user-select: none;
}
[data-aacat] .aa-card__img{
  position: relative !important;
  cursor: pointer;
}
[data-aacat] .aa-card__img img{
  -webkit-user-drag: none;
  user-select: none;
}
[data-aacat] .aa-card__img.is-hovering .hover-gallery__dots{
  opacity: 1;
}
[data-aacat] .big_images_gallery:hover .aa-card__img,
[data-aacat] .big_images_gallery:hover .aa-card__content{
  visibility: visible !important;
  opacity: 1 !important;
}
[data-aacat] .aa-card__img{
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  background: #f5f5f7;
  overflow: hidden;
}
[data-aacat] .aa-card__img img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block;
}
[data-aacat] .aa-card__img::after{
  content: 'Подробнее →';
  position: absolute;
  right: 8px;
  bottom: 8px;
  background: #fff;
  color: #1d1d1f;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: -0.003em;
  padding: 5px 12px;
  border-radius: 100px;
  opacity: 0;
  transform: translateY(6px) scale(.94);
  transition:
    transform .3s cubic-bezier(.22, 1, .36, 1),
    opacity .2s ease;
  z-index: 3;
  pointer-events: none;
  white-space: nowrap;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .14);
}
[data-aacat] .aa-card:hover .aa-card__img::after{
  opacity: 1;
  transform: translateY(0) scale(1);
}
@media (hover: none){
  [data-aacat] .aa-card__img::after{ display: none; }
}


/* Скругление углов фото в карточке 2026 со всех сторон */
[data-aacat] .aa-card__img{
  border-radius: 16px !important;
  overflow: hidden !important;
}

/* ============================================================================
   Бейдж карточки .aa-card__label (бывш. .listing__item--sale).
   В разметке: <div class="aa-card__label label yellow uppercase"
                    style="background-color: ...; color: ...;">VIP</div>
   Фон/цвет текста приходят inline из админки — здесь только геометрия,
   позиция и форма «пилюля» в правом верхнем углу фото карточки.
   .aa-card имеет position: relative (см. выше), поэтому абсолют — от карточки.
   ============================================================================ */
[data-aacat] .aa-card__label{
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 4;
  max-width: calc(100% - 20px);
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 600;
  line-height: 18px;
  letter-spacing: 0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  pointer-events: none;
}
[data-aacat] .aa-card__label.uppercase{
  text-transform: uppercase;
}
@media (max-width: 500px){
  [data-aacat] .aa-card__label{
    top: 8px;
    right: 8px;
    padding: 2px 8px;
    font-size: 11px;
    line-height: 16px;
  }
}

/* ============================================================================
   Кнопка сортировки .listing__filter в шаблоне 2026 — светлая пилюля
   с тонкой рамкой и чёрным текстом (вместо тёмного фона по умолчанию).
   Только для нового шаблона [data-aacat].
   ============================================================================ */
[data-aacat] .listing__filter-head {
  background-color: transparent !important;
  border: 1px solid #e6e4ed !important;
  padding: 12px 18px !important;
  transition: border-color .15s ease, background-color .15s ease !important;
}
[data-aacat] .listing__filter-head:hover {
  border-color: #c9c6d4 !important;
  background-color: #fafafa !important;
}
[data-aacat] .listing__filter-head span,
[data-aacat] .listing__filter-head .selected-value-text {
  color: #1d1d1f !important;
  font-weight: 500 !important;
}
[data-aacat] .listing__filter-head svg path {
  stroke: #1d1d1f !important;
}

/* Кнопка сортировки — без переноса текста */
[data-aacat] .listing__filter-head .selected-value-text,
[data-aacat] .listing__filter-head span {
  white-space: nowrap !important;
}

/* ============================================================================
   Спойлер меню категорий 2026.
   PHP даёт части ссылок класс .hidden — по умолчанию скрываем их.
   При клике на кнопку .sidebar-toggle JS добавляет .listing__sidebar.is-expanded
   — все скрытые ссылки становятся видимы.
   ============================================================================ */
[data-aacat] .listing__sidebar .listing__sidebar-link.hidden {
  display: none !important;
}
[data-aacat] .listing__sidebar.is-expanded .listing__sidebar-link.hidden {
  display: block !important;
}
[data-aacat] .listing__sidebar .sidebar-toggle {
  margin-top: 4px;
}

/* Шеврон кнопки .sidebar-toggle поворачивается при раскрытом списке */
[data-aacat] .sidebar-toggle .sidebar-toggle__icon {
  transition: transform .2s ease;
}
[data-aacat] .sidebar-toggle.is-rotated .sidebar-toggle__icon {
  transform: rotate(180deg);
}

/* ============================================================================
   Сайдбар 2026 — изолированный блок .aa-sidebar* (см. cat-2026-script.js).
   Заменяет ТОЛЬКО внутреннее содержимое .listing__sidebar (не сам узел!),
   чтобы theia-sticky-sidebar.min.js (init из js/2024/index.js) продолжал
   работать и обеспечивал «прилипание»:
     • короткое меню — sticks к верху
     • длинное меню — прокрутка со страницей, потом stick-to-bottom.
   Поэтому здесь НЕТ position: sticky — позицию ставит theia.
   ============================================================================ */

/* Анти-мигание сайдбара (БЕЗ скрытия — он всё время виден). До сборки скриптом
   причёсываем «сырой» сайдбар под финальный вид и резервируем место будущего
   сегмента «Аренда/Продажа», чтобы пересборка в .aa-sidebar не давала ни вспышки
   перестилизации, ни прыжка списка. Действует только в pre-JS состоянии
   (:not(.aa-sidebar)); после сборки применяются обычные .aa-sidebar* стили. */
[data-aacat] .listing__sidebar:not(.aa-sidebar) {
  padding: 8px !important;
  border-radius: 18px !important;
  background: #fff;
}
[data-aacat] .listing__sidebar:not(.aa-sidebar) .listing__sidebar-link {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 20px !important;
  border-radius: 14px;
  line-height: 1.3;
  font-size: 15px;
  font-weight: 400;
  color: #1d1d1f;
}
[data-aacat] .listing__sidebar:not(.aa-sidebar) .listing__sidebar-link.current-link {
  background: #F0EBFB;
  color: #705ABF;
  font-weight: 600;
}
/* Маркер зеркала резервирует высоту будущего сегмента (тумблера), чтобы список
   не прыгнул вниз в момент его вставки. ~50px = высота сегмента + отступы. */
[data-aacat] .listing__sidebar:not(.aa-sidebar) .aa-seg {
  display: block;
  height: 50px;
}

/* .listing__sidebar после инициализации получает класс .aa-sidebar.
   Снимаем стилистику белой карточки с обёртки (она теперь у дочерних блоков),
   делаем стек карточек 12px gap. */
[data-aacat] .listing__sidebar.aa-sidebar {
  background: transparent !important;
  padding: 0 !important;
  border-radius: 0 !important;
  display: flex !important;
  flex-direction: column;
  gap: 12px;
}

/* Карточка-список категорий */
[data-aacat] .aa-sidebar__categories {
  background: #fff;
  border-radius: 18px;
  padding: 8px;
  display: flex;
  flex-direction: column;
}

/* Сегмент «Аренда / Продажа» сверху списка категорий (cat-2026-script.js).
   Появляется, только если у текущей категории есть активное зеркало-продажа.
   Кнопки — <a> на аренда/продажа-страницы; клик переключает листинг+H1 AJAX-ом. */
[data-aacat] .aa-sidebar__mode {
  position: relative;
  display: flex;
  margin: 4px 4px 14px;
  padding: 3px;
  background: #f0f0f2;
  border-radius: 12px;
  transition: opacity .15s ease;
}
[data-aacat] .aa-sidebar__mode.is-loading { opacity: .55; pointer-events: none; }
[data-aacat] .aa-sidebar__mode-pill {
  position: absolute;
  top: 3px;
  left: 3px;
  width: calc(50% - 3px);
  height: calc(100% - 6px);
  background: #fff;
  border-radius: 9px;
  box-shadow: 0 1px 3px rgba(0,0,0,.10), 0 0 1px rgba(0,0,0,.06);
  transition: transform .22s cubic-bezier(.4,0,.2,1);
  z-index: 0;
}
[data-aacat] .aa-sidebar__mode[data-mode="buy"] .aa-sidebar__mode-pill { transform: translateX(100%); }
[data-aacat] .aa-sidebar__mode-btn {
  position: relative;
  z-index: 1;
  flex: 1 1 0;
  padding: 4px 4px;
  text-align: center;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  color: #86868b;
  border-radius: 9px;
  cursor: pointer;
  transition: color .18s ease;
}
[data-aacat] .aa-sidebar__mode-btn.is-active { color: #1d1d1f; cursor: default; pointer-events: none; }
[data-aacat] .aa-sidebar__mode[data-mode="buy"] .aa-sidebar__mode-btn.is-active { color: #705ABF; }
/* Светлая подсказка при наведении на тумблер (только в режиме аренды) */
[data-aacat] .aa-sidebar__mode-tip {
  position: absolute;
  top: calc(100% + 9px);
  left: 0;
  right: 0;
  z-index: 5;
  padding: 9px 13px;
  background: #fff;
  color: #1d1d1f;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
  border: 1px solid #ececf0;
  border-radius: 11px;
  box-shadow: 0 10px 30px rgba(0,0,0,.12);
  text-align: center;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4px);
  transition: opacity .16s ease, transform .16s ease, visibility .16s;
  pointer-events: none;
}
[data-aacat] .aa-sidebar__mode-tip b { color: #705ABF; font-weight: 700; }
[data-aacat] .aa-sidebar__mode-tip::before {
  content: '';
  position: absolute;
  top: -5px;
  left: 75%;
  margin-left: -4px;
  width: 8px;
  height: 8px;
  background: #fff;
  border-left: 1px solid #ececf0;
  border-top: 1px solid #ececf0;
  transform: rotate(45deg);
}
[data-aacat] .aa-sidebar__mode[data-mode="buy"] .aa-sidebar__mode-tip { display: none; }
[data-aacat] .aa-sidebar__mode:hover .aa-sidebar__mode-tip {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

[data-aacat] .aa-sidebar__link {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 20px;
  border-radius: 14px;
  line-height: 1.3;
  color: #1d1d1f;
  font-size: 15px;
  font-weight: 400;
  text-decoration: none;
  transition: background-color .15s ease, color .15s ease;
}
[data-aacat] .aa-sidebar__link:hover {
  background: #f5f5f7;
  color: #1d1d1f;
}
[data-aacat] .aa-sidebar__link-text { display: inline-block; }

/* Стрелка ← у родительских пунктов (.main-link) — показывает «уровень выше» */
[data-aacat] .aa-sidebar__link-arrow {
  flex-shrink: 0;
  color: #86868b;
  transition: transform .15s ease, color .15s ease;
}
/* Родительские пункты сдвинуты левее остальных — это передаёт визуальную
   иерархию: «Праздники и вечеринки» — уровень выше, дочерние подкатегории
   ниже и правее. padding-left: 4px — стрелка фактически начинается на 4px
   от края карточки, тогда как у дочерних пунктов отступ от карточки 20px. */
[data-aacat] .aa-sidebar__link--main {
  color: #5a5a5f;
  font-weight: 500;
  padding-left: 4px;
}
[data-aacat] .aa-sidebar__link--main:hover { color: #1d1d1f; }
[data-aacat] .aa-sidebar__link--main:hover .aa-sidebar__link-arrow {
  color: #1d1d1f;
  transform: translateX(-2px);
}

[data-aacat] .aa-sidebar__link--current {
  background: #F0EBFB;
  color: #705ABF;
  font-weight: 600;
}
[data-aacat] .aa-sidebar__link--current:hover {
  background: #E6DEF6;
  color: #705ABF;
}
/* Скрытые ссылки — по умолчанию display:none, раскрываются по .is-expanded */
[data-aacat] .aa-sidebar__link--hidden {
  display: none;
}
[data-aacat] .aa-sidebar.is-expanded .aa-sidebar__link--hidden {
  display: flex;
}

/* Кнопка-спойлер «Показать все / Свернуть» */
[data-aacat] .aa-sidebar__toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: 100%;
  margin: 4px 0 0;
  padding: 12px;
  background: transparent;
  border: none;
  border-radius: 10px;
  color: #705ABF;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  font-family: inherit;
  transition: background-color .15s ease;
}
[data-aacat] .aa-sidebar__toggle:hover {
  background: rgba(112, 90, 191, .08);
}
[data-aacat] .aa-sidebar__toggle-icon {
  transition: transform .2s ease;
  color: currentColor;
  width: 14px;
  height: 14px;
}
[data-aacat] .aa-sidebar__toggle.is-rotated .aa-sidebar__toggle-icon {
  transform: rotate(180deg);
}
/* Бейдж со счётчиком скрытых пунктов рядом с текстом «Показать все».
   Полупрозрачная фиолетовая капсула, шрифт чуть мельче самого текста. */
[data-aacat] .aa-sidebar__toggle-count {
  display: inline-block;
  min-width: 22px;
  padding: 0 6px;
  height: 18px;
  line-height: 18px;
  border-radius: 9px;
  background: rgba(112, 90, 191, .12);
  color: #705ABF;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
}

/* Карточка фильтров */
[data-aacat] .aa-sidebar__filters {
  background: #fff;
  border-radius: 14px;
  padding: 16px;
}
[data-aacat] .aa-sidebar__filter-group + .aa-sidebar__filter-group {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #f0f0f2;
}
[data-aacat] .aa-sidebar__filter-title {
  font-size: 13px;
  font-weight: 600;
  color: #1d1d1f;
  margin-bottom: 10px;
}
[data-aacat] .aa-sidebar__price-inputs {
  display: flex;
  gap: 8px;
}
[data-aacat] .aa-sidebar__input {
  flex: 1 1 0;
  min-width: 0;
  max-height: 35px;
  box-sizing: border-box;
  padding: 7px 12px;
  border: 1.5px solid transparent;
  border-radius: 10px;
  font-size: 14px;
  color: #1d1d1f;
  background: #f5f5f7;
  font-family: inherit;
  -moz-appearance: textfield;
  transition: border-color .15s ease, background-color .15s ease;
}
[data-aacat] .aa-sidebar__input::placeholder { color: #86868b; text-transform: none; }
[data-aacat] .aa-sidebar__input::-webkit-outer-spin-button,
[data-aacat] .aa-sidebar__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
[data-aacat] .aa-sidebar__input:focus {
  outline: none;
  border-color: #705ABF;
  background: #fff;
}

/* Двойной ползунок-диапазон для числовых фильтров.
   Два input[type=range] наложены через absolute, ловят клики только на
   thumb (pointer-events: none на самом range, auto на ::thumb). Между
   ними — закрашенный сегмент .aa-sidebar__range-fill. */
[data-aacat] .aa-sidebar__range {
  position: relative;
  height: 28px;
  margin-top: 14px;
  padding: 0 8px; /* чтобы thumb не выходил за края */
}
[data-aacat] .aa-sidebar__range-track {
  position: absolute;
  left: 8px;
  right: 8px;
  top: 50%;
  height: 4px;
  background: #e6e6ea;
  border-radius: 2px;
  transform: translateY(-50%);
}
[data-aacat] .aa-sidebar__range-fill {
  position: absolute;
  height: 100%;
  background: #705ABF;
  left: 0;
  right: 0;
  border-radius: 2px;
}
[data-aacat] .aa-sidebar__range-input {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  outline: none;
  /* Сам range не ловит клики (иначе верхний перекрывает нижний и нельзя
     схватить «нижний» thumb). Точечно включаем pointer-events на thumb. */
  pointer-events: none;
}
[data-aacat] .aa-sidebar__range-input::-webkit-slider-runnable-track {
  height: 4px;
  background: transparent;
  border: none;
}
[data-aacat] .aa-sidebar__range-input::-moz-range-track {
  height: 4px;
  background: transparent;
  border: none;
}
[data-aacat] .aa-sidebar__range-input::-webkit-slider-thumb {
  -webkit-appearance: none;
  pointer-events: auto;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #705ABF;
  cursor: pointer;
  box-shadow: 0 1px 4px rgba(29, 29, 31, .15);
  margin-top: -6px; /* поправка чтобы thumb центрировался по треку */
  transition: transform .1s ease, box-shadow .15s ease;
}
[data-aacat] .aa-sidebar__range-input::-moz-range-thumb {
  pointer-events: auto;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #705ABF;
  cursor: pointer;
  box-shadow: 0 1px 4px rgba(29, 29, 31, .15);
  transition: transform .1s ease, box-shadow .15s ease;
}
[data-aacat] .aa-sidebar__range-input::-webkit-slider-thumb:hover {
  transform: scale(1.15);
  box-shadow: 0 2px 6px rgba(112, 90, 191, .3);
}
[data-aacat] .aa-sidebar__range-input::-moz-range-thumb:hover {
  transform: scale(1.15);
  box-shadow: 0 2px 6px rgba(112, 90, 191, .3);
}
[data-aacat] .aa-sidebar__range-input:focus { outline: none; }

/* Список чекбоксов (цвета и т.п.) */
[data-aacat] .aa-sidebar__check-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-height: 240px;
  overflow-y: auto;
  padding-right: 6px;
  margin-right: -6px;
}
[data-aacat] .aa-sidebar__check-list::-webkit-scrollbar { width: 4px; }
[data-aacat] .aa-sidebar__check-list::-webkit-scrollbar-thumb { background: #d6d6da; border-radius: 2px; }
[data-aacat] .aa-sidebar__check-list::-webkit-scrollbar-track { background: transparent; }

[data-aacat] .aa-sidebar__check {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  user-select: none;
  font-size: 14px;
  color: #1d1d1f;
  position: relative;
}
[data-aacat] .aa-sidebar__check input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 0;
  height: 0;
}
[data-aacat] .aa-sidebar__check-box {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  border-radius: 7px;
  background: #f0f0f3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background-color .15s ease, box-shadow .15s ease;
  position: relative;
}
[data-aacat] .aa-sidebar__check-box::after {
  content: "";
  width: 10px;
  height: 6px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg) translate(1px, -1px);
  opacity: 0;
  transition: opacity .15s ease;
}
[data-aacat] .aa-sidebar__check:hover .aa-sidebar__check-box { background: #e6e6ea; }
[data-aacat] .aa-sidebar__check input:checked ~ .aa-sidebar__check-box { background: #705ABF; }
[data-aacat] .aa-sidebar__check input:checked ~ .aa-sidebar__check-box::after { opacity: 1; }
[data-aacat] .aa-sidebar__check input:focus-visible ~ .aa-sidebar__check-box {
  box-shadow: 0 0 0 2px #fff, 0 0 0 4px rgba(112, 90, 191, .4);
}
[data-aacat] .aa-sidebar__color-dot {
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: var(--c);
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .08);
  display: inline-block;
}
[data-aacat] .aa-sidebar__check-label { line-height: 1.2; }

/* Карточка промо/допуслуг */
[data-aacat] .aa-sidebar__promo {
  background: #fff;
  border-radius: 14px;
  padding: 16px;
}
[data-aacat] .aa-sidebar__promo-title {
  font-size: 15px;
  font-weight: 600;
  color: #3b3b3b;
  line-height: 1.25;
  margin: 0 0 12px;
  letter-spacing: -0.005em;
}
[data-aacat] .aa-sidebar__promo-title--second {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #f0f0f2;
}
[data-aacat] .aa-sidebar__promo-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
[data-aacat] .aa-sidebar__chip {
  display: inline-block;
  padding: 7px 12px;
  border-radius: 8px;
  background: #f5f5f7;
  color: #5a5a5f;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  text-decoration: none;
  transition: background-color .15s ease, color .15s ease;
}
[data-aacat] .aa-sidebar__chip:hover {
  background: #eaeaec;
  color: #1d1d1f;
}

/* На мобиле theia сама отключается (disableOnResponsiveLayouts: true).
   Дополнительно скрываем сайдбар целиком на узких экранах — фильтры
   на моб должны быть в другом месте (топ-баре .listing__top-link2). */
@media (max-width: 768px) {
  [data-aacat] .listing__sidebar-container { display: none !important; }
}

/* ============================================================================
   Мобильные правки: крошки видны, h1 поменьше, trust-блоки в одну строку.
   ============================================================================ */
@media (max-width: 768px) {
  /* Хлебные крошки — гарантируем видимость (где-то в глобальном CSS могло
     быть display:none / visibility:hidden). Отступ сверху 90px — крошки
     уходят из-под фикс-шапки сайта (она ~80-88px на моб). */
  [data-aacat] .breadcrumbs-cat {
    display: block !important;
    visibility: visible !important;
    margin: 90px 0 8px !important;
    padding: 0 !important;
    /* Горизонтальный скролл на моб — длинная цепочка не переносится,
       а скроллится свайпом, как в крупных каталогах. */
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    /* Прячем скроллбар, но скролл остаётся доступен жестом */
    scrollbar-width: none;
  }
  [data-aacat] .breadcrumbs-cat::-webkit-scrollbar { display: none; }

  [data-aacat] .breadcrumbs-cat__inner {
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    white-space: nowrap;
    visibility: visible !important;
    gap: 4px;
    font-size: 12px !important;
    line-height: 1.3 !important;
  }

  /* H1 на моб — компактнее */
  [data-aacat] .page-title-local {
    font-size: 22px !important;
    line-height: 1.2 !important;
    margin: 8px 0 16px !important;
    letter-spacing: -0.005em;
  }

  /* Trust-карточки «5,0 в Яндексе» / «15 лет на рынке» — на моб в строку,
     по 50% ширины каждая. Контент остаётся слева-направо: иконка + текст. */
  [data-aacat] .hero-trust__side {
    flex-direction: row !important;
    flex-wrap: wrap;
    gap: 8px !important;
  }
  [data-aacat] .hero-trust__side {
    gap: 6px !important;
  }
  /* На моб stat-карточки идут только внутрь overlay (см. initTrustOverlay)
     — здесь только базовые сбросы. flex/width/padding overlay-стилизует
     ниже, в правилах .hero-trust__overlay .hero-trust__stat. */
  [data-aacat] .hero-trust__stat {
    min-height: 0 !important;
    height: auto !important;
    align-items: center !important;
  }
  [data-aacat] .hero-trust__stat-icon {
    width: 22px !important;
    height: 22px !important;
    min-width: 0 !important;
  }
  [data-aacat] .hero-trust__stat-icon svg {
    width: 11px !important;
    height: 11px !important;
  }
  [data-aacat] .hero-trust__stat-num {
    font-size: 12px !important;
    line-height: 1.15 !important;
  }
  [data-aacat] .hero-trust__stat-sub {
    font-size: 10px !important;
    line-height: 1.15 !important;
    margin-top: 0 !important;
  }
  [data-aacat] .hero-trust__stat-body {
    line-height: 1.15 !important;
  }
  /* CTA-кнопка под ними — на всю ширину */
  [data-aacat] .hero-trust__cta {
    width: 100%;
    flex-basis: 100%;
  }

  /* Блок «кейсы» на моб: высота по содержимому, case-card 128×128
     с обрезкой картинки (object-fit: cover). Картинка квадратная ровно
     как на десктопе. */
  [data-aacat] .hero-trust__cases {
    min-height: 0 !important;
    max-height: none !important;
    height: auto !important;
    padding: 12px 12px 12px 14px !important;
    gap: 6px !important;
  }
  [data-aacat] .hero-trust .hero-trust__cases .hero-trust__cases-scroll .case-card,
  [data-aacat] .hero-trust__cases-scroll .case-card.case-card {
    width: 128px !important;
    height: 128px !important;
    min-width: 128px !important;
    max-width: 128px !important;
    min-height: 128px !important;
    max-height: 128px !important;
    aspect-ratio: 1 / 1 !important;
    flex: 0 0 128px !important;
  }
  [data-aacat] .case-card img {
    width: 128px !important;
    height: 128px !important;
    max-width: 128px !important;
    max-height: 128px !important;
    object-fit: cover !important;
  }
  [data-aacat] .case-card__title {
    font-size: 11px !important;
  }
}

/* =========================================================================
   Кнопка «Смотреть каталог» — добавляется JS-ом в .hero-trust__side
   слева от CTA «Оставить заявку». Видна только на моб, скроллит к листингу
   (см. cat-2026-script.js → initMobileCatalogBtn).
   ========================================================================= */
[data-aacat] .hero-trust__catalog-btn{
  display: none;
}
@media (max-width: 768px){
  /* Две кнопки в одной строке — не переносим даже при узких экранах */
  [data-aacat] .hero-trust__side{
    flex-wrap: nowrap !important;
  }
  /* Ghost-стиль: secondary к фиолетовой CTA, без обводки */
  [data-aacat] .hero-trust__catalog-btn{
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    flex: 1 1 0;
    min-width: 0;
    padding: 12px 14px;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: -0.002em;
    color: #1a1a1a;
    background: #fff;
    border: none;
    border-radius: 14px;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: background .15s ease;
  }
  [data-aacat] .hero-trust__catalog-btn:active{
    background: #f4f4f5;
  }
  /* Перебиваем width:100% у CTA, чтобы делила место с новой кнопкой 50/50 */
  [data-aacat] .hero-trust__side .hero-trust__cta{
    width: auto !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
  }
}

/* =========================================================================
   Анти-CLS: заранее проставляем те margin, которые иначе jQuery навешивает
   после загрузки через addClass('less_margin') / addClass('less_margin_bottom')
   (см. modules/category.php:382, :3061). Без этого блок прыгает по высоте
   при первом рендере — карточки сдвигаются на 5px вниз, плитки получают
   нижний отступ 35px. Значения дублируют add2024.css → .less_margin*.
   ========================================================================= */
[data-aacat] .catalog__listing{ margin-top: 5px !important; }
[data-aacat] .catalog__top-links{ margin-bottom: 35px !important; }

/* =========================================================================
   Сортировка («Популярные / Подешевле / Подороже») — стиль маркетплейса:
   серая пилюля-триггер с шевроном вниз; раскрытое меню — белый блок со
   скруглением и тенью; активный пункт отмечен жёлтым кольцом-радио с
   чёрной точкой по центру (Я.Маркет-стиль).
   ========================================================================= */

/* Триггер-кнопка — пилюля с тонкой обводкой */
[data-aacat] .listing__filter-head{
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  padding: 8px 14px !important;
  background: #f4f4f5 !important;
  color: #1a1a1a !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  border-radius: 100px !important;
  border: 1px solid #e5e7eb !important;
  cursor: pointer;
  transition: background .15s ease, border-color .15s ease;
}
[data-aacat] .listing__filter-head:hover{
  background: #ececee !important;
  border-color: #d1d5db !important;
}
/* Шеврон — тонкий, плавный поворот при раскрытии */
[data-aacat] .listing__filter-head svg{
  width: 12px;
  height: 12px;
  flex: none;
  transition: transform .18s ease;
}
[data-aacat] .listing__filter:hover .listing__filter-head svg,
[data-aacat] .listing .filter--open .listing__filter-head svg{
  transform: rotate(180deg);
}

/* Дропдаун — компактный (как было раньше) */
[data-aacat] .listing__filter-content{
  padding: 6px !important;
  gap: 0 !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .08), 0 2px 6px rgba(0, 0, 0, .04) !important;
  border: none !important;
  min-width: 170px !important;
}

/* Пункт меню */
[data-aacat] .listing__filter-item{
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 10px !important;
  border-radius: 8px !important;
  cursor: pointer;
  transition: background .12s ease;
}
[data-aacat] .listing__filter-item:hover{
  background: #f5f5f7 !important;
}

/* Радио — неактивное: тонкая серая обводка, белый центр */
[data-aacat] .listing .filter-item__checkbox{
  width: 16px !important;
  height: 16px !important;
  border: 1.5px solid #e0e0e0 !important;
  background: #fff !important;
  border-radius: 50%;
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background .12s ease, border-color .12s ease;
}
[data-aacat] .listing .filter-item__checkbox span{
  width: 0 !important;
  height: 0 !important;
  background: #705ABF !important;
  border-radius: 50%;
  transition: width .12s ease, height .12s ease;
}

/* Радио — активное: фиолетовая обводка, фиолетовая точка */
[data-aacat] .listing .filter-item--active .filter-item__checkbox{
  border-color: #705ABF !important;
}
[data-aacat] .listing .filter-item--active .filter-item__checkbox span{
  width: 8px !important;
  height: 8px !important;
}

/* Текст */
[data-aacat] .listing .filter-item__text{
  font-size: 14px !important;
  line-height: 1.3 !important;
  color: #1a1a1a !important;
  font-weight: 400;
}
[data-aacat] .listing .filter-item--active .filter-item__text{
  font-weight: 600;
}

/* =========================================================================
   Иконки sort/filter в моб-кнопках листинга — равняем размер по контексту
   .listing__top-link (~24px у старой иконки), новые SVG отдаём 20×20.
   ========================================================================= */
[data-aacat] .listing__top-link .listing__top-icon{
  width: 20px;
  height: 20px;
  color: #3b3b3b;
}

/* =========================================================================
   Модалка фильтров — центрированный диалог. Открывается из .listing__top-link2
   на ≤991px. Внутри — фильтр цены и sticky-кнопка «Применить».
   ========================================================================= */
.aa-filter-modal{
  position: fixed;
  inset: 0;
  z-index: 1100;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
  visibility: hidden;
  pointer-events: none;
}
.aa-filter-modal.is-open{
  visibility: visible;
  pointer-events: auto;
}
.aa-filter-modal__backdrop{
  position: absolute;
  inset: 0;
  background: rgba(20, 20, 22, .55);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  opacity: 0;
  transition: opacity .22s ease;
}
.aa-filter-modal.is-open .aa-filter-modal__backdrop{
  opacity: 1;
}
.aa-filter-modal__sheet{
  position: relative;
  width: 100%;
  max-width: 460px;
  /* min-height чтобы хватило места под header + контент + footer с воздухом,
     даже если фильтр один. max-height ограничивает на больших устройствах.
     На мобиле min-height обнуляем — модалка должна сжиматься по контенту. */
  min-height: 440px;
  max-height: calc(100vh - 32px);
  background: #fff !important;
  /* Перебиваем глобальный фон #f5f5f7 от скоупа [data-aacat] */
  border-radius: 20px;
  box-shadow: 0 24px 64px rgba(0, 0, 0, .18), 0 6px 16px rgba(0, 0, 0, .08);
  display: flex;
  flex-direction: column;
  opacity: 0;
  transform: translateY(12px) scale(.98);
  transition: opacity .22s ease, transform .22s ease;
  -webkit-overflow-scrolling: touch;
  overflow: hidden; /* чтобы скруглённые углы не обрезались скроллбаром */
}
@media (max-width: 768px){
  .aa-filter-modal__sheet{ min-height: 0 !important; }
}
.aa-filter-modal.is-open .aa-filter-modal__sheet{
  opacity: 1;
  transform: translateY(0) scale(1);
}
.aa-filter-modal__head{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 22px 22px 14px;
  flex: none;
}
.aa-filter-modal__title{
  font-size: 20px;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #1a1a1a;
  margin: 0;
}
.aa-filter-modal__close{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: #f4f4f5;
  border: none;
  border-radius: 50%;
  color: #1a1a1a;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: background .15s ease;
}
.aa-filter-modal__close:hover{
  background: #ececee;
}
.aa-filter-modal__close:active{
  background: #e0e0e2;
}
.aa-filter-modal__body{
  flex: 1;
  min-height: 0;
  overflow-y: auto;
  padding: 8px 22px 22px;
}
.aa-filter-modal__foot{
  flex: none;
  padding: 16px 22px calc(20px + env(safe-area-inset-bottom, 0px));
  background: #fff;
  border-top: 1px solid #f0f0f0;
}
.aa-filter-modal__apply{
  display: block;
  width: 100%;
  padding: 16px 20px;
  background: #705ABF;
  color: #fff;
  border: none;
  border-radius: 14px;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.002em;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: background .15s ease;
}
.aa-filter-modal__apply:hover{
  background: #6249b0;
}
.aa-filter-modal__apply:active{
  background: #5d49a8;
}

/* --- Тюнинг внутренних элементов фильтра под модалку --- */
/* Заголовок группы — крупнее, с правильным отступом до инпутов */
.aa-filter-modal__body .aa-sidebar__filter-title{
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #1a1a1a !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
}
/* Инпуты от/до — дышат больше */
.aa-filter-modal__body .aa-sidebar__price-inputs{
  display: flex !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
}
.aa-filter-modal__body .aa-sidebar__input{
  flex: 1 1 0 !important;
  min-width: 0 !important;
  padding: 12px 14px !important;
  font-size: 15px !important;
  background: #f4f4f5 !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  color: #1a1a1a !important;
  transition: background .15s ease, border-color .15s ease !important;
}
.aa-filter-modal__body .aa-sidebar__input:focus{
  outline: none !important;
  background: #fff !important;
  border-color: #705ABF !important;
}
/* Слайдер с двумя ползунками — комфортная высота, чтобы кружки не упирались */
.aa-filter-modal__body .aa-sidebar__range{
  margin: 6px 4px 4px !important;
  height: 28px !important;
}
/* Группа фильтра — нижний отступ, чтобы между группами был воздух */
.aa-filter-modal__body .aa-sidebar__filter-group + .aa-sidebar__filter-group{
  margin-top: 24px !important;
  padding-top: 24px !important;
  border-top: 1px solid #f0f0f0 !important;
}

/* =========================================================================
   Префикс «от/до» в инпутах фильтра цены (sidebar). Span абсолютно поверх
   инпута, инпут получает левый padding под текст префикса.
   ========================================================================= */
[data-aacat] .aa-sidebar__input-wrap{
  position: relative;
  flex: 1 1 0;
  min-width: 0;
}
[data-aacat] .aa-sidebar__input-prefix{
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: #86868b;
  font-size: 14px;
  line-height: 1;
  pointer-events: none;
  user-select: none;
}
[data-aacat] .aa-sidebar__input-wrap > .aa-sidebar__input{
  width: 100%;
  padding-left: 36px !important;
}

/* =========================================================================
   Middle-banner внутри листинга шаблона 2026 — без верхнего padding.
   ========================================================================= */
[data-aacat] .listing-row.listing-row-middle-banners{
  padding-top: 0 !important;
}

/* На моб .listing-row становится flex-direction: column (см. правила выше),
   но дочерние .listing-row__item имеют width:0 !important; flex:1 1 0
   из desktop-правил — в колонке они схлопываются в ноль и баннер не виден.
   Сбрасываем width/flex на моб, чтобы карточки баннера занимали полную
   ширину контейнера и шли друг под другом. */
@media (max-width: 768px){
  [data-aacat] .listing__items .listing-row .listing-row__item,
  [data-aacat] .aa-cards .listing-row .listing-row__item{
    width: 100% !important;
    flex: 0 0 auto !important;
    height: auto !important;
    min-height: 158px;
  }
}

/* =========================================================================
   Sticky-поведение .listing__top на мобилке (≤768px).
   При скролле вниз header уезжает наверх (transform translateY(-100%)),
   а .listing__top прибивается к верху на матовой полупрозрачной подложке.
   При скролле вверх — header возвращается, .listing__top отрепляется.
   Логика навешивает классы из cat-2026-script.js. Чтобы фон был именно
   на pinned-баре, а не на исходной позиции, glass-стилизация только
   при .aa-listing-top-stuck.
   ========================================================================= */
@media (max-width: 768px){
  /* Header — плавный hide/show. Перебиваем .header (position:fixed) только
     transform — позиция и z-index остаются от глобальных стилей. */
  .header.aa-header-hidden{
    transform: translateY(-100%) !important;
  }
  .header{
    transition: transform .25s ease;
    will-change: transform;
  }

  /* listing__top в stuck-режиме: fixed к верху, поверх контента,
     с матовой подложкой и горизонтальным паддингом (как у боди). */
  [data-aacat] .listing__top{
    transition: transform .25s ease;
    will-change: transform;
  }
  [data-aacat] .listing__top.aa-listing-top-stuck{
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 22 !important; /* выше .header (z-index 21) */
    margin: 0 !important;
    padding: 10px 12px !important;
    background: rgba(245, 245, 247, .82) !important;
    -webkit-backdrop-filter: blur(14px) saturate(140%);
    backdrop-filter: blur(14px) saturate(140%);
    box-shadow: 0 1px 0 rgba(0, 0, 0, .04), 0 8px 16px rgba(0, 0, 0, .04);
  }
  /* Стартовое смещение для плавного появления — задаём через JS rAF. */
  [data-aacat] .listing__top.aa-listing-top-stuck.aa-listing-top-enter{
    transform: translateY(-100%) !important;
  }
}

/* ============================================================
   КАРТОЧКА-СЦЕНАРИЙ В ЛИСТИНГЕ (.aa-card--scenario) — изолированный модификатор.
   ============================================================ */
/* dense: карточки-сценарии сдвигают счёт элементов, и строка-баннер (grid-column:1/-1)
   может оставить неполный ряд перед собой → dense заполняет дыру последующими карточками.
   Без дыр dense ничего не двигает — на категориях без карточек/баннеров порядок не меняется. */
[data-aacat] .listing__items, [data-aacat] .aa-cards { grid-auto-flow: dense !important; }
[data-aacat] .aa-card--scenario {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 10px;
  text-decoration: none;
  color: inherit;
  border-radius: 0;
  overflow: visible;
  background: transparent;
  transition: transform .25s ease;
}
[data-aacat] .aa-card--scenario:hover { transform: translateY(-3px); }
[data-aacat] .aa-card--scenario .aa-card__img {
  position: relative;
  aspect-ratio: 1 / 1;
  background: #f1f1f5;
  overflow: hidden;
  display: block;
  isolation: isolate;
  border-radius: 16px;
}
/* убираем hover-кнопку «Подробнее →» товарной карточки (CSS ::after) на scenario-карточке */
[data-aacat] .aa-card--scenario .aa-card__img::after { content: none !important; display: none !important; }
[data-aacat] .aa-card--scenario .scn-photo {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .6s cubic-bezier(.22, 1, .36, 1);
}
[data-aacat] .aa-card--scenario:hover .scn-photo { transform: scale(1.04); }
[data-aacat] .aa-card--scenario .aa-card__img::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(to bottom, rgba(0,0,0,0) 35%, rgba(0,0,0,.35) 70%, rgba(0,0,0,.55) 100%);
  pointer-events: none;
}
[data-aacat] .aa-card--scenario .scn-overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  padding: 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  text-align: left;
}
[data-aacat] .aa-card--scenario .scn-overlay__name {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: -0.012em;
  color: #fff;
  text-shadow: 0 2px 12px rgba(0,0,0,0.35);
}
[data-aacat] .aa-card--scenario .aa-card__content {
  padding: 0;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
}
[data-aacat] .aa-card--scenario .scn-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  width: fit-content;
  padding: 10px 18px;
  background: #fff;
  border-radius: 999px;
  font-size: 13.5px;
  font-weight: 600;
  color: #1a1a1a;
  letter-spacing: -0.003em;
  transition: transform .2s ease;
}
[data-aacat] .aa-card--scenario .scn-btn svg { width: 14px; height: 14px; transition: transform .2s ease; }
[data-aacat] .aa-card--scenario:hover .scn-btn svg { transform: translateX(3px); }
@media (max-width: 768px) {
  [data-aacat] .aa-card--scenario .scn-overlay__name { font-size: 18px; }
  [data-aacat] .aa-card--scenario .scn-overlay { padding: 32px 12px 12px; }
  [data-aacat] .aa-card--scenario .scn-btn { padding: 9px 16px; font-size: 12.5px; }
}
