/* 0.5.5: clean playback chrome plus desktop safe-frame composition. */
.ibfmh-video {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: 50% 50%;
  background: #000;
  filter: none;
  transform: none;
}

.ibfmh-grade,
.ibfmh-vignette,
.ibfmh-noise,
.ibfmh-beam,
.ibfmh-flash {
  display: none !important;
}

.ibfmh-stage {
  background: #000;
}

.ibfmh-progress-wrap {
  display: none !important;
}

.ibfmh-dressing.has-source-error .ibfmh-loader::after {
  content: "Не удалось загрузить исходный MP4";
  margin-top: 14px;
  color: #fff;
  font-size: 11px;
  letter-spacing: .12em;
}

@media (min-width: 841px) {
  .ibfmh-video {
    inset: 94px 0 auto;
    width: 100%;
    height: calc(100svh - 94px);
    object-fit: contain;
    object-position: 50% 0;
  }

  .ibfmh-head,
  .ibfmh-chapters {
    z-index: 12;
  }
}

@supports (height: 100dvh) {
  @media (min-width: 841px) {
    .ibfmh-video {
      height: calc(100dvh - 94px);
    }
  }
}

@media (max-width: 840px) and (orientation: portrait) {
  .ibfmh-stage {
    min-height: 560px;
  }

  .ibfmh-head {
    z-index: 12;
  }

  .ibfmh-chapters {
    left: 5vw;
    right: 5vw;
    top: 62px;
    z-index: 12;
    display: flex;
    width: auto;
    overflow: visible;
    justify-content: stretch;
    background: rgba(0, 0, 0, .88);
  }

  .ibfmh-chapters button {
    flex: 1 1 0;
    min-width: 0;
    padding: 0 2px 10px;
  }

  .ibfmh-chapters b {
    font-size: 13px;
  }

  .ibfmh-chapters span {
    overflow: hidden;
    font-size: 5px;
    letter-spacing: .07em;
    white-space: nowrap;
  }

  .ibfmh-video {
    inset: 96px 0 0;
    width: 100%;
    height: calc(100svh - 96px);
    min-height: 464px;
    object-fit: cover;
    object-position: 50% 50%;
    background: #000;
  }

  .ibfmh-editorial-copy {
    top: auto;
    right: auto;
    bottom: 122px;
    left: 5vw;
    width: min(68vw, 270px);
    padding: 13px 14px 14px;
    transform: none;
    background: linear-gradient(90deg, rgba(0, 0, 0, .82), rgba(0, 0, 0, .48) 72%, rgba(0, 0, 0, 0));
    text-shadow: 0 2px 16px rgba(0, 0, 0, .75);
  }

  .ibfmh-eyebrow {
    margin-bottom: 7px;
    font-size: 7px;
    letter-spacing: .17em;
  }

  .ibfmh-editorial-copy h1 {
    max-width: 260px;
    font-size: clamp(27px, 8.4vw, 38px);
    line-height: .9;
    letter-spacing: -.035em;
  }

  .ibfmh-editorial-copy p {
    display: none;
  }

  .ibfmh-cta-row {
    margin-top: 11px;
    gap: 9px;
  }

  .ibfmh-cta {
    min-height: 35px;
    padding: 0 10px;
    gap: 12px;
    font-size: 6px;
    letter-spacing: .1em;
    background: rgba(0, 0, 0, .44);
  }

  .ibfmh-cta span {
    font-size: 12px;
  }

  .ibfmh-play > span {
    width: 31px;
    height: 31px;
    background: rgba(0, 0, 0, .42);
  }

  .ibfmh-progress-wrap {
    display: none !important;
  }

  .ibfmh-bottom {
    right: 5vw;
    bottom: 16px;
    left: 5vw;
  }

  .ibfmh-state span {
    font-size: 16px;
  }
}

@media (max-width: 390px) and (orientation: portrait) {
  .ibfmh-editorial-copy {
    bottom: 116px;
    width: 72vw;
    padding: 10px 11px 12px;
  }

  .ibfmh-editorial-copy h1 {
    font-size: 27px;
  }

  .ibfmh-cta {
    min-height: 32px;
    font-size: 5.6px;
  }
}

@supports (height: 100dvh) {
  @media (max-width: 840px) and (orientation: portrait) {
    .ibfmh-video {
      height: calc(100dvh - 96px);
    }
  }
}
