.promo-film-dialog { box-sizing: border-box; width: min(1160px, calc(100vw - 48px)); max-height: calc(100dvh - 32px); padding: 0; border: 1px solid #4b5a61; border-radius: 6px; background: #10191e; color: #edf2f3; font-family: inherit; overflow: auto; }
.promo-film-dialog::backdrop { background: #06121be6; }
.promo-film-bar { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; }
.promo-film-bar h2 { margin: 0; font-size: clamp(17px, 2vw, 24px); font-weight: 500; letter-spacing: .03em; }
.promo-film-bar p { margin: 6px 0 0; font-size: 11px; color: #acbec6; }
.promo-film-close { flex: 0 0 auto; width: 44px; height: 44px; border: 1px solid #59717f; border-radius: 3px; background: transparent; color: #fff; font: 27px/1 sans-serif; cursor: pointer; }
.promo-film-close:hover { background: #2b414c; }
.promo-film-dialog video { display: block; width: 100%; aspect-ratio: 16 / 9; max-height: calc(100dvh - 185px); background: #000; object-fit: contain; }
.promo-film-footer { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 15px 24px; font-size: 11px; color: #acbec6; }
.promo-film-footer p { margin: 0; }
.promo-film-footer a { color: #dce8ed; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.promo-film-dialog :focus-visible { outline: 2px solid #a2d5e8; outline-offset: 3px; }
@media (max-width: 720px) {
  .masthead { flex-wrap: wrap; height: auto; min-height: 80px; padding-top: 14px; padding-bottom: 14px; gap: 12px; }
  .masthead .project-meta { gap: 6px; flex-wrap: wrap; }
  .masthead .header-entry { min-width: 66px; padding: 9px 10px; }
  .promo-film-dialog { width: calc(100vw - 20px); max-height: calc(100dvh - 20px); }
  .promo-film-bar { padding: 16px; gap: 12px; }
  .promo-film-footer { padding: 14px 16px; flex-wrap: wrap; }
}
