/* V7: las animaciones NUNCA dejan bloques invisibles ni vacíos. */
.motion-ready [data-reveal]:not(.is-visible){opacity:1!important;clip-path:none!important;}
.motion-ready [data-reveal="wipe"]:not(.is-visible){clip-path:none!important;transform:translateY(14px)}
@media(max-width:700px){
  .motion-ready [data-reveal]:not(.is-visible){transform:translateY(10px)!important}
  .experience-heading{gap:14px!important;margin-bottom:22px!important}
  .experience-heading p{margin:0!important}
  .experience-grid{gap:10px!important}
  .exp-feature{min-height:300px!important;max-height:350px!important}
  .exp-card{min-height:225px!important;padding:25px!important}
  .exp-card h3{font-size:clamp(29px,8vw,38px)!important}
  .section-pad{padding-block:56px!important}
  .details-inner>h2{margin-block:30px 24px!important}
  .program-grid{gap:12px!important}
  .program-card{min-height:0!important}
  .speaker-grid{gap:16px!important}
}
/* Las 3 imágenes tienen exactamente el mismo marco y el cuerpo de tarjeta se ajusta al contenido. */
.speaker-grid{align-items:stretch!important}
.speaker-card{align-self:stretch!important}
.speaker-photo{height:auto!important;aspect-ratio:1.16/1!important;overflow:hidden!important}
.speaker-photo img{inset:0!important;top:0!important;left:0!important;bottom:0!important;width:100%!important;height:100%!important;object-fit:cover!important}
.speaker-info{min-height:255px!important;grid-template-rows:32px minmax(80px,auto) minmax(46px,auto) auto!important}
@media(max-width:700px){.speaker-info{min-height:223px!important;grid-template-rows:26px auto auto auto!important}.speaker-photo{aspect-ratio:1.24/1!important}}
/* Video: elemento editorial compacto, sin autoplay ni descarga de 500 MB durante la carga inicial. */
.film-section{padding-block:clamp(36px,5vw,76px)}
.film-card{border:1px solid #454545;display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1fr);background:#181818;overflow:hidden}
.film-visual{position:relative;min-height:300px;background:#222;overflow:hidden}
.film-visual>img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;filter:grayscale(.45) brightness(.73)}
.film-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(85deg,transparent,#1010102b)}
.film-play{display:grid;place-items:center;position:absolute;z-index:2;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid #e6ff49;background:#d9ff00;color:#0b0b0b;border-radius:50%;width:76px;height:76px;font-size:23px;box-shadow:0 0 60px #d9ff0044}
.film-copy{padding:clamp(30px,5vw,65px);display:flex;flex-direction:column;align-items:start;justify-content:center;gap:14px}
.film-overline{font-size:11px;color:var(--lime);font-weight:800;letter-spacing:.14em;margin:0}
.film-copy h2{font-family:var(--font-head);font-size:clamp(42px,5vw,76px);letter-spacing:-.085em;line-height:.94;margin:0}.film-copy h2 span{color:var(--lime)}
.film-copy>p:not(.film-overline){max-width:390px;font-size:14px;line-height:1.6;color:#c9c9c9;margin:2px 0 10px}
.film-copy small{color:#aaa;font-size:11px;line-height:1.5}.film-copy .btn{border:0;cursor:pointer}
.film-dialog{padding:0;border:1px solid #6c6c6c;background:#121212;color:#fff;width:min(900px,calc(100% - 28px));max-height:90dvh}
.film-dialog::backdrop{background:rgba(0,0,0,.85)}
.film-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 19px;border-bottom:1px solid #555}
.film-dialog-bar button{background:#d9ff00;color:#000;font-weight:800;cursor:pointer;border:0;padding:12px 16px}
.film-player{width:100%;aspect-ratio:16/9;background:#171717}.film-player iframe{width:100%;height:100%;border:0}
.film-dialog p{margin:0;padding:16px 18px;font-size:12px;color:#dedede}.film-dialog p a{text-decoration:underline}
@media(max-width:700px){.film-card{grid-template-columns:1fr}.film-visual{min-height:200px;max-height:250px}.film-copy{padding:26px 22px 32px}.film-copy h2{font-size:48px}}
@media(prefers-reduced-motion:reduce){.motion-ready [data-reveal]:not(.is-visible){transform:none!important}}
