/* Ajustes micrositio 20 aniversario sobre tutoria.css + main.css */

.tutoria-page.aniv-20-page section[id]{
  scroll-margin-top:var(--anchor-scroll);
}

.tutoria-page.aniv-20-page .tu-ms-main{
  overflow-x:hidden;
}

.tutoria-page.aniv-20-page .hero::before{
  background-image:url('../img/20aniversario/portadilla.png');
  background-position:top center;
  background-size:cover;
  opacity:0.82;
}

.tutoria-page.aniv-20-page #ganadores.aniv-ganadores.iu-testimonios{
  position:relative;
  overflow:hidden;
  padding:var(--pad-band-t) 0 var(--pad-band-b);
  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){
  .tutoria-page.aniv-20-page #ganadores.aniv-ganadores.iu-testimonios{
    background-attachment:scroll;
  }
}

.tutoria-page.aniv-20-page .tu-sec-head.text-center .tu-sec-head__lead{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
}

.tutoria-page.aniv-20-page #ganadores .aniv-bg-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  z-index:0;
  opacity:0.35;
  pointer-events:none;
}

.tutoria-page.aniv-20-page #ganadores .iu-testimonios-overlay{
  z-index:1;
}

.tutoria-page.aniv-20-page #ganadores .iu-testimonios-content{
  position:relative;
  z-index:2;
}

/* Ganadores: tarjetas estilo bienvenida (chip lugar + thumb + play + pie) */
.tutoria-page.aniv-20-page #ganadores .aniv-cert-cards{
  display:grid;
  grid-template-columns:repeat(3, minmax(280px, 360px));
  gap:24px;
  justify-content:center;
  align-items:stretch;
  max-width:1200px;
  margin-left:auto;
  margin-right:auto;
}

@media (max-width:1199.98px){
  .tutoria-page.aniv-20-page #ganadores .aniv-cert-cards{
    grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  }
}

@media (max-width:575.98px){
  .tutoria-page.aniv-20-page #ganadores .aniv-cert-cards{
    grid-template-columns:1fr;
  }
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card{
  height:100%;
  border-radius:24px;
  overflow:hidden;
  background:rgba(255,255,255,0.98);
  border:1px solid rgba(255,255,255,0.24);
  box-shadow:0 22px 54px rgba(0,0,0,0.16);
  transition:transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card:hover{
  transform:translateY(-8px);
  border-color:rgba(240,192,64,0.22);
  box-shadow:0 30px 64px rgba(0,0,0,0.22);
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__action{
  width:100%;
  height:100%;
  display:grid;
  grid-template-rows:196px 1fr;
  padding:0;
  margin:0;
  background:none;
  border:0;
  text-align:left;
  color:inherit;
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__action:hover .aniv-cert-card__thumb,
.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__action:focus-visible .aniv-cert-card__thumb{
  transform:scale(1.02);
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__action:focus-visible{
  outline:2px solid rgba(240,192,64,0.8);
  outline-offset:4px;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__thumb{
  position:relative;
  min-height:196px;
  background-color:#0d2138;
  background-image:
    linear-gradient(180deg, transparent 38%, rgba(0,24,51,0.42) 100%),
    var(--aniv-cert-bg, none);
  background-size:cover;
  background-position:center;
  transition:transform 0.35s ease;
}

/* Miniatura con archivo local (evita fallos de url() en custom properties) */
.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__thumb--img{
  background-image:linear-gradient(
    180deg,
    transparent 38%,
    rgba(0,24,51,0.42) 100%
  );
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__thumb-img{
  position:absolute;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__thumb::after{
  content:'';
  position:absolute;
  left:0;
  right:0;
  bottom:-1px;
  height:98px;
  z-index:1;
  background:linear-gradient(
    180deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,0.82) 58%,
    rgba(255,255,255,0.98) 100%
  );
  pointer-events:none;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__meta{
  position:absolute;
  top:16px;
  left:16px;
  z-index:2;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:32px;
  padding:6px 14px;
  border-radius:999px;
  font-size:0.78rem;
  font-weight:700;
  letter-spacing:0.04em;
  text-transform:uppercase;
  border:1px solid rgba(255,255,255,0.45);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  box-shadow:0 8px 20px rgba(0,0,0,0.14);
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-chip--1{
  background:linear-gradient(135deg, #fff9e6 0%, #f3dfa8 100%);
  color:#5c4510;
  border-color:rgba(201,168,76,0.55);
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-chip--2{
  background:linear-gradient(135deg, #f4f6f9 0%, #d8dee8 100%);
  color:#2f3d4f;
  border-color:rgba(120,135,155,0.45);
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-chip--3{
  background:linear-gradient(135deg, #fbeee6 0%, #e2c4ad 100%);
  color:#4d331f;
  border-color:rgba(160,110,75,0.45);
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__play{
  position:absolute;
  left:24px;
  bottom:-22px;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:2;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__play i{
  width:58px;
  height:58px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,0.96);
  border:1px solid rgba(13,27,42,0.06);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  color:var(--blue);
  font-size:1.1rem;
  box-shadow:0 10px 24px rgba(13,27,42,0.14);
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__body{
  padding:22px 28px 28px;
  display:grid;
  grid-template-rows:auto 1fr;
  gap:18px;
  align-content:start;
  position:relative;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__heading{
  margin:0;
  padding-top:18px;
  font-family:var(--slab);
  font-size:clamp(1.15rem,2.4vw,1.5rem);
  font-weight:400;
  line-height:1.15;
  color:#102133;
  letter-spacing:-0.02em;
  text-align:left;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__person{
  display:flex;
  align-items:center;
  gap:18px;
  margin:0;
  padding:16px 18px;
  border:1px solid rgba(0,55,110,0.08);
  border-radius:18px;
  background:linear-gradient(
    180deg,
    rgba(248,250,253,0.95) 0%,
    rgba(255,255,255,1) 100%
  );
  box-shadow:0 4px 14px rgba(0,24,51,0.06);
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__avatar{
  width:72px;
  height:72px;
  flex-shrink:0;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  font-family:var(--sans);
  font-size:0.82rem;
  font-weight:700;
  letter-spacing:0.02em;
  color:var(--blue);
  background:radial-gradient(circle at 30% 20%, #f8fbff 0%, #e7eefb 100%);
  box-shadow:
    0 6px 18px rgba(0,55,110,0.14),
    0 0 0 1px rgba(0,55,110,0.08);
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__person-meta{
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__name{
  margin:0 0 4px;
  font-family:var(--slab);
  font-size:1.05rem;
  font-weight:500;
  line-height:1.25;
  color:#102133;
}

.tutoria-page.aniv-20-page #ganadores .aniv-cert-card__role{
  margin:0;
  font-size:12px;
  line-height:1.55;
  color:var(--muted);
  text-align:left;
}

@media (max-width:767.98px){
  .tutoria-page.aniv-20-page #ganadores .aniv-cert-card__thumb{
    min-height:180px;
  }

  .tutoria-page.aniv-20-page #ganadores .aniv-cert-card__meta{
    top:14px;
    left:14px;
  }

  .tutoria-page.aniv-20-page #ganadores .aniv-cert-card__play{
    left:18px;
    bottom:-18px;
  }

  .tutoria-page.aniv-20-page #ganadores .aniv-cert-card__play i{
    width:52px;
    height:52px;
    font-size:1rem;
  }

  .tutoria-page.aniv-20-page #ganadores .aniv-cert-card__body{
    padding:18px 20px 22px;
  }

  .tutoria-page.aniv-20-page #ganadores .aniv-cert-card__heading{
    padding-top:14px;
    font-size:1.2rem;
  }

  .tutoria-page.aniv-20-page #ganadores .aniv-cert-card__avatar{
    width:68px;
    height:68px;
    font-size:0.75rem;
  }
}

.tutoria-page.aniv-20-page #ganadores .aniv-collage{
  max-width:560px;
  margin-left:auto;
  margin-right:auto;
  border-radius:var(--r-lg);
  overflow:hidden;
  box-shadow:var(--shadow-lift);
}

.tutoria-page.aniv-20-page #carteles .aniv-carousel-wrap{
  position:relative;
  padding-left:clamp(0.35rem,3vw,2.75rem);
  padding-right:clamp(0.35rem,3vw,2.75rem);
}

@media (min-width:768px){
  .tutoria-page.aniv-20-page #carteles .aniv-carousel-wrap{
    padding-left:2.75rem;
    padding-right:2.75rem;
  }
}

.tutoria-page.aniv-20-page #carteles .carousel-item .row{
  align-items:stretch;
}

.tutoria-page.aniv-20-page #carteles .aniv-cartel-trigger{
  display:block;
  width:100%;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  cursor:pointer;
  text-align:center;
  box-shadow:none;
  transition:transform 0.2s ease,opacity 0.2s ease;
}

.tutoria-page.aniv-20-page #carteles .aniv-cartel-trigger:hover{
  transform:translateY(-2px);
  box-shadow:none;
  opacity:0.96;
}

.tutoria-page.aniv-20-page #carteles .aniv-cartel-trigger:focus-visible{
  outline:2px solid var(--unam-oro);
  outline-offset:3px;
}

.tutoria-page.aniv-20-page #carteles .aniv-cartel-frame{
  display:block;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  min-height:0;
}

.tutoria-page.aniv-20-page #carteles .aniv-cartel-img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  max-height:clamp(200px,42vh,380px);
  margin:0 auto;
  object-fit:contain;
}

@media (min-width:992px){
  .tutoria-page.aniv-20-page #carteles .aniv-cartel-img{
    max-height:clamp(220px,36vh,420px);
  }
}

.tutoria-page.aniv-20-page #carteles .aniv-carousel-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  width:44px;
  height:44px;
  border-radius:50%;
  border:1px solid var(--border);
  background:#fff;
  color:var(--navy);
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:var(--shadow-card);
}

.tutoria-page.aniv-20-page #carteles .aniv-carousel-btn:hover{
  color:var(--gold2);
  border-color:rgba(201,168,76,0.45);
}

.tutoria-page.aniv-20-page #carteles .aniv-carousel-btn--prev{
  left:0;
}

.tutoria-page.aniv-20-page #carteles .aniv-carousel-btn--next{
  right:0;
}

.tutoria-page.aniv-20-page #carteles .aniv-dot-row{
  display:flex;
  justify-content:center;
  gap:0.5rem;
  margin-top:1.25rem;
}

.tutoria-page.aniv-20-page #carteles .aniv-dot{
  width:36px;
  height:5px;
  border-radius:3px;
  border:0;
  background:#c5ced9;
  cursor:pointer;
}

.tutoria-page.aniv-20-page #carteles .aniv-dot.active{
  background:var(--blue);
}

/* Programa del evento: .norm-secc = fondo arenita (main.css); tarjetas sobre crema */
.tutoria-page.aniv-20-page #programa.norm-secc > .wrap{
  position:relative;
  z-index:1;
}

.tutoria-page.aniv-20-page #programa.norm-secc .aniv-bf-title.sh2{
  margin-bottom:0;
  color:var(--navy);
}

.tutoria-page.aniv-20-page #programa.norm-secc .aniv-bf-title .aniv-bf-title-em{
  font-style:italic;
  color:var(--unam-oro);
}

.tutoria-page.aniv-20-page #programa.norm-secc .aniv-bf-panel{
  padding:32px 28px;
  border-radius:24px;
  background:#fff;
  border:1px solid var(--border);
  box-shadow:0 18px 44px rgba(0,24,51,0.08);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
}

@media (max-width:767.98px){
  .tutoria-page.aniv-20-page #programa.norm-secc .aniv-bf-panel{
    padding:24px 20px;
    border-radius:20px;
  }
}

.tutoria-page.aniv-20-page #programa .aniv-bf-body.body-t p{
  margin:0;
  color:rgba(255,255,255,0.92);
  text-align:left;
}

.tutoria-page.aniv-20-page #programa.norm-secc .aniv-bf-logo-img{
  max-width:min(20rem,90%);
  height:auto;
}

.tutoria-page.aniv-20-page #programa .aniv-bf-speaker{
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,0.14);
}

.tutoria-page.aniv-20-page #programa .aniv-bf-speaker__label{
  display:inline-block;
  margin-bottom:8px;
  font-size:0.78rem;
  font-weight:700;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:#f0c040;
}

.tutoria-page.aniv-20-page #programa .aniv-bf-speaker__name{
  margin:0 0 4px;
  font-family:var(--slab);
  font-size:1.1rem;
  line-height:1.35;
  color:#fff;
}

.tutoria-page.aniv-20-page #programa .aniv-bf-speaker__role{
  margin:0;
  font-size:0.95rem;
  line-height:1.6;
  color:rgba(255,255,255,0.78);
}

.tutoria-page.aniv-20-page #programa .aniv-bf-actions{
  margin-top:20px;
}

.tutoria-page.aniv-20-page #programa.norm-secc .aniv-bf-ver{
  display:inline-flex;
  align-items:center;
  gap:0.45rem;
  padding:0 0 3px;
  margin:0;
  font-family:var(--sans);
  font-size:0.95rem;
  font-weight:600;
  color:var(--navy);
  text-decoration:none;
  background:transparent;
  border:none;
  border-bottom:1px solid rgba(213,159,15,0.65);
  border-radius:0;
  cursor:pointer;
  transition:color 0.2s, border-color 0.2s;
}

.tutoria-page.aniv-20-page #programa.norm-secc .aniv-bf-ver:hover{
  color:var(--blue);
  border-bottom-color:var(--blue);
}

.tutoria-page.aniv-20-page #programa.norm-secc .aniv-bf-ver:focus-visible{
  outline:2px solid var(--unam-oro);
  outline-offset:4px;
  border-radius:4px;
}

.tutoria-page.aniv-20-page #programa .aniv-bf-video-wrap{
  position:relative;
  display:flex;
  align-items:stretch;
  min-height:260px;
}

.tutoria-page.aniv-20-page #programa .aniv-bf-video{
  position:relative;
  flex:1;
  min-height:460px;
  width:100%;
  padding:0;
  border-radius:28px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.22);
  appearance:none;
  -webkit-appearance:none;
  cursor:pointer;
  background:
    linear-gradient(
      135deg,
      rgba(0,18,55,0.55) 0%,
      rgba(0,18,55,0.2) 48%,
      rgba(0,18,55,0.6) 100%
    ),
    url('../img/20aniversario/video-20.png')
      center/cover no-repeat;
  box-shadow:0 24px 60px rgba(0,0,0,0.2);
  transition:transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.tutoria-page.aniv-20-page #programa .aniv-bf-video::before{
  content:'';
  position:absolute;
  inset:0;
  background:radial-gradient(
    circle at center,
    rgba(201,168,76,0.2) 0%,
    transparent 45%
  );
  pointer-events:none;
}

.tutoria-page.aniv-20-page #programa .aniv-bf-video::after{
  content:'';
  position:absolute;
  inset:0;
  border-radius:28px;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,0.06);
  pointer-events:none;
}

.tutoria-page.aniv-20-page #programa .aniv-bf-video:hover,
.tutoria-page.aniv-20-page #programa .aniv-bf-video:focus-visible{
  transform:translateY(-4px);
  border-color:rgba(240,192,64,0.34);
  box-shadow:0 30px 68px rgba(0,0,0,0.24);
}

.tutoria-page.aniv-20-page #programa .aniv-bf-video:focus-visible{
  outline:2px solid rgba(240,192,64,0.8);
  outline-offset:4px;
}

.tutoria-page.aniv-20-page #programa .aniv-bf-video__play{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  z-index:1;
}

.tutoria-page.aniv-20-page #programa .aniv-bf-video__play i{
  width:92px;
  height:92px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:rgba(255,255,255,0.14);
  border:1px solid rgba(255,255,255,0.28);
  -webkit-backdrop-filter:blur(6px);
  backdrop-filter:blur(6px);
  color:#fff;
  font-size:1.65rem;
  box-shadow:0 14px 34px rgba(0,0,0,0.2);
}

@media (max-width:767.98px){
  .tutoria-page.aniv-20-page #programa .aniv-bf-video{
    min-height:260px;
    border-radius:22px;
  }

  .tutoria-page.aniv-20-page #programa .aniv-bf-video::after{
    border-radius:22px;
  }

  .tutoria-page.aniv-20-page #programa .aniv-bf-video__play i{
    width:76px;
    height:76px;
    font-size:1.35rem;
  }
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-modal-inner{
  background:#f3f5f8;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .modal-footer{
  border-top:1px solid var(--border);
  background:#fff;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .modal-footer .btn-doc{
  text-decoration:none;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-pane-title{
  margin:0 0 1rem;
  padding-bottom:0.65rem;
  border-bottom:2px solid rgba(201,168,76,0.45);
  font-family:var(--serif);
  font-size:clamp(1.02rem,2vw,1.15rem);
  font-weight:700;
  color:var(--navy);
  text-align:left;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-panels .aniv-prog-list{
  list-style:none;
  padding-left:0;
  margin:0;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-panels .aniv-prog-list > li{
  position:relative;
  padding:0.65rem 0 0.65rem 1rem;
  margin-bottom:0.35rem;
  border-left:3px solid rgba(0,51,102,0.2);
  text-align:left;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-panels .aniv-prog-list > li:last-child{
  margin-bottom:0;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-footnote{
  margin-top:1rem;
  padding-top:0.75rem;
  border-top:1px solid var(--border);
  font-size:0.9rem;
  color:#5e6e82;
  text-align:left;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:0.5rem;
  border-bottom:0 !important;
  margin:0;
  padding:0.75rem 1rem 0;
  background:#f3f5f8;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-tabs .nav-item{
  margin-bottom:0;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-panels{
  margin:0;
  border:0;
  border-radius:0;
  box-shadow:none;
  background:#fff;
  padding:1.25rem 1.35rem 1.5rem;
  border-top:1px solid var(--border);
}

.tutoria-page.aniv-20-page .aniv-prog-modal .tab-pane h3{
  text-align:left;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .tab-pane .aniv-prog-list li{
  text-align:left;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-tabs .nav-link{
  border-radius:12px;
  font-size:0.8rem;
  font-weight:600;
  color:var(--navy);
  background:rgba(255,255,255,0.85);
  border:1px solid var(--border);
  margin-right:0;
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-tabs .nav-link.active{
  background:var(--navy);
  color:#fff;
  border-color:var(--navy);
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-tabs .nav-link:hover:not(.active){
  border-color:rgba(201,168,76,0.45);
}

.tutoria-page.aniv-20-page #conferencias.norm-secc > .wrap{
  position:relative;
  z-index:1;
}

.tutoria-page.aniv-20-page #conferencias .aniv-talk-card__img{
  display:block;
  width:clamp(6.5rem, 22vw, 9.5rem);
  height:clamp(6.5rem, 22vw, 9.5rem);
  max-width:152px;
  max-height:152px;
  margin-top:1.25rem;
  border-radius:50%;
  object-fit:cover;
  flex-shrink:0;
  box-shadow:0 4px 14px rgba(0,51,102,0.12);
}

.tutoria-page.aniv-20-page #conferencias .aniv-talk-cta,
.tutoria-page.aniv-20-page #galeria .aniv-talk-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:0.4rem;
  margin:0;
  padding:0.25rem 0;
  border:none;
  border-radius:0;
  background:none;
  box-shadow:none;
  font-family:var(--sans);
  font-size:0.95rem;
  font-weight:600;
  color:var(--navy);
  cursor:pointer;
  text-decoration:none;
  line-height:1.35;
  vertical-align:middle;
}

.tutoria-page.aniv-20-page #conferencias .aniv-talk-cta:hover,
.tutoria-page.aniv-20-page #galeria .aniv-talk-cta:hover{
  color:var(--blue);
  text-decoration:none;
  box-shadow:none;
  transform:none;
}

.tutoria-page.aniv-20-page #conferencias .aniv-talk-cta:focus-visible,
.tutoria-page.aniv-20-page #galeria .aniv-talk-cta:focus-visible{
  outline:2px solid var(--unam-oro);
  outline-offset:3px;
}

.tutoria-page.aniv-20-page #conferencias .aniv-talk-cta i,
.tutoria-page.aniv-20-page #galeria .aniv-talk-cta i{
  color:inherit;
  font-size:0.85em;
}

.tutoria-page.aniv-20-page #galeria.tu-s-actores .tu-actor-card__body ul{
  flex:1 1 auto;
}

.tutoria-page.aniv-20-page #galeria .aniv-talk-cta{
  margin-top:auto;
  align-self:center;
}

.tutoria-page.aniv-20-page #galeria.tu-s-actores .actor-card-title{
  text-align:center;
}

/* Lightbox (Fancybox 5): carteles / galería completos en pantalla */
.aniv-fancybox-viewer .fancybox__carousel .fancybox__slide img{
  max-height:min(92vh,1200px);
  width:auto;
  max-width:100%;
  object-fit:contain;
}

.tutoria-page.aniv-20-page #conferencias .aniv-talk-card__name{
  font-weight:600;
  color:var(--navy);
  text-align:center;
}

.tutoria-page.aniv-20-page #conferencias .aniv-talk-card{
  background:#fff;
  border:1px solid var(--border);
  border-radius:var(--r-lg);
  overflow:hidden;
  box-shadow:var(--shadow-card);
  height:100%;
  transition:transform 0.25s ease,box-shadow 0.25s ease;
}

.tutoria-page.aniv-20-page #conferencias .aniv-talk-card:hover{
  transform:translateY(-4px);
  box-shadow:var(--shadow-lift);
}

.tutoria-page.aniv-20-page #conversatorio.aniv-conversatorio{
  position:relative;
  overflow:hidden;
  padding:clamp(1.5rem,3.8vw,2.35rem) 0;
  background:linear-gradient(
    152deg,
    var(--blue) 0%,
    #06356b 42%,
    #021c38 100%
  );
  color:#fff;
  text-align:center;
}

.tutoria-page.aniv-20-page #conversatorio.aniv-conversatorio::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:radial-gradient(
    120% 80% at 50% -10%,
    rgba(255,255,255,0.12) 0%,
    transparent 55%
  );
}

.tutoria-page.aniv-20-page #conversatorio .aniv-conversatorio__inner{
  position:relative;
  z-index:1;
  max-width:min(100%,72rem);
  margin-left:auto;
  margin-right:auto;
}

.tutoria-page.aniv-20-page #conversatorio .tu-sec-head{
  margin-bottom:0.85rem;
}

.tutoria-page.aniv-20-page #conversatorio .tu-sec-head__title{
  margin-bottom:0.5rem;
  color:#fff;
}

.tutoria-page.aniv-20-page #conversatorio .aniv-conversatorio__lead,
.tutoria-page.aniv-20-page #conversatorio .tu-sec-head__lead{
  max-width:40rem !important;
  margin-left:auto;
  margin-right:auto;
  color:rgba(255,255,255,0.9);
  font-size:clamp(0.9rem,2.1vw,1rem);
  line-height:1.5;
  font-style:italic;
}

.tutoria-page.aniv-20-page #conversatorio .aniv-conversatorio__cards{
  display:flex;
  flex-wrap:nowrap;
  justify-content:center;
  align-items:stretch;
  gap:clamp(0.35rem,1.1vw,0.65rem);
  margin:0.85rem auto 0;
  padding:0;
  width:100%;
  max-width:min(100%,72rem);
}

.tutoria-page.aniv-20-page #conversatorio .aniv-conversatorio__card{
  flex:1 1 0;
  min-width:0;
  max-width:none;
  margin:0;
  padding:clamp(0.55rem,1.4vw,0.85rem) clamp(0.35rem,1vw,0.55rem);
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-radius:var(--r-lg);
  background:rgba(255,255,255,0.11);
  border:1px solid rgba(255,255,255,0.28);
  box-shadow:0 6px 22px rgba(0,0,0,0.18);
  backdrop-filter:blur(8px);
  transition:transform 0.2s ease,box-shadow 0.2s ease,border-color 0.2s ease;
}

.tutoria-page.aniv-20-page #conversatorio .aniv-conversatorio__card:hover{
  transform:translateY(-3px);
  border-color:rgba(255,255,255,0.45);
  box-shadow:0 10px 28px rgba(0,0,0,0.22);
}

.tutoria-page.aniv-20-page #conversatorio .aniv-conversatorio__card-name{
  margin:0;
  width:100%;
  font-family:var(--sans);
  font-size:clamp(0.68rem,1.35vw,0.88rem);
  font-weight:700;
  line-height:1.3;
  color:#fff;
  letter-spacing:0.01em;
  text-align:center;
  text-wrap:balance;
  overflow-wrap:break-word;
  hyphens:auto;
}

.tutoria-page.aniv-20-page #conversatorio .aniv-conversatorio__mod{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:0.45rem;
  margin:1.35rem auto 0;
  padding:1rem 0.75rem 0;
  max-width:28rem;
  border-top:1px solid rgba(255,255,255,0.28);
}

.tutoria-page.aniv-20-page #conversatorio .aniv-conversatorio__mod-label{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0.28rem 1rem 0.32rem;
  border-radius:999px;
  font-size:0.68rem;
  font-weight:800;
  letter-spacing:0.14em;
  text-transform:uppercase;
  color:#0a1f3d;
  background:linear-gradient(180deg,#f2d78a 0%,#d4af37 48%,#b8922f 100%);
  border:1px solid rgba(255,255,255,0.45);
  box-shadow:
    0 4px 16px rgba(0,0,0,0.22),
    inset 0 1px 0 rgba(255,255,255,0.35);
}

.tutoria-page.aniv-20-page #conversatorio .aniv-conversatorio__mod-name{
  display:block;
  font-family:var(--serif);
  font-size:clamp(1.05rem,2.6vw,1.35rem);
  font-weight:700;
  font-style:italic;
  line-height:1.3;
  color:#fff;
  letter-spacing:0.02em;
  text-shadow:
    0 2px 14px rgba(0,0,0,0.35),
    0 0 28px rgba(255,255,255,0.12);
}

.tutoria-page.aniv-20-page #galeria.tu-s-actores .tu-actores-strip{
  max-width:none;
  margin-left:auto;
  margin-right:auto;
}

@media (max-width:767px){
  .tutoria-page.aniv-20-page #galeria.tu-s-actores .tu-actores-strip{
    margin-left:0;
    margin-right:0;
  }
}

/* Modales: títulos alineados a .sh2 (DM Serif, texto, em en azul) */
.tutoria-page.aniv-20-page .modal .modal-title{
  font-family:var(--slab);
  font-weight:400;
  line-height:1.08;
  letter-spacing:-0.03em;
  color:var(--text);
}

.tutoria-page.aniv-20-page .modal .modal-title em{
  font-style:italic;
  color:var(--blue);
}

.tutoria-page.aniv-20-page .modal .modal-title.h5{
  font-size:clamp(1.2rem, 2.8vw, 1.85rem);
}

/* Vídeo: modal compacta, cristal y esquinas redondeadas */
body.tutoria-page.aniv-20-page:has(.aniv-modal-display.show) .modal-backdrop.show{
  background-color:rgba(0, 24, 51, 0.48);
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}

.tutoria-page.aniv-20-page .aniv-modal-display .modal-dialog{
  max-width:min(640px, 91vw);
  margin:0.65rem auto;
}

@media (min-width:768px){
  .tutoria-page.aniv-20-page .aniv-modal-display .modal-dialog{
    max-width:min(680px, 88vw);
  }
}

@media (min-width:1200px){
  .tutoria-page.aniv-20-page .aniv-modal-display .modal-dialog{
    max-width:min(720px, 82vw);
  }
}

.tutoria-page.aniv-20-page .aniv-modal-display .aniv-modal-display__content{
  overflow:hidden;
  border-radius:1.125rem;
  border:1px solid rgba(255, 255, 255, 0.42);
  background:rgba(255, 255, 255, 0.22);
  -webkit-backdrop-filter:blur(22px) saturate(1.25);
  backdrop-filter:blur(22px) saturate(1.25);
  box-shadow:
    0 20px 48px rgba(0, 18, 55, 0.32),
    0 0 0 1px rgba(255, 255, 255, 0.08) inset,
    0 1px 0 rgba(255, 255, 255, 0.45) inset;
}

.tutoria-page.aniv-20-page .aniv-modal-display .aniv-modal-display__head{
  flex-shrink:0;
  margin:0;
  padding:0.7rem 0.95rem;
  border:0;
  border-bottom:1px solid rgba(255, 255, 255, 0.38);
  border-radius:0;
  background:rgba(255, 255, 255, 0.32);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}

.tutoria-page.aniv-20-page .aniv-modal-display .aniv-modal-display__body{
  margin:0;
  padding:0;
  border:0;
  background:#000;
}

.tutoria-page.aniv-20-page .aniv-modal-display .ratio{
  --bs-aspect-ratio:56.25%;
  background:#000;
}

.tutoria-page.aniv-20-page .aniv-modal-display iframe,
.tutoria-page.aniv-20-page .aniv-modal-display .aniv-modal-display__video{
  border:0;
  outline:none;
  display:block;
  box-shadow:none;
}

.tutoria-page.aniv-20-page .aniv-modal-display .aniv-modal-display__video{
  object-fit:contain;
  background:#000;
}

.tutoria-page.aniv-20-page .aniv-modal-display .btn-close{
  opacity:0.78;
  filter:drop-shadow(0 0 1px rgba(255, 255, 255, 0.6));
}

.tutoria-page.aniv-20-page .aniv-modal-display .btn-close:hover{
  opacity:1;
}

.tutoria-page.aniv-20-page .aniv-modal-display .modal-title.h5{
  font-size:clamp(1rem, 2.1vw, 1.38rem);
}

@media (prefers-reduced-motion: reduce){
  body.tutoria-page.aniv-20-page:has(.aniv-modal-display.show) .modal-backdrop.show{
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }

  .tutoria-page.aniv-20-page .aniv-modal-display .aniv-modal-display__content,
  .tutoria-page.aniv-20-page .aniv-modal-display .aniv-modal-display__head{
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }
}

/* Programa (texto): cápsula coherente con el micrositio */
.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-modal__shell{
  border-radius:0.5rem;
  overflow:hidden;
  border:1px solid var(--border);
}

.tutoria-page.aniv-20-page .aniv-prog-modal .aniv-prog-modal__head{
  background:linear-gradient(
    180deg,
    var(--cream-alt) 0%,
    var(--cream) 100%
  );
  border-bottom:1px solid var(--border);
}
