/* Public, click-to-play examples shared by the homepage and internal ads. */
.marketing .video-promotion-player { position: relative; min-width: 0; aspect-ratio: 16 / 9; background: #211d23; }
.marketing .video-promotion-player video { display: block; width: 100%; height: 100%; object-fit: contain; }
.marketing .video-promotion-tag { position: absolute; top: 10px; left: 10px; padding: 4px 7px; border-radius: 3px; background: rgb(20 17 20 / 72%); color: #fff; font: 500 10px/1.4 var(--sans); letter-spacing: .08em; text-transform: uppercase; pointer-events: none; }
.marketing .video-promotion-play { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: grid; place-items: center; width: 52px; height: 52px; padding: 14px; border: 1px solid rgb(255 255 255 / 65%); border-radius: 50%; background: rgb(20 17 20 / 68%); color: #fff; }
.marketing .video-promotion-play:hover { background: rgb(20 17 20 / 90%); }
.marketing .video-promotion-play svg { width: 100%; height: 100%; fill: currentColor; }
.marketing .video-promotion-status { position: absolute; inset: 12px 10px auto; margin: 0; padding: 8px; text-align: center; background: rgb(20 17 20 / 85%); color: #fff; font: 400 12px/1.5 var(--sans); }
.marketing .video-promotion-player[data-state=loading] .video-promotion-tag, .marketing .video-promotion-player[data-state=error] .video-promotion-tag { display: none; }
.marketing .video-promotion-samples { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }
.marketing .video-promotion-samples button { min-width: 0; padding: 0; border: 0; color: var(--muted); background: none; text-align: left; }
.marketing .video-promotion-samples img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; }
.marketing .video-promotion-samples span { display: block; margin-top: 9px; font: 400 11px/1.5 var(--sans); }
.marketing .video-promotion-samples [aria-pressed=true] img { outline: 2px solid var(--purple); outline-offset: 3px; }
.marketing .video-promotion-samples [aria-pressed=true] span { color: var(--purple); }
/* Keep the initial image and result together, centered along the same media row. */
.marketing .internal-ads [data-internal-ad] .video-promotion-ad { align-items: center; }
.marketing .video-promotion-copy { min-width: 0; }
.marketing .video-promotion-copy h2 { text-wrap: balance; }
.marketing .internal-ads .video-promotion-copy h3 { margin-top: 12px; }
.marketing .video-promotion-media { display: grid; grid-template-columns: minmax(0, 120px) clamp(32px, 4vw, 60px) minmax(0, 1fr); grid-template-rows: auto minmax(28px, auto); column-gap: clamp(10px, 1.5vw, 20px); justify-self: end; width: 100%; min-width: 0; }
.marketing .video-promotion-original { position: relative; grid-column: 1; grid-row: 1; align-self: center; min-width: 0; margin: 0; }
.marketing .video-promotion-original img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: contain; border-radius: 4px; background: #211d23; }
.marketing .video-promotion-original figcaption { position: absolute; top: 100%; left: 0; right: 0; margin-top: 8px; color: var(--muted); font-size: 13px; line-height: 1.5; }
.marketing .video-promotion-arrow { grid-column: 2; grid-row: 1; align-self: center; display: block; width: 100%; height: auto; aspect-ratio: 100 / 48; color: var(--purple); pointer-events: none; }
.marketing .video-promotion-result { display: grid; grid-template-rows: subgrid; grid-column: 3; grid-row: 1 / span 2; align-items: center; min-width: 0; }
.marketing .video-promotion-result .video-promotion-player { overflow: hidden; border-radius: 4px; }
.marketing .video-promotion-note { align-self: start; margin-top: 8px; color: var(--muted); font-size: 12px; line-height: 1.5; }
@media (min-width: 761px) {
  .marketing .internal-ads [data-internal-ad] .video-promotion-ad { grid-template-columns: minmax(0, 1fr) minmax(0, 1.45fr); }
}
@media (max-width: 760px) {
  .marketing .video-promotion-samples { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px 10px; }
  .marketing .video-promotion-media { grid-template-columns: minmax(0, 1fr) 32px minmax(0, 2.4fr); column-gap: 10px; margin-top: 24px; }
  .marketing .video-promotion-original figcaption { font-size: 12px; }
}
