/* Cinematic hero, with scroll-driven type and a flat tint. */
.idx{min-height:clamp(660px,88svh,940px);justify-content:flex-end;
  padding-bottom:100px;background:#0d1118}
.idx-poster,.idx-vid{filter:none}
.idx-poster{object-position:center center}
.idx-vid video{top:0;left:0;transform:none;width:100%;height:100%;
  min-width:0;min-height:0;object-fit:cover;object-position:center center;opacity:0}
.idx-vid video.ready{opacity:1}
.idx::before{background:rgba(0,0,0,.10)}
.idx-in{position:relative;z-index:1;opacity:var(--hero-opacity,1);
  transform:translate3d(0,var(--hero-shift,0px),0);will-change:transform,opacity}
.idx-h{font-size:clamp(36px,4.5vw,62px);text-shadow:none}
.idx-h.reveal{opacity:1;transform:none;filter:none;transition:none}
.idx-h span{display:block}
.film-toggle,.idx:hover .film-toggle{display:none}
.idx-cue{bottom:23px}
.idx-cue span{display:none}
@media(max-width:820px){
  .idx{height:calc(100svh - var(--nav-h));min-height:560px;max-height:none;justify-content:center;
    padding:calc(64px + 8svh) 24px 12svh;text-align:center}
  .idx-vid,.idx-poster{top:0;bottom:0;width:100%;height:100%}
  .idx-vid video,.idx-poster{object-fit:cover;object-position:50% 50%}
  .idx::before{top:0;background:rgba(0,0,0,.32)}
  .idx-in{width:100%;max-width:360px;margin:0 auto}
  .idx-h{font-size:clamp(36px,9.3vw,54px);font-weight:400;line-height:1.08;
    letter-spacing:-.035em;max-width:none;text-wrap:balance}
  .idx-h .hero-positioning{max-width:11ch;margin:0 auto .38em}
  .idx-h .hero-discipline{max-width:12ch;margin:0 auto}
  .idx-cue{bottom:max(64px,env(safe-area-inset-bottom));width:auto;height:auto;
    min-width:100px;min-height:64px;border:0;background:none;box-shadow:none;border-radius:0;
    display:flex;flex-direction:column;justify-content:center;gap:10px;color:#fff}
  .idx-cue:hover{background:none}
  .idx-cue svg{width:20px;height:20px;animation:none}
  .idx-cue span{display:block;font-size:11px;letter-spacing:.08em;font-weight:400}
}
@media(max-width:820px) and (orientation:landscape){
  .idx{min-height:440px;padding-block:100px 90px}
  .idx-h{font-size:36px}.idx-h .hero-positioning,.idx-h .hero-discipline{max-width:none}
}
@media(prefers-reduced-motion:reduce){
  .idx-in{transform:none!important;opacity:1!important;will-change:auto}
}
