:root{
  --nigss-radius: 16px;
  --nigss-border: rgba(0,0,0,.10);
  --nigss-shadow: 0 10px 26px rgba(0,0,0,.06);
  --nigss-title: #111; 
  --nigss-text:  #444;
}

.nigss-carousel-wrap{
  margin: 22px auto 34px;
  padding: 0 12px;
}

@media (min-width: 992px){
  .nigss-carousel-wrap{ padding: 0; }
}

.nigss-carousel-wrap .nigss-card{
  border: 1px solid var(--nigss-border);
  border-radius: var(--nigss-radius);
  overflow: hidden;
  background: #fff;
  box-shadow: var(--nigss-shadow);
}

.nigss-carousel-wrap .row.g-0{
  --bs-gutter-x: 0; 
}

@media (min-width: 992px){
  .nigss-carousel-wrap .nigss-card{
    padding: 12px;
  }

  .nigss-carousel-wrap .nigss-card .col-lg-6:first-child{
    padding-right: 10px; 
  }

  .nigss-carousel-wrap .nigss-card .col-lg-6:last-child{
    padding-left: 10px;
  }

  .nigss-carousel-wrap .nigss-img{
    border-radius: 12px;
  }

  .nigss-carousel-wrap .nigss-body{
    border-left: 0; 
    border-radius: 12px;
    background: #fff;
    border: 1px solid rgba(0,0,0,.06);
  }
}

.nigss-carousel-wrap .nigss-img{
  width: 100%;
  height: 100%;
  max-height: 320px;
  object-fit: cover;
  display: block;
}

.nigss-carousel-wrap .nigss-body{
  padding: 18px 18px;
  background: linear-gradient(180deg, rgba(29,125,165,.05), #fff 60%);
  border-left: 1px solid rgba(0,0,0,.08);
}

@media (max-width: 991px){
  .nigss-carousel-wrap .nigss-body{
    border-left: 0;
    border-top: 1px solid rgba(0,0,0,.08);
  }
  .nigss-carousel-wrap .nigss-img{
    max-height: 240px;
  }
}

.nigss-carousel-wrap .nigss-title{
  margin: 2px 0 10px 0;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
}

.nigss-carousel-wrap .nigss-title a{
  color: var(--nigss-title);
  text-decoration: none;
  display: -webkit-box;
  -webkit-line-clamp: 2;   
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.nigss-carousel-wrap .nigss-excerpt{
  color: var(--nigss-text);
  font-size: 14px;
  line-height: 1.55;

  display: -webkit-box;
  -webkit-line-clamp: 4;    
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.nigss-carousel-wrap .nigss-actions .btn{
  border-radius: 999px;
  padding: 6px 14px;
}

.nigss-carousel-wrap .carousel-indicators [data-bs-target]{
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background-color: rgba(0,0,0,.35);
  opacity: 1;
}

.nigss-carousel-wrap .carousel-indicators .active{
  background-color: rgba(0,0,0,.75);
}

.nigss-carousel-wrap .carousel-control-prev,
.nigss-carousel-wrap .carousel-control-next{
  width: 10%;
  opacity: 1;
}

.nigss-carousel-wrap .carousel-control-prev-icon,
.nigss-carousel-wrap .carousel-control-next-icon{
  background-size: 70% 70%;
  border-radius: 999px;
  padding: 18px;
  background-color: rgba(0,0,0,.55); 
}

.nigss-carousel-wrap .carousel-control-prev:hover .carousel-control-prev-icon,
.nigss-carousel-wrap .carousel-control-next:hover .carousel-control-next-icon{
  background-color: rgba(0,0,0,.75);
}

.nigss-carousel-wrap a:focus-visible,
.nigss-carousel-wrap button:focus-visible{
  outline: 2px solid rgba(29,125,165,.45);
  outline-offset: 3px;
  border-radius: 10px;
}

@media (max-width: 991px){
  .nigss-carousel-wrap .carousel-item{
    min-height: 520px; /* ajustá a tu gusto */
  }
  .nigss-carousel-wrap .nigss-card{
    height: 100%;
  }
  .nigss-carousel-wrap .nigss-body{
    min-height: 260px; /* garantiza consistencia */
  }
}
/* ======= Layout centrado en desktop ======= */
@media (min-width: 992px){
  .nigss-carousel-wrap{
    max-width: 1275px;  /* probá 1040 / 1140 / 1200 */
    margin-left: auto;
    margin-right: auto;
  }
}
/* ===== Desktop: imagen con altura fija ===== */
@media (min-width: 992px){
  .nigss-carousel-wrap .nigss-img{
    height: 300px;       /* ajustá: 280 / 300 / 320 */
    max-height: none;
    object-fit: cover;
  }
}
/* ======= Imagen con altura fija en móvil ======= */
@media (max-width: 991px){
  .nigss-carousel-wrap .nigss-img{
    height: 220px;      /* ajustá: 200 / 220 / 240 */
    max-height: none;   /* importantísimo */
    object-fit: cover;
  }
}
@media (min-width: 576px) and (max-width: 991px){
  .nigss-carousel-wrap .nigss-img{
    height: 260px;
  }
}