.fps2-slider{
  position:relative;
  overflow:hidden;
  margin:40px 0;
}

.fps2-track{
  display:flex;
  transition:transform 0.5s ease;
}

.fps2-slide{
  min-width:100%;
  box-sizing:border-box;
}

.fps2-slide-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 40px;
}

.fps2-layout-left-big,
.fps2-layout-right-big{
  display:flex;
  gap:32px;
  align-items:stretch;
}

.fps2-layout-left-big .fps2-big{flex:1.1;}
.fps2-layout-left-big .fps2-small-grid{flex:1;}

.fps2-layout-right-big .fps2-big{flex:1.1; order:2;}
.fps2-layout-right-big .fps2-small-grid{flex:1; order:1;}

.fps2-big-link{
  text-decoration:none;
  color:inherit;
  display:block;
}

.fps2-img-wrap{
  width:100%;
  aspect-ratio:1 / 1;
  overflow:hidden;
  border-radius:12px;
  background:#f3f3f3;
}

.fps2-img-wrap img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.fps2-big-meta{
  margin-top:16px;
}

.fps2-big-title{
  font-size:18px;
  margin:0 0 4px;
}

.fps2-big-price{
  font-size:16px;
  font-weight:500;
}

.fps2-small-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px;
}

.fps2-small-card{
  text-decoration:none;
  color:inherit;
  display:block;
}

.fps2-small-meta{
  margin-top:10px;
}

.fps2-small-title{
  font-size:14px;
  line-height:1.3;
  margin-bottom:4px;
}

.fps2-small-price{
  font-size:13px;
  opacity:0.85;
}

/* CTA slide */
.fps2-slide-cta .fps2-cta-inner{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:360px;
}

.fps2-cta-content{
  text-align:center;
}

.fps2-cta-text{
  display:block;
  font-size:18px;
  margin-bottom:12px;
}

.fps2-cta-link{
  font-size:16px;
  text-decoration:none;
  border-bottom:1px solid transparent;
  padding-bottom:2px;
}

.fps2-cta-link:hover{
  border-color:currentColor;
}

/* Nav buttons */
.fps2-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:transparent;
  border-radius:999px;
  width:40px;
  height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid #000;
  cursor:pointer;
  font-size:22px;
  line-height:1;
  color:#000;
}

.fps2-prev{ left:16px; }
.fps2-next{ right:16px; }

.fps2-nav:hover{
  background:rgba(0,0,0,0.06);
}

/* Mobile */
@media (max-width: 768px){
  .fps2-slider{
    overflow:visible;
  }
  .fps2-track{
    display:block;
    transform:none !important;
  }
  .fps2-slide-inner{
    padding:0 20px 32px;
  }
  .fps2-layout-left-big,
  .fps2-layout-right-big{
    flex-direction:column;
  }
  .fps2-small-grid{
    grid-template-columns:1fr;
  }
  .fps2-nav{
    display:none;
  }
}
