.productCat {
    display: flex;
    padding: 0 0 0 2rem;
    border-bottom: 2px solid rgb(var(--gray-rgb));
}

.productCat .catDesc {
    display: flex;
    flex-direction: column;
    position: relative;
	width:33vw;
    padding:0rem 2rem 1.5rem 0;
}

.productCat.bottom {
	flex-direction: column;
    align-items: center;
    gap: 1rem;
	border-bottom:none;
	padding:0rem 2rem 2rem;	
}

.productCat .catDesc.fullWidthDesc, .productCat.bottom .catDesc {
	width:100%;
	padding:0
}

.productCat .catDesc.fullWidthDesc h1 {
	padding-bottom:2rem;
}

.productCat .catDesc h1 {
    font-weight: 600;
    font-size: var(--font-size-16);
}

.productCat .catDesc .desc {
    padding:0;
    margin-top:1rem;
}

.productCat .catDesc .desc p:last-child {
	margin-bottom:0;
}

.productCat .catDesc .rank-math-breadcrumb {
   margin-bottom:2rem;
}


.productCat .catSub {
    display: flex;
    align-items: center;
    justify-content:flex-end;
    flex-grow: 1;
}

.productCat .catSub a {
    display: flex;
    flex-grow:1;
    align-items: center;
    height: 100%;
    justify-content: center;
    background-position: center;
    min-height: 200px;
    position: relative;
    filter: grayscale(1);
    transition: var(--easy);
	background-repeat: no-repeat;
    background-size: cover;
}

.productCat .catSub a h3 {
    position: absolute;
    color:#fff;
    filter: opacity(1);
    transition: var(--easy);
    font-size: clamp(1.2rem, 0.9867rem + 0.3445vw, 1.4rem);
    font-weight: 600;
    z-index: 2;
	text-align:center;
}

.productCat .catSub a .overlay {
    position: absolute;
    display: flex;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,1);
    filter:opacity(0.6);
    transition: var(--easy);
    z-index: 1;
}

.productCat .catSub a:hover .overlay {
    filter:opacity(0);
}

.productCat .catSub a:hover h3 {
    filter:opacity(0)
}

.productCat .catSub a:hover {
     filter: grayscale(0);
}

.productCat.bottom .desc {
  position: relative;
  overflow: hidden;
  max-height: 150px; 
  transition: max-height 0.4s ease;
}

.productCat.bottom .desc.expanded {
  max-height: 9999px; 
}

/* Gradient/fade efekt len pre dlhý text */
.productCat.bottom .desc::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 60px;
  background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
  transition: opacity 0.3s;
}

/* Pri rozbalenom texte gradient zmizne */
.productCat.bottom .desc.expanded::after {
  opacity: 0;
}

/* Ak je text krátky, gradient sa vôbec nezobrazuje */
.productCat.bottom .desc.short-text::after {
  display: none;
}

.productCat.bottom .showMoreBtn {
  display: block;
  margin-top: 10px;
  cursor: pointer;
  border-radius: 4px;
  background-color: rgb(var(--base-rgb));
  transition: var(--easy);
  font-size: clamp(1.2rem, 0.899rem + 0.323vh, 1.625rem);
  font-weight: 600;
  border-width: 0;
  padding: 0.5rem 1rem !important;
  color: #ffffff;
  line-height: 2;
  text-align: center;
}

.catDesc .desc ul {
    list-style: square;
    margin-bottom: 16px;
    padding-left: 2rem;
}

.lazy-load-hover {
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    width: 100%;
    height: auto;
    display: block;
}

.lazy-load-hover.loaded {
    opacity: 1;
}

@media (min-width:1366px) {
	.productCat .catSub a {
		max-width:25%;
	}
}