/* Original portrait films, with no additional crop or runtime colour filter. */
html.dd-static body[data-dd-route] #page-container .dd-film-section {
  padding: 90px 0 72px !important;
  background: #000 !important;
  overflow: visible !important;
  scroll-margin-top: 100px;
}
html.dd-static body[data-dd-route] #page-container .dd-film-shell {
  display: block !important; width: var(--dd-shell, calc(100% - 48px)) !important;
  max-width: 1080px !important; margin: 0 auto !important; padding: 0 !important;
}
.dd-film-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; max-width: 920px; margin-inline: auto; }
.dd-film-card { min-width: 0; margin: 0; border: 1px solid #303030; background: #000; }
.dd-film-meta { display: flex; justify-content: space-between; gap: 16px; padding: 14px 20px; color: #96968f; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; font-variant-numeric: tabular-nums; }
.dd-film-frame { position: relative; width: 100%; aspect-ratio: 9 / 16; background: #e8eaee; overflow: hidden; }
.dd-film-poster, .dd-film-frame video { display: block; position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
.dd-film-poster img, .dd-film-frame video { display: block; width: 100%; height: 100%; object-fit: contain; }
.dd-film-frame video { opacity: 0; }
.dd-film-frame.has-started video { opacity: 1; }
.dd-film-frame.has-started .dd-film-poster, .dd-film-frame.has-started .dd-film-launch { display: none !important; }
html.dd-static body[data-dd-route] #page-container .dd-film-launch {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
  display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 12px 20px;
  background: #000d; border: 1px solid #ffffff69; border-radius: 0; color: #efefea;
  font: 400 12px/1.4 var(--dd-font-text); letter-spacing: .04em; cursor: pointer;
  white-space: nowrap; transition: background-color 180ms ease;
}
.dd-film-launch svg { display: block; width: 18px; height: 18px; flex: 0 0 18px; fill: currentColor; }
html.dd-static body[data-dd-route] #page-container .dd-film-launch:hover { background: #000; }
.dd-film-launch:focus-visible, .dd-film-frame video:focus-visible { outline: 2px solid #fff; outline-offset: -4px; }
.dd-film-launch:disabled { cursor: wait; }
.dd-film-launch[hidden] { display: none !important; }
.dd-film-copy { padding: 26px 28px 24px; }
.dd-film-client { display: block; color: #96968f; font-size: 10px; letter-spacing: .12em; text-transform: uppercase; margin-bottom: 12px; }
html.dd-static body[data-dd-route] #page-container .dd-film-copy h3 {
  font: 600 clamp(1.3rem, 2vw, 1.65rem)/1.15 var(--dd-font-text) !important;
  letter-spacing: -.025em !important; color: #efefea; padding: 0; margin: 0 0 14px; text-wrap: balance;
}
.dd-film-copy > p { color: #a0a09a; font-size: 15px; line-height: 1.65; padding: 0; margin: 0; }
.dd-film-copy .dd-editorial-link { display: inline-flex; align-items: center; gap: 10px; margin-top: 20px; min-height: 44px; font-size: 12px; }
.dd-film-copy .dd-film-status { min-height: 1.5em; margin-top: 12px; font-size: 11px; color: #aaa; }
.dd-film-note { margin: 28px 0 0; padding: 0; color: #777770; font-size: 11px; line-height: 1.6; text-align: center; }
.dd-film-fallback { display: block; position: absolute; z-index: 2; bottom: 0; inset-inline: 0; padding: 16px; background: #000d; color: #efefea; text-align: center; }
html.dd-film-open, html.dd-film-open body { overflow: hidden !important; }
.dd-film-dialog {
  position: fixed; inset: 0; width: 100vw; height: 100vh; height: 100dvh;
  max-width: none; max-height: none; padding: 0; margin: 0; border: 0;
  background: #000; color: #fff; z-index: 100000020;
}
.dd-film-dialog:not([open]) { display: none !important; }
.dd-film-dialog::backdrop { background: #000; }
.dd-film-player { position: relative; width: 100%; height: 100%; background: #000; overflow: hidden; }
.dd-film-player:fullscreen, .dd-film-player:-webkit-full-screen { width: 100vw; height: 100vh; background: #000; }
.dd-film-player video, .dd-film-dialog-poster { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: contain; }
.dd-film-player video { opacity: 0; }
.dd-film-dialog.is-playing video { opacity: 1; }
.dd-film-dialog.is-playing .dd-film-dialog-poster { display: none; }
.dd-film-dialog .dd-film-loading {
  position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);
  margin: 0; padding: 12px 20px; background: #000d; color: #fff;
  font: 400 12px/1.4 var(--dd-font-text); pointer-events: none;
}
.dd-film-dialog .dd-film-close {
  position: absolute; top: max(16px, env(safe-area-inset-top)); right: max(16px, env(safe-area-inset-right));
  z-index: 2; display: grid; place-items: center; width: 48px; height: 48px;
  padding: 0; border: 1px solid #ffffff80; border-radius: 0; background: #000b; color: #fff; cursor: pointer;
}
.dd-film-close svg { width: 22px; height: 22px; stroke: currentColor; stroke-width: 1.6; fill: none; }
.dd-film-close:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
.dd-film-loading[hidden] { display: none !important; }
@media (max-width: 999px) {
  html.dd-static body[data-dd-route] #page-container .dd-film-section { padding: 66px 0 42px !important; }
  .dd-film-grid { gap: 20px; }
  .dd-film-copy { padding: 22px; }
}
@media (max-width: 767px) {
  .dd-film-meta { padding: 13px 16px; font-size: 9px; }
  .dd-film-copy { padding: 22px 20px 18px; }
  .dd-film-copy > p { font-size: 14px; }
  html.dd-static body[data-dd-route] #page-container .dd-film-copy h3 { font-size: 22px !important; }
  .dd-film-note { margin-top: 18px; text-align: left; font-size: 10px; }
}
@media (prefers-reduced-motion: reduce) { .dd-film-launch { transition: none !important; } }
