.iu-testimonios{
  position:relative;
  padding:var(--pad-band-t) 0 var(--pad-band-b);
  overflow:hidden;
  background:url('https://upload.wikimedia.org/wikipedia/commons/3/33/Central_Library_UNAM_2022.jpg') center center / cover no-repeat;
  background-attachment:fixed;
}

@media (max-width: 768px){
  .iu-testimonios{
    background-attachment:scroll;
  }
}
.iu-testimonios-overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(135deg, rgba(0, 24, 51, 0.82) 0%, rgba(0, 55, 110, 0.78) 50%, rgba(0, 24, 51, 0.8) 100%);
  pointer-events:none;
}
.iu-testimonios-content{
  position:relative;
  z-index:2;
}

.iu-testimonios-header{
  text-align:center;
  margin-bottom:48px;
}

.iu-testimonios-title{
  font-family:var(--slab);
  font-size:clamp(2rem, 4vw, 3rem);
  font-weight:400;
  color:#fff;
  margin-bottom:12px;
  letter-spacing:-0.02em;
}

.iu-testimonios-title em{
  font-style:italic;
  color:var(--gold2);
}

.iu-testimonios-subtitle{
  font-size:18px;
  color:rgba(255, 255, 255, 0.9);
  max-width:520px;
  margin:0 auto 20px;
  line-height:1.5;
}

.iu-testimonios-intro{
  font-size:16px;
  color:rgba(255, 255, 255, 0.85);
  max-width:640px;
  margin:0 auto;
  line-height:1.7;
}

.iu-testimonios-intro strong{
  color:var(--gold2);
  font-weight:600;
}
.iu-carousel-wrap{
  max-width:100%;
  margin:0 auto;
  position:relative;
}

.iu-carousel-wrap .carousel{
  overflow:hidden;
}

.iu-carousel-wrap .carousel-inner{
  overflow:visible;
}

.iu-carousel-wrap .carousel-item{
  padding:0;
}

.iu-cards-row{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:24px;
}
.iu-carousel-footer{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  margin-top:32px;
  padding-top:24px;
  border-top:1px solid var(--border);
}

.iu-testimonios .iu-carousel-footer{
  border-top-color:rgba(255, 255, 255, 0.2);
}

.iu-carousel-footer .carousel-control-prev,
.iu-carousel-footer .carousel-control-next{
  position:static;
  width:48px;
  height:48px;
  transform:none;
  border-radius:14px;
  background:linear-gradient(135deg, var(--blue) 0%, var(--blue2) 100%);
  border:none;
  box-shadow:0 4px 16px rgba(0, 51, 102, 0.25);
  opacity:1;
  transition:transform 0.25s ease, box-shadow 0.25s ease;
}

.iu-carousel-footer .carousel-control-prev:hover,
.iu-carousel-footer .carousel-control-next:hover{
  transform:scale(1.08);
  box-shadow:0 8px 24px rgba(0, 51, 102, 0.35);
}

.iu-carousel-footer .carousel-control-prev-icon,
.iu-carousel-footer .carousel-control-next-icon{
  filter:none;
}
.iu-carousel-footer .carousel-indicators{
  position:static;
  margin:0;
  padding:0;
  display:flex;
  align-items:center;
  gap:8px;
}

.iu-carousel-footer .carousel-indicators [data-bs-target]{
  width:8px;
  height:8px;
  border-radius:50%;
  background-color:var(--border);
  border:none;
  opacity:0.6;
  cursor:pointer;
  transition:width 0.3s ease, height 0.3s ease, opacity 0.3s ease, background 0.3s ease;
}

.iu-carousel-footer .carousel-indicators [data-bs-target]:hover{
  opacity:1;
  background-color:var(--blue);
}

.iu-carousel-footer .carousel-indicators [data-bs-target].active{
  width:24px;
  border-radius:4px;
  background:linear-gradient(90deg, var(--gold2), var(--gold));
  opacity:1;
}

.iu-testimonial-card{
  background:#fff;
  border-radius:16px;
  padding:28px 26px 24px;
  box-shadow:0 1px 3px rgba(0, 24, 51, 0.06), 0 8px 24px rgba(0, 24, 51, 0.06);
  display:flex;
  flex-direction:column;
  min-height:280px;
  transition:box-shadow 0.3s ease, transform 0.3s ease;
}

.iu-testimonial-card:hover{
  box-shadow:0 4px 12px rgba(0, 24, 51, 0.08), 0 20px 48px rgba(0, 24, 51, 0.1);
  transform:translateY(-4px);
}
.iu-testimonial-quote{
  position:relative;
  margin:0 0 20px 0;
  padding:0 0 0 36px;
  font-family:var(--slab);
  font-size:1.05rem;
  line-height:1.7;
  color:var(--text);
  display:-webkit-box;
  -webkit-line-clamp:4;
  line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-style:normal;
}

.iu-testimonial-quote::before{
  content:'"';
  position:absolute;
  left:0;
  top:-4px;
  font-family:Georgia, serif;
  font-size:3.5rem;
  line-height:1;
  color:var(--gold2);
  opacity:0.5;
}
.iu-testimonial-author{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:auto;
  padding-top:20px;
  border-top:1px solid rgba(0, 55, 110, 0.08);
}

.iu-testimonial-avatar{
  width:80px;
  height:80px;
  border-radius:50%;
  object-fit:cover;
  flex-shrink:0;
  border:3px solid rgba(255, 255, 255, 0.9);
  box-shadow:0 4px 16px rgba(0, 55, 110, 0.15), 0 0 0 1px rgba(0, 55, 110, 0.08);
}

.iu-testimonial-meta{
  min-width:0;
}

.iu-testimonial-name{
  display:block;
  font-family:var(--slab);
  font-size:1rem;
  font-weight:600;
  color:var(--navy);
  font-style:normal;
  margin-bottom:2px;
}

.iu-testimonial-role{
  font-size:12px;
  color:var(--muted);
  margin:0;
  line-height:1.4;
}

.tutoria-page main .iu-testimonial-card .iu-testimonial-quote,
.tutoria-page main .iu-testimonial-card .iu-testimonial-role,
.tutoria-page main .iu-testimonial-card .iu-testimonial-meta {
  text-align:left;
}

.iu-testimonial-cta{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:16px;
  padding:0;
  font-size:13px;
  font-weight:600;
  color:var(--blue);
  background:none;
  border:none;
  cursor:pointer;
  transition:gap 0.2s, color 0.2s;
}

.iu-testimonial-cta:hover{
  color:var(--navy);
  gap:10px;
}

.iu-testimonial-cta i{
  font-size:10px;
  transition:transform 0.2s;
}

.iu-testimonial-cta:hover i{
  transform:translateX(3px);
}
.iu-modal-content{
  border:none;
  border-radius:20px;
  overflow:hidden;
  box-shadow:0 32px 100px rgba(0, 24, 51, 0.25);
}

.iu-modal-header{
  padding:36px 40px;
  border-bottom:1px solid var(--border);
  display:flex;
  align-items:flex-start;
  gap:24px;
  background:linear-gradient(180deg, var(--off) 0%, #fff 100%);
}

.iu-modal-avatar{
  width:128px;
  height:128px;
  border-radius:16px;
  overflow:hidden;
  flex-shrink:0;
  border:3px solid var(--gold2);
  box-shadow:0 8px 24px rgba(0, 24, 51, 0.12);
}

.iu-modal-avatar img{
  width:100%;
  height:100%;
  object-fit:cover;
}

.iu-modal-info{
  flex:1;
  min-width:0;
}

.iu-modal-nombre{
  font-family:var(--slab);
  font-size:1.35rem;
  font-weight:500;
  color:var(--navy);
  margin-bottom:6px;
}

.iu-modal-puesto{
  font-size:14px;
  color:var(--blue);
  font-weight:600;
  margin-bottom:4px;
}

.iu-modal-programa{
  font-size:13px;
  color:var(--muted);
}

.iu-modal-programa i{
  margin-right:6px;
  color:var(--blue);
}

.iu-modal-body{
  padding:36px 40px;
  max-height:55vh;
  background:#fff;
}

.iu-modal-prosa p{
  font-size:16px;
  line-height:1.9;
  color:var(--text);
  margin-bottom:1.25rem;
  text-align:justify;
}

.iu-modal-prosa p:last-child{
  margin-bottom:0;
}

.iu-modal-footer{
  padding:24px 40px;
  border-top:1px solid var(--border);
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:16px;
  background:var(--off);
}

.iu-modal-tag{
  font-size:14px;
  color:var(--muted);
}

.iu-modal-tag i{
  color:var(--gold2);
  margin-right:8px;
}

.iu-btn-close{
  padding:12px 28px;
  background:var(--gold2);
  color:var(--navy);
  font-weight:700;
  border-radius:10px;
  border:none;
  transition:0.25s;
}

.iu-btn-close:hover{
  background:var(--gold);
  color:#fff;
  transform:translateY(-2px);
}
@media (max-width: 1024px){
  .iu-cards-row{
    grid-template-columns:repeat(2, 1fr);
  }
}

@media (max-width: 860px){
  .iu-cards-row{
    grid-template-columns:repeat(2, 1fr);
    gap:20px;
  }

  .iu-testimonios{
    padding:var(--pad-section-y) 0 var(--pad-band-t);
  }
}

@media (max-width: 560px){
  .iu-cards-row{
    grid-template-columns:1fr;
  }

  .iu-modal-header{
    flex-direction:column;
    align-items:center;
    text-align:center;
    padding:28px 24px;
  }

  .iu-modal-body{
    padding:28px 24px;
  }

  .iu-modal-footer{
    flex-direction:column;
    padding:20px 24px;
  }
}
