/*Wall Category*/
.categorywall-container .title-module{
  margin-bottom: 15px;
  padding: 10px 0px;
  position:relative;
}

/* ПЕРЕОПРЕДЕЛЯЕМ Bootstrap классы для 3 колонок */
.categorywall-container .col-xs-12,
.categorywall-container .col-sm-6, 
.categorywall-container .col-md-4, 
.categorywall-container .col-lg-3{
    padding-left: 10px;
    padding-right: 10px;
    position: relative;
    width: 33.333333% !important; /* Принудительно 3 колонки */
    flex: 0 0 33.333333% !important;
    max-width: 33.333333% !important;
    float: left;
}

.categorywall-container .title-module span{
    font-size: 30px;
    padding: 0 20px 0px 0px;
    z-index: 5;
    color:#333;
    position: relative;
}
.categorywall-container .title-module:before{
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    bottom: 0%;
    width: 100%;
    border-bottom: 2px solid #ccc;
}
.categorywall-container .title-module:after{
    content: "";
    left: 0;
    position: absolute;
    right: 0;
    bottom: 0%;
    width: 100px;
    border-bottom: 2px solid #693a3a;
}
.categorywall-container {
    margin-bottom:5px;
}

/* ИСПРАВЛЯЕМ контейнер */
.wall-category-box {
    position: relative;
    margin: 0px -10px;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
}

/* ДЕЛАЕМ карточки одинаковой высоты */
.wall-category-box .item-category {
    background: #fff none repeat scroll 0 0;
    margin-bottom: 20px;
    overflow: hidden;
    border: 1px solid #ddd;
    border-radius: 5px;
    position:relative;
    box-shadow:0 3px 10px rgba(0, 0, 0, 0.1), 2px 2px 2px #edeef2 inset;
    height: 100%;
    display: flex;
    flex-direction: column;
}

/* Ссылка занимает всю карточку */
.wall-category-box .item-category a {
    display: flex;
    flex-direction: column;
    flex: 1;
    text-decoration: none;
}

/* Изображение занимает доступное пространство */
.wall-category-box .wall-cat-image {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
}

.wall-category-box .wall-cat-image img {
    display: block;
    margin-right: auto;
    margin-left: auto;
    max-width: 100%;
    max-height: 120px;
    border: 0;
    vertical-align: middle;
    object-fit: contain;
}

.wall-category-box .item-category img {
    border-radius:3px;
}

.wall-category-box .wall-cat-name {
    color: #333;
    font-weight: bold;
    overflow: hidden;
    padding: 3px 5px;
    text-align: center;
    text-transform: uppercase;
    height: 45px;
    background:#edeef2;
    border-top: 1px solid #ddd;
    flex-shrink: 0; /* Фиксируем высоту названия */
}

.wall-category-box .item-category:hover .wall-cat-name {
    color:#693a3a;
}

/* ОСТАЛЬНЫЕ СТИЛИ */
.wall-category-box .item-sub-category {
    padding-left:15px;
}
.wall-category-box .item-sub-category .subcategory-name a{
    font-size:14px;
    color:#222222;
    opacity:1;
}
.wall-category-box .item-sub-category .subcategory-name a:hover{
    font-size:14px;
    color:#693a3a;
    opacity:1;
}
.wall-category-box .parent_category .wall-cat-image{opacity:1;transform:rotateY(0deg);transition:all ease-in-out 0.4s;}
.wall-category-box .parent_category:hover .wall-cat-image{opacity:0,5;transform:rotateY(-360deg);}
.wall-category-box .item-sub-category{
    background:#edeef2;
    position:absolute;
    top:0px;
    left:0px;
    right:0px;
    bottom:45px;
    opacity:0;
    padding-top:5px;
    padding-left:10px;
    cursor:pointer;
    transform:rotateY(-180deg);
    transition:all ease-in-out 0.4s;
    }	
.wall-category-box .parent_category:hover .item-sub-category{opacity:0.85;transform:rotateY(0deg);}

.nswc-scrollbar {
width: 6px;
margin: 4px;
background-color: #EDEEF2;
cursor: pointer;
}
.nswc-thumb {
background-color: #693a3a;
border-radius:5px;
}
.nswc-scrollbar.active .nswc-thumb {
 background-color: #2073B2;
 }
 
.display-table {
  display: table;
  height: 100%;
  width: 100%;
  overflow:hidden;
}
.display-table-cell {
  display: table-cell;
  height: 100%;
  vertical-align: middle;
  width: 100%;
}

/* АДАПТИВНОСТЬ для мобильных */
@media (max-width: 768px) {
    .categorywall-container .col-xs-12,
    .categorywall-container .col-sm-6, 
    .categorywall-container .col-md-4, 
    .categorywall-container .col-lg-3{
        width: 50% !important; /* 2 колонки на планшетах */
        flex: 0 0 50% !important;
        max-width: 50% !important;
    }
}

@media (max-width: 480px) {
    .categorywall-container .col-xs-12,
    .categorywall-container .col-sm-6, 
    .categorywall-container .col-md-4, 
    .categorywall-container .col-lg-3{
        width: 100% !important; /* 1 колонка на телефонах */
        flex: 0 0 100% !important;
        max-width: 100% !important;
    }
}