/* FaktHusty video articles 3.2.8-beta12 – public hero sizing only.
 * Outer media panel max 920px x 517.5px (16:9); 5px inner gutter on each edge.
 * Keep 16:9 at all viewport widths and never crop the actual video frame.
 */
.fh-video-primary {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 920px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.fh-video-primary .fh-video-primary__frame {
  box-sizing: border-box !important;
  position: relative !important;
  display: block !important; /* old grid auto-track shrank YouTube embeds */
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  padding: 5px !important;
  overflow: hidden !important;
  background: #090909;
}
/* YouTube/Vimeo oEmbed iframe, raw HTML5 video, WP video wrapper and
 * potential provider wrappers all fill the available inner 16:9 area. */
.fh-video-primary .fh-video-primary__frame > * {
  position: absolute !important;
  box-sizing: border-box !important;
  display: block !important;
  top: 5px !important;
  left: 5px !important;
  width: calc(100% - 10px) !important;
  height: calc(100% - 10px) !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  aspect-ratio: auto !important;
  border: 0 !important;
}
.fh-video-primary .fh-video-primary__frame iframe,
.fh-video-primary .fh-video-primary__frame video,
.fh-video-primary .fh-video-primary__frame .wp-video,
.fh-video-primary .fh-video-primary__frame .mejs-container,
.fh-video-primary .fh-video-primary__frame .mejs-inner,
.fh-video-primary .fh-video-primary__frame .mejs-mediaelement,
.fh-video-primary .fh-video-primary__frame .mejs-mediaelement > video,
.fh-video-primary .fh-video-primary__frame .mejs-layers {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  margin: 0 !important;
  border: 0 !important;
}
.fh-video-primary .fh-video-primary__frame > iframe,
.fh-video-primary .fh-video-primary__frame > video { object-fit: contain !important; }
.fh-video-primary .fh-video-primary__frame iframe {
  border: 0 !important;
}
.fh-video-primary .fh-video-primary__frame video { object-fit: contain !important; }

/* Direct media elements have the 5px inset, even when the theme applies
 * its own broad iframe/video size rules. */
.fh-video-primary .fh-video-primary__frame > :is(iframe, video, div, .wp-video, .mejs-container) {
  position: absolute !important;
  inset: 5px auto auto 5px !important;
  width: calc(100% - 10px) !important;
  height: calc(100% - 10px) !important;
}
