.breakdance .bde-section-593-100 > .section-container{
  padding-top:0!important;
}

.xcat-root{
  width:calc(100vw - 64px);
  max-width:1500px;

  transform:translateX(-50%);
  color:#111827;
  box-sizing:border-box;

}

.xcat-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  margin:0 0 18px;
}

.xcat-open-filters{
  display:none;
}

.xcat-sort{
  appearance:none;
  min-width:210px;
  height:42px;
  border:1px solid #e5eaf2;
  border-radius:14px;
  background:#fff;
  color:#111827;
  padding:0 38px 0 14px;
  font-size:14px;
  font-weight:650;
  cursor:pointer;
  box-shadow:0 1px 2px rgba(15,23,42,.04);
}

.xcat-layout{
  display:grid;
  grid-template-columns:250px minmax(0,1fr);
  gap:26px;
  align-items:start;
}

.xcat-filters{
  position:sticky;
  top:16px;
  background:#fff;
  border:1px solid #e7edf5;
  border-radius:18px;
  padding:14px;
  box-shadow:0 14px 34px rgba(15,23,42,.045);
}

.xcat-filters-close{
  display:none;
}

.xcat-filter-block{
  border-bottom:1px solid #eef2f7;
  padding:0 0 10px;
  margin:0 0 10px;
}

.xcat-filter-title{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  min-height:38px!important;
  height:auto!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#111827!important;
  padding:8px 0!important;
  text-align:left!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:750!important;
  cursor:pointer!important;
}

.xcat-filter-content{
  display:none;
}

.xcat-check{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:28px;
  font-size:13px;
  font-weight:600;
  cursor:pointer;
}

.xcat-check input{
  width:15px;
  height:15px;
  accent-color:#24b34b;
}

.xcat-price-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}

.xcat-price-row input{
  width:100%;
  min-width:0;
  height:36px;
  border:1px solid #e5eaf2;
  border-radius:10px;
  padding:0 10px;
  font-size:13px;
  font-weight:650;
}

.xcat-reset{
  width:100%;
  height:40px;
  border:1px solid #e5eaf2;
  border-radius:12px;
  background:#f8fafc;
  color:#111827;
  font-size:13px;
  font-weight:750;
  cursor:pointer;
}

.xcat-results{
  min-width:0;
}

.xcat-status{
  display:flex;
  justify-content:flex-end;
  margin:0 0 12px;
  color:#64748b;
  font-size:13px;
  font-weight:650;
}

.xcat-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
}

.xcat-more{
  display:block;
  min-width:190px;
  height:44px;
  margin:28px auto 0;
  border:1px solid #dce5ef;
  border-radius:14px;
  background:#fff;
  color:#111827;
  font-size:14px;
  font-weight:800;
  cursor:pointer;
}

.xcat-more:disabled{
  opacity:.55;
  cursor:default;
}

.xcat-empty{
  grid-column:1 / -1;
  padding:34px;
  border:1px solid #e7edf5;
  border-radius:18px;
  background:#fff;
  text-align:center;
  font-weight:700;
}

@media(max-width:1180px){
  .xcat-layout{
    grid-template-columns:220px minmax(0,1fr);
    gap:18px;
  }

  .xcat-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
  }
}

@media(max-width:767px){
  .xcat-root{
    width:calc(100vw - 20px);
  }

  .xcat-top{
    align-items:stretch;
  }

  .xcat-open-filters{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height:42px;
    border:1px solid #e5eaf2;
    border-radius:14px;
    background:#fff;
    padding:0 14px;
    font-size:13px;
    font-weight:800;
  }

  .xcat-sort{
    min-width:0;
    width:100%;
  }

  .xcat-layout{
    display:block;
  }

  .xcat-filters{
    position:fixed;
    inset:0 auto 0 0;
    z-index:99999;
    width:min(86vw,340px);
    overflow:auto;
    border-radius:0 18px 18px 0;
    transform:translateX(-105%);
    transition:transform .2s ease;
  }

  .xcat-filters.is-open{
    transform:translateX(0);
  }

  .xcat-filters-close{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:42px;
    margin:0 0 12px;
    border:1px solid #e5eaf2;
    border-radius:12px;
    background:#f8fafc;
    font-size:13px;
    font-weight:800;
  }

  .xcat-status{
    justify-content:flex-start;
  }

  .xcat-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }
}
/* ===================== XCAT LAYOUT ONLY ===================== */

.xcat-root{
  margin:28px auto 0;
  width:min(1500px, calc(100vw - 72px));
  max-width:none;
color:#111827;
  box-sizing:border-box;
  clear:both;
  transform:none;

}

.xcat-root,
.xcat-root *{
  box-sizing:border-box;
}

.xcat-layout{
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  gap:28px!important;
  align-items:start!important;
  width:100%!important;
}

.xcat-results{
  min-width:0!important;
  width:100%!important;
}

.xcat-grid.xport-product-card-grid{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
  width:100%!important;
}

.xcat-filter-content{
  display:none;
}

.xcat-filter-title{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  width:100%!important;
  min-height:38px!important;
  height:auto!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  color:#111827!important;
  padding:8px 0!important;
  text-align:left!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:750!important;
  cursor:pointer!important;
}

@media(max-width:1180px){
  .xcat-root{
    width:calc(100vw - 32px);
  }

  .xcat-layout{
    grid-template-columns:260px minmax(0,1fr)!important;
    gap:18px!important;
  }

  .xcat-grid.xport-product-card-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
  }
}

@media(max-width:767px){
  .xcat-root{    margin:28px 10px 0!important;

    width:calc(100vw - 20px)!important;
  }

  .xcat-layout{
    display:block!important;
  }

  .xcat-grid.xport-product-card-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
}
/* ===================== XCAT PRODUCT CARD CONTEXT ===================== */

.xcat-root .xport-product-card-grid--catalog{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:24px!important;
  align-items:stretch!important;
}

@media(max-width:1180px){
  .xcat-root .xport-product-card-grid--catalog{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
  }
}

@media(max-width:767px){
  .xcat-root .xport-product-card-grid--catalog{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }

  

  

  
}
/* ===================== XCAT VISIBLE TEST STAGE ===================== */

.xcat-stage{
  width:min(1500px, calc(100vw - 72px));
  margin:64px auto 0;
  padding:24px;
  border:2px solid #24b34b;
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdfc 100%);
  box-shadow:0 24px 70px rgba(15,23,42,.08);
  clear:both;
}

.xcat-stage-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 22px;
  padding:0 0 18px;
  border-bottom:1px solid #e7edf5;
}

.xcat-stage-head span{
  display:inline-flex;
  align-items:center;
  height:32px;
  padding:0 12px;
  border-radius:999px;
  background:#24b34b;
  color:#fff;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
}

.xcat-stage-head strong{
  color:#111827;
  font-size:22px;
  line-height:1;
  font-weight:850;
}

.xcat-stage .xcat-root{
  width:100%!important;
  margin:0!important;
  max-width:none!important;
  transform:none!important;
}

.xcat-stage .xcat-filters{
  border:1px solid #d8efe0!important;
  background:#f9fffb!important;
}

.xcat-stage .xcat-filter-title{
  color:#0f172a!important;
}

.xcat-stage .xcat-filter-title::after{
  content:"+";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:999px;
  background:#e9f9ee;
  color:#24b34b;
  font-size:16px;
  font-weight:900;
}

.xcat-stage .xcat-filter-title.is-open::after{
  content:"-";
}

.xcat-stage .xcat-check span{
  font-size:13px;
  font-weight:650;
}

@media(max-width:767px){
  .xcat-stage{
    width:calc(100vw - 20px);
    margin:36px 10px 0;
    padding:14px;
    border-radius:18px;
  }

  .xcat-stage-head{
    display:block;
  }

  .xcat-stage-head strong{
    display:block;
    margin-top:10px;
    font-size:18px;
  }
}
/* ===================== XCAT GRID POLISH ===================== */

.xcat-stage{
  width:min(1640px, calc(100vw - 64px))!important;
}

.xcat-stage .xcat-layout,
.xcat-root .xcat-layout{
  grid-template-columns:260px minmax(0,1fr)!important;
  gap:24px!important;
}

.xcat-stage .xcat-filters{
  width:260px!important;
  max-width:260px!important;
  padding:14px!important;
  border-radius:18px!important;
}

.xcat-stage .xcat-filter-block{
  padding:0 0 8px!important;
  margin:0 0 8px!important;
}

.xcat-stage .xcat-filter-title{
  min-height:34px!important;
  padding:6px 0!important;
  font-size:13px!important;
}

.xcat-stage .xcat-filter-title::after{
  width:20px!important;
  height:20px!important;
  font-size:14px!important;
}

.xcat-stage .xcat-check{
  min-height:26px!important;
  gap:8px!important;
  font-size:12.5px!important;
}

.xcat-stage .xcat-check input{
  width:14px!important;
  height:14px!important;
}

.xcat-stage .xcat-price-row input{
  height:34px!important;
  font-size:12.5px!important;
}

.xcat-stage .xport-product-card-grid--catalog{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:22px!important;
}

@media(max-width:1500px){
  .xcat-stage .xport-product-card-grid--catalog{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

@media(max-width:1180px){
  .xcat-stage{
    width:calc(100vw - 32px)!important;
  }

  .xcat-stage .xcat-layout,
  .xcat-root .xcat-layout{
    grid-template-columns:260px minmax(0,1fr)!important;
    gap:18px!important;
  }

  .xcat-stage .xcat-filters{
    width:230px!important;
    max-width:230px!important;
  }

  .xcat-stage .xport-product-card-grid--catalog{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:18px!important;
  }
}

@media(max-width:767px){
  .xcat-stage{
    width:calc(100vw - 20px)!important;
  }

  .xcat-stage .xport-product-card-grid--catalog{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
  }
}
/* ===================== XCAT PRODUCTION STAGE ===================== */

.xcat-stage,
.xcat-stage-head{
  display:contents!important;
}

.xcat-root{
  width:min(1640px, calc(100vw - 64px))!important;
padding:0!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;

}

@media(max-width:767px){
  .xcat-root{    margin:28px 10px 0!important;

    width:calc(100vw - 20px)!important;
  }
}
/* ===================== XCAT NATIVE CATALOG LAYOUT START ===================== */

/*
 * Desktop contract:
 * - every card is exactly 238px;
 * - cards keep a fixed 24px horizontal gap;
 * - auto-fill creates every complete column that fits in the results area;
 * - the complete grid is centered inside the area to the right of filters;
 * - an incomplete final row starts in the first grid column.
 */
@media (min-width:768px){
  .xcat-root .xport-product-card-grid--catalog{
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:repeat(auto-fill,238px)!important;
    justify-content:center!important;
    align-items:stretch!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    gap:22px 24px!important;
  }

  .xcat-root
  .xport-product-card-grid--catalog
  > .xport-product-card{
    box-sizing:border-box!important;
    flex:none!important;
    width:238px!important;
    min-width:238px!important;
    max-width:238px!important;
  }

}

/* Mobile contract remains unchanged: two fluid columns. */
@media (max-width:767px){
  .xcat-root .xport-product-card-grid--catalog{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    justify-content:stretch!important;
    gap:10px!important;
  }

  .xcat-root
  .xport-product-card-grid--catalog
  > .xport-product-card{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
  }
}

/* ===================== XCAT NATIVE CATALOG LAYOUT END ===================== */

/* ===================== XCAT FILTER UX ===================== */

.xcat-filters-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 12px;
  padding:2px 0 12px;
  border-bottom:1px solid #e7edf5;
}

.xcat-filters-head strong{
  color:#0f172a;
  font-size:18px;
  line-height:1;
  font-weight:850;
}

.xcat-hide-filters{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:30px;
  padding:0 10px;
  border:1px solid #dfe8f2;
  border-radius:999px;
  background:#fff;
  color:#475569;
  font-size:12px;
  font-weight:800;
  cursor:pointer;
}

.xcat-filter-block--primary .xcat-filter-content{
  display:block;
}

.xcat-filter-block--extra{
  display:none;
}

.xcat-show-extra-filters .xcat-filter-block--extra{
  display:block;
}

.xcat-more-filters{
  width:100%;
  height:42px;
  margin:8px 0 10px;
  border:1px solid #d8efe0;
  border-radius:13px;
  background:#effaf3;
  color:#14853a;
  font-size:13px;
  font-weight:850;
  cursor:pointer;
}

.xcat-root.xcat-filters-collapsed .xcat-layout{
  grid-template-columns:0 minmax(0,1fr)!important;
  gap:0!important;
}

.xcat-root.xcat-filters-collapsed .xcat-filters{
  opacity:0;
  transform:translateX(-18px);
  pointer-events:none;
  overflow:hidden;
}

.xcat-root.xcat-filters-collapsed .xcat-results{
  position:relative;
}

.xcat-root.xcat-filters-collapsed .xcat-results::before{
  content:"Фильтры";
  position:absolute;
  left:0;
  top:-50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:38px;
  padding:0 14px;
  border:1px solid #d8efe0;
  border-radius:999px;
  background:#effaf3;
  color:#14853a;
  font-size:13px;
  font-weight:850;
  cursor:pointer;
}

.xcat-filter-rail{
  display:none;
}

.xcat-root.xcat-filters-collapsed .xcat-filter-rail{
  display:inline-flex;
}

@media(max-width:767px){
  .xcat-filters-head{
    display:none;
  }

  .xcat-hide-filters{
    display:none;
  }

  .xcat-root.xcat-filters-collapsed .xcat-layout{
    display:block!important;
  }

  .xcat-root.xcat-filters-collapsed .xcat-filters{
    opacity:1;
    transform:translateX(-105%);
    pointer-events:auto;
  }

  .xcat-root.xcat-filters-collapsed .xcat-results::before{
    display:none;
  }
}
/* XCAT real filter restore css start */
.xcat-sorting{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:12px!important;
  flex-wrap:wrap!important;
}

.xcat-filter-restore{
  display:none;
  align-items:center;
  justify-content:center;
  height:40px;
  padding:0 16px;
  border:1px solid #d7eadf;
  border-radius:999px;
  background:#f2fbf5;
  color:#14853a;
  font-size:13px;
  line-height:1;
  font-weight:850;
  white-space:nowrap;
  cursor:pointer;
}

.xcat-root.xcat-filters-collapsed{
  grid-template-columns:minmax(0,1fr)!important;
}

.xcat-root.xcat-filters-collapsed .xcat-filters{
  display:none!important;
}

.xcat-root.xcat-filters-collapsed .xcat-filter-restore{
  display:inline-flex!important;
}

.xcat-root.xcat-filters-collapsed .xcat-results{
  grid-column:1 / -1!important;
}

.xcat-root.xcat-filters-collapsed .xcat-results::before{
  display:none!important;
}

@media(max-width:767px){
  .xcat-filter-restore{
    display:none!important;
  }

  .xcat-root.xcat-filters-collapsed .xcat-filters{
    display:block!important;
  }
}
/* XCAT real filter restore css end */
/* XCAT heading topbar real start */
.xcat-breadcrumbs a{
  color:#6b7280!important;
  text-decoration:none!important;
}

.xcat-breadcrumbs a:hover{
  color:#16a34a!important;
}

.xcat-breadcrumbs__sep{
  color:#c7ced8;
}

@media(min-width:768px){
  .xcat-top{
    grid-column:1 / -1!important;
    display:grid!important;
    grid-template-columns:260px minmax(0,1fr)!important;
    align-items:center!important;
    gap:24px!important;
    margin:0 0 14px!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .xcat-open-filters{
    display:none!important;
  }

  .xcat-sorting{
    grid-column:2!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    min-height:42px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }

  .xcat-sorting .xcat-sort,
  .xcat-sorting select{
    width:auto!important;
    min-width:230px!important;
    height:40px!important;
    margin:0!important;
    border:1px solid #dfe7f0!important;
    border-radius:999px!important;
    background:#fff!important;
    box-shadow:0 8px 20px rgba(15,23,42,.035)!important;
    font-size:13px!important;
    font-weight:850!important;
  }

  .xcat-filter-restore{
    grid-column:1!important;
    display:none!important;
    width:260px!important;
    height:42px!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    padding:0 16px!important;
    border:1px solid #d7eadf!important;
    border-radius:16px!important;
    background:#f2fbf5!important;
    color:#14853a!important;
    font-size:14px!important;
    line-height:1!important;
    font-weight:900!important;
    cursor:pointer!important;
    box-shadow:0 10px 24px rgba(15,23,42,.045)!important;
  }

  .xcat-filter-restore i{
    width:10px;
    height:10px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translateY(-2px);
    transition:transform .18s ease;
  }

  .xcat-root.xcat-filters-collapsed .xcat-filter-restore{
    display:flex!important;
  }

  .xcat-root.xcat-filters-collapsed .xcat-filters{
    display:none!important;
  }

  .xcat-root:not(.xcat-filters-collapsed) .xcat-filter-restore{
    display:none!important;
  }

  .xcat-filters{
    transition:opacity .2s ease, transform .22s ease!important;
  }

  .xcat-root:not(.xcat-filters-collapsed) .xcat-filters{
    opacity:1!important;
    transform:translateY(0)!important;
  }

  .xcat-root.xcat-filters-collapsed .xcat-results{
    grid-column:1 / -1!important;
  }

  .xcat-root.xcat-filters-collapsed .xcat-results::before{
    display:none!important;
  }
}

@media(max-width:767px){
.xcat-filter-restore{
    display:none!important;
  }
}
/* XCAT heading topbar real end */
/* XCAT LANDING BREADCRUMBS START */
.xcat-breadcrumbs a{
  color:#64748b!important;
  text-decoration:none!important;
  transition:color .16s ease, transform .16s ease!important;
}

.xcat-breadcrumbs a:hover{
  color:#16a34a!important;
  transform:translateY(-1px)!important;
}

.xcat-breadcrumbs__sep{
  color:#cbd5e1!important;
}

.xcat-breadcrumbs__current{
  color:#111827!important;
}
/* XCAT LANDING BREADCRUMBS END */
/* ===================== XCAT STABLE LEFT FILTERS FINAL ===================== */

.xcat-top{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  margin:18px 0 24px!important;
}

.xcat-sorting{
  width:230px!important;
  max-width:230px!important;
  height:44px!important;
  display:flex!important;
  align-items:center!important;
  border:1px solid #dfe7f1!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(15,23,42,.045)!important;
  overflow:hidden!important;
}

.xcat-sorting .xcat-sort,
.xcat-sorting select{
  width:100%!important;
  height:100%!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0 40px 0 16px!important;
  font-size:14px!important;
  font-weight:800!important;
  color:#071225!important;
}

.xcat-body{
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  gap:24px!important;
  align-items:start!important;
}

.xcat-filters{
  width:260px!important;
  max-width:260px!important;
}

.xcat-filters-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:0 0 14px!important;
  margin:0 0 16px!important;
  border-bottom:1px solid #e8edf4!important;
}

.xcat-filters-head strong{
  font-size:20px!important;
  line-height:1.15!important;
  font-weight:900!important;
  color:#071225!important;
}

.xcat-filters-close,
.xcat-hide-filters,
.xcat-filter-rail,
.xcat-filter-restore{
  display:none!important;
}

.xcat-results{
  min-width:0!important;
}

.xcat-count{
  display:block!important;
  text-align:right!important;
  margin:0 0 12px!important;
}

@media (max-width:767px){
  .xcat-top{
    justify-content:stretch!important;
  }

  .xcat-sorting{
    width:100%!important;
    max-width:none!important;
  }

  .xcat-body{
    display:block!important;
  }

  .xcat-filters{
    width:100%!important;
    max-width:none!important;
    margin-bottom:18px!important;
  }
}
/* ===================== XCAT COUNT IN BREADCRUMBS FINAL ===================== */

.xcat-breadcrumbs__count{
  margin-left:auto!important;
  color:#64748b!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:800!important;
  white-space:nowrap!important;
}

.xcat-count{
  display:none!important;
}

.xcat-results{
  padding-top:0!important;
}

@media (max-width:767px){
  .xcat-breadcrumbs__count{
    width:100%!important;
    margin-left:0!important;
    margin-top:4px!important;
  }
}
/* ===================== XCAT INLINE BREADCRUMB COUNT FINAL ===================== */

.xcat-breadcrumbs__count{
  display:none!important;
}

.xcat-breadcrumbs__count-inline{
  margin-left:2px!important;
  color:#64748b!important;
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:800!important;
  white-space:nowrap!important;
}

/* ===================== XCAT STABLE LEFT FILTERS CLEAN FINAL ===================== */
.xcat-root{
  max-width:1640px!important;
  width:100%!important;
}

.xcat-top{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  margin:0 0 24px!important;
  padding:0!important;
}

.xcat-sorting{
  width:230px!important;
  max-width:230px!important;
  margin:0!important;
}

.xcat-body{
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  align-items:start!important;
  column-gap:24px!important;
  margin:0!important;
  padding:0!important;
}

.xcat-filters{
  display:block!important;
  position:static!important;
  width:260px!important;
  max-width:260px!important;
  margin:0!important;
  padding:16px!important;
  opacity:1!important;
  transform:none!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

.xcat-results{
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  align-self:start!important;
}

.xcat-count{
  display:none!important;
}

.xcat-grid,
.xcat-root .xport-product-card-grid--catalog,
.xcat-root.xcat-filters-collapsed .xcat-grid,
.xcat-root.xcat-filters-collapsed .xport-product-card-grid--catalog{
  margin:0!important;
  padding:0!important;
  width:100%!important;
}

.xcat-filter-restore,
.xcat-filter-rail,
.xcat-filter-pill{
  display:none!important;
}

@media (max-width:767px){
  .xcat-root{
    width:calc(100% - 20px)!important;
  }

  .xcat-top{
    justify-content:flex-start!important;
    margin-bottom:14px!important;
  }

  .xcat-body{
    display:block!important;
  }

  .xcat-filters{
    width:100%!important;
    max-width:none!important;
    margin:0 0 18px!important;
  }
}

/* ===================== XCAT RESTORE FILTER STICKY FINAL ===================== */
@media (min-width:768px){
  .xcat-filters{
    position:sticky!important;
    top:18px!important;
    align-self:start!important;
    z-index:5!important;
  }
}

@media (max-width:767px){
  .xcat-filters{
    position:static!important;
    top:auto!important;
  }
}

/* ===================== XCAT ADMIN BAR STICKY OFFSET FINAL ===================== */
@media (min-width:768px){
  body.admin-bar .xcat-filters{
    top:50px!important;
  }
}

/* ===================== XCAT BREADCRUMB SORT ROW FINAL ===================== */
@media (min-width:768px){
  .xcat-root{
    position:relative!important;
  }

.xcat-top{
    position:absolute!important;
    top:0!important;
    right:0!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
    z-index:3!important;
  }

  .xcat-sorting{
    width:230px!important;
    max-width:230px!important;
    margin:0!important;
  }

  .xcat-sort{
    width:100%!important;
    height:44px!important;
    background:#fff!important;
    color:#0f172a!important;
    border:1px solid #dbe4ee!important;
    box-shadow:0 10px 24px rgba(15,23,42,.045)!important;
    outline:none!important;
  }

  .xcat-sort:hover{
    border-color:#cbd5e1!important;
    box-shadow:0 12px 28px rgba(15,23,42,.06)!important;
  }

  .xcat-sort:focus,
  .xcat-sort:active,
  .xcat-sort:focus-visible{
    color:#0f172a!important;
    background:#fff!important;
    border-color:#22c55e!important;
    outline:none!important;
    box-shadow:0 0 0 3px rgba(34,197,94,.12), 0 12px 28px rgba(15,23,42,.06)!important;
  }

  .xcat-body{
    margin-top:0!important;
    align-items:flex-start!important;
  }

  .xcat-filters{
    margin-top:12px!important;
  }

  .xcat-results{
    margin-top:0!important;
    padding-top:0!important;
  }
}

@media (max-width:767px){
.xcat-top{
    position:static!important;
    width:100%!important;
    margin:0 0 14px!important;
  }

  .xcat-sorting{
    width:100%!important;
    max-width:none!important;
  }

  .xcat-sort:focus,
  .xcat-sort:active,
  .xcat-sort:focus-visible{
    background:#fff!important;
    color:#0f172a!important;
    border-color:#22c55e!important;
    outline:none!important;
    box-shadow:0 0 0 3px rgba(34,197,94,.12)!important;
  }

  .xcat-filters{
    margin-top:0!important;
  }
}
/* ===================== XCAT REAL CATALOG ROW LOWER FINAL ===================== */
@media (min-width:768px){
  .xcat-root > .xcat-filters,
  .xcat-root > .xcat-results{
    margin-top:34px!important;
  }

  .xcat-root > .xcat-filters{
    top:92px!important;
  }

  body.admin-bar .xcat-root > .xcat-filters{
    top:124px!important;
  }
}

@media (max-width:767px){
  .xcat-root > .xcat-filters,
  .xcat-root > .xcat-results{
    margin-top:0!important;
  }
}
/* ===================== XCAT ENGINE HEADER GRID FINAL ===================== */
@media (min-width: 768px){
  .xcat-root{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 360px!important;
    column-gap:24px!important;
    row-gap:22px!important;
    align-items:center!important;
  }

  .xcat-root > .xcat-breadcrumbs{
    grid-column:1 / 2!important;
    grid-row:1!important;
    margin:0!important;
    align-self:center!important;
  }

  .xcat-root > .xcat-top{
    grid-column:2 / 3!important;
    grid-row:1!important;
    position:static!important;
    inset:auto!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    z-index:1!important;
    display:block!important;
    align-self:center!important;
    justify-self:stretch!important;
  }

  .xcat-root > .xcat-layout{
    grid-column:1 / -1!important;
    grid-row:2!important;
    margin:0!important;
    padding:0!important;
    align-items:flex-start!important;
  }

  .xcat-top .xcat-sorting,
  .xcat-top .xcat-sort{
    width:100%!important;
    max-width:none!important;
  }

  .xcat-count{
    display:none!important;
  }
}

@media (max-width: 767px){
  .xcat-root{
    display:block!important;
  }

  .xcat-root > .xcat-top{
    position:static!important;
    width:100%!important;
    margin:14px 0 18px!important;
    transform:none!important;
  }

  .xcat-top .xcat-sorting,
  .xcat-top .xcat-sort{
    width:100%!important;
  }

  .xcat-count{
    display:none!important;
  }
}

/* XCAT MOBILE FILTER DRAWER START */
.xcat-mobile-filter-handle,
.xcat-mobile-filter-overlay{
  display:none;
}

/* Стабильная сортировка на ПК. */
.xcat-sorting{
  display:grid!important;
  grid-template-columns:max-content minmax(170px,230px)!important;
  align-items:center!important;
  gap:8px!important;
  width:max-content!important;
  min-height:44px!important;
  padding:0 10px!important;
  border:1px solid #dbe4ee!important;
  border-radius:12px!important;
  background:#fff!important;
  box-shadow:0 8px 24px rgba(15,23,42,.04)!important;
}

.xcat-sort-label{
  color:#64748b!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:600!important;
  white-space:nowrap!important;
}

.xcat-sort{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  height:42px!important;
  margin:0!important;
  padding:0 30px 0 0!important;
  border:0!important;
  outline:0!important;
  background-color:transparent!important;
  box-shadow:none!important;
  color:#111827!important;
  font-family:inherit!important;
  font-size:13px!important;
  line-height:42px!important;
  font-weight:700!important;
}

@media (max-width:767px){
  .xcat-root{
    --xcat-mobile-drawer-width:min(calc(100vw - 34px),360px);
  }

  .xcat-open-filters,
  .xcat-filter-restore,
  .xcat-filters-close{
    display:none!important;
  }

  .xcat-top{
    display:flex!important;
    justify-content:flex-end!important;
    width:100%!important;
    margin:0 0 18px!important;
    padding:0!important;
  }

  .xcat-sorting{
    grid-template-columns:max-content minmax(0,1fr)!important;
    width:100%!important;
    max-width:none!important;
    padding:0 12px!important;
  }

  /* Единая центрированная панель. */
  .xcat-root > .xcat-filters,
  .xcat-root .xcat-filters{
    display:block!important;
    position:fixed!important;
    z-index:100002!important;
    top:50%!important;
    bottom:auto!important;
    left:0!important;
    width:var(--xcat-mobile-drawer-width)!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    max-height:88dvh!important;
    margin:0!important;
    padding:18px 16px 20px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    touch-action:pan-y!important;
    background:#fff!important;
    border:1px solid #e4eaf1!important;
    border-left:0!important;
    border-radius:0 18px 18px 0!important;
    box-shadow:none!important;
    transform:translate3d(-100%,-50%,0)!important;
    visibility:visible!important;
    pointer-events:none!important;
    transition:transform .28s cubic-bezier(.22,.8,.24,1)!important;
    will-change:transform!important;
  }

  .xcat-root.xcat-mobile-filters-open > .xcat-filters,
  .xcat-root.xcat-mobile-filters-open .xcat-filters{
    transform:translate3d(0,-50%,0)!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transition:transform .28s cubic-bezier(.22,.8,.24,1)!important;
  }

  .xcat-filters.is-dragging{
    transition:none!important;
  }

  .xcat-filters-head{
    position:sticky!important;
    z-index:2!important;
    top:-18px!important;
    margin:0 0 12px!important;
    padding:18px 0 14px!important;
    background:#fff!important;
  }

  .xcat-mobile-filter-overlay{
    display:block!important;
    position:fixed!important;
    z-index:100001!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:rgba(15,23,42,.22)!important;
    backdrop-filter:blur(1.5px)!important;
    -webkit-backdrop-filter:blur(1.5px)!important;
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:
      opacity .22s ease,
      visibility 0s linear .22s!important;
  }

  .xcat-root.xcat-mobile-filters-open > .xcat-mobile-filter-overlay{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transition:
      opacity .22s ease,
      visibility 0s!important;
  }

  /* Ярлык движется тем же transform, что и панель. */
  .xcat-mobile-filter-handle{
    display:flex!important;
    position:fixed!important;
    z-index:100003!important;
    top:50%!important;
    left:0!important;
    width:27px!important;
    height:128px!important;
    padding:10px 0 30px!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid #cfe8d8!important;
    border-left:0!important;
    border-radius:0 12px 12px 0!important;
    background:rgba(244,252,247,.98)!important;
    color:#14883d!important;
    box-shadow:
      5px 8px 18px rgba(15,23,42,.08),
      inset -1px 0 0 rgba(255,255,255,.75)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    cursor:pointer!important;
    transform:translate3d(0,-50%,0)!important;
    transition:
      transform .28s cubic-bezier(.22,.8,.24,1),
      background-color .18s ease,
      box-shadow .18s ease!important;
    will-change:transform!important;
  }

  .xcat-root.xcat-mobile-filters-open > .xcat-mobile-filter-handle{
    transform:translate3d(var(--xcat-mobile-drawer-width),-50%,0)!important;
    background:#eaf8ef!important;
  }

  .xcat-mobile-filter-handle.is-dragging{
    transition:none!important;
  }

  .xcat-mobile-filter-handle span{
    writing-mode:vertical-rl!important;
    transform:rotate(180deg)!important;
    color:#14883d!important;
    font-size:10px!important;
    line-height:1!important;
    font-weight:700!important;
    white-space:nowrap!important;
  }

  .xcat-mobile-filter-handle i{
    position:absolute!important;
    bottom:12px!important;
    left:50%!important;
    width:7px!important;
    height:7px!important;
    border-top:2px solid currentColor!important;
    border-right:2px solid currentColor!important;
    transform:translateX(-65%) rotate(45deg)!important;
    transition:transform .18s ease!important;
  }

  .xcat-root.xcat-mobile-filters-open > .xcat-mobile-filter-handle i{
    transform:translateX(-35%) rotate(-135deg)!important;
  }

  body.xcat-mobile-filter-lock{
    overflow:hidden!important;
  }
}
/* XCAT MOBILE FILTER DRAWER END */

/* XCAT CANONICAL ADAPTIVE CONTRACT START */

/* Sorting: label and complete option always fit inside one control. */
.xcat-root .xcat-sorting{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:max-content minmax(0,1fr)!important;
  align-items:center!important;
  gap:10px!important;
  width:min(100%,340px)!important;
  min-width:0!important;
  max-width:340px!important;
  height:44px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0 10px 0 14px!important;
  overflow:visible!important;
}

.xcat-root .xcat-sort-label{
  min-width:0!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:600!important;
  white-space:nowrap!important;
}

.xcat-root .xcat-sort{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:42px!important;
  margin:0!important;
  padding:0 26px 0 0!important;
  overflow:hidden!important;
  color:#111827!important;
  background-color:#fff!important;
  box-shadow:none!important;
  font-family:inherit!important;
  font-size:13px!important;
  line-height:42px!important;
  font-weight:700!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
}

.xcat-root .xcat-sort:focus,
.xcat-root .xcat-sort:active,
.xcat-root .xcat-sort:focus-visible{
  color:#111827!important;
  background-color:#fff!important;
  box-shadow:none!important;
  outline:none!important;
}

/* The result column must never slide beneath the filters. */
.xcat-root .xcat-body{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  align-items:start!important;
  column-gap:24px!important;
  width:100%!important;
  min-width:0!important;
}

.xcat-root .xcat-results{
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}

/* Desktop window. */
@media (min-width:1181px) and (max-width:1440px){
  .xcat-root .xcat-body{
    grid-template-columns:240px minmax(0,1fr)!important;
    column-gap:18px!important;
  }

  
}

/* Tablet and narrow desktop window. */
@media (min-width:768px) and (max-width:1180px){
  .xcat-root .xcat-body{
    grid-template-columns:220px minmax(0,1fr)!important;
    column-gap:16px!important;
  }

  

  

  

  

  
}

/* Mobile: two equal cards, fixed title zone and stacked buttons. */
@media (max-width:767px){
  .xcat-root .xcat-sorting{
    position:relative!important;
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    width:100%!important;
    max-width:none!important;
    height:44px!important;
    min-height:44px!important;
    padding:0 38px 0 14px!important;
    border:1px solid #dfe7f1!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }

  .xcat-root .xcat-sorting::after{
    content:""!important;
    position:absolute!important;
    top:50%!important;
    right:15px!important;
    width:7px!important;
    height:7px!important;
    border-right:2px solid #64748b!important;
    border-bottom:2px solid #64748b!important;
    transform:translateY(-65%) rotate(45deg)!important;
    pointer-events:none!important;
  }

  .xcat-root .xcat-sort-label{
    flex:0 0 auto!important;
    color:#64748b!important;
    font-size:12px!important;
    line-height:1!important;
    font-weight:600!important;
    white-space:nowrap!important;
  }

  .xcat-root .xcat-sort{
    appearance:none!important;
    -webkit-appearance:none!important;
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:100%!important;
    height:42px!important;
    padding:0!important;
    border:0!important;
    background:#fff!important;
    color:#0f172a!important;
    box-shadow:none!important;
    font-size:13px!important;
    line-height:42px!important;
    font-weight:700!important;
    text-align:right!important;
    text-align-last:right!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    overflow:hidden!important;
  }

  .xcat-root .xcat-sort option{
    text-align:left!important;
  }

  .xcat-root .xcat-body{
    display:block!important;
    width:100%!important;
    min-width:0!important;
  }

  .xcat-root .xcat-results{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin-right:0!important;
    margin-left:0!important;
  }

  

  

  

  

  

  

  

  .xcat-root .xport-product-card-grid--catalog .xport-product-card__buy,
  
}

/* XCAT CANONICAL ADAPTIVE CONTRACT END */

/* XCAT CUSTOM SORT COMPONENT START */

.xcat-root .xcat-top,
.xcat-root .xcat-sorting.xcat-sorting--custom{
  overflow:visible!important;
}

.xcat-root .xcat-sorting.xcat-sorting--custom{
  box-sizing:border-box!important;
  display:block!important;
  grid-column:2!important;
  width:360px!important;
  min-width:360px!important;
  max-width:360px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  overflow:visible!important;
}

@media(min-width:768px){
  .xcat-root .xcat-top{
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) 360px!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }
}

.xcat-root .xcat-sorting.xcat-sorting--custom::after{
  display:none!important;
}

.xcat-root .xcat-sorting.xcat-sorting--custom > .xcat-sort-label{
  display:none!important;
}

.xcat-root .xcat-sorting > .xcat-sort.xcat-sort--native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  min-width:0!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  opacity:0!important;
  pointer-events:none!important;
}

.xcat-sort-ui{
  position:relative;
  flex:1 1 auto;
  min-width:0;
  height:42px;
}

.xcat-sort-ui__trigger{
  box-sizing:border-box;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  width:100%;
  height:42px;
  margin:0;
  padding:0 14px;
  border:0;
  outline:0;
  background:transparent;
  color:#111827;
  font-family:inherit;
  font-size:13px;
  line-height:1;
  font-weight:700;
  white-space:nowrap;
  cursor:pointer;
}

.xcat-sort-ui__prefix{
  flex:0 0 auto;
  color:#64748b;
  font-size:12px;
  line-height:1;
  font-weight:600;
  white-space:nowrap;
}

.xcat-sort-ui__value{
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  color:#111827;
  text-align:right;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.xcat-sort-ui__chevron{
  flex:0 0 auto;
  width:7px;
  height:7px;
  margin-right:2px;
  margin-left:auto;
  border-right:2px solid #64748b;
  border-bottom:2px solid #64748b;
  transform:translateY(-2px) rotate(45deg);
  transition:transform .18s ease;
}

.xcat-sort-ui.is-open .xcat-sort-ui__chevron{
  transform:translateY(2px) rotate(225deg);
}

.xcat-sort-ui__menu{
  box-sizing:border-box;
  position:absolute;
  z-index:1200;
  top:calc(100% + 8px);
  right:0;
  width:100%;
  min-width:260px;
  max-width:calc(100vw - 32px);
  padding:6px;
  border:1px solid #e1e7ef;
  border-radius:14px;
  background:#fff;
  box-shadow:0 16px 40px rgba(15,23,42,.12);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translateY(-6px) scale(.98);
  transform-origin:top right;
  transition:
    opacity .16s ease,
    transform .16s ease,
    visibility 0s linear .16s;
}

.xcat-sort-ui.is-open .xcat-sort-ui__menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateY(0) scale(1);
  transition:
    opacity .16s ease,
    transform .16s ease,
    visibility 0s;
}

.xcat-sort-ui__option{
  box-sizing:border-box;
  position:relative;
  display:flex;
  align-items:center;
  width:100%;
  min-height:40px;
  margin:0;
  padding:9px 34px 9px 12px;
  border:0;
  border-radius:9px;
  background:#fff;
  color:#172033;
  font-family:inherit;
  font-size:13px;
  line-height:1.25;
  font-weight:600;
  text-align:left;
  cursor:pointer;
  transition:background-color .14s ease,color .14s ease;
}

.xcat-sort-ui__option:hover,
.xcat-sort-ui__option:focus-visible{
  outline:0;
  background:#f4f7fa;
}

.xcat-sort-ui__option.is-selected{
  background:#eef9f2;
  color:#14853a;
  font-weight:700;
}

.xcat-sort-ui__option.is-selected::after{
  content:"";
  position:absolute;
  top:50%;
  right:14px;
  width:8px;
  height:4px;
  border-left:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:translateY(-65%) rotate(-45deg);
}

@media(max-width:767px){
  .xcat-root .xcat-top{
    display:block!important;
    width:100%!important;
  }

  .xcat-root .xcat-sorting.xcat-sorting--custom{
    grid-column:auto!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
  }

  .xcat-sort-ui__menu{
    right:0;
    width:100%;
    min-width:0;
    max-width:100%;
  }

  .xcat-sort-ui__trigger{
    gap:8px;
    padding:0 14px;
  }
}

@media (prefers-reduced-motion:reduce){
}

/* XCAT SEAMLESS BATCH REVEAL START */

/*
 * Новая AJAX-пачка сначала скрыта, затем JS последовательно
 * добавляет xcat-card-ready после готовности изображений.
 */
.xcat-root .xcat-grid .xport-product-card.xcat-card-pending{
  opacity:0;
  transform:translateY(10px);
  transition:
    opacity .28s ease,
    transform .28s ease;
  will-change:opacity,transform;
}

.xcat-root .xcat-grid .xport-product-card.xcat-card-pending.xcat-card-ready{
  opacity:1;
  transform:translateY(0);
}

@media (prefers-reduced-motion:reduce){
  .xcat-root .xcat-grid .xport-product-card.xcat-card-pending,
  .xcat-root .xcat-grid .xport-product-card.xcat-card-pending.xcat-card-ready{
    opacity:1;
    transform:none;
    transition:none;
    will-change:auto;
  }
}

/* XCAT SEAMLESS BATCH REVEAL END */

/* XCAT LOAD MORE FEEDBACK START */

.xcat-more{
  position:relative;
}

.xcat-more.is-loading{
  cursor:wait;
  pointer-events:none;
}

.xcat-more.is-loading::after{
  content:"";
  display:inline-block;
  box-sizing:border-box;
  width:14px;
  height:14px;
  margin-left:9px;
  border:2px solid rgba(15,23,42,.2);
  border-top-color:#111827;
  border-radius:50%;
  vertical-align:-2px;
  animation:xcatLoadMoreSpin .65s linear infinite;
}

@keyframes xcatLoadMoreSpin{
  to{
    transform:rotate(360deg);
  }
}

@media (prefers-reduced-motion:reduce){
  .xcat-more.is-loading::after{
    animation-duration:1.4s;
  }
}

/* XCAT LOAD MORE FEEDBACK END */

/* XCAT FILTER STACKING CONTRACT START */

/*
 * Desktop filter stays inside the catalog stacking context.
 * It cannot cover the site header, navigation or mega menu.
 */
@media (min-width:768px){
  .xcat-root{
    position:relative!important;
    isolation:isolate!important;
    z-index:0!important;
  }

  .xcat-root .xcat-body,
  .xcat-root .xcat-layout,
  .xcat-root .xcat-results{
    position:relative!important;
    z-index:0!important;
  }

  .xcat-root .xcat-filters{
    z-index:1!important;
  }

  .xcat-root .xcat-top,
  .xcat-root .xcat-sorting{
    z-index:2!important;
  }
}

/*
 * Mobile drawer intentionally stays above the page while open.
 * These rules do not affect desktop geometry.
 */
@media (max-width:767px){
  .xcat-root{
    isolation:auto!important;
  }

  .xcat-root .xcat-mobile-filter-overlay{
    z-index:100001!important;
  }

  .xcat-root .xcat-filters{
    z-index:100002!important;
  }

  .xcat-root .xcat-mobile-filter-handle{
    z-index:100003!important;
  }
}

/* XCAT FILTER STACKING CONTRACT END */

/* XCAT MOBILE FILTER HANDLE SHADOW REMOVE START */
@media (max-width:767px){
  .xcat-mobile-filter-handle,
  .xcat-mobile-filter-handle:hover,
  .xcat-mobile-filter-handle:focus,
  .xcat-mobile-filter-handle:active{
    box-shadow:none!important;
    filter:none!important;
  }
}
/* XCAT MOBILE FILTER HANDLE SHADOW REMOVE END */


/* XCAT STABLE WIDTH CONTRACT V1 START */
.breakdance .bde-code-block:has(> .xcat-root){
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  flex:1 1 100%!important;
  align-self:stretch!important;
}

.breakdance .bde-code-block:has(> .xcat-root) > .xcat-root{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}

/* Mobile root must fit inside both 10px side margins. */
@media (max-width:767px){
  .breakdance .bde-code-block:has(> .xcat-root) > .xcat-root{
    width:calc(100% - 20px)!important;
    min-width:0!important;
    max-width:calc(100% - 20px)!important;
    margin-left:10px!important;
    margin-right:10px!important;
    transform:none!important;
  }
}
/* XCAT STABLE WIDTH CONTRACT V1 END */
